/* =====================================================================
   byw.css — The Backyard Wrestling Link
   One stylesheet, one system: tokens, base, chrome, components, layout,
   motion. Rewritten from the version that had grown three appendices.

   Backgrounds are a warm near-black, not #000, so photographs and chrome
   lettering sit on something with a temperature. Pure black is kept only
   for the header and the ring apron, where the logo's own field has to
   disappear into the page.
   ===================================================================== */

/* ---------------------------------------------------------------------
   1. TOKENS
   --------------------------------------------------------------------- */
:root{
  --ink-900:#0A0908;
  --ink-800:#100E0C;
  --ink-700:#17140F;
  --rule:#2B2621;
  --rule-soft:#1E1A16;

  --text:#ECE9E1;
  --text-dim:#A8A398;
  --text-faint:#6F6A60;

  --gold:#FCC301;
  --gold-hi:#FFE27A;
  --gold-deep:#B87702;
  --gold-ink:#8A5A02;
  --silver:#A7A7A7;
  --chrome:linear-gradient(180deg,#FFFFFF 0%,#E6E4E0 29%,#BEBCB8 49.2%,#6E6B66 50%,#9E9B96 70%,#EFEDE9 100%);

  --display:'Anton','Haettenschweiler','Arial Narrow Bold',sans-serif;
  --text-face:'Archivo',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --hand:'Permanent Marker',var(--display);

  /* fluid type scale */
  --t-xs:clamp(13px,.82rem + .12vw,14.5px);
  --t-sm:clamp(14.5px,.9rem + .15vw,16px);
  --t-base:clamp(16.5px,1rem + .2vw,18px);
  --t-lede:clamp(18px,1.06rem + .45vw,21px);
  --t-h3:clamp(22px,1.2rem + 1vw,30px);
  --t-h2:clamp(30px,1.6rem + 2.4vw,52px);
  --t-h1:clamp(46px,2.2rem + 6.2vw,124px);
  --t-pull:clamp(28px,1.6rem + 3.6vw,66px);

  /* fluid spacing: one scale, nothing hard-coded at 16 / 32 */
  --s-1:clamp(4px,.25rem + .1vw,6px);
  --s-2:clamp(8px,.5rem + .2vw,11px);
  --s-3:clamp(13px,.8rem + .3vw,18px);
  --s-4:clamp(20px,1.2rem + .5vw,28px);
  --s-5:clamp(30px,1.7rem + .9vw,44px);
  --s-6:clamp(44px,2.4rem + 1.6vw,68px);
  --s-7:clamp(62px,3.2rem + 3vw,104px);
  --s-8:clamp(84px,4rem + 5vw,150px);

  --wrap:1280px;
  --gutter:clamp(20px,4.4vw,56px);

  /* depth: layered, never one flat shadow */
  --lift-1:0 1px 1px rgba(0,0,0,.5), 0 4px 10px -4px rgba(0,0,0,.6);
  --lift-2:0 2px 3px rgba(0,0,0,.45), 0 14px 34px -14px rgba(0,0,0,.8);
  --lift-3:0 3px 5px rgba(0,0,0,.4), 0 28px 60px -20px rgba(0,0,0,.85);
  --print:0 18px 38px -16px rgba(0,0,0,.8), 2px 3px 0 rgba(0,0,0,.35);
  --stamp:4px 4px 0 rgba(6,5,4,.92), 0 10px 22px -12px rgba(0,0,0,.9);
  --stamp-hi:6px 6px 0 rgba(6,5,4,.92), 0 16px 30px -14px rgba(0,0,0,.9);

  --ease:cubic-bezier(.2,.7,.3,1);
}

/* ---------------------------------------------------------------------
   2. BASE
   --------------------------------------------------------------------- */
.b-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.b-skip{position:absolute;left:var(--gutter);top:-80px;z-index:1000;background:var(--gold);color:#120D02;
  font:800 15px/1 var(--text-face);text-transform:uppercase;letter-spacing:.04em;padding:14px 18px;
  border:2px solid #000;text-decoration:none;transition:top .18s var(--ease)}
.b-skip:focus{top:14px}

body.b-page{margin:0;background:var(--ink-900);color:var(--text);font-family:var(--text-face);
  font-size:var(--t-base);line-height:1.62;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  position:relative;overflow-x:clip}
.b-page *,.b-page *::before,.b-page *::after{box-sizing:border-box}
:where(.b-page) p{margin:0 0 1em}
:where(.b-page) :is(h1,h2,h3){margin:0;font-weight:400}
:where(.b-page) a{color:inherit}
.b-page img{max-width:100%;background:#1A1713}
.b-page ::selection{background:var(--gold);color:#120D02}

body.b-page::before,body.b-page::after{content:"";position:fixed;inset:0;pointer-events:none}
body.b-page::before{z-index:-2;opacity:.045;
  background-image:repeating-linear-gradient(45deg,#8b8b8b 0 2px,transparent 2px 22px),
                   repeating-linear-gradient(-45deg,#8b8b8b 0 2px,transparent 2px 22px);
  background-size:31px 31px}
body.b-page::after{z-index:-1;opacity:.15;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}

/* ---------------------------------------------------------------------
   3. LAYOUT PRIMITIVES
   --------------------------------------------------------------------- */
.b-wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.b-sec{padding-block:var(--s-7)}
.b-sec--tight{padding-block:var(--s-6)}
.b-rule-top{border-top:1px solid var(--rule)}

.b-grid{display:grid;grid-template-columns:repeat(12,1fr);column-gap:var(--s-4);row-gap:var(--s-5);align-items:start}
.c1-6{grid-column:1/7}   .c1-7{grid-column:1/8}   .c1-8{grid-column:1/9}
.c2-8{grid-column:2/9}   .c2-9{grid-column:2/10}  .c3-10{grid-column:3/11}
.c6-13{grid-column:6/13} .c7-13{grid-column:7/13} .c8-13{grid-column:8/13}
.c1-13{grid-column:1/13}
.drop-1{margin-top:var(--s-5)}
.drop-2{margin-top:var(--s-7)}

/* ---------------------------------------------------------------------
   4. TYPE
   --------------------------------------------------------------------- */
.b-display{font-family:var(--display);text-transform:uppercase;line-height:.9;letter-spacing:.006em}
.b-h1{font-family:var(--display);text-transform:uppercase;font-size:var(--t-h1);line-height:.88;letter-spacing:.004em}
.b-h2{font-family:var(--display);text-transform:uppercase;font-size:var(--t-h2);line-height:.95;letter-spacing:.008em;color:var(--text)}
.b-h3{font-family:var(--display);text-transform:uppercase;font-size:var(--t-h3);line-height:1.02;letter-spacing:.01em;color:var(--text)}
.b-lede{font-size:var(--t-lede);line-height:1.5;color:var(--text-dim);max-width:36ch}
.b-lede--wide{max-width:48ch}
.b-copy{max-width:52ch}
.b-note{font-size:var(--t-sm);line-height:1.55;color:var(--text-faint);max-width:56ch}
.b-hand{font-family:var(--hand);color:var(--text);font-size:var(--t-base);letter-spacing:.01em;
  text-shadow:0 2px 10px rgba(0,0,0,.8)}

.b-chrome{background:var(--chrome);background-size:100% .88em;background-repeat:repeat-y;
  -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}

.b-link{color:var(--text);text-decoration:none;font-weight:600;
  background-image:linear-gradient(var(--gold),var(--gold));background-size:100% 2px;background-repeat:no-repeat;
  background-position:0 100%;padding-bottom:2px;transition:background-size .22s var(--ease),color .22s var(--ease)}
.b-link:hover{color:var(--gold);background-size:100% 3px}

/* ---------------------------------------------------------------------
   5. BUTTONS
   --------------------------------------------------------------------- */
.b-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-family:var(--text-face);
  font-weight:800;font-size:var(--t-sm);line-height:1;letter-spacing:.03em;text-transform:uppercase;
  padding:16px 24px 17px;border:2px solid #050403;border-radius:0;text-decoration:none;cursor:pointer;
  box-shadow:var(--stamp);transition:transform .14s var(--ease),box-shadow .14s var(--ease),
             background-color .14s var(--ease),color .14s var(--ease),border-color .14s var(--ease)}
.b-btn:hover{transform:translate(-1px,-2px);box-shadow:var(--stamp-hi)}
.b-btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 rgba(6,5,4,.92)}
.b-btn:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
a.b-btn.b-btn-gold,.b-btn-gold{background:var(--gold);color:#120D02;box-shadow:var(--stamp),inset 0 -4px 0 var(--gold-deep)}
a.b-btn.b-btn-gold:hover{background:var(--gold-hi);color:#120D02}
a.b-btn.b-btn-line,.b-btn-line{background:rgba(10,9,8,.72);color:var(--text);border-color:var(--text)}
a.b-btn.b-btn-line:hover{color:var(--gold);border-color:var(--gold)}
a.b-btn.b-btn-black,.b-btn-black{background:#070605;color:var(--gold);border-color:#070605}

/* ---------------------------------------------------------------------
   6. SITE CHROME
   --------------------------------------------------------------------- */
header.bywh{position:sticky;top:0;z-index:900;background:#050403;border:0;border-bottom:1px solid var(--rule);
  padding:0;margin:0;height:auto;font-family:var(--text-face);box-shadow:0 14px 30px -26px #000}
.bywh-in{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter);height:76px;
  display:flex;align-items:center;gap:var(--s-4)}
.bywh-logo{display:block;flex:none;line-height:0}
.bywh-logo img{height:48px;width:auto;display:block;max-width:none;background:none;padding:0;border-radius:0}
.bywh-nav{display:flex;align-items:center;gap:2px;margin-right:auto}
.bywh-nav a,.bywh-dd>a{display:block;padding:10px 12px;font-size:var(--t-sm);font-weight:600;font-stretch:90%;
  color:var(--text);text-decoration:none;margin:0;line-height:1.2;position:relative;transition:color .16s var(--ease)}
.bywh-nav a::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;background:var(--gold);
  transform:scaleX(0);transform-origin:left;transition:transform .2s var(--ease)}
.bywh-nav a:hover,.bywh-dd:hover>a{color:var(--gold)}
.bywh-nav a:hover::after,.bywh-nav a[aria-current="page"]::after{transform:scaleX(1)}
.bywh-nav a[aria-current="page"]{color:var(--gold)}
.bywh-dd{position:relative}
.bywh-ddm{position:absolute;top:100%;left:0;min-width:246px;background:#070605;border:1px solid var(--rule);
  padding:var(--s-2);display:none;flex-direction:column;box-shadow:var(--lift-2)}
.bywh-dd:hover .bywh-ddm,.bywh-dd:focus-within .bywh-ddm{display:flex}
.bywh-ddm a{padding:9px 10px;font-size:var(--t-sm);font-weight:500;font-stretch:100%;color:var(--text)}
.bywh-ddm a::after{display:none}
.bywh-ddm a:hover{background:var(--ink-800);color:var(--gold)}
.bywh-ddm .bywh-ddm-all{margin-top:var(--s-1);border-top:1px solid var(--rule);padding-top:var(--s-3);color:var(--text-dim)}
.bywh-act{display:flex;align-items:center;gap:var(--s-3);flex:none}
.bywh-icon{display:grid;place-items:center;width:40px;height:40px;color:var(--text);transition:color .16s var(--ease)}
.bywh-icon:hover{color:var(--gold)}
.bywh-login{font-size:var(--t-sm);color:var(--text-dim);text-decoration:none}
.bywh-login:hover{color:var(--text)}
.bywh .b-btn{padding:12px 18px 13px;gap:0;box-shadow:3px 3px 0 rgba(0,0,0,.9)}
.bywh .b-btn:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 rgba(0,0,0,.9)}
.bywh-long{white-space:pre}
.bywh-toggle{display:none;background:rgba(10,9,8,.6);border:2px solid var(--text);color:var(--text);
  font:800 14px/1 var(--text-face);letter-spacing:.04em;text-transform:uppercase;padding:13px 15px;cursor:pointer;
  box-shadow:3px 3px 0 rgba(0,0,0,.9)}
.bywh-toggle[aria-expanded="true"]{border-color:var(--gold);color:var(--gold)}
.bywh-menu{border-top:1px solid var(--rule);background:#050403;padding:var(--s-4) var(--gutter) var(--s-6);
  max-height:calc(100dvh - 76px);overflow:auto}
.bywh-menu[hidden]{display:none}
.bywh-msearch{display:flex;gap:var(--s-2);margin-bottom:var(--s-4)}
.bywh-msearch input{flex:1;min-width:0;background:var(--ink-700);border:1px solid var(--rule);color:var(--text);
  font:400 17px var(--text-face);padding:14px}
.bywh-msearch button{background:var(--text);color:#120D02;border:0;font:800 14px var(--text-face);
  text-transform:uppercase;letter-spacing:.04em;padding-inline:18px}
.bywh-mcols{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--s-3) var(--s-5)}
.bywh-mmain a{display:block;font-family:var(--display);text-transform:uppercase;font-size:30px;line-height:1.3;
  color:var(--text);text-decoration:none}
.bywh-mmain a[aria-current="page"]{color:var(--gold)}
.bywh-march a{display:block;font-size:var(--t-sm);color:var(--text-dim);text-decoration:none;padding:6px 0}
.bywh-march a:hover{color:var(--gold)}
.bywh-mh{font-family:var(--hand);font-size:var(--t-sm);color:var(--text-faint);margin:0 0 var(--s-2)}
.bywh-mdiscord{margin-top:var(--s-5);width:100%}
@media (max-width:1100px){ .bywh-login{display:none} .bywh-nav a,.bywh-dd>a{padding:10px 8px} }
@media (max-width:960px){
  .bywh-nav,.bywh-icon{display:none}
  .bywh-toggle{display:inline-block}
  .bywh-in{justify-content:space-between;height:66px}
  .bywh-logo img{height:40px}
  .bywh-long{display:none}
}
@media (max-width:430px){ .bywh-mcols{grid-template-columns:1fr} .bywh-logo img{height:34px} .bywh-act{gap:var(--s-2)} }

footer.bywf{background:#050403;border-top:2px solid var(--gold);margin:0;padding:0;color:var(--text-dim);
  font-family:var(--text-face);font-size:var(--t-sm);line-height:1.5;text-align:left}
.bywf-in{max-width:var(--wrap);margin-inline:auto;padding:var(--s-6) var(--gutter) var(--s-5);
  display:grid;grid-template-columns:minmax(200px,260px) 1fr;gap:var(--s-6)}
.bywf-brand img{width:168px;height:auto;display:block}
.bywf-brand p{margin:var(--s-3) 0 var(--s-4);color:var(--text-faint)}
.bywf-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-4)}
.bywf-cols a{display:block;color:var(--text-dim);text-decoration:none;padding:3px 0;transition:color .16s var(--ease)}
.bywf-cols a:hover{color:var(--gold)}
.bywf .bywf-h{font-family:var(--display);text-transform:uppercase;font-size:17px;letter-spacing:.03em;
  color:var(--text);margin:0 0 var(--s-2)}
.bywf-base{max-width:var(--wrap);margin-inline:auto;padding:var(--s-3) var(--gutter) var(--s-5);
  border-top:1px solid var(--rule-soft);display:flex;align-items:center;justify-content:space-between;
  gap:var(--s-4);flex-wrap:wrap}
.bywf-base p{margin:0;max-width:64ch;font-size:var(--t-xs);color:var(--text-faint)}
@media (max-width:900px){ .bywf-in{grid-template-columns:1fr} .bywf-cols{grid-template-columns:1fr 1fr} }

/* ---------------------------------------------------------------------
   7. COMPONENTS
   --------------------------------------------------------------------- */

/* the Discord panel */
.b-board{background:rgba(9,8,7,.86);border:1px solid var(--rule);padding:var(--s-4)}
.b-board-h{font-family:var(--display);text-transform:uppercase;font-size:var(--t-h3);line-height:1;
  letter-spacing:.01em;color:var(--text);margin:0 0 var(--s-3)}
.b-board ul{list-style:none;margin:0;padding:0}
.b-board li{padding:11px 0;border-bottom:1px solid var(--rule-soft);font-size:var(--t-sm);color:var(--text)}
.b-board li:last-of-type{border-bottom:0}
.b-board-live{margin:var(--s-3) 0 0;padding-top:var(--s-3);border-top:1px solid var(--rule-soft);
  font-size:var(--t-xs);color:var(--text-dim)}
.b-board-live b{color:var(--gold);font-weight:700;font-variant-numeric:tabular-nums}
.b-board-live[hidden]{display:none}

/* photo bands */
.b-band{position:relative;padding-block:var(--s-8);background-position:center;background-size:cover;
  background-color:#0a0908;isolation:isolate}
.b-band::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(96deg,rgba(6,5,4,.95) 0%,rgba(6,5,4,.78) 46%,rgba(6,5,4,.42) 100%)}
.b-pull{font-family:var(--display);text-transform:uppercase;font-size:var(--t-pull);line-height:1.01;
  letter-spacing:.004em;max-width:15ch;margin:0;color:#fff;text-shadow:2px 3px 0 rgba(0,0,0,.75)}
.b-pull em{font-style:normal;color:var(--gold)}

/* hero: the band with room to breathe and a wash the headline can sit on */
.b-hero{padding-block:var(--s-8) var(--s-7)}
.b-hero::before{background:linear-gradient(92deg,rgba(6,5,4,.95) 0%,rgba(6,5,4,.84) 44%,rgba(6,5,4,.44) 100%),
                           linear-gradient(180deg,rgba(6,5,4,.66) 0%,rgba(6,5,4,.08) 38%,rgba(6,5,4,.8) 100%)}
.b-hero h1{text-shadow:0 2px 22px rgba(0,0,0,.7)}
.b-hero .b-lede{color:var(--text)}

/* prints */
.b-snap{position:relative;background:#E9E2D2;padding:14px 14px 52px;box-shadow:var(--print);margin:0;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.b-snap img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#cfcabd;
  filter:saturate(.9) contrast(1.04)}
.b-snap figcaption{position:absolute;left:16px;right:16px;bottom:15px;color:#1b1a18;font-family:var(--hand);
  font-size:var(--t-sm);line-height:1.25}
.b-snap--wide img{aspect-ratio:16/9}
.b-snap:hover{transform:translateY(-3px);box-shadow:0 26px 48px -18px rgba(0,0,0,.85),2px 3px 0 rgba(0,0,0,.35)}
.b-snap a{display:block}
.b-snap a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}

/* the flyer */
.b-flyer{position:relative;background:#070605;background-position:center 60%;background-size:cover;
  border-block:6px solid var(--gold);padding-block:var(--s-7);isolation:isolate}
.b-flyer::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(96deg,rgba(5,4,3,.94),rgba(5,4,3,.55))}
.b-flyer h2{font-family:var(--display);text-transform:uppercase;font-size:clamp(42px,2.2rem + 6vw,116px);
  line-height:.86;color:var(--gold);text-shadow:0 3px 24px rgba(0,0,0,.7);margin:0}
.b-stamp{display:inline-block;border:3px solid var(--gold);color:var(--gold);font-family:var(--display);
  text-transform:uppercase;font-size:16px;letter-spacing:.09em;padding:7px 14px 6px}

/* federation directory */
.b-roll{border-block:3px double var(--rule);padding-block:var(--s-4) var(--s-5)}
.b-roll-head{display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);flex-wrap:wrap}
.b-roll-head p{margin:0;color:var(--text-faint);font-size:var(--t-sm)}
.b-roll-head b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}
.b-wall{font-family:var(--display);text-transform:uppercase;font-size:clamp(24px,1.2rem + 2.6vw,46px);
  line-height:1.16;color:#5E5A53;max-height:calc(1.16em * 4);overflow:hidden;margin-top:var(--s-3)}
.b-wall.clip{-webkit-mask-image:linear-gradient(180deg,#000 62%,transparent);mask-image:linear-gradient(180deg,#000 62%,transparent)}
.b-wall.open{max-height:none;-webkit-mask-image:none;mask-image:none}
.b-wall .w{white-space:nowrap}
.b-wall a{color:inherit;text-decoration:none;transition:color .14s var(--ease)}
.b-wall a:hover,.b-wall a:focus-visible{color:var(--gold)}
.b-wall .lk{display:inline-block;width:.5em;height:.29em;margin-inline:.26em;vertical-align:.22em;color:var(--gold-ink)}
.b-roll-more{display:flex;gap:var(--s-4);flex-wrap:wrap;align-items:center;margin-top:var(--s-3);font-size:var(--t-sm)}
.b-roll-more button{background:none;border:0;padding:0;color:var(--text);font:600 var(--t-sm) var(--text-face);
  cursor:pointer;text-decoration:underline;text-underline-offset:4px}

/* index of archive sections */
.b-index{list-style:none;margin:0;padding:0}
.b-index li{border-top:1px solid var(--rule)}
.b-index li:last-child{border-bottom:1px solid var(--rule)}
.b-index a{display:block;padding:var(--s-3) var(--s-3) var(--s-3) 0;text-decoration:none;
  transition:background-color .16s var(--ease),padding-left .16s var(--ease)}
.b-index a:hover{background:var(--ink-800);padding-left:var(--s-3)}
.b-index .n{display:block;font-family:var(--display);text-transform:uppercase;
  font-size:clamp(22px,1.1rem + 1.1vw,30px);line-height:1.04;color:var(--text);transition:color .16s var(--ease)}
.b-index .d{display:block;color:var(--text-faint);font-size:var(--t-sm);margin-top:4px}
.b-index a:hover .n{color:var(--gold)}
.b-index .c{display:none}
.b-index .c:not(:empty){display:block;margin-top:7px;font-family:var(--display);
  text-transform:uppercase;letter-spacing:.11em;font-size:11px;line-height:1;
  color:var(--text-faint)}
.b-index .soon{display:block;padding:var(--s-3) var(--s-3) var(--s-3) 0;opacity:.62}
.b-index .soon .n{color:var(--text-faint)}
.b-index .soon .tag{display:inline-block;margin-top:7px;font-family:var(--display);
  text-transform:uppercase;letter-spacing:.11em;font-size:11px;line-height:1;
  color:var(--gold);border:1px solid var(--rule);border-radius:2px;padding:4px 7px}

/* plain link list */
.b-list{list-style:none;margin:0;padding:0}
.b-list li{border-top:1px solid var(--rule)}
.b-list li:last-child{border-bottom:1px solid var(--rule)}
.b-list a{display:block;padding:14px 0;text-decoration:none;font-weight:600;
  transition:color .16s var(--ease),transform .16s var(--ease)}
.b-list a:hover{color:var(--gold);transform:translateX(6px)}

/* page furniture shared with about / community / game / archive / search */
.b-pagehead{padding-block:var(--s-7) var(--s-5)}
.b-pagehead h1{font-family:var(--display);text-transform:uppercase;font-size:clamp(42px,2rem + 5vw,104px);line-height:.9}
.b-pagehead .b-lede{margin-top:var(--s-4);color:var(--text);max-width:48ch}
.b-crumbs{font-size:var(--t-xs);color:var(--text-faint);padding-top:var(--s-4)}
.b-crumbs a{color:var(--text-faint);text-decoration:none}
.b-crumbs a:hover{color:var(--text)}
.b-sec-head{display:flex;align-items:end;justify-content:space-between;gap:var(--s-4);flex-wrap:wrap;margin-bottom:var(--s-5)}
.b-sec-head .b-lede{margin:var(--s-3) 0 0}
.b-cta{display:flex;flex-wrap:wrap;gap:var(--s-3);align-items:center}
.b-live{margin:var(--s-3) 0 0;font-size:var(--t-sm);color:var(--text-dim)}
.b-live b{color:var(--gold);font-weight:700;font-variant-numeric:tabular-nums}
.b-live[hidden]{display:none}
.b-also{margin:var(--s-3) 0 0;font-size:var(--t-sm)}
.b-split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:var(--s-6);align-items:start}
.b-ways{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--rule)}
.b-ways--one{grid-template-columns:1fr}
.b-ways--one .b-way{padding-right:0;max-width:62ch}
.b-way{padding:var(--s-6) var(--s-5) var(--s-6) 0}
.b-way+.b-way{border-left:1px solid var(--rule);padding-left:var(--s-5);padding-right:0}
.b-way p{color:var(--text-dim);max-width:44ch;margin:var(--s-3) 0 var(--s-4)}
.b-way ul{list-style:none;margin:0;padding:0}
.b-way li{border-top:1px solid var(--rule)}
.b-way li a{display:block;padding:13px 0;text-decoration:none;font-weight:600;
  transition:color .16s var(--ease),transform .16s var(--ease)}
.b-way li a:hover{color:var(--gold);transform:translateX(6px)}
.b-give{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:var(--s-5)}
.b-give li{border-top:1px solid var(--rule);padding:15px 0}
.b-give a{display:block;font-weight:600;text-decoration:none;transition:color .16s var(--ease),transform .16s var(--ease)}
.b-give a:hover{color:var(--gold);transform:translateX(6px)}
.b-give span{display:block;color:var(--text-faint);font-size:var(--t-sm);margin-top:2px}
.b-bigl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:var(--s-5)}
.b-bigl li{font-family:var(--display);text-transform:uppercase;font-size:clamp(20px,1rem + 1.1vw,30px);
  line-height:1.1;padding:var(--s-3) 0;border-top:1px solid var(--rule)}
