:root{
  --gold:#C9A84C;--gold-l:#F2D878;--gold-d:#8F7330;
  --ink:#05050D;--surface:#0F0F1C;--surface2:#161628;
  --text:#EDE5D5;--muted:#A69B8C;--white:#F8F4EC;
  --hos-pad-inline:16px;
  --hos-nav-h:76px;
  /* Horizontal wordmark beside round logo: hidden below this width everywhere (nav, footer, lockups, home hero). */
  --hos-wordmark-min:769px;
  --type-ui-min:0.75rem;
  --type-ui-sm:clamp(0.75rem,0.7rem + 0.2vw,0.8125rem);
}
/* Mobile-first: base styles = small viewports; min-width blocks add tablet/desktop */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{background:var(--ink);color:var(--text);font-family:'Cormorant Garamond',Georgia,serif;font-size:1.0625rem;line-height:1.65;overflow-x:hidden;cursor:auto;-webkit-font-smoothing:antialiased;}

.skip-link{
  position:absolute;left:16px;top:-120px;z-index:10050;
  padding:12px 22px;background:var(--gold);color:var(--ink);
  font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.18em;text-transform:uppercase;
  text-decoration:none;border-radius:2px;transition:top .2s ease;
  box-shadow:0 8px 24px rgba(0,0,0,.5);
}
.skip-link:focus{top:16px;outline:2px solid var(--gold-l);outline-offset:3px;}

/* CURSOR — snappy GPU transform; only active with .use-magic-cursor */
.cur,.cur-r{position:fixed;left:0;top:0;border-radius:50%;pointer-events:none;z-index:9999;will-change:transform;}
.cur{width:8px;height:8px;margin:-4px 0 0 -4px;background:var(--gold);mix-blend-mode:screen;}
.cur-r{width:30px;height:30px;margin:-15px 0 0 -15px;border:1px solid rgba(201,168,76,.38);}
body.use-magic-cursor{cursor:none;}
@media(pointer:coarse){body.use-magic-cursor{cursor:auto;}.cur,.cur-r{display:none!important;}}
@media(prefers-reduced-motion:reduce){body.use-magic-cursor{cursor:auto;}.cur,.cur-r{display:none!important;}}

/* CANVAS */
#nebula{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;}
.grain{position:fixed;inset:0;z-index:1;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.028;}
.vignette{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at center,transparent 30%,rgba(5,5,13,.88) 100%);}

/* NAV — mobile first (burger + compact); desktop from 769px */
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px var(--hos-pad-inline);min-height:var(--hos-nav-h);background:linear-gradient(180deg,rgba(5,5,13,.96) 0%,transparent 100%);backdrop-filter:blur(8px);transition:all .3s;}
nav.scrolled{background:rgba(5,5,13,.97);border-bottom:1px solid rgba(201,168,76,.08);}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;cursor:pointer;color:inherit;min-width:0;}
a.nav-logo:focus-visible,a.nav-cta:focus-visible,a.nav-link:focus-visible{outline:1px solid var(--gold);outline-offset:4px;}
.nav-logo-img{width:52px;height:52px;border-radius:50%;object-fit:cover;filter:drop-shadow(0 0 8px rgba(201,168,76,.5));transition:.3s;flex-shrink:0;}
.nav-logo:hover .nav-logo-img{filter:drop-shadow(0 0 16px rgba(201,168,76,.9));}
/* Nav wordmark: see --hos-wordmark-min in :root; shown from min-width 769px */
.nav-logo-mark{display:none;}
.nav-links{display:none;align-items:center;gap:28px;}
.nav-link{font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);text-decoration:none;cursor:pointer;transition:color .3s;background:none;border:none;}
.nav-link:hover,.nav-link.active{color:var(--gold);}
.nav-cta{font-family:'Cinzel',serif;font-size:clamp(0.72rem,0.68rem + 0.2vw,0.8125rem);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(201,168,76,.32);padding:10px 14px;background:rgba(201,168,76,.05);cursor:pointer;transition:all .3s;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;}
.nav-cta:hover{background:rgba(201,168,76,.14);border-color:var(--gold);}
.nav-dot{width:5px;height:5px;border-radius:50%;background:var(--gold);animation:pdot 2.5s infinite;}
@keyframes pdot{0%,100%{box-shadow:0 0 0 0 rgba(201,168,76,.6);}50%{box-shadow:0 0 0 8px rgba(201,168,76,0);}}
.nav-burger{display:flex;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:10px;margin-right:-4px;min-width:44px;min-height:44px;align-items:center;justify-content:center;touch-action:manipulation;}
.nav-burger span{width:22px;height:1px;background:var(--gold);display:block;transition:.3s;}
.nav-burger:focus-visible{outline:2px solid var(--gold-l);outline-offset:4px;}
@media(min-width:769px){
  :root{--hos-pad-inline:48px;--hos-nav-h:96px;}
  nav{padding:16px var(--hos-pad-inline);}
  .nav-logo-img{width:64px;height:64px;}
  .nav-logo-mark{display:block;height:clamp(28px,3.6vw,40px);width:auto;max-width:min(38vw,380px);object-fit:contain;object-position:left center;flex-shrink:1;}
  .nav-links{display:flex;gap:32px;}
  .nav-burger{display:none;}
  .nav-cta{font-size:var(--type-ui-sm);letter-spacing:.24em;padding:9px 22px;}
}

/* PAGES — one main per HTML file */
.hos-page{min-height:100vh;position:relative;z-index:2;display:block;}

/* ═══════════════════ PAGE 1: HOME ═══════════════════ */
#pg-home{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:calc(var(--hos-nav-h) + 36px) var(--hos-pad-inline) 64px;min-height:100vh;}

.hero-logo-wrap{position:relative;width:min(72vw,200px);height:min(72vw,200px);aspect-ratio:1;margin:0 auto;}
@media(min-width:769px){
  #pg-home{padding:110px 24px 80px;}
  .hero-logo-wrap{width:240px;height:240px;}
  .hero-wordmark-img{display:block;width:min(92vw,720px);height:auto;max-height:clamp(52px,16vw,132px);object-fit:contain;object-position:center;opacity:0;animation:up .9s .65s forwards;}
}
.hero-logo-img{width:100%;height:100%;border-radius:50%;object-fit:cover;position:relative;z-index:2;animation:logoFloat 6s ease-in-out infinite;filter:drop-shadow(0 0 30px rgba(201,168,76,.6));}
@keyframes logoFloat{0%,100%{transform:translateY(0) rotate(0deg);filter:drop-shadow(0 0 30px rgba(201,168,76,.6));}50%{transform:translateY(-12px) rotate(1deg);filter:drop-shadow(0 0 50px rgba(201,168,76,.9));}}
.hero-logo-ring{position:absolute;inset:-16px;border-radius:50%;border:1px solid rgba(201,168,76,.2);animation:ringPulse 3s ease-in-out infinite;}
.hero-logo-ring2{position:absolute;inset:-32px;border-radius:50%;border:1px solid rgba(201,168,76,.1);animation:ringPulse 3s 1.5s ease-in-out infinite;}
@keyframes ringPulse{0%,100%{opacity:.4;transform:scale(1);}50%{opacity:1;transform:scale(1.03);}}

