/* =====================================================================
   İletişim — Aksoylar 3 kolon + önceki full-bleed harita
   Marka accent: Verona yeşili
   ===================================================================== */

:root{
    --nt-contact-accent:#009141;
    --nt-contact-ink:#141414;
    --nt-contact-muted:#8a8a8a;
    --nt-contact-line:#e6e6e6;
    --nt-contact-soft:#f4f4f4;
}

body.nt-iletisim-page{
    background:#fff !important;
}
body.nt-iletisim-page .inner-page-card__crumb,
body.nt-iletisim-page .inner-page-head,
body.nt-iletisim-page .inner-page-card__head,
body.nt-iletisim-page .inner-page-title,
body.nt-iletisim-page .nt-inner-banner{
    display:none !important;
}
body.nt-iletisim-page #content,
body.nt-iletisim-page #content:has(.inner-page-shell){
    --nt-content-pt:var(--nt-header-h, var(--nt-iletisim-header-h, 120px));
    padding-top:var(--nt-content-pt) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    padding-bottom:0 !important;
    background:#fff !important;
    overflow:hidden;
}
body.nt-iletisim-page #content:has(.inner-page-shell)::before{
    display:none !important;
}
body.nt-iletisim-page #content > .container,
body.nt-iletisim-page .inner-page-shell,
body.nt-iletisim-page .inner-page-shell > .container,
body.nt-iletisim-page .inner-page-layout,
body.nt-iletisim-page .inner-page-layout > .container,
body.nt-iletisim-page .content_container > .container.inner-page-layout{
    max-width:none !important;
    width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin:0 !important;
}
body.nt-iletisim-page .inner-page-layout__row{
    margin:0 !important;
    display:block !important;
}
body.nt-iletisim-page .inner-page-layout__row > .inner-page-main,
body.nt-iletisim-page .inner-page-aside{
    width:100% !important;
    max-width:none !important;
    flex:none !important;
    padding:0 !important;
}
body.nt-iletisim-page .inner-page-body,
body.nt-iletisim-page .inner-page-card,
body.nt-iletisim-page .inner-page-shell,
body.nt-iletisim-page .content_container{
    background:transparent !important;
    box-shadow:none !important;
    border:0 !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:0 !important;
}
body.nt-iletisim-page #footer{
    position:relative;
    z-index:2;
    margin-top:0 !important;
}

.nt-contact-page{
    --nt-contact-accent:#009141;
    --nt-contact-ink:#141414;
    --nt-contact-muted:#8a8a8a;
    --nt-contact-line:#e6e6e6;
    --nt-contact-soft:#f4f4f4;
    position:relative;
    isolation:isolate;
    background:#fff;
    color:var(--nt-contact-ink);
    min-height:calc(100vh - var(--nt-content-pt, 120px) - 150px);
    min-height:calc(100dvh - var(--nt-content-pt, 120px) - 150px);
    padding:0;
    display:flex;
    flex-direction:column;
}

