/* ADI design concept B — "Program Guide".
   Carries ADI's printed Program Guide onto the web: the three areas of focus keep the
   Guide's own colour-coding (blue / green / orange, which are also the ANCA mountain colours),
   ANCA teal from the header lockup carries every link and control, and Barlow (SIL Open Font
   License) stands in for Geogrotesque, the Guide's commercial typeface. */

@font-face{font-family:"Barlow";src:url(../files/barlow-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow";src:url(../files/barlow-400i.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Barlow";src:url(../files/barlow-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow";src:url(../files/barlow-800.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow Semi Condensed";src:url(../files/barlow-sc-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}

:root{
  --ink:#14212b;
  --muted:#46545e;
  --paper:#f7f4ee;
  --card:#fff;
  --line:#ddd6c8;
  /* ANCA wordmark teal, sampled from the ADI + ANCA lockup: every link, button and control */
  --teal:#004d6d;
  --teal-deep:#00364d;
  --teal-soft:#e2eef3;
  /* the Program Guide's three areas of focus (= the ANCA mountain colours); ink text only */
  --sb:#3fa2db; --sb-soft:#e4f2fb;
  --ns:#4eb748; --ns-soft:#e7f5e4;
  --cb:#f99e2e; --cb-soft:#fef0dc;
  /* the areas-of-focus panels use these colours 20% lighter towards white,
     so the ink text on them stays clearly readable */
  --sb-lt:#65b5e8; --ns-lt:#71c96d; --cb-lt:#fab158;
  --pk:#f05c77; --pk-soft:#fde7eb;
  --r:22px;
  --max:1180px;
  --label:"Barlow Semi Condensed","Barlow","Segoe UI",Roboto,system-ui,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;overflow-wrap:break-word;color:var(--ink);background:var(--paper);
  font-family:"Barlow","Segoe UI",Roboto,system-ui,-apple-system,sans-serif;
  font-size:1.125rem;line-height:1.6;
}
img{max-width:100%;height:auto;display:block}
h1,h2,h3{line-height:1.1;margin:0 0 .45em;font-weight:800;letter-spacing:-.01em}
h1{font-size:clamp(2.3rem,6vw,4.4rem)}
h2{font-size:clamp(1.6rem,3.4vw,2.5rem)}
h3{font-size:1.28rem;line-height:1.2}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em}
a{color:var(--teal);text-decoration-thickness:1.5px;text-underline-offset:3px}
a:hover{color:var(--teal-deep);text-decoration-thickness:2.5px}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:12px 18px;z-index:30}
.skip:focus{left:8px;top:8px}
.muted{color:var(--muted)}
.label{
  font-family:var(--label);font-weight:700;text-transform:uppercase;letter-spacing:.09em;
  font-size:.86rem;margin:0 0 .7em;color:var(--teal-deep);
}
.lead{font-size:clamp(1.12rem,1.6vw,1.3rem);max-width:56ch}
.intro{font-size:1.15rem;max-width:64ch}
.band{padding:clamp(44px,7vw,84px) 0}
.band.white{background:var(--card)}
.band.tight{padding-top:clamp(28px,4vw,44px)}
.band-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px 20px;flex-wrap:wrap;margin-bottom:22px}
.band-head h2{margin:0}
.more{font-weight:600}