.h-ny-banner{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(1.02rem,2.1vw,1.2rem);
  font-style:italic;
  color:var(--muted);
  text-align:center;
  line-height:1.45;
  max-width:min(34em,92vw);
  margin:-6px auto 14px;
  padding:0 14px;
  opacity:0;
  animation:up .85s .38s forwards;
}
.h-ny-banner .h-ny-place{color:var(--gold-l);font-style:normal;font-weight:600;}
.h-pre{font-family:'Cinzel',serif;font-size:clamp(0.68rem,0.62rem + 0.35vw,0.78rem);letter-spacing:.42em;text-transform:uppercase;color:var(--gold-l);margin-bottom:20px;opacity:0;animation:up .9s .52s forwards;}
/* Home: circle + wordmark lockup */
.hero-brand-lockup{display:flex;flex-direction:column;align-items:center;gap:clamp(16px,4vw,28px);width:100%;max-width:min(100%,920px);margin:0 auto clamp(20px,5vw,36px);}
.h-brand-title{display:flex;flex-direction:column;align-items:center;gap:6px;margin:0;padding:0;border:0;}
/* Home hero wordmark: round emblem only on small viewports */
.hero-wordmark-img{display:none;}
/* Shared: round emblem + horizontal wordmark */
.hos-lockup{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(10px,3vw,20px);margin-bottom:4px;}
.hos-wordmark-img{display:block;width:auto;object-fit:contain;object-position:center;}
/* Page intros + confirm: horizontal wordmark hidden until --hos-wordmark-min (769px), same as nav */
.hos-lockup .hos-wordmark-img,
.confirm-brand-lockup > .hos-wordmark-img{display:none;}
.page-hero-lockup{margin-bottom:16px;}
.page-hero-lockup .hos-wordmark-img{height:clamp(26px,7vw,42px);max-width:min(72vw,400px);}
.intro-lockup{margin:0 auto 20px;}
.intro-lockup .hos-wordmark-img{height:clamp(24px,6.5vw,38px);max-width:min(70vw,360px);}
@media(min-width:769px){
  .hos-lockup .hos-wordmark-img,
  .confirm-brand-lockup > .hos-wordmark-img{display:block;}
  .page-hero-lockup .hos-wordmark-img{height:clamp(32px,4vw,46px);max-width:min(55vw,440px);}
  .intro-lockup .hos-wordmark-img{height:clamp(30px,3.5vw,42px);max-width:min(50vw,400px);}
}
.h-rule{width:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:0 auto 36px;animation:widen 1.2s 1.1s forwards;}
.h-tag{font-size:clamp(1.12rem,2.5vw,1.65rem);line-height:1.75;color:var(--muted);max-width:min(600px,42em);margin:0 auto 50px;font-style:italic;opacity:0;animation:up .9s 1.3s forwards;}
.h-tag em{color:var(--text);font-style:normal;font-weight:600;}
.h-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;flex-shrink:0;opacity:0;animation:up .8s 1.6s forwards;}
/* In document flow below CTAs so “Discover” never sits under stacked buttons (was position:absolute + bottom). */
.h-scroll{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:clamp(28px,5vmin,56px);flex-shrink:0;opacity:0;animation:up 1s 2.2s forwards;}
.h-scroll span{font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.28em;text-transform:uppercase;color:var(--gold-l);}
.scroll-bar{width:1px;height:56px;background:linear-gradient(180deg,var(--gold),transparent);animation:snake 2s ease-in-out infinite;}

