/* İletişim: yalnızca tema token'ları. Sabit renk yok. */
.contact{--c-line:color-mix(in srgb,var(--color-text) 12%,var(--color-surface));--c-edge:color-mix(in srgb,var(--color-text) 45%,var(--color-surface));--c-ring:color-mix(in srgb,var(--color-primary) 24%,transparent);padding-top:clamp(28px,5vw,56px);padding-bottom:clamp(48px,8vw,80px)}
.contact > h1{margin:0 0 clamp(20px,4vw,32px);font-family:var(--font-heading);font-size:var(--text-h1);font-weight:500;line-height:1.15;letter-spacing:-.01em}
.contact-grid{display:grid;gap:var(--space-5);grid-template-columns:minmax(0,1fr)}
@media(min-width:860px){.contact-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--space-6);align-items:start}}
.contact-info,.contact-form{min-width:0;padding:clamp(20px,4vw,32px);background:var(--color-surface);border:1px solid var(--c-line);border-radius:var(--radius);box-shadow:var(--shadow)}
.contact-info h2,.contact-form h2{margin:0 0 var(--space-4);font-family:var(--font-heading);font-size:1.3rem;font-weight:600;line-height:1.25}
.contact-info p{margin:0 0 var(--space-3);overflow-wrap:anywhere}
.contact-info h3{margin:var(--space-5) 0 var(--space-2);font-family:var(--font-heading);font-size:1.05rem;font-weight:600}
.contact a{color:var(--color-primary);text-underline-offset:3px}
.contact a:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px;border-radius:4px}
.contact-social{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}
.contact-social a{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
.contact-hours{list-style:none;margin:0;padding:0}
.contact-hours li{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--c-line)}
.contact-hours li:last-child{border-bottom:0}
.contact-hours li span:last-child{font-weight:600;text-align:right}
.contact-form{position:relative}
.contact-form label{display:block;margin-bottom:var(--space-4);font-weight:600;line-height:1.4}
.contact-form input:not([type=checkbox]),.contact-form textarea{display:block;width:100%;min-height:48px;margin-top:var(--space-2);padding:var(--space-3);font:inherit;font-weight:400;color:var(--color-text);background:var(--color-bg);border:1.5px solid var(--c-edge);border-radius:var(--radius)}
.contact-form textarea{min-height:140px;resize:vertical}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--c-ring)}
.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:3px solid var(--color-accent);outline-offset:1px}
.contact-form .chk{display:flex;gap:var(--space-3);align-items:flex-start;font-weight:400;line-height:1.5;margin-bottom:var(--space-5)}
.contact-form .chk input{flex:none;width:22px;height:22px;margin:2px 0 0;accent-color:var(--color-primary)}
.contact-form .btn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:52px;padding:var(--space-3) var(--space-5);font-size:1.02rem;font-weight:600;text-align:center;border:0;cursor:pointer}
.contact-form .btn:active{transform:scale(.98)}
.contact-form .btn:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}
@media(min-width:560px){.contact-form .btn{width:auto;min-width:180px}}
.contact-hp{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);border:0;white-space:nowrap}
.contact-map{position:relative;margin-top:clamp(24px,4vw,40px);aspect-ratio:4/3;border:1px solid var(--c-line);border-radius:var(--radius);overflow:hidden;background:var(--color-surface);box-shadow:var(--shadow)}
@media(min-width:700px){.contact-map{aspect-ratio:16/9}}
.contact-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(prefers-reduced-motion:reduce){.contact-form .btn:active{transform:none}}
.contact-info a.wa-btn{color:#fff;text-decoration:none}
