
/* ============ EXPERIMENTAL AZURE PALETTE (departs from locked v4.1: cool ground, cool neutrals; Slate/Madder/Salmon/Weld retained) ============ */
:root{
  --azure:#EDF8FF;
  --slate:#3D3833;
  --frost:#BFD6E8;
  --woad:#2F5A7D;
  --madder:#DC5530;
  --salmon:#E0907A;
  --weld:#F2EC38;
  --slate-70:rgba(61,56,51,.72);
  --slate-55:rgba(61,56,51,.55);
  --slate-30:rgba(61,56,51,.30);
  --hairline:#BFD6E8;
  --hairline-dark:rgba(237,248,255,.18);
  --max:1180px;
  --pad:clamp(20px,4vw,44px);
  --sect:clamp(92px,11vw,150px);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;color-scheme:only light;background:var(--azure)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  background:var(--azure);
  color:var(--slate);
  font-family:'Lora',Georgia,serif;
  font-size:17px;
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
}
::selection{background:var(--frost);color:var(--slate)}
img,svg{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:2px solid var(--madder);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-9999px;top:0;background:var(--slate);color:var(--azure);padding:10px 16px;z-index:99;font-family:'Inter',sans-serif;font-size:13px}
.skip:focus{left:12px;top:12px}

.wrap{max-width:var(--max);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.prose{max-width:66ch}
section{padding-top:var(--sect)}
section:last-of-type{padding-bottom:var(--sect)}
[id]{scroll-margin-top:96px}

/* ============ TYPE ============ */
.display,h1,h2,h3{font-family:'EB Garamond',Georgia,serif;font-weight:700;font-style:normal;letter-spacing:-.012em;line-height:1.06;color:var(--slate)}
h1{font-size:clamp(46px,7.2vw,86px)}
h2{font-size:clamp(30px,4.2vw,46px);line-height:1.1}
h3{font-size:clamp(21px,2.4vw,25px);line-height:1.25}
.eyebrow{
  font-family:'Inter',sans-serif;font-size:11px;font-weight:600;
  letter-spacing:.42em;text-transform:uppercase;color:var(--madder);
  margin-bottom:20px;
}
.lede{font-family:'Lora',serif;font-style:italic;font-size:clamp(17px,2vw,20px);line-height:1.6;color:var(--slate-70)}
.body-l{font-size:clamp(17px,1.9vw,19px)}
.muted{color:var(--slate-55)}
.caption{font-family:'Inter',sans-serif;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--slate-55);font-weight:500}
.rule{border:0;border-top:1px solid var(--hairline)}

/* ============ BUTTONS ============ */
.btn{
  display:inline-block;font-family:'Inter',sans-serif;font-size:12.5px;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;text-decoration:none;
  padding:15px 26px;border-radius:3px;transition:background .18s ease,color .18s ease,border-color .18s ease;
}
.btn-primary{background:var(--madder);color:var(--azure);border:1px solid var(--madder)}
.btn-primary:hover{background:#c64a28;border-color:#c64a28}
.btn-ghost{background:transparent;color:var(--slate);border:1px solid var(--slate-30)}
.btn-ghost:hover{border-color:var(--slate)}
.textlink{
  font-family:'Inter',sans-serif;font-size:12.5px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;text-decoration:none;color:var(--madder);
  border-bottom:1px solid transparent;padding-bottom:3px;transition:border-color .18s;
}
.textlink:hover{border-color:var(--madder)}

/* ============ HEADER ============ */
header{
  position:sticky;top:0;z-index:40;background:rgba(237,248,255,.92);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  border-bottom:1px solid var(--hairline);
  transition:padding .25s ease;
}
.header-inner{
  max-width:var(--max);margin:0 auto;padding:20px var(--pad);
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  transition:padding .25s ease;
}
header.scrolled .header-inner{padding-top:12px;padding-bottom:12px}
.mast{display:flex;align-items:baseline;gap:16px;text-decoration:none}
.wordmark{font-family:'EB Garamond',serif;font-weight:700;font-size:27px;letter-spacing:-.01em;color:var(--slate)}
.mast-tag{font-family:'Lora',serif;font-style:italic;font-size:14px;color:var(--slate-55)}
nav.primary{display:flex;align-items:center;gap:clamp(16px,2.4vw,32px)}
nav.primary a.navlink{
  font-family:'Inter',sans-serif;font-size:12px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;text-decoration:none;color:var(--slate-70);
  padding-bottom:4px;border-bottom:1px solid transparent;transition:color .15s,border-color .15s;
}
nav.primary a.navlink:hover{color:var(--slate);border-color:var(--madder)}
.nav-cta{padding:11px 20px}
@media (max-width:860px){
  .mast-tag{display:none}
}
.h1-kicker{
  display:block;font-family:'Lora',serif;font-style:italic;font-weight:500;
  font-size:max(15px,.3em);letter-spacing:.01em;color:var(--madder);line-height:1.3;margin-bottom:.5em;
}
@media (max-width:900px){
}

/* land plan draw-in */
.contour{stroke:var(--frost);stroke-width:1.6;fill:none;stroke-linecap:round}
.stream{stroke:rgba(47,90,125,.5);stroke-width:1.4;fill:none;stroke-linecap:round}
.boundary{stroke:var(--slate-55);stroke-width:1;fill:none;stroke-dasharray:5 6}
.street{stroke:var(--slate-55);stroke-width:1;fill:none}
.bldg{fill:none;stroke:var(--slate);stroke-width:1.1}
.bldg-commons{fill:var(--madder);stroke:none}
.tree{fill:var(--frost)}
.plan-label{font-family:'Inter',sans-serif;font-size:9.5px;font-weight:600;letter-spacing:.32em;fill:var(--woad)}
.js .draw{stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.7s cubic-bezier(.4,0,.2,1) forwards}
.js .fadein{opacity:0;animation:fade .8s ease forwards}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes fade{to{opacity:1}}
@media (prefers-reduced-motion:reduce){
  .js .draw{animation:none;stroke-dashoffset:0}
  .js .fadein{animation:none;opacity:1}
}

/* ============ REVEALS ============ */
.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .js .reveal{opacity:1;transform:none;transition:none}
}

