@font-face{font-family:'Oswald';src:url('fonts/oswald-var.woff2') format('woff2');font-weight:200 700;font-style:normal;font-display:swap}
@font-face{font-family:'Newsreader';src:url('fonts/newsreader-var.woff2') format('woff2');font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:'Newsreader';src:url('fonts/newsreader-italic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}

:root{
  --navy-950:#060d1b;--navy-900:#0a1628;--navy-800:#0f2038;--navy-700:#16304f;
  --gold:#d9b445;--gold-soft:#ecd58a;--gold-deep:#8a6809;
  --paper:#f2eee5;--paper-deep:#e7e1d3;--ink:#0c0f14;--ink-soft:#3a3d45;
  --font-display:'Oswald','Arial Narrow',Arial,sans-serif;
  --font-body:'Newsreader',Georgia,'Times New Roman',serif;
  --gutter:clamp(1.25rem,5vw,5.5rem);
  --t-title:clamp(3.4rem,min(10vw,17vh),10rem);
  --t-title-md:clamp(3rem,min(8vw,14vh),8rem);
  --t-title-sm:clamp(2.4rem,min(4.6vw,8.4vh),4.6rem);
  --t-deck:clamp(1.4rem,min(2.2vw,3.6vh),2.3rem);
  --t-body:clamp(1.25rem,min(1.65vw,2.8vh),1.7rem);
  --t-body-s:clamp(1.15rem,min(1.58vw,2.7vh),1.55rem);
  --ease-out:cubic-bezier(.16,1,.3,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}
body{margin:0;background:var(--navy-950);color:#f4f1ea;font-family:var(--font-body);font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
img{max-width:100%;display:block}
h1,h2,h3,p,figure,blockquote,ol,ul{margin:0;padding:0}
ol,ul{list-style:none}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
main{display:block}

/* ---------- themes ---------- */
.th-black,.th-navy,.th-paper{background:var(--bg);color:var(--fg)}
.th-black{--bg:#07090d;--fg:#f4f1ea;--muted:rgba(244,241,234,.74);--accent:var(--gold);--line:rgba(244,241,234,.18);--panel:rgba(244,241,234,.05)}
.th-navy{--bg:var(--navy-900);--fg:#f4f1ea;--muted:rgba(244,241,234,.76);--accent:var(--gold);--line:rgba(244,241,234,.2);--panel:rgba(244,241,234,.06)}
.th-navy--deep{--bg:var(--navy-950)}
.th-paper{--bg:var(--paper);--fg:var(--ink);--muted:var(--ink-soft);--accent:var(--gold-deep);--line:rgba(12,15,20,.18);--panel:rgba(12,15,20,.05)}
.th-paper--deep{--bg:var(--paper-deep)}

/* ---------- type roles ---------- */
.eyebrow{display:flex;align-items:center;gap:.9rem;font:500 clamp(.85rem,1vw,1rem)/1 var(--font-display);letter-spacing:.26em;text-transform:uppercase;color:var(--accent)}
.eyebrow b{font-weight:600;letter-spacing:.12em;border:1.5px solid currentColor;border-radius:999px;padding:.5em .85em .42em}
.title{font:600 var(--t-title)/.92 var(--font-display);text-transform:uppercase;letter-spacing:-.012em;margin:.32em 0 .18em;text-wrap:balance}
.title--md{font-size:var(--t-title-md)}
.title--sm{font-size:var(--t-title-sm);line-height:.98}
.quote-title{font:600 clamp(2rem,min(3.4vw,6vh),3.6rem)/1.06 var(--font-display);text-transform:uppercase;letter-spacing:-.005em;margin:.5em 0 .7em}
.deck{font:italic 400 var(--t-deck)/1.25 var(--font-body);color:var(--accent);margin:0 0 1.4rem}
.deck--lg{font-size:clamp(1.6rem,2.8vw,2.8rem)}
.source{font:500 clamp(.85rem,1vw,1rem)/1.3 var(--font-display);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-top:1.4rem}
.prose{font:400 var(--t-body)/1.6 var(--font-body);color:var(--fg);max-width:34em}
.prose--lg{font-size:clamp(1.3rem,min(1.85vw,3vh),1.9rem);line-height:1.55}
.prose--sm{font-size:var(--t-body-s);line-height:1.55}
.prose--wide{max-width:40em}
.note{font:italic 400 1.05rem/1.4 var(--font-body);color:var(--muted);margin-top:.9rem}
.hook{display:block;font:600 clamp(2rem,min(3.8vw,6.4vh),4rem)/1 var(--font-display);text-transform:uppercase;letter-spacing:.005em;color:var(--accent);margin-bottom:.5em}

/* team names as deliberate badges */
.team{--t-bg:#1a2f6b;--t-fg:#fff;--s1:#dfba3f;--s2:#16181c;
  font-family:var(--font-display);font-weight:600;font-size:.8em;letter-spacing:.07em;text-transform:uppercase;line-height:1;
  padding:.28em .55em .34em;margin:0 .06em;border-radius:.22em;color:var(--t-fg);
  background:linear-gradient(90deg,var(--s1) 0 50%,var(--s2) 50% 100%) left bottom/100% .17em no-repeat,var(--t-bg);
  -webkit-box-decoration-break:clone;box-decoration-break:clone;box-shadow:0 0 0 1px rgba(255,255,255,.18);vertical-align:.07em;white-space:nowrap}
.th-paper .team{box-shadow:0 0 0 1px rgba(12,15,20,.14)}
.team--metros{--t-bg:#1a2f6b;--t-fg:#fff;--s1:#dfba3f;--s2:#16181c}
.team--steamers{--t-bg:#1a5fb4;--t-fg:#fff;--s1:#c0392b;--s2:#e67e22}
.team--uom{--t-bg:#5b1f4a;--t-fg:#dfba3f;--s1:#dfba3f;--s2:#dfba3f}
.team--mmu{--t-bg:#0057b8;--t-fg:#fff;--s1:#f7941e;--s2:#f7941e}
.print-mark{background:linear-gradient(transparent 58%,rgba(217,180,69,.75) 58%);color:inherit;padding:0 .12em;font-weight:500}

/* ---------- nav + progress marker ---------- */
.site-nav{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:1rem var(--gutter);background:var(--navy-950);color:#f4f1ea;border-bottom:1px solid rgba(244,241,234,.14);transition:transform .5s var(--ease-out),background-color .35s,color .35s,border-color .35s}
body[data-theme="paper"] .site-nav{background:var(--paper);color:var(--ink);border-color:rgba(12,15,20,.16)}
.site-nav.is-hidden{transform:translateY(-101%)}
.site-nav__brand{font:600 1.5rem/1 var(--font-display);letter-spacing:.12em;text-decoration:none}
.site-nav__links{display:flex;gap:clamp(1rem,3vw,2.6rem)}
.site-nav__links a{font:500 .85rem/1 var(--font-display);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;position:relative;padding:.4rem 0}
.site-nav__links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease-out)}
.site-nav__links a:hover::after{transform:scaleX(1)}
.site-nav__lang{font-family:'IBM Plex Sans Arabic',var(--font-display);font-size:.85rem;font-weight:500;line-height:1;letter-spacing:0;text-transform:none;background:none;color:inherit;cursor:pointer;border:1.5px solid currentColor;border-radius:999px;padding:.42rem .9rem .38rem;transition:background-color .3s,color .3s}
.site-nav__lang:hover{background:var(--gold);color:var(--navy-950);border-color:var(--gold)}

.rail{position:fixed;left:var(--gutter);bottom:1.4rem;z-index:40;display:flex;flex-direction:column;gap:.6rem;min-width:11rem;padding:.7rem .95rem .8rem;background:var(--navy-950);color:#f4f1ea;border:1px solid rgba(244,241,234,.2);border-radius:.3rem;opacity:0;transform:translateY(12px);transition:opacity .5s,transform .5s var(--ease-out),background-color .35s,color .35s,border-color .35s;pointer-events:none}
.rail.is-on{opacity:1;transform:none}
body[data-theme="paper"] .rail{background:var(--paper);color:var(--ink);border-color:rgba(12,15,20,.28)}
.rail__now{display:flex;align-items:baseline;gap:.5rem;white-space:nowrap}
.rail__num{font:600 1.9rem/1 var(--font-display);color:var(--gold);font-variant-numeric:tabular-nums}
body[data-theme="paper"] .rail__num{color:var(--gold-deep)}
.rail__of{font:400 .8rem/1 var(--font-display);letter-spacing:.12em;opacity:.65}
.rail__label{font:500 .74rem/1 var(--font-display);letter-spacing:.2em;text-transform:uppercase;margin-left:.35rem}
.rail__bar{height:2px;background:rgba(127,127,127,.35);overflow:hidden}
.rail__bar i{display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(var(--p,0));transform-origin:left}
body[data-theme="paper"] .rail__bar i{background:var(--gold-deep)}

.ticks{position:fixed;right:clamp(.9rem,2vw,2rem);top:50%;transform:translateY(-50%);z-index:40;display:none;flex-direction:column;gap:.35rem;align-items:flex-end;opacity:0;transition:opacity .5s}
.ticks.is-on{opacity:1}
.ticks a{display:flex;align-items:center;gap:.7rem;text-decoration:none;font:500 .74rem/1 var(--font-display);letter-spacing:.18em;padding:.28rem .5rem;border-radius:.2rem;background:transparent;color:inherit;opacity:.55;transition:opacity .3s,background-color .3s,color .3s}
.ticks__t{max-width:0;overflow:hidden;white-space:nowrap;text-transform:uppercase;transition:max-width .45s var(--ease-out)}
.ticks a:hover,.ticks a.is-active{opacity:1}
.ticks a.is-active{background:var(--gold);color:var(--navy-950)}
.ticks a:hover .ticks__t{max-width:16rem}
.ticks{color:#f4f1ea}
body[data-theme="paper"] .ticks{color:var(--ink)}
body[data-theme="paper"] .ticks a.is-active{color:#fff;background:var(--ink)}
@media (min-width:1100px){.ticks{display:flex}.stage.flow,.contact__stage{padding-right:calc(var(--gutter) + 2.4rem)}}


@media (min-width:1100px){
  .rail{left:clamp(.6rem,1.3vw,1.4rem);top:50%;bottom:auto;min-width:0;padding:0;background:transparent;border:0;border-radius:0;flex-direction:row;align-items:center;gap:1rem;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg)}
  .rail.is-on{transform:translateY(-50%) rotate(180deg)}
  body[data-theme="paper"] .rail{background:transparent;border:0}
  .rail__now{gap:.7rem;align-items:center}
  .rail__num{font-size:1.7rem}
  .rail__label{margin:0;font-size:.78rem}
  .rail__bar{width:2px;height:5rem}
  .rail__bar i{transform:scaleY(var(--p,0));transform-origin:top}
}

/* ---------- generic stage ---------- */
.chapter{position:relative}
.stage{position:relative;padding:clamp(5.5rem,10vw,9rem) var(--gutter)}
.flow{max-width:96rem;margin:0 auto}

/* stacked (default) split layouts */
.split{display:grid;grid-template-columns:minmax(0,1fr);gap:2.4rem;max-width:96rem;margin:0 auto}
.split__body{display:flex;flex-direction:column;gap:2rem}

/* ---------- hero ---------- */
.hero{overflow:clip}
.hero__stage{min-height:100svh;padding:0;display:flex;align-items:flex-end}
.hero__media{position:absolute;inset:0;overflow:hidden}
.hero__img{width:100%;height:100%;object-fit:cover;object-position:50% 32%;transform-origin:50% 40%}
.hero__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,13,27,.55) 0%,rgba(6,13,27,.1) 35%,rgba(6,13,27,.78) 78%,rgba(6,13,27,.96) 100%),linear-gradient(90deg,rgba(6,13,27,.7) 0%,rgba(6,13,27,0) 65%)}
.hero__content{position:relative;padding:8rem var(--gutter) clamp(3rem,7vh,5.5rem);width:100%;max-width:100rem}
.hero__kicker{display:flex;align-items:center;gap:1rem;font:500 clamp(.9rem,1.1vw,1.1rem)/1 var(--font-display);letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:clamp(1rem,2.5vh,2rem)}
.hero__kicker i{width:3rem;height:1.5px;background:var(--gold)}
.hero__name{font:600 min(17vw,25vh)/.86 var(--font-display);text-transform:uppercase;letter-spacing:-.02em;color:#fff}
.hero__name .ln{display:block;overflow:hidden;padding-bottom:.06em}
.hero__name .ln>span{display:block}
.hero__role{font:400 clamp(1.4rem,min(2.4vw,4vh),2.4rem)/1 var(--font-display);letter-spacing:.32em;text-transform:uppercase;color:var(--gold-soft);margin:clamp(1.2rem,3vh,2.2rem) 0 clamp(.8rem,2vh,1.4rem)}
.hero__intro{font:400 clamp(1.7rem,min(3.2vw,5.2vh),3.3rem)/1.22 var(--font-body);color:#fff;max-width:19em;text-wrap:balance}
.hero__cue{position:absolute;right:var(--gutter);bottom:clamp(3rem,7vh,5.5rem);display:flex;flex-direction:column;align-items:center;gap:.8rem;font:500 .8rem/1 var(--font-display);letter-spacing:.3em;text-transform:uppercase;color:var(--gold-soft)}
.hero__cue i{width:1.5px;height:4.2rem;background:linear-gradient(var(--gold),transparent);animation:cue 2.2s ease-in-out infinite;transform-origin:top}
@keyframes cue{0%{transform:scaleY(.2);opacity:.4}50%{transform:scaleY(1);opacity:1}100%{transform:scaleY(.2);opacity:.4}}

/* ---------- newspaper zoom ---------- */
.cz{position:relative;display:flex;align-items:center;justify-content:center;gap:clamp(2rem,6vw,6rem);width:100%}
.cz__main{position:relative;width:clamp(11rem,min(27vw,38vh),24rem);flex:none;box-shadow:0 18px 50px rgba(12,15,20,.28)}
.cz__main img{width:100%;display:block}
.cz__marker{position:absolute;left:75%;top:71%;width:clamp(1.6rem,3.4vw,3rem);aspect-ratio:1;transform:translate(-50%,-50%);border:2.5px solid var(--gold);border-radius:50%;background:rgba(217,180,69,.22);box-shadow:0 0 0 4px rgba(217,180,69,.25)}
.cz__circle{position:relative;flex:none;width:clamp(11rem,min(24vw,44vh),21rem);aspect-ratio:1;border-radius:50%;overflow:hidden;border:5px solid var(--gold);box-shadow:0 18px 50px rgba(12,15,20,.3);background:#111}
.cz__circle img{width:100%;height:100%;object-fit:cover}
.cz__beam{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.cz__beam polygon{fill:rgba(217,180,69,.16);stroke:var(--gold);stroke-width:1.5;stroke-dasharray:6 6}

/* ---------- Manchester ---------- */
.season{border:1px solid var(--line);background:var(--panel);border-radius:.4rem;padding:clamp(1.2rem,2.4vw,2.2rem)}
.season__head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;padding-bottom:1.1rem;margin-bottom:1.2rem;border-bottom:1px solid var(--line)}
.season__tag{font:600 clamp(.95rem,1.1vw,1.15rem)/1 var(--font-display);letter-spacing:.24em;text-transform:uppercase;color:var(--accent)}
.season__team{font:400 clamp(.95rem,1.1vw,1.15rem)/1 var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.season__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.season__stat{display:flex;flex-direction:column;gap:.35rem}
.season__num{font:600 clamp(3.6rem,min(8vw,14vh),8rem)/.9 var(--font-display);color:var(--gold);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.season__label{font:500 clamp(1rem,1.3vw,1.3rem)/1 var(--font-display);letter-spacing:.2em;text-transform:uppercase}
.season__stat em{font:italic 400 clamp(1rem,1.2vw,1.2rem)/1.25 var(--font-body);color:var(--muted)}
.prose--steam{max-width:none}

/* ---------- Varsity stage ---------- */
.vs{transition:none}
.vstage{position:relative}
.vlayer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.2rem;text-align:center;padding:2rem 0}
.vlabel{font:500 clamp(.9rem,1.1vw,1.1rem)/1 var(--font-display);letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}
.bignum{font:600 min(34vh,19vw)/.85 var(--font-display);color:var(--gold);font-variant-numeric:tabular-nums;letter-spacing:-.025em}
.vcap{font:400 clamp(1.4rem,2.4vw,2.4rem)/1.1 var(--font-body);font-style:italic;color:var(--muted)}
.vlayer--photos{flex-direction:row;align-items:flex-start;gap:clamp(1rem,3vw,3rem)}
.vposter{display:flex;flex-direction:column;gap:.9rem;align-items:center}
.vposter img{height:min(58vh,38rem);width:auto;max-width:100%;border:1px solid var(--line);box-shadow:0 20px 60px rgba(0,0,0,.5)}
.vposter figcaption{display:flex;flex-direction:column;gap:.3rem;align-items:center}
.vposter figcaption b{font:600 clamp(1.6rem,2.4vw,2.4rem)/1 var(--font-display);letter-spacing:.06em;color:var(--gold)}
.vposter figcaption span{font:500 clamp(.85rem,1vw,1rem)/1.2 var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.patch{width:min(30vh,15rem);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#2b4a86,var(--navy-800) 70%);border:4px solid var(--gold);box-shadow:0 0 0 10px rgba(217,180,69,.14),0 0 0 11px rgba(217,180,69,.45),0 24px 60px rgba(0,0,0,.55)}
.patch span{font:600 min(19vh,9.5rem)/1 var(--font-display);color:var(--gold)}
.captain__title{font:600 min(11vh,14vw,7rem)/.92 var(--font-display);text-transform:uppercase;letter-spacing:-.005em;color:#fff}
.captain__sub{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:center}
.captain__sub .team{font-size:1.15rem}
.captain__sub em{font:500 1.4rem/1 var(--font-display);letter-spacing:.2em;color:var(--gold);font-style:normal}
.vlayer--final{flex-direction:column;gap:clamp(1.5rem,5vh,3.5rem);align-items:flex-start;padding-left:clamp(0rem,4vw,4rem)}
.vfinal{display:flex;flex-direction:row;gap:clamp(1.5rem,3vw,3rem);align-items:center;text-align:left}
.vfinal__num{font:600 min(22vh,9vw)/.9 var(--font-display);color:var(--gold);letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:2.4ch}
.vfinal__label{font:500 clamp(.95rem,1.25vw,1.25rem)/1.25 var(--font-display);letter-spacing:.18em;text-transform:uppercase;max-width:14em}

/* ---------- The Record ---------- */
.totals{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin:clamp(2.5rem,5vw,4.5rem) 0;padding:1.6rem 0;border-block:2px solid var(--ink)}
.total{display:flex;flex-direction:column;gap:.5rem}
.total span{font:600 clamp(3rem,8vw,8.5rem)/.9 var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.total em{font:500 clamp(.85rem,1.2vw,1.15rem)/1 var(--font-display);letter-spacing:.24em;text-transform:uppercase;font-style:normal;color:var(--accent)}
.table-wrap{overflow-x:auto}
.ledger,.standings-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.ledger th,.standings-table th{font:500 clamp(.85rem,1vw,1rem)/1 var(--font-display);letter-spacing:.22em;text-transform:uppercase;text-align:right;padding:1rem .9rem;color:var(--accent);border-bottom:2px solid currentColor}
.ledger th:first-child,.standings-table th:first-child,.ledger td:first-child,.standings-table td:first-child{text-align:left}
.ledger td,.standings-table td{font:500 clamp(1.4rem,2.4vw,2.4rem)/1 var(--font-display);text-align:right;padding:1.1rem .9rem;border-bottom:1px solid var(--line)}
.ledger td:first-child{letter-spacing:.06em}
.ledger tr.is-hot td{color:var(--ink);background:rgba(217,180,69,.28)}
.badges{display:flex;flex-wrap:wrap;gap:.8rem;margin:2.4rem 0}
.badges li{display:flex;align-items:center;gap:.7rem;padding:.65rem 1.1rem .65rem .7rem;border:1.5px solid var(--ink);border-radius:999px;font:500 clamp(.9rem,1.1vw,1.1rem)/1 var(--font-display);letter-spacing:.14em;text-transform:uppercase}
.badges li span{display:grid;place-items:center;min-width:2rem;height:2rem;padding:0 .4rem;border-radius:50%;background:var(--ink);color:var(--gold);font-weight:600;letter-spacing:.04em}
.link-out{display:inline-flex;align-items:center;gap:.8rem;font:600 clamp(1.1rem,1.6vw,1.5rem)/1 var(--font-display);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;padding-bottom:.5rem;border-bottom:2px solid var(--ink);transition:gap .4s var(--ease-out)}
.link-out:hover{gap:1.5rem}

/* ---------- Recognition ---------- */
.recog{display:grid;gap:2.2rem}
.recog__quotes{display:grid;gap:clamp(2.2rem,5vw,3.6rem)}
.rq{display:flex;flex-direction:column;gap:1.2rem;padding-top:1.6rem;border-top:2px solid var(--gold)}
.rq__n{font:500 .9rem/1 var(--font-display);letter-spacing:.3em;color:var(--gold)}
.rq blockquote{font:italic 400 clamp(1.9rem,4.4vw,3.6rem)/1.16 var(--font-body);color:#fff;text-wrap:balance}
.rq__name{font-style:normal;font-family:var(--font-display);font-weight:600;font-size:.86em;letter-spacing:.05em;text-transform:uppercase;color:var(--navy-950);background:var(--gold);padding:.06em .4em .1em;border-radius:.16em;-webkit-box-decoration-break:clone;box-decoration-break:clone;white-space:nowrap}
.rq figcaption{display:flex;flex-direction:column;gap:.45rem}
.rq__src{font:600 clamp(.95rem,1.2vw,1.2rem)/1.2 var(--font-display);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-soft)}
.rq__stat{font:400 clamp(1rem,1.3vw,1.3rem)/1.3 var(--font-body);color:var(--muted);font-style:italic}

/* ---------- Things I'm proud of ---------- */
.proud{display:grid;gap:2.5rem}
.pindex{display:flex;flex-direction:column;margin-top:1.4rem}
.pindex li{display:flex;gap:1rem;align-items:baseline;padding:.6rem 0;border-top:1px solid var(--line);font:500 clamp(1.05rem,min(1.5vw,2.4vh),1.5rem)/1.1 var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:#fff}
.pindex li:last-child{border-bottom:1px solid var(--line)}
.pindex li span{font-size:.72em;letter-spacing:.2em;color:var(--gold)}
.proud__stage{display:block}
.pframe{display:flex;flex-direction:column;gap:clamp(3rem,7vw,5rem)}
.pitem{display:flex;flex-direction:column;gap:1.4rem;align-items:center;text-align:center}
.pitem img{height:auto;width:min(100%,30rem);border:1px solid var(--line)}
.ptext{display:flex;flex-direction:column;align-items:center;gap:.55rem}
.ptext__n{font:500 .85rem/1 var(--font-display);letter-spacing:.3em;color:var(--gold)}
.ptext__title{font:600 clamp(2.2rem,min(4.4vw,7vh),4.6rem)/.98 var(--font-display);text-transform:uppercase;letter-spacing:-.005em;color:#fff}
.ptext__label{font:italic 400 clamp(1.2rem,min(1.8vw,3vh),1.8rem)/1.25 var(--font-body);color:var(--muted)}
.ptext__year{font:600 clamp(.9rem,1.1vw,1.1rem)/1 var(--font-display);letter-spacing:.24em;color:var(--navy-950);background:var(--gold);padding:.5em .9em .44em;border-radius:.2em;margin-top:.3rem}

/* ---------- Coach ---------- */
.statement{display:flex;flex-direction:column;justify-content:center;max-width:96rem;margin:0 auto;min-height:70vh}
.statement__lead{font:500 clamp(2.3rem,min(5.4vw,9.6vh),6.2rem)/1.1 var(--font-body);letter-spacing:-.015em;margin-top:.8rem;max-width:16em;text-wrap:balance}
.coach-flow{display:flex;flex-direction:column;gap:clamp(3rem,6vw,5.5rem)}
.coach-top{display:grid;gap:1.2rem;max-width:64rem}
.coach-stats{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,3vw,3rem);border-block:2px solid var(--ink);padding:2rem 0}
.cstat{display:flex;flex-direction:column;gap:.5rem}
.cstat__num{font:600 clamp(4.4rem,11vw,11rem)/.88 var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.cstat__label{font:600 clamp(1.05rem,1.5vw,1.5rem)/1.2 var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.cstat em{font:italic 400 clamp(1.1rem,1.5vw,1.5rem)/1.3 var(--font-body);color:var(--muted)}
.standings__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.6rem 2rem;margin-bottom:1rem}
.standings__title{font:600 clamp(1.8rem,3.2vw,3.2rem)/1 var(--font-display);text-transform:uppercase}
.standings__season{font:500 clamp(.9rem,1.1vw,1.1rem)/1 var(--font-display);letter-spacing:.24em;text-transform:uppercase;color:var(--accent)}
.standings-table td{font-size:clamp(1.15rem,1.9vw,1.9rem)}
.standings-table td:first-child{font-size:clamp(1.05rem,1.8vw,1.8rem);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}
.standings-table tr.is-mine td{background:rgba(217,180,69,.3);font-weight:600}
.tag{display:inline-block;font:500 .5em/1 var(--font-display);letter-spacing:.16em;padding:.4em .7em .34em;margin-left:.6em;border:1.5px solid currentColor;border-radius:999px;vertical-align:.25em}
.tag--mine{background:var(--ink);color:var(--gold);border-color:var(--ink)}
.standings__note{font:italic 400 clamp(1.15rem,1.6vw,1.6rem)/1.4 var(--font-body);margin-top:1.2rem;color:var(--muted)}
.duo{display:grid;grid-template-columns:1fr;gap:clamp(1.2rem,3vw,2.5rem)}
.duo__frame{overflow:hidden;aspect-ratio:3/2;background:#111}
.duo__frame img{width:100%;height:112%;object-fit:cover}
.duo figcaption{font:500 clamp(.9rem,1.1vw,1.1rem)/1 var(--font-display);letter-spacing:.24em;text-transform:uppercase;margin-top:.9rem;color:var(--accent)}
.philo{display:flex;flex-direction:column}
.philo__row{display:grid;gap:.9rem 3rem;padding:clamp(1.8rem,3.4vw,3rem) 0;border-top:2px solid var(--ink)}
.philo__row:last-child{border-bottom:2px solid var(--ink)}
.philo__n{font:500 clamp(.9rem,1.1vw,1.1rem)/1 var(--font-display);letter-spacing:.3em;color:var(--accent)}
.philo__row h3{font:600 clamp(2.4rem,5.4vw,5.4rem)/.95 var(--font-display);text-transform:uppercase;letter-spacing:-.01em}
.philo__row p{font:400 clamp(1.2rem,1.65vw,1.65rem)/1.6 var(--font-body);color:var(--fg);max-width:36em}

/* ---------- Contact ---------- */
.contact__stage{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:clamp(1rem,2.4vh,1.8rem)}
.contact__title{font:600 clamp(3.4rem,min(12vw,20vh),12rem)/.9 var(--font-display);text-transform:uppercase;letter-spacing:-.02em;margin:.2em 0 .3em;text-wrap:balance}
.contact__link{font:500 clamp(1.6rem,3.6vw,3.4rem)/1.1 var(--font-display);letter-spacing:.03em;text-decoration:none;color:#fff;padding-bottom:.25em;background:linear-gradient(var(--gold),var(--gold)) left bottom/0 3px no-repeat;transition:background-size .5s var(--ease-out),color .3s;overflow-wrap:anywhere}
.contact__link:hover{background-size:100% 3px;color:var(--gold-soft)}
.contact__link--email{color:var(--gold)}
.contact__note{font:italic 400 clamp(1.2rem,1.6vw,1.6rem)/1.4 var(--font-body);color:var(--muted);margin-top:2.4rem}

/* ---------- JS-enabled hidden states (reveals set by GSAP) ---------- */
html.js-anim [data-r]{opacity:0;transform:translateY(30px)}

/* ---------- stacked layout tuning ---------- */
@media (min-width:700px){
  .duo{grid-template-columns:1fr 1fr}
  .philo__row{grid-template-columns:5rem 1fr 1.4fr;align-items:start}
  .philo__row h3{grid-column:2}
  .philo__row p{grid-column:3}
}
@media (min-width:900px){
  .recog__quotes{grid-template-columns:1fr}
  .split--print{grid-template-columns:1fr 1fr;align-items:center}
}
@media (max-width:699px){
  .site-nav__links a:not(:last-child){display:none}
  .rail{min-width:0;padding:.5rem .7rem .55rem;left:1rem;bottom:1rem}
  .rail__label,.rail__of{display:none}
  .rail__num{font-size:1.4rem}
  .totals{grid-template-columns:repeat(2,1fr)}
  .season__stats{grid-template-columns:1fr 1fr 1fr;gap:.6rem}
  .coach-stats{grid-template-columns:1fr}
  .vlayer--photos{flex-direction:column;align-items:center}
  .vlayer--final{padding-left:0}
  .vfinal{flex-direction:column;align-items:flex-start;gap:.6rem}
  .cz{flex-direction:column;gap:2.5rem}
  .cz__beam{display:none}
  .standings-table td:first-child{white-space:normal}
  .vposter img{height:auto;width:min(100%,24rem)}
  .bignum{font-size:min(38vw,14rem)}
  .tag{display:block;margin:.5em 0 0;width:fit-content}
  .ledger td,.standings-table td{padding:.8rem .35rem;font-size:1.25rem}
  .ledger th,.standings-table th{padding:.8rem .35rem}
  .standings-table td:first-child{font-size:1rem;line-height:1.15}
}
@media (min-width:700px) and (max-width:1099px){
  .vposter img{height:min(48vh,28rem)}
  .bignum{font-size:min(30vw,16rem)}
}

/* ---------- pinned stage layouts (desktop, tall, motion OK) ---------- */
html.is-pinned .stage{height:100vh;height:100svh;padding:clamp(5rem,10vh,7.5rem) calc(var(--gutter) + 2.4rem) clamp(2rem,5vh,3.5rem) var(--gutter);overflow:hidden;max-width:none;margin:0}
html.is-pinned .hero__stage{padding:0}
html.is-pinned .split{grid-template-columns:5fr 7fr;column-gap:clamp(3rem,7vw,8rem);align-items:center;max-width:none}
html.is-pinned .split__body{justify-content:center}
html.is-pinned .split--print{grid-template-columns:5fr 6fr}
html.is-pinned .split--mcr{grid-template-columns:6fr 5fr;align-items:center}
html.is-pinned .split--mcr .prose{font-size:clamp(1.15rem,min(1.45vw,2.5vh),1.5rem);max-width:none}
html.is-pinned .split--mcr .title{font-size:clamp(3rem,min(7.4vw,13vh),7.6rem)}
html.is-pinned .split--mcr .deck{margin-bottom:1.1rem}
html.is-pinned .prose--steam{font-size:clamp(1.15rem,min(1.45vw,2.5vh),1.5rem)}
html.is-pinned .split--varsity{grid-template-columns:6fr 6fr;column-gap:clamp(2rem,5vw,6rem);align-items:stretch}
html.is-pinned .split--varsity .split__head,html.is-pinned .recog__head,html.is-pinned .proud__index{align-self:center}
html.is-pinned .split--varsity .title{margin-top:.2em}
html.is-pinned .split--varsity .deck{margin-bottom:1rem}
html.is-pinned .vstage{position:relative;min-height:0}
html.is-pinned .vlayer{position:absolute;inset:0;padding:0}
html.is-pinned .recog{grid-template-columns:4fr 8fr;align-items:stretch;column-gap:clamp(3rem,6vw,7rem)}
html.is-pinned .recog__quotes{position:relative;display:block}
html.is-pinned .rq{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);border-top:0;padding-top:0}
html.is-pinned .rq blockquote{font-size:clamp(2rem,min(3.8vw,6.6vh),4.2rem)}
html.is-pinned .proud{grid-template-columns:4fr 8fr;align-items:stretch;column-gap:clamp(3rem,6vw,7rem)}
html.is-pinned .proud__stage{position:relative;display:block}
html.is-pinned .pframe{display:block;position:relative;width:100%;height:100%}
html.is-pinned .pitem{position:absolute;inset:0;justify-content:center;gap:clamp(.9rem,2.2vh,1.6rem)}
html.is-pinned .pitem img{width:auto;max-width:100%;height:min(56vh,40rem);aspect-ratio:5/6;object-fit:contain;background:#0b0e14}
html.is-pinned .statement{min-height:0;justify-content:center}
html.is-pinned .stage.flow{height:auto;overflow:visible;padding:clamp(5.5rem,10vw,9rem) calc(var(--gutter) + 2.4rem) clamp(5.5rem,10vw,9rem) var(--gutter);max-width:96rem;margin:0 auto}
html.is-pinned .stage.contact__stage{height:auto;min-height:100svh;overflow:visible}
html.is-pinned .hero__name{font-size:min(15vw,24vh)}

/* ---------- Arabic / RTL ---------- */
.rq__disclaimer{font:italic 400 1rem/1.4 var(--font-body);color:var(--muted);margin-top:.4rem}
.rq__disclaimer:empty{display:none;margin:0}

html[dir="rtl"]{--font-display:'IBM Plex Sans Arabic','Oswald',Tahoma,Arial,sans-serif;--font-body:'IBM Plex Sans Arabic',Tahoma,Arial,sans-serif}
html[dir="rtl"] *{letter-spacing:normal!important}
html[dir="rtl"] .prose,html[dir="rtl"] .prose--lg,html[dir="rtl"] .prose--sm,html[dir="rtl"] .prose--wide,html[dir="rtl"] .prose--steam{line-height:1.85}
html[dir="rtl"] .philo__row p{line-height:1.9}
html[dir="rtl"] .rq blockquote{line-height:1.55}
html[dir="rtl"] .contact__note,html[dir="rtl"] .standings__note,html[dir="rtl"] .note,html[dir="rtl"] .rq__disclaimer{line-height:1.7}
html[dir="rtl"] .vcap,html[dir="rtl"] .season__stat em,html[dir="rtl"] .cstat em{line-height:1.5}
html[dir="rtl"] .statement__lead{line-height:1.35}
html[dir="rtl"] .hero__name{line-height:1.25;text-transform:none}
html[dir="rtl"] .hero__name .ln{padding-bottom:.05em}
html[dir="rtl"] .captain__title{line-height:1.3;text-transform:none}
html[dir="rtl"] .ptext__title,html[dir="rtl"] .contact__title,html[dir="rtl"] .title,html[dir="rtl"] .quote-title{text-transform:none}

html[dir="rtl"] .hero__shade{background:linear-gradient(180deg,rgba(6,13,27,.55) 0%,rgba(6,13,27,.1) 35%,rgba(6,13,27,.78) 78%,rgba(6,13,27,.96) 100%),linear-gradient(270deg,rgba(6,13,27,.7) 0%,rgba(6,13,27,0) 65%)}
html[dir="rtl"] .hero__cue{right:auto;left:var(--gutter)}

html[dir="rtl"] .rail{left:auto;right:1rem}
html[dir="rtl"] .ticks{right:auto;left:clamp(.9rem,2vw,2rem);align-items:flex-start}
@media (min-width:1100px){
  html[dir="rtl"] .rail{right:var(--gutter);left:auto;bottom:1.4rem;top:auto;writing-mode:horizontal-tb;flex-direction:column;align-items:flex-start;transform:none;min-width:11rem;padding:.7rem .95rem .8rem;background:var(--navy-950);border:1px solid rgba(244,241,234,.2);border-radius:.3rem}
  html[dir="rtl"] .rail.is-on{transform:none}
  html[dir="rtl"] body[data-theme="paper"] .rail{background:var(--paper);border-color:rgba(12,15,20,.28)}
  html[dir="rtl"] .rail__label{display:inline}
  html[dir="rtl"] .rail__of{display:inline}
  html[dir="rtl"] .rail__bar{width:100%;height:2px}
  html[dir="rtl"] .rail__bar i{transform:scaleX(var(--p,0));transform-origin:right}
}
@media (max-width:699px){
  html[dir="rtl"] .rail{right:1rem;left:auto}
}

/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .hero__cue i{animation:none}
}