/* Harita yalnızca sağ kolon genişliğinde */
.nt-contact-col--map{
    position:relative;
    padding:0 !important;
    min-height:420px;
    overflow:hidden;
    pointer-events:auto;
}
.nt-contact-bg{
    position:absolute;
    inset:0;
    z-index:0;
    width:100%;
    height:100%;
    overflow:hidden;
    background:#f3f3f3;
    border-radius:0 0 0 0;
}
body.nt-iletisim-page #contactMap.nt-contact-bg__map,
body.nt-iletisim-page .nt-contact-bg__map{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    overflow:hidden;
    background:#f3f3f3;
}
body.nt-iletisim-page #contactMap.nt-contact-bg__map iframe,
body.nt-iletisim-page .nt-contact-bg__map iframe{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    border:0 !important;
    filter:grayscale(.45) saturate(.6) contrast(.94) brightness(1.06);
    pointer-events:none !important;
    transform:none !important;
}
.nt-contact-bg__hit{
    position:absolute;
    inset:0;
    z-index:3;
    display:block;
    cursor:pointer;
    text-decoration:none !important;
    background:transparent;
}
.nt-contact-bg__pin{
    position:absolute;
    left:50%;
    top:50%;
    z-index:4;
    width:28px;
    height:40px;
    display:block;
    transform:translate(-50%, -100%);
    text-decoration:none !important;
    pointer-events:auto;
    cursor:pointer;
}
.nt-contact-bg__ring{
    position:absolute;
    left:50%;
    top:100%;
    width:100%;
    height:62%;
    border-radius:50%;
    border:2px solid rgba(234, 67, 53, .4);
    background:rgba(234, 67, 53, .1);
    transform:translate(-50%, -50%) scale(1);
    opacity:.7;
    pointer-events:none;
    animation:nt-contact-pin-wave 2.4s cubic-bezier(.22,.61,.36,1) infinite;
}
.nt-contact-bg__ring--delay{ animation-delay:1.2s; }
.nt-contact-bg__marker{
    position:absolute;
    inset:0;
    z-index:1;
    display:flex;
    align-items:stretch;
    justify-content:center;
    pointer-events:none;
}
.nt-contact-bg__marker .nt-map-pin-icon{
    width:100%;
    height:100%;
    display:block;
}
@keyframes nt-contact-pin-wave{
    0%{ transform:translate(-50%, -50%) scale(1); opacity:.65; }
    70%{ opacity:.18; }
    100%{ transform:translate(-50%, -50%) scale(2.6); opacity:0; }
}
@media (prefers-reduced-motion: reduce){
    .nt-contact-bg__ring{
        animation:none;
        opacity:.35;
        transform:translate(-50%, -50%) scale(1.45);
    }
    .nt-contact-bg__ring--delay{ display:none; }
}

.nt-contact-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(220px, 0.9fr) minmax(280px, 1.15fr) minmax(280px, 1.2fr);
    gap:0;
    align-items:stretch;
    width:100%;
    max-width:none;
    margin:0;
    flex:1 1 auto;
    min-height:calc(100vh - var(--nt-content-pt, 120px) - 150px);
    min-height:calc(100dvh - var(--nt-content-pt, 120px) - 150px);
    padding:0;
    pointer-events:auto;
}
.nt-contact-col{
    position:relative;
    padding:clamp(36px, 5vh, 64px) clamp(22px, 2.4vw, 40px) clamp(48px, 6vh, 80px);
    align-self:stretch;
    min-height:100%;
}
.nt-contact-col--intro,
.nt-contact-col--info{
    max-width:none;
}
.nt-contact-page--has-map .nt-contact-col--intro{
    padding-left:clamp(20px, 4vw, 48px);
}
.nt-contact-page--has-map .nt-contact-col--map{
    padding:0;
    min-height:100%;
    align-self:stretch;
}
.nt-contact-col--intro{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    background:#fff;
}
.nt-contact-col--info{
    border-left:1px solid var(--nt-contact-line);
    border-right:1px solid var(--nt-contact-line);
    background:#fff;
}
/* Dikey çizgiler header’dan alta kadar (kolon yüksekliği = grid) */
.nt-contact-page--has-map .nt-contact-col--info{
    border-left:1px solid var(--nt-contact-line);
    border-right:1px solid var(--nt-contact-line);
}

.nt-contact-brand{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin:0 0 18px;
    font-size:12px;
    font-weight:600;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--nt-contact-muted);
}
.nt-contact-brand__dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--nt-contact-accent);
    flex-shrink:0;
}
.nt-contact-title{
    margin:0 0 clamp(40px, 5vh, 56px);
    font-size:clamp(42px, 4.8vw, 58px);
    font-weight:800;
    letter-spacing:-.03em;
    line-height:1.05;
    color:var(--nt-contact-ink);
}

/* Sosyal + form butonu: altta birlikte */
.nt-contact-intro-foot{
    margin-top:auto;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:28px;
    width:100%;
    padding-top:clamp(32px, 4vh, 48px);
}
/* 2 kolon: Youtube | Instagram / Linkedin */
.nt-contact-social{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    column-gap:clamp(20px, 2.5vw, 36px);
    row-gap:22px;
    width:100%;
    max-width:340px;
}
.nt-contact-social > li{
    min-width:0;
}
.nt-contact-social__link{
    display:inline-flex;
    align-items:center;
    gap:14px;
    text-decoration:none !important;
    color:var(--nt-contact-ink);
    font-size:16px;
    font-weight:700;
    line-height:1;
    transition:color .2s ease;
}
.nt-contact-social__name{
    white-space:nowrap;
}
.nt-contact-social__link:hover,
.nt-contact-social__link:focus-visible{
    color:var(--nt-contact-accent);
}
.nt-contact-social__ico{
    width:44px;
    height:44px;
    border-radius:50%;
    background:#fff;
    border:1px solid #e5e5e5;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#141414;
    flex-shrink:0;
    transition:border-color .2s ease, color .2s ease, background .2s ease;
}
.nt-contact-social__link:hover .nt-contact-social__ico,
.nt-contact-social__link:focus-visible .nt-contact-social__ico{
    border-color:var(--nt-contact-accent);
    color:var(--nt-contact-accent);
    background:#fff;
}
.nt-contact-social__ico i{ font-size:16px; line-height:1; }

