:root{
  --ink:#111713;
  --ink-2:#1a211c;
  --bone:#f2f0e8;
  --paper:#fbfaf5;
  --mint:#c7e8e7;
  --mint-2:#e5f3ef;
  --brass:#b68a3a;
  --brass-light:#d2aa55;
  --signal:#d7ff57;
  --muted:#68746b;
  --line:#d8d8ce;
  --white:#fffefa;
  --max:1380px;
  --serif:Georgia,"Times New Roman",serif;
  --sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.55}
img,svg{max-width:100%;display:block}
a{color:inherit}
button,a{touch-action:manipulation}
.skip-link{position:fixed;left:16px;top:-80px;background:var(--signal);color:var(--ink);padding:10px 14px;z-index:100;font-weight:800}
.skip-link:focus{top:16px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(251,250,245,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(17,23,19,.12)}
.header-inner{max-width:var(--max);margin:auto;min-height:76px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.wordmark{display:flex;align-items:center;gap:11px;text-decoration:none;letter-spacing:.04em}
.wordmark-mark{width:34px;height:34px;border:1px solid var(--ink);display:grid;place-items:center;font-weight:800;font-size:19px}
.wordmark strong,.wordmark small,.footer-brand strong,.footer-brand small{display:block}
.wordmark strong,.footer-brand strong{font-size:13px;letter-spacing:.18em}
.wordmark small,.footer-brand small{font-size:9px;color:var(--muted);letter-spacing:.16em;margin-top:2px}
.site-nav{display:flex;align-items:center;gap:28px;font-size:13px}
.site-nav a{text-decoration:none}
.site-nav a:not(.nav-call):hover,.text-link:hover,.underlined-link:hover{opacity:.65}
.nav-call{border:1px solid var(--ink);padding:11px 15px}
.nav-call span{margin-left:8px;font-variant-numeric:tabular-nums}
.menu-toggle{display:none;background:none;border:0;font:inherit}
.hero{background:var(--ink);color:var(--paper);min-height:calc(100vh - 76px);padding:48px 28px 0;display:flex;flex-direction:column}
.hero-grid{width:100%;max-width:var(--max);margin:auto;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(480px,.98fr);gap:54px;align-items:center;flex:1}
.hero-copy{padding:40px 0 70px}
.eyebrow,.kicker{font-size:10px;letter-spacing:.19em;font-weight:800;text-transform:uppercase}
.eyebrow{color:#b9c1b8;display:flex;align-items:center;gap:10px}
.eyebrow-dot{width:7px;height:7px;background:var(--signal);display:inline-block;border-radius:50%}
.hero h1{font-size:clamp(54px,7.2vw,112px);line-height:.9;letter-spacing:-.055em;margin:28px 0 30px;font-weight:700}
.hero h1 em,.local-copy h2 em{font-family:var(--serif);font-weight:400;color:var(--mint);font-style:italic}
.hero-lede{max-width:610px;color:#c7cec6;font-size:17px;line-height:1.65}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;text-decoration:none;padding:15px 17px;font-weight:800;font-size:13px;min-width:180px}
.button-primary{background:var(--signal);color:var(--ink)}
.button-primary b{font-size:18px}
.text-link{color:var(--paper);text-decoration:none;font-size:13px}
.text-link span{margin-left:8px}
.hero-meta{display:grid;grid-template-columns:1.4fr 1fr 1fr;border-top:1px solid #39413a;margin-top:58px;padding-top:18px;max-width:700px}
.hero-meta div{padding-right:20px}
.hero-meta span,.contact-meta span{display:block;color:#788278;font-size:9px;letter-spacing:.18em;font-weight:800;margin-bottom:5px}
.hero-meta strong,.contact-meta strong{font-size:12px;font-weight:600}
.hero-visual{position:relative;align-self:stretch;min-height:680px;display:flex;align-items:center}
.image-frame{position:relative;width:78%;margin-left:auto;overflow:hidden;background:#222;aspect-ratio:1/1.08}
.image-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) contrast(1.03)}
.image-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,23,19,.05),rgba(17,23,19,.32))}
.image-tag{position:absolute;z-index:2;background:var(--signal);color:var(--ink);font-size:9px;font-weight:900;letter-spacing:.13em;padding:8px 10px}
.tag-top{left:14px;top:14px}.tag-bottom{right:14px;bottom:14px;background:var(--paper)}
.hero-object{position:absolute;left:0;bottom:42px;width:58%;background:#1c231e;border:1px solid #465046;padding:16px;box-shadow:18px 18px 0 rgba(0,0,0,.18)}
.object-label{font-size:9px;letter-spacing:.17em;color:#8e998f;margin-bottom:5px}
.hero-object svg{width:100%}
.hero-foot{max-width:var(--max);width:100%;margin:auto;border-top:1px solid #39413a;padding:15px 0;display:grid;grid-template-columns:1fr 1.7fr auto;gap:20px;font-size:9px;letter-spacing:.16em;color:#889289}
.hero-foot a{color:var(--signal);text-decoration:none}
.statement{max-width:var(--max);margin:auto;padding:150px 28px;display:grid;grid-template-columns:90px minmax(0,1fr) 280px;gap:40px}
.section-index{font-size:11px;letter-spacing:.15em;color:var(--brass);font-weight:900}
.statement-main h2{font-size:clamp(35px,4.4vw,67px);line-height:1.02;letter-spacing:-.045em;max-width:900px;margin:0;font-weight:650}
.kicker{color:var(--brass);margin:0 0 17px}
.statement-note{border-left:1px solid var(--line);padding-left:22px;align-self:end}
.statement-note span{font-size:9px;letter-spacing:.16em;font-weight:800;color:var(--muted)}
.statement-note p{font-size:13px;margin:9px 0 0;color:#475149}
.diagnostic-band{background:var(--mint);padding:120px max(28px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.diagnostic-intro h2{font-size:clamp(42px,5vw,72px);line-height:.98;letter-spacing:-.05em;margin:0 0 25px}
.diagnostic-intro p:not(.kicker){max-width:490px;color:#40504a}
.diagnostic-rail{display:grid;grid-template-columns:repeat(3,1fr);align-items:end}
.rail-item{min-height:310px;padding:0 26px 0 0;border-top:1px solid rgba(17,23,19,.35);position:relative}
.rail-item+.rail-item{padding-left:26px;border-left:1px solid rgba(17,23,19,.35)}
.rail-no{display:block;font-size:11px;letter-spacing:.15em;color:#52635a;margin:18px 0 70px}
.rail-item h3{font-size:25px;margin:0 0 12px;letter-spacing:-.03em}
.rail-item p{font-size:13px;color:#40504a;max-width:220px}
.rail-line{height:3px;background:var(--ink);width:38px;margin-top:38px}
.feature-split{max-width:var(--max);margin:auto;padding:140px 28px;display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}
.blueprint-card{background:var(--ink);color:var(--paper);padding:24px;position:relative}
.blueprint-head{display:flex;justify-content:space-between;color:#889289;font-size:9px;letter-spacing:.15em}
.blueprint-card svg{margin:45px auto 28px}
.blueprint-note{color:#8f9a90;font-size:10px;line-height:1.5;max-width:480px}
.feature-copy h2{font-size:clamp(39px,4.6vw,68px);line-height:.98;letter-spacing:-.05em;margin:0 0 28px}
.feature-copy p{font-size:16px;color:#4b564f;max-width:570px}
.feature-copy strong{color:var(--ink)}
.underlined-link{display:inline-flex;gap:12px;margin-top:20px;text-decoration:underline;text-underline-offset:5px;font-size:12px;font-weight:750}
.service-menu{background:#e9e7dd;padding:120px max(28px,calc((100vw - var(--max))/2))}
.service-menu-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;margin-bottom:45px}
.service-menu h2{font-size:clamp(38px,4.6vw,66px);line-height:.98;letter-spacing:-.05em;margin:0;max-width:800px}
.service-list{border-top:1px solid #c5c4ba}
.service-list a{display:grid;grid-template-columns:70px 1fr 180px 30px;align-items:center;gap:20px;text-decoration:none;border-bottom:1px solid #c5c4ba;padding:22px 0}
.service-list a:hover{background:rgba(255,255,255,.35);padding-left:12px;padding-right:12px}
.service-id{color:var(--brass);font-size:10px;letter-spacing:.15em}
.service-list strong{font-size:18px}
.service-list span:not(.service-id){font-size:11px;color:#5c675f}
.service-list b{font-size:20px;text-align:right}
.process{background:var(--ink);color:var(--paper);padding:120px max(28px,calc((100vw - var(--max))/2))}
.process-heading{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.process-heading h2{font-size:clamp(40px,5vw,72px);line-height:.96;letter-spacing:-.05em;margin:0;max-width:820px}
.process-flow{margin-top:80px;display:grid;grid-template-columns:1fr 50px 1fr 50px 1fr;align-items:center}
.process-step{border-top:1px solid #4b554d;padding-top:18px;min-height:220px}
.process-step span{font-size:10px;color:var(--signal);letter-spacing:.15em}
.process-step h3{font-size:25px;margin:48px 0 10px;letter-spacing:-.03em}
.process-step p{font-size:13px;color:#9ca69e;max-width:240px}
.process-connector{color:#6d786f;text-align:center;font-size:25px}
.local-section{max-width:var(--max);margin:auto;padding:140px 28px;display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:center}
.local-copy h2{font-size:clamp(52px,6.4vw,90px);line-height:.88;letter-spacing:-.06em;margin:0 0 25px}
.local-copy p:not(.kicker){max-width:510px;color:#515d55}
.local-rail{display:flex;flex-wrap:wrap;gap:10px;align-content:center}
.local-rail span{border:1px solid #c7c8bf;padding:12px 14px;font-size:13px;background:#fffefa}
.local-rail span:first-child{background:var(--ink);color:var(--paper);border-color:var(--ink);padding:16px 18px}
.faq{background:#dfeae5;padding:120px max(28px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:.7fr 1.3fr;gap:90px}
.faq-intro h2{font-size:clamp(40px,4.6vw,65px);line-height:.98;letter-spacing:-.05em;margin:0}
.faq-list{border-top:1px solid #b7c4be}
details{border-bottom:1px solid #b7c4be}
summary{list-style:none;cursor:pointer;padding:22px 0;font-size:16px;font-weight:700;display:flex;justify-content:space-between;gap:25px}
summary::-webkit-details-marker{display:none}
summary span{font-size:22px;font-weight:400;transition:transform .2s}
details[open] summary span{transform:rotate(45deg)}
details p{max-width:680px;color:#526059;font-size:14px;padding:0 40px 25px 0;margin:0}
details a{font-weight:750}
.contact{background:var(--brass);color:var(--ink);padding:110px max(28px,calc((100vw - var(--max))/2))}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:end}
.contact h2{font-size:clamp(54px,6.5vw,92px);line-height:.87;letter-spacing:-.06em;margin:0 0 28px;max-width:650px}
.contact-lede{font-size:16px;max-width:480px}
.contact-action{border-top:1px solid rgba(17,23,19,.35);padding-top:16px}
.contact-number{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:18px;text-decoration:none}
.contact-number span{font-size:9px;letter-spacing:.17em;font-weight:900;padding-bottom:10px}
.contact-number strong{font-size:clamp(32px,4vw,60px);letter-spacing:-.04em;line-height:1}
.contact-number b{font-size:28px;padding-bottom:5px}
.contact-meta{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid rgba(17,23,19,.25);margin-top:34px;padding-top:17px;gap:16px}
.contact-meta span{color:#65512d}
.contact-meta strong,.contact-meta a{font-size:12px}
.contact-meta a{text-decoration:underline;text-underline-offset:4px}
.site-footer{background:#0b0f0c;color:#aab2aa;padding:28px max(28px,calc((100vw - var(--max))/2))}
.footer-top{display:flex;justify-content:space-between;gap:40px;align-items:center;padding-bottom:38px;border-bottom:1px solid #283029}
.footer-brand{display:flex;align-items:center;gap:11px;color:var(--paper)}
.footer-brand .wordmark-mark{border-color:#4d564e}
.footer-top p{font-size:11px;max-width:600px;text-align:right}
.footer-bottom{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;padding-top:18px;font-size:9px;letter-spacing:.08em;color:#687268}
.footer-bottom a{color:var(--paper);text-decoration:none;text-align:right}
@media (max-width:1050px){
  .hero-grid{grid-template-columns:1fr;gap:0}
  .hero-copy{padding-bottom:20px}
  .hero-visual{min-height:560px}
  .image-frame{width:72%}
  .hero-object{width:55%;bottom:25px}
  .statement,.feature-split,.local-section{grid-template-columns:1fr;gap:45px}
  .statement-note{border-left:0;border-top:1px solid var(--line);padding:18px 0 0;max-width:420px}
  .diagnostic-band,.faq{grid-template-columns:1fr;gap:50px}
  .service-menu-head,.process-heading{grid-template-columns:1fr;gap:25px}
}
@media (max-width:760px){
  .header-inner{min-height:66px;padding:0 18px}
  .menu-toggle{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:12px;font-weight:750}
  .menu-toggle i{width:18px;height:12px;border-top:1px solid;border-bottom:1px solid;position:relative}
  .menu-toggle i:after{content:"";position:absolute;left:0;right:0;top:5px;border-top:1px solid}
  .site-nav{position:absolute;left:0;right:0;top:66px;background:var(--paper);border-bottom:1px solid var(--line);padding:10px 18px 18px;display:none;flex-direction:column;align-items:stretch;gap:0}
  .site-nav.is-open{display:flex}
  .site-nav a{padding:14px 0;border-bottom:1px solid var(--line)}
  .site-nav .nav-call{border:0;padding:14px 0}
  .hero{padding:30px 18px 0;min-height:auto}
  .hero h1{font-size:clamp(50px,15vw,76px);margin-top:22px}
  .hero-lede{font-size:15px}
  .hero-actions{align-items:flex-start;flex-direction:column;gap:18px}
  .hero-meta{grid-template-columns:1fr;gap:15px;margin-top:40px}
  .hero-visual{min-height:500px;margin:0 -4px}
  .image-frame{width:88%;aspect-ratio:1/1.05}
  .hero-object{width:70%;left:0;bottom:20px}
  .hero-foot{grid-template-columns:1fr auto;padding:14px 0}
  .hero-foot span:nth-child(2){display:none}
  .statement{padding:90px 18px}
  .statement h2{font-size:39px}
  .diagnostic-band{padding:85px 18px}
  .diagnostic-rail{grid-template-columns:1fr;gap:0}
  .rail-item,.rail-item+.rail-item{min-height:auto;padding:20px 0;border-left:0;border-top:1px solid rgba(17,23,19,.35)}
  .rail-no{margin:0 0 30px}
  .feature-split{padding:90px 18px;gap:50px}
  .blueprint-card{padding:15px}
  .feature-copy h2{font-size:43px}
  .service-menu,.process,.faq,.contact{padding:90px 18px}
  .service-list a{grid-template-columns:35px 1fr 24px;gap:10px}
  .service-list span:not(.service-id){grid-column:2}
  .service-list b{grid-column:3;grid-row:1 / span 2}
  .service-list strong{font-size:16px}
  .process-flow{grid-template-columns:1fr;gap:0;margin-top:55px}
  .process-step{min-height:auto;padding-bottom:30px}
  .process-step h3{margin-top:25px}
  .process-connector{display:none}
  .local-section{padding:90px 18px;gap:50px}
  .local-copy h2{font-size:62px}
  .faq{gap:45px}
  .contact-grid{grid-template-columns:1fr;gap:55px}
  .contact h2{font-size:62px}
  .contact-number{grid-template-columns:auto 1fr}
  .contact-number b{grid-column:2}
  .contact-meta{grid-template-columns:1fr;gap:18px}
  .footer-top,.footer-bottom{display:flex;flex-direction:column;align-items:flex-start}
  .footer-top p{text-align:left}
  .footer-bottom a{text-align:left}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
:focus-visible{outline:3px solid var(--signal);outline-offset:3px}
