
@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/anton.woff2) format('woff2')}
@font-face{font-family:'Graduate';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/graduate.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/barlow-400.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/barlow-600.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/barlow-700.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/barlowc-600.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/barlowc-700.woff2) format('woff2')}
@font-face{font-family:'Permanent Marker';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/marker.woff2) format('woff2')}

:root{
  --ink:#0c0a07;--ink2:#131009;--gold:#f5b301;--gold-b:#ffc71f;--gold-d:#a97f00;
  --paper:#f5f0e4;--stitch:#d63a20;--line:rgba(245,179,1,.22);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--ink);color:var(--paper);font-family:'Barlow',sans-serif;overflow-x:hidden}
::selection{background:var(--gold);color:#000}

/* ---------- textures ---------- */
.noise{position:relative}
.noise::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.45;mix-blend-mode:overlay;z-index:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E")}
.noise>*{position:relative;z-index:1}
.chainlink{background-image:repeating-linear-gradient(63deg,transparent 0 34px,rgba(255,255,255,.04) 34px 36px),repeating-linear-gradient(-63deg,transparent 0 34px,rgba(255,255,255,.04) 34px 36px)}
.diamonds{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Crect x='60' y='10' width='50' height='50' transform='rotate(45 85 35)' fill='none' stroke='rgba(245,179,1,0.05)' stroke-width='1.5'/%3E%3C/svg%3E")}

/* ---------- loader ---------- */
#loader{position:fixed;inset:0;z-index:200;background:#080604;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;transition:opacity .5s,visibility .5s}
#loader.gone{opacity:0;visibility:hidden}
#loader .lball{width:90px;height:90px;animation:lspin 1.4s linear infinite}
#loader .ltxt{font-family:'Graduate',serif;letter-spacing:.4em;color:var(--gold-b);font-size:13px;text-transform:uppercase}
@keyframes lspin{to{transform:rotate(360deg)}}

/* ---------- ESPN bottomline wire ---------- */
.wire{display:flex;align-items:stretch;background:#000;border-bottom:1px solid rgba(245,179,1,.35);height:34px;overflow:hidden}
.wire .tag{flex:0 0 auto;display:flex;align-items:center;gap:7px;background:var(--gold);color:#000;font-family:'Graduate',serif;font-size:11px;letter-spacing:.18em;padding:0 14px;clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%);z-index:2}
.wire .feed{flex:1;overflow:hidden;display:flex;align-items:center}
.wire .feedtrack{display:flex;width:max-content;animation:wireslide 30s linear infinite}
.wire .feedtrack span{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:13.5px;letter-spacing:.08em;text-transform:uppercase;color:#e8e2d2;padding:0 26px;white-space:nowrap}
.wire .feedtrack span b{color:var(--gold-b)}
.wire .feedtrack span::before{content:"●";color:var(--stitch);font-size:8px;margin-right:26px;vertical-align:1px}
@keyframes wireslide{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- nav ---------- */
nav.top{position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:28px;padding:10px 28px;background:rgba(8,7,4,.9);backdrop-filter:blur(10px);border-bottom:2px solid var(--gold);transition:padding .25s}
nav.top.small{padding:5px 28px}
nav.top .logo{height:52px;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.6));transition:height .25s}
nav.top.small .logo{height:42px}
nav.top .links{display:flex;gap:24px;margin-left:auto;align-items:center}
nav.top a.nl{color:var(--paper);text-decoration:none;font-family:'Barlow Condensed',sans-serif;font-weight:600;letter-spacing:.14em;font-size:14px;text-transform:uppercase;padding:6px 2px;border-bottom:2px solid transparent;transition:.18s}
nav.top a.nl:hover{color:var(--gold-b);border-bottom-color:var(--gold)}
.btn{display:inline-flex;align-items:center;gap:9px;text-decoration:none;cursor:pointer;font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:14px 28px;font-size:15px;line-height:1;transition:.18s;border:2px solid var(--gold);position:relative;overflow:hidden}
.btn-gold{background:var(--gold);color:#100d07}
.btn-gold::before{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);transition:left .45s}
.btn-gold:hover::before{left:130%}
.btn-gold:hover{background:var(--gold-b);transform:translateY(-2px);box-shadow:0 8px 26px rgba(245,179,1,.4)}
.btn-ghost{background:rgba(0,0,0,.25);color:var(--paper)}
.btn-ghost:hover{background:rgba(245,179,1,.14);transform:translateY(-2px)}
nav.top .btn{padding:11px 20px;font-size:13px}

/* ---------- traveling softball ---------- */


/* ---------- hero ---------- */
header.hero{position:relative;isolation:isolate;min-height:102vh;display:flex;align-items:center;padding:40px 6vw 110px;background:radial-gradient(1300px 600px at 78% 14%,rgba(245,179,1,.2),transparent 62%),radial-gradient(1000px 640px at 10% 96%,rgba(245,179,1,.1),transparent 60%)}
.parallax-photo{position:absolute;inset:0;z-index:-3;background-image:linear-gradient(180deg,rgba(10,9,6,.92) 0%,rgba(10,9,6,.66) 45%,rgba(10,9,6,.94) 100%),url(img/field.webp);background-size:auto,cover;background-position:center,center 30%;background-attachment:scroll,fixed;background-repeat:no-repeat}
@media (hover:none) and (pointer:coarse){.parallax-photo,.parallax-sec,.cta-band.photo{background-attachment:scroll,scroll}}
.hero .fence{position:absolute;inset:0;z-index:-1;opacity:.9}
.hero-grid{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;max-width:1050px;margin:0 auto}
.kicker{display:inline-flex;align-items:center;gap:12px;font-family:'Graduate',serif;font-size:14px;letter-spacing:.3em;color:var(--gold-b);margin:14px 0 16px;text-transform:uppercase}
.kicker .kb{width:15px;height:15px;flex:0 0 auto}
h1{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(62px,9.2vw,142px);line-height:.88;letter-spacing:.01em;text-shadow:0 6px 30px rgba(0,0,0,.55)}
h1 .solid{color:#fff}
h1 .gold{color:var(--gold);background:linear-gradient(100deg,var(--gold) 30%,#ffe38a 50%,var(--gold) 70%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:shine 5s ease-in-out infinite}
@keyframes shine{0%,100%{background-position:180% 0}45%,55%{background-position:0 0}}
h1 .outline{color:transparent;-webkit-text-stroke:1px var(--gold);text-shadow:none}
.hero p.sub{margin:24px auto 32px;max-width:580px;color:#ddd6c5;font-size:18.5px;line-height:1.6;font-weight:500}
.hero .cta-row{display:flex;gap:16px;flex-wrap:wrap;align-items:center;justify-content:center}
.hero-badge img{width:min(280px,62%);filter:drop-shadow(0 18px 50px rgba(0,0,0,.7)) drop-shadow(0 0 60px rgba(245,179,1,.2));animation:float 5.5s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0) rotate(-1.2deg)}50%{transform:translateY(-13px) rotate(1deg)}}
.scrollcue{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;opacity:.85}
.scrollcue .cb{width:22px;height:22px;animation:cuebounce 1.6s ease-in-out infinite}
.scrollcue span{font-family:'Graduate',serif;font-size:9.5px;letter-spacing:.34em;color:var(--gold-b);text-transform:uppercase}
@keyframes cuebounce{0%,100%{transform:translateY(0)}50%{transform:translateY(9px)}}

/* ---------- countdown score bug ---------- */
.bugwrap{background:#0a0906;padding:0 6vw 70px;margin-top:-60px;position:relative;z-index:5}
.scorebug{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:stretch;background:linear-gradient(160deg,#191509,#0e0c07);border:1px solid rgba(245,179,1,.4);box-shadow:0 30px 70px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.06);overflow:hidden}
.scorebug .live{display:flex;flex-direction:column;justify-content:center;gap:6px;background:var(--gold);color:#000;padding:18px 26px;clip-path:polygon(0 0,100% 0,calc(100% - 18px) 100%,0 100%);min-width:170px}
.scorebug .live .lv{display:flex;align-items:center;gap:8px;font-family:'Graduate',serif;font-size:11px;letter-spacing:.22em}
.scorebug .live .lv i{width:8px;height:8px;border-radius:50%;background:var(--stitch);animation:blink 1.2s infinite}
@keyframes blink{50%{opacity:.25}}
.scorebug .live b{font-family:'Anton',sans-serif;font-size:21px;text-transform:uppercase;line-height:1.02}
.scorebug .cdown{display:flex;align-items:center;justify-content:center;gap:clamp(10px,3vw,34px);padding:18px 10px}
.tblock{text-align:center}
.tblock b{display:block;font-family:'Anton',sans-serif;font-size:clamp(30px,4.6vw,54px);color:#fff;line-height:1;font-variant-numeric:tabular-nums}
.tblock span{font-family:'Graduate',serif;font-size:10px;letter-spacing:.26em;color:var(--gold-b);text-transform:uppercase}
.tsep{font-family:'Anton',sans-serif;font-size:clamp(22px,3vw,38px);color:var(--gold);opacity:.7;transform:translateY(-6px)}
.scorebug .go{display:flex;align-items:center;padding:0 26px}
@media(max-width:840px){.scorebug{grid-template-columns:1fr}.scorebug .live{clip-path:none;min-width:0}.scorebug .go{padding:0 26px 22px;justify-content:center}}

/* ---------- gold ticker ---------- */
.ticker{position:relative;overflow:hidden;background:var(--gold);color:#0f0c06;border-top:3px solid #000;border-bottom:3px solid #000;padding:13px 0}
.ticker .track{display:flex;width:max-content;animation:slide 26s linear infinite}
.ticker .grp{display:flex;flex:0 0 auto}
.ticker span{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:22px;letter-spacing:.06em;margin:0 24px;white-space:nowrap}
.ticker .hollow{color:transparent;-webkit-text-stroke:1px #0f0c06}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- sections & broadcast headers ---------- */
section.block{position:relative;isolation:isolate;padding:110px 6vw 120px}
.dark-a{background:linear-gradient(180deg,#0a0906,#12100a 60%,#0a0906)}
.dark-b{background:#0d0b08}
.bhead{max-width:1150px;margin:0 auto 60px;display:flex;align-items:flex-end;gap:22px;flex-wrap:wrap}
.bhead .num{flex:0 0 auto;background:var(--gold);color:#000;font-family:'Anton',sans-serif;font-size:30px;padding:10px 18px;transform:skewX(-10deg);box-shadow:6px 6px 0 rgba(245,179,1,.25)}
.bhead .num span{display:inline-block;transform:skewX(10deg)}
.bhead h2{font-family:'Anton',sans-serif;text-transform:uppercase;line-height:.92;font-size:clamp(42px,5.6vw,76px)}
.bhead h2 .outline{color:transparent;-webkit-text-stroke:1px var(--gold)}
.bhead .kick{width:100%;order:-1;font-family:'Graduate',serif;letter-spacing:.3em;font-size:12.5px;color:var(--gold-b);text-transform:uppercase;display:flex;align-items:center;gap:12px}
.bhead .kick .kb{width:14px;height:14px}
.bhead .kick::after{content:"";height:2px;flex:0 0 70px;background:var(--gold)}
.bhead .chip{margin-left:auto;font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:13px;color:#000;background:linear-gradient(180deg,var(--gold-b),var(--gold));padding:9px 16px;transform:skewX(-10deg)}
.bhead .chip span{display:inline-block;transform:skewX(10deg)}

/* ---------- gold divider ---------- */
.golddiv{height:3px;background:linear-gradient(90deg,transparent,var(--gold) 18%,var(--gold) 82%,transparent);opacity:.9}
/* ---------- stitch divider ---------- */
.stitchdiv{height:60px;position:relative;overflow:hidden;background:transparent}
.stitchdiv svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(1300px,96vw);height:60px}

/* ---------- stats band ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1150px;margin:0 auto}
.stat{position:relative;overflow:hidden;background:linear-gradient(160deg,rgba(245,179,1,.1),rgba(245,179,1,.02));border:1px solid var(--line);padding:24px 26px;transition:.25s}
.stat:hover{transform:translateY(-4px);border-color:rgba(245,179,1,.55)}
.stat::before{content:"";position:absolute;right:-26px;top:-10px;width:60px;height:140%;background:rgba(245,179,1,.09);transform:skewX(-18deg)}
.stat b{display:block;font-family:'Anton',sans-serif;font-size:38px;color:var(--gold-b);letter-spacing:.02em}
.stat span{font-family:'Barlow Condensed',sans-serif;font-weight:600;letter-spacing:.18em;text-transform:uppercase;font-size:12.5px;color:#cfc8b6}
@media(max-width:840px){.stats{grid-template-columns:1fr 1fr}}

.gold-sec{background:linear-gradient(180deg,#e6a800,#f5b301 30%,#ffc71f 55%,#e0a300);border-bottom:3px solid #000}
.gold-sec .bhead h2{color:#0f0c06}
.gold-sec .bhead h2 .outline{-webkit-text-stroke:1.4px #0f0c06;color:transparent}
.gold-sec .bhead .kick{color:#4a3a00}
.gold-sec .bhead .kick::after{background:#0f0c06}
.gold-sec .bhead .num{background:#0f0c06;color:var(--gold-b);box-shadow:6px 6px 0 rgba(0,0,0,.22)}
.gold-sec .bhead .chip{background:#0f0c06;color:var(--gold-b)}
.gold-sec::after{opacity:.28}
.gold-sec .clipboard .board{box-shadow:0 40px 90px rgba(0,0,0,.45),inset 0 2px 2px rgba(255,255,255,.18),inset 0 -3px 8px rgba(0,0,0,.5)}
/* ---------- clipboard ---------- */
.clipwrap{max-width:900px;margin:0 auto;perspective:1200px}
.clipboard{position:relative;transform:rotate(-1.4deg);transition:transform .4s}
.clipboard:hover{transform:rotate(-.6deg) translateY(-6px)}
.board{border-radius:20px;padding:54px 26px 30px;box-shadow:0 40px 90px rgba(0,0,0,.7),0 0 70px rgba(245,179,1,.22),inset 0 2px 2px rgba(255,255,255,.35),inset 0 -3px 8px rgba(0,0,0,.35);position:relative;background-image:repeating-linear-gradient(92deg,rgba(0,0,0,.06) 0 3px,transparent 3px 9px),linear-gradient(160deg,#ffd23f,#dfa303 55%,#f5b301)}
.clip{position:absolute;top:-44px;left:50%;transform:translateX(-50%);z-index:3;filter:drop-shadow(0 6px 10px rgba(0,0,0,.5))}
.paper{background:#f7f2e2;border-radius:4px;padding:44px 46px 40px;transform:rotate(.5deg);box-shadow:0 6px 18px rgba(0,0,0,.35),0 1px 0 #fff inset;color:#1d1808;background-image:repeating-linear-gradient(180deg,transparent 0 33px,rgba(70,110,170,.25) 33px 34px);position:relative}
.paper::before{content:"";position:absolute;top:0;bottom:0;left:54px;width:2px;background:rgba(214,58,32,.4)}
.paper h3{font-family:'Permanent Marker',cursive;font-size:clamp(26px,3.6vw,38px);color:#17130a;transform:rotate(-.8deg);margin-bottom:6px}
.paper h3 u{text-decoration:none;border-bottom:4px solid var(--stitch);padding-bottom:2px}
.paper .subnote{font-family:'Permanent Marker',cursive;color:#4a68a8;font-size:15px;margin-bottom:20px;transform:rotate(-.5deg)}
.ev{display:grid;grid-template-columns:150px 1fr auto;gap:8px 18px;align-items:baseline;padding:13px 0 12px;border-bottom:2px dashed rgba(29,24,8,.18);position:relative}
.ev .d{font-family:'Graduate',serif;font-size:17px;color:#8a6b00;letter-spacing:.04em;white-space:nowrap}
.ev .t b{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:21px;letter-spacing:.03em;display:block;line-height:1.1}
.ev .t span{font-size:13.5px;color:#59523f;font-weight:600}
.ev .mark{font-family:'Permanent Marker',cursive;font-size:14px;color:var(--stitch);transform:rotate(-2deg);white-space:nowrap}
.ev.done .t b{text-decoration:line-through;text-decoration-thickness:3px;text-decoration-color:rgba(214,58,32,.75)}
.ev.done .mark{color:#3d7a3d}
.ev .ball-bullet{position:absolute;left:-28px;top:18px;width:16px;height:16px}
.paper .foot{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:26px}
.paper .foot .sig{font-family:'Permanent Marker',cursive;font-size:17px;color:#17130a;transform:rotate(-1.4deg)}
.tape{position:absolute;width:120px;height:32px;background:rgba(240,230,190,.55);box-shadow:0 2px 6px rgba(0,0,0,.18);transform:rotate(-40deg)}
.tape.t1{top:-12px;left:-40px}
.tape.t2{bottom:-10px;right:-44px;transform:rotate(-42deg)}
@media(max-width:700px){.ev{grid-template-columns:1fr}.paper{padding:36px 26px 32px}.paper::before{left:26px}}

/* ---------- announcements: lower thirds ---------- */
.lthirds{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:26px}
@media(max-width:900px){.lthirds{grid-template-columns:1fr}}
.lt{position:relative;background:linear-gradient(165deg,#16130b,#0f0d08);border:1px solid var(--line);overflow:hidden;transition:.25s}
.lt:hover{transform:translateY(-5px);border-color:rgba(245,179,1,.5);box-shadow:0 24px 50px rgba(0,0,0,.5)}
.lt .bar{display:flex;align-items:center;gap:0;border-bottom:1px solid rgba(245,179,1,.25)}
.lt .bar .brk{background:var(--stitch);color:#fff;font-family:'Graduate',serif;font-size:10.5px;letter-spacing:.2em;padding:9px 14px;clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%)}
.lt .bar .dt{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:#a79f8b;padding:0 16px}
.lt .body{padding:26px 28px 30px}
.lt h4{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:23px;letter-spacing:.02em;color:#fff;line-height:1.12;margin-bottom:14px}
.lt p{color:#cfc8b6;font-size:15.5px;line-height:1.66;margin-bottom:12px}
.lt p strong{color:var(--gold-b)}
.lt a.link{color:var(--gold-b);text-decoration:none;font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:14px}
.lt a.link::after{content:" →"}
.lt a.link:hover{text-decoration:underline}
.lt .gline{position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--gold-b),var(--gold-d))}

.parallax-sec{
  background-image:linear-gradient(180deg,rgba(10,9,6,.94),rgba(10,9,6,.88) 50%,rgba(10,9,6,.94)),url(img/field.webp);
  background-size:auto,cover;
  background-position:center,center 65%;
  background-attachment:scroll,fixed;
  background-repeat:no-repeat;
  border-top:3px solid var(--gold);border-bottom:3px solid var(--gold);
}
/* ---------- documents ---------- */
.doclist{max-width:940px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.doc{display:flex;align-items:center;gap:18px;justify-content:space-between;background:linear-gradient(90deg,#16130b,#100e09);border:1px solid var(--line);padding:20px 26px;text-decoration:none;transition:.22s;position:relative;overflow:hidden}
.doc::before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:rgba(245,179,1,.08);transition:width .3s}
.doc:hover::before{width:100%}
.doc:hover{border-color:rgba(245,179,1,.55);transform:translateX(6px)}
.doc .dl{display:flex;align-items:center;gap:16px;position:relative}
.doc .bb{width:17px;height:17px;flex:0 0 auto}
.doc b{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:19px;letter-spacing:.05em;color:#fff}
.doc span{color:#a79f8b;font-size:13.5px;font-weight:600}
.doc .pdf{font-family:'Graduate',serif;font-size:11px;letter-spacing:.2em;color:var(--gold-b);white-space:nowrap;position:relative}

/* ---------- arc text + donate ---------- */
.arcwrap{text-align:center;margin-bottom:-8px}
.arcwrap svg{width:min(760px,92vw);height:110px}
.arcwrap text{font-family:'Graduate',serif;font-size:20px;letter-spacing:.5em;fill:var(--gold-b);text-transform:uppercase}
.cta-band{position:relative;isolation:isolate;padding:100px 6vw;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold)}
.cta-band.photo{background-image:linear-gradient(180deg,rgba(10,9,6,.92),rgba(10,9,6,.88)),url(img/field.webp);background-size:auto,cover;background-position:center,center 40%;background-attachment:scroll,fixed;background-repeat:no-repeat}
.cta-band.glow{background:radial-gradient(800px 400px at 85% 30%,rgba(245,179,1,.18),transparent 60%),linear-gradient(180deg,#141109,#0b0906)}
.cta-inner{max-width:1150px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:34px;justify-content:space-between}
.cta-inner h2{font-family:'Anton',sans-serif;text-transform:uppercase;line-height:.95;font-size:clamp(36px,4.8vw,60px)}
.cta-inner h2 .outline{color:transparent;-webkit-text-stroke:1px var(--gold)}
.cta-inner p{color:#ddd6c5;margin-top:12px;font-size:17px;max-width:640px;line-height:1.65}
.cta-inner p a{color:var(--gold-b)}

/* ---------- albums: stitch circles ---------- */
.albums{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;justify-items:center}
@media(max-width:900px){.albums{grid-template-columns:1fr;gap:50px}}
.alb{text-decoration:none;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px;transition:.3s}
.alb:hover{transform:translateY(-8px)}
.alb .ring{position:relative;width:min(280px,74vw);aspect-ratio:1;border-radius:50%;padding:14px}
.alb .ring::before{content:"";position:absolute;inset:0;border-radius:50%;border:2.5px dashed var(--stitch);animation:ringspin 40s linear infinite}
.alb:hover .ring::before{animation-duration:12s}
@keyframes ringspin{to{transform:rotate(360deg)}}
.alb .ring img{width:100%;height:100%;object-fit:cover;border-radius:50%;filter:saturate(.92) contrast(1.04);box-shadow:0 20px 50px rgba(0,0,0,.55)}
.alb .cnt{position:absolute;bottom:6px;right:6px;background:var(--gold);color:#000;font-family:'Anton',sans-serif;font-size:19px;padding:8px 13px;border-radius:50%;border:3px solid #0d0b08;box-shadow:0 6px 16px rgba(0,0,0,.5)}
.alb b{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:21px;letter-spacing:.05em;color:#fff;line-height:1.15}
.alb span{font-family:'Graduate',serif;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-b)}

/* ---------- sponsors marquee ---------- */
.spon-marquee{overflow:hidden;max-width:1300px;margin:0 auto;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.spon-track{display:flex;width:max-content;gap:14px;padding:7px 0}
.spon-track.r1{animation:slide 42s linear infinite}
.spon-track.r2{animation:slideRev 46s linear infinite}
@keyframes slideRev{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.spon-marquee:hover .spon-track{animation-play-state:paused}
.sponsor{flex:0 0 auto;border:1px solid var(--line);background:rgba(245,179,1,.045);padding:20px 30px;font-family:'Barlow Condensed',sans-serif;font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:15.5px;color:#e8e2d2;white-space:nowrap;transition:.2s;display:flex;align-items:center;gap:12px}
.sponsor .bb{width:13px;height:13px;opacity:.85}
.sponsor:hover{background:rgba(245,179,1,.14);border-color:rgba(245,179,1,.5);color:#fff}
.sponsor-note{max-width:1100px;margin:38px auto 0;text-align:center;color:#cfc8b6;font-size:16px}
.sponsor-note a{color:var(--gold-b)}

/* ---------- footer ---------- */
footer.site{background:#070604;border-top:1px solid rgba(245,179,1,.25);padding:54px 6vw 30px}
.foot-grid{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;align-items:start}
.foot-grid img{height:108px}
.foot-grid .fh{font-family:'Graduate',serif;font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-b);margin-bottom:16px}
.foot-grid a{display:block;color:#cfc8b6;text-decoration:none;margin-bottom:10px;font-family:'Barlow Condensed',sans-serif;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:14.5px}
.foot-grid a:hover{color:var(--gold-b)}
.foot-note{color:#8d8672;font-size:14px;line-height:1.6;max-width:320px;margin-top:14px}
.foot-bottom{max-width:1150px;margin:40px auto 0;padding-top:22px;border-top:1px solid rgba(245,179,1,.14);display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;font-family:'Barlow Condensed',sans-serif;letter-spacing:.14em;text-transform:uppercase;font-size:12.5px;color:#a79f8b}
.foot-bottom a{color:var(--gold-b);text-decoration:none}


/* ---------- reveal ---------- */
.rev{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.rev.in{opacity:1;transform:none}
.rev.d1{transition-delay:.12s}.rev.d2{transition-delay:.24s}.rev.d3{transition-delay:.36s}
@media (prefers-reduced-motion: reduce){.rev{opacity:1;transform:none}#sball{display:none}.ticker .track,.wire .feedtrack,.spon-track{animation:none}}

/* ---------- subpage hero ---------- */
header.page-hero{position:relative;isolation:isolate;text-align:center;padding:100px 6vw 80px;overflow:hidden}
header.page-hero .parallax-photo{z-index:-2}
header.page-hero h1{font-size:clamp(46px,6.4vw,92px)}
header.page-hero p.sub{margin:20px auto 0;max-width:640px;color:#ddd6c5;font-size:17.5px;line-height:1.6;font-weight:500}
/* ---------- board grid ---------- */
.board-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:22px;max-width:1150px;margin:0 auto}
.member{background:linear-gradient(165deg,#16130b,#0f0d08);border:1px solid var(--line);padding:36px 26px;text-align:center;position:relative;overflow:hidden;transition:.25s}
.member:hover{transform:translateY(-5px);border-color:rgba(245,179,1,.55);box-shadow:0 20px 46px rgba(0,0,0,.5)}
.member::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,var(--gold-b),var(--gold-d))}
.member .init{width:76px;height:76px;margin:0 auto 18px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffd54a,var(--gold) 60%,#c98f00);color:#100d07;display:flex;align-items:center;justify-content:center;font-family:'Anton',sans-serif;font-size:27px;border:3px solid #000;box-shadow:0 6px 18px rgba(0,0,0,.5)}
.member b{display:block;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:22px;letter-spacing:.05em;color:#fff}
.member span{display:inline-block;margin-top:8px;font-family:'Graduate',serif;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-b)}
.member.officer::after{content:"★";position:absolute;top:12px;right:16px;color:var(--gold);font-size:14px;opacity:.9}
h3.sub-h{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(24px,3vw,34px);color:#fff;margin:0 0 22px}
h3.sub-h em{color:var(--gold-b);font-style:normal}
.container{max-width:1100px;margin:0 auto}

/* ---------- frew renovation ---------- */
.donor-spot{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:auto 1fr;gap:0;background:linear-gradient(160deg,#191509,#0e0c07);border:1px solid rgba(245,179,1,.45);box-shadow:0 30px 70px rgba(0,0,0,.6);overflow:hidden}
.donor-spot .amt{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;background:var(--gold);color:#000;padding:40px 46px;clip-path:polygon(0 0,100% 0,calc(100% - 22px) 100%,0 100%)}
.donor-spot .amt b{font-family:'Anton',sans-serif;font-size:clamp(40px,5.5vw,64px);line-height:1;font-variant-numeric:tabular-nums}
.donor-spot .amt span{font-family:'Graduate',serif;font-size:11px;letter-spacing:.24em;text-transform:uppercase}
.donor-spot .txt{padding:36px 40px;display:flex;flex-direction:column;justify-content:center}
.donor-spot .txt h3{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(24px,3.2vw,38px);color:#fff;line-height:1.05;margin-bottom:12px}
.donor-spot .txt h3 em{color:var(--gold-b);font-style:normal}
.donor-spot .txt p{color:#cfc8b6;font-size:16px;line-height:1.7}
@media(max-width:840px){.donor-spot{grid-template-columns:1fr}.donor-spot .amt{clip-path:none}}
.gallery{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.snap{position:relative;background:#f7f2e2;padding:14px 14px 44px;box-shadow:0 18px 44px rgba(0,0,0,.5);transition:.25s}
.snap:nth-child(odd){transform:rotate(-1.4deg)}
.snap:nth-child(even){transform:rotate(1.2deg)}
.snap:hover{transform:rotate(0) translateY(-6px)}
.snap img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;filter:saturate(.95)}
.snap .cap{position:absolute;left:0;right:0;bottom:10px;text-align:center;font-family:'Permanent Marker',cursive;color:#2a2210;font-size:15px}
.snap .tape{top:-12px;left:50%;transform:translateX(-50%) rotate(-3deg);width:110px;height:28px}
.snap.soon{display:flex;align-items:center;justify-content:center;min-height:260px;background:repeating-linear-gradient(45deg,#171309 0 18px,#131009 18px 36px);border:2px dashed rgba(245,179,1,.4);box-shadow:none;padding:14px}
.snap.soon span{font-family:'Graduate',serif;letter-spacing:.24em;text-transform:uppercase;font-size:12px;color:var(--gold-b);text-align:center;line-height:2}
/* timeline */
.timeline{max-width:900px;margin:0 auto;position:relative;padding-left:44px}
.timeline::before{content:"";position:absolute;left:14px;top:6px;bottom:6px;width:3px;background:linear-gradient(180deg,var(--gold-b),var(--gold-d))}
.tl{position:relative;padding:0 0 34px 12px}
.tl::before{content:"★";position:absolute;left:-42px;top:-2px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#0d0b08;border:2px solid var(--gold);border-radius:50%;color:var(--gold-b);font-size:13px}
.tl.done::before{content:"✓";background:var(--gold);color:#000;font-weight:700}
.tl b{display:block;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:21px;letter-spacing:.04em;color:#fff}
.tl span{font-family:'Graduate',serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-b)}
.tl p{color:#cfc8b6;font-size:15.5px;line-height:1.65;margin-top:8px;max-width:640px}
/* ---------- contact page ---------- */
.contact-grid{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}}
.cform{background:linear-gradient(165deg,#16130b,#0f0d08);border:1px solid var(--line);padding:36px 34px;position:relative}
.cform::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,var(--gold-b),var(--gold-d))}
.cform label{display:block;font-family:'Graduate',serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-b);margin:20px 0 8px}
.cform label:first-of-type{margin-top:0}
.cform input,.cform textarea,.cform select{width:100%;background:#0a0906;border:1px solid rgba(245,179,1,.3);color:var(--paper);padding:14px 16px;font-family:'Barlow',sans-serif;font-size:15.5px;transition:.2s;border-radius:0;-webkit-appearance:none}
.cform input:focus,.cform textarea:focus,.cform select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(245,179,1,.18)}
.cform textarea{min-height:150px;resize:vertical}
.cform .btn{margin-top:26px;width:100%;justify-content:center}
.mapbox{position:relative;border:1px solid rgba(245,179,1,.45);box-shadow:0 30px 70px rgba(0,0,0,.6);min-height:420px;display:flex;flex-direction:column}
.mapbox .maphead{display:flex;align-items:center;gap:12px;background:var(--gold);color:#000;padding:13px 20px;font-family:'Graduate',serif;font-size:12px;letter-spacing:.2em;text-transform:uppercase}
.mapbox iframe{flex:1;width:100%;border:0;min-height:380px;filter:grayscale(.15) contrast(1.05)}
.mapbox .addr{background:#0a0906;border-top:2px solid var(--gold);padding:14px 20px;font-family:'Barlow Condensed',sans-serif;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:14px;color:#e8e2d2}
.quickways{max-width:1150px;margin:44px auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.qw{border:1px solid var(--line);background:rgba(245,179,1,.05);padding:24px;text-align:center;text-decoration:none;transition:.2s}
.qw:hover{background:rgba(245,179,1,.12);border-color:rgba(245,179,1,.5);transform:translateY(-3px)}
.qw b{display:block;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:18px;color:#fff;margin-bottom:6px}
.qw span{color:var(--gold-b);font-size:14px;font-weight:600}

/* ============ DEPTH & DIMENSION PACK ============ */
/* scroll progress */
#sprog{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--gold-d),var(--gold-b));z-index:120;width:0;box-shadow:0 0 12px rgba(245,179,1,.6)}
/* hero cinematic layers */
.hero .vignette{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 120% 90% at 50% 45%,transparent 52%,rgba(0,0,0,.62) 100%);pointer-events:none}
.hero-grid{transform-style:preserve-3d}
.hero-badge{transform:translate(calc(var(--mx,0)*16px),calc(var(--my,0)*11px));transition:transform .18s ease-out;will-change:transform}
.hero h1{transform:translate(calc(var(--mx,0)*8px),calc(var(--my,0)*5px));transition:transform .22s ease-out;will-change:transform}
.hero .cta-row,.hero p.sub{transform:translate(calc(var(--mx,0)*4px),calc(var(--my,0)*3px));transition:transform .26s ease-out}
/* ghost depth text behind section headings */
.bhead{position:relative}
.bhead .ghost{
  position:absolute;left:-10px;top:-58px;z-index:-1;pointer-events:none;user-select:none;
  font-family:'Anton',sans-serif;text-transform:uppercase;line-height:1;white-space:nowrap;
  font-size:clamp(110px,16vw,230px);color:rgba(245,179,1,.05);-webkit-text-stroke:1.5px rgba(245,179,1,.22);
  top:-74px;will-change:transform;
}
/* tilt cards */
.tilt{transform-style:preserve-3d;will-change:transform}
.tilt.tilting{transition:none}
.tilt:not(.tilting){transition:transform .5s cubic-bezier(.2,.7,.2,1)}
/* premium gradient borders on key cards */
.lt,.scorebug,.donor-spot{border:1px solid transparent;background-clip:padding-box;position:relative}
.lt::after,.scorebug::after{content:"";position:absolute;inset:0;padding:1.5px;background:linear-gradient(160deg,rgba(245,179,1,.65),rgba(245,179,1,.12) 40%,rgba(245,179,1,.45));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:3}
/* ============ IBEW SPOTLIGHT ============ */
section.ibew{
  position:relative;isolation:isolate;padding:120px 6vw 130px;overflow:hidden;
  background:
    repeating-linear-gradient(0deg,transparent 0 46px,rgba(245,179,1,.045) 46px 47px),
    repeating-linear-gradient(90deg,transparent 0 46px,rgba(245,179,1,.045) 46px 47px),
    radial-gradient(900px 500px at 82% 40%,rgba(245,179,1,.12),transparent 62%),
    linear-gradient(180deg,#0a0906,#100d07 55%,#0a0906);
  border-top:3px solid var(--gold);border-bottom:3px solid var(--gold);
}
.ibew .bignum{
  position:absolute;right:-1vw;top:50%;transform:translateY(-50%);z-index:0;pointer-events:none;user-select:none;
  font-family:'Anton',sans-serif;font-size:clamp(160px,26vw,360px);line-height:1;
  color:rgba(245,179,1,.04);-webkit-text-stroke:2px rgba(245,179,1,.26);
}
.ibew-wrap{position:relative;z-index:1;max-width:1150px;margin:0 auto;display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}
@media(max-width:940px){.ibew-wrap{grid-template-columns:1fr;gap:40px}}
.ibew .kick{font-family:'Graduate',serif;letter-spacing:.3em;font-size:12.5px;color:var(--gold-b);text-transform:uppercase;display:flex;align-items:center;gap:12px;margin-bottom:18px}
.ibew .kick .bolt{width:16px;height:16px;flex:0 0 auto}
.ibew h2{font-family:'Anton',sans-serif;text-transform:uppercase;line-height:.95;font-size:clamp(42px,5.6vw,76px);margin-bottom:22px}
.ibew h2 .outline{color:transparent;-webkit-text-stroke:1px var(--gold)}
.ibew p.lead{color:#d8d2c2;font-size:17.5px;line-height:1.7;max-width:560px;margin-bottom:30px}
.ibew p.lead strong{color:var(--gold-b)}
.plaque{
  position:relative;text-align:center;padding:46px 40px 40px;
  background:linear-gradient(160deg,#1b1609,#0f0d07);
  box-shadow:0 40px 90px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.08);
}
.plaque::before{content:"";position:absolute;inset:0;padding:2px;background:linear-gradient(160deg,#ffdf7e,var(--gold) 30%,#8a6a00 60%,#ffd23f);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.plaque::after{content:"";position:absolute;inset:9px;border:1px solid rgba(245,179,1,.35);pointer-events:none}
.plaque .plq-k{font-family:'Graduate',serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-b);margin-bottom:14px}
.plaque .plq-amt{font-family:'Anton',sans-serif;font-size:clamp(52px,6.5vw,84px);line-height:1;color:#fff;text-shadow:0 0 40px rgba(245,179,1,.35);font-variant-numeric:tabular-nums}
.plaque .plq-name{margin-top:14px;font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:.2em;text-transform:uppercase;font-size:17px;color:var(--gold-b)}
.plaque .plq-sub{margin-top:6px;font-family:'Barlow Condensed',sans-serif;font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:12.5px;color:#a79f8b}

/* ============ RAMP-UP PACK ============ */
/* hero entrance */
@keyframes riseIn{from{opacity:0;transform:translateY(46px)}to{opacity:1;transform:none}}
@keyframes popIn{from{opacity:0;transform:scale(.82) translateY(20px)}to{opacity:1;transform:none}}
.hero-badge{animation:popIn .9s cubic-bezier(.16,.8,.3,1) .15s backwards}
.hero .kicker{animation:riseIn .7s cubic-bezier(.16,.8,.3,1) .45s backwards}
.hero h1 .hl{display:inline-block;animation:riseIn .8s cubic-bezier(.16,.8,.3,1) backwards}
.hero h1 .hl:nth-child(1){animation-delay:.55s}
.hero h1 .hl:nth-child(3){animation-delay:.7s}
.hero h1 .hl:nth-child(5){animation-delay:.85s}
.hero p.sub{animation:riseIn .7s cubic-bezier(.16,.8,.3,1) 1s backwards}
.hero .cta-row{animation:riseIn .7s cubic-bezier(.16,.8,.3,1) 1.12s backwards}
.hero .vignette{background:radial-gradient(ellipse 115% 85% at 50% 42%,transparent 48%,rgba(0,0,0,.72) 100%)}
/* headline hot glow */
h1 .solid{text-shadow:0 6px 30px rgba(0,0,0,.55),0 0 80px rgba(255,255,255,.12)}
h1 .outline{filter:drop-shadow(0 0 26px rgba(245,179,1,.35))}
/* ticker: louder */
.ticker{padding:17px 0;border-top-width:4px;border-bottom-width:4px}
.ticker span{font-size:27px;letter-spacing:.07em;margin:0 30px}
/* scorebug: bigger, pulsing */
.tblock b{font-size:clamp(34px,5.2vw,62px);text-shadow:0 0 30px rgba(245,179,1,.25)}
#cd-s{animation:secpulse 1s ease-in-out infinite}
@keyframes secpulse{0%,100%{color:#fff}50%{color:var(--gold-b)}}
.scorebug{box-shadow:0 34px 80px rgba(0,0,0,.7),0 0 60px rgba(245,179,1,.12),inset 0 1px 0 rgba(255,255,255,.06)}
/* stats: bigger */
.stat b{font-size:46px;text-shadow:0 0 26px rgba(245,179,1,.3)}
.stat{padding:28px 28px}
/* clipboard: floodlight */
.clipboard .board{box-shadow:0 50px 110px rgba(0,0,0,.75),0 0 110px rgba(245,179,1,.3),inset 0 2px 2px rgba(255,255,255,.35),inset 0 -3px 8px rgba(0,0,0,.35)}
/* albums: heavier stitch ring + glow */
.alb .ring::before{border-width:3.5px}
.alb:hover .ring img{box-shadow:0 26px 60px rgba(0,0,0,.65),0 0 60px rgba(245,179,1,.35)}
.alb .cnt{font-size:22px;padding:10px 15px}
/* sponsors: bigger presence */
.sponsor{padding:24px 34px;font-size:17px}
/* gold divider: emblem version */
.golddiv{position:relative;height:64px;background:none;opacity:1;display:flex;align-items:center;justify-content:center}
.golddiv::before,.golddiv::after{content:"";position:absolute;top:50%;height:3px;width:calc(50% - 56px);background:linear-gradient(90deg,transparent,var(--gold))}
.golddiv::before{left:0}
.golddiv::after{right:0;background:linear-gradient(90deg,var(--gold),transparent)}
.golddiv .gd-ball{width:34px;height:34px;filter:drop-shadow(0 0 18px rgba(245,179,1,.5));animation:gdspin 14s linear infinite}
@keyframes gdspin{to{transform:rotate(360deg)}}
/* plaque shine sweep */
.plaque{overflow:hidden}
.plaque .shine{position:absolute;top:-40%;left:-70%;width:45%;height:180%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.14),transparent);transform:skewX(-18deg);animation:plqshine 5.5s ease-in-out infinite}
@keyframes plqshine{0%,55%{left:-70%}85%,100%{left:150%}}
.plaque .plq-amt{text-shadow:0 0 50px rgba(245,179,1,.5)}
/* section headers punchier */
.bhead h2{letter-spacing:.015em}
.bhead .num{box-shadow:6px 6px 0 rgba(245,179,1,.3),0 0 40px rgba(245,179,1,.25)}


/* ============ SOLID GOLD "YOUTH LEAGUE" ============ */
.hero h1 .gold{
  background:none;-webkit-background-clip:initial;background-clip:initial;
  -webkit-text-fill-color:currentColor;
  color:var(--gold);
  animation:none;
  text-shadow:0 6px 30px rgba(0,0,0,.55);
}

/* ============ SPONSORS PAGE TIERS ============ */
.tier-label{max-width:1150px;margin:0 auto 34px;display:flex;align-items:center;gap:18px}
.tier-label .tl-badge{background:var(--gold);color:#000;font-family:'Anton',sans-serif;font-size:19px;letter-spacing:.04em;text-transform:uppercase;padding:10px 20px;transform:skewX(-10deg);box-shadow:5px 5px 0 rgba(245,179,1,.25)}
.tier-label .tl-badge span{display:inline-block;transform:skewX(10deg)}
.tier-label .tl-sub{font-family:'Graduate',serif;font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:#a79f8b}
.tier-label::after{content:"";height:2px;flex:1;background:linear-gradient(90deg,var(--gold),transparent)}
/* MVP hero card */
.mvp-card{max-width:1150px;margin:0 auto 90px;position:relative;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;padding:56px 54px;background:linear-gradient(160deg,#1c1709,#0f0d07);overflow:hidden;box-shadow:0 44px 100px rgba(0,0,0,.7),0 0 90px rgba(245,179,1,.18)}
.mvp-card::before{content:"";position:absolute;inset:0;padding:2.5px;background:linear-gradient(160deg,#ffdf7e,var(--gold) 30%,#8a6a00 60%,#ffd23f);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.mvp-card::after{content:"";position:absolute;inset:10px;border:1px solid rgba(245,179,1,.3);pointer-events:none}
.mvp-card .shine{position:absolute;top:-40%;left:-70%;width:40%;height:180%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.12),transparent);transform:skewX(-18deg);animation:plqshine 6s ease-in-out infinite}
.mvp-card .mk{font-family:'Graduate',serif;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-b);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.mvp-card h3{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(38px,5vw,66px);line-height:.95;color:#fff;margin-bottom:16px}
.mvp-card p{color:#d8d2c2;font-size:16.5px;line-height:1.7;max-width:560px;margin-bottom:26px}
.mvp-card p strong{color:var(--gold-b)}
.mvp-card .mvp-amt{text-align:center}
.mvp-card .mvp-amt b{display:block;font-family:'Anton',sans-serif;font-size:clamp(48px,6vw,80px);color:var(--gold-b);line-height:1;text-shadow:0 0 50px rgba(245,179,1,.5);font-variant-numeric:tabular-nums}
.mvp-card .mvp-amt span{font-family:'Graduate',serif;font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:#a79f8b;display:block;margin-top:10px}
@media(max-width:900px){.mvp-card{grid-template-columns:1fr;padding:40px 30px}}
/* All-star tier */
.allstar-grid{max-width:1150px;margin:0 auto 90px;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:26px}
.allstar{position:relative;background:linear-gradient(165deg,#17130a,#0f0d08);border:1px solid rgba(245,179,1,.35);padding:44px 36px;text-align:center;transition:.25s;overflow:hidden}
.allstar:hover{transform:translateY(-5px);border-color:rgba(245,179,1,.6);box-shadow:0 26px 60px rgba(0,0,0,.55)}
.allstar::before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:linear-gradient(90deg,var(--gold-b),var(--gold-d))}
.allstar b{display:block;font-family:'Anton',sans-serif;text-transform:uppercase;font-size:27px;letter-spacing:.02em;color:#fff;line-height:1.1}
.allstar span{display:inline-block;margin-top:12px;font-family:'Graduate',serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-b)}
.allstar.open{border-style:dashed;background:repeating-linear-gradient(45deg,#131009 0 16px,#100d08 16px 32px)}
.allstar.open b{color:rgba(245,240,228,.55)}
.allstar.open .btn{margin-top:20px}
/* roster tier */
.roster-grid{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.roster-grid .sponsor{white-space:normal;text-align:center;justify-content:center;min-height:82px}

/* straight donate kicker */
.straight-kick{text-align:center;font-family:'Graduate',serif;font-size:19px;letter-spacing:.5em;text-transform:uppercase;color:var(--gold-b);margin-bottom:34px}

/* centered CTA band variant */
.cta-band.centered .cta-inner{flex-direction:column;text-align:center;justify-content:center;gap:26px}
.cta-band.centered .cta-inner p{margin-left:auto;margin-right:auto}

/* ============ NOTION SCHEDULE WIDGET ============ */
#sched-widget{max-width:1100px;margin:60px auto 0;display:none}
#sched-widget.on{display:block}
.sched-frame{background:linear-gradient(160deg,#191509,#0e0c07);border:1px solid rgba(245,179,1,.45);box-shadow:0 30px 70px rgba(0,0,0,.6);overflow:hidden}
.sched-frame .sf-head{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--gold);color:#000;padding:13px 22px;font-family:'Graduate',serif;font-size:12px;letter-spacing:.2em;text-transform:uppercase}
.sched-frame .sf-head span{font-family:'Barlow Condensed',sans-serif;letter-spacing:.12em;font-weight:700;font-size:12px}
.sched-table{width:100%;border-collapse:collapse}
.sched-table th{background:#0a0906;color:var(--gold-b);font-family:'Graduate',serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;text-align:left;padding:14px 20px;border-bottom:2px solid var(--gold)}
.sched-table td{padding:14px 20px;border-bottom:1px solid rgba(245,179,1,.14);font-family:'Barlow',sans-serif;font-size:15px;color:#e8e2d2}
.sched-table td:first-child{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff;font-size:16.5px}
.sched-table tr:nth-child(even) td{background:rgba(245,179,1,.03)}
.sched-table tr:hover td{background:rgba(245,179,1,.08)}
@media(max-width:760px){.sched-table th,.sched-table td{padding:10px 12px;font-size:13.5px}}

/* ============ IBEW LOGO & SIGN ============ */
.ibew-logo-chip{display:inline-flex;align-items:center;justify-content:center;background:none;padding:0}
.ibew-logo-chip img{display:block;width:100%;max-width:100%;filter:drop-shadow(0 0 2px rgba(255,255,255,.55)) drop-shadow(0 0 26px rgba(255,255,255,.18)) drop-shadow(0 14px 30px rgba(0,0,0,.6))}
.plaque .ibew-logo-chip{margin-bottom:24px;width:100%}
.plaque .ibew-logo-chip img{max-width:420px}
.donor-spot .ibew-logo-chip{margin-bottom:26px;width:100%}
.donor-spot .ibew-logo-chip img{max-width:480px}
.sign-feature{max-width:940px;margin:70px auto 0;text-align:center}
.sign-feature .sf-frame{position:relative;display:inline-block;padding:10px;background:linear-gradient(160deg,#ffdf7e,var(--gold) 30%,#8a6a00 60%,#ffd23f);box-shadow:0 40px 90px rgba(0,0,0,.65),0 0 80px rgba(245,179,1,.2)}
.sign-feature img{display:block;width:100%;max-width:900px}
.sign-feature .sf-cap{margin-top:26px;font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(22px,3vw,32px);color:#fff;line-height:1.15}
.sign-feature .sf-cap em{display:block;margin-top:12px;font-family:'Graduate',serif;font-style:normal;font-size:clamp(12px,1.5vw,15px);letter-spacing:.18em;color:var(--gold-b)}
.sign-feature .sf-note{margin-top:10px;font-family:'Barlow Condensed',sans-serif;font-weight:600;letter-spacing:.16em;text-transform:uppercase;font-size:13px;color:#a79f8b}

/* ============ SOFTBALL CURSOR ============ */
@media (hover:hover) and (pointer:fine){
  html,body{cursor:url(img/cursor.png) 18 18, auto}
  a,button,.btn,select,label,summary,[role="button"]{cursor:url(img/cursor.png) 18 18, pointer}
}
/* page-hero vignette */
.page-hero .vignette{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 115% 85% at 50% 42%,transparent 48%,rgba(0,0,0,.7) 100%);pointer-events:none}
/* powered-by footer badge */
.foot-bottom .pby{display:inline-flex;align-items:center;gap:10px;font-family:'Barlow Condensed',sans-serif;letter-spacing:.14em;text-transform:uppercase;font-size:12.5px;color:#a79f8b}
.foot-bottom .pby img{height:24px;width:auto;filter:drop-shadow(0 0 1px rgba(255,255,255,.5)) brightness(1.12)}

/* ============ FREW MONUMENT ============ */
.monument{position:relative;max-width:1100px;margin:0 auto 40px;text-align:center}
.mn-ghost{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);z-index:0;pointer-events:none;user-select:none;font-family:'Anton',sans-serif;font-size:clamp(200px,34vw,420px);line-height:1;color:rgba(245,179,1,.03);-webkit-text-stroke:1.5px rgba(245,179,1,.14);white-space:nowrap}
.monument>*:not(.mn-ghost){position:relative;z-index:1}
.mn-logo{width:min(640px,90%);height:auto;filter:drop-shadow(0 0 2px rgba(255,255,255,.55)) drop-shadow(0 0 34px rgba(255,255,255,.2)) drop-shadow(0 18px 40px rgba(0,0,0,.65))}
.mn-k{font-family:'Graduate',serif;font-size:clamp(12px,1.6vw,16px);letter-spacing:.34em;text-transform:uppercase;color:var(--gold-b);margin:44px 0 10px}
.mn-amt{font-family:'Anton',sans-serif;font-size:clamp(78px,13vw,180px);line-height:.95;color:#fff;text-shadow:0 0 60px rgba(245,179,1,.55),0 10px 40px rgba(0,0,0,.6);font-variant-numeric:tabular-nums}
.mn-sub{font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:.24em;text-transform:uppercase;font-size:clamp(14px,2vw,19px);color:#e8e2d2;margin-top:18px}
.mn-rule{display:flex;align-items:center;justify-content:center;gap:0;margin:44px auto 40px;max-width:760px;position:relative;height:40px}
.mn-rule::before,.mn-rule::after{content:"";height:3px;flex:1;background:linear-gradient(90deg,transparent,var(--gold))}
.mn-rule::after{background:linear-gradient(90deg,var(--gold),transparent)}
.mn-rule svg{width:30px;height:30px;margin:0 22px;filter:drop-shadow(0 0 16px rgba(245,179,1,.5))}
.mn-copy{max-width:800px;margin:0 auto;text-align:left}
.mn-copy p{color:#d8d2c2;font-size:17px;line-height:1.75;margin-bottom:18px}
.mn-copy p strong{color:var(--gold-b)}

/* monument standalone section */
section.monument-sec{
  position:relative;isolation:isolate;padding:110px 6vw 120px;overflow:hidden;
  background:
    repeating-linear-gradient(0deg,transparent 0 46px,rgba(245,179,1,.04) 46px 47px),
    repeating-linear-gradient(90deg,transparent 0 46px,rgba(245,179,1,.04) 46px 47px),
    radial-gradient(1000px 560px at 50% 30%,rgba(245,179,1,.1),transparent 65%),
    linear-gradient(180deg,#0a0906,#110e08 55%,#0a0906);
  border-bottom:3px solid var(--gold);
}
section.monument-sec .monument{margin-bottom:0}

/* ============ FREW DONOR CARD - BIGGER ============ */
.donor-spot .amt b{font-size:clamp(56px,7.6vw,104px);text-shadow:0 0 40px rgba(0,0,0,.25)}
.donor-spot .amt{padding:52px 54px}
.donor-spot .ibew-logo-chip img{max-width:640px}
.donor-spot .txt{padding:44px 44px}

/* ============ SUNBURST GOLD BLOCK (opt 04) ============ */
.donor-spot .amt{
  position:relative;overflow:hidden;
  background:radial-gradient(circle at 50% 46%,#ffe083 0%,var(--gold) 38%,#c98f00 100%);
  clip-path:polygon(0 0,100% 0,calc(100% - 22px) 100%,0 100%);
}
.donor-spot .amt .rays{position:absolute;left:50%;top:46%;width:180%;aspect-ratio:1;transform:translate(-50%,-50%);
  background:repeating-conic-gradient(from 0deg at 50% 50%,rgba(255,255,255,.22) 0deg 7deg,transparent 7deg 14deg);
  animation:raysspin 60s linear infinite;pointer-events:none}
@keyframes raysspin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.donor-spot .amt .shine{position:absolute;top:-40%;left:-70%;width:45%;height:180%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-18deg);
  animation:amtsweep 5.5s ease-in-out infinite;pointer-events:none}
@keyframes amtsweep{0%,55%{left:-70%}85%,100%{left:150%}}
.donor-spot .amt .stars{position:relative;z-index:1;font-size:13px;color:rgba(0,0,0,.55);letter-spacing:.7em;margin-bottom:4px}
.donor-spot .amt b{position:relative;z-index:1;color:#100d07;
  text-shadow:0 3px 0 rgba(255,255,255,.35),0 6px 18px rgba(0,0,0,.3)}
.donor-spot .amt span{position:relative;z-index:1;color:rgba(0,0,0,.72)}
@media(max-width:840px){.donor-spot .amt{clip-path:none}}

/* ============ FREW HERO ARTWORK ============ */
header.art-hero{position:relative;isolation:isolate;overflow:hidden;padding:0 0 46px;text-align:center;border-bottom:3px solid var(--gold)}
header.art-hero .backdrop{position:absolute;inset:-8%;z-index:-2;
  background:url(img/ibew-hero.webp) center/cover no-repeat;filter:blur(38px) brightness(.5) saturate(1.1);transform:scale(1.1)}
header.art-hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse 120% 90% at 50% 45%,transparent 45%,rgba(0,0,0,.8) 100%)}
header.art-hero .artwrap{position:relative;max-width:1280px;margin:0 auto;padding:0 4vw}
header.art-hero img.art{width:100%;height:auto;display:block;filter:drop-shadow(0 26px 60px rgba(0,0,0,.7))}
header.art-hero .artcap{margin-top:26px;font-family:'Barlow',sans-serif;color:#ddd6c5;font-size:18px;line-height:1.6;max-width:640px;margin-left:auto;margin-right:auto}
header.art-hero .artkick{margin:34px 0 0;font-family:'Graduate',serif;font-size:13px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold-b)}

/* ============ FREW HERO (aerial parallax) ============ */
.parallax-frew{position:absolute;inset:0;z-index:-3;
  background-image:linear-gradient(180deg,rgba(10,9,6,.9) 0%,rgba(10,9,6,.66) 45%,rgba(10,9,6,.94) 100%),url(img/frew-aerial.webp);
  background-size:auto,cover;background-position:center,center 45%;
  background-attachment:scroll,fixed;background-repeat:no-repeat}
@media (hover:none) and (pointer:coarse){.parallax-frew{background-attachment:scroll,scroll}}
header.page-hero.tall{padding:120px 6vw 110px}

/* ============ DONOR CARD - gold outline + big IBEW graphic ============ */
.donor-spot .txt{border:2px solid var(--gold);border-left:none;box-shadow:inset 0 0 40px rgba(245,179,1,.06)}
.donor-spot .ibew-banner{display:block;width:100%;max-width:100%;margin:0 0 26px;
  border:2px solid rgba(245,179,1,.55);box-shadow:0 16px 40px rgba(0,0,0,.6)}
@media(max-width:840px){.donor-spot .txt{border-left:2px solid var(--gold);border-top:none}}

.snap img{object-position:center 55%}

/* gallery group subheads */
.gal-sub{max-width:1100px;margin:0 auto 26px;display:flex;align-items:center;gap:16px}
.gal-sub b{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(20px,2.6vw,30px);color:#fff;white-space:nowrap}
.gal-sub b em{color:var(--gold-b);font-style:normal}
.gal-sub .tag{font-family:'Graduate',serif;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:#000;background:var(--gold);padding:6px 12px;white-space:nowrap}
.gal-sub::after{content:"";height:2px;flex:1;background:linear-gradient(90deg,var(--gold),transparent)}
.gallery{margin-bottom:56px}
.gallery:last-child{margin-bottom:0}

/* night lineup parallax behind Get in Touch */
.cta-band.night{
  background-image:linear-gradient(180deg,rgba(8,7,5,.86),rgba(8,7,5,.78) 45%,rgba(8,7,5,.9)),url(img/night-lineup.webp);
  background-size:auto,cover;background-position:center,center 55%;
  background-attachment:scroll,fixed;background-repeat:no-repeat}
@media (hover:none) and (pointer:coarse){.cta-band.night{background-attachment:scroll,scroll}}

/* ============ SPONSOR TIER GRID ============ */
.tier-grid{max-width:1150px;margin:0 auto 70px;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.tier-card{position:relative;background:linear-gradient(165deg,#17130a,#0f0d08);border:1px solid rgba(245,179,1,.35);
  padding:30px 24px;text-align:center;transition:.22s;display:flex;align-items:center;justify-content:center;min-height:96px;text-decoration:none}
.tier-card:hover{transform:translateY(-4px);border-color:rgba(245,179,1,.65);box-shadow:0 20px 44px rgba(0,0,0,.5)}
.tier-card::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,var(--gold-b),var(--gold-d))}
.tier-card b{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:21px;
  letter-spacing:.05em;color:#fff;line-height:1.15}
.tier-card.open{flex-direction:column;gap:8px;border-style:dashed;background:repeating-linear-gradient(45deg,#131009 0 16px,#100d08 16px 32px)}
.tier-card.open b{color:rgba(245,240,228,.6)}
.tier-card.open span{font-family:'Graduate',serif;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-b)}
.tier-label{margin-bottom:22px}
/* second major-gift card */
.mvp-card.second{margin-top:26px}
.mvp-card .mvp-logo{width:100%;max-width:360px;margin-bottom:18px;
  filter:drop-shadow(0 0 2px rgba(255,255,255,.55)) drop-shadow(0 0 24px rgba(255,255,255,.16))}

/* ============ IN-KIND PARTNERS ============ */
.inkind-grid{max-width:1150px;margin:0 auto 70px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;align-items:start}
.inkind{position:relative;background:linear-gradient(165deg,#17130a,#0f0d08);border:1px solid rgba(245,179,1,.35);overflow:hidden;transition:.22s;display:flex;flex-direction:column}
.inkind:hover{transform:translateY(-4px);border-color:rgba(245,179,1,.65);box-shadow:0 22px 48px rgba(0,0,0,.55)}
.inkind::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,var(--gold-b),var(--gold-d));z-index:2}
.inkind.feature{grid-column:span 2}
@media(max-width:760px){.inkind.feature{grid-column:span 1}}
.inkind img{width:100%;height:250px;object-fit:cover;object-position:center 58%;display:block}
.inkind .ik-body{padding:26px 26px 30px}
.inkind .ik-amt{font-family:'Anton',sans-serif;font-size:34px;color:var(--gold-b);line-height:1;text-shadow:0 0 26px rgba(245,179,1,.3);margin-bottom:8px}
.inkind b{display:block;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:23px;letter-spacing:.05em;color:#fff;margin-bottom:10px}
.inkind p{color:#cfc8b6;font-size:15px;line-height:1.65}
.inkind p strong{color:var(--gold-b)}
.rock-credit{max-width:1100px;margin:-10px auto 26px;color:#cfc8b6;font-size:16px;line-height:1.6}
.rock-credit strong{color:var(--gold-b)}

/* ============ IBEW HEADLINE CARD + FIXES ============ */
.mvp-card.headline{padding:64px 60px;gap:56px;align-items:center;
  background:
    repeating-linear-gradient(0deg,transparent 0 46px,rgba(245,179,1,.035) 46px 47px),
    repeating-linear-gradient(90deg,transparent 0 46px,rgba(245,179,1,.035) 46px 47px),
    radial-gradient(900px 480px at 72% 45%,rgba(245,179,1,.13),transparent 65%),
    linear-gradient(160deg,#1c1709,#0f0d07);
  box-shadow:0 50px 110px rgba(0,0,0,.75),0 0 110px rgba(245,179,1,.22)}
.mvp-card.headline::before{padding:3px}
.mvp-card.headline .mvp-logo{max-width:560px;margin-bottom:26px}
.mvp-card.headline h3{font-size:clamp(46px,6vw,86px);margin-bottom:20px}
.mvp-card.headline p{font-size:18.5px;line-height:1.7;max-width:640px}
.mvp-card.headline .mvp-amt b{font-size:clamp(60px,8vw,124px)}
.mvp-card.headline .mvp-amt span{font-size:12px;letter-spacing:.28em;margin-top:14px}
.mvp-card.headline .btn{padding:17px 34px;font-size:16px}
@media(max-width:900px){.mvp-card.headline{padding:40px 28px;gap:30px}}
/* in-kind feature photo: show the whole thing */
.inkind.feature img{height:auto;aspect-ratio:1/1;object-fit:contain;background:#0c0a07;padding:10px}
/* champion card */
.tier-card.big{flex-direction:column;gap:8px;padding:40px 26px;min-height:130px}
.tier-card.big span{font-family:'Anton',sans-serif;font-size:30px;color:var(--gold-b);text-shadow:0 0 24px rgba(245,179,1,.3)}

/* ---------- live calendar ---------- */
.cal{background:linear-gradient(160deg,#191509,#0e0c07);border:1px solid rgba(245,179,1,.45);box-shadow:0 30px 70px rgba(0,0,0,.6);overflow:hidden}
.cal-head{display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--gold);color:#000;padding:11px 16px}
.cal-title{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(20px,3.2vw,30px);line-height:1;letter-spacing:.02em;display:flex;align-items:baseline;gap:10px}
.cal-title b{font-family:'Graduate',serif;font-weight:400;font-size:.52em;letter-spacing:.18em;opacity:.62}
.cal-nav{width:40px;height:40px;flex:0 0 40px;border:2px solid rgba(0,0,0,.5);background:transparent;color:#000;font-size:22px;line-height:1;font-weight:700;transition:background .18s,color .18s,opacity .18s}
.cal-nav:hover{background:#000;color:var(--gold)}
.cal-nav:disabled{opacity:.22;pointer-events:none}
.cal-sub{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;background:#0a0906;padding:10px 18px;font-family:'Graduate',serif;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-b);border-bottom:1px solid rgba(245,179,1,.2)}
.cal-sub em{font-family:'Barlow Condensed',sans-serif;font-style:normal;font-weight:700;letter-spacing:.12em;color:#8a826d}
.cal-sub .dot{width:8px;height:8px;border-radius:50%;background:#3ddc7f;box-shadow:0 0 0 0 rgba(61,220,127,.6);animation:calpulse 2s infinite}
@keyframes calpulse{70%{box-shadow:0 0 0 9px rgba(61,220,127,0)}100%{box-shadow:0 0 0 0 rgba(61,220,127,0)}}
.cal-dows{display:grid;grid-template-columns:repeat(7,1fr);background:#0a0906;border-bottom:2px solid var(--gold)}
.cal-dows span{padding:11px 6px;text-align:center;font-family:'Graduate',serif;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-b)}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.cal-cell{min-height:122px;padding:8px 8px 12px;border-right:1px solid rgba(245,179,1,.12);border-bottom:1px solid rgba(245,179,1,.12);transition:background .18s}
.cal-cell:nth-child(7n){border-right:0}
.cal-cell.out{background:rgba(0,0,0,.4)}
.cal-cell.out .cal-dnum{opacity:.28}
.cal-cell.has:hover{background:rgba(245,179,1,.07)}
.cal-cell.today{box-shadow:inset 0 0 0 2px var(--gold);background:rgba(245,179,1,.06)}
.cal-cell.today .cal-dnum{color:#000;background:var(--gold);padding:1px 7px}
.cal-dnum{display:inline-block;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:15px;letter-spacing:.06em;color:#b9b09a;margin-bottom:5px}
.cal-ev{display:block;margin-top:4px;padding:5px 7px;background:linear-gradient(180deg,rgba(245,179,1,.22),rgba(245,179,1,.09));border-left:3px solid var(--gold);font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:12.5px;line-height:1.28;letter-spacing:.03em;text-transform:uppercase;color:#fff}
.cal-ev .tm{display:block;font-size:11px;letter-spacing:.09em;color:var(--gold-b)}
.cal-ev .mt{display:block;margin-top:3px;font-family:'Barlow',sans-serif;font-weight:400;text-transform:none;letter-spacing:0;font-size:12.5px;color:#a99f88}
.cal-ev.closed{background:linear-gradient(180deg,rgba(214,58,32,.24),rgba(214,58,32,.1));border-left-color:var(--stitch)}
.cal-ev.closed .tm{color:#f08a72}
.cal-more{margin-top:5px;font-family:'Graduate',serif;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-b)}
.cal-panel{display:none;border-top:2px solid var(--gold);background:#0a0906}
.cal-panel.on{display:block}
.cp-head{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;font-family:'Graduate',serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-b)}
.cp-x{background:transparent;border:0;color:var(--gold-b);font-size:24px;line-height:1}
.cp-x:hover{color:#fff}
.cp-body{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;padding:0 18px 18px}
.cp-body .cal-ev{margin-top:0;padding:10px 12px;font-size:14px}
.cal-agenda{display:none}
.cal-ag-day{display:flex;gap:16px;padding:15px 18px;border-bottom:1px solid rgba(245,179,1,.12)}
.cal-ag-day.today{background:rgba(245,179,1,.06)}
.cal-ag-date{flex:0 0 52px;text-align:center}
.cal-ag-date .dw{display:block;font-family:'Graduate',serif;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-b)}
.cal-ag-date .dd{display:block;font-family:'Anton',sans-serif;font-size:30px;line-height:1.05;color:#fff}
.cal-ag-evs{flex:1;min-width:0}
.cal-ag-evs .cal-ev:first-child{margin-top:0}
.cal-empty{padding:34px 18px;text-align:center;font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#7d7561}
.cal-foot{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:13px 18px;background:#0a0906;border-top:1px solid rgba(245,179,1,.2)}
.cal-foot .lg{display:flex;align-items:center;gap:8px;font-family:'Graduate',serif;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:#8a826d}
.cal-foot .sw{width:13px;height:13px;display:inline-block}
.cal-foot .sw-g{background:var(--gold)}
.cal-foot .sw-r{background:var(--stitch)}
.cal-foot a{margin-left:auto;font-family:'Graduate',serif;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-b);text-decoration:none;border-bottom:1px solid rgba(245,179,1,.45);padding-bottom:2px}
.cal-foot a:hover{color:#fff;border-color:#fff}
/* mobile calendar: tall grid with dots, tap a day for details, month list in a dropdown */
.cal-dots{display:none}
.cal-month-toggle{display:none}
@media(max-width:900px){
  .cal-cell{min-height:0;aspect-ratio:1/1.45;padding:6px 4px;display:flex;flex-direction:column;align-items:center;cursor:pointer}
  .cal-cell .cal-ev,.cal-cell .cal-more{display:none!important}
  .cal-dnum{font-size:15px;margin-bottom:4px}
  .cal-cell.today .cal-dnum{border-radius:3px}
  .cal-cell.sel{background:rgba(245,179,1,.14);box-shadow:inset 0 0 0 2px var(--gold-b)}
  .cal-dots{display:flex;gap:4px;flex-wrap:wrap;justify-content:center;margin-top:auto;padding-bottom:4px}
  .cal-dots i{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 6px rgba(245,179,1,.5)}
  .cal-dots i.event{background:var(--stitch);box-shadow:0 0 6px rgba(214,58,32,.5)}
  .cal-panel{display:block}
  .cal-panel .cp-x{display:none}
  .cp-body{grid-template-columns:1fr}
  .cal-agenda{display:none}
  .cal-agenda.open{display:block}
  .cal-month-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;background:#0a0906;border:0;border-top:2px solid var(--gold);color:var(--gold-b);font-family:'Graduate',serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:14px 18px;cursor:pointer}
  .cal-month-toggle b{font-size:16px;line-height:1;transition:.2s}
  .cal-month-toggle.open b{transform:rotate(180deg)}
}
@media(max-width:560px){
  .cal-sub em{width:100%}
  .cal-head{padding:10px 12px}
  .cal-nav{width:34px;height:34px;flex:0 0 34px;font-size:19px}
  .cal-ag-day{padding:13px 13px;gap:12px}
}

/* ---------- photo swaps ---------- */
.parallax-sec.bg-home2{background-image:linear-gradient(180deg,rgba(10,9,6,.9),rgba(10,9,6,.78) 50%,rgba(10,9,6,.92)),url(img/home2.webp);background-position:center,center 22%}
.cta-band.photo.bg-home2{background-image:linear-gradient(180deg,rgba(10,9,6,.82),rgba(10,9,6,.64) 50%,rgba(10,9,6,.86)),url(img/home2.webp);background-position:center,center 20%}
.cta-band.photo.bg-sponsor2{background-image:linear-gradient(180deg,rgba(10,9,6,.86),rgba(10,9,6,.76) 50%,rgba(10,9,6,.88)),url(img/sponsor2.webp);background-position:center,center 55%}
.cta-band.photo.bg-coach1{background-image:linear-gradient(180deg,rgba(10,9,6,.82),rgba(10,9,6,.62) 50%,rgba(10,9,6,.86)),url(img/coach1.webp);background-position:center,center 40%}
.cta-band.photo.bg-frew3{background-image:linear-gradient(180deg,rgba(10,9,6,.82),rgba(10,9,6,.62) 50%,rgba(10,9,6,.86)),url(img/frew3.webp);background-position:center,center 25%}
.parallax-sec.bg-frew3{background-image:linear-gradient(180deg,rgba(10,9,6,.94),rgba(10,9,6,.88) 50%,rgba(10,9,6,.94)),url(img/frew3.webp);background-position:center,center 55%}
.parallax-photo.bg-sponsor1{background-image:linear-gradient(180deg,rgba(10,9,6,.9) 0%,rgba(10,9,6,.6) 45%,rgba(10,9,6,.94) 100%),url(img/sponsor1.webp);background-position:center,center 55%}
.parallax-photo.bg-contact1{background-image:linear-gradient(180deg,rgba(10,9,6,.9) 0%,rgba(10,9,6,.66) 45%,rgba(10,9,6,.94) 100%),url(img/contact1.webp);background-position:center,center 50%}
.parallax-frew.bg-hero{background-image:linear-gradient(180deg,rgba(10,9,6,.9) 0%,rgba(10,9,6,.66) 45%,rgba(10,9,6,.94) 100%),url(img/ibew-hero.webp);background-position:center,center 45%}

/* ---------- tournament flyer ---------- */
.flyer-wrap{display:grid;grid-template-columns:minmax(0,0.92fr) minmax(0,1.08fr);gap:44px;align-items:center;max-width:1180px;margin:70px auto 0}
.flyer-card{position:relative;padding:14px;background:linear-gradient(150deg,#241c08,#0e0c07);border:1px solid rgba(245,179,1,.45);box-shadow:0 34px 80px rgba(0,0,0,.65)}
.flyer-card::before{content:"";position:absolute;inset:6px;border:1px solid rgba(245,179,1,.25);pointer-events:none}
.flyer-card img{display:block;width:100%;height:auto}
.flyer-info .fi-kick{font-family:'Graduate',serif;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-b);margin-bottom:12px}
.flyer-info h3{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(34px,4.6vw,58px);line-height:.95;letter-spacing:.01em;margin-bottom:22px}
.fi-list{list-style:none;border-top:1px solid rgba(245,179,1,.22)}
.fi-list li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:11px 2px;border-bottom:1px solid rgba(245,179,1,.16)}
.fi-list b{font-family:'Graduate',serif;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-b);white-space:nowrap}
.fi-list span{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:19px;letter-spacing:.03em;text-transform:uppercase;color:#fff;text-align:right}
.fi-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.fi-note{margin-top:16px;font-size:14.5px;color:#a99f88}
.fi-note a{color:var(--gold-b)}
@media(max-width:900px){
  .flyer-wrap{grid-template-columns:1fr;gap:30px;margin-top:48px}
  .flyer-info h3{font-size:clamp(30px,8vw,42px)}
  .fi-cta .btn{flex:1 1 100%;text-align:center}
}
.parallax-sec.bg-frewhero{background-image:linear-gradient(180deg,rgba(10,9,6,.94),rgba(10,9,6,.88) 50%,rgba(10,9,6,.94)),url(img/frew-aerial.webp);background-position:center,center 45%}

/* ---------- IBEW stacked feature ---------- */
.mvp-card.stacked{grid-template-columns:1fr;justify-items:center;text-align:center;gap:0;padding:66px 46px 60px}
.mvp-card.stacked .mvp-logo{width:auto;max-width:min(600px,86%);margin:0 auto 28px}
.mvp-card.stacked .mk{justify-content:center;margin-bottom:14px}
.mvp-card.stacked h3{margin-bottom:20px}
.mvp-card.stacked .mvp-amt{margin-bottom:26px}
.mvp-card.stacked .mvp-amt b{font-size:clamp(58px,9vw,126px)}
.mvp-card.stacked p{max-width:780px;margin:0 auto 30px}
@media(max-width:900px){.mvp-card.stacked{padding:44px 24px 40px}}

/* ---------- three equal in-kind boxes ---------- */
.inkind-grid.three{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.inkind-grid.three .inkind{height:100%}
.inkind-grid.three .ik-body{display:flex;flex-direction:column;height:100%}
.inkind-grid.three .ik-body p{margin-top:auto}
@media(max-width:880px){.inkind-grid.three{grid-template-columns:1fr}}

/* ---------- taller coaching band ---------- */
.cta-band.tall2{padding-top:150px;padding-bottom:150px}
.cta-band .cta-sub{margin-top:14px;color:var(--gold-b);font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:17px}
.btn.soon{opacity:.65;pointer-events:none}
@media(max-width:760px){.cta-band.tall2{padding-top:96px;padding-bottom:96px}}

/* ---------- mobile navigation ---------- */
.navtoggle{display:none;background:transparent;border:2px solid var(--gold);padding:0 9px;width:48px;height:42px;flex:0 0 48px;flex-direction:column;justify-content:center;gap:5px}
.navtoggle span{display:block;width:100%;height:2.5px;background:var(--gold-b);transition:transform .26s ease,opacity .18s ease}
.navtoggle.on span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.navtoggle.on span:nth-child(2){opacity:0}
.navtoggle.on span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
@media(max-width:900px){
  nav.top{gap:12px;padding:9px 16px}
  nav.top.small{padding:6px 16px}
  .navtoggle{display:flex;margin-left:auto}
  nav.top .links{
    display:block;position:absolute;top:100%;left:0;right:0;margin-left:0;
    background:#090704;
    border-bottom:2px solid var(--gold);box-shadow:0 24px 50px rgba(0,0,0,.65);
    padding:4px 18px 0;max-height:0;overflow:hidden;opacity:0;visibility:hidden;
    transition:max-height .32s ease,opacity .24s ease,visibility .24s,padding .32s ease}
  nav.top .links.open{max-height:calc(100vh - 90px);overflow-y:auto;opacity:1;visibility:visible;padding:10px 18px 22px}
  nav.top .links a.nl{display:block;font-size:17px;letter-spacing:.16em;padding:15px 2px;border-bottom:1px solid rgba(245,179,1,.16)}
  nav.top .links a.nl.active{color:var(--gold-b)}
  nav.top .links .btn{display:block;margin-top:18px;text-align:center;padding:15px 20px;font-size:14px}
}

.parallax-photo.bg-schedule1{background-image:linear-gradient(180deg,rgba(10,9,6,.9) 0%,rgba(10,9,6,.6) 45%,rgba(10,9,6,.94) 100%),url(img/schedule1.webp);background-position:center,center 32%}
.parallax-photo.bg-events1{background-image:linear-gradient(180deg,rgba(10,9,6,.9) 0%,rgba(10,9,6,.6) 45%,rgba(10,9,6,.94) 100%),url(img/events1.webp);background-position:center,center 40%}
.cta-band.photo.bg-contact1{background-image:linear-gradient(180deg,rgba(10,9,6,.86),rgba(10,9,6,.74) 50%,rgba(10,9,6,.88)),url(img/contact1.webp);background-size:auto,cover;background-position:center,center 50%}

.parallax-photo.bg-events2{background-image:linear-gradient(180deg,rgba(10,9,6,.9) 0%,rgba(10,9,6,.6) 45%,rgba(10,9,6,.94) 100%),url(img/events2.webp);background-position:center,center 38%}
.parallax-photo.bg-board1{background-image:linear-gradient(180deg,rgba(10,9,6,.86) 0%,rgba(10,9,6,.56) 45%,rgba(10,9,6,.92) 100%),url(img/board1.webp);background-position:center,center 50%}
.cta-band.photo.bg-board2{background-image:linear-gradient(180deg,rgba(10,9,6,.88),rgba(10,9,6,.76) 50%,rgba(10,9,6,.9)),url(img/board2.webp);background-position:center,center 45%}
.parallax-frew.bg-sponsor1{background-image:linear-gradient(180deg,rgba(10,9,6,.86) 0%,rgba(10,9,6,.5) 45%,rgba(10,9,6,.92) 100%),url(img/sponsor1.webp);background-position:center,center 42%}

/* ---------- condensed mobile footer ---------- */
@media(max-width:900px){
  footer.site{padding:36px 5vw 22px}
  .foot-grid{grid-template-columns:1fr 1fr;gap:24px 20px;align-items:start}
  .foot-grid>div:first-child{grid-column:1 / -1;text-align:center}
  .foot-grid>div:first-child img{height:86px;display:block;margin:0 auto}
  .foot-note{margin:10px auto 0;max-width:400px;text-align:center;font-size:13.5px}
  .foot-grid .fh{margin-bottom:11px;font-size:11px;letter-spacing:.2em}
  .foot-grid a{margin-bottom:7px;font-size:14px;letter-spacing:.08em}
  .foot-bottom{margin-top:24px;padding-top:18px;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:11px;font-size:11.5px}
  .foot-bottom>div{width:100%}
  .foot-bottom .pby{justify-content:center;font-size:11.5px}
}

/* ---------- real parallax on touch devices ----------
   background-attachment:fixed is ignored or janky on mobile browsers, so on
   coarse pointers we oversize the photo layer and drive its Y position from
   scroll in JS. Percentage positioning with an oversized layer can never
   expose a gap. */
@media (hover:none) and (pointer:coarse){
  .parallax-photo,.parallax-frew,.parallax-sec,.cta-band.photo{
    background-size:auto,auto 110% !important;
    background-position-y:center,var(--pxy,50%) !important;
    will-change:background-position}
}

/* ============ COACHES APPLICATION ============ */
.mission{max-width:900px;margin:0 auto 54px;text-align:center}
.mission p{color:#cfc8b6;font-size:16.5px;line-height:1.78;margin-bottom:18px}
.mission p strong{color:var(--gold-b)}
.mission .mission-note{margin-top:26px;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:16px;color:var(--gold-b)}

.appform{max-width:1000px;margin:0 auto}
.appform .hp{display:none}
.appform .fs{background:linear-gradient(165deg,#16130b,#0f0d08);border:1px solid rgba(245,179,1,.35);margin-bottom:26px;box-shadow:0 26px 60px rgba(0,0,0,.5)}
.appform .fs-head{display:flex;align-items:center;gap:14px;background:var(--gold);color:#000;padding:14px 24px;font-family:'Graduate',serif;font-size:12.5px;letter-spacing:.24em;text-transform:uppercase}
.appform .fs-n{font-family:'Anton',sans-serif;font-size:20px;letter-spacing:0;line-height:1;background:#000;color:var(--gold);padding:5px 9px}
.appform .fs-body{padding:30px 28px 34px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.appform .fld{display:flex;flex-direction:column;grid-column:span 4}
.appform .fld.full{grid-column:span 4}
.appform .fld.half{grid-column:span 2}
.appform .fld.w3{grid-column:span 3}
.appform .fld.w1{grid-column:span 1}
.appform label,.appform .lb{display:block;font-family:'Graduate',serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-b);margin-bottom:9px;line-height:1.6}
.appform label b,.appform .lb b{color:var(--stitch);font-weight:400}
.appform input[type=text],.appform input[type=tel],.appform input[type=email],.appform input[type=number],.appform input[type=date],.appform textarea{
  width:100%;background:#0a0906;border:1px solid rgba(245,179,1,.3);color:var(--paper);padding:14px 16px;
  font-family:'Barlow',sans-serif;font-size:15.5px;border-radius:0;-webkit-appearance:none;transition:.2s}
.appform input:focus,.appform textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(245,179,1,.18)}
.appform input::placeholder,.appform textarea::placeholder{color:#6f6858}
.appform textarea{min-height:120px;resize:vertical}
.appform input.sig{font-family:'Permanent Marker',cursive;font-size:21px;letter-spacing:.02em;color:#fff}
.appform .hint{margin-top:8px;font-size:13.5px;color:#8d8672;line-height:1.55}
.appform .hint a{color:var(--gold-b)}
.appform .hint.center{grid-column:span 4;text-align:center;margin-top:18px}

.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips.sm .chip span{min-width:78px}
.chip{position:relative;cursor:inherit}
.chip input{position:absolute;opacity:0;width:0;height:0}
.chip span{display:block;padding:12px 20px;background:#0a0906;border:1px solid rgba(245,179,1,.3);
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:15px;letter-spacing:.1em;text-transform:uppercase;color:#cfc8b6;text-align:center;transition:.18s}
.chip:hover span{border-color:rgba(245,179,1,.6);color:#fff}
.chip input:checked+span{background:var(--gold);border-color:var(--gold);color:#000}
.chip input:focus-visible+span{box-shadow:0 0 0 3px rgba(245,179,1,.35)}
.appform .yn .lb{margin-bottom:11px}

.agree-intro{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:16px;color:var(--gold-b);grid-column:span 4;margin-bottom:2px}
.appform .ack{grid-column:span 4;display:flex;align-items:flex-start;gap:14px;margin-bottom:0;padding:15px 16px;background:#0a0906;border:1px solid rgba(245,179,1,.18);transition:.18s}
.appform .ack:hover{border-color:rgba(245,179,1,.45)}
.appform .ack input{flex:0 0 22px;width:22px;height:22px;margin-top:2px;accent-color:var(--gold);cursor:inherit}
.appform .ack span{font-family:'Barlow',sans-serif;font-size:15px;line-height:1.62;color:#cfc8b6;text-transform:none;letter-spacing:0}
.appform .ack.strong{border-color:rgba(245,179,1,.45);background:rgba(245,179,1,.05)}
.appform .ack.strong span{color:#fff;font-weight:600}
.release{grid-column:span 4;border-left:3px solid var(--gold);background:rgba(245,179,1,.04);padding:20px 22px;margin-top:6px}
.release .rel-head{font-family:'Graduate',serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-b);margin-bottom:10px}
.release p{color:#cfc8b6;font-size:15px;line-height:1.7}
.sig-row{grid-column:span 4;display:grid;grid-template-columns:2fr 1fr;gap:20px;margin-top:10px}
.sig-row .fld{grid-column:auto}
.appform .btn.submit{grid-column:span 4;margin-top:10px;width:100%;justify-content:center;padding:18px 20px;font-size:15px}

@media(max-width:820px){
  .appform .fs-body{padding:24px 18px 28px;gap:18px}
  .appform .fld.half,.appform .fld.w3,.appform .fld.w1{grid-column:span 4}
  .sig-row{grid-template-columns:1fr}
  .appform .fs-head{padding:12px 16px;font-size:11px;letter-spacing:.18em}
  .chips.sm .chip span{min-width:0;flex:1}
  .chips.sm{display:grid;grid-template-columns:1fr 1fr}
  .mission p{font-size:15.5px}
  .appform input.sig{font-size:17px}
}

/* ---------- thank you ---------- */
.thanks{max-width:760px;margin:0 auto;text-align:center;background:linear-gradient(165deg,#1a1509,#0f0d07);border:1px solid rgba(245,179,1,.4);padding:56px 44px;box-shadow:0 34px 80px rgba(0,0,0,.6)}
.thanks .tk-ball{width:78px;height:78px;margin:0 auto 22px;display:block;animation:lspin 9s linear infinite}
.thanks h2{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(32px,5vw,56px);line-height:.98;margin-bottom:22px}
.thanks p{color:#cfc8b6;font-size:16.5px;line-height:1.75;margin-bottom:16px}
.thanks .tk-note{font-size:15px;color:#a99f88;border-top:1px solid rgba(245,179,1,.2);padding-top:18px;margin-top:22px}
.thanks .tk-cta{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin:26px 0 6px}
.thanks .hint{font-size:13.5px;color:#8d8672}
.thanks .hint a{color:var(--gold-b)}
@media(max-width:760px){.thanks{padding:38px 22px}.thanks .tk-cta .btn{flex:1 1 100%;text-align:center}}
.parallax-photo.bg-coachhero{background-image:linear-gradient(180deg,rgba(10,9,6,.9) 0%,rgba(10,9,6,.56) 45%,rgba(10,9,6,.94) 100%),url(img/coach-hero.webp);background-position:center,center 50%}

/* ============================================================
   MOBILE POLISH
   Keeps every headline kicker on one line, sizes the big faded
   background words to their own length so none get clipped, and
   tightens the sponsor marquee so names are readable at 390px.
   Desktop is untouched.
   ============================================================ */
@media(max-width:700px){

  /* --- gold kicker lines: the width came from letter-spacing, not size --- */
  .kicker{font-size:11.5px;letter-spacing:.1em;gap:7px;margin:10px 0 14px}
  .bhead .kick{font-size:10.5px;letter-spacing:.09em;gap:8px}
  .bhead .kick .kb{flex:0 0 auto}
  .straight-kick{font-size:14px;letter-spacing:.18em;margin-bottom:26px}
  .mvp-card .mk{font-size:10px;letter-spacing:.09em;gap:7px}
  .flyer-info .fi-kick{font-size:10px;letter-spacing:.12em}
  .lt .bar .brk,.lt .bar .dt{letter-spacing:.08em}
  .sched-frame .sf-head{letter-spacing:.1em}

  /* --- faded background words: scale each to its own length so none clip --- */
  .bhead .ghost{
    left:0;right:0;text-align:center;
    font-size:min(104px, calc(92vw / (var(--len,9) * 0.52)));
    top:-46px}

  /* --- tier label: badge and its caption share one line --- */
  .tier-label{gap:11px;margin-bottom:20px;flex-wrap:nowrap}
  .tier-label .tl-badge{flex:0 0 auto;font-size:14px;padding:7px 13px;white-space:nowrap;box-shadow:3px 3px 0 rgba(245,179,1,.25)}
  .tier-label .tl-sub{flex:1 1 auto;min-width:0;font-size:8.5px;letter-spacing:.08em;line-height:1.35}
  .tier-label::after{display:none}

  /* --- sponsor marquee: smaller tiles so names are readable --- */
  .spon-track{gap:9px}
  .sponsor{padding:11px 15px;font-size:12.5px;letter-spacing:.04em;gap:8px}
  .sponsor .bb{width:11px;height:11px}
  .spon-marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);
                mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}

  /* --- live calendar subhead --- */
  .cal-sub{gap:8px;padding:9px 14px;font-size:9.5px;letter-spacing:.12em}
  .cal-sub b{font-weight:400}
  .cal-sub em{width:100%;margin-left:16px;font-size:11px;letter-spacing:.06em}

  /* --- footer credit on its own line --- */
  .foot-bottom .credit{line-height:1.7}
  .foot-bottom .credit a{display:block;color:var(--gold-b)}
}

/* board portal nav button */
.btn-portal{background:transparent;color:var(--gold);border:2px solid var(--gold);box-shadow:none}
.btn-portal:hover{background:rgba(245,179,1,.14)}
.cal-ev.event{background:linear-gradient(180deg,rgba(214,58,32,.24),rgba(214,58,32,.1));border-left-color:var(--stitch)}
.cal-ev.event .tm{color:#f08a72}

/* clipboard events: wrap long live text */
.ev .t span{display:block;white-space:normal;overflow-wrap:anywhere}
.ev .mark{white-space:normal;overflow-wrap:anywhere;max-width:100%;transform:rotate(-1deg)}
.paper{overflow:hidden}