/* ============ PROBLEM / QUOTE ============ */
.quote{
  margin-top:56px;border-left:3px solid var(--woad);padding:6px 0 6px clamp(22px,3vw,36px);
  max-width:62ch;
}
.quote p{font-family:'Lora',serif;font-style:italic;font-size:clamp(21px,2.8vw,27px);line-height:1.45;color:var(--slate)}
.quote .caption{margin-top:16px}

/* ============ ROLE ============ */
.role-statement{font-family:'Lora',serif;font-weight:500;font-size:clamp(22px,3vw,30px);line-height:1.42;max-width:30ch}
.role-roles{margin-top:22px;font-size:17px;color:var(--slate-70);max-width:52ch}

/* ============ TRIPTYCH ============ */
.trip{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.6vw,32px);margin-top:52px}
.trip-item{border-top:1px solid var(--hairline);padding-top:22px}
.trip-item .caption{color:var(--madder);letter-spacing:.22em}
.trip-item p{margin-top:12px;font-size:15.5px;color:var(--slate-70)}
.definition{
  margin-top:64px;padding-top:44px;border-top:1px solid var(--hairline);
  font-family:'Lora',serif;font-size:clamp(19px,2.4vw,24px);line-height:1.55;max-width:60ch;
}
.definition strong{font-weight:500;font-style:italic}
@media (max-width:820px){.trip{grid-template-columns:1fr}}

/* ============ PILLARS ============ */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.6vw,32px);margin-top:52px}
.pillar{
  background:var(--azure);border:1px solid var(--hairline);border-radius:3px;
  padding:clamp(24px,3vw,34px);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.pillar:hover{border-color:var(--slate-55);transform:translateY(-2px);box-shadow:0 6px 18px rgba(61,56,51,.06)}
.pillar h3{margin-bottom:12px}
.pillar p{font-size:15.5px;color:var(--slate-70)}
.pillar .caption{color:var(--madder);margin-bottom:14px;letter-spacing:.26em}
@media (max-width:820px){.pillars{grid-template-columns:1fr}}

/* ============ FLYWHEEL ============ */
.fly{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(18px,2.2vw,30px);margin-top:64px}
.fly::before{
  content:"";position:absolute;top:5px;left:2%;right:2%;height:1px;background:var(--hairline);
}
.step{position:relative;padding-top:30px}
.step::before{
  content:"";position:absolute;top:0;left:0;width:11px;height:11px;border-radius:50%;
  background:var(--woad);
}
.step .caption{color:var(--madder);letter-spacing:.24em;margin-bottom:10px}
.step p{font-size:14.5px;line-height:1.6;color:var(--slate-70)}
.fly-return{margin-top:34px}
.fly-sentence{
  margin-top:56px;font-family:'Lora',serif;font-style:italic;
  font-size:clamp(19px,2.6vw,25px);line-height:1.5;max-width:52ch;
}
@media (max-width:900px){
  .fly{grid-template-columns:1fr;gap:26px}
  .fly::before{top:0;bottom:0;left:5px;right:auto;width:1px;height:auto}
  .step{padding-top:0;padding-left:32px}
}

/* the single Weld element on the page */
.stat{margin-top:72px;display:flex;align-items:baseline;gap:26px;flex-wrap:wrap}
.stat-num{
  font-family:'EB Garamond',serif;font-weight:700;font-size:clamp(64px,9vw,110px);
  line-height:1;letter-spacing:-.02em;
  background:linear-gradient(to top,var(--weld) 26%,transparent 26%);
  padding:0 .08em;
}
.stat-cap{font-family:'Lora',serif;font-style:italic;font-size:clamp(16px,2vw,19px);color:var(--slate-70);max-width:22ch;line-height:1.4}

/* ============ LAYERS ============ */
.layers{margin-top:56px;border:1px solid var(--hairline);border-radius:3px;overflow:hidden}
.layer{
  display:grid;grid-template-columns:76px 250px 1fr;gap:20px;align-items:baseline;
  padding:clamp(18px,2.4vw,26px) clamp(18px,3vw,32px);border-bottom:1px solid var(--hairline);
  background:var(--azure);
}
.layer:last-child{border-bottom:0;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='26'%3E%3Cpath d='M0 13 C 24 5,46 21,70 13 S 116 5,140 13' stroke='%23BFD6E8' stroke-width='1.2' fill='none'/%3E%3C/svg%3E") repeat,
    var(--azure);
}
.layer-num{font-family:'Inter',sans-serif;font-size:12px;font-weight:600;letter-spacing:.2em;color:var(--slate-55)}
.layer-name{font-family:'EB Garamond',serif;font-weight:700;font-size:clamp(19px,2.2vw,23px)}
.layer-fn{font-size:14.5px;color:var(--slate-70)}
.layer-fn .tag{
  display:inline-block;margin-left:10px;font-family:'Inter',sans-serif;font-size:10px;
  font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--woad);
}
@media (max-width:820px){
  .layer{grid-template-columns:1fr;gap:6px}
}

/* ============ MISSION ============ */
.mission{text-align:center}
.mission .lede{
  font-size:clamp(22px,3.2vw,30px);line-height:1.45;color:var(--slate);
  max-width:34ch;margin:0 auto;font-weight:500;
}