/* Floating fandoms on hero */
.fan-floaters{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.floater{position:absolute;font-size:1.6rem;opacity:0;animation:floatUp linear infinite;}
@keyframes floatUp{0%{opacity:0;transform:translateY(0) rotate(0deg);}10%{opacity:.35;}80%{opacity:.25;}100%{opacity:0;transform:translateY(-100vh) rotate(360deg);}}

/* ═══════════════════ TICKER ═══════════════════ */
.ticker{position:relative;z-index:2;overflow:hidden;border-top:1px solid rgba(201,168,76,.07);border-bottom:1px solid rgba(201,168,76,.07);background:rgba(201,168,76,.018);padding:12px 0;}
.ticker-track{display:flex;width:max-content;animation:tick 32s linear infinite;}
.ticker-track.rev{animation-direction:reverse;}
@keyframes tick{to{transform:translateX(-50%);}}
.t-item{display:inline-flex;align-items:center;gap:16px;padding:0 26px;font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.26em;text-transform:uppercase;color:var(--gold-l);white-space:nowrap;}
.t-gem{color:var(--gold);font-size:9px;}

/* ═══════════════════ PAGE 2: UNIVERSES ═══════════════════ */
#pg-universes{padding:calc(var(--hos-nav-h) + 32px) 0 56px;}
@media(min-width:769px){#pg-universes{padding:100px 0 80px;}}

.page-hero{text-align:center;padding:28px var(--hos-pad-inline) 44px;position:relative;}
@media(min-width:769px){.page-hero{padding:40px 24px 60px;}}
.page-hero-logo{width:80px;height:80px;border-radius:50%;object-fit:cover;margin:0;display:block;filter:drop-shadow(0 0 20px rgba(201,168,76,.55));animation:logoFloat 6s ease-in-out infinite;flex-shrink:0;}
@media(min-width:769px){.page-hero-logo{width:96px;height:96px;}}

/* Universe Grid — 1 col → 2 col (581+) → 3 col (901+) */
.uni-grid{display:grid;grid-template-columns:1fr;gap:2px;max-width:1400px;margin:0 auto;padding:0 var(--hos-pad-inline);align-items:stretch;}
/* min-height + height:auto so a row matches its tallest tile (featured vs neighbour) */
.uni-tile{position:relative;min-height:280px;height:auto;align-self:stretch;overflow:hidden;cursor:default;border:1px solid rgba(201,168,76,.04);transition:border-color .4s;}
.uni-tile:hover{border-color:rgba(201,168,76,.4);}
.uni-tile canvas{position:absolute;inset:0;width:100%;height:100%;display:block;}
.uni-tile-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(5,5,13,.35) 38%,rgba(5,5,13,.92) 72%,rgba(3,3,10,.99) 100%);transition:background .4s;z-index:1;pointer-events:none;}
.uni-tile:hover .uni-tile-overlay{background:linear-gradient(180deg,transparent 0%,rgba(5,5,13,.5) 32%,rgba(5,5,13,.95) 68%,rgba(2,2,8,.995) 100%);}
.uni-tile-content{position:absolute;bottom:0;left:0;right:0;padding:0 14px 16px;z-index:2;}
.uni-tile-copy{
  padding:16px 18px 18px;
  background:linear-gradient(165deg,rgba(18,16,32,.97) 0%,rgba(6,6,14,.99) 100%);
  border:1px solid rgba(201,168,76,.38);
  border-radius:14px;
  box-shadow:0 16px 48px rgba(0,0,0,.75),0 0 0 1px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.07);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.uni-tile-logo{
  display:block;
  height:clamp(44px,11vw,56px);
  width:auto;
  max-width:100%;
  min-width:0;
  max-height:68px;
  object-fit:contain;
  object-position:left center;
  margin:0 0 12px;
  filter:none;
  opacity:.98;
  transition:transform .35s,opacity .35s;
}
.uni-tile:hover .uni-tile-logo{
  transform:scale(1.02);
  opacity:1;
}
.uni-tile.featured .uni-tile-logo{
  height:clamp(52px,9vw,72px);
  max-height:84px;
}
.uni-tile.featured .uni-tile-copy{padding:20px 22px 22px;}
.uni-tile-tag{font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.28em;text-transform:uppercase;color:rgba(242,236,220,.72);margin-bottom:8px;}
.uni-tile-name{font-family:'Cinzel Decorative',serif;font-size:clamp(1.25rem,2.9vw,1.5rem);color:var(--white);margin-bottom:8px;line-height:1.2;text-shadow:0 2px 16px rgba(0,0,0,.85);}
.uni-tile-desc{font-size:clamp(0.95rem,2.4vw,1.05rem);color:rgba(237,229,213,.88);font-style:italic;line-height:1.6;max-height:0;overflow:hidden;transition:max-height .4s, opacity .4s;opacity:0;}
.uni-tile:hover .uni-tile-desc{max-height:120px;opacity:1;}
.uni-tile-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(201,168,76,.35);padding:8px 14px;font-family:'Cinzel',serif;font-size:clamp(0.65rem,0.6rem + 0.25vw,0.72rem);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-l);margin-top:10px;transition:.3s;background:rgba(201,168,76,.1);text-decoration:none;cursor:pointer;}
a.uni-tile-badge{color:inherit;}
.uni-tile:hover .uni-tile-badge{border-color:var(--gold);color:var(--gold-l);background:rgba(201,168,76,.14);}
.uni-tile-badge:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}
.confirm-other-note{margin:18px auto 0;max-width:520px;font-family:'Cormorant Garamond',serif;font-size:clamp(1rem,2.5vw,1.15rem);color:rgba(237,229,213,.88);line-height:1.55;text-align:center;font-style:italic;}
.confirm-other-note[hidden]{display:none!important;}
/* Featured tile (large) */
.uni-tile.featured{grid-column:span 1;min-height:300px;height:auto;}
@media(min-width:581px){
  .uni-grid{grid-template-columns:repeat(2,1fr);padding:0 12px;}
  .uni-tile{min-height:260px;}
  .uni-tile.featured{grid-column:span 2;min-height:300px;}
}
@media(min-width:901px){
  .uni-grid{grid-template-columns:repeat(3,1fr);padding:0 24px;}
  .uni-tile{min-height:400px;}
  .uni-tile.featured{grid-column:span 2;min-height:500px;}
}

/* ═══════════════════ PAGE 3: EXPERIENCE ═══════════════════ */
#pg-experience{padding:calc(var(--hos-nav-h) + 28px) 0 56px;}
@media(min-width:769px){#pg-experience{padding:100px 0 80px;}}

.exp-intro{max-width:900px;margin:0 auto;text-align:center;padding:28px var(--hos-pad-inline) 48px;}
@media(min-width:769px){.exp-intro{padding:40px 24px 80px;}}
.exp-intro-logo{width:100px;height:100px;border-radius:50%;object-fit:cover;margin:0;display:block;filter:drop-shadow(0 0 20px rgba(201,168,76,.55));animation:logoFloat 6s ease-in-out infinite;flex-shrink:0;}

/* Times Square visual */
.ts-visual{position:relative;height:min(52vh,360px);overflow:hidden;margin:0 var(--hos-pad-inline) 40px;border:1px solid rgba(201,168,76,.12);}
@media(min-width:769px){.ts-visual{height:500px;margin:0 24px 80px;}}
.ts-canvas{width:100%;height:100%;display:block;}
.ts-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(5,5,13,.85) 100%);}
.ts-label{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);text-align:center;}
.ts-label h3{font-family:'Cinzel Decorative',serif;font-size:clamp(1.5rem,4vw,3rem);color:var(--gold);margin-bottom:8px;text-shadow:0 0 40px rgba(201,168,76,.6);}
.ts-label p{font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.26em;text-transform:uppercase;color:rgba(242,216,120,.82);}

/* Feature blocks */
.exp-blocks{max-width:1200px;margin:0 auto;padding:0 var(--hos-pad-inline);display:grid;grid-template-columns:1fr;gap:2px;}
@media(min-width:681px){.exp-blocks{grid-template-columns:repeat(2,1fr);padding:0 24px;}}
.exp-block{background:var(--surface);border:1px solid rgba(201,168,76,.07);padding:52px 44px;position:relative;overflow:hidden;transition:background .4s,border-color .4s;}
.exp-block::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:scaleX(0);transition:.5s;}
.exp-block:hover::before{transform:scaleX(1);}
.exp-block:hover{background:var(--surface2);border-color:rgba(201,168,76,.2);}
.exp-block-num{font-family:'Cinzel Decorative',serif;font-size:4rem;color:transparent;-webkit-text-stroke:1px rgba(201,168,76,.12);position:absolute;top:16px;right:20px;}
.exp-block-icon{font-size:2.2rem;margin-bottom:18px;display:block;}
.exp-block h3{font-family:'Cinzel',serif;font-size:clamp(0.72rem,0.68rem + 0.2vw,0.8rem);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-l);margin-bottom:12px;}
.exp-block p{font-size:1.05rem;line-height:1.75;color:var(--muted);}