.b-three{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--rule)}
.b-three.b-two{grid-template-columns:repeat(2,1fr)}
.b-three>div{padding:var(--s-5) var(--s-4) var(--s-2) 0}
.b-three>div+div{border-left:1px solid var(--rule);padding-left:var(--s-4)}
.b-three p{color:var(--text-dim);margin-top:var(--s-3)}
.b-invite{display:flex;flex-wrap:wrap;gap:var(--s-3) var(--s-5);align-items:center;padding-block:var(--s-5);
  border-block:1px solid var(--rule)}
.b-invite code{font:600 17px var(--text-face);color:var(--text);background:var(--ink-700);padding:9px 13px}
.b-empty{border:1px dashed var(--rule);padding:var(--s-4);color:var(--text-dim)}
.b-search{display:flex;max-width:720px;margin:0 0 var(--s-5);border:2px solid var(--text);background:var(--ink-700);
  transition:border-color .16s var(--ease)}
.b-search:focus-within{border-color:var(--gold)}
.b-search input{flex:1;min-width:0;background:transparent;border:0;color:var(--text);
  font:400 var(--t-lede) var(--text-face);padding:16px 18px;outline:none}
.b-search input::placeholder{color:var(--text-faint)}
.b-search button{background:var(--text);color:#120D02;border:0;font:800 var(--t-sm) var(--text-face);
  text-transform:uppercase;letter-spacing:.04em;padding-inline:22px;cursor:pointer}