/* ============ TEAM ============ */
.founder{
  display:grid;grid-template-columns:230px 1fr;gap:clamp(28px,4vw,56px);
  padding:clamp(36px,5vw,56px) 0;border-top:1px solid var(--hairline);align-items:start;
}
.founder:first-of-type{margin-top:56px}
.portrait{
  aspect-ratio:3/4;background:var(--frost);border:1px solid var(--hairline);border-radius:3px;
  display:flex;align-items:center;justify-content:center;
}
.portrait span{font-family:'EB Garamond',serif;font-weight:700;font-size:30px;color:var(--slate-55)}
.founder .caption{color:var(--madder);letter-spacing:.26em;margin-bottom:12px}
.founder h3{font-size:clamp(24px,3vw,30px)}
.founder .title{font-family:'Inter',sans-serif;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--slate-55);margin-top:8px}
.founder .bio{margin-top:20px;max-width:64ch;color:var(--slate-70);font-size:16px}
@media (max-width:760px){
  .founder{grid-template-columns:1fr}
  .portrait{max-width:230px}
}

/* ============ PARTNERS ============ */
.doors{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.6vw,32px);margin-top:52px}
.door{
  background:var(--azure);border:1px solid var(--hairline);border-radius:3px;
  padding:clamp(26px,3vw,36px);display:flex;flex-direction:column;
  transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.door:hover{border-color:var(--slate-55);transform:translateY(-2px);box-shadow:0 6px 18px rgba(61,56,51,.06)}
.door .caption{color:var(--madder);letter-spacing:.26em;margin-bottom:16px}
.door h3{margin-bottom:14px}
.door p{font-size:15px;color:var(--slate-70);flex:1}
.door .textlink{margin-top:26px;align-self:flex-start}
@media (max-width:820px){.doors{grid-template-columns:1fr}}

/* ============ CLOSING BAND ============ */
.closing{background:var(--slate);color:var(--azure);padding:var(--sect) 0}
.closing h2{color:var(--azure);font-size:clamp(34px,5vw,56px);max-width:18ch}
.closing .lede{color:rgba(237,248,255,.75);margin-top:22px;max-width:44ch}
.closing .btn-primary{margin-top:42px}

/* ============ FOOTER ============ */
footer{background:var(--slate);color:var(--azure);border-top:1px solid var(--hairline-dark);padding:56px 0 40px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.foot-word{font-family:'EB Garamond',serif;font-weight:700;font-size:26px;color:var(--azure)}
.foot-tag{font-family:'Lora',serif;font-style:italic;font-size:14px;color:rgba(237,248,255,.6);margin-top:6px}
.foot-line{font-size:14px;color:rgba(237,248,255,.7);margin-top:20px;max-width:34ch}
.foot-h{font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:rgba(237,248,255,.5);margin-bottom:16px}
footer a{color:rgba(237,248,255,.85);text-decoration:none;font-size:14px;line-height:2;transition:color .15s}
footer a:hover{color:var(--azure)}
footer a.mail{color:var(--frost)}
.foot-bottom{
  max-width:var(--max);margin:48px auto 0;padding:24px var(--pad) 0;
  border-top:1px solid var(--hairline-dark);
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  font-family:'Inter',sans-serif;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(237,248,255,.5);
}
@media (max-width:760px){.foot-grid{grid-template-columns:1fr}}

/* ============ MULTI-PAGE ADDITIONS ============ */
.navlinks{display:flex;align-items:center;gap:clamp(16px,2.4vw,32px)}
.navlink.active{color:var(--slate);border-color:var(--madder)}
.has-sub{position:relative}
.sub-toggle{background:none;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:7px;font-family:'Inter',sans-serif;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--slate-70);padding-bottom:4px;border-bottom:1px solid transparent}
.sub-toggle:hover{color:var(--slate);border-bottom-color:var(--madder)}
.sub-toggle.active{color:var(--slate);border-bottom-color:var(--madder)}
.chev{font-size:9px;color:var(--woad);transition:transform .15s}
.has-sub.open .chev{transform:rotate(180deg)}
.submenu{position:absolute;top:calc(100% + 16px);left:50%;transform:translateX(-50%);background:var(--azure);border:1px solid var(--hairline);border-radius:3px;min-width:220px;padding:8px 0;display:none;box-shadow:0 12px 28px rgba(61,56,51,.10)}
.has-sub:hover .submenu,.has-sub:focus-within .submenu,.has-sub.open .submenu{display:block}
.submenu a{display:block;padding:11px 22px;font-family:'Inter',sans-serif;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--slate-70)}
.submenu a:hover{color:var(--madder)}
.burger{display:none}
@media (max-width:860px){
  .navlinks{display:none;position:absolute;top:100%;left:0;right:0;background:var(--azure);border-bottom:1px solid var(--hairline);flex-direction:column;align-items:flex-start;padding:8px var(--pad) 20px;gap:0}
  header.menu-open .navlinks{display:flex}
  nav.primary .navlinks a.navlink{display:block;padding:12px 0;border-bottom:0}
  .sub-toggle{padding:12px 0}
  .submenu{position:static;transform:none;display:block;border:0;box-shadow:none;background:transparent;padding:0 0 0 16px;min-width:0}
  .chev{display:none}
  .burger{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;background:none;border:0;cursor:pointer;padding:8px 2px}
  .burger span{width:20px;height:2px;background:var(--slate);transition:transform .2s,opacity .2s}
  header.menu-open .burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  header.menu-open .burger span:nth-child(2){opacity:0}
  header.menu-open .burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
}
.contrast{margin-top:48px;border-top:1px solid var(--hairline);max-width:820px}
.contrast-row{display:grid;grid-template-columns:1fr 48px 1.2fr;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--hairline)}
.c-from{color:var(--slate-55);font-size:16px}
.c-arrow{color:var(--woad);font-family:'Inter',sans-serif;text-align:center}
.c-to{font-family:'EB Garamond',serif;font-weight:700;font-size:clamp(18px,2.1vw,22px)}
@media (max-width:600px){.contrast-row{grid-template-columns:1fr 34px 1.2fr}}
.grid6{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.6vw,34px);margin-top:48px}
.cell{border-top:1px solid var(--hairline);padding-top:18px}
.cell h4{font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--woad);margin-bottom:10px}
.cell p{font-size:15px;color:var(--slate-70)}
@media (max-width:820px){.grid6{grid-template-columns:1fr !important}}
.criteria{margin-top:44px;max-width:860px}
.criterion{display:grid;grid-template-columns:250px 1fr;gap:20px;align-items:baseline;padding:18px 0;border-top:1px solid var(--hairline)}
.criterion b{font-family:'EB Garamond',serif;font-weight:700;font-size:clamp(19px,2.2vw,22px)}
.criterion p{font-size:15.5px;color:var(--slate-70)}
@media (max-width:640px){.criterion{grid-template-columns:1fr;gap:6px}}
.scale{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.6vw,32px);margin-top:48px}
.scale-card{border:1px solid var(--hairline);border-radius:3px;padding:clamp(24px,3vw,32px)}
.scale-n{font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--woad);margin-bottom:10px}
.scale-card .homes{font-family:'Lora',serif;font-style:italic;color:var(--slate-55);font-size:15px;margin-bottom:12px}
.scale-card p{font-size:15px;color:var(--slate-70)}
@media (max-width:820px){.scale{grid-template-columns:1fr}}
.doc-offer{margin-top:52px;border:1px solid var(--hairline);border-radius:3px;padding:clamp(24px,3.4vw,38px);display:flex;justify-content:space-between;align-items:center;gap:26px;flex-wrap:wrap}
.portrait img{width:100%;height:100%;object-fit:cover;border-radius:3px}