/* ═══════════════════ PAGE 4: REGISTER ═══════════════════ */
#pg-register{padding:calc(var(--hos-nav-h) + 24px) var(--hos-pad-inline) 56px;}
@media(min-width:769px){#pg-register{padding:100px 24px 80px;}}

.reg-intro{text-align:center;margin-bottom:60px;}
.reg-intro-logo{width:100px;height:100px;border-radius:50%;object-fit:cover;margin:0;display:block;filter:drop-shadow(0 0 20px rgba(201,168,76,.55));animation:logoFloat 6s ease-in-out infinite;flex-shrink:0;}

/* Fandom + form: stack on small screens */
.reg-layout{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:2px;}
@media(min-width:900px){.reg-layout{grid-template-columns:1fr 1.1fr;}}
.reg-left{background:var(--surface);border:1px solid rgba(201,168,76,.07);padding:48px 40px;}
.reg-left h3{font-family:'Cinzel Decorative',serif;font-size:1.2rem;color:var(--gold);margin-bottom:8px;}
.reg-left p{font-size:1.05rem;font-style:italic;color:var(--muted);margin-bottom:28px;line-height:1.65;max-width:42em;margin-left:auto;margin-right:auto;}
.fan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.fan-card{position:relative;background:rgba(255,255,255,.02);border:1px solid rgba(201,168,76,.07);padding:18px 10px 14px;text-align:center;cursor:pointer;transition:all .3s;user-select:none;}
.fan-card:hover{transform:translateY(-3px);border-color:rgba(201,168,76,.3);background:rgba(201,168,76,.04);}
.fan-card.sel{border-color:var(--gold);background:rgba(201,168,76,.07);box-shadow:none;}
.fan-chk{position:absolute;top:6px;right:6px;width:15px;height:15px;border-radius:50%;background:var(--gold);color:var(--ink);font-size:7px;font-weight:800;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.3);transition:all .2s;}
.fan-card.sel .fan-chk{opacity:1;transform:scale(1);}
.fan-brand{margin-bottom:8px;}
.fan-brand-plate{
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:8px 6px;
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
}
/* Full-color franchise marks (no gold wash) */
.fan-brand-img{
  display:block;width:auto;height:clamp(36px,8vw,44px);max-width:100%;object-fit:contain;object-position:center;
  opacity:1;
  filter:none;
  transition:transform .3s,opacity .3s;
}
.fan-card:hover .fan-brand-img,.fan-card.sel .fan-brand-img{
  transform:scale(1.05);
}
.fan-em-fallback{font-size:1.55rem;line-height:1;display:block;transition:.3s;}
.fan-card:hover .fan-em-fallback{transform:scale(1.15);}
.fan-em{font-size:1.6rem;margin-bottom:7px;display:block;transition:.3s;}
.fan-card:hover .fan-em{transform:scale(1.2);}
.fan-nm{font-family:'Cinzel',serif;font-size:clamp(0.65rem,0.58rem + 0.35vw,0.75rem);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);transition:.3s;line-height:1.35;}
.fan-card.sel .fan-nm,.fan-card:hover .fan-nm{color:var(--gold-l);}
.fan-hint{font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-l);text-align:center;margin-top:16px;min-height:22px;transition:.3s;line-height:1.4;}

