:root{--contact-header-offset:132px}
:where(.contact-hero,.contact-details,.contact-map,.contact-next,.contact-urgent,.contact-cta) *{box-sizing:border-box}
:where(.contact-hero,.contact-details,.contact-map,.contact-next,.contact-urgent,.contact-cta) :where(p,figure,address,table){margin:0}
.contact-eyebrow{color:var(--gold-text);font-family:var(--body);font-size:clamp(.82rem,.76rem + .16vw,.94rem);font-style:normal;font-weight:700;letter-spacing:.2em;line-height:1.5;text-transform:uppercase}
.contact-actions{align-items:center;display:flex;flex-wrap:wrap;gap:18px 30px;margin-top:34px}
.contact-button{align-items:center;display:inline-flex;gap:14px;justify-content:center;min-height:54px;padding:14px 26px;border:1px solid var(--gold-light);border-radius:0;background:var(--gold-light);color:var(--navy-deep);font-size:.8rem;font-weight:700;letter-spacing:.13em;line-height:1.3;text-align:center;text-decoration:none;text-transform:uppercase;transition:color .25s ease,background .25s ease,border-color .25s ease,transform .25s ease}
.contact-button:hover,.contact-button:focus-visible{border-color:var(--blue-action);background:var(--blue-action);color:var(--white);transform:translateY(-2px)}
.contact-text-link{align-items:center;display:inline-flex;gap:14px;min-height:44px;color:var(--white);font-size:.8rem;font-weight:700;letter-spacing:.1em;line-height:1.4;text-decoration:none;text-transform:uppercase;transition:color .25s ease}.contact-text-link:hover,.contact-text-link:focus-visible{color:var(--gold-light)}
.contact-hero{display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);min-height:calc(100svh - var(--contact-header-offset));margin-top:var(--contact-header-offset);overflow:hidden;background:var(--navy-deep)}
.contact-hero__content{align-items:flex-start;display:flex;flex-direction:column;justify-content:center;padding:clamp(72px,7.5vw,126px) clamp(34px,6vw,112px)}
.contact-hero .contact-eyebrow{color:var(--gold-light)}
.contact-hero .heading{width:100%;max-width:760px;margin:22px 0 30px;color:var(--white);font-family:var(--display);font-size:clamp(3rem,4.45vw,5.05rem);font-weight:400;letter-spacing:-.052em;line-height:.98;text-wrap:balance}.contact-hero .heading span{display:block}.contact-hero .heading em{display:block;margin-top:.16em;color:var(--gold-light);font-family:var(--script);font-size:.65em;font-weight:400;letter-spacing:0;line-height:1.08}
.contact-hero__lead{max-width:650px;color:rgba(255,255,255,.83);font-size:clamp(1.08rem,.98rem + .35vw,1.35rem);line-height:1.75}
.contact-hero__media{min-height:620px;position:relative;isolation:isolate;background:#dfe6e8}.contact-hero__media::after{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(8,18,46,.2),transparent 34%);content:"";pointer-events:none}.contact-hero__media img{display:block;width:100%;height:100%;object-fit:cover}
.contact-hero figcaption{position:absolute;right:clamp(20px,4vw,64px);bottom:clamp(20px,4vw,54px);z-index:2;max-width:340px;padding:17px 22px;border-left:3px solid var(--gold-light);background:rgba(9,20,50,.94);color:var(--white);font-family:var(--display);font-size:clamp(.88rem,.82rem + .18vw,1rem);letter-spacing:.08em;line-height:1.55;text-transform:uppercase}
.contact-details{padding:clamp(88px,9vw,150px) clamp(24px,6vw,112px);background:var(--ivory)}
.contact-details__header{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.52fr);gap:22px clamp(44px,9vw,150px);max-width:1440px;margin:0 auto clamp(48px,6vw,82px)}.contact-details__header .contact-eyebrow{grid-column:1/-1}.contact-details__header .heading,.contact-map .heading,.contact-next .heading,.contact-urgent .heading,.contact-cta .heading{margin:0;color:var(--navy);font-family:var(--display);font-size:clamp(2.4rem,4.6vw,4.35rem);font-weight:400;letter-spacing:-.04em;line-height:1.04;text-wrap:balance}.contact-details__header .heading em,.contact-map .heading em,.contact-next .heading em,.contact-urgent .heading em,.contact-cta .heading em{display:block;margin-top:12px;color:var(--gold-text);font-family:var(--script);font-size:clamp(2.8rem,5vw,4.375rem);font-weight:400;letter-spacing:0;line-height:1}
.contact-details__header>p:last-child{align-self:end;color:#515a70;font-size:clamp(1.02rem,.98rem + .18vw,1.16rem);line-height:1.8}
.contact-details__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:1440px;margin:0 auto}.contact-detail-card{min-height:390px;padding:clamp(30px,3.2vw,50px);border-top:4px solid var(--gold-light);background:var(--white);box-shadow:0 18px 44px rgba(19,36,63,.07);transition:transform .35s ease,box-shadow .35s ease}.contact-detail-card:hover{box-shadow:0 24px 54px rgba(19,36,63,.11);transform:translateY(-4px)}.contact-detail-card__number{display:block;margin-bottom:38px;color:var(--gold-text);font-family:var(--display);font-size:1rem;letter-spacing:.16em}.contact-detail-card .heading{margin:0 0 22px;color:var(--navy);font-family:var(--display);font-size:clamp(1.55rem,2vw,2.1rem);font-weight:400;line-height:1.2}.contact-detail-card :where(p,address){color:#515a70;font-size:1rem;line-height:1.75}.contact-detail-card address{font-style:normal}.contact-detail-card>a,.contact-detail-card__phone{align-items:center;display:inline-flex;gap:13px;margin-top:28px;padding-bottom:5px;border-bottom:1px solid rgba(131,91,24,.42);color:var(--navy);font-size:.82rem;font-weight:700;letter-spacing:.1em;line-height:1.45;text-decoration:none;text-transform:uppercase;transition:color .25s ease,border-color .25s ease}.contact-detail-card>a:hover,.contact-detail-card>a:focus-visible,.contact-detail-card__phone:hover,.contact-detail-card__phone:focus-visible{border-color:var(--gold-text);color:var(--gold-text)}
.contact-hours{width:100%;border-collapse:collapse;color:#515a70;font-size:.95rem}.contact-hours caption{padding:0 0 14px;color:var(--navy);font-size:.88rem;font-weight:700;line-height:1.5;text-align:left}.contact-hours tr+tr{border-top:1px solid rgba(32,41,85,.1)}.contact-hours th,.contact-hours td{padding:10px 0;line-height:1.45;text-align:left}.contact-hours th{color:var(--navy);font-weight:700}.contact-hours td{text-align:right}
.contact-map{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);min-height:680px;background:#eef4f5}.contact-map__frame{min-height:560px}.contact-map__frame iframe{display:block;width:100%;height:100%;min-height:560px;border:0;filter:saturate(.72) contrast(.96)}.contact-map__content{align-items:flex-start;display:flex;flex-direction:column;justify-content:center;padding:clamp(64px,7vw,116px)}.contact-map__content .contact-eyebrow{margin-bottom:18px}.contact-map__content>p:last-of-type{max-width:620px;margin-top:28px;color:#515a70;font-size:clamp(1.02rem,.98rem + .18vw,1.16rem);line-height:1.8}.contact-button--light{margin-top:34px;background:var(--navy);border-color:var(--navy);color:var(--white)}
.contact-next{padding:clamp(88px,9vw,150px) clamp(24px,6vw,112px);background:var(--white)}.contact-next__header{max-width:920px;margin:0 auto clamp(50px,7vw,90px);text-align:center}.contact-next__header .contact-eyebrow{margin-bottom:18px}.contact-next__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3.5vw,50px);max-width:1380px;margin:0 auto}.contact-next__item{padding:clamp(30px,3.2vw,48px);border:1px solid rgba(32,41,85,.13);background:#fbfaf7}.contact-next__item>span{display:grid;width:48px;height:48px;margin-bottom:32px;border:1px solid var(--gold-light);border-radius:50%;place-items:center;color:var(--gold-text);font-family:var(--display)}.contact-next__item .heading{margin:0 0 16px;color:var(--navy);font-family:var(--display);font-size:clamp(1.45rem,1.8vw,1.95rem);font-weight:400;line-height:1.25}.contact-next__item p{color:#515a70;font-size:1rem;line-height:1.72}
.contact-urgent{align-items:center;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px 80px;padding:clamp(64px,7vw,108px) clamp(24px,8vw,150px);background:#e6eef0}.contact-urgent__content{max-width:920px}.contact-urgent__content .contact-eyebrow{margin-bottom:16px}.contact-urgent__content>p:last-child{max-width:780px;margin-top:26px;color:#515a70;font-size:1.02rem;line-height:1.75}.contact-urgent__action{min-width:260px}.contact-button--outline{width:100%;border-color:var(--navy);background:transparent;color:var(--navy)}
.contact-cta{min-height:680px;position:relative;isolation:isolate;display:grid;place-items:center;overflow:hidden;padding:clamp(100px,11vw,180px) 24px;background:#111d3d;text-align:center}.contact-cta__mark{position:absolute;inset:50% auto auto 50%;z-index:-1;width:min(52vw,640px);transform:translate(-50%,-50%);opacity:.045;pointer-events:none}.contact-cta__mark img{display:block;width:100%;height:auto}.contact-cta__content{max-width:1040px}.contact-cta .contact-eyebrow{margin-bottom:20px;color:var(--gold-light)}.contact-cta .heading{color:var(--white)}.contact-cta .heading em{color:var(--gold-light)}.contact-cta__content>p:last-of-type{max-width:700px;margin:28px auto 0;color:rgba(255,255,255,.82);font-size:clamp(1.02rem,.98rem + .18vw,1.16rem);line-height:1.8}.contact-cta .contact-actions{justify-content:center}
:where(.contact-hero,.contact-details,.contact-map,.contact-next,.contact-urgent,.contact-cta) a:focus-visible{outline:3px solid var(--azure);outline-offset:4px}
@media(max-width:1100px){:root{--contact-header-offset:122px}.contact-hero__content{padding-inline:clamp(30px,5vw,62px)}.contact-details__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-detail-card--hours{grid-column:1/-1}.contact-map{grid-template-columns:1fr}.contact-map__frame{min-height:520px}.contact-map__content{padding:76px clamp(28px,7vw,80px)}.contact-urgent{grid-template-columns:1fr}.contact-urgent__action{width:min(100%,340px)}}
@media(max-width:900px){.contact-hero{grid-template-columns:1fr;min-height:auto}.contact-hero__content{min-height:650px}.contact-hero__media{min-height:540px}.contact-details__header{grid-template-columns:1fr}.contact-next__grid{grid-template-columns:1fr}.contact-next__item{min-height:0}}
@media(max-width:680px){:root{--contact-header-offset:114px}.contact-hero__content{min-height:600px;padding:64px 22px 70px}.contact-hero .heading{margin-block:18px 24px;font-size:clamp(3rem,15vw,4.6rem)}.contact-hero .heading em{margin-top:16px;font-size:.58em}.contact-actions{align-items:stretch;flex-direction:column;width:100%}.contact-button{width:100%}.contact-text-link{justify-content:center}.contact-hero__media{min-height:420px}.contact-hero figcaption{right:16px;bottom:16px;left:16px;max-width:none}.contact-details,.contact-next{padding:76px 22px}.contact-details__header .heading,.contact-map .heading,.contact-next .heading,.contact-urgent .heading,.contact-cta .heading{font-size:clamp(2.55rem,12vw,4rem)}.contact-details__header .heading em,.contact-map .heading em,.contact-next .heading em,.contact-urgent .heading em,.contact-cta .heading em{font-size:clamp(2.65rem,13vw,4rem)}.contact-details__grid{grid-template-columns:1fr}.contact-detail-card--hours{grid-column:auto}.contact-detail-card{min-height:0;padding:32px 25px}.contact-map__frame,.contact-map__frame iframe{min-height:420px}.contact-map__content{padding:70px 22px}.contact-next__item{padding:30px 25px}.contact-urgent{padding:70px 22px}.contact-urgent__action{min-width:0;width:100%}.contact-cta{min-height:620px;padding-inline:22px}.contact-cta__mark{width:min(92vw,500px)}}
@media(prefers-reduced-motion:reduce){.contact-button,.contact-detail-card{transition:none}}