/* ============ HOMEPAGE V2 ============ */
.lost-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(36px,5vw,72px);align-items:center}
.lost-fig img{width:100%}
.prog-cap{margin-top:14px;text-align:center;font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:.3em;color:var(--slate-55)}
.prog-arrow{color:var(--woad);margin:0 6px}
@media (max-width:900px){.lost-grid{grid-template-columns:1fr}}
.costs{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,44px);margin-top:56px}
.cost{border-top:1px solid var(--hairline);padding-top:22px}
.cost-num{font-family:'EB Garamond',serif;font-weight:700;font-size:clamp(42px,5.6vw,68px);line-height:1;letter-spacing:-.015em}
.cost-cap{font-family:'Lora',serif;font-style:italic;font-size:15.5px;color:var(--slate-70);margin-top:12px;max-width:26ch;line-height:1.5}
.cost-src{font-family:'Inter',sans-serif;font-size:10.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--slate-55);margin-top:12px}
@media (max-width:820px){.costs{grid-template-columns:1fr}}

/* What We Lost: full-width panorama, right-set text */
.lost-fig{margin:0}
.lost-fig img{width:100%}
.lost-text{max-width:640px;margin-left:auto;margin-top:clamp(44px,6vw,68px)}
@media (max-width:900px){.lost-text{margin-left:0}}

/* nav: align the Work With Us toggle with the anchor links */
nav.primary .sub-toggle{margin:0;padding:0 0 4px;line-height:1.35}
/* cohesive What We Lost block */
.lost-block{max-width:800px}
.lost-block .lost-fig{margin:30px 0 34px}
/* tighter door cards */
.door{padding:clamp(20px,2.4vw,28px)}
.door .textlink{margin-top:20px}
/* venn + pillar stack */
.venn-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(32px,5vw,64px);align-items:center;margin-top:56px}
.venn{width:100%;max-width:460px}
.venn-label{font-family:'Inter',sans-serif;font-size:12px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;fill:var(--woad)}
.venn-center{font-family:'EB Garamond',serif;font-weight:700;font-size:24px;fill:var(--madder)}
.pillar-stack{display:flex;flex-direction:column;gap:26px}
@media (max-width:900px){.venn-grid{grid-template-columns:1fr}.venn{margin:0 auto}}

/* benefits columns */
.bene{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,44px);margin-top:52px}
.bene-col{border-top:1px solid var(--hairline);padding-top:22px;display:flex;flex-direction:column}
.bene-col .aud{font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--woad);margin-bottom:14px}
.bene-col h3{margin-bottom:6px}
.ben-line{font-size:15px;color:var(--slate-70);margin-top:12px;line-height:1.55}
.bene-col .textlink{margin-top:22px;align-self:flex-start}
@media (max-width:860px){.bene{grid-template-columns:1fr}}

.bene{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}

/* in-column benefit stats */
.bstat{margin-top:24px;border-top:1px solid var(--hairline);padding-top:18px}
.bstat-num{font-family:'EB Garamond',serif;font-weight:700;font-size:clamp(40px,4.6vw,56px);line-height:1;letter-spacing:-.015em}
.weld-mark{display:inline-block;background:linear-gradient(to top,var(--weld) 26%,transparent 26%);padding:0 .06em}
.bstat-cap{font-family:'Lora',serif;font-style:italic;font-size:14.5px;color:var(--slate-70);margin-top:10px;max-width:24ch;line-height:1.45}
.bstat-src{font-family:'Inter',sans-serif;font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--slate-55);margin-top:8px}
.bene-col .textlink{margin-top:22px}

.bene{grid-template-columns:repeat(3,1fr)}
@media (max-width:860px){.bene{grid-template-columns:1fr}}

