.contact-page{background:var(--ivory)}
.contact-page .header-nav a[aria-current="page"]{color:#fff;background:var(--blue)}
.contact-page .site-menu a[aria-current="page"]{background:rgba(255,255,255,.09)}
.contact-form-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 14% 20%,rgba(255,255,255,.9),transparent 32%),linear-gradient(108deg,#eff6f9,#dcebf3)}
.contact-form-hero-inner{width:min(1080px,calc(100% - 2 * var(--side)));margin:auto;padding:150px 0 105px}
.contact-breadcrumb{display:flex;gap:12px;margin-bottom:36px;color:#526b7b;font-size:12px}
.contact-eyebrow{margin:0;color:var(--blue);font-family:var(--latin-serif);font-size:14px;letter-spacing:.28em}
.contact-eyebrow:before{display:inline-block;width:36px;height:1px;margin:0 16px 4px 0;background:var(--gold);content:""}
.contact-form-hero h1{margin:18px 0 15px;font-family:var(--display);font-size:clamp(38px,4.2vw,60px);font-weight:400;letter-spacing:.08em;line-height:1.45}
.contact-form-hero-inner>p:last-child{margin:0;color:#526b7b;font-size:16px;line-height:2;letter-spacing:.04em}
.contact-form-wave{position:absolute;bottom:-1px;left:0;width:100%;height:55px;fill:var(--ivory)}
.contact-form-section{width:min(940px,calc(100% - 2 * var(--side)));margin:55px auto 105px}
.contact-form-intro{text-align:center;margin-bottom:42px}
.contact-form-intro h2{margin:0 0 15px;font-family:var(--display);font-size:clamp(28px,3vw,40px);font-weight:400;letter-spacing:.08em}
.contact-form-intro p{margin:6px 0;color:#536873;font-size:15px}
.contact-form-intro .contact-form-note{font-size:12px;color:#7a6560}
.contact-form{overflow:hidden;background:#fff;border:1px solid rgba(49,93,132,.14);border-radius:14px;box-shadow:0 15px 45px rgba(44,62,70,.08)}
.form-row{display:grid;grid-template-columns:250px minmax(0,1fr);gap:30px;padding:27px 38px;border-bottom:1px solid rgba(49,93,132,.12)}
.form-row>label,.form-row>legend{padding-top:11px;font-weight:600;letter-spacing:.04em}
.form-row>legend{float:left;width:250px}
.form-fieldset{margin:0;min-width:0;border:0}
.required,.optional{display:inline-block;margin-left:8px;padding:2px 7px;border-radius:3px;font-family:var(--sans);font-size:10px;font-weight:600;line-height:1.6;vertical-align:2px}
.required{color:#fff;background:#b96d62}.optional{color:#5d707b;background:#e7edf0}
.form-control-wrap{min-width:0}
.form-control-wrap input,.form-control-wrap select,.form-control-wrap textarea{width:100%;padding:13px 15px;color:var(--ink);background:#fbfcfc;border:1px solid #b8c8d1;border-radius:6px;font:16px/1.6 var(--sans);transition:border-color .2s,box-shadow .2s}
.form-control-wrap textarea{resize:vertical;min-height:190px}
.form-control-wrap input:focus,.form-control-wrap select:focus,.form-control-wrap textarea:focus{outline:2px solid transparent;border-color:var(--blue);box-shadow:0 0 0 3px rgba(49,93,132,.15)}
.form-control-wrap small{display:block;margin-top:7px;color:#687982;font-size:12px}
.form-control-short{max-width:270px}
.form-radio-group{display:flex;flex-wrap:wrap;gap:14px 28px;padding-top:9px}
.form-radio-group label{display:flex;align-items:center;gap:8px;cursor:pointer}
.form-radio-group input{width:18px;height:18px;accent-color:var(--blue)}
.form-consent{padding:30px 38px 10px;text-align:center}
.form-consent p{margin:0;color:#5f7079;font-size:13px}
.form-consent a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.form-submit{padding:25px 38px 38px;text-align:center}
.form-submit button,.result-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-width:320px;padding:17px 28px;color:#fff;background:var(--blue);border:0;border-radius:999px;font:600 16px/1.5 var(--sans);letter-spacing:.06em;cursor:pointer;box-shadow:0 9px 22px rgba(49,93,132,.22);transition:background .2s,transform .2s}
.form-submit button:hover,.result-button:hover{background:var(--blue-deep);transform:translateY(-2px)}
.form-submit p{margin:12px 0 0;color:#6c7c85;font-size:11px}
.contact-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-result{display:grid;place-items:center;min-height:100vh;padding:40px 24px;background:radial-gradient(circle at 20% 15%,#fff,transparent 38%),linear-gradient(130deg,#edf5f8,#dbeaf2)}
.result-brand{position:absolute;top:30px;left:clamp(25px,5vw,70px);display:flex;align-items:center;gap:15px;font-family:var(--display);font-size:23px;letter-spacing:.08em}
.result-brand img{width:55px}
.result-panel{width:min(650px,100%);padding:60px 50px;text-align:center;background:#fff;border-radius:18px;box-shadow:0 18px 60px rgba(44,62,70,.13)}
.result-panel h1{margin:20px 0;font-family:var(--display);font-size:clamp(27px,4vw,42px);font-weight:400;letter-spacing:.06em}
.result-panel>p:not(.contact-eyebrow){margin:0 auto 32px;max-width:520px;color:#536873;line-height:2}
.result-success .result-panel{border-top:4px solid #5e9781}.result-error .result-panel{border-top:4px solid #b96d62}
@media(max-width:760px){.contact-form-hero-inner{padding:118px 0 80px}.contact-breadcrumb{margin-bottom:28px;font-size:10px}.contact-form-hero h1{font-size:34px}.contact-form-hero-inner>p:last-child{font-size:14px}.contact-form-section{margin-top:30px;margin-bottom:70px}.contact-form-intro{text-align:left;margin-bottom:28px}.contact-form-intro h2{font-size:28px}.contact-form-intro p{font-size:13px}.form-row{grid-template-columns:1fr;gap:9px;padding:22px 20px}.form-row>label,.form-row>legend{padding-top:0}.form-row>legend{float:none;width:auto}.form-radio-group{padding-top:2px;gap:12px 20px}.form-consent{padding:26px 20px 7px}.form-submit{padding:22px 20px 30px}.form-submit button,.result-button{min-width:0;width:100%;font-size:15px}.result-brand{top:22px;font-size:18px}.result-brand img{width:45px}.result-panel{padding:45px 25px}}
