.contact-page{padding:70px 0 80px;background:radial-gradient(ellipse at 0 10%,rgba(242,121,79,.045),transparent 48%)}
.contact-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:start;max-width:1180px}
.contact-intro{padding-top:30px}.contact-eyebrow{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#ffb18e}
.contact-intro h1{font-size:clamp(2.25rem,4.2vw,3.7rem);letter-spacing:-.045em;line-height:1.12;margin:20px 0 24px;color:#f1f8fc}
.contact-lead{font-size:1rem;line-height:1.85;max-width:450px;color:#b5ccd8;margin-bottom:32px}
.contact-info-card{display:flex;align-items:center;gap:16px;padding:20px 0;border-top:1px solid #31515f;border-bottom:1px solid #31515f}
.contact-info-icon{display:grid;place-items:center;width:46px;height:46px;flex-shrink:0;background:#244655;border:1px solid #426270;border-radius:14px;color:#ffb18e;font-size:1.35rem}
.contact-info-label{display:block;font-size:.78rem;color:#b2c8d4;margin-bottom:5px}.contact-info-card a{font-size:.94rem;font-weight:600;text-decoration:none;color:#edf5fa;overflow-wrap:anywhere}.contact-info-card a:hover{text-decoration:underline}
.contact-faq-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;background:#153440;border:1px solid #31515f;border-radius:16px;padding:20px;text-decoration:none;color:#edf5fa}.contact-faq-card strong{display:block;font-size:.92rem;line-height:1.6}.contact-faq-card span span{display:block;color:#aec6d3;font-size:.8rem;margin-top:5px;line-height:1.7}.contact-faq-card>span:last-child{color:#ffb18e;font-size:1.5rem}.contact-faq-card:hover{border-color:#7d9eac;background:#1a3c4a}
.contact-small-note{font-size:.72rem;line-height:1.8;color:#95aeba;margin-top:24px;max-width:390px}
.contact-panel{background:linear-gradient(145deg,#183a49,#102c3a);padding:34px;border:1px solid #365766;border-radius:26px;box-shadow:0 24px 60px rgba(0,14,24,.2);min-width:0}
.contact-panel-heading{margin-bottom:28px}.contact-panel-heading h2{color:#f4f9fc;font-size:1.6rem;line-height:1.3;letter-spacing:-.025em;margin:10px 0}.contact-panel-heading p{font-size:.78rem;color:#a9c1cf;margin:0}
.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px;margin:0;padding:0;position:relative;background:transparent;border:0}
.contact-field{min-width:0}.contact-field-wide{grid-column:1/-1}.contact-field label{display:block;margin-bottom:9px;font-weight:600;font-size:.82rem;color:#d9e9f1}.contact-field label>span{color:#ffb18e}
.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;box-sizing:border-box;font:inherit;font-size:.9rem;color:#f0f7fb;padding:14px 15px;background:#0d2937;border:1px solid #406170;border-radius:12px;outline:none;transition:border-color .15s,box-shadow .15s;min-width:0}
.contact-field select{padding-right:28px;cursor:pointer}.contact-field option{background:#102e3c;color:#fff}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#8faab9}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:#ffb18e;box-shadow:0 0 0 3px rgba(255,177,142,.13)}
.contact-field textarea{resize:vertical;min-height:168px;line-height:1.7}.contact-message-meta{display:flex;justify-content:space-between;gap:12px;font-size:.69rem;line-height:1.7;color:#a0bac9;margin-top:8px;font-variant-numeric:tabular-nums}
.contact-privacy{font-size:.73rem;line-height:1.8;color:#a8c1ce;margin:0}.contact-privacy a{color:#dcebf3;text-underline-offset:3px}
.contact-submit{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:16px 20px;border:1px solid #f47b59;border-radius:12px;background:#e75836;color:#fff;font:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s,box-shadow .15s}.contact-submit:hover{background:#ef6945;box-shadow:0 6px 20px rgba(205,69,37,.18)}.contact-submit:disabled{opacity:.65;cursor:wait}.contact-submit:focus-visible,.contact-faq-card:focus-visible{outline:3px solid #ffd1b2;outline-offset:4px}
.contact-form-status{background:#254957;color:#d7ebf4;padding:12px 15px;border-radius:10px;font-size:.85rem;line-height:1.6;margin:0}.contact-form-status[hidden]{display:none}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.popup-backdrop{position:fixed;inset:0;background:rgba(2,15,24,.72);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;z-index:2000;padding:20px;box-sizing:border-box}.popup-backdrop.is-visible{display:flex}.popup{box-sizing:border-box;width:100%;max-width:430px;background:linear-gradient(150deg,#204252,#102c3a);border-radius:24px;padding:32px;border:1px solid #587585;box-shadow:0 28px 80px #0006;text-align:center}.popup-title{font-size:1.6rem;color:#f2f8fb;margin:0 0 12px;letter-spacing:-.025em}.popup-text{font-size:.95rem;color:#c1d7e3;line-height:1.8;margin:0 0 24px;overflow-wrap:anywhere}.popup-actions{display:flex;justify-content:center}.popup-actions .btn{border-radius:12px}
@media(max-width:980px){.contact-layout{gap:32px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.contact-panel{padding:26px}.contact-intro h1{font-size:2.6rem}}
@media(max-width:760px){.contact-page{padding:36px 0 50px}.contact-layout{grid-template-columns:1fr;gap:30px}.contact-intro{padding-top:0}.contact-intro h1{font-size:clamp(2.25rem,8vw,3rem);margin-top:14px}.contact-lead{max-width:none;margin-bottom:20px}.contact-small-note{display:none}.contact-panel{padding:24px;border-radius:22px}.contact-form{gap:20px 14px}.contact-info-card{padding:16px 0}.contact-faq-card{margin-top:16px}}
@media(max-width:440px){.contact-form{grid-template-columns:1fr}.contact-panel{padding:22px 18px}.contact-panel-heading h2{font-size:1.45rem}.contact-message-meta{font-size:.65rem}.contact-info-card a{font-size:.85rem}.popup{padding:26px 22px}}
@media(prefers-reduced-motion:reduce){.contact-submit,.contact-field input,.contact-field textarea,.contact-field select{transition:none}}
