:root{--contact-navy:#10203e;--contact-blue:#203e76;--contact-cream:#f4ecdf;--contact-red:#ca3554;--contact-gold:#f4d081;--contact-ink:#182336}.contactBody{background:#fff;color:var(--contact-ink)}.contactHeader{position:absolute;inset:0 0 auto;color:#fff;border-bottom:1px solid #ffffff30;z-index:20}.contactHero{position:relative;overflow:hidden;background:var(--contact-navy);color:#fff;min-height:760px}.contactHero:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,#0d1d3af7 0%,#11284ddf 57%,#7b29434d 100%)}.contactGlow{position:absolute;width:620px;height:620px;right:-8%;top:5%;border-radius:50%;background:radial-gradient(circle,#d33c6047,transparent 68%)}.contactHeroGrid{position:relative;z-index:2;min-height:760px;padding-top:145px;padding-bottom:70px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.58fr);gap:clamp(55px,8vw,130px);align-items:center}.contactCrumbs{position:absolute;top:108px;display:flex;gap:10px;color:#d8dfeb;font-size:.75rem}.contactEyebrow{margin:0 0 17px;color:var(--contact-red);font-size:.71rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800}.contactHero .contactEyebrow{color:var(--contact-gold)}.contactHero h1{font-size:clamp(3.9rem,6.1vw,7rem);max-width:900px;margin:0 0 25px;font-weight:600;line-height:.98;letter-spacing:-.065em}.contactLead{max-width:650px;color:#e0e5ee;font-size:1.05rem}.contactHeroActions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:32px}.contactButton{display:inline-flex;justify-content:center;align-items:center;min-height:54px;padding:13px 25px;border:0;border-radius:999px;font-weight:800;font-size:.86rem;transition:transform .22s,background .22s}.contactButton:hover{transform:translateY(-2px)}.contactButton.light{background:#fff;color:var(--contact-navy)}.contactButton.navy{background:var(--contact-blue);color:#fff}.contactTextLink{font-weight:800;font-size:.86rem;border-bottom:1px solid}.contactQuick{background:#fff;color:var(--contact-ink);border-radius:22px;padding:12px;box-shadow:0 30px 70px #07132945}.contactQuick>p{margin:10px 14px 5px;color:var(--contact-red);font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.contactQuick>a{display:grid;grid-template-columns:1fr auto;gap:2px 15px;padding:19px 16px;border-bottom:1px solid #e0e2e6}.contactQuick>a:last-child{border:0}.contactQuick span{font-size:.7rem;color:#697382}.contactQuick strong{font-size:.96rem;overflow-wrap:anywhere}.contactQuick b{grid-column:2;grid-row:1/3;align-self:center;color:var(--contact-blue);font-size:.72rem}.contactRoutes,.contactEnquiry,.contactVisit,.contactClosing{padding:clamp(75px,8vw,120px) 0}.contactRoutes{background:#fff}.contactTitleRow{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:42px}.contactTitleRow h2,.enquiryIntro h2,.visitDetails h2,.contactClosing h2{font-size:clamp(2.6rem,4.4vw,4.8rem);line-height:1.05;letter-spacing:-.06em;font-weight:600;margin:0}.contactTitleRow>p{max-width:390px;margin:0;color:#606b7a}.routeGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.routeGrid>a{min-height:320px;padding:30px;border:1px solid #d9dde4;border-radius:18px;display:flex;flex-direction:column;transition:.25s}.routeGrid>a:hover{transform:translateY(-5px);border-color:#aeb7c5;box-shadow:0 18px 40px #15244112}.routeGrid span{color:var(--contact-red);font-size:.72rem;font-weight:800}.routeGrid h3{font-size:1.5rem;margin:65px 0 12px}.routeGrid p{color:#66707e;font-size:.88rem}.routeGrid b{margin-top:auto;font-size:.82rem}.contactEnquiry{background:var(--contact-cream)}.enquiryGrid{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(50px,8vw,130px);align-items:start}.enquiryIntro{position:sticky;top:35px}.enquiryIntro>p:not(.contactEyebrow){color:#5f6876;max-width:420px}.enquiryPromise{margin-top:35px;border-top:1px solid #c8c1b6}.enquiryPromise span{display:block;padding:12px 0;border-bottom:1px solid #c8c1b6;font-size:.79rem;font-weight:700}.contactEnquiry form{background:#fff;border-radius:22px;padding:clamp(28px,4.5vw,62px);box-shadow:0 22px 55px #20345312}.fieldGrid{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}.contactEnquiry label{display:block;font-size:.78rem;font-weight:800}.contactEnquiry em{color:var(--contact-red);font-style:normal}.contactEnquiry input,.contactEnquiry select,.contactEnquiry textarea{display:block;width:100%;margin-top:8px;border:1px solid #cfd4dc;border-radius:10px;padding:13px 14px;background:#fff;color:var(--contact-ink)}.contactEnquiry input,.contactEnquiry select{height:54px}.contactEnquiry textarea{resize:vertical;min-height:135px}.contactEnquiry input:focus,.contactEnquiry select:focus,.contactEnquiry textarea:focus{border-color:var(--contact-blue);outline:2px solid #203e7629}.messageField{margin-top:22px}.contactEnquiry .contactButton{width:100%;margin-top:24px}.formNote{font-size:.73rem;color:#687281;text-align:center;margin:12px 0 0}#formStatus{min-height:22px;font-size:.8rem;font-weight:700;text-align:center;color:#a62e49;margin-top:7px}.contactVisit{background:#fff}.visitGrid{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;align-items:stretch}.visitDetails{padding:30px 0}.addressBlock{margin:35px 0;padding:22px 0;border-top:1px solid #d7dae0;border-bottom:1px solid #d7dae0}.addressBlock span{display:block;color:var(--contact-red);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.15em;margin-bottom:9px}.addressBlock address{font-style:normal;font-size:1.02rem;line-height:1.75}.visitActions{display:flex;flex-wrap:wrap;align-items:center;gap:22px}.visitActions>a:last-child{font-size:.8rem;font-weight:800;border-bottom:1px solid}.mapFrame{min-height:520px;border-radius:22px;overflow:hidden;background:#e5e7ea}.mapFrame iframe{width:100%;height:100%;min-height:520px;border:0}.contactClosing{background:var(--contact-blue);color:#fff}.closingGrid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(50px,9vw,150px);align-items:end}.contactClosing .contactEyebrow{color:var(--contact-gold)}.contactClosing p{color:#dfe5ee}.contactClosing a{font-weight:800;font-size:.84rem;border-bottom:1px solid}
@media(max-width:900px){.contactHeroGrid{grid-template-columns:1fr;gap:35px;padding-top:140px}.contactHero{min-height:auto}.contactHeroGrid{min-height:900px}.contactQuick{max-width:580px}.routeGrid{grid-template-columns:1fr}.routeGrid>a{min-height:220px}.routeGrid h3{margin-top:35px}.enquiryGrid,.visitGrid,.closingGrid{grid-template-columns:1fr}.enquiryIntro{position:static}.mapFrame,.mapFrame iframe{min-height:420px}}
@media(max-width:650px){.contactHeroGrid{padding-top:125px;padding-bottom:50px;min-height:860px}.contactCrumbs{top:92px}.contactHero h1{font-size:clamp(3.2rem,14vw,4.7rem)}.contactQuick{padding:8px}.contactQuick b{display:none}.contactTitleRow{display:block}.contactTitleRow>p{margin-top:14px}.routeGrid>a{min-height:210px;padding:24px}.fieldGrid{grid-template-columns:1fr;gap:17px}.contactEnquiry form{padding:26px 20px}.visitGrid{gap:25px}.mapFrame,.mapFrame iframe{min-height:350px}.closingGrid{gap:25px}.contactRoutes,.contactEnquiry,.contactVisit,.contactClosing{padding:68px 0}}
@media(prefers-reduced-motion:reduce){.contactButton,.routeGrid>a{transition:none}}
