.contact-page{min-height:100svh;display:flex;flex-direction:column}
.contact-header,.contact-footer{width:min(1120px,calc(100% - 40px));margin-inline:auto;display:flex;align-items:center;gap:24px;padding:24px 0}
.contact-header{border-bottom:1px solid var(--line)}
.contact-header img{object-fit:contain}
.contact-header nav{margin-left:auto}
.contact-header nav,.contact-footer nav{display:flex;gap:20px}
.contact-header nav a,.contact-footer a{display:inline-flex;align-items:center;min-height:44px;color:var(--paper);text-decoration:none}
.contact-header nav a:hover,.contact-footer a:hover{text-decoration:underline;text-underline-offset:5px}
.contact-theme{width:44px;height:44px;flex:none;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--paper);cursor:pointer}
.contact-main{width:min(640px,calc(100% - 40px));margin:64px auto;flex:1}
.contact-main h1{font-size:clamp(44px,8vw,68px);line-height:1.1;letter-spacing:-.035em;margin:16px 0 24px}
.contact-main h1 em{font-family:var(--f-soft);font-weight:450;color:var(--mint)}
.contact-lead{font-size:18px;line-height:1.7;color:var(--haze);max-width:48ch}
.contact-card{margin:32px 0 24px;padding:28px;background:#172333;border:1px solid #42516a;border-radius:12px}
.contact-card h2{font-size:22px;margin:0 0 24px}
.contact-card label{display:block;font-size:14px;color:var(--haze);margin-bottom:8px}
.contact-card input{display:block;width:100%;min-height:48px;padding:10px 12px;font:500 16px/1.5 var(--f-display);color:var(--paper);background:var(--ink);border:1px solid var(--line);border-radius:8px}
.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.contact-actions .btn{min-height:48px;justify-content:center;text-align:center}
.contact-actions [hidden]{display:none}
.contact-hint,#contact-status{font-size:14px;line-height:1.65;color:var(--haze)}
#contact-status{margin:16px 0 0}
#contact-status:empty{display:none}
.contact-hint{margin:20px 0 0}
.contact-home{display:inline-flex;align-items:center;min-height:44px;color:var(--paper);text-underline-offset:5px}
.contact-footer{border-top:1px solid var(--line);justify-content:space-between;font-size:14px;color:var(--haze)}
html[data-theme=light] .contact-card{background:#fff;border-color:#c3cdd3}
@media(max-width:600px){.contact-header,.contact-footer{gap:12px}.contact-header nav,.contact-footer nav{gap:14px}.contact-header .wm{font-size:15px}.contact-header .brand{gap:7px}.contact-header img{width:34px;height:34px}.contact-main{margin-block:36px}.contact-card{padding:20px}.contact-actions{flex-direction:column}.contact-actions .btn{width:100%}.contact-header nav a{font-size:14px}.contact-footer{flex-wrap:wrap}}
