.contact-hero{padding:120px 0 80px;background:var(--bg)}
.contact-title{font-size:clamp(32px,5vw,52px);margin:0 0 12px;color:var(--navy)}
.contact-sub{color:var(--gray);font-size:17px;margin:0 0 32px}

.contact-tabs{display:flex;gap:10px;margin-bottom:24px}
.contact-tab{padding:10px 20px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--navy);font-weight:600;cursor:pointer}
.contact-tab.is-active{background:var(--navy);border-color:var(--navy);color:#fff}

.contact-card{background:var(--card);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:32px;max-width:560px;display:flex;flex-direction:column;gap:18px}
.contact-field{display:flex;flex-direction:column;gap:6px}
.contact-field label{font-size:13px;font-weight:600;color:var(--gray)}
.contact-field input,.contact-field textarea,.contact-field select{padding:11px 14px;border:1px solid var(--line);border-radius:var(--r-sm);font-size:15px;font-family:inherit}
.contact-error{color:var(--coral);font-size:14px;margin:0}
.contact-submit{align-self:flex-start;display:inline-flex;align-items:center;gap:10px}

.btn-spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:contact-spin .7s linear infinite}
@keyframes contact-spin{to{transform:rotate(360deg)}}

.contact-success-overlay{position:fixed;inset:0;background:rgba(14,35,71,.55);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}
.contact-success-overlay[hidden]{display:none}
.contact-success-modal{background:var(--card);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:40px;max-width:400px;width:100%;text-align:center}
.contact-success-modal h2{margin:0 0 8px;color:var(--navy)}
.contact-success-modal p{color:var(--gray);margin:0 0 24px}
