/* ==========================================================================
   Advencore — form sayfaları (demo-talep.html, iletisim.html). Sınıflar: .adv-form-*
   ========================================================================== */

.adv-form-hero { padding: 150px 0 80px; }
.adv-form-hero .adv-hero-lead { max-width: 38em; }
@media (max-width: 991.98px) { .adv-form-hero { padding: 120px 0 56px; } }

.adv-form-section { padding: 80px 0 110px; background: var(--adv-soft); }
@media (max-width: 991.98px) { .adv-form-section { padding: 52px 0 80px; } }

.adv-form-card {
    padding: 40px 36px 36px; background: #fff; border: 1px solid #dde7f3; border-radius: 16px; box-shadow: 0 18px 50px rgba(0, 25, 60, .07);
}
@media (max-width: 575.98px) { .adv-form-card { padding: 28px 20px 26px; } }
.adv-form-card h2 { margin: 0 0 6px; font-size: 1.5rem; font-weight: 800; line-height: 1.25; color: var(--adv-ink); }
.adv-form-intro { margin: 0 0 28px; font-size: 1rem; line-height: 1.65; color: var(--adv-body); }

.adv-form-grid { display: grid; grid-template-columns: 1fr; gap: 20px; }
@media (min-width: 768px) { .adv-form-grid { grid-template-columns: 1fr 1fr; } .adv-form-full { grid-column: 1 / -1; } }

.adv-form-field label { display: block; margin-bottom: 8px; font-family: "Plus Jakarta Sans", sans-serif; font-size: .9375rem; font-weight: 700; color: var(--adv-ink); }
.adv-form-field .adv-form-opt { font-weight: 500; color: var(--adv-body); }
.adv-form-field input, .adv-form-field select, .adv-form-field textarea {
    display: block; width: 100%; box-sizing: border-box; min-height: 50px; padding: 12px 14px;
    font-family: "DM Sans", system-ui, sans-serif; font-size: 1rem; line-height: 1.4; color: var(--adv-navy);
    background: #fff; border: 1px solid #c4d3e6; border-radius: 10px; transition: border-color .2s ease, box-shadow .2s ease;
}
.adv-form-field textarea { min-height: 140px; resize: vertical; }
.adv-form-field input:hover, .adv-form-field select:hover, .adv-form-field textarea:hover { border-color: #8fb0d8; }
.adv-form-field input:focus-visible, .adv-form-field select:focus-visible, .adv-form-field textarea:focus-visible {
    outline: 3px solid var(--adv-blue); outline-offset: 1px; border-color: var(--adv-blue);
}
.adv-form-field input:user-invalid, .adv-form-field select:user-invalid, .adv-form-field textarea:user-invalid { border-color: #c0392b; }
.adv-form-req { color: #b42318; }

/* Bot tuzağı: görsel olarak ve ekran okuyucudan gizli */
.adv-form-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.adv-form-actions { margin-top: 26px; }
.adv-form-actions .btn { min-width: 180px; padding: 14px 28px; border: 0; }
.adv-form-actions .btn:disabled { opacity: .65; cursor: wait; }

.adv-form-status { margin-top: 20px; padding: 14px 18px; border-radius: 10px; font-size: 1rem; line-height: 1.55; }
.adv-form-status.is-ok { background: #e8f6ee; border: 1px solid #b6dec5; color: #14532d; }
.adv-form-status.is-error { background: #fdecec; border: 1px solid #f2c0c0; color: #7a1c1c; }
.adv-form-status:focus-visible { outline: 3px solid var(--adv-blue); outline-offset: 2px; }

/* V40: iletişim ve demo sağ bilgi alanı, yazısız marka grafiği (dekoratif, küçük) */
.adv-form-art { display: block; width: 100%; max-width: 240px; height: auto; margin: 0 0 20px; }
.adv-form-aside { padding: 32px 30px; background: #fff; border: 1px solid #dde7f3; border-radius: 16px; }
.adv-form-aside h2 { margin: 0 0 16px; font-size: 1.25rem; font-weight: 800; line-height: 1.3; color: var(--adv-ink); }
.adv-form-aside ul { list-style: none; margin: 0; padding: 0; }
.adv-form-aside li { position: relative; padding: 0 0 14px 24px; font-size: 1rem; line-height: 1.6; color: var(--adv-body); }
.adv-form-aside li:last-child { padding-bottom: 0; }
.adv-form-aside li::before { content: ""; position: absolute; left: 0; top: .55em; width: 10px; height: 10px; border-radius: 50%; background: var(--adv-grad); }

/* İletişim bilgileri: gerçek bilgiler gelene kadar gizli (hidden) */
.adv-form-contact[hidden] { display: none !important; }
.adv-form-contact { margin: 0 0 24px; }   /* adres her zaman görünür: kartlar arasında boşluk, üst kenar form kartıyla hizalı */
.adv-form-contact dt { font-family: "Plus Jakarta Sans", sans-serif; font-size: .875rem; font-weight: 700; color: var(--adv-ink); margin-top: 14px; }
.adv-form-contact dd { margin: 2px 0 0; font-size: 1rem; line-height: 1.55; color: var(--adv-body); }

/* Alan bazlı hata durumu ve KVKK onayı */
.adv-form-field.is-invalid input, .adv-form-field.is-invalid select, .adv-form-field.is-invalid textarea { border-color: #c0392b; box-shadow: 0 0 0 1px #c0392b; }
.adv-form-error { margin: 6px 0 0; font-size: .875rem; line-height: 1.45; color: #b42318; }
.adv-form-kvkk { margin-top: 20px; }
.adv-form-kvkk .adv-form-check { display: flex; align-items: flex-start; gap: 12px; margin: 0; font-weight: 500; font-size: .9375rem; line-height: 1.55; color: var(--adv-body); font-family: "DM Sans", system-ui, sans-serif; }
.adv-form-kvkk input[type=checkbox] { flex: none; width: 20px; min-height: 20px; height: 20px; margin-top: 2px; padding: 0; accent-color: var(--adv-blue); }
.adv-form-kvkk a { color: var(--adv-blue); }
.adv-form-kvkk .adv-req { color: #b42318; }