.nt-contact-cta{
    margin:0;
    border:0;
    border-radius:10px;
    background:var(--nt-contact-accent);
    color:#fff !important;
    font-size:15px;
    font-weight:700;
    padding:14px 32px;
    cursor:pointer;
    transition:transform .15s ease, filter .2s ease;
    align-self:flex-start;
}
.nt-contact-cta:hover,
.nt-contact-cta:focus-visible{
    filter:brightness(1.05);
    outline:none;
}
.nt-contact-cta:active{ transform:scale(.98); }

.nt-contact-office + .nt-contact-office{
    margin-top:40px;
    padding-top:36px;
    border-top:1px solid var(--nt-contact-line);
}
.nt-contact-office__title{
    margin:0 0 28px;
    font-size:clamp(22px, 2vw, 28px);
    font-weight:800;
    letter-spacing:-.02em;
    color:var(--nt-contact-ink);
}
.nt-contact-office__grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    row-gap:clamp(36px, 4vh, 52px);
    column-gap:28px;
}
.nt-contact-field{
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    gap:14px;
    min-width:0;
}
.nt-contact-field--phone,
.nt-contact-field--fax{
    grid-column:span 1;
}
.nt-contact-field--address,
.nt-contact-field--email{
    grid-column:1 / -1;
}
.nt-contact-field__ico{
    width:32px;
    height:auto;
    min-height:1.3em;
    flex-shrink:0;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#7a7a7a;
    margin-top:1px; /* başlık satırıyla hiza */
}
.nt-contact-field__ico i{
    font-size:22px;
    line-height:1;
}
.nt-contact-field__body{
    display:flex;
    flex-direction:column;
    gap:6px;
    min-width:0;
}
.nt-contact-field__label{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    font-size:18px !important;
    font-weight:500 !important;
    color:#8a8a8a !important;
    line-height:1.3;
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
    margin:0;
    padding:0;
}
.nt-contact-field__value{
    font-size:22px;
    font-weight:700;
    color:var(--nt-contact-ink);
    line-height:1.4;
    text-decoration:none !important;
    min-width:0;
}
.nt-contact-field--address .nt-contact-field__value{
    white-space:normal;
}
a.nt-contact-field__value:hover,
a.nt-contact-field__value:focus-visible{
    color:var(--nt-contact-accent);
    outline:none;
}
.nt-contact-empty{
    margin:0;
    color:var(--nt-contact-muted);
}