/* stat highlight marks: Weld = conservation, Frost = civic standard, Madder tint = market */
.mark-frost{display:inline-block;background:linear-gradient(to top,var(--frost) 26%,transparent 26%);padding:0 .06em}
.mark-madder{display:inline-block;background:linear-gradient(to top,rgba(220,85,48,.30) 26%,transparent 26%);padding:0 .06em}

/* general stat bar */
.statbar{margin-top:26px;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding:34px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px}
@media (max-width:860px){
}
@media (min-width:1441px){}

/* nav: baseline-align the Work With Us toggle with the links */
.navlinks{align-items:baseline}
.navlinks .navlink{line-height:1.2}
nav.primary .sub-toggle{line-height:1.2}
.sub-toggle .chev{transform:translateY(1px)}
.has-sub.open .chev{transform:translateY(1px) rotate(180deg)}

/* tighten the stat bar up under What We Build */
section.tight{padding-top:clamp(40px,4.8vw,64px)}
@media (max-width:860px){}

/* ============ HERO (single source of truth) ============ */
.h1-kicker{display:block;font-family:'Lora',serif;font-style:italic;font-weight:500;font-size:max(15px,.3em);letter-spacing:.01em;color:var(--madder);line-height:1.3;margin-bottom:.5em}

@media (max-width:860px){
}

/* What We Build: square plan left, text right */
.build-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(36px,5vw,76px);align-items:center}
.build-fig{margin:0}
.build-fig img{width:100%}
@media (max-width:900px){
  .build-grid{grid-template-columns:1fr}
  .build-fig{order:2;max-width:560px}
}

/* certificate-style stat divider */
.certbar{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding:26px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px 34px;align-items:center}
.cb{display:flex;align-items:baseline;gap:14px}
.cb-num{font-family:'EB Garamond',serif;font-weight:700;font-size:clamp(28px,3vw,38px);line-height:1;letter-spacing:-.015em;white-space:nowrap}
.cb-cap{font-family:'Lora',serif;font-style:italic;font-size:13.5px;color:var(--slate-70);line-height:1.4;max-width:21ch}
.cb-src{margin-top:12px;font-family:'Inter',sans-serif;font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--slate-55);text-align:right}
.mark-woad{display:inline-block;background:linear-gradient(to top,rgba(47,90,125,.22) 26%,transparent 26%);padding:0 .06em}
.bene{margin-top:44px}

/* five layers, rebuilt as a spined section stack */
.layers2{position:relative;margin-top:52px;max-width:920px}
.layers2::before{content:"";position:absolute;left:17px;top:14px;bottom:70px;width:1.5px;background:rgba(47,90,125,.35)}
.lrow{position:relative;display:grid;grid-template-columns:52px 1fr;gap:6px;padding:20px 0;border-bottom:1px solid var(--hairline);transition:background .18s ease}
.lrow:hover{background:linear-gradient(to right,rgba(191,214,232,.22),transparent 70%)}
.lrow:last-of-type{border-bottom:0}
.lnode{position:relative;z-index:1}
.lnode span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--azure);border:1.5px solid var(--woad);font-family:'Inter',sans-serif;font-size:11px;font-weight:600;color:var(--woad)}
.lname{font-family:'EB Garamond',serif;font-weight:700;font-size:clamp(20px,2.3vw,24px);line-height:1.25}
.lname .tag{display:inline-block;margin-left:12px;font-family:'Inter',sans-serif;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--woad);transform:translateY(-2px)}
.lfn{font-size:15px;color:var(--slate-70);margin-top:6px;max-width:56ch}
.lground{display:block;width:100%;height:64px;margin-top:6px}
@media (max-width:600px){.lname .tag{display:block;margin:6px 0 0}}

/* stat divider: stacked cells so all numerals share the top line */
.certbar{align-items:start}
.cb{display:block}
.cb-cap{display:block;margin-top:9px;max-width:22ch}

/* partners: frost band + header with pillar venn */

.partners-head{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,4vw,64px);align-items:center}
.venn-sm{width:100%;max-width:330px;justify-self:end}
@media (max-width:900px){
  .partners-head{grid-template-columns:1fr}
  .venn-sm{justify-self:center;margin-top:26px;max-width:300px}
}

/* stat divider: open bottom, tighter source line, labels sized for the small venn */
.certbar{border-bottom:0;padding:26px 0 8px}
.cb-src{margin-top:6px}
.venn-sm .venn-label{font-size:10.5px;letter-spacing:.18em}

/* ============ HERO V2: pitch first, panorama band second ============ */
.kicker{font-family:'Lora',serif;font-style:italic;font-weight:500;font-size:clamp(16px,1.8vw,20px);color:var(--madder)}

