:root{--gold:#d4af37;--gold-hi:#f5d67b;--orange:#f26522;--bg:#141414;--card:#1b1b1b;--line:#2c2c2c;--txt:#e6e6e6;--mut:#9a9a9a}
*{box-sizing:border-box;margin:0;padding:0}body{font-family:Raleway,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--txt);line-height:1.6}
header.site{background:#0e0e0e;border-bottom:1px solid var(--line);padding:16px 28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
header.site .brand{font-weight:600;letter-spacing:2px;text-transform:uppercase;font-size:13px;color:var(--txt);text-decoration:none}header.site .brand span{color:var(--gold)}
header.site nav a{color:var(--mut);text-decoration:none;font-size:13px;letter-spacing:1px;margin-left:22px}header.site nav a:hover{color:var(--gold)}
footer.site{border-top:1px solid var(--line);padding:22px;text-align:center;color:var(--mut);font-size:12px;letter-spacing:1px}footer.site a{color:var(--gold);text-decoration:none}
.crumb{max-width:1100px;margin:22px auto 0;padding:0 24px;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--mut)}.crumb a{color:var(--gold);text-decoration:none}
.member{max-width:1100px;margin:22px auto 60px;padding:0 24px;display:grid;grid-template-columns:340px 1fr;gap:40px}@media(max-width:820px){.member{grid-template-columns:1fr}}
.photo{position:relative;padding:6px}.photo img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:50%;display:block}
.halo{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;transform:rotate(-90deg)}.halo circle{fill:none;stroke:var(--gold);stroke-width:1.6;stroke-dasharray:305;stroke-dashoffset:0}
.photo .ph,.card .ph{width:100%;aspect-ratio:1/1;background:#222;display:flex;align-items:center;justify-content:center;color:#555;font-size:34px;border-radius:50%}
.pin{position:absolute;right:6%;bottom:6%;width:78px;height:78px;display:flex;align-items:center;justify-content:center;font-size:10px;letter-spacing:1px;color:var(--gold);overflow:hidden;filter:drop-shadow(0 4px 8px rgba(0,0,0,.6))}
.pin{background:none!important;border:0!important;padding:0!important}   /* never inherit chip styling — .role/.current/.past are text chips */
.pin img{width:100%;height:100%;object-fit:contain}
/* shine stays INSIDE the badge art: the badge itself masks the pin, so the sweep is clipped to its opaque pixels */
.pin.masked{-webkit-mask:url(member-pin.png) center/contain no-repeat;mask:url(member-pin.png) center/contain no-repeat;filter:none}@media(max-width:820px){.pin{width:88px;height:88px}}
.who h1{font-weight:400;font-size:34px;letter-spacing:1px}.who .co{color:var(--orange);font-size:17px;font-weight:500;margin-top:2px}
.seat{display:inline-block;margin-top:10px;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);border:1px solid rgba(212,175,55,.5);padding:5px 12px;border-radius:3px;position:relative;overflow:hidden}
.contact{margin-top:22px;display:flex;flex-direction:column;gap:12px}.contact a{color:var(--txt);text-decoration:none;border:1px solid var(--line);padding:10px 16px;border-radius:4px;font-size:14px;text-align:center}
.contact a.gold{background:var(--gold);color:#111;font-weight:600;border-color:var(--gold)}.contact a:hover{border-color:var(--gold)}.contact a.sec,a.sec{color:var(--mut);font-size:13px;border-style:dashed}
.addr{margin-top:14px;font-size:13px;color:var(--mut);text-align:center}
.bio-block{margin-top:28px;border-top:1px solid var(--line);padding-top:18px}.bio-block h3{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:8px}.bio-block p{color:#d5d5d5;font-size:15px}
.video{margin-top:34px;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#000;aspect-ratio:16/9}
/* self-hosted files keep their own shape (phone video is usually vertical) — capped so a tall clip can't take over */
.video.file{aspect-ratio:auto;border:0;background:none;text-align:center}
.vwrap{position:relative;display:inline-block;max-width:100%;margin:0 auto}
.vwrap video{width:100%;height:100%;display:block;border:1px solid var(--line);border-radius:6px;background:#000;object-fit:contain}
.vcover{position:absolute;inset:0;border:1px solid var(--line);border-radius:6px;cursor:pointer;padding:14% 0 0;
  background:linear-gradient(160deg,#1e1e1e,#0c0c0c);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;overflow:hidden}   /* KNOB: 14% pushes the group up from centre */
.vcover .ph{position:relative;width:44%;max-width:170px;aspect-ratio:1;margin-bottom:14px}
.vcover img{width:100%;height:100%;object-fit:cover;border-radius:50%;border:2px solid var(--gold);box-shadow:0 8px 22px rgba(0,0,0,.55);display:block}
.vcover .vcn{font-size:16px;font-weight:600;color:#eee;margin-top:16px}
.vcover .vcs{font-size:9.5px;letter-spacing:3px;text-transform:uppercase;color:var(--gold)}
.vcover .vplay{position:absolute;left:50%;bottom:-22px;transform:translateX(-50%);width:44px;height:44px;border-radius:50%;background:#141414;border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;transition:transform .2s,background .2s;box-shadow:0 6px 16px rgba(0,0,0,.6)}
.vcover .vplay::after{content:"";border-left:13px solid var(--gold);border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:4px}
.vcover:hover .vplay{transform:translateX(-50%) scale(1.1);background:#1e1e1e}
.vcover.gone{display:none}   /* KNOB: 62vh cap */.video iframe,.video video{width:100%;height:100%;border:0;display:block;object-fit:cover;background:#000}
.chapter-cta{margin-top:40px;border:1px solid var(--gold);border-radius:6px;padding:26px 30px;background:linear-gradient(180deg,rgba(212,175,55,.09),rgba(212,175,55,.02));text-align:center;position:relative;overflow:hidden}
.chapter-cta .k{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:8px}.chapter-cta p{color:#ddd;font-size:14.5px;max-width:640px;margin:0 auto 16px}
.chapter-cta a{display:inline-block;background:var(--gold);color:#111;padding:11px 22px;border-radius:4px;text-decoration:none;font-weight:600;letter-spacing:1px}
.dir{max-width:1100px;margin:22px auto 60px;padding:0 24px}.dir h1{font-weight:300;font-size:32px;letter-spacing:1px;text-align:center}.dir h1 span{color:var(--orange)}
.dir .rule{width:60px;height:2px;background:var(--orange);margin:10px auto 8px}.dir .lead{text-align:center;color:var(--mut);font-size:14px;max-width:640px;margin:0 auto 34px}
.tools{max-width:900px;margin:0 auto 26px}.search{position:relative;display:flex;align-items:center;background:#1b1b1b;border:1px solid var(--line);border-radius:6px;padding:0 12px;transition:border-color .25s}.search:focus-within{border-color:var(--gold)}
.search .ico{color:var(--gold);font-size:20px;margin-right:8px}.search input{flex:1;background:none;border:0;outline:0;color:var(--txt);font:inherit;font-size:15px;padding:13px 0}.search input::placeholder{color:#666}
.search button{background:none;border:0;color:#777;font-size:14px;cursor:pointer;padding:6px;display:none}.search.has button{display:block}
.chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:14px}.chip{background:none;border:1px solid var(--line);color:#bbb;font:inherit;font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase;padding:7px 13px;border-radius:20px;cursor:pointer;transition:all .2s}
.chip:hover{border-color:var(--gold);color:var(--gold)}.chip.on{background:var(--gold);border-color:var(--gold);color:#111;font-weight:600}
.empty{display:none;text-align:center;color:var(--mut);padding:40px 0}.empty a{color:var(--gold)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:22px}
.card{background:var(--card);border:1px solid var(--line);border-radius:6px;overflow:hidden;text-decoration:none;color:var(--txt);opacity:0;transform:translateY(44px)}
.card.on{opacity:1;transform:none;transition:opacity .25s ease-out calc(var(--i,0)*90ms),transform .7s cubic-bezier(.22,1.1,.36,1) calc(var(--i,0)*90ms),border-color .25s}
.card.on:hover{transform:translateY(-3px);transition-delay:0s;border-color:var(--gold)}.card.hide{display:none}
.card .imgw{padding:16px 16px 4px}.card img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;border-radius:50%;box-shadow:0 0 0 2px var(--card),0 0 0 3.5px var(--gold)}.card .b{padding:12px 14px 14px}.card .n{font-weight:600;font-size:15px}.card .c{color:var(--orange);font-size:13px;margin-top:2px}.card .s{color:var(--mut);font-size:11px;letter-spacing:2px;text-transform:uppercase;margin-top:8px}
.card .imgw{position:relative;overflow:hidden}
/* The shine is clipped to the HEADSHOT CIRCLE, not the card box. .cshine is a fixed round
   window with overflow:hidden and only its ::after travels. The old rule translated an
   element that carried its OWN border-radius, so the round shape slid off the photo and the
   gold band swept across the square. Same clip-layer trick as .cap-shine (§22). */
.card .cshine{position:absolute;top:16px;bottom:4px;left:16px;right:16px;border-radius:50%;overflow:hidden;pointer-events:none}
.card .cshine::after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(105deg,transparent 30%,rgba(245,214,123,.5) 50%,transparent 70%);transform:translateX(-120%)}
.card:hover .cshine::after{animation:aShineR .7s ease-in-out forwards}@keyframes aShineR{0%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
/* ===== animations: fire-once, compositor-safe ===== */
@keyframes aIn{to{opacity:1;transform:none}}@keyframes aRule{to{transform:scaleX(1)}}@keyframes aRuleY{to{transform:scaleY(1)}}
@keyframes aRing{0%{opacity:.9;transform:translate(50%,50%) scale(.5)}100%{opacity:0;transform:translate(50%,50%) scale(3.6)}}
@keyframes aFlash{0%{opacity:0}30%{opacity:.55}100%{opacity:0}}
@keyframes aPinFly{0%{opacity:0;transform:translate(90px,-120px) scale(1.9) rotate(8deg)}55%{opacity:1;transform:translate(0,0) scale(1.14) rotate(-3deg)}75%{opacity:1;transform:scale(.96)}100%{opacity:1;transform:none}}
@keyframes aGlint{0%{transform:translateX(-160%) skewX(-18deg)}22%{transform:translateX(420%) skewX(-18deg)}100%{transform:translateX(420%) skewX(-18deg)}}
@keyframes aShine{0%{transform:translateX(-150%) skewX(-18deg)}100%{transform:translateX(300%) skewX(-18deg)}}
.anim .photo img,.anim .photo .ph{opacity:0;transform:scale(.96);animation:aIn .7s ease-out .1s forwards}
/* gold halo draws around the circle (stroke-dashoffset, one-shot, replaces the square frame) */
.anim .halo circle{stroke-dashoffset:305;animation:aHalo 1.1s ease-out .75s forwards}@keyframes aHalo{to{stroke-dashoffset:0}}
.anim .pin{opacity:0;animation:aPinFly .7s cubic-bezier(.34,1.3,.5,1) 2s forwards}.pin::after{content:"";position:absolute;top:0;bottom:0;left:0;width:45%;background:linear-gradient(105deg,transparent,rgba(245,214,123,.75),transparent);transform:translateX(-150%) skewX(-18deg)}
.anim .pin::after{animation:aShine .8s ease-in-out 2.75s forwards}
.ring{position:absolute;right:calc(6% + 31px);bottom:calc(6% + 31px);width:20px;height:20px;border:2px solid var(--gold);border-radius:50%;opacity:0;pointer-events:none;transform:translate(50%,50%)}
.anim .ring{animation:aRing .7s ease-out 2.55s forwards}.anim .ring.r2{animation-duration:.9s;animation-delay:2.7s}
.flash{position:absolute;inset:6px;background:var(--gold-hi);opacity:0;pointer-events:none;border-radius:50%}.anim .flash{animation:aFlash .5s ease-out 2.55s forwards}
.anim .who h1,.anim .who .co,.anim .who .seat,.anim .contact,.anim .addr{opacity:0;transform:translateY(12px);animation:aIn .6s ease-out forwards}
.anim .who h1{animation-delay:.3s}.anim .who .co{animation-delay:.45s}.anim .who .seat{animation-delay:.6s}.anim .contact{animation-delay:.8s}.anim .addr{animation-delay:1s}
.seat::after{content:"";position:absolute;top:0;bottom:0;left:0;width:45%;background:linear-gradient(105deg,transparent,rgba(245,214,123,.6),transparent);transform:translateX(-160%) skewX(-18deg)}.anim .seat::after{animation:aGlint 6s ease-in-out 3.2s infinite}
.bio-block,.spec,.video,.chapter-cta{opacity:0;transform:translateY(16px)}
/* transitions switch on only after the first frame, so nothing fades out of view on load */
.fxready .bio-block,.fxready .spec,.fxready .video,.fxready .chapter-cta{transition:opacity .6s ease-out,transform .6s ease-out}.bio-block.on,.spec.on,.video.on,.chapter-cta.on{opacity:1;transform:none}
.chapter-cta::after{content:"";position:absolute;top:0;bottom:0;left:0;width:35%;background:linear-gradient(105deg,transparent,rgba(245,214,123,.45),transparent);transform:translateX(-160%) skewX(-18deg)}.chapter-cta.on::after{animation:aGlint 5s ease-in-out 1s infinite}
/* leadership */
.pin.leader{width:88px;height:88px}@media(max-width:820px){.pin.leader{width:98px;height:98px}}
.pin.leader.masked{-webkit-mask:url(/images/bnilt-t.png) center/contain no-repeat;mask:url(/images/bnilt-t.png) center/contain no-repeat}
.pin.support{width:78px;height:78px}@media(max-width:820px){.pin.support{width:88px;height:88px}}   /* KNOB: matches the member pin — normalize badge artwork rather than scaling here */
.pin.support.masked{-webkit-mask:url(role-pin.png) center/contain no-repeat;mask:url(role-pin.png) center/contain no-repeat}
.roles{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}.roles.compact{margin-top:8px;gap:6px}
.role{display:inline-block;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;padding:5px 11px;border-radius:3px;border:1px solid var(--gold);color:#111;background:linear-gradient(180deg,var(--gold-hi),var(--gold));font-weight:600}
.roles.compact .role{font-size:9.5px;letter-spacing:1.5px;padding:3px 8px}
.role.founding,.role.director{background:none;color:var(--gold)}.role.past{background:none;color:var(--mut);border-color:var(--line);font-weight:400}
.chip.lead{border-color:var(--gold);color:var(--gold)}.chip.lead.on{background:var(--gold);color:#111}
.card .lpin{position:absolute;right:14px;bottom:8px;width:44px;height:44px;object-fit:contain;border-radius:0;box-shadow:none;filter:drop-shadow(0 3px 6px rgba(0,0,0,.6))}  /* badge keeps its own shape — no headshot ring/crop */
/* KNOB: mobile-only — badge doubled and nudged further onto the headshot circle */
@media(max-width:820px){.card .lpin{width:88px;height:88px;right:22px;bottom:16px}}

/* ===== FUN FX (locked 2026-08-31): A orbit · B buttons cascade · C bio headings · D ambient glow · E pin re-glint · F seat ink · G full-page badge landing ===== */
html,body{overflow-x:hidden}   /* sparks/rings fly past the viewport; never create horizontal scroll */
.photo{z-index:0}.photo .orbit{position:absolute;inset:6px;border-radius:50%;pointer-events:none;opacity:0;background:conic-gradient(from 0deg,transparent 0 70%,rgba(245,214,123,0) 78%,rgba(245,214,123,.95) 86%,transparent 92%);-webkit-mask:radial-gradient(circle,transparent 0 calc(50% - 3px),#000 calc(50% - 2px),#000 calc(50% - .5px),transparent 50%);mask:radial-gradient(circle,transparent 0 calc(50% - 3px),#000 calc(50% - 2px),#000 calc(50% - .5px),transparent 50%)}
@keyframes orbit{to{transform:rotate(360deg)}}.anim .photo .orbit{opacity:1;animation:orbit 6s linear 2.2s infinite}          /* KNOB A: 6s lap */
.anim .contact a{opacity:0;transform:translateX(-14px);animation:aIn .5s ease-out forwards;position:relative;overflow:hidden}
.anim .contact a:nth-child(1){animation-delay:.9s}.anim .contact a:nth-child(2){animation-delay:1.05s}.anim .contact a:nth-child(3){animation-delay:1.2s}.anim .contact a:nth-child(4){animation-delay:1.35s}
.contact a::before{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left}.anim .contact a::before{animation:aRule .5s ease-out forwards}
.anim .contact a:nth-child(1)::before{animation-delay:1.4s}.anim .contact a:nth-child(2)::before{animation-delay:1.55s}.anim .contact a:nth-child(3)::before{animation-delay:1.7s}.anim .contact a:nth-child(4)::before{animation-delay:1.85s}
.bio-block{border-top:0;position:relative}.bio-block::before{content:"";position:absolute;left:0;top:0;right:0;height:1px;background:linear-gradient(90deg,var(--gold),transparent);transform:scaleX(0);transform-origin:left;transition:transform .7s ease-out}
.bio-block.on::before{transform:scaleX(1)}.bio-block h3{transition-delay:.15s}.bio-block p{opacity:0;transform:translateY(6px);transition:opacity .5s ease-out .3s,transform .5s ease-out .3s}.bio-block.on p{opacity:1;transform:none}
.photo .ambient{position:absolute;inset:-12%;border-radius:50%;pointer-events:none;opacity:0;z-index:-1;background:radial-gradient(circle,rgba(212,175,55,.28) 0%,rgba(212,175,55,.08) 45%,transparent 68%);-webkit-filter:blur(14px);filter:blur(14px)}
@keyframes breathe{0%,100%{opacity:.35}50%{opacity:1}}.anim .photo .ambient{animation:breathe 6s ease-in-out 1.5s infinite}   /* KNOB D */
@keyframes ink{0%{background:linear-gradient(90deg,var(--gold) 0%,var(--gold) 0%,transparent 0%);color:var(--gold)}45%{background:linear-gradient(90deg,var(--gold) 0%,var(--gold) 100%,transparent 100%);color:#111}100%{background:none;color:var(--gold)}}
.anim .who .seat{animation:aIn .6s ease-out .6s forwards,ink 1.4s ease-in-out .7s}
/* G: full-page badge landing */
.photo{overflow:visible}
@keyframes pinFlyBig{0%{opacity:0;transform:translate(170px,-240px) scale(2.8) rotate(28deg)}35%{opacity:1}55%{transform:translate(0,0) scale(1.28) rotate(-7deg)}68%{transform:scale(.9) rotate(3deg)}80%{transform:scale(1.08) rotate(-1deg)}90%{transform:scale(.97)}100%{opacity:1;transform:none}}
.anim .pin{animation:pinFlyBig 1.15s cubic-bezier(.3,1.2,.4,1) 2s forwards}                       /* KNOB G: flight */
@keyframes ringBig{0%{opacity:1;transform:translate(50%,50%) scale(.4)}100%{opacity:0;transform:translate(50%,50%) scale(5.2)}}
@keyframes ringHuge{0%{opacity:1;transform:translate(50%,50%) scale(.4)}100%{opacity:0;transform:translate(50%,50%) scale(34)}}   /* KNOB: ring reach */
.anim .ring{animation:ringBig 1.1s ease-out 2.62s forwards;border-width:3px}.anim .ring.r2{animation:ringHuge 1.6s ease-out 2.7s forwards;border-width:2px}
.photo .ring.r3{position:absolute;right:calc(6% + 31px);bottom:calc(6% + 31px);width:20px;height:20px;border:1px solid var(--gold-hi);border-radius:50%;opacity:0;pointer-events:none;transform:translate(50%,50%)}.anim .ring.r3{animation:ringHuge 2.1s ease-out 2.9s forwards}
.photo .shock{position:absolute;right:calc(6% + 39px);bottom:calc(6% + 39px);width:20px;height:20px;border-radius:50%;pointer-events:none;opacity:0;transform:translate(50%,50%) scale(.5);background:radial-gradient(circle,rgba(245,214,123,.55) 0%,rgba(212,175,55,.25) 40%,transparent 70%)}
@keyframes shock{0%{opacity:1;transform:translate(50%,50%) scale(.5)}100%{opacity:0;transform:translate(50%,50%) scale(60)}}.anim .shock{animation:shock 1.3s ease-out 2.62s forwards}   /* KNOB: shockwave reach */
.photo .spark{position:absolute;right:calc(6% + 39px);bottom:calc(6% + 39px);width:6px;height:6px;border-radius:50%;background:var(--gold-hi);opacity:0;pointer-events:none;transform:translate(50%,50%);--dx:0px;--dy:0px}
@keyframes sparkFly{0%{opacity:1;transform:translate(50%,50%) scale(1.2)}100%{opacity:0;transform:translate(calc(50% + var(--dx)),calc(50% + var(--dy))) scale(.2)}}.anim .spark{animation:sparkFly 1.5s cubic-bezier(.2,.8,.4,1) 2.62s forwards}
@keyframes flashBig{0%{opacity:0}25%{opacity:.8}100%{opacity:0}}.anim .flash{animation:flashBig .6s ease-out 2.62s forwards}
@keyframes shudder{0%,100%{transform:translate(0,0)}20%{transform:translate(2px,-1px)}40%{transform:translate(-2px,1px)}60%{transform:translate(1px,1px)}80%{transform:translate(-1px,-1px)}}
.anim .photo img{animation:aIn .7s ease-out .1s forwards,shudder .35s ease-out 2.62s}
.pageflash{position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 70% 40%,rgba(245,214,123,.35),transparent 60%);opacity:0;z-index:5}
@keyframes pageflash{0%{opacity:0}15%{opacity:1}100%{opacity:0}}.anim-on .pageflash{animation:pageflash .9s ease-out 2.62s forwards}
.anim .pin::after{animation:aShine .8s ease-in-out 3.2s forwards,aGlint 7s ease-in-out 4.5s infinite}   /* E: re-glint */


/* ===== member badges ===== */
.mb{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.mb .chip{display:inline-flex;align-items:center;gap:7px;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:#d8d8d8;border:1px solid #333;background:#1a1a1a;padding:6px 11px;border-radius:20px}
.mb .chip img{width:17px;height:17px;object-fit:contain;border-radius:3px}
.mb .chip .e{font-size:14px;line-height:1}
.mb.compact{margin-top:9px;gap:6px}
.mb.compact .chip{font-size:9.5px;padding:4px 8px;letter-spacing:1.2px}
.mb.compact .chip img{width:14px;height:14px}
.mb.compact .chip .e{font-size:12px}
/* ===== Specialties (visible text, honest expander) ===== */
.spec{margin-top:26px;border-top:0;padding-top:18px;position:relative}
.spec::before{content:"";position:absolute;left:0;top:0;right:0;height:1px;background:linear-gradient(90deg,var(--gold),transparent);transform:scaleX(0);transform-origin:left;transition:transform .7s ease-out}
.spec.on::before{transform:scaleX(1)}
.spec .spec-line{opacity:0;transform:translateY(6px);transition:opacity .5s ease-out .3s,transform .5s ease-out .3s}
.spec.on .spec-line{opacity:1;transform:none}
.spec .spec-more{opacity:0;transition:opacity .5s ease-out .45s}
.spec.on .spec-more{opacity:1}
.spec h3{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:8px}
.spec-line{color:#c2c2c2;font-size:13.5px;line-height:1.75}
.spec-el{color:#6e6e6e}
.spec-more{margin-top:6px}
.spec-more summary{cursor:pointer;font-size:10.5px;color:#6e6e6e;letter-spacing:1px;text-transform:uppercase;list-style:none;padding:4px 0}
.spec-more summary::-webkit-details-marker{display:none}
.spec-more summary::after{content:" ▾";color:var(--gold)}
.spec-more[open] summary::after{content:" ▴"}
.spec-more summary:hover{color:var(--gold)}
.spec-more .spec-line{margin-top:8px}
/* ===== Power Team Captain plaque ===== */
.cap{margin-top:20px;border:1px solid rgba(212,175,55,.45);border-radius:6px;background:linear-gradient(180deg,rgba(212,175,55,.08),rgba(212,175,55,.02));padding:18px;position:relative;overflow:visible}
/* glint lives in its own clipped layer so the burst can leave the plaque */
.cap-shine{position:absolute;inset:0;overflow:hidden;border-radius:6px;pointer-events:none}
.cap-shine::after{content:"";position:absolute;top:0;bottom:0;left:0;width:35%;background:linear-gradient(105deg,transparent,rgba(245,214,123,.35),transparent);transform:translateX(-160%) skewX(-18deg)}
.cap.on .cap-shine::after{animation:aGlint 6s ease-in-out 2.6s infinite}
/* ---- badge landing (option 3) ---- KNOBS: --capx/--capy = impact point, ring scales = reach ---- */
.cap{--capx:72px;--capy:72px}
@media(max-width:820px){.cap{--capx:72px;--capy:72px}}
.cap-ring,.cap-shock{position:absolute;left:var(--capx);top:var(--capy);width:30px;height:30px;border-radius:50%;opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.4);z-index:0}
.cap-ring{border:2px solid var(--gold-hi)}
.cap-shock{background:radial-gradient(circle,rgba(245,214,123,.5) 0%,rgba(212,175,55,.22) 40%,transparent 70%)}
@keyframes capRing{0%{opacity:.9;transform:translate(-50%,-50%) scale(.4)}100%{opacity:0;transform:translate(-50%,-50%) scale(22)}}
@keyframes capRingHuge{0%{opacity:.75;transform:translate(-50%,-50%) scale(.4)}100%{opacity:0;transform:translate(-50%,-50%) scale(46)}}
@keyframes capShock{0%{opacity:1;transform:translate(-50%,-50%) scale(.4)}100%{opacity:0;transform:translate(-50%,-50%) scale(30)}}
@keyframes capDrop{0%{opacity:0;transform:translateY(-70px) scale(1.5) rotate(14deg)}55%{opacity:1;transform:translateY(0) scale(1.14) rotate(-4deg)}75%{transform:scale(.95)}100%{opacity:1;transform:none}}
@keyframes capShake{0%,100%{transform:translate(0,0)}25%{transform:translate(2px,-1px)}50%{transform:translate(-2px,1px)}75%{transform:translate(1px,1px)}}
.cap img{position:relative;z-index:2}
.cap.on img{animation:capDrop .8s cubic-bezier(.3,1.4,.4,1) .3s both}
.cap.on .cap-ring.r1{animation:capRing 1.1s ease-out .78s forwards}
.cap.on .cap-ring.r2{animation:capRingHuge 1.6s ease-out .95s forwards;border-width:1.5px}
.cap.on .cap-ring.r3{animation:capRingHuge 2.1s ease-out 1.15s forwards;border-width:1px;border-color:var(--gold)}
.cap.on .cap-shock{animation:capShock 1.2s ease-out .8s forwards}
.cap.on{animation:capShake .3s ease-out .8s}
.cap-top,.cap-rule,.cap-members{position:relative;z-index:1}
.cap-top{display:flex;align-items:center;gap:8px}   /* KNOB: badge ↔ text gap */
.cap img{width:109px;height:109px;flex:0 0 109px;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.6))}   /* KNOB: plaque badge size */
.cap-k{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--gold)}
.cap-team{font-size:20px;font-weight:600;margin-top:2px;line-height:1.25}
.cap-rule{height:1px;background:linear-gradient(90deg,var(--gold),transparent);margin:14px 0 10px}
.cap-members{font-size:12.5px;color:#cfcfcf;line-height:1.7}
.cap-members a{color:var(--gold-hi);text-decoration:none;font-weight:500;border-bottom:1px solid rgba(245,214,123,.25)}
.cap-members a:hover{border-bottom-color:var(--gold-hi)}
.pin.captain{width:78px;height:78px}@media(max-width:820px){.pin.captain{width:88px;height:88px}}
.pin.captain.masked{-webkit-mask:url(captain-pin.png) center/contain no-repeat;mask:url(captain-pin.png) center/contain no-repeat}
/* ===== 100 Club medallion (V1) + crown chip (V3) ===== */
.med{position:absolute;left:-14px;bottom:-14px;width:96px;height:96px;filter:drop-shadow(0 6px 10px rgba(0,0,0,.6));z-index:4}
.med svg{width:100%;height:100%;overflow:visible}.med .disc{fill:url(#gm)}.med .rim{fill:none;stroke:url(#gr);stroke-width:2.2}
.med .laurel{fill:none;stroke:var(--gold-hi);stroke-width:1.3;stroke-linecap:round}
.med text{font-family:Raleway,Arial,sans-serif;font-weight:700;fill:#1a1206}.med .n100{font-size:26px}.med .club{font-size:8px;letter-spacing:2.5px;fill:#3a2a08}.med .mon{font-size:5.5px;letter-spacing:1px;fill:#3a2a08}
.med .orb{position:absolute;inset:0;border-radius:50%;pointer-events:none;background:conic-gradient(from 0deg,transparent 0 76%,rgba(255,255,255,.95) 88%,transparent 94%);-webkit-mask:radial-gradient(circle,transparent 0 calc(50% - 4px),#000 calc(50% - 3px),#000 calc(50% - 1px),transparent 50%);mask:radial-gradient(circle,transparent 0 calc(50% - 4px),#000 calc(50% - 3px),#000 calc(50% - 1px),transparent 50%)}
.med .shine{position:absolute;inset:0;border-radius:50%;overflow:hidden;pointer-events:none}.med .shine::after{content:"";position:absolute;top:-20%;bottom:-20%;left:0;width:45%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.75),transparent);transform:translateX(-160%) skewX(-18deg)}
.med .ring{position:absolute;inset:0;border:2px solid var(--gold-hi);border-radius:50%;opacity:0;pointer-events:none;right:auto;bottom:auto;width:100%;height:100%;transform:none}
.med .sp{position:absolute;left:50%;top:50%;width:5px;height:5px;background:#fff;border-radius:50%;opacity:0;--dx:0px;--dy:0px}
@keyframes medIn{0%{opacity:0;transform:scale(.2) rotate(-40deg)}60%{opacity:1;transform:scale(1.18) rotate(6deg)}80%{transform:scale(.95) rotate(-2deg)}100%{opacity:1;transform:none}}
@keyframes medOrbit{to{transform:rotate(360deg)}}
@keyframes medRing{0%{opacity:.9;transform:scale(.6)}100%{opacity:0;transform:scale(2.8)}}
@keyframes medSp{0%{opacity:1;transform:translate(-50%,-50%)}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.2)}}
@keyframes medPulse{0%,100%{filter:drop-shadow(0 6px 10px rgba(0,0,0,.6)) drop-shadow(0 0 0 rgba(245,214,123,0))}50%{filter:drop-shadow(0 6px 10px rgba(0,0,0,.6)) drop-shadow(0 0 14px rgba(245,214,123,.7))}}
.anim .med{animation:medIn .9s cubic-bezier(.3,1.3,.4,1) 3.1s both,medPulse 5s ease-in-out 4.6s infinite}   /* KNOB: lands after the pin */
.anim .med .orb{animation:medOrbit 5s linear 4s infinite}.anim .med .shine::after{animation:aGlint 6s ease-in-out 4.1s infinite}
.anim .med .ring{animation:medRing .9s ease-out 3.7s forwards}.anim .med .ring.c2{animation-delay:3.85s;border-width:1px}
.anim .med .sp{animation:medSp 1s ease-out 3.75s forwards}
.card .med.mini{position:absolute;left:8px;bottom:0;width:56px;height:56px;filter:drop-shadow(0 3px 6px rgba(0,0,0,.6))}
.card .med.mini .orb{animation:medOrbit 6s linear infinite}
.chipwrap{margin-top:10px}
.c100{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--gold);border-radius:3px;padding:6px 12px;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);position:relative;overflow:hidden;background:none;text-decoration:none}
.c100 b{font-size:14px;letter-spacing:0;font-weight:700}.c100 .crown{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
.c100::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--gold-hi),var(--gold));transform:scaleX(0);transform-origin:left;z-index:-1}
@keyframes cInk{0%{transform:scaleX(0)}40%{transform:scaleX(1)}70%{transform:scaleX(1)}100%{transform:scaleX(0);transform-origin:right}}
@keyframes cInkTxt{0%,10%{color:var(--gold)}40%,70%{color:#1a1206}100%{color:var(--gold)}}
.anim .c100::before{animation:cInk 2s ease-in-out 1.2s}.anim .c100{animation:cInkTxt 2s ease-in-out 1.2s}
.c100 .sh{position:absolute;top:0;bottom:0;left:0;width:40%;background:linear-gradient(105deg,transparent,rgba(245,214,123,.6),transparent);transform:translateX(-160%) skewX(-18deg)}.anim .c100 .sh{animation:aGlint 6s ease-in-out 3.4s infinite}
.csub{font-size:10px;letter-spacing:2px;color:var(--mut);text-transform:uppercase;margin-top:6px}
.club-ex p a.sec{border-style:none;border-bottom:1px solid rgba(212,175,55,.4);padding:0;font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase}
/* ===== Power of One page ===== */
.p1{max-width:900px;margin:30px auto 60px;padding:0 24px}.p1 h1{font-weight:300;font-size:34px;letter-spacing:1px;text-align:center}.p1 h1 span{color:var(--orange)}
.p1 .rule{width:60px;height:2px;background:var(--orange);margin:10px auto 26px}
.hero{border:1px solid var(--gold);border-radius:6px;padding:26px 30px;text-align:center;background:linear-gradient(180deg,rgba(212,175,55,.09),rgba(212,175,55,.02));position:relative;overflow:hidden}
.hero .k{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--gold)}
.hero .big{font-size:64px;font-weight:700;line-height:1;margin:8px 0 4px;background:linear-gradient(180deg,var(--gold-hi),var(--gold) 55%,#8a6d3b);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero .claim{font-size:16px;color:#e6e6e6;max-width:640px;margin:0 auto}.hero .month{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--mut);margin-top:10px}
.hero::after{content:"";position:absolute;top:0;bottom:0;left:0;width:35%;background:linear-gradient(105deg,transparent,rgba(245,214,123,.45),transparent);transform:translateX(-160%) skewX(-18deg);animation:aGlint 5s ease-in-out 1s infinite}
.faces{display:flex;flex-wrap:wrap;justify-content:center;gap:18px 22px;margin:22px auto 6px;max-width:760px}
.face{text-decoration:none;color:var(--txt);text-align:center;width:118px;opacity:0;transform:translateY(12px);animation:aIn .6s ease-out forwards}
.face:nth-child(1){animation-delay:.5s}.face:nth-child(2){animation-delay:.6s}.face:nth-child(3){animation-delay:.7s}.face:nth-child(4){animation-delay:.8s}.face:nth-child(5){animation-delay:.9s}.face:nth-child(6){animation-delay:1s}.face:nth-child(7){animation-delay:1.1s}.face:nth-child(n+8){animation-delay:1.2s}
.face .fring{display:block;width:70px;height:70px;margin:0 auto;border-radius:50%;padding:3px;background:conic-gradient(from 0deg,var(--gold-hi),var(--gold),#8a6d3b,var(--gold),var(--gold-hi));transition:transform .25s}
.face .fring img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block;border:2px solid var(--bg)}
.face:hover .fring{transform:scale(1.08)}.face .fn{display:block;margin-top:7px;font-size:11.5px;font-weight:600;color:#fff;line-height:1.3}
.face .fs{display:block;margin-top:2px;font-size:9.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--gold);line-height:1.35}
.signal{max-width:640px;margin:14px auto 0;font-size:14.5px;color:#ddd;line-height:1.65}
.p1 h2{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);font-weight:600;margin:38px 0 12px}.p1 p{color:#d5d5d5;font-size:15.5px;line-height:1.7}
table.five{width:100%;border-collapse:collapse;margin-top:6px}table.five th,table.five td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;font-size:14px}
table.five th{color:var(--mut);font-weight:500;letter-spacing:2px;text-transform:uppercase;font-size:11px}table.five td.pt{color:var(--gold);font-weight:600;text-align:right}table.five td:first-child{color:#fff;font-weight:600}
.p1 .cta{margin-top:40px;text-align:center}.p1 .cta a{display:inline-block;background:var(--gold);color:#111;padding:11px 22px;border-radius:4px;text-decoration:none;font-weight:600;letter-spacing:1px}
.p1 .foot{color:var(--mut);font-size:12px;margin-top:22px;line-height:1.6}.p1 .foot a{color:var(--gold);text-decoration:none}

@media(prefers-reduced-motion:reduce){.anim *,.card{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}}