.reg-right{background:var(--surface);border:1px solid rgba(201,168,76,.1);position:relative;}
.reg-right::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
.reg-right::after{content:'';position:absolute;inset:8px;border:1px solid rgba(201,168,76,.04);pointer-events:none;}
.reg-form-inner{padding:52px 48px;}
.reg-head{margin-bottom:36px;}
.reg-head h2{font-family:'Cinzel Decorative',serif;font-size:clamp(1.3rem,2.5vw,1.9rem);color:var(--gold);margin-bottom:10px;}
.reg-head p{font-size:1.05rem;font-style:italic;color:var(--muted);line-height:1.65;max-width:42em;}
.f-g{margin-bottom:15px;}
.f-g label{display:block;font-family:'Cinzel',serif;font-size:clamp(0.68rem,0.62rem + 0.2vw,0.75rem);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-l);margin-bottom:8px;}
.f-g input,.f-g select,.f-g textarea{width:100%;box-sizing:border-box;background:rgba(0,0,0,.45);border:1px solid rgba(201,168,76,.12);color:var(--text);padding:12px 16px;font-family:'Cormorant Garamond',serif;font-size:1.02rem;line-height:1.5;outline:none;border-radius:0;transition:border-color .3s,box-shadow .3s;}
.f-g input,.f-g select{appearance:none;}
.f-g textarea{appearance:auto;min-height:104px;resize:vertical;display:block;}
.f-g input:focus,.f-g select:focus,.f-g textarea:focus{border-color:rgba(201,168,76,.48);box-shadow:0 0 0 1px rgba(201,168,76,.18),inset 0 0 16px rgba(201,168,76,.02);}
.f-g input::placeholder,.f-g textarea::placeholder{color:rgba(166,155,140,.45);}
.f-g select option{background:#090912;}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:13px;}
.sub-btn{width:100%;padding:17px;margin-top:8px;border:none;cursor:pointer;background:linear-gradient(135deg,#7A5B1A,var(--gold),#7A5B1A);background-size:200%;color:var(--ink);font-family:'Cinzel',serif;font-size:clamp(0.75rem,0.7rem + 0.2vw,0.82rem);letter-spacing:.32em;text-transform:uppercase;position:relative;overflow:hidden;transition:all .42s;}
.sub-btn::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transform:translateX(-100%);transition:.55s;}
.sub-btn:hover::after{transform:translateX(100%);}
.sub-btn:hover{background-position:right;box-shadow:0 0 50px rgba(201,168,76,.5),0 0 100px rgba(201,168,76,.15);letter-spacing:.34em;}
.reg-perks{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:20px;}
.perk{font-family:'Cinzel',serif;font-size:clamp(0.62rem,0.58rem + 0.15vw,0.7rem);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-l);display:flex;align-items:center;gap:6px;}
.perk::before{content:'◆';font-size:7px;}
@media(max-width:900px){.reg-layout{grid-template-columns:1fr;}.reg-form-inner{padding:36px 24px;}.reg-left{padding:36px 24px;}}
@media(max-width:480px){.f-row{grid-template-columns:1fr;}.fan-grid{grid-template-columns:repeat(3,1fr);}}

/* ═══════════════════ PAGE 5: CONFIRMATION ═══════════════════ */
#pg-confirm{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:calc(var(--hos-nav-h) + 32px) 24px 80px;min-height:100vh;}
@media(min-width:769px){#pg-confirm{padding:100px 24px;}}
.confirm-brand-lockup{display:flex;flex-direction:column;align-items:center;gap:clamp(14px,3.5vw,22px);margin:0 auto 32px;max-width:min(100%,560px);}
.confirm-brand-lockup > .hos-wordmark-img{height:clamp(26px,7vw,42px);width:auto;max-width:min(90vw,420px);object-fit:contain;object-position:center;}
.confirm-logo{width:180px;height:180px;border-radius:50%;object-fit:cover;margin:0;display:block;filter:drop-shadow(0 0 40px rgba(201,168,76,.8));animation:logoFloat 5s ease-in-out infinite;}
.confirm-ring{position:absolute;inset:-20px;border-radius:50%;border:1px solid rgba(201,168,76,.3);animation:ringPulse 2.5s infinite;}
.confirm-logo-wrap{position:relative;width:180px;height:180px;margin:0;}
.confirm-h1{font-family:'Cinzel Decorative',serif;font-size:clamp(2rem,5vw,4rem);font-weight:900;background:linear-gradient(135deg,#F2D878,#C9A84C);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px;}
.confirm-sub{font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.28em;text-transform:uppercase;color:var(--gold-l);margin-bottom:36px;}
.confirm-rule{width:200px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:0 auto 36px;}
.confirm-msg{font-size:clamp(1.08rem,2.8vw,1.28rem);font-style:italic;color:var(--muted);max-width:min(540px,40em);line-height:1.75;margin-bottom:16px;}
.confirm-msg em{color:var(--gold-l);font-style:normal;}
.confirm-name{font-family:'Cinzel Decorative',serif;font-size:2rem;color:var(--white);margin-bottom:12px;}
.confirm-fandoms{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:32px 0;align-items:center;}
.cf-tag{
  font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold-l);
  border:1px solid rgba(201,168,76,.35);
  padding:8px 16px;
  display:inline-flex;align-items:center;gap:12px;
  background:rgba(12,12,24,.92);
  border-radius:10px;
  box-shadow:0 8px 24px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.05);
}
.cf-brand-img{height:clamp(26px,5vw,32px);width:auto;max-width:min(120px,28vw);object-fit:contain;filter:none;opacity:1;}
.confirm-cta{margin-top:40px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

/* ═══════════════════ SHARED COMPONENTS ═══════════════════ */
.sec-head{text-align:center;padding:0 24px;margin-bottom:52px;}
.eyebrow{font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.32em;text-transform:uppercase;color:var(--gold-l);display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:18px;}
.eyebrow::before,.eyebrow::after{content:'';flex:1;max-width:70px;height:1px;}
.eyebrow::before{background:linear-gradient(90deg,transparent,var(--gold-d));}
.eyebrow::after{background:linear-gradient(90deg,var(--gold-d),transparent);}
.sec-h2{font-family:'Cinzel Decorative',serif;font-size:clamp(1.8rem,4vw,3.2rem);font-weight:700;background:linear-gradient(135deg,var(--white),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1;margin-bottom:14px;}
.sec-sub{font-size:clamp(1.05rem,2.4vw,1.15rem);font-style:italic;color:var(--muted);max-width:min(490px,40em);margin:0 auto;line-height:1.7;}

.btn-p,.btn-g{font-family:'Cinzel',serif;font-size:clamp(0.72rem,0.66rem + 0.25vw,0.8rem);letter-spacing:.26em;text-transform:uppercase;padding:15px 40px;cursor:pointer;transition:all .4s;text-decoration:none;display:inline-block;position:relative;overflow:hidden;border:none;}
.btn-p:focus-visible,.btn-g:focus-visible,.sub-btn:focus-visible{outline:2px solid var(--gold-l);outline-offset:3px;}
.btn-p{background:linear-gradient(135deg,var(--gold-d),var(--gold),var(--gold-d));background-size:200%;color:var(--ink);}
.btn-p::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transform:translateX(-100%);transition:.55s;}
.btn-p:hover::after{transform:translateX(100%);}
.btn-p:hover{background-position:right;box-shadow:0 0 50px rgba(201,168,76,.5);}
.btn-g{background:transparent;color:var(--gold);border:1px solid rgba(201,168,76,.35);}
.btn-g:hover{border-color:var(--gold);background:rgba(201,168,76,.07);}

/* ERROR / 404 */
.error-wrap{max-width:520px;margin:0 auto;padding:calc(var(--hos-nav-h) + 48px) var(--hos-pad-inline) 64px;text-align:center;}
@media(min-width:769px){.error-wrap{padding:120px 24px 80px;}}
.error-code{font-family:'Cinzel Decorative',serif;font-size:clamp(4rem,15vw,7rem);font-weight:900;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(201,168,76,.35);margin-bottom:8px;}
.error-h{font-family:'Cinzel Decorative',serif;font-size:clamp(1.2rem,4vw,1.6rem);color:var(--gold);margin-bottom:16px;}
.error-p{font-size:clamp(1.05rem,2.5vw,1.15rem);color:var(--muted);line-height:1.75;margin-bottom:28px;font-style:italic;max-width:36em;margin-left:auto;margin-right:auto;}

/* FOOTER */
footer{position:relative;z-index:2;border-top:1px solid rgba(201,168,76,.07);padding:36px var(--hos-pad-inline) 28px;text-align:center;}
@media(min-width:769px){footer{padding:44px 48px 36px;}}
.f-logo-wrap{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:10px;flex-wrap:wrap;}
.f-logo-img{width:52px;height:52px;border-radius:50%;object-fit:cover;filter:drop-shadow(0 0 10px rgba(201,168,76,.45));flex-shrink:0;}
.f-logo-mark{display:none;}
@media(min-width:769px){
  .f-logo-img{width:60px;height:60px;}
  .f-logo-mark{display:block;height:clamp(32px,3.5vw,42px);width:auto;max-width:min(70vw,400px);object-fit:contain;object-position:center;}
}
.f-urls{font-size:clamp(0.95rem,2.2vw,1.02rem);font-style:italic;color:var(--gold);margin-bottom:20px;line-height:1.55;}
.f-urls a{color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(201,168,76,.45);}
.f-urls a:hover{color:var(--gold-l);text-decoration-color:var(--gold-l);}
.f-links{display:flex;gap:28px;justify-content:center;flex-wrap:wrap;}
.f-links a{font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .3s;}
.f-links a:hover,.f-links a:focus-visible{color:var(--gold-l);}
.f-links a:focus-visible{outline:1px solid var(--gold);outline-offset:4px;}

/* REVEAL */
.rv,.rv-l,.rv-r{transition:opacity .9s ease,transform .9s ease;}
.rv{opacity:0;transform:translateY(32px);}
.rv-l{opacity:0;transform:translateX(-32px);}
.rv-r{opacity:0;transform:translateX(32px);}
.rv.vis,.rv-l.vis,.rv-r.vis{opacity:1;transform:none;}

/* ANIMATIONS */
@keyframes up{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}
@keyframes widen{to{width:300px;}}
@keyframes snake{0%{transform:scaleY(0);transform-origin:top;opacity:1;}49%{transform:scaleY(1);transform-origin:top;opacity:1;}50%{transform:scaleY(1);transform-origin:bottom;}100%{transform:scaleY(0);transform-origin:bottom;opacity:0;}}

/* MOBILE NAV MENU */
.mobile-menu{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:190;background:rgba(5,5,13,.98);flex-direction:column;align-items:center;justify-content:center;gap:36px;}
.mobile-menu.open{display:flex;}
.mobile-menu[aria-hidden="true"]{pointer-events:none;}
.mobile-menu .nav-link{font-size:clamp(1rem,2.5vw,1.125rem);letter-spacing:.22em;display:block;width:100%;text-align:center;padding:12px 0;}
.mobile-menu-close{position:absolute;top:22px;right:22px;background:none;border:none;color:var(--gold);font-size:1.5rem;cursor:pointer;min-width:44px;min-height:44px;line-height:1;}
.mobile-menu-close:focus-visible,.mobile-menu .nav-link:focus-visible{outline:2px solid var(--gold-l);outline-offset:4px;}

/* ═══════════════════════════════════
   RESPONSIVE LAYOUT CLASSES
   (replacing inline styles)
═══════════════════════════════════ */
.hero-inner {
  position:relative;
  min-height:100vh;
  min-height:100dvh;
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  text-align:center;
  padding:calc(var(--hos-nav-h) + 28px) var(--hos-pad-inline) 64px;
}
@media(min-width:769px){
  .hero-inner{padding:110px 24px 80px;}
}

.stats-strip {
  max-width:1000px;
  margin:40px auto;
  padding:0 var(--hos-pad-inline);
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:2px;
}
@media(min-width:769px){
  .stats-strip{margin:60px auto;padding:0 20px;grid-template-columns:repeat(4,1fr);}
}
.stat-cell{background:var(--surface);border:1px solid rgba(201,168,76,.07);padding:clamp(28px,5vw,40px) clamp(16px,4vw,24px);text-align:center;}
.stat-value{font-family:'Cinzel Decorative',serif;font-size:clamp(2rem,5.5vw,2.6rem);color:var(--gold);margin-bottom:10px;line-height:1.1;}
.stat-label{font-family:'Cinzel',serif;font-size:var(--type-ui-sm);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);line-height:1.45;}
.manifesto-h3{font-family:'Cinzel Decorative',serif;font-size:clamp(1.45rem,2.6vw,2.05rem);color:var(--text);margin-bottom:24px;line-height:1.28;font-weight:700;}
.manifesto-lead{font-size:clamp(1.05rem,2.3vw,1.18rem);line-height:1.85;color:var(--muted);max-width:42em;}
.manifesto-lead strong{color:var(--gold-l);font-weight:600;}
.manifesto-cta{margin-top:28px;}

.manifesto-grid {
  max-width:1100px;
  margin:0 auto 60px;
  padding:0 var(--hos-pad-inline);
  display:grid;
  grid-template-columns:1fr;
  gap:28px;
  align-items:center;
}
.manifesto-grid .rv-l{display:none;}
@media(min-width:769px){
  .manifesto-grid{margin:0 auto 100px;padding:0 48px;grid-template-columns:1fr 1fr;gap:80px;}
  .manifesto-grid .rv-l{display:block;}
}

/* ═══════════════════════════════════
   MOBILE OVERRIDES  ≤ 768px
═══════════════════════════════════ */
@media(max-width:768px){

  /* Hero (layout is mobile-first in base rules; tune type & CTAs) */
  .h-btns { flex-direction:column; align-items:center; gap:10px; }
  .btn-p, .btn-g { width:100%; max-width:300px; text-align:center; padding:14px 24px; font-size:clamp(0.72rem,0.68rem + 0.2vw,0.8rem); letter-spacing:.22em; }

  /* Universe reel cards */
  .uni-card { flex:0 0 260px; height:380px; }
  .reel-track { padding:12px 16px 24px; gap:12px; }
  .reel-note { font-size:.5rem; }

  .uni-tile-name { font-size:1.1rem; }

  /* Experience */
  .exp-intro { padding:30px 20px 50px; }
  .ts-visual { height:320px; margin:0 12px 50px; }
  .ts-label h3 { font-size:1.3rem; }
  .exp-blocks { grid-template-columns:1fr; padding:0 16px; gap:2px; }
  .exp-block { padding:36px 28px; }
  .exp-block-num { font-size:2.5rem; }

  /* Register page */
  #pg-register { padding:calc(var(--hos-nav-h) + 20px) 12px 60px; }
  .reg-intro { margin-bottom:36px; padding:0 16px; }
  .reg-layout { grid-template-columns:1fr; }
  .reg-left { padding:28px 20px; }
  .reg-left h3 { font-size:1rem; }
  .fan-grid { grid-template-columns:repeat(3,1fr); gap:6px; }
  .fan-card { padding:14px 8px 12px; }
  .fan-brand-plate { min-height:44px; padding:6px 4px; }
  .fan-brand-img { height:clamp(28px,10vw,36px); }
  .uni-tile-content { padding:0 10px 12px; }
  .uni-tile-copy { padding:12px 14px 14px; }
  .uni-tile-logo { height:clamp(36px,14vw,50px); max-height:56px; }
  .uni-tile.featured .uni-tile-logo { height:clamp(42px,12vw,58px); max-height:64px; }
  .fan-em { font-size:1.4rem; }
  .fan-nm { font-size:clamp(0.62rem,0.56rem + 0.3vw,0.72rem); letter-spacing:.1em; }
  .reg-right { margin-top:2px; }
  .reg-form-inner { padding:28px 20px; }
  .f-row { grid-template-columns:1fr; gap:0; }
  .reg-head h2 { font-size:1.3rem; }
  .sub-btn { letter-spacing:.26em; padding:15px; }
  .reg-perks { gap:10px; }
  .perk { font-size:clamp(0.6rem,0.55rem + 0.2vw,0.68rem); letter-spacing:.16em; }

  /* Confirmation */
  #pg-confirm { padding:calc(var(--hos-nav-h) + 24px) 20px 60px; }
  .confirm-logo-wrap { width:140px; height:140px; }
  .confirm-logo { width:140px; height:140px; }
  .confirm-h1 { font-size:clamp(1.6rem,7vw,2.5rem); }
  .confirm-fandoms { gap:6px; }
  .cf-tag { font-size:var(--type-ui-sm); padding:8px 12px; }
  .confirm-cta { flex-direction:column; align-items:center; }

  /* Section headers */
  .sec-h2 { font-size:clamp(1.6rem,7vw,2.4rem); }
  .sec-sub { font-size:1rem; padding:0 8px; }
  .eyebrow::before, .eyebrow::after { max-width:40px; }

  /* Page hero (universes/experience/register) */
  .page-hero-logo, .exp-intro-logo, .reg-intro-logo { width:64px; height:64px; }

  .f-links { gap:16px; }

  /* Form inputs bigger touch targets */
  .f-g input, .f-g select, .f-g textarea { padding:14px 14px; font-size:1rem; }
  .f-g label { font-size:clamp(0.65rem,0.6rem + 0.2vw,0.72rem); }
  .f-g { margin-bottom:14px; }

  /* Pillar grid */
  .pillars-grid { grid-template-columns:1fr; }
  #pillars { padding:40px 16px 60px; }

  /* Ticker */
  .t-item { font-size:var(--type-ui-sm); letter-spacing:.22em; padding:0 18px; }
}

/* ═══════════════════════════════════
   SMALL MOBILE  ≤ 400px
═══════════════════════════════════ */
@media(max-width:400px){
  .hero-logo-wrap { width:140px; height:140px; }
  .hero-logo-ring2 { display:none; }

  .stats-strip { grid-template-columns:1fr 1fr; padding:0 12px; }
  .stat-cell { padding:24px 12px; }
  .stat-value { font-size:clamp(1.75rem,6vw,2.2rem); }

  .uni-card { flex:0 0 220px; height:340px; }
  .fan-grid { grid-template-columns:repeat(2,1fr); }

  .reg-intro-logo, .exp-intro-logo, .page-hero-logo { width:56px; height:56px; }
  .sec-h2 { font-size:clamp(1.4rem,8vw,2rem); }

  .nav-logo-img { width:44px; height:44px; }
}

/* ═══════════════════════════════════
   TABLET + SMALL LAPTOP  769px – 1200px
═══════════════════════════════════ */
@media(min-width:769px) and (max-width:1200px){
  /* Match mobile nav behavior on iPad/small-laptop widths */
  .nav-logo-mark { display:none; }
  .nav-links { display:none; }
  .nav-burger { display:flex; }

  .manifesto-grid { gap:48px; padding:0 32px; }

  .uni-grid { grid-template-columns:repeat(2,1fr); padding:0 16px; align-items:stretch; }
  .uni-tile.featured { grid-column:span 2; min-height:420px; height:auto; }
  .uni-tile { min-height:320px; height:auto; align-self:stretch; }

  .exp-blocks { grid-template-columns:1fr 1fr; padding:0 16px; }
  .exp-block { padding:40px 32px; }

  .reg-layout { grid-template-columns:1fr; }
  .reg-form-inner { padding:40px 36px; }
  .fan-grid { grid-template-columns:repeat(4,1fr); }

  .reg-left { padding:36px 32px; }
  nav { padding:16px 32px; }
}

/* Touch device - remove hover that stays stuck */
@media(hover:none){
  .uni-tile:hover { transform:none; }
  .uni-tile:hover .uni-tile-desc { max-height:120px; opacity:1; }
  .fan-card:hover { transform:none; }
  .pillar:hover { background:var(--surface); }
}

/* ═══════════════════ PROFILE: KHAJA HUSSAIN (/profile/khaja-hussain/) ═══════════════════ */
.kh-page{
  position:relative;
  z-index:2;
  max-width:min(920px,100%);
  margin:0 auto;
  padding:calc(var(--hos-nav-h) + 32px) var(--hos-pad-inline) 40px;
}
.kh-hero{
  display:flex;
  flex-direction:column-reverse;
  align-items:stretch;
  gap:clamp(28px,5vw,48px);
  margin-bottom:clamp(28px,5vw,40px);
  padding-bottom:clamp(24px,4vw,36px);
  border-bottom:1px solid rgba(201,168,76,.12);
}
@media(min-width:769px){
  .kh-hero{flex-direction:row;align-items:center;justify-content:space-between;gap:40px;}
}
.kh-hero-text{flex:1;min-width:0;}
.kh-eyebrow{
  font-family:'Cinzel',serif;
  font-size:clamp(0.62rem,0.58rem + 0.2vw,0.72rem);
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:14px;
  line-height:1.5;
}
.kh-name{
  font-family:'Cinzel Decorative',serif;
  font-size:clamp(2rem,6vw,3.25rem);
  font-weight:700;
  line-height:1.05;
  color:var(--white);
  margin-bottom:12px;
}
.kh-name-accent{color:var(--gold);font-style:italic;font-weight:700;}
.kh-role{
  font-family:'Cinzel',serif;
  font-size:clamp(0.68rem,0.64rem + 0.2vw,0.78rem);
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
  line-height:1.55;
}
.kh-rule{width:48px;height:1px;background:var(--gold);margin:18px 0 16px;opacity:.85;}
.kh-lead{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(1.05rem,2.2vw,1.22rem);
  font-style:italic;
  color:var(--muted);
  line-height:1.65;
  max-width:36em;
}
.kh-hero-visual{
  flex-shrink:0;
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:28px 24px;
  background:linear-gradient(165deg,rgba(22,22,40,.95) 0%,rgba(5,5,13,.98) 100%);
  border:1px solid rgba(201,168,76,.18);
  border-radius:4px;
  align-self:center;
  width:100%;
  max-width:280px;
}
@media(min-width:769px){.kh-hero-visual{align-self:stretch;width:min(280px,32vw);max-width:none;}}
.kh-photo-frame{
  position:relative;
  z-index:1;
  border-radius:6px;
  overflow:hidden;
  box-shadow:0 0 36px rgba(201,168,76,.22);
}
.kh-photo-frame::before{
  content:'';
  position:absolute;
  inset:-4px;
  border:2px solid rgba(201,168,76,.45);
  border-radius:8px;
  z-index:2;
  pointer-events:none;
}
.kh-photo-frame::after{
  content:'';
  position:absolute;
  inset:-11px;
  border:1px solid rgba(201,168,76,.2);
  border-radius:10px;
  pointer-events:none;
}
.kh-photo{
  display:block;
  width:clamp(168px,46vw,228px);
  height:auto;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center top;
  border-radius:4px;
}
.kh-photo-caption{
  position:relative;
  z-index:1;
  margin:16px 0 0;
  font-family:'Cinzel',serif;
  font-size:var(--type-ui-sm);
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--gold-l);
  text-align:center;
}
.kh-stats{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:2px;
  margin-bottom:clamp(36px,6vw,52px);
  background:rgba(201,168,76,.12);
  border:1px solid rgba(201,168,76,.15);
}
@media(min-width:600px){.kh-stats{grid-template-columns:repeat(3,1fr);}}
@media(min-width:900px){.kh-stats{grid-template-columns:repeat(5,1fr);}}
.kh-stat{
  background:var(--surface);
  padding:clamp(18px,3vw,22px) 12px;
  text-align:center;
}
.kh-stat-num{
  display:block;
  font-family:'Cinzel Decorative',serif;
  font-size:clamp(1.5rem,4vw,1.85rem);
  color:var(--gold);
  line-height:1.1;
  margin-bottom:8px;
}
.kh-stat-lbl{
  font-family:'Cinzel',serif;
  font-size:clamp(0.58rem,0.52rem + 0.2vw,0.68rem);
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--muted);
  line-height:1.35;
}
.kh-section{margin-bottom:clamp(40px,7vw,56px);}
.kh-sec-head{display:flex;align-items:center;gap:16px;margin-bottom:20px;}
.kh-sec-label{
  font-family:'Cinzel',serif;
  font-size:clamp(0.62rem,0.58rem + 0.15vw,0.72rem);
  font-weight:600;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--gold);
  white-space:nowrap;
}
.kh-sec-rule{flex:1;height:1px;background:linear-gradient(90deg,rgba(201,168,76,.35),transparent);}
.kh-h2{
  font-family:'Cinzel Decorative',serif;
  font-size:clamp(1.45rem,3.5vw,2rem);
  font-weight:700;
  color:var(--text);
  line-height:1.2;
  margin-bottom:18px;
}
.kh-h2-sm{font-size:clamp(1.25rem,3vw,1.55rem);}
.kh-body{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(1.02rem,2vw,1.12rem);
  color:var(--muted);
  line-height:1.75;
  margin-bottom:16px;
  max-width:52em;
}
.kh-body strong{color:var(--text);font-weight:600;}
.kh-body-tight{margin-bottom:22px;}
.kh-body-sm{font-size:clamp(0.98rem,1.9vw,1.05rem);}
.kh-pull{
  margin:28px 0;
  padding:20px 22px 20px 20px;
  border-left:3px solid var(--gold);
  background:rgba(201,168,76,.06);
}
.kh-pull p{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(1.08rem,2.2vw,1.28rem);
  font-style:italic;
  color:var(--text);
  line-height:1.55;
}
.kh-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;padding:0;list-style:none;}
.kh-tag{
  font-family:'Cinzel',serif;
  font-size:clamp(0.58rem,0.54rem + 0.12vw,0.68rem);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--muted);
  border:1px solid rgba(201,168,76,.22);
  padding:6px 12px;
  background:rgba(15,15,28,.6);
}
.kh-tag-hl{background:var(--surface2);color:var(--gold-l);border-color:rgba(201,168,76,.35);}
.kh-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:2px;
  margin-top:8px;
  background:rgba(201,168,76,.14);
  border:1px solid rgba(201,168,76,.12);
}
@media(min-width:700px){.kh-grid{grid-template-columns:1fr 1fr;}}
.kh-card{
  background:var(--surface);
  padding:clamp(20px,3vw,26px);
  display:flex;
  flex-direction:column;
  min-height:100%;
  transition:background .25s ease;
}
@media(hover:hover){.kh-card:hover{background:var(--surface2);}}
.kh-card-meta{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:0.95rem;
  color:var(--gold);
  margin-bottom:6px;
}
.kh-card-title{
  font-family:'Cinzel Decorative',serif;
  font-size:clamp(1.15rem,2.4vw,1.35rem);
  font-weight:700;
  color:var(--text);
  margin-bottom:4px;
  line-height:1.2;
}
.kh-card-role{
  font-family:'Cinzel',serif;
  font-size:clamp(0.58rem,0.54rem + 0.12vw,0.68rem);
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:12px;
}
.kh-card-desc{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(0.95rem,1.8vw,1.05rem);
  color:var(--muted);
  line-height:1.65;
  flex:1;
  margin-bottom:14px;
}
.kh-card-foot{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding-top:12px;
  margin-top:auto;
  border-top:1px solid rgba(201,168,76,.1);
}
.kh-card-tag{
  font-family:'Cinzel',serif;
  font-size:clamp(0.55rem,0.5rem + 0.12vw,0.65rem);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--gold-l);
}
.kh-card-link{
  font-family:'Cinzel',serif;
  font-size:0.72rem;
  letter-spacing:.06em;
  color:var(--muted);
  text-decoration:none;
  border-bottom:1px solid rgba(201,168,76,.35);
  transition:color .2s ease,border-color .2s ease;
}
.kh-card-link:hover{color:var(--gold-l);border-color:var(--gold-l);}
.kh-two{
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(28px,5vw,44px);
}
@media(min-width:769px){.kh-two{grid-template-columns:1fr 1fr;}}
.kh-edu{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid rgba(201,168,76,.1);}
.kh-edu:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
.kh-edu-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:1.15rem;
  font-weight:600;
  color:var(--text);
  margin-bottom:6px;
}
.kh-edu-place{font-size:1rem;color:var(--muted);line-height:1.55;margin-bottom:4px;}
.kh-edu-year{
  font-family:'Cinzel',serif;
  font-size:0.65rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--gold);
}
.kh-vision{
  margin:8px 0 24px;
  padding:clamp(28px,4vw,40px);
  background:linear-gradient(160deg,rgba(22,22,40,.92),rgba(5,5,13,.98));
  border:1px solid rgba(201,168,76,.15);
  position:relative;
  overflow:hidden;
}
.kh-vision::before{
  content:'“';
  font-family:'Cinzel Decorative',serif;
  font-size:clamp(5rem,18vw,8rem);
  color:rgba(201,168,76,.08);
  position:absolute;
  top:-20px;
  left:12px;
  line-height:1;
  pointer-events:none;
}
.kh-vision p{
  position:relative;
  z-index:1;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(1.12rem,2.4vw,1.35rem);
  font-style:italic;
  font-weight:400;
  color:rgba(237,229,213,.92);
  line-height:1.65;
  margin-bottom:18px;
}
.kh-vision footer{
  position:relative;
  z-index:1;
  font-family:'Cinzel',serif;
  font-size:clamp(0.58rem,0.54rem + 0.12vw,0.68rem);
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
}
.kh-contact{
  display:grid;
  grid-template-columns:1fr;
  gap:28px;
  padding:clamp(28px,4vw,40px);
  background:rgba(15,15,28,.85);
  border:1px solid rgba(201,168,76,.12);
  margin-bottom:32px;
}
@media(min-width:640px){.kh-contact{grid-template-columns:1fr 1fr;}}
.kh-contact-title{
  font-family:'Cinzel',serif;
  font-size:clamp(0.62rem,0.58rem + 0.12vw,0.72rem);
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--gold-l);
  margin-bottom:12px;
}
.kh-contact-lines{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:1.05rem;
  color:var(--muted);
  line-height:1.75;
}
.kh-contact-lines a{color:var(--gold);text-decoration:none;border-bottom:1px solid rgba(201,168,76,.35);}
.kh-contact-lines a:hover{color:var(--gold-l);}
.kh-back{text-align:center;margin-bottom:8px;}
.kh-foot{
  position:relative;
  z-index:2;
  border-top:1px solid rgba(201,168,76,.1);
  padding:20px var(--hos-pad-inline) 28px;
  text-align:center;
}
.kh-foot-inner{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:0.95rem;
  font-style:italic;
  color:var(--gold);
}
.kh-foot-inner a{color:var(--gold-l);text-decoration:none;border-bottom:1px solid rgba(201,168,76,.35);}
.kh-foot-inner a:hover{color:var(--white);}
