/* Climate Ground site: warm paper, deep ink, teal and restrained greens. Amber only for exceptions and review states.
   Single light theme by design; dark bands are part of the editorial rhythm, not a colour scheme. */
:root{
  color-scheme: light;
  --paper:#F5F4EE;
  --paper-warm:#ECE5D4;
  --card:#FFFFFF;
  --ink:#142B36;
  --ink-2:#3E5561;
  --muted:#5A6E78;
  --rule:#D8D6CB;
  --rule-2:#E8E6DD;
  --teal:#157C80;
  --teal-dk:#0E5D60;
  --teal-lt:#62B5B7;
  --teal-pale:#DCEDEB;
  --green:#46934A;
  --green-lt:#80B842;
  --wheat:#E3D199;
  --amber:#B97825;
  --amber-pale:#F6E9D3;
  --onink:#F5F4EE;
  --onink-2:#A9BCC4;
  --inkcard:#1A3541;
  --inkrule:#2C4855;
  --sans:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --gl:max(16px, env(safe-area-inset-left, 0px));
  --gr:max(16px, env(safe-area-inset-right, 0px));
}
:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:inherit}
p{margin:0}
h1,h2,h3{margin:0;font-weight:600}
[hidden]{display:none!important}
.wrap{max-width:1260px;margin:0 auto;padding-left:var(--gl);padding-right:var(--gr)}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:var(--onink);padding:10px 14px;border-radius:3px;text-decoration:none;font-weight:600}
.skip:focus{top:12px}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--teal);outline-offset:3px}

/* family bar and header */
.family{background:var(--ink);color:var(--onink-2)}
.family-in{display:flex;align-items:center;gap:14px;min-height:36px;font:500 11.5px/1 var(--mono);letter-spacing:.07em}
.fam{color:var(--onink-2);text-decoration:none;padding:8px 0 6px;border-bottom:1.5px solid transparent}
.fam:hover{color:var(--onink)}
.fam[aria-current="true"]{color:var(--onink);border-bottom-color:var(--onink)}
.fam-sep{width:1px;height:12px;background:var(--ink-2)}
.family-note{margin-left:auto;white-space:nowrap}
.site{position:relative;background:var(--paper);border-bottom:1px solid var(--rule)}
.site-in{display:flex;align-items:center;gap:26px;min-height:76px}
.brand{flex:none}
.brand img{display:block;height:38px;width:auto}
.nav{display:flex;gap:22px;margin-left:auto;font-size:15px}
.nav a{text-decoration:none;padding:6px 0;border-bottom:1.5px solid transparent;white-space:nowrap}
.nav a:hover{border-bottom-color:var(--ink)}
.nav a[aria-current="page"]{border-bottom-color:var(--teal);font-weight:600}
.menu-btn{display:none;appearance:none;margin-left:auto;background:none;border:1px solid var(--ink);border-radius:3px;padding:9px 12px;font:600 14px var(--sans);color:var(--ink);cursor:pointer}
@media (max-width: 1180px){
  .js .nav{display:none;position:absolute;left:0;right:0;top:100%;z-index:50;flex-direction:column;gap:0;margin:0;padding:8px var(--gr) 16px var(--gl);background:var(--paper);border-bottom:1px solid var(--rule);box-shadow:0 14px 28px rgba(20,43,54,.08)}
  .js .nav.open{display:flex}
  .js .nav a{padding:13px 0;border-bottom:1px solid var(--rule-2);font-size:16px}
  .js .nav a[aria-current="page"]{border-bottom-color:var(--rule-2);color:var(--teal-dk)}
  .js .menu-btn{display:inline-block}
  .js .hdr-cta{margin-left:auto}
  .js .hdr-cta + .menu-btn{margin-left:0}
  html:not(.js) .site-in{flex-wrap:wrap;padding-block:12px}
  html:not(.js) .nav{flex-wrap:wrap;width:100%;order:3}
}
@media (max-width: 899px){.family-note{display:none}.brand img{height:30px}}
@media (max-width: 560px){.site .hdr-cta{display:none}.js .site .menu-btn{margin-left:auto}}

