/* AKSOY v22 — a dedicated contact experience. */
body[data-page=contact] .page-hero.contact-hero-v22 { padding:145px 0 110px; background:linear-gradient(105deg,#061b2f 12%,#0c2c43ed 62%,#0b2639b0),url('../img/aksoy-vision-v16.webp') 75% center/cover; min-height:590px; }
.contact-hero-v22::before { background:none; }
.contact-hero-grid { display:grid; grid-template-columns:1.3fr .8fr; gap:80px; align-items:center; }
.contact-hero-v22 .pretitle { color:#dcbf83; font-size:.61rem; }
.contact-hero-v22 h1 { margin:22px 0 24px; font-size:clamp(3rem,4.8vw,5rem); line-height:1.12; max-width:20ch; }
.contact-hero-v22 h1 em { color:#e2c78e; }
.contact-hero-v22 .lead { font-size:1.02rem; max-width:50ch; line-height:1.9; margin:0 0 28px; }
.contact-hero-note { position:relative; border:1px solid #ffffff23; border-radius:45% 45% 7px 7px; padding:35px 35px 32px; display:flex; flex-direction:column; align-items:center; text-align:center; background:#ffffff04; }
.contact-orbit { width:118px; height:118px; display:grid; place-items:center; font-family:var(--f-display); font-size:4.7rem; color:#dec185; border:1px solid #d6b77c55; border-radius:50%; margin:4px 0 28px; box-shadow:0 0 0 13px #dfc48e05; }
.contact-note-kicker { color:#a4bdcc; font-size:.49rem; letter-spacing:.13em; }
.contact-hero-note p { font-family:var(--f-display); font-size:2.4rem; line-height:1.15; margin:20px 0 25px; color:#f3f4f2; }
.contact-hero-note>a { color:#dcc18a; font-size:.7rem; display:inline-flex; gap:12px; align-items:center; }
.contact-experience { background:var(--bg-2); padding-bottom:85px; }
.contact-channel-grid { position:relative; z-index:2; display:grid; grid-template-columns:1.15fr 1.15fr 1fr; gap:18px; margin-top:-43px; }
.contact-channel { background:var(--surface); padding:26px; border:1px solid var(--line); border-radius:7px; display:flex; gap:16px; align-items:center; box-shadow:0 10px 28px #07172608; transition:transform .2s,box-shadow .2s; }
.contact-channel:hover { transform:translateY(-4px); box-shadow:0 12px 35px #07172612; }
.contact-channel>span:nth-child(2) { flex:1; min-width:0; }
.channel-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:var(--bg-2); color:var(--gold-ink); flex-shrink:0; }
.channel-icon svg { width:22px; height:22px; }
.contact-channel small { display:block; color:var(--muted); font-size:.52rem; letter-spacing:.09em; margin-bottom:9px; }
.contact-channel strong { font-weight:550; font-size:1.07rem; letter-spacing:-.025em; color:var(--ink); overflow-wrap:anywhere; line-height:1.35; display:block; }
.contact-channel em { font-style:normal; display:block; color:var(--muted); font-size:.66rem; margin-top:8px; }
.channel-arrow { color:var(--gold-ink); font-size:1.1rem; }
.channel-phone { border-top:3px solid var(--gold); }
.contact-workspace { display:grid; grid-template-columns:.82fr 1.18fr; gap:70px; padding:80px 0; align-items:start; }
.contact-guide { position:sticky; top:100px; }
.contact-guide h2 { font-size:clamp(2rem,3.2vw,3.1rem); line-height:1.16; margin:20px 0; }
.contact-guide h2 em,.composer-head h2 em,.location-content h2 em,.contact-questions h2 em { color:var(--gold-ink); }
.contact-guide>p { color:var(--muted); font-size:.9rem; line-height:1.8; margin-bottom:25px; }
.contact-intents { display:grid; gap:8px; }
.contact-intent { display:flex; align-items:center; gap:16px; padding:19px 16px; border:1px solid transparent; border-bottom-color:var(--line); border-radius:5px; }
.contact-intent>span:nth-child(2) { flex:1; }
.contact-intent strong { font-weight:550; color:var(--ink); font-size:.91rem; }
.contact-intent small { display:block; color:var(--muted); font-size:.71rem; line-height:1.6; margin-top:6px; }
.intent-number { font-family:var(--f-display); color:var(--gold-ink); font-size:1.3rem; }
.intent-arrow { color:var(--gold-ink); }
.contact-intent:hover,.contact-intent.is-selected { background:var(--surface); border-color:var(--line); }
.contact-intent.is-selected { box-shadow:inset 3px 0 var(--gold); }
.contact-assurance { display:flex; gap:14px; margin-top:25px; color:var(--muted); padding:18px 0; font-size:.73rem; line-height:1.8; }
.contact-assurance>span { color:var(--gold-ink); font-size:1.3rem; }
.contact-composer.form-card { padding:36px 40px 40px; border:1px solid var(--line); border-top:3px solid var(--gold); border-radius:8px; box-shadow:0 16px 50px #07172607; scroll-margin-top:95px; }
.composer-head { position:relative; border-bottom:1px solid var(--line); margin-bottom:28px; padding-bottom:24px; }
.composer-index { position:absolute; right:0; top:0; color:var(--muted); font-size:.64rem; letter-spacing:.13em; }
.composer-head h2 { font-size:2.45rem; line-height:1.15; margin:18px 0 16px; }
.composer-head>p { color:var(--muted); font-size:.79rem; line-height:1.8; max-width:50ch; }
.contact-fieldset { border:0; padding:0; margin:0 0 15px; min-width:0; }
.contact-fieldset legend { display:flex; align-items:center; gap:11px; padding:0; width:100%; margin-bottom:22px; color:var(--ink); font-size:.82rem; font-weight:600; }
.contact-fieldset legend>span { width:27px; height:27px; display:grid; place-items:center; border:1px solid var(--line-2); color:var(--gold-ink); font-size:.65rem; border-radius:50%; }
.contact-composer .field label { font-size:.73rem; }
.contact-composer .field label>small { font-weight:400; color:var(--muted); font-size:.63rem; margin-left:7px; }
.contact-composer .field input,.contact-composer .field textarea,.contact-composer .field select { background:var(--surface-2); border-radius:5px; border-color:var(--line-2); padding:13px 14px; font-size:.86rem; }
.contact-composer .field input:focus,.contact-composer .field textarea:focus,.contact-composer .field select:focus { border-color:var(--gold); box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 13%,transparent); outline:none; }
.contact-composer .field textarea { min-height:165px; resize:vertical; line-height:1.8; }
.contact-composer .row { gap:18px; }
.contact-composer .consent { font-size:.66rem; line-height:1.8; color:var(--muted); margin:5px 0 20px; }
.contact-composer button[type=submit] { justify-content:space-between; padding:16px 22px; }
.message-help { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:8px; }
.message-help small { color:var(--muted); font-size:.63rem; }
.message-help .message-count { margin:0; }
.contact-success { border:1px solid color-mix(in srgb,var(--ok) 35%,var(--line)); border-left:3px solid var(--ok); background:color-mix(in srgb,var(--ok) 7%,var(--surface)); border-radius:5px; padding:22px; margin-bottom:25px; }
.contact-success strong { color:var(--ok); font-family:var(--f-display); font-size:1.5rem; font-weight:400; }
.contact-success p { color:var(--muted); font-size:.82rem; line-height:1.8; margin-top:10px; }
.contact-location { display:grid; grid-template-columns:1.05fr 1fr; border-radius:8px; overflow:hidden; border:1px solid var(--line); background:var(--surface); scroll-margin-top:100px; }
.location-art { position:relative; min-height:360px; overflow:hidden; isolation:isolate; background:#0b2d44; display:grid; place-items:center; }
.location-grid { position:absolute; inset:-30%; z-index:-1; background-image:linear-gradient(#74b2ce1c 1px,transparent 1px),linear-gradient(90deg,#74b2ce1c 1px,transparent 1px); background-size:45px 45px; transform:rotate(-28deg); mask-image:radial-gradient(ellipse,#000,transparent 70%); }
.location-art::after { content:''; position:absolute; width:170px; height:170px; border:1px solid #c8ab7155; border-radius:50%; box-shadow:0 0 0 45px #c8ab7108,0 0 0 90px #c8ab7105; z-index:-1; }
.location-marker { color:#e1c68e; }
.location-marker svg { width:58px; height:58px; }
.location-caption { position:absolute; bottom:30px; left:20px; right:20px; text-align:center; color:#a9c4d5; font-size:.53rem; letter-spacing:.14em; }
.location-content { padding:45px 48px; align-self:center; }
.location-content h2 { font-size:2.8rem; line-height:1.15; margin:18px 0 23px; }
.location-content>p { font-size:.92rem; line-height:1.8; color:var(--muted); margin-bottom:23px; }
.location-content>small { display:block; color:var(--muted); font-size:.63rem; margin-top:17px; }
.contact-questions { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; padding:75px 0; }
.contact-questions h2 { font-size:2.4rem; line-height:1.2; margin-top:18px; }
.contact-faq-list details { border-bottom:1px solid var(--line-2); padding:0 0 19px; margin-bottom:19px; }
.contact-faq-list summary { position:relative; padding:7px 30px 7px 0; cursor:pointer; list-style:none; font-size:.9rem; font-weight:500; color:var(--ink); line-height:1.7; }
.contact-faq-list summary::-webkit-details-marker { display:none; }
.contact-faq-list summary::after { content:'+'; position:absolute; right:3px; top:4px; color:var(--gold-ink); font-size:1.4rem; }
.contact-faq-list details[open] summary::after { content:'−'; }
.contact-faq-list details p { color:var(--muted); font-size:.84rem; line-height:1.9; margin:12px 0 0; }
.contact-faq-list a { color:var(--gold-ink); text-decoration:underline; }
.contact-closing { text-align:center; border-top:1px solid var(--line); padding-top:45px; }
.contact-closing p { font-family:var(--f-display); font-size:clamp(1.7rem,3.2vw,2.6rem); line-height:1.4; color:var(--ink); margin-top:20px; }
.contact-closing em { color:var(--gold-ink); }
@media(max-width:1100px) { .contact-hero-grid { gap:40px; } .contact-channel { padding:22px 20px; gap:12px; } .contact-channel strong { font-size:.97rem; } .contact-channel em { font-size:.6rem; } .contact-workspace,.contact-questions { gap:40px; } .contact-composer.form-card { padding-inline:28px; } .location-content { padding:35px; } }
@media(max-width:900px) { .contact-hero-grid { grid-template-columns:1fr; } .contact-hero-note { display:none; } body[data-page=contact] .page-hero.contact-hero-v22 { min-height:0; padding-bottom:100px; } .contact-channel-grid { grid-template-columns:1fr 1fr; } .channel-phone { grid-column:1/-1; } .contact-workspace { grid-template-columns:1fr; padding-block:55px; gap:35px; } .contact-guide { position:static; } .contact-intents { grid-template-columns:1fr 1fr; gap:10px; } .contact-intent { border-color:var(--line); background:var(--surface); } .contact-guide h2 { font-size:2.6rem; } .contact-assurance { margin-top:10px; padding-bottom:0; } .contact-location { grid-template-columns:1fr 1fr; } .location-content h2 { font-size:2.2rem; } .contact-questions { grid-template-columns:1fr; gap:30px; padding-block:55px; } }
@media(max-width:600px) { body[data-page=contact] .page-hero.contact-hero-v22 { padding:128px 0 88px; } .contact-hero-v22 h1 { font-size:clamp(2.55rem,8.4vw,3.5rem); } .contact-hero-v22 .lead { font-size:.94rem; } .contact-hero-v22 .pretitle { font-size:.54rem; letter-spacing:.13em; } .contact-channel-grid { grid-template-columns:1fr; gap:12px; margin-top:-35px; } .channel-phone { grid-column:auto; } .contact-channel { padding:22px; } .contact-channel strong { font-size:1.14rem; } .contact-intents { grid-template-columns:1fr; } .contact-intent { padding:17px; } .contact-composer.form-card { padding:25px 22px 28px; } .composer-head h2 { font-size:2.15rem; } .composer-index { display:none; } .contact-composer .row { grid-template-columns:1fr; gap:0; } .contact-composer .field input,.contact-composer .field select,.contact-composer .field textarea { font-size:16px; } .contact-location { grid-template-columns:1fr; } .location-art { min-height:260px; } .location-content { padding:30px 26px; } .contact-experience { padding-bottom:55px; } .contact-guide h2,.contact-questions h2 { font-size:2.15rem; } .contact-closing p { font-size:1.8rem; } }
@media(prefers-reduced-motion:reduce) { .contact-channel { transition:none; } }
@media print { .contact-hero-note,.location-art,.contact-intents,.contact-composer { display:none; } .contact-workspace,.contact-location,.contact-questions { display:block; } }