.b-search button:hover{background:var(--gold)}
.b-status-line{color:var(--text-dim);margin:0 0 var(--s-2)}
.b-results{list-style:none;margin:0;padding:0}
.b-results li{border-top:1px solid var(--rule)}
.b-results a{display:grid;grid-template-columns:1fr auto;gap:4px var(--s-4);padding:var(--s-3) 0;text-decoration:none}
.b-results .n{font-weight:600;font-size:var(--t-lede)}
.b-results .k{color:var(--text-faint);font-size:var(--t-sm);grid-column:2;grid-row:1;align-self:center}
.b-results .a{color:var(--text-dim);font-size:var(--t-sm);grid-column:1}
.b-results a:hover .n{color:var(--gold)}
.b-rgroup{margin-top:var(--s-5)}
.b-rgroup h2{font-family:var(--display);text-transform:uppercase;font-size:var(--t-h3);margin-bottom:var(--s-2)}
.b-recent h2{font-family:var(--display);text-transform:uppercase;font-size:var(--t-h3);margin-bottom:var(--s-3)}
.b-recent ol{list-style:none;margin:0;padding:0}
.b-recent li{display:grid;grid-template-columns:62px 1fr;gap:var(--s-3);padding:12px 0;border-top:1px solid var(--rule)}
.b-recent time{font-size:var(--t-xs);color:var(--text-faint);font-variant-numeric:tabular-nums;padding-top:3px}
.b-recent a{text-decoration:none;font-weight:600;line-height:1.35}
.b-recent a:hover{color:var(--gold)}
.b-recent .k{display:block;font-size:var(--t-xs);color:var(--text-faint);margin-top:2px}
.b-media,.b-reel{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-5) var(--s-4);
  grid-template-columns:repeat(3,1fr)}
