/* Pro Vision Foundation, third design (Corey, Oct 9 2026: "redone completely, a whole different format", a more
   luxurious font "more thin, with some elements of thickness", no video in the background, "very corporate, but
   very clean and luxurious and very high end").
   Type (Corey picked option C, Oct 16 2026: "stronger", a blend): wide heavy Archivo capitals for headlines with
   the emphasised words in Bodoni Moda italic; Archivo for reading text and small spaced capitals. Gold and black are the solid colors, white is the accent. Centered, editorial layout:
   fine frame lines, hairline grids, a lot of air. No video or photo behind any headline. The PVA Open page keeps
   its own brand (green, its gold, white, Staff type) inside the foundation's header and footer. */
@font-face{font-family:"Archivo";src:url("/assets/archivo-latin-wdth-normal.woff2") format("woff2");font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap}
@font-face{font-family:"Bodoni Moda";src:url("/assets/bodoni-moda-latin-400-normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Bodoni Moda";src:url("/assets/bodoni-moda-latin-500-italic.woff2") format("woff2");font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:"Bodoni Moda";src:url("/assets/bodoni-moda-latin-400-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Staff Wide";src:url("/assets/staffwide-black.woff") format("woff");font-weight:900;font-display:swap}
@font-face{font-family:"Staff";src:url("/assets/staff-medium.woff") format("woff");font-weight:500;font-display:swap}
:root{--gold:#B09C45;--blk:#000;--ivory:#f3efe3;
  --serif:"Archivo","Helvetica Neue",Arial,sans-serif;--sans:"Archivo","Helvetica Neue",Arial,sans-serif;--italic:"Bodoni Moda","Didot",Georgia,serif;
  --s1:8px;--s2:16px;--s3:28px;--s4:44px;--s5:72px;--s6:136px;
  --ease:cubic-bezier(.2,.7,.2,1);--slow:.7s;--top:92px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#000;color:#fff;font:300 17.5px/1.7 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video{max-width:100%;height:auto;display:block}
a{color:inherit}
[hidden]{display:none!important}
.wrap{width:min(1180px,100% - 96px);margin-inline:auto;position:relative}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;letter-spacing:-.012em;line-height:1.08;text-wrap:balance;color:var(--fg)}
h1{font-size:clamp(40px,5.6vw,84px);line-height:1.04}
h2{font-size:clamp(31px,3.7vw,54px)}
h3{font-size:28px}
h1 em,h2 em,h3 em{font-style:italic;color:var(--em)}
p{margin:0}
.lede{max-width:54ch;color:var(--soft);margin-top:var(--s3)}
.lede+.lede{margin-top:var(--s2)}
.note{font-size:14px;color:var(--mut);margin-top:var(--s3);letter-spacing:.02em}
.note a{color:var(--fg)}

/* the two solids, and what white does on each */
section{position:relative;padding:var(--s6) 0;background:var(--bg);color:var(--fg);overflow:hidden}
.blk{--bg:#000;--fg:var(--gold);--em:#fff;--soft:#cfcbbd;--mut:#8b8778;--line:rgba(176,156,69,.3);--hov:rgba(176,156,69,.1)}
.gld{--bg:var(--gold);--fg:#000;--em:#fff;--soft:#1a1709;--mut:#3f3919;--line:rgba(0,0,0,.26);--hov:rgba(0,0,0,.07)}
.blk+.blk{padding-top:0}
.blk+.blk::before{content:"";display:block;width:1px;height:72px;margin:0 auto var(--s6);background:var(--line)}

/* label: fine spaced capitals after a short hairline */
.tag{display:flex;align-items:center;gap:16px;font:400 11px/1.4 var(--sans);letter-spacing:.34em;text-transform:uppercase;color:var(--fg);margin:0 0 var(--s3)}
.tag.sub{margin-top:var(--s4)}
.mk{flex:none;width:34px;height:1px;background:currentColor;opacity:.8}
.sample{margin-left:6px;padding:3px 9px;border:1px dashed currentColor;letter-spacing:.14em;font-size:10px;color:#fff}

/* centered openers */
.ctr{text-align:center}
.ctr .tag{justify-content:center}
.ctr .tag::after{content:"";flex:none;width:34px;height:1px;background:currentColor;opacity:.8}
.ctr :is(h1,h2),.ctr .lede{margin-inline:auto}
.ctr .acts{justify-content:center}
.open{margin-bottom:var(--s5)}

/* buttons: fine outline, slow */
.acts{display:flex;flex-wrap:wrap;gap:16px;margin-top:var(--s4)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 38px;border:1px solid var(--gold);background:var(--gold);color:#000;font:400 11.5px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;text-decoration:none;cursor:pointer;border-radius:0;transition:background var(--slow) var(--ease),color var(--slow) var(--ease),border-color var(--slow) var(--ease)}
.btn:hover,.btn:focus-visible{background:#fff;border-color:#fff;color:#000}
.btn.ghost{background:transparent;color:var(--gold);border-color:rgba(176,156,69,.6)}
.btn.ghost:hover,.btn.ghost:focus-visible{background:var(--gold);color:#000;border-color:var(--gold)}
.btn.dark{background:#000;border-color:#000;color:var(--gold)}
.btn.dark:hover,.btn.dark:focus-visible{background:#fff;border-color:#fff;color:#000}
.btn.ghost.dark{background:transparent;color:#000;border-color:rgba(0,0,0,.6)}
.btn.ghost.dark:hover,.btn.ghost.dark:focus-visible{background:#000;color:var(--gold);border-color:#000}
:focus-visible{outline:1px solid #fff;outline-offset:4px}
.lnk{display:inline-flex;align-items:center;gap:12px;font:400 11.5px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;text-decoration:none;color:var(--fg);border-bottom:1px solid var(--line);padding-bottom:9px;transition:border-color var(--slow) var(--ease),gap var(--slow) var(--ease)}
.lnk:hover{border-color:currentColor;gap:18px}
.ar{width:20px;height:20px;flex:none}
.ar path{stroke-width:1}
.more{margin-top:var(--s5)}

/* header: the logo in the middle, the menu either side */
header.top{position:fixed;inset:0 0 auto;z-index:50;border-bottom:1px solid transparent;transition:background var(--slow) var(--ease),border-color var(--slow) var(--ease)}
header.top.stuck{background:rgba(0,0,0,.94);border-color:rgba(176,156,69,.3)}
.top-in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:40px;height:var(--top);width:min(1400px,100% - 96px)}
.logo{display:block;width:264px;aspect-ratio:1208/77;background:#fff;-webkit-mask:url("/assets/pvf-horizontal.png") center/contain no-repeat;mask:url("/assets/pvf-horizontal.png") center/contain no-repeat}
.logo span,.flogo span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.nav{display:flex;align-items:center;gap:44px}
.nr{justify-content:flex-end}
.nav a{font:400 11px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;text-decoration:none;color:#fff;padding:10px 0;border-bottom:1px solid transparent;transition:color var(--slow) var(--ease),border-color var(--slow) var(--ease)}
.nav a:hover,.nav a[aria-current]{color:var(--gold);border-color:var(--gold)}
.nav a.give{color:var(--gold);border:1px solid rgba(176,156,69,.6);padding:14px 26px}
.nav a.give:hover{background:var(--gold);color:#000}
.mnav,.menu-b{display:none}

/* home opener: type only, inside a fine frame */
.hero{min-height:min(100vh,900px);min-height:min(100svh,900px);display:flex;align-items:center;padding:calc(var(--top) + 90px) 0 150px}
.frame::before{content:"";position:absolute;inset:var(--top) 28px 28px;border:1px solid var(--line);pointer-events:none}
.hero .wrap{z-index:2}
.hero h1{max-width:15ch}
.hero .lede{max-width:46ch;font-size:19px}
.est{position:absolute;left:0;right:0;bottom:62px;z-index:2;text-align:center;font:400 10.5px/1.4 var(--sans);letter-spacing:.34em;text-transform:uppercase;color:var(--mut)}

/* inner page opener */
.phero{padding:calc(var(--top) + 120px) 0 var(--s6);text-align:center}
.phero .tag{justify-content:center}
.phero .tag::after{content:"";flex:none;width:34px;height:1px;background:currentColor;opacity:.8}
.phero h1{max-width:17ch;margin-inline:auto;font-size:clamp(38px,5vw,74px)}
.phero .lede{margin-inline:auto}
.phero .acts{justify-content:center}

/* layouts */
.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:var(--s5) 110px;align-items:start}
.split.mid{align-items:center}
.statement h2{font-size:clamp(44px,7vw,112px);line-height:1;max-width:12ch}
.statement .lede{max-width:50ch}
.media{width:100%;background:#111}
.media.bare{background:none}
.plate{position:relative;padding:0 0 22px 22px}
.plate::before{content:"";position:absolute;inset:22px 22px 0 0;border:1px solid var(--line)}
.plate .media{position:relative}

/* index: columns divided by hairlines (the fundraiser events) */
.index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ix{display:flex;flex-direction:column;min-height:400px;padding:38px 30px 34px;text-decoration:none;color:var(--fg);border-left:1px solid var(--line);transition:background var(--slow) var(--ease)}
.ix:first-child{border-left:0}
.ix:hover,.ix:focus-visible{background:var(--hov)}
.ix-s{font:400 10.5px/1.4 var(--sans);letter-spacing:.32em;text-transform:uppercase;color:var(--mut)}
.ix b{display:block;margin-top:auto;font:400 clamp(26px,2.5vw,36px)/1.08 var(--serif);letter-spacing:-.01em}
.ix-l{display:block;margin-top:16px;color:var(--soft);font-size:15.5px;line-height:1.55}
.ix-t{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:30px;padding-top:18px;border-top:1px solid var(--line);font:400 10.5px/1.4 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--em)}
.gld .ix-t{color:#000}
.ix .ar{transition:translate var(--slow) var(--ease)}
.ix:hover .ar{translate:6px 0}

/* quad and trio: quiet grids of words */
.quad{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.quad>div{padding:48px 56px 52px 0;border-bottom:1px solid var(--line)}
.quad>div:nth-child(even){padding:48px 0 52px 56px;border-left:1px solid var(--line)}
.quad b,.trio b{display:block;font:400 clamp(23px,2.2vw,31px)/1.14 var(--serif);letter-spacing:-.01em;color:var(--fg)}
.quad span,.trio span{display:block;margin-top:14px;color:var(--soft);font-size:16px;max-width:38ch}
.trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));text-align:center}
.trio>div{padding:8px 44px}
.trio>div+div{border-left:1px solid var(--line)}
.trio span{margin-inline:auto;max-width:28ch}

/* rows and hairlines */
.rows{border-bottom:1px solid var(--line)}
.row{display:grid;grid-template-columns:150px minmax(0,1fr) auto 20px;gap:var(--s3);align-items:center;padding:34px 0;border-top:1px solid var(--line);text-decoration:none;color:var(--fg);transition:padding var(--slow) var(--ease),background var(--slow) var(--ease)}
.row:not(:has(.r-meta)){grid-template-columns:minmax(0,1fr) auto 20px}
.rows.plain .row{grid-template-columns:1fr;padding:26px 0}
.r-meta,.r-tag{font:400 10.5px/1.4 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--mut)}
.r-tag{color:var(--fg);text-align:right}
.r-tag.soon{color:var(--mut)}
.r-main{display:grid;gap:8px}
.r-main b{font:400 clamp(23px,2.2vw,31px)/1.12 var(--serif);letter-spacing:-.01em}
.r-main span{color:var(--soft);font-size:16px;line-height:1.55}
.rows.plain .r-main b{font-size:clamp(21px,1.8vw,25px)}
a.row:hover,a.row:focus-visible{background:var(--hov);padding-left:18px;padding-right:18px}
.split .rows{margin-top:var(--s4)}
.split a.row{grid-template-columns:minmax(0,1fr) 20px;gap:12px var(--s3)}
.split a.row .r-tag{grid-column:1;grid-row:2;text-align:left}
.split a.row .ar{grid-column:2;grid-row:1}
.split>div:not(.rv)>.rows.plain,.split>.rows{margin-top:0}

/* terms, ticks, names */
.terms{margin:0;border-bottom:1px solid var(--line)}
.terms div{display:grid;grid-template-columns:170px 1fr;gap:var(--s3);padding:22px 0;border-top:1px solid var(--line);align-items:baseline}
.terms dt{font:400 10.5px/1.4 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--mut)}
.terms dd{margin:0;color:var(--em);font:400 21px/1.35 var(--serif)}
.gld .terms dd{color:#000}
.terms a{text-decoration:none;border-bottom:1px solid var(--line)}
.ticks{list-style:none;margin:0;padding:0;columns:2;column-gap:var(--s4)}
.ticks li{position:relative;padding:9px 0 9px 26px;color:var(--soft);break-inside:avoid;font-size:16px}
.ticks li::before{content:"";position:absolute;left:0;top:22px;width:12px;height:1px;background:var(--fg)}
.ticks.big{columns:1}
.ticks.big li{font:400 clamp(21px,1.9vw,25px)/1.2 var(--serif);color:#000;padding:17px 0;border-top:1px solid var(--line)}
.ticks.big li::before{display:none}
.names{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:110px;border-bottom:1px solid var(--line)}
.names li{padding:24px 0;border-top:1px solid var(--line);font:400 clamp(21px,2vw,28px)/1.15 var(--serif)}

/* quotes and numbers */
blockquote{margin:0}
blockquote p{font:italic 400 clamp(22px,2.4vw,32px)/1.4 var(--serif);color:#fff;text-wrap:pretty}
cite{display:block;margin-top:var(--s3);font:400 10.5px/1.4 var(--sans);font-style:normal;letter-spacing:.32em;text-transform:uppercase;color:var(--fg)}
.quote-sec{text-align:center}
.quote-sec .tag{justify-content:center}
.quote-sec .tag::after{content:"";flex:none;width:34px;height:1px;background:currentColor;opacity:.8}
.quote-sec blockquote p{max-width:26ch;margin-inline:auto;font-size:clamp(28px,3.6vw,52px);line-height:1.22}
.q3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.q3 blockquote{padding:6px 40px}
.q3 blockquote+blockquote{border-left:1px solid var(--line)}
.q3 blockquote:first-child{padding-left:0}
.q3 blockquote:last-child{padding-right:0}
.q3 blockquote p{font-size:21px;line-height:1.5;color:#000}
.q3 cite{color:#fff}
.quotes .tag{margin-bottom:var(--s5)}
.num-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));text-align:center;margin-top:var(--s4)}
.num-row>div{padding:10px 36px}
.num-row>div+div{border-left:1px solid var(--line)}
.num-row b{display:block;font:400 clamp(60px,8vw,124px)/1 var(--serif);color:var(--gold);letter-spacing:-.02em}
.num-row span{display:block;margin:20px auto 0;color:var(--soft);max-width:24ch;font-size:16px}
.nums .tag{justify-content:center}
.close{text-align:center}
.close .tag{justify-content:center}
.close .tag::after{content:"";flex:none;width:34px;height:1px;background:currentColor;opacity:.8}
.close h2{max-width:15ch;margin-inline:auto;font-size:clamp(36px,5vw,76px)}
.close .lede{margin-inline:auto}
.close .acts{justify-content:center}

/* forms */
.lead{display:block}
.lead label{display:block;font:400 10.5px/1.4 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--fg);margin-bottom:26px}
.lead label span{color:var(--mut);letter-spacing:.06em;text-transform:none;font-size:12.5px;margin-left:6px}
.lead input,.lead textarea,.lead select{display:block;width:100%;margin-top:8px;padding:13px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--em);font:300 18px/1.4 var(--sans);letter-spacing:0;text-transform:none;outline:0;transition:border-color var(--slow) var(--ease);appearance:none;-webkit-appearance:none}
.gld .lead input,.gld .lead textarea,.gld .lead select,.owht .lead input,.owht .lead textarea,.owht .lead select{color:#000}
.lead select{background:linear-gradient(45deg,transparent 50%,currentColor 50%) calc(100% - 12px) 55%/6px 6px no-repeat,linear-gradient(-45deg,transparent 50%,currentColor 50%) calc(100% - 6px) 55%/6px 6px no-repeat}
.lead select option{color:#000;background:#fff}
.lead input:focus,.lead textarea:focus,.lead select:focus{border-color:var(--em)}
.gld .lead input:focus,.gld .lead textarea:focus,.gld .lead select:focus{border-color:#000}
.lead textarea{resize:vertical;min-height:110px}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--s4)}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.lead-err{color:#fff;font-size:14.5px;margin:0 0 18px;padding:12px 16px;border:1px solid currentColor}
.gld .lead-err,.owht .lead-err{color:#000}
.lead-sum{margin:0 0 var(--s3);border-bottom:1px solid var(--line)}
.lead-sum div{display:grid;grid-template-columns:130px 1fr;gap:var(--s2);padding:15px 0;border-top:1px solid var(--line);align-items:baseline}
.lead-sum dt{font:400 10.5px/1.4 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--mut)}
.lead-sum dd{margin:0;color:var(--em);white-space:pre-wrap;overflow-wrap:anywhere}
.gld .lead-sum dd,.owht .lead-sum dd{color:#000}
.lead-done h3{margin-bottom:var(--s2)}
.lead-done p:last-child{color:var(--soft)}
.gld .lead .btn{background:#000;border-color:#000;color:var(--gold)}
.gld .lead .btn:hover{background:#fff;border-color:#fff;color:#000}
.gld .lead .btn.ghost{background:transparent;color:#000;border-color:rgba(0,0,0,.6)}
.legal-sec{padding-bottom:var(--s5);text-align:center}
.contact .terms{margin-top:var(--s4)}

/* The PVA Open keeps its own brand inside the foundation's header and footer: tournament green, its gold, white, Staff type. */
.ogrn{--bg:#0F5B34;--fg:#fff;--em:#B49B31;--soft:#e4ede7;--mut:#a9c4b4;--line:rgba(255,255,255,.26);--hov:rgba(255,255,255,.08)}
.owht{--bg:#fff;--fg:#0F5B34;--em:#B49B31;--soft:#1f2e26;--mut:#5d7166;--line:rgba(15,91,52,.24);--hov:rgba(15,91,52,.06)}
.t-open main{font:500 16.5px/1.65 "Staff",system-ui,sans-serif}
.t-open main :is(h1,h2,h3){font-family:"Staff Wide","Staff",sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-.012em;line-height:1.02}
.t-open main h1{font-size:clamp(34px,4.7vw,66px)}
.t-open main h2{font-size:clamp(26px,3.1vw,42px)}
.t-open main :is(h1,h2,h3) em{font-style:normal}
.t-open main :is(.tag,.btn,.terms dt,.lead label,.lead-sum dt){font-family:"Staff",sans-serif;font-weight:500;letter-spacing:.2em}
.t-open main :is(.lead input,.lead textarea,.lead select){font-family:"Staff",sans-serif;font-weight:500;font-size:17px}
.t-open main :is(.names li,.l-name,.l-price){font:900 clamp(18px,1.9vw,25px)/1.1 "Staff Wide",sans-serif;text-transform:uppercase}
.t-open main .terms dd{font:500 18px/1.4 "Staff",sans-serif}
.t-open main .tag{color:var(--em)}
.t-open main .owht .tag{color:#8a7620}
.t-open main .mk{width:9px;height:9px;transform:rotate(45deg);background:var(--em);opacity:1}
.t-open main .ticks li::before{width:8px;height:8px;top:18px;transform:rotate(45deg);background:var(--em)}
.t-open main .btn{background:#B49B31;border-color:#B49B31;color:#fff}
.t-open main .btn:hover{background:#fff;border-color:#fff;color:#0F5B34}
.t-open main .owht .btn:hover{background:#0F5B34;border-color:#0F5B34;color:#fff}
.t-open main .btn.ghost{background:transparent;border-color:rgba(255,255,255,.6);color:#fff}
.t-open main .owht .btn.ghost{border-color:rgba(15,91,52,.5);color:#0F5B34}
.t-open header.top:not(.stuck){background:transparent}
.ohero{padding:calc(var(--top) + var(--s5)) 0 var(--s6)}
.ologo{width:min(400px,78vw);height:auto;margin-bottom:var(--s5)}
.ohero h1{max-width:16ch}
.aos{display:block;max-width:400px}
.aos img{width:100%}
.t-open .terms dd,.t-open .names li{color:var(--fg)}
.t-open .ogrn .terms dd{color:#fff}
.t-open .split .media{margin-top:var(--s4);border-radius:4px}
.t-open .split.mid .media{margin-top:0}
.levels{border-bottom:1px solid var(--line)}
.levels details{border-top:1px solid var(--line)}
.levels summary{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr) auto 18px;gap:var(--s3);align-items:center;padding:28px 0;cursor:pointer;list-style:none}
.levels summary::-webkit-details-marker{display:none}
.l-line{color:var(--soft);font-size:16px}
.l-price{color:var(--em)}
.pm{position:relative;width:18px;height:18px}
.pm::before,.pm::after{content:"";position:absolute;left:0;top:8px;width:18px;height:1.5px;background:currentColor;transition:transform var(--slow) var(--ease)}
.pm::after{transform:rotate(90deg)}
details[open] .pm::after{transform:rotate(0)}
.levels .ticks{padding:0 0 var(--s3);max-width:900px}

/* Jokes for Jerseys: no identity on file yet, so it wears the foundation's black and gold */
.jhero{padding:calc(var(--top) + 120px) 0 var(--s6);text-align:center}
.jhero .tag{justify-content:center}
.jhero .tag::after{content:"";flex:none;width:34px;height:1px;background:currentColor;opacity:.8}
.jhero h1{font-size:clamp(54px,9vw,148px);line-height:.98}
.jhero .lede{margin-inline:auto}
.jhero .acts{justify-content:center}
.when{margin-top:var(--s4);font:400 11px/1.6 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:#fff}

/* 404 */
.nf-sec{padding-top:calc(var(--top) + 90px);min-height:100vh;min-height:100svh;text-align:center}
.nf-n{font:400 clamp(110px,20vw,280px)/.9 var(--serif);color:var(--gold);margin-bottom:var(--s3)}
.nf-sec h1{font-size:clamp(32px,4vw,56px)}
.nf-sec .lede{margin-inline:auto}
.nf-sec .acts{justify-content:center}
.nf-sec .rows{margin-top:var(--s5);text-align:left}

/* footer: the logo centered, then the lists */
footer{background:#000;color:#fff;border-top:1px solid rgba(176,156,69,.3);padding:var(--s5) 0 0}
.f-head{text-align:center;padding-bottom:var(--s5);border-bottom:1px solid rgba(176,156,69,.3)}
.flogo{display:block;width:250px;margin:0 auto;aspect-ratio:800/152;background:var(--gold);-webkit-mask:url("/assets/pvf-stacked.png") center/contain no-repeat;mask:url("/assets/pvf-stacked.png") center/contain no-repeat}
.f-line{margin:var(--s3) auto 0;color:#cfcbbd;max-width:44ch;font:italic 400 20px/1.5 var(--serif)}
.f-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s4);padding-top:var(--s5)}
footer h4{font:400 10.5px/1.4 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin:0 0 20px}
footer .f-grid a{display:block;color:#fff;text-decoration:none;font-size:15.5px;padding:5px 0;transition:color var(--slow) var(--ease)}
footer .f-grid a:hover{color:var(--gold)}
.legal{margin-top:var(--s5);font-size:12.5px;letter-spacing:.04em;color:#8b8778;padding-bottom:0}
.chip{position:fixed;left:14px;bottom:14px;z-index:60;padding:7px 11px;background:rgba(0,0,0,.82);border:1px solid rgba(255,255,255,.22);color:#cfcab8;font:400 11px/1.3 var(--sans);letter-spacing:.08em;pointer-events:none}

/* quiet reveal, once */
.rv{opacity:0;translate:0 14px;transition:opacity 1.1s var(--ease),translate 1.1s var(--ease)}
.rv.in{opacity:1;translate:0 0}
.no-js .rv{opacity:1;translate:0 0}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;translate:0 0;transition:none}html{scroll-behavior:auto}*{transition-duration:.01s!important}}

@media (max-width:1100px){
  .top-in{display:flex;justify-content:space-between;width:calc(100% - 64px)}
  .nl,.nr{display:none}
  .logo{-webkit-mask-position:left center;mask-position:left center}
  .menu-b{display:inline-flex;align-items:center;min-height:42px;padding:0 20px;border:1px solid rgba(176,156,69,.7);background:transparent;color:var(--gold);font:400 11px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;cursor:pointer}
  .menu-on .mnav{display:flex;position:fixed;inset:0;z-index:-1;flex-direction:column;align-items:stretch;justify-content:center;gap:0;background:#000;padding:100px 32px 40px}
  .menu-on .mnav a{font:400 34px/1.1 var(--serif);letter-spacing:-.01em;text-transform:none;color:var(--gold);padding:20px 0;border-bottom:1px solid rgba(176,156,69,.3)}
  .menu-on .mnav a.give{margin-top:30px;border:1px solid var(--gold);background:var(--gold);color:#000;text-align:center;font:400 12px/1 var(--sans);letter-spacing:.3em;text-transform:uppercase;padding:22px 0}
  .menu-on header.top{background:#000}
  .menu-on{overflow:hidden}
  .index{grid-template-columns:1fr 1fr}
  .ix{min-height:300px}
  .ix:nth-child(odd){border-left:0}
  .ix:nth-child(n+3){border-top:1px solid var(--line)}
  .split{gap:var(--s5) 64px}
}
@media (max-width:860px){
  :root{--s5:52px;--s6:88px;--top:70px}
  body{font-size:16.5px}
  .wrap,.top-in{width:calc(100% - 44px)}
  .split{grid-template-columns:1fr;gap:var(--s4)}
  .logo{width:min(210px,56vw)}
  .frame::before{inset:var(--top) 12px 12px}
  .hero{min-height:92vh;padding:calc(var(--top) + 60px) 0 120px}
  .hero .lede{font-size:17.5px}
  .est{bottom:40px;padding:0 30px;letter-spacing:.26em}
  .phero,.jhero{padding-top:calc(var(--top) + 76px)}
  .ohero{padding-top:calc(var(--top) + var(--s5))}
  .blk+.blk::before{height:48px}
  .index{grid-template-columns:1fr}
  .ix{min-height:0;padding:30px 0;border-left:0}
  .ix+.ix{border-top:1px solid var(--line)}
  .ix b{margin-top:22px}
  .ix-t{margin-top:22px}
  .quad{grid-template-columns:1fr}
  .quad>div,.quad>div:nth-child(even){padding:30px 0 32px;border-left:0}
  .trio,.num-row,.q3{grid-template-columns:1fr}
  .trio>div,.num-row>div{padding:30px 0}
  .trio>div+div,.num-row>div+div{border-left:0;border-top:1px solid var(--line)}
  .q3 blockquote,.q3 blockquote:first-child,.q3 blockquote:last-child{padding:30px 0}
  .q3 blockquote+blockquote{border-left:0;border-top:1px solid var(--line)}
  .row{grid-template-columns:minmax(0,1fr) 20px!important;gap:10px 16px;padding:26px 0}
  a.row:hover{padding-left:0;padding-right:0}
  .row .r-meta{grid-column:1/-1;grid-row:1}
  .row .r-tag{grid-column:1;grid-row:3;text-align:left}
  .row .ar{grid-column:2;grid-row:2}
  .rows.plain .row{grid-template-columns:1fr!important}
  .acts .btn{flex:1 1 100%}
  .ticks{columns:1}
  .names{grid-template-columns:1fr}
  .terms div{grid-template-columns:1fr;gap:6px}
  .f2{grid-template-columns:1fr}
  .levels summary{grid-template-columns:minmax(0,1fr) auto 18px;gap:8px 16px}
  .l-line{grid-column:1/-1;grid-row:2}
  .plate{padding:0 0 12px 12px}
  .plate::before{inset:12px 12px 0 0}
  .f-grid{grid-template-columns:1fr 1fr}
  .chip{bottom:10px;left:10px}
}

/* Corey, Oct 9 2026 (he loves this direction): the white PVA icon sits above the home headline in place of the
   typed label; the home opener is about 15% smaller with even line spacing; more air, calmer sizes. */
.hmark{display:block;width:44px;height:44px;margin:0 auto 40px;background:#fff;-webkit-mask:url("/assets/mark-white.svg") center/contain no-repeat;mask:url("/assets/mark-white.svg") center/contain no-repeat}
.hero{padding:calc(var(--top) + 70px) 0 140px}
.hero h1{font-size:clamp(34px,4.75vw,71px);line-height:1.16;max-width:16ch;letter-spacing:-.008em}
.hero .lede{font-size:17px;max-width:44ch;margin-top:32px;line-height:1.75}
.hero .acts{margin-top:48px}
.hero .btn{min-height:48px;padding:0 34px;font-size:11px}
h1,h2,h3{line-height:1.14}
h2{font-size:clamp(29px,3.3vw,48px)}
.phero h1{font-size:clamp(34px,4.4vw,64px);line-height:1.14}
.statement h2{font-size:clamp(40px,6vw,96px);line-height:1.08}
.close h2{font-size:clamp(32px,4.3vw,64px);line-height:1.12}
.quote-sec blockquote p{font-size:clamp(26px,3.1vw,44px);line-height:1.3}
.jhero h1{font-size:clamp(48px,7.8vw,126px);line-height:1.04}
.open{margin-bottom:84px}
.tag{margin-bottom:34px}
.lede{margin-top:30px}
@media (max-width:860px){.hmark{width:36px;height:36px;margin-bottom:30px}.hero{padding:calc(var(--top) + 50px) 0 120px}.open{margin-bottom:52px}}
.hmark{width:clamp(84px,7.4vw,112px);height:auto;aspect-ratio:2/1;margin-bottom:44px}
@media (max-width:860px){.hmark{width:76px;height:auto;margin-bottom:32px}}
/* Corey, Oct 9 2026: a very light photo inside the home opener's frame, under black (a still, never a video). */
.hero-ph{position:absolute;inset:var(--top) 28px 28px;width:calc(100% - 56px);height:calc(100% - var(--top) - 28px);max-width:none;object-fit:cover;object-position:50% 30%;filter:grayscale(1) contrast(1.1);opacity:.17}
.hero::after{content:"";position:absolute;inset:var(--top) 28px 28px;background:radial-gradient(ellipse at 50% 48%,rgba(0,0,0,.72) 0,rgba(0,0,0,.35) 60%,rgba(0,0,0,.15) 100%);pointer-events:none}
@media (max-width:860px){.hero-ph,.hero::after{inset:var(--top) 12px 12px}.hero-ph{width:calc(100% - 24px);height:calc(100% - var(--top) - 12px);opacity:.18}}
/* What the 2026 events raised (Corey, Oct 9 2026: over $40,000 at The PVA Open, over $25,000 at Jokes for Jerseys). */
.num-row.two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;margin-inline:auto}
.jhero h1{font-size:clamp(40px,5.6vw,84px);line-height:1.1}
.oraised{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 18px;margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--line);max-width:640px}
.oraised b{font:900 clamp(30px,4vw,54px)/1 "Staff Wide",sans-serif;text-transform:uppercase;color:#B49B31}
.oraised span{font:500 12px/1.4 "Staff",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#fff}
@media (max-width:860px){.num-row.two{grid-template-columns:1fr}}
/* Corey, Oct 9 2026: his pick for the home opener (athletes sprinting past a coach with a whistle), and lighter:
   the first photo was "very, very hard to see". */
.hero-ph{opacity:.42;object-position:50% 45%;filter:grayscale(1) contrast(1.05)}
.hero::after{background:radial-gradient(ellipse at 50% 50%,rgba(0,0,0,.62) 0,rgba(0,0,0,.3) 55%,rgba(0,0,0,.1) 100%)}
@media (max-width:860px){.hero-ph{opacity:.38;object-position:62% 50%}}
.hero .est{color:#cfcbbd}

/* ===== Type, option C (Corey, Oct 16 2026: "I go with C"). Stronger than the Bodoni + Jost pass, keeps the framing:
   wide heavy Archivo capitals, the emphasised words in Bodoni Moda italic, labels at 600. The PVA Open page keeps Staff. ===== */
body:not(.t-open){font-weight:400;font-size:17px}
body:not(.t-open) :is(.tag,.btn,.lnk,.nav a,.ix-s,.ix-t,.r-meta,.r-tag,.terms dt,cite,.lead label,.lead-sum dt,footer h4,.est,.when,.menu-b,.menu-on .mnav a.give){font-weight:600;letter-spacing:.24em}
body:not(.t-open) :is(h1,h2,h3,.ix b,.quad b,.trio b,.r-main b,.num-row b,.nf-n,.menu-on .mnav a){font-weight:800;font-stretch:118%;text-transform:uppercase;letter-spacing:-.01em;line-height:1.02}
body:not(.t-open) :is(.terms dd,.ticks.big li,.names li){font-weight:600;font-stretch:108%}
body:not(.t-open) :is(h1,h2,h3) em{font-family:var(--italic);font-weight:500;font-stretch:normal;text-transform:none;letter-spacing:-.01em;font-size:1.08em}
body:not(.t-open) h1{font-size:clamp(34px,4.6vw,68px)}
body:not(.t-open) :is(blockquote p,.f-line){font-family:var(--italic)}

/* ===== The Super Ball (Corey, Oct 24 2026). Its own brand inside the foundation's header and footer, like The PVA Open:
   black base, PVA gold accents, white type, Staff Wide Black capitals and Staff Medium (the brand guide by bahlr, from
   Greg Larson's logos). The logo is made for dark backgrounds only. Used on the event page, its brand page and the
   home page's "next up" band. (#sb-boost matches nothing: inside :is() it lifts these rules above
   the foundation's option C rules, whose :is() lists carry three-class selectors.) White text never goes on gold (too faint): on gold, everything is black. ===== */
.sbk,.sb-band{--bg:#000;--fg:#fff;--em:#B49B31;--soft:#d2cfc4;--mut:#8f8b7c;--line:rgba(180,155,49,.38);--hov:rgba(180,155,49,.1)}
.sbg{--bg:#B49B31;--fg:#000;--em:#000;--soft:#1a1709;--mut:#3f3919;--line:rgba(0,0,0,.28);--hov:rgba(0,0,0,.07)}
.sbk+.sbk{padding-top:0}
.sbk+.sbk::before{content:"";display:block;width:1px;height:72px;margin:0 auto var(--s6);background:var(--line)}
.t-ball header.top:not(.stuck){background:transparent}
html body :is(.t-ball main,.sb-band,#sb-boost){font:500 16.5px/1.65 "Staff",system-ui,sans-serif}
html body :is(.t-ball main,.sb-band,#sb-boost) :is(h1,h2,h3){font-family:"Staff Wide","Staff",sans-serif;font-weight:900;font-stretch:normal;text-transform:uppercase;letter-spacing:-.005em;line-height:1.05;color:var(--fg)}
html body :is(.t-ball main,#sb-boost) h1{font-size:clamp(32px,4.3vw,60px)}
html body :is(.t-ball main,#sb-boost) h2{font-size:clamp(25px,2.9vw,40px)}
html body :is(.t-ball main,#sb-boost) h3{font-size:22px}
html body :is(.t-ball main,.sb-band,#sb-boost) :is(h1,h2,h3) em{font-family:inherit;font-weight:900;font-style:normal;font-size:1em;text-transform:uppercase;letter-spacing:inherit;color:var(--em)}
html body :is(.t-ball main,.sb-band,#sb-boost) :is(.tag,.btn,.r-meta,.r-tag,.terms dt,.lead label,.lead-sum dt,.sb-dl,.sb-fn){font-family:"Staff",sans-serif;font-weight:500;font-stretch:normal;letter-spacing:.22em}
html body :is(.t-ball main,.sb-band,#sb-boost) .tag{color:var(--em);font-size:11.5px}
html body :is(.t-ball main,.sb-band,#sb-boost) .mk{width:30px;height:5px;background:none;border-top:1px solid currentColor;border-bottom:1px solid currentColor;opacity:1}
html body :is(.t-ball main,#sb-boost) .ctr .tag::after,html body :is(.sb-band,#sb-boost) .tag::after{width:30px;height:5px;background:none;border-top:1px solid currentColor;border-bottom:1px solid currentColor;opacity:1}
html body :is(.t-ball main,.sb-band,#sb-boost) .lede{color:var(--soft)}
html body :is(.t-ball main,#sb-boost) .note{font-family:"Staff",sans-serif;font-weight:500;letter-spacing:.02em}
html body :is(.t-ball main,.sb-band,#sb-boost) .btn{background:#B49B31;border-color:#B49B31;color:#000}
html body :is(.t-ball main,.sb-band,#sb-boost) .btn:hover{background:#fff;border-color:#fff;color:#000}
html body :is(.t-ball main,.sb-band,#sb-boost) .btn.ghost{background:transparent;border-color:rgba(255,255,255,.55);color:#fff}
html body :is(.t-ball main,.sb-band,#sb-boost) .btn.ghost:hover{background:#fff;border-color:#fff;color:#000}
html body :is(.t-ball main,#sb-boost) .sbg .btn.dark{background:#000;border-color:#000;color:#B49B31}
html body :is(.t-ball main,#sb-boost) .sbg .btn.dark:hover{background:#fff;border-color:#fff;color:#000}
html body :is(.t-ball main,#sb-boost) .terms dd{font:500 19px/1.4 "Staff",sans-serif;color:#fff}
html body :is(.t-ball main,#sb-boost) .r-main b{font:900 clamp(18px,1.8vw,24px)/1.15 "Staff Wide",sans-serif;font-stretch:normal;text-transform:uppercase;letter-spacing:-.005em}
html body :is(.t-ball main,#sb-boost) .r-tag{color:var(--em)}
html body :is(.t-ball main,#sb-boost) :is(.lead input,.lead textarea,.lead select){font:500 17px/1.4 "Staff",sans-serif;color:#fff}
html body :is(.t-ball main,#sb-boost) .lead .btn{background:#B49B31;border-color:#B49B31;color:#000}
html body :is(.t-ball main,#sb-boost) .lead .btn.ghost{background:transparent;border-color:rgba(255,255,255,.55);color:#fff}
html body :is(.t-ball main,#sb-boost) .lead-sum dd{color:#fff}
.sb-hero{padding:calc(var(--top) + var(--s5)) 0 var(--s6)}
.sb-hero::before,.sb-hero::after{content:"";position:absolute;inset:calc(var(--top) - 6px) 28px 28px;border:1px solid var(--line);pointer-events:none}
.sb-hero::after{inset:calc(var(--top) + 1px) 35px 35px}
.sb-logo{display:block;margin:0 auto var(--s5);width:min(290px,62vw);height:auto}
.sb-logo.big{width:min(330px,68vw)}
.sb-hero h1{max-width:18ch;margin-inline:auto}
.sb-when{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px 28px;max-width:660px;margin:var(--s4) auto 0;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sb-when b{font:900 clamp(17px,1.9vw,23px)/1.15 "Staff Wide",sans-serif;text-transform:uppercase;color:var(--em)}
.sb-when span{font:500 11.5px/1.4 "Staff",sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--soft)}
.sb-band{padding:var(--s6) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sb-band .sb-logo{width:min(440px,82vw);margin-bottom:var(--s4)}
.sb-band .tag{justify-content:center}
.sb-band .acts{justify-content:center}
.sb-band .sb-when{margin-top:var(--s3)}
.sb-vendor{padding-bottom:var(--s5)}
/* brand page */
.sb-vers{border-top:1px solid var(--line)}
.sb-ver{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s3);padding:var(--s5) 0;border-bottom:1px solid var(--line)}
.sb-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s3)}
.sb-stage{display:flex;align-items:center;justify-content:center;aspect-ratio:16/11;background:#000;border:1px solid var(--line)}
.sb-stage.lt{background:#fff;border-color:#fff}
.sb-stage .sb-logo{margin:0}
.sb-stage .stacked{width:56%}.sb-stage .horizontal{width:80%}.sb-stage .icon{width:36%}
.sb-vtxt h3{margin:0}.sb-vtxt p{color:var(--soft);margin-top:10px;max-width:60ch}
.sb-cn{display:block;margin-top:14px;font:900 13px/1.2 "Staff Wide",sans-serif;text-transform:uppercase;color:var(--em)}
.sb-cl{display:block;margin-top:6px;font-size:14px;line-height:1.5;color:var(--soft)}
.sb-col{display:flex;flex-direction:column}.sb-col .sb-dls{margin-top:auto;padding-top:14px}
.sb-dls{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.sb-dl{display:inline-flex;align-items:center;gap:9px;min-height:38px;padding:0 12px;border:1px solid var(--line);color:#fff;text-decoration:none;font-size:11px;text-transform:uppercase;transition:border-color var(--slow) var(--ease),background var(--slow) var(--ease)}
.sb-dl::before{content:"\2193";color:#B49B31;letter-spacing:0;font-size:13px}
.sb-dl:hover,.sb-dl:focus-visible{border-color:#B49B31;background:var(--hov)}
.sb-mis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4) var(--s3)}
.sb-mt{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;overflow:hidden;background:#000;border:1px solid var(--line)}
.sb-mt::after{content:"";position:absolute;top:12px;right:12px;width:16px;height:16px;background:linear-gradient(45deg,transparent 44%,#B49B31 44%,#B49B31 56%,transparent 56%),linear-gradient(-45deg,transparent 44%,#B49B31 44%,#B49B31 56%,transparent 56%)}
.sb-mi{position:relative;display:block;width:44%;aspect-ratio:451/439;background:url("/assets/super-ball/super-ball-stacked-inverse.svg") center/contain no-repeat}
.sb-m-grad .sb-mi{background:linear-gradient(135deg,#B49B31,#7B3FA0 60%,#2E7BD6);-webkit-mask:url("/assets/super-ball/super-ball-stacked-inverse.svg") center/contain no-repeat;mask:url("/assets/super-ball/super-ball-stacked-inverse.svg") center/contain no-repeat}
.sb-m-color .sb-mi{filter:hue-rotate(150deg) saturate(2.4)}
.sb-m-rot .sb-mi{transform:rotate(-14deg)}
.sb-m-str .sb-mi{transform:scale(1.45,.74)}
.sb-m-move .sb-mi{background:none}
.sb-m-move .sb-mi::before,.sb-m-move .sb-mi::after{content:"";position:absolute;inset:0;background:url("/assets/super-ball/super-ball-stacked-inverse.svg") center/contain no-repeat}
.sb-m-move .sb-mi::before{clip-path:inset(0 0 50% 0);transform:translateX(-17%)}
.sb-m-move .sb-mi::after{clip-path:inset(50% 0 0 0);transform:translateX(17%)}
.sb-m-light{background:#fff;border-color:#fff}
.sb-mis p{margin-top:12px;font-size:14px;color:var(--soft)}
.sb-sw{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4) var(--s3)}
.sb-sw i{display:block;height:120px;border:1px solid var(--line)}
.sb-sw b{display:block;margin-top:16px;font:900 19px/1.2 "Staff Wide",sans-serif;text-transform:uppercase}
.sb-codes{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-top:12px}
.sb-copy{padding:0 0 2px;border:0;border-bottom:1px dotted var(--line);background:none;color:#fff;font:500 14px/1.4 "Staff",sans-serif;letter-spacing:.04em;cursor:pointer;transition:color var(--slow) var(--ease)}
.sb-copy:hover,.sb-copy:focus-visible{color:#B49B31;outline:0}
.sb-sw p{margin-top:12px;font-size:13.5px;color:var(--mut)}
.sb-pairs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s2);margin-top:var(--s5)}
.sb-pairs div{padding:22px 20px;border:1px solid var(--line);background:#000;color:#B49B31}
.sb-pairs div:nth-child(2){color:#fff}
.sb-pairs .g{background:#B49B31;border-color:#B49B31;color:#000}
.sb-pairs .w{background:#fff;border-color:#fff;color:#B49B31}
.sb-pairs b{display:block;font:900 14px/1.25 "Staff Wide",sans-serif;text-transform:uppercase}
.sb-pairs span{display:block;margin-top:6px;font-size:12.5px;opacity:.9}
.sb-copied{position:fixed;left:50%;bottom:28px;z-index:60;transform:translateX(-50%);padding:11px 20px;background:#B49B31;color:#000;font:500 11.5px/1 "Staff",sans-serif;letter-spacing:.2em;text-transform:uppercase;opacity:0;pointer-events:none;transition:opacity .5s var(--ease)}
.sb-copied.on{opacity:1}
.sb-fonts>div{padding:var(--s3) 0;border-top:1px solid var(--line)}
.sb-fonts>div:last-child{border-bottom:1px solid var(--line)}
.sb-fn{display:block;font-size:11px;text-transform:uppercase;color:#B49B31}
.sb-spec{margin-top:12px;color:#fff;overflow-wrap:anywhere}
.sb-spec.w{font:900 clamp(19px,2vw,27px)/1.3 "Staff Wide",sans-serif}
.sb-spec.m{font:500 clamp(18px,1.7vw,22px)/1.5 "Staff",sans-serif}
@media (max-width:860px){
  .sb-cols{grid-template-columns:minmax(0,1fr);gap:var(--s4)}
  .sb-mis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sb-sw{grid-template-columns:minmax(0,1fr)}
  .sb-pairs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sb-hero::before{inset:calc(var(--top) - 6px) 12px 12px}
  .sb-hero::after{inset:calc(var(--top) + 1px) 19px 19px}
  .sb-when{gap:8px 18px}
  /* Corey, Oct 24 2026: on phones the hero text ran edge to edge inside the frame. About 10% smaller, more room. */
  .sb-hero .wrap{width:calc(100% - 84px)}
  .sb-logo.big{width:min(297px,60vw)}
  html body :is(.t-ball main,#sb-boost) .sb-hero h1{font-size:28.5px;line-height:1.18}
  html body :is(.t-ball main,#sb-boost) .sb-hero .tag{font-size:10.3px;letter-spacing:.16em;flex-direction:column;gap:14px;text-align:center}
  html body :is(.t-ball main,#sb-boost) .sb-hero .tag::after{display:none}
  html body :is(.t-ball main,#sb-boost) .sb-hero .lede{font-size:15px;line-height:1.6}
  .sb-when b{font-size:15.5px}
  .sb-when span{font-size:10.3px}
}

/* The Super Ball, Oct 28 2026: the date on its own line, time and dress under it; the goal line; Add to calendar. */
.sb-when b{flex-basis:100%;text-align:center}
.sb-goal{margin:var(--s3) auto 0;font:500 15px/1.5 "Staff",sans-serif;letter-spacing:.06em;color:#fff;text-align:center}
.sb-band .sb-goal{color:#fff}
.sb-save h2{max-width:none}
.sb-cal{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:var(--s4)}
.sb-cal .btn{min-width:236px;text-align:center}

/* Impact numbers: the wide heavy capitals overflowed two columns (Corey, Oct 29 2026) */
body:not(.t-open) .num-row b{font-size:clamp(40px,5vw,64px);white-space:nowrap}
body:not(.t-open) .num-row.two{max-width:960px}

/* Event tiles wear each event's own brand (Corey, Oct 29 2026) */
.ix .sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:0}
.ix-logo{display:flex;align-items:flex-end;margin-top:auto;min-height:120px}
.ix-logo img{display:block;width:auto;height:auto;max-width:100%;max-height:118px}
.ix-ball .ix-logo img{max-height:150px}
.ix-open{background:#0F5B34}
.ix-open:hover,.ix-open:focus-visible{background:#0c4e2c}
.ix-open .ix-s,.ix-open .ix-t{color:#B49B31}
.ix-open .ix-l{color:rgba(255,255,255,.86)}
.ix-open .ix-t{border-top-color:rgba(180,155,49,.45)}
.ix-ball{box-shadow:inset 0 3px 0 #B49B31,inset 0 6px 0 #000,inset 0 7px 0 #B49B31}
.ix-ball .ix-s,.ix-ball .ix-t{color:#B49B31}
.ix-ball .ix-t{border-top-color:rgba(180,155,49,.45)}
body:not(.t-open) .ix b{font-size:clamp(22px,1.9vw,30px)}
@media (max-width:860px){body:not(.t-open) .ix b{font-size:clamp(26px,7vw,34px)}}
@media (max-width:860px){.ix-logo{margin-top:22px;min-height:0}.ix-open,.ix-ball{padding-inline:22px!important}}

/* Home: The Super Ball is the next fundraiser, make it unmissable (Corey, Oct 29 2026) */
.sb-next{padding:var(--s6) 0;background:radial-gradient(ellipse 70% 60% at 50% 40%,rgba(180,155,49,.16),transparent 70%),repeating-conic-gradient(from 0deg at 50% 38%,rgba(180,155,49,.045) 0 2deg,transparent 2deg 12deg),#000;border:0}
.sb-next .sb-frame{position:relative;max-width:980px;margin:0 auto;padding:clamp(54px,6vw,86px) clamp(18px,4vw,60px) clamp(46px,5vw,70px);border:1px solid #B49B31;outline:1px solid #B49B31;outline-offset:6px}
.sb-next .sb-flag{position:absolute;top:0;left:50%;translate:-50% -50%;margin:0;padding:12px 28px;background:#B49B31;color:#000;font:600 12.5px/1 "Staff",sans-serif;letter-spacing:.3em;text-transform:uppercase;white-space:nowrap;box-shadow:0 0 0 8px #000}
.sb-next .sb-logo{width:min(660px,86%);margin:0 auto var(--s4)}
.sb-count{display:flex;justify-content:center;align-items:baseline;gap:14px;margin:0 0 var(--s3);text-align:center}
.sb-count b{font:900 clamp(54px,7vw,96px)/1 "Staff Wide","Staff",sans-serif;color:#fff;letter-spacing:-.01em}
.sb-count span{font:500 13px/1.3 "Staff",sans-serif;letter-spacing:.3em;text-transform:uppercase;color:#B49B31}
.sb-next .sb-when{max-width:760px}
.sb-next .sb-when b{font-size:clamp(22px,2.8vw,36px)}
.sb-next .sb-goal{font-size:17px}
@media (max-width:640px){.sb-next .sb-flag{font-size:10.5px;padding:10px 16px;letter-spacing:.22em}.sb-next .sb-frame{outline-offset:4px}.sb-count{flex-direction:column;align-items:center;gap:6px}}
.sb-logo.big.wide{width:min(600px,86vw)}
@media (max-width:640px){.sb-logo.big.wide{width:min(340px,86vw)}}

/* The Super Ball goal: big and climbing (Corey, Oct 29 2026) */
.sb-goalsec{padding:var(--s6) 0}
html body .sb-goalsec h2.sb-big{display:flex;flex-direction:column;align-items:center;gap:10px;margin:var(--s3) auto 0;max-width:none;width:100%}
.sb-num{display:inline-block;font:900 clamp(40px,11.5vw,150px)/.95 "Staff Wide","Staff",sans-serif;letter-spacing:-.02em;color:#000;text-align:center;white-space:nowrap;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.sb-num.landed{animation:sbLand .6s cubic-bezier(.2,.8,.2,1)}
@keyframes sbLand{0%{transform:scale(1)}40%{transform:scale(1.04)}100%{transform:scale(1)}}
.sb-for{font:900 clamp(26px,3.6vw,54px)/1 "Staff Wide","Staff",sans-serif;text-transform:uppercase;color:#fff}
.sb-goalsec .lede{margin-top:var(--s4)}
@media (prefers-reduced-motion:reduce){.sb-num.landed{animation:none}}

/* The Super Ball sponsorships and silent auction (Corey, Oct 29 2026) */
.sb-spon{padding:var(--s6) 0}
.sb-levels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #B49B31;border-bottom:1px solid #B49B31;margin-top:var(--s4)}
.sb-lv{all:unset;box-sizing:border-box;display:flex;flex-direction:column;gap:12px;padding:34px 28px 30px;cursor:pointer;text-align:left;border-left:1px solid rgba(180,155,49,.38);transition:background .5s ease}
.sb-lv:first-child{border-left:0}
.sb-lv:hover,.sb-lv:focus-visible,.sb-lv.on{background:rgba(180,155,49,.12)}
.sb-lv:focus-visible{outline:2px solid #B49B31;outline-offset:-2px}
.sb-lv.top{background:linear-gradient(180deg,rgba(180,155,49,.22),rgba(180,155,49,.06))}
.sb-lv-n{font:500 11.5px/1.3 "Staff",sans-serif;letter-spacing:.22em;text-transform:uppercase;color:#B49B31}
.sb-lv-p{font:900 clamp(34px,3.6vw,54px)/1 "Staff Wide","Staff",sans-serif;color:#fff;letter-spacing:-.01em}
.sb-lv-l{font:500 15.5px/1.5 "Staff",sans-serif;color:#d2cfc4;flex:1}
.sb-lv-go{display:flex;align-items:center;justify-content:space-between;padding-top:16px;border-top:1px solid rgba(180,155,49,.38);font:500 11px/1.3 "Staff",sans-serif;letter-spacing:.22em;text-transform:uppercase;color:#fff}
.sb-more{margin:var(--s3) auto 0;text-align:center;color:#d2cfc4;font:500 15px/1.6 "Staff",sans-serif}
.sb-ask{all:unset;cursor:pointer;color:#B49B31;border-bottom:1px solid currentColor;font:inherit}
.sb-ask.dark{color:#000}
.sb-ask:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.sb-spon-form{margin-top:var(--s6);padding-top:var(--s5);border-top:1px solid rgba(180,155,49,.38)}
html body .t-ball main .sb-spon-form h3{font-size:clamp(26px,2.8vw,40px)}
.sb-auction{padding:var(--s6) 0}
.lead label.chk{display:flex;gap:12px;align-items:flex-start;text-transform:none;letter-spacing:0;font:500 15px/1.5 "Staff",sans-serif;cursor:pointer}
.lead label.chk input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:#000}
.sbk .lead label.chk input{accent-color:#B49B31}
@media (max-width:1000px){.sb-levels{grid-template-columns:repeat(2,minmax(0,1fr))}.sb-lv:nth-child(3){border-left:0}.sb-lv:nth-child(n+3){border-top:1px solid rgba(180,155,49,.38)}}
@media (max-width:560px){.sb-levels{grid-template-columns:1fr}.sb-lv{border-left:0;padding:26px 4px}.sb-lv+.sb-lv{border-top:1px solid rgba(180,155,49,.38)}}

/* Scholly, the AI assistant (Corey, Oct 29 2026) */
.sch{position:fixed;right:22px;bottom:22px;z-index:60;font-family:"Jost",system-ui,sans-serif}
.sch-dock{all:unset;cursor:pointer;display:flex;align-items:center}
.sch-l{background:#000;color:#fff;border:1px solid #B49B31;padding:13px 18px 13px 16px;font:500 11.5px/1 "Jost",sans-serif;letter-spacing:.22em;text-transform:uppercase;margin-right:-10px;transition:background .5s ease,color .5s ease}
.sch-dock:hover .sch-l,.sch-dock:focus-visible .sch-l{background:#B49B31;color:#000}
.sch-art{width:74px;height:74px;display:block;filter:drop-shadow(0 6px 14px rgba(0,0,0,.45));animation:schW 7s ease-in-out 1.2s infinite;transform-origin:50% 90%}
.sch-art svg,.sch-hart svg{width:100%;height:100%;display:block}
@keyframes schW{0%,86%,100%{transform:rotate(0)}89%{transform:rotate(-8deg)}92%{transform:rotate(7deg)}95%{transform:rotate(-4deg)}}
.sch .eyes{animation:schB 5s steps(1) infinite;transform-origin:60px 54px}
@keyframes schB{0%,96%{transform:scaleY(1)}97%{transform:scaleY(.1)}}
.sch-p{position:absolute;right:0;bottom:90px;width:min(380px,calc(100vw - 32px));height:min(540px,calc(100dvh - 130px));display:flex;flex-direction:column;background:#0b0b0b;border:1px solid #B49B31;box-shadow:0 18px 50px rgba(0,0,0,.6)}
.sch-p[hidden]{display:none}
.sch-h{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(180,155,49,.38)}
.sch-hart{width:42px;height:42px;flex:none}
.sch-h b{display:block;color:#fff;font:500 16px/1.2 "Jost",sans-serif}
.sch-h small{display:block;color:#B49B31;font:400 10.5px/1.3 "Jost",sans-serif;letter-spacing:.16em;text-transform:uppercase}
.sch-x{all:unset;cursor:pointer;margin-left:auto;color:#fff;font-size:26px;line-height:1;padding:4px 8px}
.sch-log{flex:1;overflow:auto;padding:16px 14px;display:flex;flex-direction:column;gap:10px}
.sch-m{max-width:86%;padding:11px 14px;font:400 15px/1.5 "Jost",sans-serif}
.sch-m.bot{background:#1a1810;color:#eee;border-left:2px solid #B49B31;align-self:flex-start}
.sch-m.you{background:#B49B31;color:#000;align-self:flex-end}
.sch-m.think{display:flex;gap:5px;padding:14px}
.sch-m.think i{width:7px;height:7px;border-radius:50%;background:#B49B31;animation:schT 1s ease-in-out infinite}
.sch-m.think i:nth-child(2){animation-delay:.15s}.sch-m.think i:nth-child(3){animation-delay:.3s}
@keyframes schT{0%,100%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}
.sch-chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 14px 10px}
.sch-chips:empty{display:none}
.sch-chips button{all:unset;cursor:pointer;border:1px solid rgba(180,155,49,.6);color:#B49B31;padding:8px 12px;font:400 13px/1.2 "Jost",sans-serif}
.sch-chips button:hover{background:#B49B31;color:#000}
.sch-f{display:flex;border-top:1px solid rgba(180,155,49,.38)}
.sch-f input{flex:1;min-width:0;background:transparent;border:0;color:#fff;padding:14px;font:400 15px "Jost",sans-serif;outline:none}
.sch-f button{all:unset;cursor:pointer;padding:0 16px;color:#000;background:#B49B31;font:500 11px/1 "Jost",sans-serif;letter-spacing:.2em;text-transform:uppercase}
@media (max-width:560px){.sch{right:14px;bottom:14px}.sch-art{width:60px;height:60px}.sch-l{padding:11px 14px;font-size:10.5px}.sch-p{bottom:76px;right:-2px}}
@media (prefers-reduced-motion:reduce){.sch-art,.sch .eyes,.sch-m.think i{animation:none}}
html body .lead label.chk input[type=checkbox]{-webkit-appearance:checkbox;appearance:auto;display:block;width:22px;height:22px;min-height:0;padding:0;margin:1px 0 0;border:0;background:none;box-shadow:none}
html body #ball-auction-sec .lead .btn{background:#000;border-color:#000;color:#B49B31}
html body #ball-auction-sec .lead .btn:hover{background:#fff;border-color:#fff;color:#000}
html body #ball-auction-sec .lead .btn.ghost{background:transparent;border-color:#000;color:#000}
/* logos centered in their tiles (Corey, Oct 29 2026) */
.ix-logo{flex:1;justify-content:center;align-items:center;margin:26px 0 6px}
@media (max-width:860px){.ix-logo{margin:24px 0 8px}}

/* The PVA Open page in the foundation's look (Corey, Oct 29 2026): foundation type and black, the event's green and
   logo as accents, centered, the recap as a silent header loop. */
.ophero .oph-v{opacity:.5;filter:saturate(.8) contrast(1.05);object-position:50% 50%}
.ophero::after{background:radial-gradient(ellipse at 50% 50%,rgba(0,0,0,.7) 0,rgba(0,0,0,.42) 60%,rgba(0,0,0,.2) 100%)}
.ophero .wrap{display:flex;flex-direction:column;align-items:center}
.oph-logo{width:clamp(170px,17vw,250px);height:auto;margin-bottom:40px}
.ophero h1{max-width:18ch}
.o-grn{--bg:#0F5B34;--fg:#fff;--em:#B49B31;--soft:rgba(255,255,255,.86);--mut:rgba(255,255,255,.65);--line:rgba(180,155,49,.45);--hov:rgba(255,255,255,.06);background:#0F5B34;color:#fff;padding:var(--s6) 0}
.o-grn h2{color:#fff}.o-grn h2 em{color:#B49B31}
.o-grn .tag{color:#B49B31}
.o-raised{padding:var(--s5) 0}
.o-raised .tag{justify-content:center}
.o-num{margin:0;font:800 clamp(44px,7.4vw,112px)/1 var(--sans);font-stretch:118%;text-transform:uppercase;letter-spacing:-.01em;color:#B49B31;white-space:nowrap}
.o-raised .lede{margin:18px auto 0;max-width:40ch;text-align:center}
.o-pres{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,6vw,96px);align-items:center;max-width:1100px;margin:0 auto}
.o-pres .aos{display:flex;justify-content:center;align-items:center;padding:clamp(30px,4vw,56px);border:1px solid var(--line)}
.o-pres .aos img{width:100%;max-width:300px;height:auto}
.o-names{list-style:none;margin:var(--s4) auto 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:1100px;border-top:1px solid rgba(0,0,0,.25)}
.o-names li{padding:26px 16px;text-align:center;border-bottom:1px solid rgba(0,0,0,.25);font:800 clamp(15px,1.4vw,19px)/1.25 var(--sans);font-stretch:112%;text-transform:uppercase;color:#000}
.o-names li:not(:nth-child(4n+1)){border-left:1px solid rgba(0,0,0,.25)}
.t-open2 .terms{margin-top:var(--s4)}
@media (max-width:860px){.o-pres{grid-template-columns:1fr}.o-names{grid-template-columns:repeat(2,minmax(0,1fr))}.o-names li:not(:nth-child(4n+1)){border-left:0}.o-names li:nth-child(even){border-left:1px solid rgba(0,0,0,.25)}.oph-logo{margin-bottom:28px}}
.t-open2 :is(.l-name,.l-price){font:800 clamp(18px,1.9vw,25px)/1.1 var(--sans);font-stretch:118%;text-transform:uppercase}
.t-open2 .l-price{color:var(--em)}

/* Super Ball sponsorships as an accordion (Corey, Oct 29 2026): what comes with each level, then a button
   (Givebutter once set up in site.config.js perks[].give; until then it fills the sponsor form). */
.sb-acc{max-width:980px;margin:var(--s4) auto 0;border-top:1px solid #B49B31}
.sb-ac{border-bottom:1px solid rgba(180,155,49,.38)}
.sb-ac.top{border-bottom-color:#B49B31}
.sb-ac>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto 28px;grid-template-areas:"n p x" "l p x";column-gap:28px;row-gap:6px;align-items:center;padding:30px 8px 30px 0;transition:background .5s ease}
.sb-ac>summary::-webkit-details-marker{display:none}
.sb-ac>summary:hover{background:rgba(180,155,49,.06)}
.sb-ac>summary:focus-visible{outline:2px solid #B49B31;outline-offset:-2px}
.sb-ac-n{grid-area:n;font:500 12px/1.3 "Staff",sans-serif;letter-spacing:.22em;text-transform:uppercase;color:#B49B31}
.sb-ac-l{grid-area:l;font:500 16px/1.5 "Staff",sans-serif;color:#d2cfc4}
.sb-ac-p{grid-area:p;font:900 clamp(30px,3.4vw,50px)/1 "Staff Wide","Staff",sans-serif;color:#fff;letter-spacing:-.01em;white-space:nowrap}
.sb-ac-x{grid-area:x;position:relative;width:20px;height:20px;justify-self:end}
.sb-ac-x::before,.sb-ac-x::after{content:"";position:absolute;left:0;right:0;top:50%;height:1.5px;margin-top:-.75px;background:#B49B31;transition:transform .6s ease}
.sb-ac-x::after{transform:rotate(90deg)}
.sb-ac[open] .sb-ac-x::after{transform:rotate(0)}
.sb-ac-in{padding:0 0 34px;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:40px;align-items:end}
.sb-ac-k{grid-column:1/-1;margin:0 0 14px;font:500 11px/1.3 "Staff",sans-serif;letter-spacing:.22em;text-transform:uppercase;color:#8e8a7c}
.sb-ac-in ul{list-style:none;margin:0;padding:0;columns:2;column-gap:40px}
.sb-ac-in li{break-inside:avoid;position:relative;padding:0 0 12px 22px;font:500 15.5px/1.5 "Staff",sans-serif;color:#eceae3}
.sb-ac-in li::before{content:"";position:absolute;left:0;top:.62em;width:10px;height:1.5px;background:#B49B31}
html body .t-ball main .sb-acc-btn{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:12px;padding:16px 24px;background:#B49B31;color:#000;font:500 12px/1 "Staff",sans-serif;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;transition:background .5s ease}
html body .t-ball main .sb-acc-btn:hover{background:#fff}
html body .t-ball main .sb-acc-btn:focus-visible{outline:2px solid #fff;outline-offset:3px}
html body .t-ball main .sb-acc-btn svg{width:14px;height:14px}
@media (max-width:760px){
  .sb-ac>summary{grid-template-columns:minmax(0,1fr) 22px;grid-template-areas:"n x" "p x" "l x";padding:24px 0}
  .sb-ac-p{font-size:34px}
  .sb-ac-in{grid-template-columns:minmax(0,1fr);row-gap:20px}
  .sb-ac-in ul{columns:1}
  html body .t-ball main .sb-acc-btn{justify-content:center;width:100%;white-space:normal;text-align:center}
}
@media (prefers-reduced-motion:reduce){.sb-ac-x::before,.sb-ac-x::after,.sb-ac>summary{transition:none}}

.bc-row{display:block;font-size:12.5px;line-height:1;text-align:left}
.bc-in{margin-top:24px;padding:20px 0 30px;border-top:1px solid rgba(239,243,244,.14);border-top-color:color-mix(in srgb,currentColor 16%,transparent)}
@media (max-width:760px){.bc-in{margin-top:20px;padding:18px 0 calc(104px + env(safe-area-inset-bottom,0px))}}
.bahlr-credit{display:inline-flex!important;align-items:baseline;flex-wrap:wrap;gap:10px 16px;margin:0;line-height:1;font-size:inherit;letter-spacing:.01em;color:inherit}
.bahlr-credit a{display:inline-flex;align-items:baseline;gap:.34em;padding:0;margin:0;background:none;border:0;color:inherit!important;text-decoration:none!important;font-size:inherit;letter-spacing:inherit;text-transform:none;line-height:1}
.bahlr-credit a>span,.bahlr-credit .bc-staff{opacity:.72;transition:opacity .35s ease}
.bahlr-credit a:hover>span,.bahlr-credit a:hover.bc-staff,.bahlr-credit a:focus-visible>span,.bahlr-credit a.bc-staff:focus-visible{opacity:1}
.bahlr-credit span{display:inline-block!important;margin:0!important}
.bahlr-credit .bc-sep{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.4;align-self:center}
.bahlr-credit svg{display:inline-block;height:1.1em;width:auto;flex:none;overflow:visible}
.bahlr-credit .bc-rec{animation:bcRec 2.4s ease-in-out infinite}
@keyframes bcRec{0%,100%{opacity:1}50%{opacity:.35}}
@media (prefers-reduced-motion:reduce){.bahlr-credit .bc-rec{animation:none}}
