@font-face{font-family:"Archivo Black";src:url(type/archivo-black-400.woff2) format("woff2");font-display:swap}
@font-face{font-family:"Atkinson";src:url(type/atkinson-hyperlegible-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Atkinson";src:url(type/atkinson-hyperlegible-700.woff2) format("woff2");font-weight:700;font-display:swap}
:root{--teal:#0b5d57;--teal-d:#073f3b;--yellow:#f6c915;--ink:#121a19;--enamel:#eef0ea;--verm:#e2452a;--sky:#7cc6e8;--grey:#c9d1cb;--head:"Archivo Black","Arial Black",sans-serif;--body:"Atkinson",Verdana,sans-serif}
[hidden]{display:none!important}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--teal);color:var(--ink);font-family:var(--body);font-size:1.08rem;line-height:1.6;overflow-wrap:break-word}
img{display:block;max-width:100%}
a{color:inherit;text-decoration-thickness:2px;text-underline-offset:.2em}
:focus-visible{outline:4px solid var(--yellow);outline-offset:2px;box-shadow:0 0 0 8px var(--ink)}
h1,h2,h3{font-family:var(--head);font-weight:400;line-height:1.05;letter-spacing:-.01em;margin:0 0 .6em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{word-break:break-all}
.skip{position:absolute;left:-999px;top:0;z-index:999;background:var(--yellow);padding:.7rem 1rem;font-weight:700}
.skip:focus{left:.5rem;top:.5rem}

/* signboard nav */
.board{position:sticky;top:0;z-index:60;background:var(--ink);color:var(--enamel);border-bottom:6px solid var(--yellow)}
.board-row{display:flex;align-items:stretch;gap:0;max-width:1500px;margin:0 auto}
.mark{display:flex;align-items:center;gap:.7rem;padding:.7rem 1.1rem;text-decoration:none;border-right:2px solid #2c3634}
.mark-sq{display:grid;place-items:center;width:42px;height:42px;background:var(--yellow);color:var(--ink);font-family:var(--head);font-size:1.05rem}
.mark-name{font-family:var(--head);font-size:1.25rem}
.signs{flex:1;min-width:0}
.signs ul{list-style:none;margin:0;padding:0;display:flex;height:100%}
.signs li{flex:1 1 auto}
.signs a{height:100%;display:flex;align-items:center;gap:.5rem;padding:.6rem .8rem;text-decoration:none;font-weight:700;font-size:.95rem;border-right:2px solid #2c3634;transition:background .15s,color .15s}
.sign-ic{width:20px;height:20px;flex:0 0 20px;color:var(--yellow)}
.sign-arr{margin-left:auto;font-family:var(--head);transition:transform .25s cubic-bezier(.5,1.8,.5,1)}
.signs a:hover,.signs a[aria-current]{background:var(--yellow);color:var(--ink)}
.signs a:hover .sign-ic,.signs a[aria-current] .sign-ic{color:var(--ink)}
.signs a:hover .sign-arr{transform:translateX(4px) rotate(-45deg)}
.signs-extra{display:none}
.board-acts{display:flex}
.find-btn{font:inherit;font-weight:700;background:none;color:var(--enamel);border:0;border-right:2px solid #2c3634;padding:0 1rem;cursor:pointer;white-space:nowrap}
.find-btn:hover{background:#26302e}
kbd{font-family:var(--head);font-size:.75rem;border:2px solid currentColor;padding:0 .35rem;margin-left:.3rem}
.board-contact{display:flex;align-items:center;padding:0 1.3rem;background:var(--verm);color:#fff6ef;text-decoration:none;font-family:var(--head)}
.board-contact:hover{background:var(--yellow);color:var(--ink)}
.dir-toggle{display:none}
@media (max-width:1180px){.sign-arr{display:none}.signs a{font-size:.88rem;padding:.5rem .55rem}}
@media (max-width:980px){
  .board-row{flex-wrap:wrap}
  .mark{border-right:0;margin-right:auto}
  .dir-toggle{display:block;order:2;font:inherit;font-family:var(--head);background:var(--yellow);color:var(--ink);border:0;padding:0 1.1rem;cursor:pointer}
  .dir-toggle[aria-expanded=true]{background:var(--enamel)}
  .board-acts{order:1}
  .board-contact{display:none}
  .find-btn{border-left:2px solid #2c3634}
  .find-btn kbd{display:none}
  .signs{order:3;flex-basis:100%;display:none}
  .signs.open{display:block;animation:fold .25s ease-out}
  .signs ul{flex-direction:column}
  .signs a{border-right:0;border-top:2px solid #2c3634;padding:.9rem 1.1rem;font-size:1rem}
  .sign-arr{display:inline}
  .signs-extra{display:block}
}
@keyframes fold{from{transform:scaleY(.6);transform-origin:top;opacity:0}}

/* finder */
.finder{position:fixed;inset:0;z-index:200;background:rgba(18,26,25,.75);display:flex;justify-content:center;align-items:flex-start;padding:10vh 1rem 1rem}
.finder-box{width:min(620px,100%);background:var(--enamel);border:6px solid var(--ink);box-shadow:14px 14px 0 var(--yellow);padding:1.4rem;animation:fold .2s ease-out}
.finder-box h2{font-size:1.6rem}
.finder input{width:100%;font:inherit;font-size:1.2rem;padding:.8rem 1rem;border:4px solid var(--ink);background:#fff}
.finder ul{list-style:none;margin:1rem 0;padding:0;max-height:46vh;overflow:auto}
.finder li{display:flex;align-items:center;gap:.8rem;padding:.65rem .8rem;border-bottom:2px solid var(--grey);cursor:pointer;font-weight:700}
.finder li .sign-ic{color:var(--teal)}
.finder li em{margin-left:auto;font-style:normal;font-size:.8rem;background:var(--ink);color:var(--enamel);padding:.1rem .45rem}
.finder li[aria-selected=true],.finder li:hover{background:var(--yellow)}
.finder-help{font-size:.85rem;margin:0 0 .8rem}
.finder-close{font:inherit;font-weight:700;border:3px solid var(--ink);background:none;padding:.4rem 1rem;cursor:pointer}

/* buttons */
.sign-btn{display:inline-flex;align-items:center;gap:1rem;font:inherit;font-family:var(--head);font-size:1.02rem;background:var(--ink);color:var(--yellow);border:4px solid var(--ink);padding:.8rem 1.2rem;text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .2s}
.sign-btn b{font-weight:400;transition:transform .3s cubic-bezier(.5,1.8,.5,1)}
.sign-btn:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--verm)}
.sign-btn:hover b{transform:translateX(6px)}
.sign-btn--ghost{background:transparent;color:var(--ink)}
.sign-btn--dark{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}
.plain-link{font-weight:700}

/* home poster */
.poster{display:grid;grid-template-columns:1.5fr 1fr;background:var(--yellow);border-bottom:6px solid var(--ink);overflow:hidden}
.poster-main{padding:clamp(2.5rem,6vw,6rem) clamp(1rem,4vw,4rem)}
.eyebrow{font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;margin:0 0 1.2rem;display:inline-block;background:var(--ink);color:var(--enamel);padding:.25rem .6rem}
.poster-h{font-size:clamp(3rem,10vw,9rem);line-height:.88;margin:0 0 2rem;display:flex;flex-wrap:wrap;gap:0 .25em}
.poster-h span{display:inline-block}
.poster-h .hl{background:var(--ink);color:var(--yellow);padding:0 .12em}
@media (prefers-reduced-motion:no-preference){.poster-h span{animation:plate .7s cubic-bezier(.2,.9,.2,1) both}.poster-h span:nth-child(2){animation-delay:.1s}.poster-h span:nth-child(3){animation-delay:.2s}}
@keyframes plate{from{opacity:0;transform:translateY(.4em)}}
.poster-sub{font-size:1.2rem;max-width:40rem}
.cta-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}
.poster-arrow{background:var(--teal);display:grid;place-items:center;border-left:6px solid var(--ink);padding:2rem}
.poster-arrow svg{width:min(320px,80%);height:auto}
.arr{stroke:var(--yellow);stroke-dasharray:500;stroke-dashoffset:0}
@media (prefers-reduced-motion:no-preference){.arr{animation:draw 1.4s .3s cubic-bezier(.6,0,.2,1) both}.poster-arrow svg{animation:nudge 3.5s 1.8s ease-in-out infinite}}
@keyframes draw{from{stroke-dashoffset:500}}
@keyframes nudge{50%{transform:translate(10px,-10px)}}
.lost-svg{width:min(260px,70%);color:var(--yellow)}
@media (max-width:820px){.poster{grid-template-columns:1fr}.poster-arrow{border-left:0;border-top:6px solid var(--ink);padding:1.4rem}.poster-arrow svg,.lost-svg{width:140px}}

/* directory table */
.legend{padding:clamp(2.5rem,6vw,5rem) clamp(1rem,4vw,4rem);color:var(--enamel)}
.legend-h{font-size:clamp(1.8rem,4vw,3rem)}
.dir-table{width:100%;border-collapse:collapse;background:var(--enamel);color:var(--ink);border:6px solid var(--ink)}
.dir-table th,.dir-table td{padding:1rem;text-align:left;border-bottom:3px solid var(--ink);vertical-align:middle}
.dir-table thead th{background:var(--ink);color:var(--yellow);font-family:var(--head);font-weight:400;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}
.dir-table tbody th{font-family:var(--head);font-weight:400;font-size:1.25rem}
.dir-table tbody tr{transition:background .15s}
.dir-table tbody tr:hover{background:var(--yellow)}
.tbl-ic{width:44px;height:44px;color:var(--teal)}
.dir-table a{font-family:var(--head);text-decoration:none;white-space:nowrap;display:inline-block;padding:.3rem .7rem;border:3px solid var(--ink)}
.dir-table a:hover{background:var(--ink);color:var(--yellow)}
@media (max-width:700px){.dir-table thead{display:none}.dir-table tr{display:grid;grid-template-columns:56px 1fr;gap:.2rem .8rem;padding:1rem;border-bottom:3px solid var(--ink)}.dir-table td,.dir-table th{border:0;padding:0}.dir-table td:first-child{grid-row:span 3}}

/* stops diagram */
.diagram{padding:clamp(2.5rem,6vw,5rem) clamp(1rem,4vw,4rem);background:var(--enamel);border-block:6px solid var(--ink)}
.diagram h2{font-size:clamp(1.8rem,4vw,3rem)}
.line-track{position:relative;margin-top:2rem}
.track{position:absolute;left:0;right:0;top:20px;height:12px;background:var(--grey)}
.track-fill{position:absolute;inset:0;background:var(--verm);transform-origin:left;transform:scaleX(var(--prog,0));transition:transform .5s cubic-bezier(.6,0,.2,1)}
.stops{position:relative;display:grid;grid-template-columns:repeat(6,1fr)}
.stops button{font:inherit;font-weight:700;background:none;border:0;padding:52px .3rem .5rem;cursor:pointer;position:relative;text-align:center}
.stops button::before{content:"";position:absolute;top:8px;left:50%;width:36px;height:36px;margin-left:-18px;border-radius:50%;background:var(--enamel);border:7px solid var(--ink);transition:transform .25s cubic-bezier(.5,1.8,.5,1),background .2s}
.stops button[aria-selected=true]::before{background:var(--yellow);transform:scale(1.25)}
.stops button:hover::before{transform:scale(1.15)}
.stop-panels{margin-top:1.4rem;background:#fff;border:4px solid var(--ink);padding:1.4rem;max-width:760px}
.stop-panels [role=tabpanel]{animation:plate .35s ease-out}
.you-get{background:var(--yellow);padding:.6rem .8rem;margin-bottom:0}
@media (max-width:720px){.stops{grid-template-columns:repeat(3,1fr);row-gap:.5rem}.track{display:none}.stops button{font-size:.9rem}}

/* split info */
.split-info{display:grid;grid-template-columns:1fr 1fr;gap:0;color:var(--enamel)}
.split-txt{padding:clamp(2rem,5vw,4.5rem)}
.split-txt h2{font-size:clamp(1.8rem,3.6vw,2.8rem);color:var(--yellow)}
.photo{margin:0;background:var(--ink);width:100%;max-width:100%}
.photo img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.photo figcaption{color:var(--enamel);font-size:.88rem;padding:.7rem 1rem}
.tag{background:var(--yellow);color:var(--ink);font-weight:700;padding:0 .4rem;margin-right:.3rem}
@media (max-width:820px){.split-info{grid-template-columns:1fr}}
.audit-teaser{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center;justify-content:space-between;padding:clamp(2rem,5vw,4rem);background:var(--verm);color:#fff6ef;border-top:6px solid var(--ink)}
.audit-teaser h2{font-size:clamp(1.6rem,3vw,2.4rem)}
.audit-teaser>div{max-width:44rem}

/* inner plate */
.plate{display:grid;grid-template-columns:auto 1fr;background:var(--yellow);border-bottom:6px solid var(--ink)}
.plate-ic{background:var(--ink);color:var(--yellow);display:grid;place-items:center;padding:clamp(1.2rem,4vw,3rem)}
.plate-svg{width:clamp(70px,12vw,170px);height:auto}
@media (prefers-reduced-motion:no-preference){.plate-svg{animation:pop .6s cubic-bezier(.5,1.8,.5,1) both}}
@keyframes pop{from{transform:scale(.4) rotate(-20deg);opacity:0}}
.plate-txt{padding:clamp(1.6rem,4vw,3.5rem) clamp(1rem,4vw,3.5rem)}
.plate-txt h1{font-size:clamp(2.2rem,5.6vw,4.8rem);max-width:18ch}
.intro{font-size:1.2rem;max-width:46rem;margin:0}
@media (max-width:600px){.plate{grid-template-columns:1fr}.plate-ic{justify-content:start}}
.grid-page{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(1rem,3vw,3rem);max-width:1400px;margin:0 auto;padding:clamp(1.5rem,4vw,3.5rem) clamp(1rem,4vw,3rem) 4rem}
.flow{display:grid;gap:1.5rem;align-content:start}
.blk{background:var(--enamel);border:4px solid var(--ink);padding:clamp(1.2rem,3vw,2.2rem);scroll-margin-top:7rem}
.blk h2{display:flex;align-items:center;gap:.8rem;font-size:clamp(1.4rem,2.6vw,2rem)}
.bar{width:28px;height:28px;flex:0 0 28px;background:var(--verm);clip-path:polygon(0 0,60% 0,100% 50%,60% 100%,0 100%,40% 50%)}
@media (prefers-reduced-motion:no-preference){.blk{transition:transform .5s cubic-bezier(.2,.9,.2,1),opacity .5s}.blk.wait{opacity:0;transform:translateX(-24px)}}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:0;margin:0;border-top:3px solid var(--ink);border-left:3px solid var(--ink)}
.facts>div{padding:1rem;border-right:3px solid var(--ink);border-bottom:3px solid var(--ink);background:#fff}
.facts dt{font-family:var(--head);font-size:1.05rem;margin-bottom:.3rem}
.facts dd{margin:0}
.ticks{list-style:none;padding:0;display:grid;gap:.6rem}
.ticks li{padding-left:2.2rem;position:relative}
.ticks li::before{content:"";position:absolute;left:0;top:.2em;width:1.3rem;height:1.3rem;background:var(--teal);clip-path:polygon(14% 44%,0 60%,40% 100%,100% 20%,86% 6%,40% 70%)}
.numbered{padding-left:1.4rem;font-weight:700}
.next{margin:0}
.flow>.photo{border:4px solid var(--ink)}

/* route map */
.side{position:sticky;top:6.5rem;align-self:start}
.route{background:var(--ink);color:var(--enamel);padding:1.2rem;border:4px solid var(--ink)}
.route-h{font-family:var(--head);margin:0 0 1rem;color:var(--yellow)}
.route-line{display:grid;grid-template-columns:44px 1fr;gap:.6rem;margin-bottom:1rem}
.route-tag{font-family:var(--head);font-size:1.3rem;display:grid;place-items:center;align-content:center;height:44px;background:var(--c);color:var(--ink);line-height:1}
.route-tag small{font-family:var(--body);font-size:.5rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.line-A{--c:var(--yellow)}.line-B{--c:var(--verm)}.line-C{--c:var(--enamel)}.line-D{--c:var(--sky)}
.route ol{list-style:none;margin:0;padding:0 0 0 1rem;border-left:8px solid var(--c);position:relative}
.route li{position:relative;padding:.25rem 0 .25rem .6rem}
.route li::before{content:"";position:absolute;left:-1.55rem;top:.62rem;width:14px;height:14px;border-radius:50%;background:var(--ink);border:3px solid var(--c)}
.route li.here::before{background:var(--c);transform:scale(1.4)}
.route a{text-decoration:none;font-size:.95rem}
.route a:hover{text-decoration:underline}
.route li.here a{font-weight:700;color:var(--c)}
.you{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--enamel);opacity:.75}
@media (max-width:980px){.grid-page{grid-template-columns:1fr}.side{position:static}.route{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.4rem 1rem}.route-h{grid-column:1/-1}}

/* standards filter */
.filter-btns{display:flex;flex-wrap:wrap;gap:0;border:3px solid var(--ink);max-width:100%}
.filter-btns button{font:inherit;font-weight:700;background:#fff;border:0;border-right:3px solid var(--ink);padding:.55rem 1rem;cursor:pointer}
.filter-btns button:last-child{border-right:0}
.filter-btns button[aria-pressed=true]{background:var(--ink);color:var(--yellow)}
.std-list{list-style:none;padding:0;margin:1.2rem 0 0;display:grid;gap:.5rem}
.std-list li{background:#fff;border-left:10px solid var(--teal);padding:.7rem 1rem;animation:plate .3s ease-out}
.std-list li[data-cat=ux]{border-left-color:var(--verm)}
.std-list li[data-cat=ops]{border-left-color:var(--sky)}
.filter-count{font-size:.9rem;font-weight:700}

/* audit */
.audit{display:grid;gap:.8rem}
.audit fieldset{border:3px solid var(--ink);padding:.8rem 1rem;margin:0;background:#fff}
.audit legend{font-weight:700;padding:0 .3rem}
.opts{display:flex;flex-wrap:wrap;gap:.5rem}
.opts label{display:inline-flex;align-items:center;gap:.4rem;border:3px solid var(--ink);padding:.3rem .8rem;cursor:pointer}
.opts input[type=radio]{width:18px;height:18px;margin:0;accent-color:var(--teal)}
.opts label:has(input:checked){background:var(--yellow)}
.chart{display:grid;grid-template-columns:repeat(6,1fr);gap:.4rem;height:180px;margin:1.4rem 0 .5rem;padding:0 0 0;border-bottom:4px solid var(--ink);align-items:end}
.col{display:flex;flex-direction:column;justify-content:flex-end;height:100%;position:relative}
.colbar{display:block;height:100%;background:var(--teal);transform-origin:bottom;transform:scaleY(var(--v,.04));transition:transform .5s cubic-bezier(.5,1.6,.5,1),background .3s}
.col[data-v="1"] .colbar{background:var(--yellow)}.col[data-v="0"] .colbar{background:var(--verm)}
.col em{position:absolute;bottom:-1.7rem;left:0;right:0;text-align:center;font-style:normal;font-size:.72rem;font-weight:700}
.audit-out{margin-top:2.4rem;font-weight:700;font-size:1.1rem;background:var(--ink);color:var(--enamel);padding:1rem}
.small{font-size:.88rem}
.gl-search{font-weight:700;display:block}
.gl-input{font:inherit;width:100%;max-width:26rem;border:3px solid var(--ink);padding:.6rem .8rem;margin:.3rem 0 1rem}
.gl{display:grid;gap:.5rem;margin:0}
.gl>div{display:grid;grid-template-columns:13rem 1fr;gap:1rem;background:#fff;padding:.7rem 1rem;border-left:6px solid var(--yellow)}
.gl dt{font-weight:700}.gl dd{margin:0}
@media (max-width:640px){.gl>div{grid-template-columns:1fr;gap:.2rem}}

/* forms */
.frm{display:grid;gap:1rem}
.frm-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.fld{display:grid;gap:.3rem}
.fld label{font-weight:700}
.fld abbr{text-decoration:none;color:var(--verm)}
.fld input,.fld select,.fld textarea{width:100%;max-width:100%;font:inherit;border:3px solid var(--ink);background:#fff;padding:.7rem .8rem;border-radius:0}
.fld input:focus,.fld select:focus,.fld textarea:focus{background:#fffbe3}
[aria-invalid=true]{border-color:var(--verm)!important;box-shadow:inset 6px 0 0 var(--verm)}
.ferr{color:#a8250f;font-weight:700;font-size:.9rem}
.agree{display:flex;gap:.7rem;align-items:flex-start}
.agree input[type=checkbox]{width:24px;height:24px;flex:0 0 24px;margin:.1rem 0 0;accent-color:var(--teal)}
.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.frm-status:empty{display:none}
.frm-status{margin:0;padding:1rem;border:4px solid var(--ink);font-weight:700}
.frm-status.good{background:var(--sky)}
.frm-status.fail{background:var(--verm);color:#fff6ef}
@media (max-width:640px){.frm-grid{grid-template-columns:1fr}}
.map-sign{border:4px dashed var(--ink);padding:1.4rem;background:repeating-linear-gradient(-45deg,#fff 0 18px,var(--enamel) 18px 36px)}

/* footer */
.foot{background:var(--ink);color:var(--enamel);border-top:6px solid var(--yellow)}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.4fr;gap:2rem;padding:3rem clamp(1rem,4vw,3rem);max-width:1500px;margin:0 auto}
.foot-sign{display:flex;gap:1rem;align-items:flex-start}
.foot-h{font-size:1rem;color:var(--yellow)}
.foot address{font-style:normal}
.foot ul{list-style:none;margin:0;padding:0;columns:2;column-gap:1rem}
.foot li{margin-bottom:.3rem}
.foot-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,4vw,3rem);border-top:2px solid #2c3634;max-width:1500px;margin:0 auto}
.cookie-reopen{font:inherit;font-weight:700;background:var(--yellow);color:var(--ink);border:0;padding:.4rem .9rem;cursor:pointer}
@media (max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.foot-grid{grid-template-columns:1fr}}
.consent{position:fixed;z-index:150;right:1rem;bottom:1rem;width:min(460px,calc(100vw - 2rem));background:var(--enamel);border:5px solid var(--ink);box-shadow:10px 10px 0 var(--yellow);padding:1.2rem;animation:plate .35s ease-out}
.consent h2{font-size:1.3rem;margin-bottom:.4rem}
.consent p{margin:0 0 .9rem;font-size:.95rem}
.consent-btns{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.6rem}
.consent-btns button{font:inherit;font-weight:700;padding:.7rem;background:var(--ink);color:var(--yellow);border:0;cursor:pointer}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
/* homepage gantry + expansion */
.gantry{position:relative;background:var(--ink);padding-bottom:clamp(2rem,5vw,4rem);overflow:clip}
.gantry-photo{position:relative;height:clamp(16rem,42vw,30rem)}
.gantry-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.gantry-credit{position:absolute;right:.6rem;top:.6rem;background:var(--ink);color:var(--enamel);font-size:.75rem;padding:.2rem .5rem}
.gantry-plate{position:relative;margin:-6rem auto 0;width:min(1000px,calc(100% - 2rem));background:var(--yellow);color:var(--ink);border:6px solid var(--ink);box-shadow:0 0 0 4px var(--yellow);padding:clamp(1.4rem,4vw,3rem);text-align:center}
.gantry-h{font-family:var(--head);font-weight:400;font-size:clamp(2.3rem,7vw,5.6rem);line-height:.95;margin:.4rem 0 1rem}
.gantry-h .hl{background:var(--ink);color:var(--yellow);padding:0 .15em}
.gantry-plate .poster-sub{margin-inline:auto;max-width:42rem}
.gantry-plate .cta-row{justify-content:center}
.checker,.who-uses,.readme,.support-board,.faq-desk{padding:clamp(3rem,7vw,6rem) clamp(1rem,4vw,3rem)}
.checker{background:var(--teal);color:var(--enamel)}
.ck-head{max-width:46rem}
.ck-head h2,.who-uses h2,.readme h2,.support-board h2,.faq-desk h2{font-family:var(--head);font-weight:400;font-size:clamp(1.8rem,4vw,3rem);line-height:1}
.ck-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.6rem;margin-top:1.6rem}
@media (max-width:860px){.ck-body{grid-template-columns:1fr}}
.ck-in label{display:block;font-weight:700;margin-bottom:.4rem}
.ck-in textarea{width:100%;font:inherit;padding:.9rem;border:4px solid var(--ink);background:var(--enamel);color:var(--ink);margin-bottom:1rem}
.ck-out{background:var(--enamel);color:var(--ink);border:4px solid var(--ink);padding:1.2rem}
.ck-stats{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:0 0 1rem}
.ck-stats div{border-left:6px solid var(--yellow);padding-left:.6rem}
.ck-stats dt{font-size:.85rem}
.ck-stats dd{margin:0;font-family:var(--head);font-size:1.6rem}
.ck-notes{margin:0;padding-left:1.2rem}
.ck-notes li{margin:.3rem 0}
.wu-intro{max-width:42rem}
.wu-signs{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:0;border:6px solid var(--ink);margin-top:1.6rem}
.wu-sign{padding:1.6rem;border-right:6px solid var(--ink)}
.wu-sign:last-child{border-right:0}
.wu-sign h3{font-family:var(--head);font-weight:400;font-size:1.3rem}
.wu-sign--y{background:var(--yellow)}.wu-sign--t{background:var(--teal);color:var(--enamel)}.wu-sign--k{background:var(--ink);color:var(--enamel)}
@media (max-width:860px){.wu-signs{grid-template-columns:1fr}.wu-sign{border-right:0;border-bottom:6px solid var(--ink)}.wu-sign:last-child{border-bottom:0}}
.readme{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:2.5rem;align-items:start;background:var(--enamel)}
@media (max-width:860px){.readme{grid-template-columns:1fr}}
.rm-points{padding-left:1.2rem}
.rm-file{margin:0;background:var(--ink);color:var(--enamel);padding:1.4rem;font-size:.92rem;line-height:1.6;overflow-x:auto;white-space:pre-wrap;border-top:12px solid var(--yellow)}
.rm-file b{color:var(--yellow)}
.support-board{background:var(--ink);color:var(--enamel)}
.support-board .plain-link{color:var(--yellow)}
.sbd{margin:1.6rem 0;border-top:3px solid var(--yellow)}
.sbd-row{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1rem;padding:1rem 0;border-bottom:1px solid rgba(238,240,234,.25)}
.sbd-l{font-family:var(--head);color:var(--yellow);text-transform:uppercase}
@media (max-width:600px){.sbd-row{grid-template-columns:1fr;gap:.2rem}}
.fq-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:.8rem;margin-top:1.4rem}
.fq-cols details{border:4px solid var(--ink);background:var(--enamel);padding:0 1rem}
.fq-cols summary{font-weight:700;cursor:pointer;padding:.9rem 0}
.fq-cols details[open]{background:var(--yellow)}
.fq-cols details p{margin:0 0 1rem}
