/* Contact page only: shared brand, typography and navigation stay in design.css. */
.contact-page{--contact-ink:#092732;--contact-muted:#536b73}
.contact-page .site-header a[aria-current=page]{color:var(--cyan)}
.contact-hero{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(38px,6.5vw,96px);padding-top:40px;padding-bottom:72px;align-items:start}
.contact-copy{min-width:0;padding-top:4px}
.contact-breadcrumb{display:flex;gap:14px;color:#89a5b0;font-size:11px;margin-bottom:44px}
.contact-breadcrumb a:hover{color:#2bd5ce}
.contact-copy>.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.contact-dot{display:block;width:6px;height:6px;border-radius:50%;background:#2bd5ce;box-shadow:0 0 18px #2bd5ce77}
.contact-hero h1{font:500 clamp(48px,4.8vw,76px)/1.08 Jost,sans-serif;letter-spacing:-.047em;margin:0 0 28px}
.contact-hero h1 em{font-style:normal;color:var(--cyan)}
.contact-intro{font-size:15px;line-height:1.9;max-width:425px;color:#c3d4da;margin-bottom:40px}
.contact-mobile-form-link{display:none}
.contact-direct{border-top:1px solid #28414b;padding-top:26px;margin-top:8px}
.contact-direct>.eyebrow{font-size:10px;color:#9bb6c0;margin-bottom:15px}
.contact-phone{display:flex;justify-content:space-between;align-items:center;gap:12px;font:500 clamp(24px,2.45vw,37px)/1.25 Jost,sans-serif;letter-spacing:-.025em;white-space:nowrap}
.contact-phone>span{color:var(--cyan);font-size:28px}
.contact-hours{color:#8facb8;font-size:11px;margin:12px 0 24px}
.contact-email{display:flex;justify-content:space-between;gap:12px;font:400 19px Jost,sans-serif;color:#c3d4da;width:fit-content}
.contact-email>span{color:var(--cyan);margin-left:12px}
.contact-phone:hover,.contact-email:hover{color:var(--cyan)}
.contact-location{display:flex;gap:17px;margin-top:39px;color:#b5cbd4;border-top:1px solid #28414b;padding-top:27px}
.contact-location svg{color:var(--cyan);flex-shrink:0;margin-top:4px}
.contact-location strong{font:500 16px Jost,sans-serif;display:block;margin-bottom:8px;color:#f3f4f0}
.contact-location address{font-size:12px;line-height:1.85;font-style:normal}
.contact-form-card{background:#f1f4ef;color:var(--contact-ink);border-top:3px solid var(--cyan);padding:32px 35px 26px;box-shadow:0 20px 70px #00000020;scroll-margin-top:22px;min-width:0}
.contact-card-heading .eyebrow{color:#427078;font-size:10px;margin-bottom:10px}
.contact-card-heading h2{font:500 34px/1.15 Jost,sans-serif;letter-spacing:-.03em;margin:0 0 10px}
.contact-card-heading>p:last-child{font-size:12px;line-height:1.7;color:var(--contact-muted);margin-bottom:24px}
.contact-topics{border:0;padding:0;margin:0 0 24px;min-width:0}
.contact-topics legend,.contact-field>label{font:500 13px/1.4 Jost,sans-serif;margin-bottom:9px;display:block;color:var(--contact-ink)}
.contact-topic-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.contact-topic-grid label{position:relative;cursor:pointer;min-width:0}
.contact-topic-grid input{position:absolute;width:1px;height:1px;opacity:0}
.contact-topic-grid span{display:flex;align-items:center;justify-content:center;min-height:38px;padding:7px 9px;border:1px solid #c9d6d2;background:#ffffff70;color:#46616a;font:500 12px/1.4 Jost,sans-serif;transition:background .15s,border-color .15s}
.contact-topic-grid input:checked+span{background:#0c343e;border-color:#0c343e;color:#f2fbf7}
.contact-topic-grid input:focus-visible+span{outline:3px solid #13817f;outline-offset:2px}
.contact-topic-grid label:hover span{border-color:#13817f}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:17px 15px}
.contact-field{min-width:0}
.contact-field-wide{grid-column:1/-1}
.contact-field>label>span:not(.optional){color:#177874}
.contact-field .optional{font:10px OpenSans,sans-serif;color:#677d83;margin-left:5px}
.contact-field input,.contact-field textarea{width:100%;max-width:100%;display:block;box-sizing:border-box;border:1px solid #cbd7d3;border-radius:0;background:#fff;color:var(--contact-ink);font:13px/1.55 OpenSans,sans-serif;padding:12px 13px;min-height:45px;box-shadow:none;outline-offset:2px}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#6c8087;opacity:1}
.contact-field input:focus,.contact-field textarea:focus{outline:2px solid #128c86;border-color:#128c86}
.contact-field textarea{resize:vertical;min-height:94px}
.contact-field-hint{font-size:10px;line-height:1.7;color:var(--contact-muted);margin:7px 0 0}
.contact-consent{display:flex;gap:10px;align-items:flex-start;cursor:pointer;margin-top:19px;font-size:10px;line-height:1.8;color:var(--contact-muted)}
.contact-consent input{accent-color:#0e716e;width:17px;height:17px;flex:0 0 17px;margin:2px 0 0}
.contact-consent a{color:#0b6668;text-decoration:underline;text-underline-offset:2px}
.contact-required{font-size:10px;color:var(--contact-muted);margin:12px 0}
.contact-submit{width:100%;justify-content:space-between;border:0;border-radius:0;font:500 16px Jost,sans-serif;cursor:pointer;min-height:54px;padding:16px 20px}
.contact-submit:disabled{opacity:.7;cursor:wait}
.contact-preview-note{font-size:10px;line-height:1.65;color:#5f757c;margin:15px 0 0;padding-top:13px;border-top:1px solid #d6dfda}
.contact-feedback{font-size:13px;line-height:1.75;margin-top:17px;padding:15px;background:#dfefdf;border-left:3px solid #438659;outline-offset:3px}
.contact-feedback[data-state=error]{background:#f7e8df;border-color:#b75a3d;color:#693726}
.contact-next{padding:60px 0}
.contact-next-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
.contact-next h2{font:500 clamp(35px,3.5vw,49px)/1.1 Jost,sans-serif;letter-spacing:-.03em;margin:16px 0 23px}
.contact-next h2 span{color:#668791}
.contact-next-grid>div>p:not(.eyebrow){font-size:13px;line-height:1.9;max-width:455px;color:#4b636b;margin-bottom:22px}
.contact-dark-link{color:#153b44;font-size:12px}
.contact-steps{list-style:none;margin:0;padding:0}
.contact-steps li{display:grid;grid-template-columns:45px 1fr;gap:15px;padding:21px 0;border-bottom:1px solid #d0dcd5}
.contact-steps li:first-child{padding-top:0}
.contact-step-number{font:400 25px Jost,sans-serif;color:#168780}
.contact-steps h3{font:500 23px/1.3 Jost,sans-serif;margin:0 0 7px;letter-spacing:-.025em}
.contact-steps p{font-size:12px;line-height:1.8;color:#4b636b;margin:0;max-width:410px}
.contact-questions{display:grid;grid-template-columns:.75fr 1.25fr;gap:75px;padding-top:57px;padding-bottom:57px}
.contact-questions h2{font:500 39px/1.2 Jost,sans-serif;letter-spacing:-.035em;margin:17px 0}
.contact-faqs details{border-bottom:1px solid #29434e;padding:19px 0}
.contact-faqs details:first-child{padding-top:0}
.contact-faqs summary{display:flex;gap:18px;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font:400 17px/1.55 Jost,sans-serif;color:#e1eae9}
.contact-faqs summary::-webkit-details-marker{display:none}
.contact-faqs summary>span{font-size:25px;color:var(--cyan);font-weight:300;transition:transform .2s}
.contact-faqs details[open] summary>span{transform:rotate(45deg)}
.contact-faqs p{font-size:12px;line-height:1.9;color:#9fbac5;margin:16px 32px 0 0}
.contact-faqs a{color:#8ce4dd;text-decoration:underline;text-underline-offset:3px}
@media(min-width:1700px){.contact-hero h1{font-size:80px}.contact-form-card{padding:40px}.contact-phone{font-size:38px}}
@media(max-width:1050px){.contact-hero{gap:35px;grid-template-columns:.95fr 1.05fr}.contact-form-card{padding:26px 25px}.contact-hero h1{font-size:55px}.contact-phone{font-size:27px}.contact-next-grid{gap:50px}.contact-questions{gap:45px}}
@media(max-width:850px){.contact-hero{grid-template-columns:1fr;gap:36px;padding-top:25px;padding-bottom:45px}.contact-copy{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.contact-breadcrumb,.contact-copy>.eyebrow,.contact-copy>h1,.contact-intro{grid-column:1/-1}.contact-breadcrumb{margin-bottom:28px}.contact-hero h1{font-size:62px}.contact-intro{max-width:550px;margin-bottom:22px}.contact-direct{margin:0}.contact-location{margin:0;padding-top:27px}.contact-phone{font-size:25px}.contact-form-card{padding:30px}.contact-topic-grid{grid-template-columns:repeat(3,1fr)}.contact-next-grid{gap:35px}.contact-questions{grid-template-columns:1fr;gap:24px}.contact-questions h2{margin-bottom:0}}
@media(max-width:540px){.contact-hero{padding-top:22px;gap:29px}.contact-copy{display:block}.contact-breadcrumb{margin-bottom:27px}.contact-copy>.eyebrow{font-size:8px;letter-spacing:.09em;margin-bottom:17px}.contact-hero h1{font-size:clamp(40px,10.4vw,55px);line-height:1.08;margin-bottom:22px}.contact-intro{font-size:13px;line-height:1.85;margin-bottom:26px}.contact-phone{font-size:27px}.contact-hours{margin-bottom:18px}.contact-email{font-size:18px}.contact-location{margin-top:24px;padding-top:22px}.contact-location address{font-size:11px}.contact-form-card{padding:24px 20px}.contact-card-heading h2{font-size:30px}.contact-topic-grid{grid-template-columns:1fr 1fr}.contact-fields{grid-template-columns:1fr;gap:16px}.contact-field input,.contact-field textarea{font-size:16px}.contact-consent{font-size:11px}.contact-preview-note{font-size:10px}.contact-next{padding:40px 0}.contact-next-grid{grid-template-columns:1fr;gap:29px}.contact-next h2{font-size:36px}.contact-steps li{padding:18px 0}.contact-questions{padding-top:40px;padding-bottom:40px}.contact-questions h2{font-size:34px}.contact-faqs summary{font-size:16px}.contact-faqs p{margin-right:0}.contact-breadcrumb{font-size:10px}}
@media(prefers-reduced-motion:reduce){.contact-page *{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:850px){.contact-mobile-form-link{display:flex;grid-column:1/-1;justify-content:space-between;align-items:center;width:fit-content;min-height:44px;gap:32px;border-bottom:1px solid #2ad4ce;color:#63e6db;font:500 14px Jost,sans-serif;margin:0 0 26px}}