.b-media a,.b-reel a{display:block;text-decoration:none}
.b-media .th,.b-reel .th{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;
  border:1px solid var(--rule);transition:border-color .16s var(--ease)}
.b-media .t,.b-reel .t{display:block;margin-top:var(--s-2);font-weight:600;line-height:1.35}
.b-media .d{display:block;color:var(--text-faint);font-size:var(--t-xs);margin-top:3px}
.b-media a:hover .t,.b-reel a:hover .t{color:var(--gold)}
.b-media a:hover .th,.b-reel a:hover .th{border-color:var(--gold)}
.b-photos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-2)}
.b-photos img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.b-shots{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-3)}
.b-updates{list-style:none;margin:0;padding:0}
.b-updates li{display:grid;grid-template-columns:120px 1fr;gap:var(--s-4);padding:var(--s-3) 0;border-top:1px solid var(--rule)}
.b-updates time{color:var(--text-faint);font-size:var(--t-sm)}
.b-excerpt{font-size:var(--t-lede);line-height:1.6;max-width:54ch;margin-top:var(--s-4)}
.b-excerpt .b-beat{font-family:var(--display);text-transform:uppercase;font-size:1.55em;line-height:1.04;color:var(--gold)}
.b-memoriam{margin-top:var(--s-4);padding-top:var(--s-3);border-top:1px solid var(--rule);color:var(--text-faint);font-size:var(--t-sm)}
.b-memoriam a{color:var(--text)}

