:root{--black:#0a0a0a;--ink:#111;--gray:#f4f4f4;--line:#e3e3e3;--muted:#6b6b6b;--white:#fff;--max:1180px;--radius:2px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--white);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}.narrow{max-width:760px}
h1,h2,h3,h4{line-height:1.12;letter-spacing:-.02em;margin:0 0 .5em;font-weight:800}
h1{font-size:clamp(2.4rem,5.4vw,4.4rem)}h2{font-size:clamp(1.8rem,3.2vw,2.7rem)}h3{font-size:1.3rem;font-weight:700}
p{margin:0 0 1em}.lead{font-size:1.2rem;font-weight:300;max-width:640px}.muted{color:var(--muted)}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:600;margin-bottom:1.2em;color:#bdbdbd}.eyebrow.dark{color:var(--muted)}
/* header */
.site-header{background:#000;box-shadow:0 1px 0 #000;color:var(--white);position:sticky;top:0;z-index:50;border-bottom:1px solid #222}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:24px}
.brand{display:flex;align-items:center;gap:22px;text-decoration:none;padding:14px 0}
.brand img{height:44px;width:auto}.logo-exp{min-width:84px}
.brand-divider{width:1px;height:40px;background:#555}
.site-nav{display:flex;align-items:center;gap:26px;font-size:.92rem;font-weight:500}
.site-nav a{text-decoration:none;color:#d6d6d6;padding:6px 0;border-bottom:1px solid transparent}
.site-nav a:hover,.site-nav a.active{color:#fff;border-bottom-color:#fff}
.site-nav .nav-cta{display:inline-flex;align-items:center;gap:8px;background:#fff;color:#000;border:1px solid #fff;padding:10px 20px;font-weight:700;letter-spacing:.02em;transition:background .2s,color .2s}.site-nav .nav-cta:hover{background:#000;color:#fff;border-bottom-color:#fff}
.call-fab{display:none}
.nav-toggle{display:none;background:none;border:1px solid #555;color:#fff;font-size:1.3rem;padding:6px 12px;cursor:pointer}
/* hero */
.hero{background:var(--black);color:var(--white);padding:140px 0 150px;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;right:-12%;top:-30%;width:60%;height:160%;border-left:1px solid #222;transform:skewX(-14deg);pointer-events:none}
.hero.short{padding:96px 0 100px}
.hero-home{background-color:#000;background-image:linear-gradient(90deg,rgba(0,0,0,.8) 0%,rgba(0,0,0,.66) 42%,rgba(0,0,0,.25) 74%,rgba(0,0,0,.08) 100%),url(img/hero-home.jpg);background-size:cover;background-position:center 50%;padding:120px 0 130px}
.hero-home:after{display:none}.hero-home h1,.hero-home .lead{text-shadow:0 1px 14px rgba(0,0,0,.35)}.hero-inner{position:relative;z-index:1}
.btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.btns.center{justify-content:center}
.btn{display:inline-block;text-decoration:none;font-weight:600;font-size:.95rem;padding:16px 28px;border:1px solid;border-radius:var(--radius);transition:all .2s;cursor:pointer;font-family:inherit}
.btn-light{background:#fff;color:#000;border-color:#fff}.btn-light:hover{background:transparent;color:#fff}
.btn-outline-light{background:transparent;color:#fff;border-color:#fff}.btn-outline-light:hover{background:#fff;color:#000}
.btn-dark{background:#000;color:#fff;border-color:#000}.btn-dark:hover{background:#fff;color:#000}
/* bands */
.band{padding:110px 0}.band.gray{background:var(--gray)}.band.dark{background:var(--black);color:#fff}.center{text-align:center}.center .lead{margin:0 auto}
.two-col{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;align-items:start}
.text-link{font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.split-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}
.feature{display:block;background:#fff;border:1px solid var(--line);padding:38px 34px;text-decoration:none;transition:border-color .2s,transform .2s}
a.feature:hover{border-color:#000;transform:translateY(-3px)}
.area-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);margin-top:40px}
.area-card{display:flex;justify-content:space-between;align-items:center;padding:30px 4px;border-bottom:1px solid var(--line);text-decoration:none;font-size:1.35rem;font-weight:700}
.area-card:nth-child(3n+1),.area-card:nth-child(3n+2){border-right:1px solid var(--line);padding-right:28px}.area-card:nth-child(3n+2),.area-card:nth-child(3n){padding-left:28px}
.area-card .arrow{transition:transform .2s}.area-card:hover .arrow{transform:translateX(6px)}
.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:36px 0}
blockquote{margin:0;padding:34px;border:1px dashed #9a9a9a;color:var(--muted);font-style:italic}blockquote cite{display:block;margin-top:12px;font-style:normal;font-weight:600;font-size:.9rem}
.steps{list-style:none;padding:0;margin:40px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;counter-reset:s}
.steps li{counter-increment:s;border-top:2px solid #000;padding-top:22px}.steps li:before{content:"0" counter(s);font-weight:800;font-size:.85rem;letter-spacing:.1em;display:block;margin-bottom:14px}
.card{background:#fff;border:1px solid var(--line);padding:38px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;margin-bottom:22px}.field.full{grid-column:1/-1}
.field label{display:block;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.field input,.field select,.field textarea{width:100%;padding:13px 14px;border:1px solid #cfcfcf;border-radius:var(--radius);font:inherit;font-size:1rem;background:#fff}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #000;outline-offset:-1px;border-color:#000}
.form-note{font-size:.82rem;color:var(--muted);margin-top:14px}.form-status{font-weight:600;margin:6px 0 0}
.chip-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.chip{border:1px solid #666;color:#fff;text-decoration:none;padding:8px 16px;font-size:.9rem}.chip:hover{background:#fff;color:#000}
.area-section{padding:80px 0;border-bottom:1px solid var(--line)}.area-section:nth-of-type(even){background:var(--gray)}
.area-section{scroll-margin-top:90px}
.team-list{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.team-row{display:grid;grid-template-columns:240px 1fr;grid-template-areas:"photo head" "photo info";grid-template-rows:auto 1fr;column-gap:48px;align-items:start;padding:48px 0;border-bottom:1px solid var(--line);scroll-margin-top:100px}
.team-photo{grid-area:photo;width:100%;aspect-ratio:1/1;object-fit:cover;display:block;border:1px solid var(--line)}
.team-head{grid-area:head}.team-info{grid-area:info}.team-row h3{margin-bottom:.15em;font-size:1.6rem}
.role{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:700;color:var(--muted);margin-bottom:1em}
.lead-row .role{color:#000}.lead-row{grid-template-columns:300px 1fr}.lead-row h3{font-size:2rem}
.aka{font-style:italic;margin:0 0 .4em;color:#333}.bio p{font-size:.97rem;max-width:760px}
.team-links{margin-top:.6em}.team-phone{margin:-.4em 0 1em}.team-phone .phone{text-decoration:none;font-weight:700;color:#000}.team-phone .phone:hover{text-decoration:underline}
.lead-band{padding:88px 0;border-bottom:1px solid var(--line)}
.lead-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:center}
.lead-copy h2{margin-bottom:.45em}.lead-call{font-weight:600;margin-top:1.4em}.lead-call a{white-space:nowrap}
.intent{border:0;padding:0;margin:0}.intent legend{display:block;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;padding:0}
.pills{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.pills label{position:relative;cursor:pointer}
.pills input{position:absolute;opacity:0;width:1px;height:1px}
.pills span{display:block;text-align:center;padding:12px 8px;border:1px solid #cfcfcf;font-weight:600;font-size:.95rem;background:#fff;transition:all .15s}
.pills label:hover span{border-color:#000}.pills input:checked+span{background:#000;color:#fff;border-color:#000}.pills input:focus-visible+span{outline:2px solid #000;outline-offset:2px}
.consent{font-size:.76rem;line-height:1.5;color:var(--muted);margin:0 0 18px}
.lead-submit{width:100%;font-size:1rem}.lead-submit[disabled]{opacity:.6;cursor:wait}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.field.invalid input,.field.invalid .pills span{border-color:#000;box-shadow:inset 0 0 0 1px #000}
.lead-thanks{padding:24px 4px;text-align:left}.lead-thanks h3{font-size:1.6rem}.lead-thanks:focus{outline:none}
.contact-line{margin-bottom:1.4em}
.map-wrap iframe{display:block;width:100%;height:420px;border:0;filter:grayscale(100%)}
/* footer */
.site-footer{background:var(--black);color:#cfcfcf;padding:80px 0 30px;font-size:.92rem}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}.site-footer h4{color:#fff;font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;margin-bottom:1.2em}
.footer-brand{padding:0 0 18px}.site-footer a{text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}
.footer-links a{display:block;margin-bottom:6px}.site-footer .muted{color:#9a9a9a}
.legal{border-top:1px solid #262626;margin-top:50px;padding-top:26px;font-size:.8rem;color:#9a9a9a}.eho{font-size:1.2rem}
@media (max-width:980px){
 .nav-toggle{display:block}.site-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#000;flex-direction:column;align-items:flex-start;padding:20px 28px 28px;gap:14px;border-bottom:1px solid #222}
 .site-nav .nav-cta{display:none}
 .call-fab{display:flex;align-items:center;justify-content:center;gap:10px;position:fixed;left:16px;right:16px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:200;background:#000;color:#fff;border:2px solid #fff;outline:1px solid #000;box-shadow:0 6px 24px rgba(0,0,0,.35);padding:14px 20px;font-weight:700;font-size:1.05rem;text-decoration:none;letter-spacing:.02em}
 .call-fab small{font-weight:500;font-size:.85rem;color:#cfcfcf}.call-fab:active{background:#fff;color:#000}
 .site-footer{padding-bottom:calc(110px + env(safe-area-inset-bottom))}
 .site-nav.open{display:flex}.two-col,.footer-grid{grid-template-columns:1fr;gap:30px}.steps{grid-template-columns:1fr 1fr}
 .team-row,.lead-row{grid-template-columns:180px 1fr;column-gap:32px}.lead-grid{grid-template-columns:1fr;gap:32px}.testimonials{grid-template-columns:1fr}
 .area-grid{grid-template-columns:1fr 1fr}.area-card{border-right:0!important;padding:24px 4px!important}
}
@media (max-width:620px){
 body{font-size:16px}.brand{gap:14px}.brand img{height:34px}.logo-exp{min-width:66px}.brand-divider{height:30px}
 .hero{padding:90px 0 100px}
 .hero-home{background-image:linear-gradient(180deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.62) 55%,rgba(0,0,0,.72) 100%),url(img/hero-home-mobile.jpg);background-position:50% 40%;padding:72px 0 84px}.band{padding:72px 0}.steps,.area-grid,.form-grid{grid-template-columns:1fr}
 .team-row,.lead-row{grid-template-columns:96px 1fr;grid-template-areas:"photo head" "info info";grid-template-rows:auto auto;column-gap:18px;row-gap:16px;padding:32px 0;align-items:center}
 .lead-band{padding:56px 0}.pills{grid-template-columns:1fr 1fr}
 .team-row h3{font-size:1.3rem}.lead-row h3{font-size:1.5rem}.role{margin-bottom:.35em}.team-phone{margin:0}.card{padding:24px}
}