/* concept ribbon */
.concept-bar{background:var(--ink);color:#fff;font-size:.88rem}
.concept-bar .wrap{display:flex;gap:10px 16px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
.concept-bar p{margin:0}
.concept-bar a{color:#a8dcf2}
.tagB{
  display:inline-block;background:var(--cb);color:var(--ink);font-family:var(--label);font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;font-size:.76rem;padding:2px 8px;border-radius:6px;margin-right:6px;
}
.notes-toggle{
  background:transparent;color:#fff;border:1.5px solid #7d8a95;border-radius:999px;
  padding:5px 14px;font:inherit;font-size:.86rem;cursor:pointer;
}
.notes-toggle[aria-pressed="true"]{background:#fff;color:var(--ink);border-color:#fff}

/* header */
.site-header{background:var(--card);border-bottom:1px solid var(--line)}
.utility{background:var(--teal-deep);color:#fff;font-size:.86rem}
.utility .wrap{display:flex;gap:6px 22px;flex-wrap:wrap;justify-content:flex-end;padding-top:6px;padding-bottom:6px}
.utility a{color:#fff}
.utility span{color:#d5e7ee;margin-right:auto}
.header-in{display:flex;gap:14px 22px;align-items:center;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.brand{display:flex;min-width:0;margin-right:auto}
.brand img{height:clamp(44px,6.5vw,60px);width:auto;max-width:100%}
.main-nav ul{display:flex;flex-wrap:wrap;gap:2px;list-style:none;margin:0;padding:0}
.main-nav a{
  display:block;padding:8px 12px;color:var(--ink);text-decoration:none;font-weight:600;font-size:1rem;
  border-bottom:3px solid transparent;
}
.main-nav a:hover{border-bottom-color:var(--teal);color:var(--teal-deep)}
.main-nav a[aria-current="page"]{border-bottom-color:var(--teal);color:var(--teal-deep)}
.btn{
  display:inline-block;background:var(--teal);color:#fff;text-decoration:none;font-weight:600;
  padding:12px 22px;border-radius:999px;border:2px solid var(--teal);line-height:1.2;
}
.btn:hover{background:var(--teal-deep);border-color:var(--teal-deep);color:#fff;text-decoration:none}
.btn.line{background:transparent;color:var(--teal-deep)}
.btn.line:hover{background:var(--teal);color:#fff}
.btn.take{padding:10px 20px}
.btn.take[aria-current="page"]{background:var(--teal-deep);border-color:var(--teal-deep)}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin:1.2em 0 0}

/* home hero */
.hero-b{position:relative;background:var(--paper);padding:clamp(34px,6vw,70px) 0 0;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(24px,4vw,56px);align-items:center}
.hero-grid>*{min-width:0}
.all{
  background:linear-gradient(90deg,var(--sb) 0 25%,var(--ns) 25% 50%,var(--cb) 50% 75%,var(--pk) 75% 100%) left 100%/100% .16em no-repeat;
  padding-bottom:.06em;
}
.peak{margin:0;position:relative}
.peak img{
  width:100%;aspect-ratio:4/3;object-fit:cover;
  clip-path:polygon(0 16%,17% 5%,31% 13%,52% 0,70% 11%,84% 4%,100% 12%,100% 100%,0 100%);
}
.peak figcaption{font-size:.84rem;color:var(--muted);padding-top:8px}
.ridge{display:block;width:100%;height:clamp(46px,7vw,90px);margin-top:clamp(20px,4vw,44px)}

/* what is ADI */
.whatis{display:grid;grid-template-columns:1fr 1.7fr;gap:18px 48px;align-items:start}
.whatis>*{min-width:0}
.whatis h2{margin:0}
.whatis .intro{margin-bottom:.8em}

/* the three circles, as in the Program Guide */
.circles{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.circles>li{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0}
.circle{
  width:min(250px,100%);aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;
  align-items:center;justify-content:center;padding:18px;text-decoration:none;color:var(--ink);
}
.circle b{font-size:clamp(1.3rem,2.3vw,1.7rem);line-height:1.1;font-weight:800}
.circle span{font-size:.92rem;margin-top:.5em;font-weight:600}
.circle:hover{color:var(--ink);text-decoration:underline;text-decoration-thickness:2px}
.c-sb{background:var(--sb)} .c-ns{background:var(--ns)} .c-cb{background:var(--cb)}
.circles ul{list-style:none;padding:0;margin:16px 0 0;font-size:.97rem;display:grid;gap:5px}
@media (prefers-reduced-motion:no-preference){
  .circle{transition:transform .2s ease}
  .circle:hover{transform:scale(1.04)}
}

/* reach + map */
.reach{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(24px,4vw,56px);align-items:center}
.reach>*{min-width:0}
.mapfig{margin:0;background:var(--card);border-radius:var(--r);padding:clamp(12px,2vw,22px);border:1px solid var(--line)}
.mapfig svg{display:block;width:100%;height:auto}
.mapfig figcaption{font-size:.82rem;color:var(--muted);margin-top:8px}
.map .county{fill:#cfe3ec;stroke:#fff;stroke-width:2.5}
.map .blueline{fill:rgba(78,183,72,.16);stroke:#1d6b2a;stroke-width:3.2;stroke-dasharray:10 6}
.map text{font-family:"Barlow",system-ui,sans-serif;font-size:22px;font-weight:600;fill:var(--ink);text-anchor:middle}
.map .pin{fill:var(--pk);stroke:var(--ink);stroke-width:3}
.map .pin-label{font-size:26px;font-weight:800;text-anchor:start}
.legend{display:flex;flex-wrap:wrap;gap:6px 18px;list-style:none;padding:0;margin:10px 0 0;font-size:.85rem}
.legend li{display:flex;align-items:center;gap:7px}
.key{display:inline-block;width:22px;height:14px;border-radius:3px;background:#cfe3ec;border:1px solid #9bb9c6}
.key.blue{background:rgba(78,183,72,.16);border:2.5px dashed #1d6b2a}
.key.pin{width:14px;border-radius:50%;background:var(--pk);border:2px solid var(--ink)}
.nums{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:14px}
.nums li{display:flex;align-items:baseline;gap:16px;border-bottom:1px solid var(--line);padding-bottom:12px}
.nums b{font-size:clamp(2.8rem,6vw,4.2rem);line-height:1;font-weight:800;min-width:1.4em;color:var(--teal-deep)}
.nums span{font-size:1.1rem;font-weight:600}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 18px}
.chips li{background:var(--card);border:1.5px solid var(--line);border-radius:999px;padding:5px 13px;font-size:.92rem;font-weight:600}
.cols{columns:2;column-gap:24px;padding-left:20px;margin:0}
@media (max-width:520px){.map text{display:none}}

/* events on the home page */
.next-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:24px;align-items:stretch}
.next-grid>*{min-width:0}
.feature{background:var(--pk);border-radius:var(--r);padding:clamp(22px,3vw,34px);display:flex;flex-direction:column}
.feature .label{color:var(--ink)}
.feature h3{font-size:clamp(1.5rem,2.6vw,2rem)}
.feature .btn{align-self:flex-start;margin-top:auto;background:var(--ink);border-color:var(--ink)}
.feature .btn:hover{background:#000;border-color:#000}
.datelist{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.datelist li{display:grid;grid-template-columns:110px 1fr;gap:16px;background:var(--card);border-radius:16px;padding:16px 18px;border:1px solid var(--line)}
.datelist li>*{min-width:0}
.date{font-family:var(--label);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.9rem;line-height:1.25;color:var(--teal-deep)}
.date b{display:block;font-family:"Barlow",sans-serif;font-size:1.6rem;letter-spacing:0;text-transform:none;color:var(--ink)}
.datelist h3{font-size:1.12rem;margin:0 0 .25em}
.datelist p{margin:0;font-size:.95rem}
.area-tag{
  display:inline-block;font-family:var(--label);font-weight:700;font-size:.74rem;text-transform:uppercase;
  letter-spacing:.07em;padding:3px 9px 3px 12px;border-radius:6px;margin:0 0 .5em;color:var(--ink);
}
.t-sb{background:var(--sb-soft);box-shadow:inset 4px 0 0 var(--sb)}
.t-ns{background:var(--ns-soft);box-shadow:inset 4px 0 0 var(--ns)}
.t-cb{background:var(--cb-soft);box-shadow:inset 4px 0 0 var(--cb)}
.t-pk{background:var(--pk-soft);box-shadow:inset 4px 0 0 var(--pk)}
.past{font-size:.85rem;font-weight:600;color:var(--muted)}

/* voice band */
.voice{background:var(--cb)}
.voice .wrap{display:grid;grid-template-columns:1.6fr 1fr;gap:28px 56px;align-items:center}
.voice .wrap>*{min-width:0}
.voice figure{margin:0}
.voice blockquote{margin:0}
.voice blockquote p{font-size:clamp(1.5rem,3.2vw,2.35rem);line-height:1.2;font-weight:800;margin:0 0 .5em}
.voice figcaption{font-weight:600}
.voice .stat{border-left:4px solid var(--ink);padding-left:18px}
.voice .stat b{display:block;font-size:3.2rem;line-height:1;font-weight:800}
.voice a{color:var(--ink)}

/* news strip + list */
.news-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:18px}
.news-grid li{background:var(--card);border-radius:18px;border:1px solid var(--line);padding:20px 22px;display:flex;flex-direction:column;min-width:0}
.news-grid h3{font-size:1.14rem;margin:.1em 0 .4em}
.news-grid .src{font-size:.92rem;color:var(--muted);margin:0}
.kind{font-family:var(--label);font-weight:700;text-transform:uppercase;letter-spacing:.07em;font-size:.76rem;color:var(--teal-deep);margin:0}
.year{font-size:clamp(1.3rem,2.4vw,1.7rem);border-bottom:3px solid var(--line);padding-bottom:8px;margin:34px 0 16px}
.year:first-of-type{margin-top:0}

/* newsletter */
.newsletter{background:var(--teal-deep);color:#fff;position:relative;margin-top:clamp(46px,7vw,90px)}
.newsletter h2{color:#fff}
.newsletter .ridge{position:absolute;left:0;right:0;top:0;margin:0;transform:translateY(-99%)}
.newsletter .fineprint{color:#d5e7ee}
.newsletter a{color:#fff}
.signup{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;max-width:560px}
.signup>*{min-width:0}
.signup .field{flex:1 1 240px}
.signup label{display:block;font-weight:600;font-size:.95rem;margin-bottom:6px}
.signup input{
  font:inherit;width:100%;padding:11px 14px;border-radius:12px;border:2px solid #fff;background:#fff;color:var(--ink);
}
.signup button{
  font:inherit;font-weight:700;padding:12px 24px;border-radius:999px;border:2px solid var(--cb);
  background:var(--cb);color:var(--ink);cursor:pointer;
}
.signup button:hover{background:#ffb657;border-color:#ffb657}
.newsletter :focus-visible,.tile.teal :focus-visible{outline-color:#fff}
.formnote{min-height:1.6em;font-weight:600;margin:.6em 0 0}
.fineprint{font-size:.86rem;color:var(--muted);margin:.7em 0 0}

/* inner-page heads */
.page-head{padding:clamp(34px,6vw,64px) 0 clamp(30px,5vw,54px)}
.page-head .wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(22px,4vw,52px);align-items:center}
.page-head .wrap>*{min-width:0}
.page-head.solo .wrap{grid-template-columns:1fr}
.page-head h1{font-size:clamp(2.2rem,5.4vw,3.8rem)}
.page-head .peak img{aspect-ratio:3/2}
.head-sb{background:var(--sb)} .head-ns{background:var(--ns)} .head-cb{background:var(--cb)}
.head-pk{background:var(--pk)} .head-teal{background:var(--teal-deep);color:#fff}
.head-teal .label{color:#c4e2ef}
.head-teal .peak figcaption,.head-teal a:not(.btn){color:#fff}
.head-sb .label,.head-ns .label,.head-cb .label,.head-pk .label{color:var(--ink)}
.head-sb .peak figcaption,.head-ns .peak figcaption,.head-cb .peak figcaption,.head-pk .peak figcaption{color:var(--ink)}
.head-sb a:not(.btn),.head-ns a:not(.btn),.head-cb a:not(.btn),.head-pk a:not(.btn){color:var(--ink)}
.crumbs{font-size:.92rem;margin:0 0 .8em}
.crumbs a{font-weight:600}

/* area pages */
.jump{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.jump a{
  display:inline-block;padding:7px 14px;border-radius:999px;background:var(--card);border:1.5px solid var(--line);
  text-decoration:none;font-weight:600;font-size:.95rem;color:var(--ink);
}
.jump a:hover{border-color:var(--teal)}
.program{display:grid;grid-template-columns:1.5fr 1fr;gap:18px 48px;padding:clamp(28px,4vw,44px) 0;border-top:3px solid var(--line)}
.program>*{min-width:0}
.area-sb .program{border-top-color:var(--sb)}
.area-ns .program{border-top-color:var(--ns)}
.area-cb .program{border-top-color:var(--cb)}
.program h2{font-size:clamp(1.5rem,2.8vw,2.1rem)}
.facts{background:var(--card);border-radius:18px;padding:20px 22px;border:1px solid var(--line);align-self:start}
.facts h3{font-family:var(--label);text-transform:uppercase;letter-spacing:.08em;font-size:.86rem;color:var(--teal-deep)}
.facts ul{padding-left:20px;margin:0 0 1em}
.facts li{margin-bottom:5px}
.facts .big{font-size:2.8rem;font-weight:800;line-height:1;display:block}
.facts>:last-child{margin-bottom:0}
.quiet-quote{border-left:4px solid var(--ink);padding:2px 0 2px 16px;margin:0 0 1em;font-weight:600;font-size:1.1rem}
.cta-band{background:var(--card);border-radius:var(--r);padding:clamp(22px,3vw,36px);display:flex;flex-wrap:wrap;gap:18px 30px;align-items:center;justify-content:space-between;border:1px solid var(--line)}
.cta-band>*{min-width:0}
.cta-band h2{margin:0 0 .2em;font-size:clamp(1.4rem,2.6vw,1.9rem)}
.cta-band p{margin:0}

/* our-work overview */
.stack{display:grid;gap:22px}
/* the three area-of-focus panels on the Our work page only: same colours at 10% transparency
   over the page background so the ink text keeps its contrast, each page breakpoint */
.translucent-panels .p-sb{background:color-mix(in srgb,var(--sb-lt) 90%,transparent)}
.translucent-panels .p-ns{background:color-mix(in srgb,var(--ns-lt) 90%,transparent)}
.translucent-panels .p-cb{background:color-mix(in srgb,var(--cb-lt) 90%,transparent)}
.panel{border-radius:var(--r);padding:clamp(24px,3.4vw,40px);display:grid;grid-template-columns:1fr 1.25fr;gap:18px 40px}
.panel>*{min-width:0}
.panel h2 a,.panel a{color:var(--ink)}
.panel ul{margin:0;padding-left:20px;display:grid;gap:6px}
.p-sb{background:var(--sb-lt)} .p-ns{background:var(--ns-lt)} .p-cb{background:var(--cb-lt)}
.az{columns:3 220px;column-gap:28px;padding-left:20px}
.az li{break-inside:avoid;margin-bottom:6px}

/* events page */
.evlist{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.ev{display:grid;grid-template-columns:150px 1fr auto;gap:14px 26px;align-items:start;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 24px}
.ev>*{min-width:0}
.ev h3{font-size:1.3rem;margin:0 0 .3em}
.ev p{margin:0 0 .5em}

/* event page */
.statusbox{background:var(--card);border-radius:18px;padding:22px 24px;color:var(--ink)}
.statusbox h2{font-size:1.3rem;margin-bottom:.3em}
.statusbox p{margin:0 0 .7em}
.statusbox p:last-child{margin:0}
.split{display:grid;grid-template-columns:1.55fr 1fr;gap:clamp(24px,4vw,52px);align-items:start}
.split>*{min-width:0}
.side{display:grid;gap:18px;align-self:start}
.timeline{list-style:none;margin:0 0 1.4em;padding:0;border-left:4px solid var(--ns);display:grid;gap:18px}
.timeline li{position:relative;padding-left:26px}
.timeline li::before{content:"";position:absolute;left:-12px;top:5px;width:20px;height:20px;border-radius:50%;background:var(--card);border:4px solid var(--ns)}
.timeline b{display:block;font-size:1.08rem}
.timeline.teal{border-left-color:var(--teal)}
.timeline.teal li::before{border-color:var(--teal)}
.yr{font-family:var(--label);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.88rem;color:var(--teal-deep);display:block}
.checks{list-style:none;padding:0;margin:0 0 1em;display:grid;gap:9px}
.checks li{padding-left:34px;position:relative}
.checks li::before{content:"";position:absolute;left:0;top:.2em;width:22px;height:22px;border-radius:50%;background:var(--ns)}
.checks li::after{content:"";position:absolute;left:8px;top:calc(.2em + 4px);width:6px;height:11px;border:solid var(--ink);border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.crosses li::before{background:var(--pk)}
.crosses li::after{
  left:5px;top:calc(.2em + 5px);width:12px;height:12px;border:0;transform:none;
  background:linear-gradient(45deg,transparent 42%,var(--ink) 42% 58%,transparent 58%),linear-gradient(-45deg,transparent 42%,var(--ink) 42% 58%,transparent 58%);
}

/* resources */
.search{max-width:520px;margin:0 0 10px}
.search label{display:block;font-weight:600;margin-bottom:6px}
.search input{font:inherit;width:100%;padding:12px 16px;border-radius:12px;border:2px solid var(--teal);background:var(--card);color:var(--ink)}
.status{font-size:.95rem;color:var(--muted);margin:0 0 24px}
.group{margin-bottom:38px}
.group h2{font-size:clamp(1.35rem,2.4vw,1.8rem);padding-bottom:10px;border-bottom:3px solid var(--line)}
.rlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:16px}
.rlist li{background:var(--card);border-radius:16px;border:1px solid var(--line);padding:18px 20px;min-width:0}
.rlist h3{font-size:1.14rem;margin:0 0 .35em}
.rlist p{margin:0 0 .5em;font-size:.97rem}
.rlist .where{font-size:.9rem;margin:0}
.rlist li[hidden],.group[hidden],[hidden]{display:none}

/* take part */
.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.tile{border-radius:var(--r);padding:clamp(22px,3vw,34px);min-width:0}
.tile h2{font-size:clamp(1.45rem,2.6vw,1.95rem)}
.tile a{color:var(--ink)}
.tile .btn{background:var(--ink);border-color:var(--ink);color:#fff}
.tile .btn:hover{background:#000;border-color:#000}
.tile.teal{background:var(--teal-deep);color:#fff}
.tile.teal a{color:#fff}
.tile.teal .fineprint{color:#d5e7ee}
.tile .fineprint{color:var(--ink)}
.tile.pk{background:var(--pk)} .tile.cb{background:var(--cb)} .tile.sb{background:var(--sb)}

/* about */
.vision{font-size:clamp(1.55rem,3.3vw,2.45rem);line-height:1.2;font-weight:800;max-width:30ch;margin:0}
.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.three>*{min-width:0;background:var(--card);border-radius:18px;padding:22px 24px;border:1px solid var(--line)}
.letter{background:var(--card);border-radius:var(--r);padding:clamp(24px,3.4vw,42px);border:1px solid var(--line);max-width:860px;margin:0}
.letter blockquote{margin:0}
.letter p{font-size:1.1rem}
.letter figcaption{font-weight:600}
.willgrid{display:grid;grid-template-columns:1.5fr 1fr;gap:24px}
.willgrid>*{min-width:0;background:var(--card);border-radius:18px;padding:24px 26px;border:1px solid var(--line)}
.team{list-style:none;padding:0;margin:0 0 16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.team li{background:var(--card);border-radius:18px;padding:20px 22px;border-top:6px solid var(--sb);min-width:0}
.team li:nth-child(2){border-top-color:var(--ns)}
.team li:nth-child(3){border-top-color:var(--cb)}
.team b{display:block;font-size:1.15rem}
.partners{columns:3 220px;column-gap:26px;padding-left:20px;font-size:.97rem;margin:0}
.partners li{break-inside:avoid;margin-bottom:5px}

/* concept page */
.narrow{max-width:820px}
.cmp{width:100%;border-collapse:collapse;background:var(--card);font-size:.97rem;margin:0}
.cmp th,.cmp td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid var(--line)}
.cmp thead th{background:var(--teal-deep);color:#fff}
.cmp tbody th{font-weight:600;width:22%}
.tablewrap{overflow-x:auto;position:relative;max-width:100%;border-radius:14px;margin:0 0 1.4em;border:1px solid var(--line)}

/* design notes */
.anno{
  display:none;margin:24px 0 0;border-left:5px solid var(--pk);background:var(--card);
  padding:14px 18px;border-radius:0 12px 12px 0;font-size:.97rem;color:var(--ink);max-width:78ch;
}
body.notes .anno{display:block}

/* footer */
.site-footer{background:var(--ink);color:#fff;padding:52px 0 110px;border-top:6px solid var(--teal)}
.site-footer a{color:#fff}
.site-footer h2{font-size:1.02rem;color:#fff;font-family:var(--label);text-transform:uppercase;letter-spacing:.08em}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
.foot-grid>*{min-width:0}
.foot-grid p{color:#dde4e8}
.plain{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px}
.d-sb{background:var(--sb)} .d-ns{background:var(--ns)} .d-cb{background:var(--cb)}
.foot-note{border-top:1px solid #3a4852;margin-top:30px;padding-top:18px}
.foot-note p{font-size:.86rem;color:#d3dbe0;margin:0}

@media (max-width:900px){
  .hero-grid,.page-head .wrap,.whatis,.reach,.next-grid,.voice .wrap,.program,.panel,.split,.willgrid,.foot-grid{grid-template-columns:1fr}
  .circles{grid-template-columns:1fr;gap:34px}
  .circle{width:min(220px,100%)}
  .three,.team,.tiles{grid-template-columns:1fr}
  .ev{grid-template-columns:1fr}
  .utility{display:none}
}
@media (max-width:560px){
  .datelist li{grid-template-columns:1fr;gap:6px}
  .cols{columns:1}
  body{font-size:1.0625rem}
  .header-in{gap:8px 14px;padding-top:10px;padding-bottom:10px}
  .main-nav a{padding:6px 8px}
}
@media print{.concept-bar,.notes-toggle,.search,.ridge{display:none}}
