@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap');

.contact-page{--contact-navy:#08243b;--contact-navy-deep:#061b2e;--contact-gold:#d9a100;--contact-gold-light:#efc557;--contact-ivory:#fffdf8;--contact-warm:#f6f1e7;--contact-line:#dcd4c5;--contact-text:#163047;--contact-muted:#5c6b76;background:var(--contact-ivory);color:var(--contact-text)}
.contact-shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.contact-kicker{margin:0;color:#a27616;font:700 .76rem/1.2 'DM Sans',sans-serif;letter-spacing:.18em;text-transform:uppercase}
.contact-hero{position:relative;overflow:hidden;background:linear-gradient(110deg,var(--contact-ivory) 0%,#fffdf8 49%,#eee5d5 100%);border-bottom:1px solid var(--contact-line)}
.contact-hero:after{content:"";position:absolute;inset:0 0 0 52%;pointer-events:none;background:radial-gradient(circle at 85% 20%,#e8bd5266,transparent 33%),linear-gradient(135deg,transparent 42%,#0b2b4433 42.2%,transparent 42.6%);opacity:.55}
.contact-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);gap:90px;align-items:center;min-height:610px;padding-block:80px}
.contact-hero__copy h1{max-width:720px;margin:20px 0 24px;color:var(--contact-navy);font-size:clamp(3.1rem,5.3vw,5.75rem);line-height:1.03;letter-spacing:-.055em}
.contact-hero__lede{max-width:650px;margin-bottom:32px;color:var(--contact-muted);font-size:1.12rem;line-height:1.72}
.contact-hero__actions,.contact-final__actions{display:flex;flex-wrap:wrap;gap:12px}
.contact-button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 25px;border:1px solid transparent;border-radius:1px;font:700 .88rem/1 'DM Sans',sans-serif;text-decoration:none;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}
.contact-button:hover{transform:translateY(-2px)}
.contact-button--gold{background:linear-gradient(135deg,var(--contact-gold-light),var(--contact-gold));border-color:#c28e00;color:var(--contact-navy-deep);box-shadow:0 12px 28px #9f740029}
.contact-button--gold:hover{box-shadow:0 16px 34px #9f74003d}
.contact-button--outline{background:#fff9;border-color:#9d9078;color:var(--contact-navy)}
.contact-button--outline:hover{background:#fff;border-color:var(--contact-gold)}
.contact-hero__note{margin:26px 0 0;padding-left:19px;border-left:2px solid var(--contact-gold);color:var(--contact-navy);font-size:.92rem;font-weight:600}
.contact-hero__card{position:relative;background:var(--contact-navy);color:#fff;padding:46px 44px;border-top:4px solid var(--contact-gold);box-shadow:0 28px 70px #061b2e2b}
.contact-hero__card:after{content:"";position:absolute;right:22px;bottom:20px;width:88px;height:88px;border-right:1px solid #efc55766;border-bottom:1px solid #efc55766}
.contact-card__eyebrow{display:block;margin-bottom:24px;color:var(--contact-gold-light);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.contact-card__item{position:relative;z-index:1;padding:20px 0;border-top:1px solid #ffffff26}
.contact-card__item>span{display:block;margin-bottom:6px;color:#b8c5ce;font-size:.71rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.contact-card__item a,.contact-card__item p{display:block;margin:0;color:#fff;font:400 clamp(1.03rem,1.45vw,1.28rem)/1.45 'Libre Baskerville',Georgia,serif;text-decoration:none;overflow-wrap:anywhere}
.contact-card__item a:hover{color:var(--contact-gold-light)}
.contact-card__item small{display:block;margin-top:7px;color:#c8d3da;font-size:.79rem;line-height:1.5}
.contact-paths{padding:110px 0 120px;background:#fff}
.contact-section-heading{display:grid;grid-template-columns:.8fr 1.2fr;column-gap:80px;align-items:end;margin-bottom:50px}
.contact-section-heading .contact-kicker{grid-column:1/-1;margin-bottom:14px}
.contact-section-heading h2{margin:0;color:var(--contact-navy);font-size:clamp(2.4rem,4vw,4.2rem)}
.contact-section-heading>p:last-child{margin:0 0 7px;color:var(--contact-muted);font-size:1.03rem;line-height:1.7}
.contact-paths__grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--contact-line);border-bottom:1px solid var(--contact-line)}
.contact-path{min-height:340px;padding:38px 34px 34px;border-right:1px solid var(--contact-line);display:flex;flex-direction:column;background:linear-gradient(180deg,#fff,transparent);transition:background .22s ease,transform .22s ease}
.contact-path:last-child{border-right:0}
.contact-path:hover{background:var(--contact-warm);transform:translateY(-4px)}
.contact-path__number{display:block;margin-bottom:50px;color:#9a7013;font-size:.76rem;font-weight:700;letter-spacing:.16em}
.contact-path h3{color:var(--contact-navy);font-size:1.6rem}
.contact-path p{color:var(--contact-muted);font-size:.94rem;line-height:1.7}
.contact-path a,.contact-path button{margin-top:auto;padding:0;border:0;background:none;color:#7f5d13;font:700 .84rem/1.4 'DM Sans',sans-serif;text-align:left;text-decoration:none;cursor:pointer}
.contact-path a:hover,.contact-path button:hover{text-decoration:underline;text-underline-offset:5px}
.contact-service{padding:0;background:var(--contact-warm)}
.contact-service__grid{width:100%;max-width:none;display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
.contact-service__image{position:relative;min-height:680px;margin:0;overflow:hidden}
.contact-service__image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,var(--contact-warm)),linear-gradient(0deg,#061b2e99,transparent 42%)}
.contact-service__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.contact-service__image figcaption{position:absolute;z-index:1;left:max(32px,calc((100vw - 1180px)/2));bottom:38px;padding-left:16px;border-left:2px solid var(--contact-gold-light);color:#fff;font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.contact-service__copy{align-self:center;max-width:680px;padding:82px clamp(48px,7vw,120px) 82px clamp(48px,6vw,96px)}
.contact-service__copy h2{margin:16px 0 25px;color:var(--contact-navy);font-size:clamp(2.25rem,3.65vw,4rem)}
.contact-service__copy>p:not(.contact-kicker){color:var(--contact-muted);font-size:1.02rem;line-height:1.75}
.contact-service__facts{margin:30px 0 34px}
.contact-service__facts div{display:grid;grid-template-columns:145px 1fr;gap:24px;padding:17px 0;border-top:1px solid #cfc5b4}
.contact-service__facts div:last-child{border-bottom:1px solid #cfc5b4}
.contact-service__facts dt{color:var(--contact-navy);font-weight:700}
.contact-service__facts dd{margin:0;color:var(--contact-muted);font-size:.9rem;line-height:1.55}
.contact-text-link{color:#77550d;font-size:.88rem;font-weight:700;text-decoration:none}
.contact-text-link:hover{text-decoration:underline;text-underline-offset:5px}
.contact-guidance{padding:105px 0;background:var(--contact-ivory)}
.contact-guidance__grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}
.contact-guidance h2{max-width:470px;margin:16px 0 0;color:var(--contact-navy);font-size:clamp(2.3rem,3.7vw,4rem)}
.contact-guidance__items{display:grid;border-top:1px solid var(--contact-line)}
.contact-guidance__items article{display:grid;grid-template-columns:210px 1fr;gap:32px;padding:24px 0;border-bottom:1px solid var(--contact-line)}
.contact-guidance__items strong{color:var(--contact-navy);font-family:'Libre Baskerville',Georgia,serif;font-size:1.06rem}
.contact-guidance__items p{margin:0;color:var(--contact-muted);font-size:.92rem;line-height:1.65}
.contact-final{position:relative;overflow:hidden;padding:82px 0;background:linear-gradient(120deg,var(--contact-navy-deep),#0c304d);color:#fff}
.contact-final:after{content:"";position:absolute;top:-130px;right:4%;width:360px;height:360px;border:1px solid #efc55726;border-radius:50%;box-shadow:0 0 0 55px #efc5570a}
.contact-final__inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:70px}
.contact-final h2{margin:13px 0 12px;color:#fff;font-size:clamp(2.2rem,3.5vw,3.7rem)}
.contact-final p:not(.contact-kicker){margin:0;color:#c8d6de}
.contact-final .contact-kicker{color:var(--contact-gold-light)}
.contact-button--light{border-color:#ffffff70;color:#fff}
.contact-button--light:hover{background:#fff;color:var(--contact-navy)}

@media(max-width:900px){.contact-hero__grid{grid-template-columns:1fr;gap:45px;min-height:0;padding-block:70px}.contact-hero:after{inset:45% 0 0;background:radial-gradient(circle at 80% 60%,#e8bd524f,transparent 45%)}.contact-section-heading,.contact-guidance__grid{grid-template-columns:1fr;gap:20px}.contact-paths__grid{grid-template-columns:1fr}.contact-path{min-height:0;border-right:0;border-bottom:1px solid var(--contact-line)}.contact-path:last-child{border-bottom:0}.contact-path__number{margin-bottom:22px}.contact-service__grid{grid-template-columns:1fr}.contact-service__image{min-height:500px}.contact-service__image:after{background:linear-gradient(0deg,var(--contact-warm),transparent 25%),linear-gradient(0deg,#061b2e99,transparent 42%)}.contact-service__copy{max-width:none;padding:70px 24px 80px}.contact-guidance__items article{grid-template-columns:1fr;gap:8px}.contact-final__inner{align-items:flex-start;flex-direction:column;gap:35px}}
@media(max-width:600px){.contact-shell{width:min(100% - 32px,1180px)}.contact-hero__grid{padding-block:55px}.contact-hero__copy h1{font-size:clamp(2.7rem,13vw,4.2rem)}.contact-hero__actions,.contact-final__actions{display:grid;grid-template-columns:1fr;width:100%}.contact-button{width:100%}.contact-hero__card{padding:36px 28px}.contact-paths{padding:80px 0}.contact-section-heading{margin-bottom:35px}.contact-path{padding:30px 24px}.contact-service__image{min-height:370px}.contact-service__image figcaption{left:22px;bottom:26px}.contact-service__copy{padding:60px 16px 70px}.contact-service__facts div{grid-template-columns:1fr;gap:5px}.contact-guidance{padding:80px 0}.contact-final{padding:70px 0}}
@media(prefers-reduced-motion:reduce){.contact-button,.contact-path{transition:none}.contact-button:hover,.contact-path:hover{transform:none}}
