:root{
  --skin:#F2EFE6;        /* pale paper, the live site's light ground */
  --paper:#FBF9F3;       /* card surface, skin lightened */
  --flesh:#2F7D4E;       /* resolution green, the reversed arch of the SDRCC logo */
  --seed:#20241F;        /* document ink, the dark text of the Centre's releases */
  --stem:#43584A;        /* deep green structure, the arch deepened */
  --ripeness:#C1272D;    /* dispute red, the rising arch of the SDRCC logo */
  --juice:#8FBF9F;       /* lifted green, the arch lightened for focus and lift */
  --font-display:Georgia,'Iowan Old Style','Times New Roman',serif;
  --font-body:-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --font-mono:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  --s1:8px; --s2:16px; --s3:24px; --s4:40px; --s5:64px;
  --radius:10px; --maxw:1120px;
  --motion:180ms ease-out;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--skin);color:var(--seed);font-family:var(--font-body);font-size:17px;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:var(--stem);text-underline-offset:3px}
a:hover{color:var(--ripeness)}
:focus-visible{outline:3px solid var(--flesh);outline-offset:2px}
.proto-strip{background:var(--seed);color:var(--skin);font-family:var(--font-mono);font-size:12.5px;letter-spacing:.03em;text-align:center;padding:8px 16px}
.site-head{position:sticky;top:0;z-index:10;background:var(--skin);border-bottom:3px solid var(--stem);display:flex;align-items:center;gap:var(--s2);padding:10px 20px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--seed);font-family:var(--font-display);font-size:16.5px;line-height:1.25;min-height:44px}
.main-nav{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap}
.main-nav a{text-decoration:none;color:var(--seed);font-weight:600;padding:10px 12px;border-radius:var(--radius);min-height:44px;display:inline-flex;align-items:center;transition:background var(--motion)}
.main-nav a:hover{background:var(--paper)}
.main-nav a[aria-current="page"]{background:var(--flesh);color:#fff}
.lang a{display:inline-flex;align-items:center;min-height:44px;padding:10px;font-family:var(--font-mono);font-size:13px}
.menu-btn{display:none;margin-left:auto;font:inherit;font-weight:700;background:var(--flesh);color:#fff;border:0;border-radius:var(--radius);padding:12px 18px;min-height:44px;cursor:pointer}
main{max-width:var(--maxw);margin:0 auto;padding:0 20px var(--s5)}
.kicker{font-family:var(--font-mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--ripeness);margin:0 0 var(--s1)}
h1,h2,h3,h4{font-family:var(--font-display);line-height:1.15;margin:0 0 var(--s2);text-wrap:balance}
h1{font-size:clamp(29px,6vw,50px)}
h2{font-size:clamp(24px,4vw,34px)}
h3{font-size:21px}
.lede{font-size:19px;max-width:62ch}
.btn{display:inline-flex;align-items:center;min-height:48px;padding:12px 22px;background:var(--flesh);color:#fff;text-decoration:none;font-weight:700;border-radius:var(--radius);transition:background var(--motion)}
.btn:hover{background:var(--stem);color:#fff}
.btn.ghost{background:transparent;color:var(--seed);border:2px solid var(--stem)}
.btn.ghost:hover{background:var(--paper);color:var(--seed)}
.hero{padding:var(--s4) 0 0;border-bottom:6px solid var(--flesh)}
.hero-copy h1{max-width:20ch}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:var(--s3)}
.arch-viz{margin-top:var(--s3)}
.arch-viz svg{width:100%;height:120px;display:block}
.arch-a{stroke:var(--ripeness)}
.arch-b{stroke:var(--flesh)}
.arch-viz circle{fill:var(--ripeness)}
.notice{margin-top:var(--s4);background:var(--paper);border:1px solid var(--stem);border-left:8px solid var(--ripeness);border-radius:var(--radius);padding:var(--s3);display:flex;gap:var(--s3);flex-wrap:wrap;justify-content:space-between;align-items:center}
.notice p{max-width:56ch}
.notice-links{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.notice-links a:not(.btn){display:inline-flex;align-items:center;min-height:44px;padding:6px 2px}
.sec-h{margin-top:var(--s5)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--s2);margin-top:var(--s3)}
.card{background:var(--paper);border:1px solid color-mix(in srgb,var(--stem) 35%,transparent);border-top:5px solid var(--flesh);border-radius:var(--radius);padding:var(--s3)}
.card p{margin:0 0 var(--s2)}
.card>a{display:inline-flex;align-items:center;min-height:44px}
.figures{margin-top:var(--s5);background:var(--stem);color:var(--skin);border-radius:var(--radius);padding:var(--s3);display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--s3)}
.fig{display:block;font-family:var(--font-display);font-size:32px;color:#fff;font-variant-numeric:tabular-nums}
.fig-label{font-size:14.5px}
.split{margin-top:var(--s5);display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);align-items:start}
.panel-quote{background:var(--paper);border:1px solid color-mix(in srgb,var(--stem) 35%,transparent);border-radius:var(--radius);padding:var(--s3)}
.big-line{font-family:var(--font-display);font-size:22px;line-height:1.4;margin:0}
.mini-events{list-style:none;padding:0;margin:0 0 var(--s3)}
.mini-events li{padding:10px 0;border-bottom:1px solid color-mix(in srgb,var(--stem) 30%,transparent)}
.mini-events strong{font-variant-numeric:tabular-nums;display:block}
.careers-teaser{margin-top:var(--s5);background:var(--flesh);color:#fff;border-radius:var(--radius);padding:var(--s4)}
.careers-teaser .kicker{color:var(--juice)}
.careers-teaser a.btn{background:var(--ripeness)}
.next-step{margin-top:var(--s5);border-top:3px solid var(--stem);padding-top:var(--s4)}
.next-step p{max-width:60ch}
.page-head{padding:var(--s4) 0 var(--s2)}
.crumbs{display:flex;gap:8px;align-items:center;font-size:14.5px;padding-top:var(--s2);flex-wrap:wrap}
.crumbs a{min-height:44px;display:inline-flex;align-items:center}
.prose{max-width:70ch;margin-top:var(--s3)}
.prose h2{margin-top:var(--s4)}
.addr{background:var(--paper);border:1px solid color-mix(in srgb,var(--stem) 35%,transparent);border-radius:var(--radius);padding:var(--s2) var(--s3);display:inline-block}
.res-list{list-style:none;padding:0;max-width:70ch}
.res-list li{padding:12px 0 12px 20px;border-bottom:1px solid color-mix(in srgb,var(--stem) 25%,transparent);position:relative}
.res-list li::before{content:"";position:absolute;left:0;top:22px;width:9px;height:9px;background:var(--ripeness);border-radius:2px}
.site-foot{background:var(--seed);color:var(--skin);margin-top:0}
.foot-grid{max-width:var(--maxw);margin:0 auto;padding:var(--s4) 20px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:var(--s4)}
.site-foot a{color:var(--juice);display:block;padding:11px 0;min-height:44px}
.foot-brand{font-family:var(--font-display);font-size:20px;color:#fff}
.foot-fr{font-style:normal;color:var(--juice);font-size:14.5px}
.foot-h{font-family:var(--font-mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--ripeness)}
.credit{max-width:var(--maxw);margin:0 auto;padding:0 20px var(--s3);font-size:13.5px;color:color-mix(in srgb,var(--skin) 70%,transparent)}
@media (max-width:760px){
  .menu-btn{display:inline-flex;align-items:center}
  .main-nav{display:none;width:100%;flex-direction:column;margin:8px 0 0}
  .main-nav.open{display:flex}
  .main-nav a{padding:12px}
  .split{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
  body{font-size:16.5px}
}