/* long-form story */
.b-story-grid{display:grid;grid-template-columns:210px minmax(0,1fr);gap:var(--s-6);align-items:start}
.b-toc{position:sticky;top:104px;font-size:var(--t-sm)}
.b-toc p{color:var(--text-faint);margin:0 0 var(--s-2);font-family:var(--hand)}
.b-toc a{display:block;padding:7px 0 7px 12px;border-left:2px solid var(--rule);color:var(--text-dim);
  text-decoration:none;line-height:1.3;transition:color .16s var(--ease),border-color .16s var(--ease)}
.b-toc a:hover,.b-toc a.on{color:var(--text);border-left-color:var(--gold)}
.b-story{max-width:64ch;font-size:clamp(17.5px,1rem + .35vw,19.5px);line-height:1.74}
.b-story p{margin:0 0 1.15em}
.b-story h2{font-family:var(--display);text-transform:uppercase;font-size:clamp(30px,1.6rem + 2vw,46px);
  line-height:1;margin:1.9em 0 .7em;scroll-margin-top:104px}
.b-story .b-first{font-size:1.16em;line-height:1.62;color:#F3F1EB}
.b-story .b-beat{font-family:var(--display);text-transform:uppercase;font-size:clamp(26px,1.4rem + 1.6vw,42px);
  line-height:1.04;margin:1em 0}
.b-story .b-beat.gold{color:var(--gold)}
.b-story .b-close{font-family:var(--display);text-transform:uppercase;font-size:clamp(28px,1.5rem + 1.8vw,46px);line-height:1.04}
.b-story a.wikilink{color:var(--text);text-decoration:underline;text-decoration-color:var(--gold-ink);text-underline-offset:3px}
.b-story a.wikilink:hover{color:var(--gold)}
.b-keepers{list-style:none;margin:0 0 1.15em;padding:0;border-top:1px solid var(--rule)}
.b-keepers li{border-bottom:1px solid var(--rule);padding:9px 0}
.b-doc{margin:2.4em 0;border:1px solid var(--rule);background:var(--ink-800);box-shadow:var(--lift-2)}
.b-doc button{display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;cursor:pointer;position:relative;
  background:#111 center/cover no-repeat}
.b-doc button::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-40%,-50%);border-style:solid;
  border-width:22px 0 22px 36px;border-color:transparent transparent transparent var(--gold);
  filter:drop-shadow(0 2px 6px #000)}
.b-doc iframe{display:block;width:100%;aspect-ratio:16/9;border:0}
.b-doc .cap{padding:var(--s-3) var(--s-4);font-size:var(--t-sm);color:var(--text-dim);margin:0}
.b-doc .cap b{color:var(--text);font-weight:600}
.b-memorial{margin-top:3em;padding:var(--s-5);border:1px solid var(--rule);border-top:3px solid var(--silver)}
.b-memorial h2{margin-top:0}

/* related footage block on archive entity pages */
.byw-footage ul{list-style:none;margin:var(--s-3) 0 0;padding:0;display:grid;gap:var(--s-3)}
.byw-footage li{display:grid;grid-template-columns:128px 1fr;gap:var(--s-3);align-items:center}
.byw-footage img{width:128px;aspect-ratio:16/9;object-fit:cover;display:block;border:1px solid var(--rule)}
.byw-footage a{color:inherit;text-decoration:none}
.byw-footage .t{font-weight:600;display:block}
.byw-footage .s{font-size:var(--t-xs);color:var(--text-faint)}
.byw-footage a:hover .t{color:var(--gold)}
.byw-footage-note{font-size:var(--t-xs);color:var(--text-faint);margin-top:var(--s-3)}

/* ---------------------------------------------------------------------
   8. RESPONSIVE
   --------------------------------------------------------------------- */
@media (max-width:1000px){
  .b-grid{column-gap:var(--s-3)}
  .c1-6,.c1-7,.c1-8,.c2-8,.c2-9,.c3-10,.c6-13,.c7-13,.c8-13{grid-column:1/13}
  .drop-1,.drop-2{margin-top:var(--s-4)}
  .b-split,.b-story-grid{grid-template-columns:1fr}
  .b-toc{display:none}
  .b-media,.b-reel,.b-shots{grid-template-columns:1fr 1fr}
  .b-photos{grid-template-columns:repeat(3,1fr)}
  .b-band::before{background:linear-gradient(180deg,rgba(6,5,4,.94) 0%,rgba(6,5,4,.62) 40%,rgba(6,5,4,.95) 100%)}
  .b-hero h1{text-shadow:0 2px 14px rgba(0,0,0,.9)}
}
@media (max-width:760px){
  .b-ways,.b-give,.b-bigl,.b-three,.b-three.b-two{grid-template-columns:1fr}
  .b-way,.b-way+.b-way{padding:var(--s-5) 0;border-left:0;margin-top:0}
  .b-way+.b-way{border-top:1px solid var(--rule)}
  .b-three>div,.b-three>div+div{border-left:0;border-top:1px solid var(--rule);padding:var(--s-4) 0 var(--s-2)}
  .b-three{border-top:0}
  .b-media,.b-reel{grid-template-columns:1fr}
  .b-photos{grid-template-columns:1fr 1fr}
  .b-snap{max-width:430px;margin-inline:auto}
  .b-updates li{grid-template-columns:1fr;gap:4px}
  .b-wall .w{white-space:normal}
  .b-pull{max-width:19ch}
}

/* ---------------------------------------------------------------------
   9. MOTION
   --------------------------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .b-snap:hover,.b-btn:hover,.b-list a:hover,.b-way li a:hover,.b-give a:hover{transform:none}
}

/* ---------------------------------------------------------------------
   RECOVERED BOARDS  (/recovered)
   Two separate boards. These panels are the switch between them and they
   are deliberately large: the thin text link they replaced was easy to
   walk straight past.
   --------------------------------------------------------------------- */
.b-boards{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-4);margin-top:var(--s-5)}
.b-board{display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-5) var(--s-4) var(--s-4);
  background:var(--ink-800);border:2px solid var(--rule);text-decoration:none;box-shadow:var(--stamp);
  transition:transform .14s var(--ease),border-color .14s var(--ease),
             background-color .14s var(--ease),box-shadow .14s var(--ease)}