/* Form drawer */
.nt-contact-drawer[hidden]{ display:none !important; }
.nt-contact-drawer{
    position:fixed;
    inset:0;
    z-index:1200;
}
.nt-contact-drawer__backdrop{
    position:absolute;
    inset:0;
    border:0;
    padding:0;
    background:rgba(10,15,22,.45);
    opacity:0;
    transition:opacity .25s ease;
    cursor:pointer;
}
.nt-contact-drawer.is-open .nt-contact-drawer__backdrop{ opacity:1; }
.nt-contact-drawer__panel{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -46%) scale(.98);
    width:min(560px, calc(100vw - 32px));
    max-height:min(860px, calc(100vh - 40px));
    overflow:auto;
    background:#fff;
    border-radius:18px;
    box-shadow:0 30px 80px -36px rgba(0,0,0,.45);
    padding:28px 28px 24px;
    opacity:0;
    transition:opacity .25s ease, transform .25s ease;
}
.nt-contact-drawer.is-open .nt-contact-drawer__panel{
    opacity:1;
    transform:translate(-50%, -50%) scale(1);
}
.nt-contact-drawer__close{
    position:absolute;
    top:14px;
    right:14px;
    width:40px;
    height:40px;
    border:0;
    border-radius:50%;
    background:var(--nt-contact-soft);
    color:#333;
    cursor:pointer;
}
.nt-contact-drawer__close:hover{ background:#e9e9e9; }
.nt-contact-drawer__head{ margin:0 36px 18px 0; }
.nt-contact-drawer__title{
    margin:0 0 8px;
    font-size:24px;
    font-weight:800;
    letter-spacing:-.02em;
}
.nt-contact-drawer__lead{
    margin:0;
    color:var(--nt-contact-muted);
    font-size:14px;
    line-height:1.5;
}
body.nt-contact-drawer-open{ overflow:hidden; }

@media (max-width:1199px){
    .nt-contact-grid{
        grid-template-columns:minmax(200px, 0.85fr) minmax(260px, 1.15fr) minmax(220px, 1fr);
    }
    .nt-contact-office__grid{
        grid-template-columns:1fr 1fr;
        row-gap:28px;
        column-gap:20px;
    }
    .nt-contact-field--address,
    .nt-contact-field--email{
        grid-column:1 / -1;
    }
}

@media (max-width:991px){
    body.nt-iletisim-page #content,
    body.nt-iletisim-page #content:has(.inner-page-shell){
        overflow-x:clip;
        overflow-y:visible;
    }
    .nt-contact-page{
        min-height:0;
        display:flex;
        flex-direction:column;
    }
    .nt-contact-grid{
        grid-template-columns:1fr;
        min-height:0;
        gap:0;
        padding:0 18px;
        pointer-events:auto;
    }
    .nt-contact-col{
        padding:28px 4px;
        background:#fff !important;
        min-height:0;
    }
    .nt-contact-col--intro{
        padding-top:24px;
        padding-bottom:32px;
    }
    .nt-contact-col--info{
        border-left:0 !important;
        border-right:0 !important;
        border-top:1px solid var(--nt-contact-line);
        border-bottom:0;
        padding-top:36px;
        padding-bottom:12px;
    }
    .nt-contact-page--has-map .nt-contact-col--intro,
    .nt-contact-page--has-map .nt-contact-col--info{
        padding-bottom:28px;
        padding-left:4px;
    }
    .nt-contact-col--map,
    .nt-contact-page--has-map .nt-contact-col--map{
        display:block;
        margin:0 -18px;
        min-height:clamp(240px, 40vh, 320px);
        height:clamp(240px, 40vh, 320px);
        width:calc(100% + 36px);
    }
    .nt-contact-bg{
        position:absolute;
        inset:0;
        height:100%;
    }
    .nt-contact-bg__pin{
        left:50%;
        top:50%;
        width:26px;
        height:37px;
    }
    .nt-contact-intro-foot{
        margin-top:36px;
        padding-top:8px;
        gap:24px;
    }
    .nt-contact-social{
        max-width:100%;
    }
    .nt-contact-cta{
        width:auto;
        min-width:min(100%, 220px);
    }
    .nt-contact-drawer__panel{
        top:auto;
        left:0;
        right:0;
        bottom:0;
        width:100%;
        max-height:88vh;
        transform:translateY(24px);
        border-radius:18px 18px 0 0;
    }
    .nt-contact-drawer.is-open .nt-contact-drawer__panel{
        transform:translateY(0);
    }
    body.nt-contact-drawer-open .nt-contact-bg,
    body.nt-contact-drawer-open .nt-contact-bg__map,
    body.nt-contact-drawer-open .nt-contact-bg__map iframe,
    body.nt-contact-drawer-open .nt-contact-bg__hit,
    body.nt-contact-drawer-open .nt-contact-bg__pin{
        pointer-events:none !important;
        z-index:0 !important;
    }
}
@media (max-width:575px){
    .nt-contact-title{ font-size:36px; margin-bottom:28px; }
    .nt-contact-office__title{ font-size:22px; }
    .nt-contact-office__grid{
        grid-template-columns:1fr;
    }
    .nt-contact-field--phone,
    .nt-contact-field--fax,
    .nt-contact-field--address,
    .nt-contact-field--email{
        grid-column:auto;
    }
    .nt-contact-page--has-map .nt-contact-bg{
        height:clamp(200px, 34vh, 260px);
    }
}
