/* ==========================================================================
   KeyDesignArt — İletişim
   Üstte dört bilgi kartı (rozetli ikon + hover'da büyüyen vurgu çubuğu), altta
   iki sütun: solda form paneli, sağda sosyal panel + harita.
   ⚠️ Form ile harita HER ZAMAN aynı yükseklikte: ızgara satırı ikisini de
   gerdiriyor, sağ sütun kendi içinde `auto 1fr` olduğu için harita artan
   yüksekliği yutuyor. Form uzayınca harita da uzuyor.
   ========================================================================== */

@layer sections {

    .kda-contact {
        display: grid;
        gap: var(--kda-space-8);
    }

    /* Panelden gelen giriş metni — kartların üstünde.
       ⚠️ Ölçü sınırı YOK (kullanıcı kuralı: hep tam satır). */
    .kda-prose.kda-contact__intro {
        max-width: none;
        margin: 0;
    }

    /* Bilgi kartları
       Hücre sayısı değişebiliyor (çalışma saati girilmemişse üç kart kalıyor),
       bu yüzden `auto-fit`: kalan alanı kartlar paylaşır, boş hücre kalmaz.
       ---------------------------------------------------------------------- */
    .kda-contact__facts {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
        gap: var(--kda-space-4);
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .kda-contact__fact {
        position: relative;
        max-width: none;
        display: grid;
        align-content: start;
        justify-items: start;
        gap: var(--kda-space-3);
        overflow: hidden;
        padding: var(--kda-space-6) var(--kda-space-5);
        border: 1px solid var(--kda-line);
        border-radius: var(--kda-radius-button);
        background: var(--kda-surface);
        transition: border-color var(--kda-dur-base) var(--kda-ease);
    }

    .kda-contact__fact:hover {
        border-color: var(--kda-line-strong);
    }

    .kda-contact__fact:has(a:focus-visible) {
        border-color: var(--kda-accent);
    }

    /* Vurgu çubuğu — sayfadaki kartlarla aynı jest */
    .kda-contact__fact::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        z-index: 1;
        width: 2.25rem;
        height: 2px;
        background: var(--kda-accent);
        box-shadow: 0 0 14px var(--kda-accent-glow);
        pointer-events: none;
        transition: width var(--kda-dur-slow) var(--kda-ease);
    }

    .kda-contact__fact:hover::before,
    .kda-contact__fact:has(a:focus-visible)::before {
        width: 100%;
    }

    /* Rozetli ikon — hizmet kartındaki 2.75rem rozetin aynısı */
    .kda-contact__badge {
        display: grid;
        place-items: center;
        width: 2.75rem;
        height: 2.75rem;
        border: 1px solid color-mix(in srgb, var(--kda-accent) 45%, transparent);
        border-radius: var(--kda-radius-button);
        background: var(--kda-accent-ghost);
    }

    .kda-contact__icon {
        width: 1.4rem;
        height: 1.4rem;
        background: var(--kda-accent);
        mask: center / contain no-repeat;
    }

    .kda-contact__icon--address {
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21.2c4.2-4.4 6.4-7.7 6.4-10.6a6.4 6.4 0 0 0-12.8 0c0 2.9 2.2 6.2 6.4 10.6Z'/%3E%3Ccircle cx='12' cy='10.4' r='2.4'/%3E%3C/svg%3E");
    }

    .kda-contact__icon--mail {
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.8' y='4.8' width='18.4' height='14.4' rx='2.2'/%3E%3Cpath d='m3.6 7.2 8.4 5.6 8.4-5.6'/%3E%3C/svg%3E");
    }

    .kda-contact__icon--phone {
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7.4 3.4h2.9l1.5 3.7-2 1.3a11 11 0 0 0 5 5l1.3-2 3.7 1.5v2.9a2 2 0 0 1-2.2 2A17.6 17.6 0 0 1 5.4 5.6a2 2 0 0 1 2-2.2Z'/%3E%3C/svg%3E");
    }

    .kda-contact__icon--clock {
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.6'/%3E%3Cpath d='M12 7.2V12l3.2 2'/%3E%3C/svg%3E");
    }

    .kda-contact__fact-label {
        margin: 0;
        color: var(--kda-ink-faint);
        font-size: var(--kda-text-2xs);
        font-weight: var(--kda-weight-bold);
        letter-spacing: var(--kda-tracking-wider);
        text-transform: uppercase;
    }

    .kda-contact__fact-value {
        max-width: none;
        margin: 0;
        color: var(--kda-ink-soft);
        font-size: var(--kda-text-md);
        font-style: normal;
        line-height: 1.6;
    }

    .kda-contact__fact-value a {
        color: inherit;
        text-decoration: none;
        overflow-wrap: anywhere;
        transition: color var(--kda-dur-base) var(--kda-ease);
    }

    .kda-contact__fact-value a:hover {
        color: var(--kda-accent);
    }

    .kda-contact__fact-value span {
        display: block;
    }

    /* İki sütun
       ---------------------------------------------------------------------- */
    .kda-contact__layout {
        display: grid;
        gap: var(--kda-space-6);
        align-items: stretch;
    }

    .kda-contact__panel {
        position: relative;
        overflow: hidden;
        padding: var(--kda-space-6);
        border: 1px solid var(--kda-line);
        border-radius: var(--kda-radius-button);
        background: var(--kda-surface);
    }

    .kda-contact__panel--form {
        display: grid;
        align-content: start;
        gap: var(--kda-space-5);
    }

    /* Alanlar sütunun tamamını kullanır: bileşendeki `max-width: 34rem` alt
       bilgideki dar form için konmuştu, burada sağda ölü alan bırakıyordu. */
    .kda-contact__panel--form input,
    .kda-contact__panel--form textarea,
    .kda-contact__panel--form select {
        max-width: none;
    }

    .kda-contact__fields {
        display: grid;
        gap: var(--kda-space-4);
        margin: 0;
    }

    .kda-contact__field {
        margin: 0;
        min-width: 0;
    }

    .kda-contact__field--wide {
        grid-column: 1 / -1;
    }

    .kda-contact__submit {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        gap: var(--kda-space-4);
        margin: 0;
    }

    .kda-contact__secure {
        display: inline-flex;
        align-items: center;
        gap: var(--kda-space-2);
        margin: 0;
        color: var(--kda-ink-faint);
        font-size: var(--kda-text-xs);
    }

    .kda-contact__secure::before {
        content: "";
        flex: 0 0 auto;
        width: 0.9rem;
        height: 0.9rem;
        background: var(--kda-ink-faint);
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4.6' y='10.4' width='14.8' height='9.6' rx='2'/%3E%3Cpath d='M8.2 10.4V7.8a3.8 3.8 0 0 1 7.6 0v2.6'/%3E%3C/svg%3E") center / contain no-repeat;
    }

    @media (min-width: 34rem) {
        .kda-contact__fields {
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: var(--kda-space-4) var(--kda-space-5);
        }
    }

    .kda-contact__title {
        max-width: none;
        margin: 0;
        color: var(--kda-ink);
        font-size: var(--kda-text-xl);
    }

    .kda-contact__lead {
        max-width: var(--kda-measure);
        margin: var(--kda-space-3) 0 0;
        color: var(--kda-ink-muted);
        font-size: var(--kda-text-md);
        line-height: 1.65;
    }

    /* Sağ sütun — sosyal panel sabit, harita artan yüksekliği yutar
       ---------------------------------------------------------------------- */
    .kda-contact__side {
        display: grid;
        grid-template-rows: auto 1fr;
        gap: var(--kda-space-6);
        min-height: 0;
    }

    .kda-contact__social {
        display: flex;
        flex-wrap: wrap;
        gap: var(--kda-space-3);
        margin: var(--kda-space-4) 0 0;
        padding: 0;
        list-style: none;
    }

    /* Harita
       `position: relative` + içeride `inset: 0`: iframe kendi yüksekliğini
       dayatmaz, panelin verdiği yüksekliği alır. Eşitliği sağlayan yer burası.
       ---------------------------------------------------------------------- */
    .kda-contact__panel--map {
        display: grid;
        padding: 0;
        min-height: 20rem;
    }

    .kda-contact__map {
        position: relative;
        overflow: hidden;
        border-radius: inherit;
        background: var(--kda-surface-2);
    }

    .kda-contact__map iframe {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        border: 0;
        display: block;
    }

    /* Harita perdesi — betik yüklemeden önce görünen hal.
       Zemin sönük ızgara: hiçbir dış istek üretmiyor, tamamen CSS.
       ---------------------------------------------------------------------- */
    .kda-contact__map-cover {
        position: absolute;
        inset: 0;
        z-index: 1;
        display: grid;
        align-content: center;
        justify-items: center;
        gap: var(--kda-space-3);
        padding: var(--kda-space-6);
        text-align: center;
        background-color: var(--kda-surface-2);
        background-image:
            linear-gradient(to right, var(--kda-line) 1px, transparent 1px),
            linear-gradient(to bottom, var(--kda-line) 1px, transparent 1px);
        background-size: 2.5rem 2.5rem;
    }

    .kda-contact__map-pin {
        width: 2rem;
        height: 2rem;
        background: var(--kda-accent);
        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21.2c4.2-4.4 6.4-7.7 6.4-10.6a6.4 6.4 0 0 0-12.8 0c0 2.9 2.2 6.2 6.4 10.6Z'/%3E%3Ccircle cx='12' cy='10.4' r='2.4'/%3E%3C/svg%3E") center / contain no-repeat;
    }

    .kda-contact__map-text {
        max-width: 34ch;
        margin: 0;
        color: var(--kda-ink-soft);
        font-size: var(--kda-text-md);
        line-height: 1.6;
    }

    .kda-contact__map-note {
        max-width: 40ch;
        margin: 0;
        color: var(--kda-ink-faint);
        font-size: var(--kda-text-xs);
        line-height: 1.55;
    }

    .kda-contact__map-actions {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: var(--kda-space-3) var(--kda-space-5);
        margin-top: var(--kda-space-2);
    }

    /* Duyarlı yerleşim
       ---------------------------------------------------------------------- */
    @media (min-width: 64rem) {
        .kda-contact__layout {
            grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
            gap: var(--kda-space-6);
        }

        .kda-contact__panel--form {
            padding: var(--kda-space-7);
        }

        .kda-contact__title {
            font-size: var(--kda-text-2xl);
        }
    }

}