.b-board:hover{transform:translate(-1px,-2px);border-color:var(--gold);background:var(--ink-700);
  box-shadow:var(--stamp-hi)}
.b-board:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.b-board .nm{font-family:var(--display);text-transform:uppercase;line-height:.95;
  font-size:clamp(26px,1.3rem + 1.8vw,44px);color:var(--text)}
.b-board:hover .nm{color:var(--gold)}
.b-board .wh{font-size:var(--t-sm);color:var(--gold);font-weight:700;letter-spacing:.04em;
  text-transform:uppercase}
.b-board .ct{font-size:var(--t-sm);color:var(--text-dim);line-height:1.5}
.b-board .go{margin-top:auto;font-family:var(--text-face);font-weight:800;font-size:var(--t-xs);
  letter-spacing:.07em;text-transform:uppercase;color:var(--text-faint)}
.b-board:hover .go{color:var(--gold)}
@media (max-width:760px){.b-boards{grid-template-columns:1fr}}

.b-figs{display:flex;flex-wrap:wrap;gap:var(--s-5) var(--s-6);margin-top:var(--s-5);
  padding-block:var(--s-4);border-block:1px solid var(--rule)}
.b-figs div{min-width:94px}
.b-figs .f{display:block;font-family:var(--display);line-height:1;color:var(--gold);
  font-size:clamp(30px,1.5rem + 2vw,48px)}
.b-figs .l{display:block;margin-top:6px;font-size:var(--t-xs);color:var(--text-faint);
  letter-spacing:.05em;text-transform:uppercase}


/* account link in the header: Log In / My Profile / Admin, plus Sign out */
.bywh-acct{display:inline-flex;align-items:center;font-family:var(--display);
  text-transform:uppercase;letter-spacing:.09em;font-size:12px;line-height:1;
  color:var(--text-faint);text-decoration:none;padding:9px 10px;border-radius:2px;
  background:none;border:0;cursor:pointer;white-space:nowrap;
  transition:color .16s var(--ease)}
.bywh-acct:hover{color:var(--gold)}
.bywh-out{color:var(--text-faint);opacity:.75}
@media(max-width:860px){.bywh-acct{display:none}}
.bywh-macct{display:flex;gap:14px;align-items:center;padding:14px 0 4px}
.bywh-macct a,.bywh-macct button{font-family:var(--display);text-transform:uppercase;
  letter-spacing:.09em;font-size:13px;color:var(--text-faint);text-decoration:none;
  background:none;border:0;padding:0;cursor:pointer}
.bywh-macct a:hover,.bywh-macct button:hover{color:var(--gold)}