/* ============ HERO: text over the panorama (single source of truth) ============ */
.hero-full{position:relative;max-width:1440px;margin:0 auto;background:url('hero-panorama.jpg') left center / cover no-repeat;padding:clamp(72px,9vw,132px) 0}
.hero-full::before{content:"";position:absolute;inset:0;background:linear-gradient(to right,var(--azure) 0%,var(--azure) 34%,rgba(237,248,255,0) 62%);pointer-events:none}
.hero-full .wrap{position:relative;z-index:1}
.hero-copy{max-width:520px}
.hero-full .lede{margin-top:18px;max-width:46ch}
.hero-ctas{margin-top:34px;display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.hero-mobile{display:none}
@media (max-width:860px){
  .hero-full{background:none;padding:46px 0 0}
  .hero-full::before{display:none}
  .hero-copy{max-width:none}
  .hero-mobile{display:block;width:100%;margin-top:34px}
}

/* stat bar as a colored divider glued to the hero */
section.statband{padding:clamp(24px,3vw,38px) 0;background:rgba(191,214,232,.55);border-bottom:1px solid var(--frost)}
.statband .certbar{border:0;padding:0}
.statband .cb-src{margin-top:10px}

.hero-full .kicker{font-size:clamp(15px,1.6vw,18px)}
.hero-full h1{margin-top:8px}

/* stat divider, v2: slim slate stripe */
section.statband{background:var(--slate);border-bottom:0;padding:clamp(14px,1.9vw,22px) 0}
.statband .certbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:12px 30px;align-items:baseline}
.statband .cb{display:flex;align-items:baseline;gap:11px}
.statband .cb-num{color:var(--azure);font-size:clamp(22px,2.4vw,30px)}
.statband .cb-num.weld-mark,.statband .cb-num.mark-madder,.statband .cb-num.mark-frost,.statband .cb-num.mark-woad{background:none;padding:0 0 4px;border-bottom:3px solid}
.statband .weld-mark{border-color:var(--weld)}
.statband .mark-madder{border-color:var(--madder)}
.statband .mark-frost{border-color:var(--frost)}
.statband .mark-woad{border-color:#8FB3CF}
.statband .cb-cap{color:rgba(237,248,255,.72);font-size:12.5px;margin:0;max-width:none}
.statband .cb-src{color:rgba(237,248,255,.45);margin-top:8px}
/* tighten the gap into the partners band */


/* stat stripe: no ticks, stats centered, citation pinned out of flow */
section.statband{position:relative;padding:clamp(16px,2vw,24px) 0}
.statband .cb-num.weld-mark,.statband .cb-num.mark-madder,.statband .cb-num.mark-frost,.statband .cb-num.mark-woad{border-bottom:0;padding:0}
.statband .cb-src{position:absolute;right:14px;bottom:5px;margin:0;font-size:8.5px;letter-spacing:.12em;color:rgba(237,248,255,.38)}

.partners-center{text-align:center}
.partners-center .lede{margin-left:auto;margin-right:auto}

/* stat stripe: captions vertically centered against numerals, tighter */
section.statband{padding:clamp(13px,1.6vw,19px) 0}
.statband .certbar{align-items:center}
.statband .cb{align-items:center}
.statband .cb-cap{line-height:1.35}

/* Who We Are cards */
.founders{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(26px,3.4vw,52px);margin-top:52px}
.fport{width:100%;aspect-ratio:3/4;object-fit:cover}
.frole{font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--woad);margin-top:16px}
.fname{font-family:'EB Garamond',serif;font-weight:700;font-size:clamp(19px,2vw,22px);margin-top:5px}
.fdesc{font-size:14.5px;color:var(--slate-70);margin-top:8px;line-height:1.6}
@media (max-width:860px){.founders{grid-template-columns:1fr}.fport{max-width:420px}}
/* faint abstract topographic ground for Our Model */
.topo{position:relative}
.topo::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='980' height='760' viewBox='0 0 980 760'%3E%3Cg fill='none' stroke='%23BFD6E8' stroke-opacity='.38' stroke-width='1'%3E%3Cpath d='M0 110 C160 78 300 150 470 118 S760 70 980 128'/%3E%3Cpath d='M0 250 C190 215 340 290 520 252 S800 205 980 268'/%3E%3Cpath d='M0 420 C170 388 330 452 500 418 S790 372 980 430'/%3E%3Cpath d='M0 590 C200 556 350 622 540 588 S810 545 980 600'/%3E%3Cpath d='M0 720 C180 692 360 748 560 716 S820 680 980 730'/%3E%3Cpath d='M600 300 C640 262 720 258 762 292 S790 372 748 404 S640 420 604 384 S562 336 600 300 Z'/%3E%3Cpath d='M632 318 C662 292 716 290 746 314 S764 366 734 390 S662 398 636 372 S606 342 632 318 Z'/%3E%3Cpath d='M662 336 C680 322 710 322 726 336 S734 364 716 378 S678 380 664 366 S646 350 662 336 Z'/%3E%3C/g%3E%3C/svg%3E") repeat}
.topo .wrap{position:relative;z-index:1}

/* founders: smaller portraits, better page balance */
.founders{max-width:920px}
.founders{gap:clamp(22px,3vw,44px)}

/* typology elevation band between What We Build and Who We Are */
.typo-band{max-width:1440px;margin:clamp(64px,8vw,110px) auto 0}
.typo-band img{width:100%;display:block}

/* What We Build: centered head, full elevation band, definition column */
.build-band{max-width:1440px;margin:clamp(40px,5vw,64px) auto 0}
.build-band img{width:100%;display:block}
.build-def{max-width:680px;margin:clamp(40px,5vw,60px) auto 0;border-top:0;padding-top:0}
.plan-fig{max-width:820px;margin:clamp(44px,6vw,72px) auto 0}
.plan-fig img{width:100%;display:block}

/* What We Build: title dips into the band's sky */
.build-head{position:relative;z-index:2}
.build-band{margin-top:clamp(-96px,-6.5vw,-52px)}
.build-def{margin-top:clamp(32px,4vw,48px)}

/* model: text left, layer stack right */
.model-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,5.5vw,84px);align-items:start}
.model-copy .fly-sentence{margin-top:36px;text-align:left}
.model-copy p.reveal{margin-top:24px}
.model-grid .layers2{margin-top:0;max-width:none}
section.topo{background-position:left bottom;background-size:520px;background-repeat:no-repeat}
@media (max-width:960px){.model-grid{grid-template-columns:1fr}.model-grid .layers2{margin-top:44px}}

/* band title: a touch higher */
.build-band{margin-top:clamp(-72px,-4.8vw,-40px)}
/* founders: centered */
.founders{margin-left:auto;margin-right:auto}
section[aria-label="Who we are"] > .wrap > p.reveal{text-align:center}

/* band title: higher — h2 dips only slightly into the sky */
.build-band{margin-top:clamp(-44px,-3vw,-24px)}