/* buttons and links */
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:var(--onink);text-decoration:none;font:600 15px/1 var(--sans);padding:15px 22px;border-radius:3px;border:0;white-space:nowrap;cursor:pointer}
.btn:hover{background:#0B1E27}
.btn-small{padding:12px 16px;font-size:14px}
.btn-light{background:var(--onink);color:var(--ink)}
.btn-light:hover{background:#FFFFFF}
.btn[disabled]{opacity:.6;cursor:progress}
.textlink{font-weight:600;text-decoration:none;border-bottom:1.5px solid var(--rule);padding-bottom:2px}
.textlink:hover{border-bottom-color:var(--ink)}
.ink .textlink,.sec.ink .textlink{border-bottom-color:var(--inkrule)}
.row{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}

/* evidence labels */
.bd{display:inline-flex;align-items:center;gap:6px;font:500 10.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;font-style:normal;padding:5px 7px 4px;border:1px solid var(--rule);border-radius:3px;background:var(--card);color:var(--ink);white-space:nowrap;vertical-align:middle}
.bd::before{content:"";width:7px;height:7px;flex:none}
.bd-m::before{background:var(--teal)}
.bd-d::before{background:var(--ink)}
.bd-e{border-style:dashed;border-color:var(--muted)}
.bd-e::before{border:1px dashed var(--muted)}
.bd-r::before{content:"\2713";width:auto;height:auto;font-size:11px;line-height:1}
.bd-p{border-color:var(--amber);color:var(--amber)}
.bd-p::before{background:var(--amber);border-radius:50%}
.bd-i{color:var(--muted)}
.bd-i::before{border:1px solid var(--muted);border-radius:50%}
.bd-x{color:var(--muted);border-style:dashed}
.bd-x::before{display:none}
.sec.ink .bd{background:var(--inkcard);border-color:var(--inkrule);color:var(--onink)}
.sec.ink .bd-d::before{background:var(--onink)}

/* type */
.kicker{font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
.sec.ink .kicker{color:var(--teal-lt)}
.h1{font-size:clamp(36px,4.6vw,64px);line-height:1.04;letter-spacing:-.025em;margin-top:14px;max-width:18ch;text-wrap:balance}
.h2{font-size:clamp(26px,2.6vw,38px);line-height:1.12;letter-spacing:-.015em;margin-top:12px;max-width:24ch;text-wrap:balance}
.h3{font-size:19px;line-height:1.3;margin-top:4px}
.lede{font-size:clamp(17px,1.35vw,20px);line-height:1.55;color:var(--ink-2);max-width:38em;margin-top:22px}
.prose p{color:var(--ink-2);max-width:40em;margin-top:14px}
.prose p:first-child{margin-top:0}
.note{font:500 12px var(--mono);letter-spacing:.04em;color:var(--muted)}
.src{font-size:13px;color:var(--muted);margin-top:10px}
.src a{color:inherit}
.sec.ink .src{color:var(--onink-2)}

/* sections */
.phero{padding-block:72px 56px;border-bottom:1px solid var(--rule)}
.sec{padding-block:80px}
.sec + .sec,.hero + .sec{border-top:1px solid var(--rule)}
.sec.alt{background:var(--paper-warm);border-top:0}
.sec.white{background:#FFFFFF}
.sec.ink{background:var(--ink);color:var(--onink);border-top:0}
.sec.ink .lede,.sec.ink .prose p{color:var(--onink-2)}
.sec.alt + .sec,.sec.ink + .sec,.sec.white + .sec{border-top:0}
.sec-head{margin-bottom:34px}
.split{display:grid;grid-template-columns:minmax(260px,4fr) minmax(0,7fr);gap:40px 64px;align-items:start}
@media (max-width: 899px){.split{grid-template-columns:1fr}.sec{padding-block:60px}.phero{padding-block:52px 40px}}

/* numbered statements */
.nlist{list-style:none;margin:0;padding:0;counter-reset:n;border-top:1px solid var(--rule)}
.nlist li{counter-increment:n;display:grid;grid-template-columns:48px 1fr;gap:4px 16px;padding:18px 0;border-bottom:1px solid var(--rule)}
.nlist li::before{content:counter(n,decimal-leading-zero);font:500 13px var(--mono);color:var(--teal);padding-top:3px;grid-row:span 2}
.nlist b{font-size:18px;line-height:1.35}
.nlist span{color:var(--ink-2)}

/* observe, measure, test, report */
.chain4{list-style:none;margin:34px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:2px solid var(--ink)}
.chain4 li{position:relative;padding:20px 22px 0 0}
.chain4 li::before{content:"";position:absolute;top:-7px;left:0;width:12px;height:12px;border-radius:50%;background:var(--paper-warm);border:2px solid var(--ink)}
.chain4 li.out::before{background:var(--teal);border-color:var(--teal)}
.c-n{display:block;font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin-top:4px}
.chain4 b{display:block;font-size:19px;margin-top:6px}
.chain4 span:last-child{display:block;color:var(--ink-2);margin-top:4px}
.labels-line{margin-top:30px;display:flex;flex-wrap:wrap;gap:14px 34px;color:var(--ink-2)}
.labels-line > div{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.labels-line span{margin-right:6px}
@media (max-width: 899px){.chain4{grid-template-columns:1fr;border-top:0;border-left:2px solid var(--ink);margin-left:6px}.chain4 li{padding:0 0 24px 24px}.chain4 li::before{top:3px;left:-7px}}

/* soil preview */
.preview{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px 56px;align-items:center}
.pv-text .h2{max-width:20ch}
.pv-text p{color:var(--ink-2);margin-top:16px;max-width:34em}
.pv-figs{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:8px 26px;margin:22px 0 0}
.pv-figs dt{font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.pv-figs dd{margin:4px 0 0;font-weight:600;font-size:17px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.pv-status{font:500 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink)!important;border-left:2px solid var(--ink);padding-left:12px;margin:22px 0 26px!important}
.pv-fig{margin:0;background:var(--card);border:1px solid var(--rule);border-radius:4px;padding:10px}
.pv-fig svg{display:block;width:100%;height:auto}
.pv-fig figcaption{font-size:13px;color:var(--muted);padding:8px 6px 2px}
.pv-note{font:500 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.fig-tall{display:none}
@media (max-width: 640px){.fig-wide{display:none}.fig-tall{display:block}}

@media (max-width: 960px){.preview{grid-template-columns:1fr}}
@media (max-width: 520px){.pv-figs{grid-template-columns:1fr}}

/* four applications */
.apps{list-style:none;margin:34px 0 34px;padding:0;border-top:1px solid var(--inkrule)}
.apps a{display:grid;grid-template-columns:56px minmax(150px,230px) 1fr auto;gap:18px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--inkrule);text-decoration:none;color:var(--onink)}
.apps a:hover .a-t{color:var(--teal-lt)}
.a-n{font:500 13px var(--mono);color:var(--teal-lt)}
.a-t{font-weight:600;font-size:19px}
.a-q{color:var(--onink-2)}
.a-s{font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--onink-2);white-space:nowrap}
@media (max-width: 899px){.apps a{grid-template-columns:40px 1fr;gap:4px 14px}.a-q,.a-s{grid-column:2}}

/* why now */
.why{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:34px}
.why > div{border-top:2px solid var(--ink);padding-top:18px}
.w-big{font-size:clamp(34px,3.4vw,48px);font-weight:600;letter-spacing:-.02em;line-height:1.05}
.why p:not(.w-big):not(.src){color:var(--ink-2);margin-top:12px}
@media (max-width: 899px){.why{grid-template-columns:1fr;gap:30px}}

/* who it is for */
.who{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}
.who li{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:6px 24px;padding:16px 0;border-bottom:1px solid var(--rule)}
.who b{font-size:17px}
.who span{color:var(--ink-2)}
@media (max-width: 640px){.who li{grid-template-columns:1fr}}

/* roles strip */
.roles{display:grid;grid-template-columns:3fr 2fr;gap:18px;margin-top:34px}
.rg{border-top:3px solid var(--ink);padding-top:12px}
.rg.ind{border-top-color:var(--teal)}
.rg-h{font:500 11.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rg ol{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:12px}
.rg.prod ol{grid-template-columns:repeat(3,minmax(0,1fr))}
.rg.ind ol{grid-template-columns:repeat(2,minmax(0,1fr))}
.rg li{background:var(--card);border:1px solid var(--rule);border-radius:4px;padding:16px;display:flex;flex-direction:column;gap:6px}
.rg li.me{border-color:var(--ink);box-shadow:inset 0 3px 0 var(--teal)}
.r-n{font:500 12px var(--mono);color:var(--teal)}
.rg b{font-size:16.5px;line-height:1.3}
.rg li span:last-child{color:var(--ink-2);font-size:15px}
.quote{margin:28px 0 0;padding:16px 20px;border-left:3px solid var(--teal);background:var(--card);max-width:48em}
.quote p{font-size:17px}
.quote .src{margin-top:8px}
@media (max-width: 1000px){.roles{grid-template-columns:1fr}.rg.prod ol,.rg.ind ol{grid-template-columns:1fr}}

/* evidence chain (Evidence page) */
.chain6{display:grid;grid-template-columns:5fr 1.25fr;gap:18px;margin-top:34px}
.chain6 .rg ol{grid-template-columns:repeat(5,minmax(0,1fr))}
.chain6 .rg.ind ol{grid-template-columns:1fr}
.chain6 li{position:relative}
.chain6 .bd{align-self:flex-start;margin-top:4px}
@media (max-width: 1100px){.chain6{grid-template-columns:1fr}.chain6 .rg ol{grid-template-columns:1fr 1fr}}
@media (max-width: 560px){.chain6 .rg ol{grid-template-columns:1fr}}

/* evidence types and status */
.types{display:grid;grid-template-columns:3fr 2fr;gap:22px;margin-top:30px}
.types > div{background:var(--card);border:1px solid var(--rule);border-radius:4px;padding:22px 24px}
.types h3{font:500 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.types dl{margin:14px 0 0;display:grid;gap:14px}
.types dt{display:flex}
.types dd{margin:6px 0 0;color:var(--ink-2)}
.types .never{margin-top:18px;border-top:1px dashed var(--rule);padding-top:14px;font-weight:600}
@media (max-width: 899px){.types{grid-template-columns:1fr}}

/* exists, pilot, proposed */
.status3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}
.status3 > div{border-top:3px solid var(--ink);padding-top:14px}
.status3 > div.pilot{border-top-color:var(--teal)}
.status3 > div.prop{border-top:3px dashed var(--muted)}
.status3 h3{font:500 12px var(--mono);letter-spacing:.1em;text-transform:uppercase}
.status3 p.sub{color:var(--muted);font-size:14px;margin-top:4px}
.status3 ul{margin:14px 0 0;padding-left:18px;color:var(--ink-2)}
.status3 li{margin-bottom:8px}
.flagline{margin-top:26px;font-weight:600}
@media (max-width: 899px){.status3{grid-template-columns:1fr}}

/* specimen evidence pack */
.packwrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:28px 40px;margin-top:30px;align-items:start}
.pack{background:var(--card);border:1px solid var(--ink);border-radius:4px;box-shadow:6px 6px 0 var(--rule-2)}
.pack-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:16px 20px;border-bottom:1px solid var(--ink)}
.pack-h b{font-size:17px}
.pack-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px;padding:14px 20px;border-bottom:1px solid var(--rule);font:400 12px var(--mono)}
.pack-meta dt{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:10.5px}
.pack-meta dd{margin:2px 0 0;color:var(--ink)}
.pack table{width:100%;border-collapse:collapse;font-size:14.5px}
.pack th{font:500 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:left;padding:10px 20px;border-bottom:1px solid var(--rule)}
.pack td{padding:11px 20px;border-bottom:1px solid var(--rule-2);vertical-align:top}
.pack td:first-child{font-weight:600;white-space:nowrap}
.pack td small{display:block;color:var(--muted);font-size:13px}
.pack-f{padding:14px 20px;font:500 12px var(--mono);letter-spacing:.06em;text-transform:uppercase}
.audit{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.audit li{padding:14px 0;border-bottom:1px solid var(--rule)}
.audit b{display:block}
.audit span{color:var(--ink-2);font-size:15px}
@media (max-width: 1000px){.packwrap{grid-template-columns:1fr}}
@media (max-width: 640px){.pack-meta{grid-template-columns:1fr 1fr}.pack table,.pack tbody,.pack tr,.pack td{display:block}.pack thead{display:none}.pack tr{border-bottom:1px solid var(--rule-2);padding:10px 0}.pack td{border:0;padding:3px 16px}.pack-h,.pack-meta,.pack-f{padding-left:16px;padding-right:16px}}

/* government page */
.govfig{margin:30px 0 0;background:var(--card);border:1px solid var(--rule);border-radius:4px;padding:10px}
.govfig svg{display:block;width:100%;height:auto}
.govfig figcaption{font-size:13px;color:var(--muted);padding:8px 6px 2px}
.bound{display:grid;grid-template-columns:1fr 56px 1fr;align-items:stretch;margin-top:30px;max-width:980px}
.bound > div{border:1px solid var(--rule);background:var(--card);border-radius:4px;padding:20px 22px}
.bound > div.shared{border-color:var(--teal)}
.bound > div.arr{display:flex;align-items:center;justify-content:center;border:0;background:none;padding:0;font-size:24px;color:var(--ink-2)}
.bound .arr::before{content:"\2192"}
.bound h3{font-size:18px}
.bound ul{margin:10px 0 0;padding-left:18px;color:var(--ink-2)}
@media (max-width: 760px){.bound{grid-template-columns:1fr}.bound > div.arr{height:44px}.bound .arr::before{content:"\2193"}}
.uses{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.uses li{border-top:2px solid var(--ink);padding-top:14px}
.uses b{display:block;font-size:18px}
.uses span{display:block;color:var(--ink-2);margin-top:6px}
.steps3{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.steps3 > li{border:1px solid var(--rule);border-radius:4px;padding:20px 22px;background:var(--paper)}
.steps3 .n{font:500 12px var(--mono);color:var(--teal)}
.steps3 b{display:block;font-size:19px;margin-top:4px}
.steps3 ul{margin:10px 0 0;padding-left:18px;color:var(--ink-2)}
.signoff{margin-top:24px;border-left:3px solid var(--ink);padding:10px 16px;font-weight:600;max-width:44em}
@media (max-width: 899px){.uses,.steps3{grid-template-columns:1fr}}

/* needs (How we work) */
.needs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:30px}
.needs > div{background:var(--card);border:1px solid var(--rule);border-radius:4px;padding:20px 22px}
.needs h3{font-size:18px}
.needs p{color:var(--ink-2);margin-top:8px}
.needs ul{margin:10px 0 0;padding-left:18px;color:var(--ink-2)}
@media (max-width: 760px){.needs{grid-template-columns:1fr}}
.gates{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px;max-width:1160px}
.gates li{position:relative;border:1px solid var(--rule);background:var(--card);border-radius:4px;padding:18px;display:flex;flex-direction:column;gap:8px}
.gates li:not(:last-child)::after{content:"";position:absolute;right:-24px;top:50%;width:12px;height:12px;border:1.5px solid var(--ink);background:var(--paper);transform:translateY(-50%) rotate(45deg)}
.gates .n{font:500 12px var(--mono);color:var(--teal)}
.gates b{font-size:18px}
.gates span{color:var(--ink-2);font-size:15px}
.gates em{margin-top:auto;padding-top:10px;border-top:1px dashed var(--rule);font:500 11px var(--mono);font-style:normal;letter-spacing:.08em;text-transform:uppercase}
@media (max-width: 1000px){.gates{grid-template-columns:repeat(2,minmax(0,1fr))}.gates li::after{display:none}}
@media (max-width: 560px){.gates{grid-template-columns:1fr;gap:14px}}

/* about */
.princ{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;border-top:1px solid var(--rule)}
.princ li{padding:16px 0;border-bottom:1px solid var(--rule)}
.princ b{display:block}
.princ span{color:var(--ink-2)}
@media (max-width: 760px){.princ{grid-template-columns:1fr}}
.commit{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}
.commit > div{border-radius:4px;padding:22px 24px;background:var(--card);border:1px solid var(--rule)}
.commit > div.firm{border-top:3px solid var(--ink)}
.commit > div.prop{border:1px dashed var(--muted);border-top:3px dashed var(--muted)}
.commit h3{font:500 12px var(--mono);letter-spacing:.1em;text-transform:uppercase}
.commit ul{margin:12px 0 0;padding-left:18px;color:var(--ink-2)}
.commit li{margin-bottom:8px}
@media (max-width: 760px){.commit{grid-template-columns:1fr}}
.team{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:34px 24px}
.team li{display:flex;flex-direction:column;gap:4px}
.team img,.adv img{display:block;border-radius:50%;object-fit:cover;filter:grayscale(1) contrast(1.04);background:var(--rule-2)}
.team img,.team .av{width:128px;height:128px;margin-bottom:14px}
.av{display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--rule-2);color:var(--ink-2);font:600 30px var(--sans);letter-spacing:.02em}
.team b{font-size:17.5px;line-height:1.3}
.team .role,.adv .role{font:500 11.5px/1.45 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--teal)}
.team span:last-child{color:var(--ink-2);font-size:15px;margin-top:4px}
.adv-h{margin-top:56px;font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
.adv{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:26px 22px}
.adv li{display:flex;flex-direction:column;gap:4px;border-top:1px solid var(--rule);padding-top:18px}
.adv img,.adv .av{width:84px;height:84px;margin-bottom:10px}
.adv .av{font-size:21px}
.adv b{font-size:16px;line-height:1.3}
@media (max-width: 1100px){.team{grid-template-columns:repeat(3,minmax(0,1fr))}.adv{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width: 700px){.team{grid-template-columns:repeat(2,minmax(0,1fr))}.adv{grid-template-columns:repeat(2,minmax(0,1fr))}.team img,.team .av{width:112px;height:112px}}
@media (max-width: 440px){.team{grid-template-columns:1fr}}

/* companies page */
.co{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:30px}
.co > div{border-radius:4px;padding:22px 24px;background:var(--card);border:1px solid var(--rule)}
.co > div.cs{border-top:3px solid #46934A}
.co > div.cg{border-top:3px solid var(--teal)}
.co > div.ind{border-top:3px solid var(--ink)}
.co h3{font-size:19px}
.co p{color:var(--ink-2);margin-top:8px}
@media (max-width: 899px){.co{grid-template-columns:1fr}}

/* forms */
.formwrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:40px 56px;align-items:start}
.formcol{min-width:0}
@media (max-width: 960px){.formwrap{grid-template-columns:1fr}}
.form{background:var(--card);border:1px solid var(--rule);border-radius:4px;padding:28px}
.form .field{margin-top:20px}
.form .field:first-of-type{margin-top:0}
.field label,.field legend{display:block;font-weight:600}
.field .hint{display:block;color:var(--muted);font-size:14px;margin-top:2px}
.field input,.field textarea,.field select{display:block;width:100%;margin-top:8px;font:400 16px var(--sans);color:var(--ink);background:#FFFFFF;border:1.5px solid #8C9AA1;border-radius:3px;padding:11px 12px}
.field textarea{min-height:120px;resize:vertical}
.field input:hover,.field textarea:hover,.field select:hover{border-color:var(--ink)}
.field .err{display:none;color:#A2412A;font-weight:600;font-size:14px;margin-top:6px}
.field.bad .err{display:block}
.field.bad input,.field.bad textarea{border-color:#A2412A;border-width:2px}
.optional{font-weight:400;color:var(--muted)}
.trap{position:absolute;width:1px;height:1px;margin:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.msg{border-radius:4px;padding:14px 16px;margin-bottom:20px;font-weight:600}
.msg ul{margin:8px 0 0;padding-left:20px;font-weight:400}
.msg a{color:inherit}
.msg.err-sum{background:#FBECE7;border:1px solid #A2412A;color:#6E2717}
.msg.info{background:var(--amber-pale);border:1px solid var(--amber);color:#5E3C0D}
.msg.ok{background:var(--teal-pale);border:1px solid var(--teal);color:var(--teal-dk)}
.msg.fail{background:#FBECE7;border:1px solid #A2412A;color:#6E2717}
.form .actions{margin-top:26px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px}
.form .priv{color:var(--muted);font-size:14px}
.aside h2{font-size:20px}
.aside .draft{margin:0 0 18px}
.aside p,.aside li{color:var(--ink-2)}
.aside ul{padding-left:18px}

/* closing band and footer */
.cta-band{background:var(--paper-warm);padding-block:80px}
.cta-band p:not(.kicker){color:var(--ink-2);max-width:36em;margin-top:14px}
.cta-band .row{margin-top:26px}
.foot{background:var(--ink);color:var(--onink-2);padding-block:44px 48px;font-size:14px}
.foot-top{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;padding-bottom:22px;border-bottom:1px solid var(--inkrule)}
.foot-top img{height:32px;width:auto;display:block}
.foot-top p{max-width:40em}
.foot-links{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:22px}
.foot-links a{color:var(--onink);text-decoration:none}
.foot-links a:hover{text-decoration:underline}
.foot-links a[aria-current="page"]{text-decoration:underline}
.foot-note{margin-top:18px;max-width:56em}
.draft{display:inline-block;margin-top:14px;font:500 11.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#5E3C0D;background:var(--amber-pale);border:1px solid var(--amber);border-radius:3px;padding:6px 9px}
.legal h2{font-size:21px;margin-top:34px}
.legal p,.legal li{color:var(--ink-2);max-width:44em}
.legal p{margin-top:10px}
.legal .tbc{background:var(--amber-pale);padding:0 4px;border-radius:2px;color:#5E3C0D}

/* header: stays at the top when scrolling, with the logo always visible; on pages with a chapter bar, the logo joins the chapter bar */
.site{position:sticky;top:0;z-index:45}
body:has(.chapbar) .site{position:relative}
.site-in{transition:min-height .25s ease}
.site .brand img{transition:height .25s ease}
.nav{transition:opacity .2s ease,visibility .2s ease}
.compact .site .site-in{min-height:58px}
.compact .site .brand img{height:28px}
@media (min-width: 1181px){.compact .site .nav{opacity:0;visibility:hidden;pointer-events:none}}
.chap-home{display:none;flex:none}
.chap-home img{display:block;height:26px;width:auto}
.compact .chap-home{display:block}
.compact .chap-title{display:none}
@media (prefers-reduced-motion: reduce){.site-in,.site .brand img,.nav{transition:none}}

.team .bio{color:var(--ink-2);font-size:15.5px;margin-top:4px}
.li{align-self:flex-start;margin-top:8px;font:500 11.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-bottom:1.5px solid var(--rule);padding-bottom:2px}
.li:hover{border-bottom-color:var(--ink)}

/* team: biography pop-up */
.team .links,.adv .links{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:8px}
.links:empty{display:none}
.links .li{margin-top:0}
.bio-open{appearance:none;background:none;border:0;border-bottom:1.5px solid var(--rule);padding:0 0 2px;cursor:pointer;color:var(--ink);font:500 11.5px var(--mono);letter-spacing:.08em;text-transform:uppercase}
.bio-open:hover{border-bottom-color:var(--ink)}
.bio-open:focus-visible,.biodlg button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.biodlg{width:min(640px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;border:0;padding:0;background:var(--card);color:var(--ink);box-shadow:0 24px 60px rgba(20,43,54,.28)}
.biodlg::backdrop{background:rgba(20,43,54,.55)}
.biodlg .in{padding:34px 36px 30px}
.biodlg .top{display:flex;gap:22px;align-items:center;margin-bottom:22px;padding-right:44px}
.biodlg img{width:96px;height:96px;border-radius:50%;object-fit:cover;filter:grayscale(1) contrast(1.04);flex:none}
.biodlg h2{font-size:24px;line-height:1.2;margin:0 0 6px}
.biodlg .biorole{font:500 11.5px/1.45 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.biodlg p{font-size:16.5px;line-height:1.62;color:var(--ink-2);margin:0 0 14px}
.biodlg .li{display:inline-block;margin-top:8px}
.biodlg .x{position:absolute;top:18px;right:18px;width:40px;height:40px;border:1px solid var(--rule);background:var(--card);cursor:pointer;font:400 22px/1 var(--sans);color:var(--ink)}
.biodlg .x:hover{border-color:var(--ink)}
@media (max-width:560px){.biodlg .in{padding:26px 20px 22px}.biodlg .top{flex-direction:column;align-items:flex-start;gap:14px}.biodlg img{width:80px;height:80px}}
@media (prefers-reduced-motion:no-preference){.biodlg[open]{animation:bioin .22s ease-out}@keyframes bioin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}

.adv .bio{color:var(--ink-2);font-size:14.5px;line-height:1.5;margin-top:4px}