/* measured fix: no sky exists under the title span — title sits fully above the band */
.build-band{margin-top:clamp(28px,3vw,44px)}


/* ============ SECTION RHYTHM STANDARD ============
   Every section carries HALF the inter-section rhythm on each side.
   Azure-to-azure gaps are unchanged (half + half = full);
   every colored band edge gets a half-rhythm cushion on both faces.
   Documented exceptions: .statband (slim stripe glued to the hero),
   .hero-full (carries its own vertical padding). */
section{padding-top:calc(var(--sect)/2);padding-bottom:calc(var(--sect)/2)}
section.statband{padding:clamp(16px,2vw,24px) 0}
.band-frost{background:rgba(191,214,232,.26)}

/* resilience: placeholder image left, text right */
.rr-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(36px,5vw,72px);align-items:center}
.ph-fig{margin:0}
.ph{aspect-ratio:4/5;border:1px dashed var(--frost);background:rgba(191,214,232,.14);display:grid;place-items:center;font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--slate-55);text-align:center;line-height:2}
.ph-fig img{width:100%;display:block}
.rr-copy .cell{margin-top:20px}
.rr-copy .cell:first-of-type{margin-top:30px}
.rr-copy .textlink{display:inline-block;margin-top:26px}
@media (max-width:900px){.rr-grid{grid-template-columns:1fr}.ph-fig{order:2;max-width:480px}}

/* ============ SITE FRAME STANDARD ============
   The entire site renders inside a fixed 1440px frame, centered.
   Beyond it, the page color shows. Every full-bleed element —
   the slate stat stripe, the frost bands, the closing band, the
   footer, the header bar — is clipped at the frame edge. */
html{background:var(--azure)}
body{max-width:1440px;margin-left:auto;margin-right:auto}
@media (min-width:1441px){body{border-left:1px solid var(--frost);border-right:1px solid var(--frost)}}

/* partner columns: hover highlight */
.bene-col{padding:20px 20px 24px;border-radius:4px;transition:background .18s ease}
.bene-col:hover{background:rgba(237,248,255,.85)}

.txt-madder{color:var(--madder)}
.cred{font-size:.68em;letter-spacing:.06em;white-space:nowrap}
.founder h3{font-size:clamp(19px,2.1vw,22px)}

/* hero display: two-tier headline */
.hero-full h1{line-height:1.04}
.h1-top{display:block;font-size:.82em;letter-spacing:-.008em}
.h1-main{display:block}

/* hero lockup: measured so both lines hold one line each in a 600px column */
.hero-copy{max-width:600px}
.hero-full h1{font-size:clamp(38px,5.2vw,72px);line-height:1.06}
.h1-top{font-size:.72em}

/* hero lockup v2: all three words equal weight — the value prop carries full size */
.hero-full h1{font-size:clamp(34px,4vw,54px);line-height:1.1}
.h1-top{font-size:1em}
.hero-copy{max-width:620px}

/* hero lockup v3: Strong & Resilient carries the emphasis */
.h1-main{font-size:.86em}

/* hero lockup v4: Strong & Resilient above, Communities at full display size (measured for the 620px column) */
.hero-full h1{font-size:clamp(38px,5.4vw,76px);line-height:1.06}
.h1-top{font-size:.72em}
.h1-main{font-size:1em}

/* hero: three stacked lines, all at full display size */
.hero-full h1{font-size:clamp(38px,5.4vw,76px);line-height:1.05}
.h1-line{display:block;font-size:1em}

/* closer: mission block */
.close-eyebrow{font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:.42em;text-transform:uppercase;color:rgba(237,248,255,.55)}
.close-mission{font-family:'Lora',serif;font-style:italic;font-size:clamp(18px,2vw,23px);color:rgba(237,248,255,.92);margin:14px 0 26px}

/* layer spine reads bottom-up: arrowhead at the top */
.layers2::before{top:12px;bottom:22px}
.layers2::after{content:"";position:absolute;left:11.5px;top:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:10px solid rgba(47,90,125,.65)}

/* the climb: watercolor terraces with typographic decade labels */
.climb-fig{position:relative;margin:0}
.climb-fig img{width:100%;display:block}
.cl{position:absolute;transform:translate(-100%,-50%);white-space:nowrap;padding-right:15px;font-family:'Inter',sans-serif;font-size:clamp(9px,1vw,12px);font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--slate-70)}
.cl::after{content:"";position:absolute;right:0;top:50%;width:10px;height:1.5px;background:rgba(47,90,125,.55)}
.cl b{margin-left:7px;letter-spacing:.02em;color:var(--slate);font-size:1.2em}
.climb-stat{position:absolute;left:6%;top:29%;max-width:36%}
.cs-num{font-family:'EB Garamond',serif;font-weight:700;font-size:clamp(26px,3.4vw,46px);line-height:1;letter-spacing:-.015em}
.cs-cap{font-family:'Lora',serif;font-style:italic;font-size:clamp(11px,1.25vw,14px);color:var(--slate-70);margin-top:8px;line-height:1.5}
.cs-src{font-family:'Inter',sans-serif;font-size:9.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--slate-55);margin-top:8px}

/* resilience v3: cutaway with overlaid system cards, climate stats at right */
.rr2-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(36px,4.5vw,64px);align-items:center;margin-top:52px}
.cutaway-fig{position:relative;margin:0}
.cutaway-fig img{width:100%;display:block}
.co{position:absolute;max-width:250px;background:rgba(237,248,255,.93);border:1px solid var(--frost);border-radius:3px;padding:13px 15px}
.co h5{font-family:'Inter',sans-serif;font-size:10.5px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--woad);margin:0}
.co p{font-size:12.5px;line-height:1.5;color:var(--slate-70);margin:7px 0 0}
.rr-stats .rrs{border-top:1px solid var(--hairline);padding-top:18px;margin-top:24px}
.rr-stats .rrs:first-child{margin-top:0}
@media (max-width:960px){.rr2-grid{grid-template-columns:1fr}.co{position:static;max-width:none;margin-top:14px}.cutaway-fig{display:flex;flex-direction:column}}

/* great places to live */
.gp-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(36px,4.5vw,64px);align-items:center}
.gp-copy .cell{max-width:52ch}
@media (max-width:960px){.gp-grid{grid-template-columns:1fr}.gp-grid .ph-fig{order:2;max-width:480px}}

/* the split template: alternating two-column sections with an optional fact row */
.layers2::after{display:none}
.split{display:grid;gap:clamp(36px,4.5vw,64px);align-items:center}
.split-imgleft{grid-template-columns:.95fr 1.05fr}
.split-imgright{grid-template-columns:1.05fr .95fr}
.split-copy .cell{max-width:52ch}
.fact-row{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,44px);border-top:1px solid var(--hairline);padding-top:26px;margin-top:clamp(44px,5.5vw,68px)}
.fr .bstat-cap{max-width:26ch}
@media (max-width:960px){
  .split{grid-template-columns:1fr!important}
  .split .ph-fig{order:2;max-width:480px}
  .fact-row{grid-template-columns:1fr}
}

/* closer: slimmer and centered, ready for a background image */
.closing{padding:clamp(60px,7vw,96px) 0;text-align:center}
.closing .lede{margin-left:auto;margin-right:auto}

/* fact rows: numerals one notch down */
.fact-row .bstat-num{font-size:clamp(22px,2.4vw,32px)}

/* closer: h2 box centered, paragraph widened to hold four lines */
.closing h2{margin-left:auto;margin-right:auto}
.closing .lede{max-width:620px}

/* merged approach page */
.contrast-split{margin-top:0}
section[id]{scroll-margin-top:96px}

/* closer paragraph: three lines */
.closing .lede{max-width:780px}

/* contact page */
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(40px,5vw,80px);align-items:start}
.form-card{background:rgba(237,248,255,.6);border:1px solid var(--frost);border-radius:4px;padding:clamp(24px,3vw,40px)}
.cfield{margin-bottom:20px}
.cfield label{display:block;font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--woad);margin-bottom:8px}
.cfield input,.cfield select,.cfield textarea{width:100%;box-sizing:border-box;font-family:'Lora',serif;font-size:16px;color:var(--slate);background:#fff;border:1px solid var(--frost);border-radius:3px;padding:12px 14px}
.cfield input:focus,.cfield select:focus,.cfield textarea:focus{outline:none;border-color:var(--madder)}
.cfield textarea{resize:vertical}
.form-card .btn{margin-top:6px}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}

/* founders: portraits 20% smaller, centered in their cards */
.fport{width:80%;display:block;margin-left:auto;margin-right:auto}
.fcard{text-align:center}
.fcard .fdesc{max-width:34ch;margin-left:auto;margin-right:auto}

/* approach h1: the model verbs called out in kicker DNA */
.hl-verbs{font-family:'Lora',serif;font-style:italic;font-weight:500;color:var(--madder)}

/* the shift: comparison chart */
.compare{font-size:13.5px}
.cmp-head,.cmp-row{display:grid;grid-template-columns:86px 1fr 1.08fr;gap:0 14px;align-items:center}
.cmp-h{font-family:'Inter',sans-serif;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;padding:0 12px 10px}
.cmp-h-trad{color:var(--slate-55)}
.cmp-h-eud{color:var(--madder)}
.cmp-row{border-top:1px solid var(--hairline)}
.cmp-attr{font-family:'Inter',sans-serif;font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--woad);padding:11px 0}
.cmp-trad{color:var(--slate-55);padding:11px 12px}
.cmp-eud{color:var(--slate);background:rgba(191,214,232,.22);padding:11px 12px;font-weight:500}
.cmp-row:first-of-type .cmp-eud{border-radius:3px 3px 0 0}
.cmp-row:last-of-type .cmp-eud{border-radius:0 0 3px 3px}
@media (max-width:960px){.cmp-head,.cmp-row{grid-template-columns:74px 1fr 1fr}.compare{font-size:12.5px}}

/* economics lanes + OE/DA card */
.eco-lanes{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,3.5vw,52px);margin-top:clamp(44px,5.5vw,64px)}
.lane{border-top:1px solid var(--hairline);padding-top:20px}
.lane-h{font-family:'Inter',sans-serif;font-size:10.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--woad)}
.lane-claim{font-family:'Lora',serif;font-style:italic;font-size:13.5px;color:var(--slate-70);line-height:1.55;margin-top:10px}
.lane .bstat{margin-top:20px}
.lane .bstat-num{font-size:clamp(24px,2.6vw,34px)}
.oeda{display:grid;grid-template-columns:minmax(230px,300px) 1fr;gap:clamp(28px,4vw,60px);align-items:center;margin-top:clamp(48px,6vw,76px);background:rgba(191,214,232,.16);border:1px solid var(--frost);border-radius:4px;padding:clamp(26px,3.5vw,46px)}
.oeda-n{font-family:'EB Garamond',serif;font-weight:700;font-size:clamp(42px,5vw,64px);line-height:1;letter-spacing:-.01em;margin-top:10px}
.oeda-name{font-family:'Lora',serif;font-style:italic;font-size:clamp(14px,1.5vw,17px);color:var(--slate-70);margin-top:8px}
.oeda-formula{font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--woad);margin-top:14px}
@media (max-width:960px){.eco-lanes{grid-template-columns:1fr}.oeda{grid-template-columns:1fr}}
