:root{
  --navy:#0D1B2A;--navy-2:#152436;--navy-3:#1E3050;
  --amber:#C8810A;--amber-2:#E09518;--amber-3:#F5C842;
  --ivory:#F3EFE8;--ivory-2:#EAE5DC;--ivory-3:#D8D1C5;
  --muted:#6B7A8D;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Instrument Sans',sans-serif;
  --cond:'Barlow Condensed',sans-serif;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}

html,body{
  width:100%;height:100%;
  overflow:hidden;
  margin:0;padding:0;
}
body{
  background:var(--navy);
  color:var(--ivory);
  font-family:var(--sans);
  font-weight:300;
  cursor:none;
}

#app{
  position:fixed;
  inset:0;
  overflow-y:scroll;
  overflow-x:hidden;
  scroll-behavior:auto;
}
#app::-webkit-scrollbar{width:2px;}
#app::-webkit-scrollbar-track{background:var(--navy);}
#app::-webkit-scrollbar-thumb{background:var(--amber);}

/* ── CURSOR ── */
#cur-dot,#cur-ring{position:fixed;border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:opacity .3s;}
#cur-dot{width:7px;height:7px;background:var(--amber);}
#cur-ring{width:34px;height:34px;border:1px solid rgba(200,129,10,.45);transition:width .25s,height .25s,border-color .25s;}
body.hovering #cur-ring{width:52px;height:52px;border-color:var(--amber);background:rgba(200,129,10,.07);}

/* ── PAGE SYSTEM ── */
.page{
  width:100%;
  display:none;
  flex-direction:column;
  min-height:100vh;
}
.page.active{display:flex;}

/* ── PAGE TRANSITIONS ── */
.page-enter{animation:pgEnter .4s cubic-bezier(.22,1,.36,1) forwards;}
@keyframes pgEnter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* ── NAV ── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:500;height:68px;
  display:flex;align-items:center;justify-content:space-between;padding:0 60px;
  background:rgba(13,27,42,.93);backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(200,129,10,.12);
}
.nav-logo{font-family:var(--cond);font-size:15px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--ivory);text-decoration:none;}
.nav-logo span{color:var(--amber);}
.nav-links{display:flex;gap:0;list-style:none;}
.nav-links li a{
  display:block;padding:0 18px;font-family:var(--cond);font-size:11px;font-weight:500;
  letter-spacing:2.5px;text-transform:uppercase;color:rgba(243,239,232,.4);text-decoration:none;
  transition:color .3s;line-height:68px;border-bottom:2px solid transparent;
}
.nav-links li a:hover,.nav-links li a.active{color:var(--amber);border-bottom-color:var(--amber);}
.nav-cta{
  background:var(--amber);color:var(--navy);font-family:var(--cond);font-size:10px;font-weight:700;
  letter-spacing:3px;text-transform:uppercase;padding:10px 26px;text-decoration:none;transition:background .3s;
}
.nav-cta:hover{background:var(--amber-2);}

/* ── HAMBURGER ── */
.nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;}
.nav-hamburger span{display:block;width:22px;height:2px;background:var(--ivory);transition:all .3s;}
.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-hamburger.open span:nth-child(2){opacity:0;}
.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-menu{
  display:none;position:fixed;top:68px;left:0;right:0;z-index:499;
  background:rgba(13,27,42,.98);backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(200,129,10,.15);padding:20px 0;flex-direction:column;
}
.mobile-menu.open{display:flex;}
.mobile-menu a{
  padding:14px 28px;font-family:var(--cond);font-size:12px;font-weight:500;
  letter-spacing:3px;text-transform:uppercase;color:rgba(243,239,232,.5);text-decoration:none;
  transition:color .3s;border-bottom:1px solid rgba(243,239,232,.04);
}
.mobile-menu a:hover{color:var(--amber);}

/* ── SHARED ── */
.eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:18px;}
.eyebrow-bar{width:40px;height:2px;background:var(--amber);flex-shrink:0;}
.eyebrow-text{font-family:var(--cond);font-size:11px;font-weight:500;letter-spacing:4px;text-transform:uppercase;color:var(--amber);}
.h-display{font-family:var(--serif);font-size:clamp(44px,5.5vw,88px);font-weight:300;line-height:1.0;color:var(--ivory);}
.h-display em{font-style:italic;color:var(--amber);}
.h-display strong{font-weight:700;}
.h-display-dark{color:var(--navy);}
.h-display-dark em{color:var(--amber);}
.body-text{font-size:15px;line-height:1.9;color:rgba(243,239,232,.5);}
.body-text-dark{font-size:15px;line-height:1.9;color:rgba(13,27,42,.6);}
.btn-a{display:inline-block;background:var(--amber);color:var(--navy);font-family:var(--cond);font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;padding:15px 38px;text-decoration:none;transition:all .3s;border:none;cursor:pointer;}
.btn-a:hover{background:var(--amber-2);transform:translateY(-2px);}
.btn-b{display:inline-block;border:1px solid rgba(243,239,232,.2);color:rgba(243,239,232,.65);font-family:var(--cond);font-size:11px;font-weight:500;letter-spacing:3px;text-transform:uppercase;padding:15px 38px;text-decoration:none;transition:all .3s;cursor:pointer;background:transparent;}
.btn-b:hover{border-color:var(--amber);color:var(--amber);}
.btn-b-dark{display:inline-block;border:1px solid rgba(13,27,42,.2);color:rgba(13,27,42,.6);font-family:var(--cond);font-size:11px;font-weight:500;letter-spacing:3px;text-transform:uppercase;padding:15px 38px;text-decoration:none;transition:all .3s;cursor:pointer;background:transparent;}
.btn-b-dark:hover{border-color:var(--amber);color:var(--amber);}
.btn-navy{display:inline-block;background:var(--navy);color:var(--ivory);font-family:var(--cond);font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;padding:15px 38px;text-decoration:none;transition:all .3s;}
.btn-navy:hover{background:var(--navy-3);}

/* ── PHOTO PLACEHOLDER SYSTEM ── */
.photo-slot{
  position:relative;overflow:hidden;background:var(--navy-2);
  border:1px dashed rgba(200,129,10,.3);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
}
.photo-slot img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(20%) brightness(.9);transition:transform .6s ease,filter .4s ease;position:absolute;inset:0;}
.photo-slot img:hover{transform:scale(1.05);filter:grayscale(0%) brightness(1);}
.photo-slot-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px;text-align:center;position:relative;z-index:1;}
.photo-slot-placeholder.hidden{display:none;}
.photo-slot-icon{width:48px;height:48px;border:1px solid rgba(200,129,10,.4);border-radius:50%;display:flex;align-items:center;justify-content:center;}
.photo-slot-icon svg{width:20px;height:20px;stroke:var(--amber);fill:none;stroke-width:1.5;}
.photo-slot-label{font-family:var(--cond);font-size:9px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--amber);line-height:1.5;}
.photo-slot-dim{font-family:var(--cond);font-size:9px;letter-spacing:1px;color:rgba(243,239,232,.2);}
.photo-slot-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(13,27,42,.85) 0%,transparent 100%);padding:28px 18px 16px;opacity:0;transition:opacity .35s;z-index:2;}
.photo-slot:hover .photo-slot-overlay{opacity:1;}
.photo-slot-overlay-label{font-family:var(--cond);font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--amber);}
.photo-slot-dark{background:#e8e3db;border-color:rgba(13,27,42,.15);}
.photo-slot-dark .photo-slot-icon{border-color:rgba(13,27,42,.2);}
.photo-slot-dark .photo-slot-icon svg{stroke:rgba(13,27,42,.4);}
.photo-slot-dark .photo-slot-label{color:rgba(13,27,42,.4);}
.photo-slot-dark .photo-slot-dim{color:rgba(13,27,42,.2);}

/* Natural-size photo — image shows at its own aspect ratio, no cropping */
.photo-natural{height:auto !important;}
.photo-natural img{position:static !important;width:100%;height:auto !important;object-fit:unset !important;}

/* corner accent */
.corner-accent{position:relative;}
.corner-accent::before{content:'';position:absolute;top:-12px;right:-12px;width:120px;height:120px;border-top:2px solid var(--amber);border-right:2px solid var(--amber);pointer-events:none;z-index:3;}
.corner-accent::after{content:'';position:absolute;bottom:-12px;left:-12px;width:120px;height:120px;border-bottom:2px solid var(--amber);border-left:2px solid var(--amber);pointer-events:none;z-index:3;}

/* ══════════════════════════════════════
   SCROLL REVEAL — 8 VARIANTS
══════════════════════════════════════ */
.rv{opacity:0;transform:translateY(36px);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1);will-change:opacity,transform;}
.rv.on{opacity:1;transform:translateY(0);}

.rv-l{opacity:0;transform:translateX(-36px);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1);will-change:opacity,transform;}
.rv-l.on{opacity:1;transform:translateX(0);}

.rv-r{opacity:0;transform:translateX(36px);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1);will-change:opacity,transform;}
.rv-r.on{opacity:1;transform:translateX(0);}

.rv-scale{opacity:0;transform:scale(.93) translateY(20px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);will-change:opacity,transform;}
.rv-scale.on{opacity:1;transform:scale(1) translateY(0);}

.rv-clip{opacity:0;clip-path:inset(0 0 100% 0);transition:opacity .6s ease,clip-path .7s cubic-bezier(.22,1,.36,1);}
.rv-clip.on{opacity:1;clip-path:inset(0 0 0% 0);}

.rv-line{transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.22,1,.36,1);}
.rv-line.on{transform:scaleX(1);}

.rv-press{opacity:0;transform:translateY(24px) rotateX(4deg);transform-origin:top;transform-style:preserve-3d;transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);will-change:opacity,transform;}
.rv-press.on{opacity:1;transform:translateY(0) rotateX(0);}

/* stagger helpers */
.rv-d1{transition-delay:.08s!important;}
.rv-d2{transition-delay:.16s!important;}
.rv-d3{transition-delay:.24s!important;}
.rv-d4{transition-delay:.32s!important;}
.rv-d5{transition-delay:.40s!important;}
.rv-d6{transition-delay:.48s!important;}
.rv-d7{transition-delay:.56s!important;}
.rv-d8{transition-delay:.64s!important;}

/* card-type elements */
.ws-venue-card,.comm-org-card,.award-cell,.media-tv-card,
.social-card,.ws-li-card,.svc-card,
.award-detail-card,.comm-event-card,.ws-impact-box,.svc-stat-box{
  opacity:0;
  transform:translateY(32px);
  transition:opacity .75s cubic-bezier(.22,1,.36,1),
             transform .75s cubic-bezier(.22,1,.36,1),
             background .4s,border-color .35s,box-shadow .35s;
  will-change:opacity,transform;
}
.ws-venue-card.on{opacity:1;transform:translateY(0);}
.ws-venue-card.on:hover{box-shadow:0 16px 48px rgba(13,27,42,.1);transform:translateY(-3px);}
.comm-org-card.on,.award-cell.on,.media-tv-card.on,
.social-card.on,.ws-li-card.on,.svc-card.on,
.award-detail-card.on,.comm-event-card.on,.ws-impact-box.on,.svc-stat-box.on{
  opacity:1;transform:translateY(0);
}

/* ── TICKER ── */
.ticker{background:var(--ivory);padding:13px 0;overflow:hidden;flex-shrink:0;}
.ticker-track{display:flex;animation:tickerRoll 32s linear infinite;width:max-content;}
.ticker-item{display:flex;align-items:center;gap:18px;padding:0 36px;font-family:var(--cond);font-size:11px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--navy);white-space:nowrap;}
.ticker-sep{width:4px;height:4px;background:var(--amber);border-radius:50%;flex-shrink:0;}

/* ── FOOTER ── */
footer{background:#06111D;padding:24px 60px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(243,239,232,.04);}
.footer-brand{font-family:var(--cond);font-size:13px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:rgba(243,239,232,.25);}
.footer-brand span{color:var(--amber);}
.footer-copy{font-size:10px;letter-spacing:1.5px;color:rgba(243,239,232,.15);}

/* ── BACK BTN ── */
.back-btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--cond);font-size:11px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:rgba(243,239,232,.45);cursor:pointer;transition:color .3s;margin-bottom:28px;background:none;border:none;padding:0;}
.back-btn:hover{color:var(--amber);}
.back-btn span{font-size:16px;}
.back-btn-dark{color:rgba(13,27,42,.4);}
.back-btn-dark:hover{color:var(--amber);}

/* ══════════════════════════════════════
   PAGE 1 — HOME / HERO
══════════════════════════════════════ */
#pg-home{background:var(--navy);position:relative;overflow:hidden;}
.hero-canvas{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden;}
.hero-wrap{min-height:100vh;padding-top:68px;display:grid;grid-template-columns:1fr 1fr;position:relative;z-index:1;}
.hero-left{display:flex;flex-direction:column;justify-content:center;padding:60px 60px 60px 80px;}
.hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:28px;}
.hero-kicker-bar{width:44px;height:2px;background:var(--amber);}
.hero-kicker-text{font-family:var(--cond);font-size:12px;font-weight:500;letter-spacing:4px;text-transform:uppercase;color:var(--amber);}
.hero-h1{font-family:var(--serif);font-size:clamp(58px,6.5vw,104px);font-weight:300;line-height:.92;color:var(--ivory);margin-bottom:32px;}
.hero-h1 .it{font-style:italic;color:var(--amber);}
.hero-h1 .bd{font-weight:700;}
.hero-h1 .word{display:inline-block;}
.hero-desc{font-size:14px;line-height:1.85;color:rgba(243,239,232,.5);max-width:420px;margin-bottom:44px;}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;}
.hero-stats{display:flex;gap:0;margin-top:60px;padding-top:36px;border-top:1px solid rgba(243,239,232,.07);}
.hs{flex:1;padding-right:28px;border-right:1px solid rgba(243,239,232,.07);margin-right:28px;}
.hs:last-child{border-right:none;margin-right:0;padding-right:0;}
.hs-n{font-family:var(--cond);font-size:42px;font-weight:700;color:var(--amber);line-height:1;letter-spacing:-1px;}
.hs-l{font-family:var(--cond);font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(243,239,232,.3);margin-top:8px;}

/* hero animation states */
.hero-kicker,.hero-h1,.hero-desc,.hero-btns,.hero-stats{opacity:0;}
body.hero-ready .hero-kicker{animation:aUp .7s ease forwards .1s;}
body.hero-ready .hero-h1{animation:aUp .7s ease forwards .3s;}
body.hero-ready .hero-desc{animation:aUp .7s ease forwards .55s;}
body.hero-ready .hero-btns{animation:aUp .7s ease forwards .7s;}
body.hero-ready .hero-stats{animation:aUp .7s ease forwards .9s;}

.hero-right{position:relative;display:flex;align-items:center;justify-content:center;padding:100px 60px 60px;}
.hero-photo-wrap{position:relative;z-index:2;opacity:0;}
body.hero-ready .hero-photo-wrap{animation:heroPhoto .9s ease forwards .4s;}
@keyframes heroPhoto{from{opacity:0;transform:scale(1.06) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}
.hero-photo-wrap img{width:380px;height:510px;object-fit:cover;display:block;}
.hero-photo-nameplate{position:absolute;bottom:0;left:0;right:0;background:rgba(13,27,42,.9);backdrop-filter:blur(10px);padding:18px 22px;border-top:2px solid var(--amber);}
.hero-nameplate-name{font-family:var(--cond);font-size:16px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ivory);}
.hero-nameplate-sub{font-family:var(--cond);font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--amber);margin-top:4px;}
.hero-award-chip{position:absolute;top:80px;left:16px;background:var(--amber);padding:14px 18px;max-width:170px;font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--navy);line-height:1.5;overflow:hidden;opacity:0;}
body.hero-ready .hero-award-chip{animation:chipSlide .6s cubic-bezier(.22,1,.36,1) forwards .8s;}
@keyframes chipSlide{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:none}}
.hero-award-chip::after{content:'';position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);animation:shimmer 3.5s ease 2.5s infinite;}
@keyframes shimmer{0%{left:-100%}100%{left:200%}}
.hero-award-chip-icon{font-size:20px;margin-bottom:6px;}
.hero-bg-num{position:absolute;right:-30px;bottom:-60px;font-family:var(--cond);font-size:520px;font-weight:800;color:rgba(243,239,232,.02);line-height:1;pointer-events:none;user-select:none;letter-spacing:-20px;}
#particle-canvas{position:absolute;inset:0;width:100%;height:100%;}

/* quick nav cards */
.home-nav-grid{background:var(--navy-2);padding:60px 80px;}
.home-nav-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(243,239,232,.05);}
.svc-block{background:var(--navy);padding:36px 32px;border:1px solid rgba(243,239,232,.05);transition:background .4s;position:relative;overflow:hidden;cursor:pointer;}
.svc-block::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--amber);transform:scaleX(0);transform-origin:left;transition:transform .4s;}
.svc-block:hover{background:var(--navy-2);}
.svc-block:hover::before{transform:scaleX(1);}
.svc-block-num{font-family:var(--cond);font-size:26px;font-weight:800;color:rgba(200,129,10,.2);margin-bottom:16px;}
.svc-block-title{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--ivory);margin-bottom:10px;}
.svc-block-desc{font-size:13px;line-height:1.7;color:rgba(243,239,232,.35);}

/* ══════════════════════════════════════
   PAGE 2 — STORY (ROADMAP — ALTERNATING)
══════════════════════════════════════ */
#pg-story{background:var(--ivory);}
.story-hero{min-height:40vh;padding:120px 80px 60px;background:var(--navy);display:flex;flex-direction:column;justify-content:flex-end;}
.story-sticky-col-wrap{background:var(--ivory);padding:80px 80px 0;}
.story-pullquote{padding:24px 28px;border-left:2px solid var(--amber);background:rgba(200,129,10,.06);margin-bottom:24px;}
.story-pullquote p{font-family:var(--serif);font-size:20px;font-style:italic;color:var(--navy);line-height:1.55;}
.story-facts{display:flex;flex-wrap:wrap;gap:10px 24px;margin-bottom:24px;}
.story-fact{font-size:13px;color:rgba(13,27,42,.55);display:flex;gap:10px;}
.story-fact span{color:var(--amber);flex-shrink:0;}

/* ── ALTERNATING TIMELINE ── */
.rm-timeline{
  background:var(--ivory);
  padding:60px 40px 100px;
  position:relative;
}

.rm-timeline::before{
  content:'';
  position:absolute;
  left:50%;
  top:0;bottom:0;
  width:2px;
  background:rgba(13,27,42,.08);
  transform:translateX(-50%);
  pointer-events:none;
}

#rm-progress-bar{
  position:absolute;
  left:50%;
  top:0;
  width:2px;
  height:0%;
  background:var(--amber);
  transform:translateX(-50%);
  transform-origin:top;
  transition:height .1s linear;
  pointer-events:none;
  z-index:1;
}

.rm-entry{
  display:grid;
  grid-template-columns:1fr 60px 1fr;
  align-items:start;
  gap:0;
  margin-bottom:72px;
  position:relative;
}
.rm-entry:last-child{margin-bottom:0;}

.rm-node{
  grid-column:2;
  display:flex;align-items:flex-start;justify-content:center;
  padding-top:24px;
  position:relative;z-index:2;
}
.rm-dot-outer{
  width:36px;height:36px;border-radius:50%;
  border:2px solid rgba(200,129,10,.25);
  display:flex;align-items:center;justify-content:center;
  background:var(--ivory);
  transition:all .4s;
  flex-shrink:0;
}
.rm-entry.on .rm-dot-outer{border-color:var(--amber);box-shadow:0 0 0 6px rgba(200,129,10,.08);}
.rm-dot-inner{width:12px;height:12px;border-radius:50%;background:rgba(200,129,10,.2);transition:all .4s;}
.rm-entry.on .rm-dot-inner{background:var(--amber);box-shadow:0 0 0 4px rgba(200,129,10,.15);}

.rm-card-left{
  grid-column:1;
  padding-right:36px;
  opacity:0;
  transform:translateX(-32px);
  transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);
}
.rm-card-right{
  grid-column:3;
  padding-left:36px;
  opacity:0;
  transform:translateX(32px);
  transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);
}
.rm-spacer-left{grid-column:1;}
.rm-spacer-right{grid-column:3;}

.rm-entry.on .rm-card-left,
.rm-entry.on .rm-card-right{
  opacity:1;transform:translateX(0);
}

.rm-card{
  background:white;
  border:1px solid rgba(13,27,42,.06);
  padding:28px 32px;
  position:relative;overflow:hidden;
  transition:box-shadow .35s,transform .35s;
}
.rm-card::before{
  content:'';position:absolute;top:0;left:0;width:3px;height:100%;
  background:var(--amber);transform:scaleY(0);transform-origin:top;transition:transform .35s;
}
.rm-entry.on .rm-card::before{transform:scaleY(1);transition-delay:.3s;}
.rm-card:hover{box-shadow:0 12px 40px rgba(13,27,42,.08);}

.rm-year-badge{display:inline-flex;align-items:center;gap:10px;margin-bottom:16px;}
.rm-year-line{width:24px;height:1px;background:var(--amber);}
.rm-year-text{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--amber);}
.rm-photo-slot{height:180px;margin-bottom:20px;position:relative;overflow:hidden;}
.rm-tag{display:inline-block;background:var(--amber);color:var(--navy);font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;padding:5px 12px;margin-bottom:14px;}
.rm-title{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--navy);line-height:1.3;margin-bottom:12px;}
.rm-text{font-size:14px;line-height:1.9;color:rgba(13,27,42,.6);}
.rm-text strong{color:var(--amber);font-weight:500;}

/* ══════════════════════════════════════
   PAGE 3 — AWARDS
══════════════════════════════════════ */
#pg-awards{background:var(--navy);}
.awards-hero{padding:120px 80px 60px;background:linear-gradient(160deg,var(--navy) 60%,var(--navy-3));}
.awards-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:0 80px;}
.awards-photo-grid .photo-slot{height:320px;}
.awards-list-section{padding:60px 80px 100px;}
.awards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(243,239,232,.05);margin-top:0;}
.award-cell{background:var(--navy);padding:32px 26px;border:1px solid rgba(243,239,232,.05);transition:background .3s;cursor:pointer;position:relative;overflow:hidden;text-decoration:none;display:block;}
.award-cell::after{content:'↗';position:absolute;top:14px;right:16px;font-size:14px;color:rgba(200,129,10,.3);transition:color .3s,transform .3s;}
.award-cell:hover{background:var(--navy-2);}
.award-cell:hover::after{color:var(--amber);transform:translate(2px,-2px);}
.award-cell-badge{width:44px;height:44px;border:1px solid rgba(200,129,10,.2);display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.award-cell-badge svg{width:20px;height:20px;stroke:var(--amber);fill:none;stroke-width:1.5;}
.award-cell-title{font-family:var(--serif);font-size:17px;font-weight:600;color:var(--ivory);line-height:1.35;margin-bottom:10px;}
.award-cell-org{font-family:var(--cond);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--amber);}
.award-cell-year{font-family:var(--cond);font-size:10px;letter-spacing:1.5px;color:rgba(243,239,232,.3);margin-top:4px;}
.award-detail-section{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:0 80px 80px;}
.award-detail-card{padding:40px;border:1px solid rgba(243,239,232,.07);transition:border-color .3s;position:relative;overflow:hidden;}
.award-detail-card:hover{border-color:rgba(200,129,10,.3);}
.award-detail-photo{height:220px;margin-bottom:28px;}
.adc-year{font-family:var(--cond);font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--amber);margin-bottom:14px;}
.adc-title{font-family:var(--serif);font-size:26px;font-weight:600;color:var(--ivory);margin-bottom:12px;line-height:1.2;}
.adc-org{font-size:13px;color:rgba(243,239,232,.5);margin-bottom:16px;}
.adc-desc{font-size:14px;line-height:1.85;color:rgba(243,239,232,.4);}
.adc-link{display:inline-flex;align-items:center;gap:8px;margin-top:20px;font-family:var(--cond);font-size:10px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--amber);text-decoration:none;transition:gap .3s;}
.adc-link:hover{gap:14px;}

/* ══════════════════════════════════════
   PAGE 4 — WORKSHOPS
══════════════════════════════════════ */
#pg-workshops{background:var(--ivory);}
.ws-hero{padding:120px 80px 60px;background:var(--navy);}
.ws-photo-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;height:260px;padding:0 80px;}
.ws-venues-section{background:var(--ivory);padding:80px 80px 60px;}
.ws-venues-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px;}
.ws-venue-card{padding:0;border:1px solid rgba(13,27,42,.1);background:white;transition:all .35s;position:relative;overflow:hidden;}
.ws-venue-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--amber);transform:scaleX(0);transform-origin:left;transition:transform .35s;z-index:2;}
.ws-venue-card:hover::before{transform:scaleX(1);}
.ws-venue-photo{height:160px;position:relative;overflow:hidden;}
.ws-venue-body{padding:28px 26px;}
.ws-venue-num{font-family:var(--cond);font-size:40px;font-weight:800;color:rgba(13,27,42,.06);line-height:1;margin-bottom:12px;}
.ws-venue-name{font-family:var(--serif);font-size:20px;font-weight:600;color:var(--navy);margin-bottom:8px;}
.ws-venue-tag{display:inline-block;background:var(--amber);color:var(--navy);font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:4px 12px;margin-bottom:10px;}
.ws-venue-desc{font-size:12px;line-height:1.8;color:rgba(13,27,42,.5);}
.ws-venue-link{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--amber);text-decoration:none;transition:gap .3s;}
.ws-venue-link:hover{gap:12px;}

.ws-topics-section{background:var(--navy);padding:80px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.ws-topics-list{display:flex;flex-direction:column;gap:0;}
.ws-topic{display:flex;align-items:center;gap:20px;padding:22px 0;border-bottom:1px solid rgba(243,239,232,.07);transition:padding-left .3s;cursor:default;}
.ws-topic:hover{padding-left:10px;}
.ws-topic-num{font-family:var(--cond);font-size:12px;color:rgba(243,239,232,.2);width:28px;flex-shrink:0;}
.ws-topic-name{font-family:var(--serif);font-size:22px;color:var(--ivory);flex:1;transition:color .3s;}
.ws-topic:hover .ws-topic-name{color:var(--amber);}

.ws-posts-section{background:var(--navy-2);padding:80px;}
.ws-posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px;}
.ws-li-card{background:var(--navy);padding:28px;border:1px solid rgba(243,239,232,.06);transition:border-color .3s,transform .3s;}
.ws-li-card:hover{border-color:rgba(200,129,10,.3);transform:translateY(-3px);}
.ws-li-date{font-family:var(--cond);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--amber);margin-bottom:14px;}
.ws-li-text{font-size:13px;line-height:1.8;color:rgba(243,239,232,.55);}
.ws-li-tag{display:inline-block;margin-top:16px;font-family:var(--cond);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:rgba(200,129,10,.6);border:1px solid rgba(200,129,10,.2);padding:4px 10px;}
.ws-li-link{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--amber);text-decoration:none;transition:gap .3s;}
.ws-li-link:hover{gap:12px;}

.ws-impact-section{background:var(--ivory);padding:80px;}
.ws-impact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:48px;}
.ws-impact-box{background:var(--navy);padding:36px 24px;text-align:center;}
.ws-impact-num{font-family:var(--cond);font-size:56px;font-weight:800;color:var(--amber);line-height:1;letter-spacing:-2px;}
.ws-impact-label{font-family:var(--cond);font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(243,239,232,.4);margin-top:10px;}

.ws-cta-section{background:var(--amber);padding:80px;}
.ws-cta-inner{max-width:700px;}
.ws-cta-h{font-family:var(--serif);font-size:clamp(36px,4vw,60px);font-weight:300;color:var(--navy);line-height:1.1;margin-bottom:20px;}
.ws-cta-h em{font-style:italic;font-weight:700;}
.ws-cta-body{font-size:15px;line-height:1.85;color:rgba(13,27,42,.6);margin-bottom:36px;}

/* ══════════════════════════════════════
   PAGE 5 — SERVICES
══════════════════════════════════════ */
#pg-services{background:var(--navy);}
.svc-hero{padding:120px 80px 60px;}
.svc-grid-main{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(243,239,232,.05);padding:0 80px;}
.svc-card{background:var(--navy);padding:0;border:1px solid rgba(243,239,232,.05);transition:background .4s;position:relative;overflow:hidden;display:flex;flex-direction:column;}
.svc-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--amber);transform:scaleX(0);transform-origin:left;transition:transform .4s;}
.svc-card:hover{background:var(--navy-2);}
.svc-card:hover::before{transform:scaleX(1);}
.svc-card-logo-zone{height:100px;background:rgba(243,239,232,.03);border-bottom:1px solid rgba(243,239,232,.05);display:flex;align-items:center;padding:0 44px;gap:16px;}
.svc-logo-img{height:36px;width:auto;object-fit:contain;filter:brightness(0) invert(1);opacity:.7;}
.svc-logo-img.color-logo{filter:none;opacity:.9;}
.svc-logo-placeholder{width:36px;height:36px;border:1px solid rgba(200,129,10,.3);display:flex;align-items:center;justify-content:center;}
.svc-logo-placeholder svg{width:16px;height:16px;stroke:var(--amber);fill:none;}
.svc-logo-name{font-family:var(--cond);font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(243,239,232,.35);}
.svc-card-body{padding:40px 44px;flex:1;display:flex;flex-direction:column;}
.svc-card-num{font-family:var(--cond);font-size:13px;font-weight:500;letter-spacing:3px;color:var(--amber);margin-bottom:20px;}
.svc-card-title{font-family:var(--serif);font-size:28px;font-weight:600;color:var(--ivory);margin-bottom:14px;line-height:1.15;}
.svc-card-desc{font-size:14px;line-height:1.85;color:rgba(243,239,232,.45);margin-bottom:24px;}
.svc-card-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:28px;flex:1;}
.svc-card-list li{font-size:13px;color:rgba(243,239,232,.4);display:flex;align-items:flex-start;gap:10px;}
.svc-card-list li::before{content:'→';color:var(--amber);flex-shrink:0;}
.svc-card-cta{display:inline-flex;align-items:center;gap:8px;font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--amber);text-decoration:none;transition:gap .3s;align-self:flex-start;}
.svc-card-cta:hover{gap:16px;}
.svc-stats-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:60px 80px;align-items:center;}
.svc-grox-stats{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(243,239,232,.05);}
.svc-stat-box{background:var(--navy);padding:36px 28px;transition:background .3s;}
.svc-stat-box:hover{background:var(--amber);}
.svc-stat-box:hover .ssb-n,.svc-stat-box:hover .ssb-l{color:var(--navy);}
.ssb-n{font-family:var(--cond);font-size:52px;font-weight:800;color:var(--amber);line-height:1;transition:color .3s;}
.ssb-l{font-family:var(--cond);font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(243,239,232,.35);margin-top:8px;transition:color .3s;}

/* ══════════════════════════════════════
   PAGE 6 — MEDIA
══════════════════════════════════════ */
#pg-media{background:var(--ivory);}
.media-hero{padding:120px 80px 60px;background:var(--navy);}
.media-press-section{padding:80px;background:var(--ivory);}
.media-press-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px;}
.press-card{background:white;border:1px solid rgba(13,27,42,.08);overflow:hidden;transition:all .35s;text-decoration:none;display:flex;flex-direction:column;}
.press-card:hover{transform:translateY(-4px);box-shadow:0 16px 48px rgba(13,27,42,.1);}
.press-card-thumb{height:200px;overflow:hidden;position:relative;}
.press-card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.press-card-thumb.photo-natural{height:auto;}
.press-card-thumb.photo-natural img{position:static;height:auto;object-fit:unset;}
.press-card:hover .press-card-thumb img{transform:scale(1.05);}
.press-card-outlet-bar{position:absolute;top:0;left:0;right:0;padding:12px 16px;background:linear-gradient(to bottom,rgba(13,27,42,.8),transparent);}
.press-card-outlet{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:white;}
.press-card-body{padding:24px;flex:1;display:flex;flex-direction:column;}
.press-card-date{font-family:var(--cond);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--amber);margin-bottom:12px;}
.press-card-title{font-family:var(--serif);font-size:19px;font-weight:600;color:var(--navy);line-height:1.35;margin-bottom:10px;flex:1;}
.press-card-desc{font-size:13px;line-height:1.7;color:rgba(13,27,42,.5);margin-bottom:16px;}
.press-card-link{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--amber);display:inline-flex;align-items:center;gap:6px;transition:gap .3s;align-self:flex-start;}
.press-card-link:hover{gap:12px;}
.media-tv-section{background:var(--navy);padding:80px;}
.media-tv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin-top:48px;}
.media-tv-card{background:var(--navy-2);border:1px solid rgba(243,239,232,.06);padding:36px 28px;transition:all .35s;text-decoration:none;display:flex;flex-direction:column;gap:16px;}
.media-tv-card:hover{border-color:rgba(200,129,10,.3);background:var(--navy-3);transform:translateY(-3px);}
.media-tv-logo-zone{height:56px;display:flex;align-items:center;}
.media-tv-logo{font-family:var(--cond);font-size:20px;font-weight:800;letter-spacing:2px;color:rgba(243,239,232,.15);}
.media-tv-name{font-family:var(--cond);font-size:16px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ivory);}
.media-tv-type{font-family:var(--cond);font-size:10px;letter-spacing:2px;color:rgba(243,239,232,.3);}
.media-tv-badge{display:inline-block;background:var(--amber);color:var(--navy);font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:4px 10px;align-self:flex-start;margin-top:auto;}
.media-podcast-section{background:var(--amber);padding:60px 80px;}
.media-podcast-inner{display:flex;align-items:center;gap:60px;}
.media-podcast-icon{width:80px;height:80px;background:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.media-podcast-icon svg{width:32px;height:32px;stroke:var(--amber);fill:none;stroke-width:1.5;}
.media-podcast-name{font-family:var(--serif);font-size:clamp(24px,3vw,44px);font-weight:300;color:var(--navy);line-height:1.1;}
.media-podcast-sub{font-family:var(--cond);font-size:11px;letter-spacing:3px;text-transform:uppercase;color:rgba(13,27,42,.5);margin-top:8px;}
.media-podcast-cta{margin-left:auto;flex-shrink:0;}
.media-social-section{background:var(--navy);padding:80px;}
.social-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px;}
.social-card{padding:36px 32px;border:1px solid rgba(243,239,232,.07);transition:border-color .3s,background .3s;text-decoration:none;display:flex;flex-direction:column;}
.social-card:hover{border-color:rgba(200,129,10,.4);background:var(--navy-2);}
.sc-icon-zone{width:48px;height:48px;background:rgba(200,129,10,.1);border:1px solid rgba(200,129,10,.2);display:flex;align-items:center;justify-content:center;margin-bottom:20px;}
.sc-icon-zone svg{width:20px;height:20px;stroke:var(--amber);fill:none;stroke-width:1.5;}
.sc-platform{font-family:var(--cond);font-size:13px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--amber);margin-bottom:8px;}
.sc-handle{font-family:var(--serif);font-size:20px;color:var(--ivory);margin-bottom:8px;}
.sc-stat{font-family:var(--cond);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:rgba(243,239,232,.3);}
.sc-arrow{margin-top:auto;padding-top:20px;font-family:var(--cond);font-size:11px;letter-spacing:2px;color:var(--amber);}

/* ══════════════════════════════════════
   PAGE 7 — COMMUNITY
══════════════════════════════════════ */
#pg-community{background:var(--navy);}
.comm-hero{padding:120px 80px 60px;}
.comm-orgs{padding:60px 80px;display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.comm-org-card{padding:0;border:1px solid rgba(243,239,232,.07);transition:border-color .35s,background .35s;overflow:hidden;display:flex;flex-direction:column;}
.comm-org-card:hover{border-color:rgba(200,129,10,.3);background:var(--navy-2);}
.comm-org-photo{height:200px;position:relative;overflow:hidden;}
.comm-org-body{padding:36px;}
.coc-icon-zone{width:48px;height:48px;background:rgba(200,129,10,.1);border:1px solid rgba(200,129,10,.15);display:flex;align-items:center;justify-content:center;margin-bottom:20px;}
.coc-icon-zone svg{width:20px;height:20px;stroke:var(--amber);fill:none;stroke-width:1.5;}
.coc-name{font-family:var(--serif);font-size:24px;font-weight:600;color:var(--ivory);margin-bottom:12px;}
.coc-desc{font-size:13px;line-height:1.85;color:rgba(243,239,232,.4);margin-bottom:16px;}
.coc-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--amber);text-decoration:none;transition:gap .3s;}
.coc-link:hover{gap:12px;}
.comm-impact{background:var(--amber);padding:80px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.comm-impact-quote{font-family:var(--serif);font-size:clamp(28px,3.5vw,50px);font-weight:300;font-style:italic;color:var(--navy);line-height:1.25;}
.comm-impact-quote em{font-style:normal;font-weight:700;}
.comm-impact-body{font-size:15px;line-height:1.9;color:rgba(13,27,42,.6);}
.comm-events{background:var(--navy-2);padding:80px;}
.comm-event-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:48px;}
.comm-event-card{padding:0;border:1px solid rgba(243,239,232,.06);transition:border-color .3s;overflow:hidden;display:flex;flex-direction:column;}
.comm-event-card:hover{border-color:rgba(200,129,10,.3);}
.comm-event-photo{height:200px;position:relative;overflow:hidden;}
.comm-event-body{padding:28px;}
.cec-date{font-family:var(--cond);font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--amber);margin-bottom:12px;}
.cec-title{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--ivory);margin-bottom:10px;}
.cec-desc{font-size:13px;line-height:1.8;color:rgba(243,239,232,.4);margin-bottom:14px;}
.cec-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--amber);text-decoration:none;transition:gap .3s;}
.cec-link:hover{gap:12px;}

/* ══════════════════════════════════════
   PAGE 8 — CONTACT
══════════════════════════════════════ */
#pg-contact{background:var(--navy);}
.contact-wrap{min-height:100vh;padding-top:68px;display:grid;grid-template-columns:1fr 1fr;}
.contact-left{background:var(--amber);padding:80px 60px;display:flex;flex-direction:column;justify-content:center;}
.contact-left .h-display{color:var(--navy);}
.contact-left .h-display em{color:white;}
.contact-body{font-size:15px;line-height:1.9;color:rgba(13,27,42,.6);margin:24px 0 44px;}
.contact-methods{display:flex;flex-direction:column;gap:20px;}
.contact-method{display:flex;align-items:flex-start;gap:16px;}
.cm-icon{width:44px;height:44px;background:rgba(13,27,42,.12);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.cm-icon svg{width:18px;height:18px;stroke:var(--navy);fill:none;stroke-width:1.5;}
.cm-label{font-family:var(--cond);font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(13,27,42,.5);margin-bottom:4px;}
.cm-val{font-size:14px;color:var(--navy);font-weight:500;}
.cm-val a{color:var(--navy);text-decoration:none;}
.contact-right{background:var(--navy-2);padding:80px 60px;display:flex;flex-direction:column;justify-content:center;}
.cf-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.cf-full{grid-column:span 2;}
.cf-group{display:flex;flex-direction:column;gap:8px;}
.cf-lbl{font-family:var(--cond);font-size:9px;letter-spacing:3.5px;text-transform:uppercase;color:rgba(243,239,232,.25);}
.cf-inp,.cf-ta{background:rgba(243,239,232,.04);border:1px solid rgba(243,239,232,.08);color:var(--ivory);padding:15px 18px;font-size:14px;font-family:var(--sans);outline:none;width:100%;resize:none;transition:border-color .3s;}
.cf-inp:focus,.cf-ta:focus{border-color:var(--amber);}
.cf-ta{height:120px;}
.social-row{display:flex;gap:14px;margin-top:36px;padding-top:32px;border-top:1px solid rgba(243,239,232,.07);}
.soc-btn{display:flex;align-items:center;gap:10px;font-family:var(--cond);font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:rgba(243,239,232,.45);text-decoration:none;transition:color .3s;}
.soc-btn:hover{color:var(--amber);}

/* ══════════════════════════════════════
   ANIMATIONS
══════════════════════════════════════ */
@keyframes aUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes aFade{from{opacity:0}to{opacity:1}}
@keyframes tickerRoll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ══════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════ */
@media(max-width:900px){
  /* ── Hide custom cursor on touch devices ── */
  #cur-dot,#cur-ring{display:none;}
  body{cursor:auto;}

  /* ── iOS smooth scroll ── */
  #app{-webkit-overflow-scrolling:touch;}

  /* ── Nav ── */
  nav{padding:0 20px;}
  .nav-links,.nav-cta{display:none;}
  .nav-hamburger{display:flex;}
  .nav-logo{font-size:15px;letter-spacing:.5px;}

  /* ── Layout ── */
  .hero-wrap,.contact-wrap{grid-template-columns:1fr;}
  .hero-left{padding:80px 24px 40px;}
  .hero-right{padding:40px 24px 60px;}
  .hero-photo-wrap img{width:100%;height:360px;}
  .hero-stats-row{flex-wrap:wrap;gap:20px 28px;}
  .hs-item{min-width:calc(50% - 14px);}

  /* ── Story / Roadmap ── */
  .roadmap-section,.ws-topics-section,.svc-stats-section,.comm-impact,.media-channels-section{grid-template-columns:1fr;gap:48px;}
  .story-hero,.awards-hero,.ws-hero,.svc-hero,.media-hero,.comm-hero{padding:80px 24px 40px;}
  .story-sticky-col-wrap{padding:40px 24px 0;}

  .rm-timeline{padding:40px 20px 60px;}
  .rm-timeline::before{left:20px;}
  #rm-progress-bar{left:20px;}
  .rm-entry{grid-template-columns:40px 1fr;gap:0;}
  .rm-node{grid-column:1;grid-row:1;}
  .rm-card-left,.rm-card-right{
    grid-column:2;grid-row:1;
    padding-left:20px;padding-right:0;
    transform:translateX(20px);
  }
  .rm-entry.on .rm-card-left,
  .rm-entry.on .rm-card-right{transform:translateX(0);}
  .rm-spacer-left,.rm-spacer-right{display:none;}

  /* ── Grids → single column ── */
  .awards-photo-grid,.ws-photo-strip,.ws-venues-grid,.ws-posts-grid,.ws-testi-grid,
  .media-press-grid,.media-tv-grid,.comm-orgs,.comm-event-list,.social-cards,
  .svc-grid-main,.award-detail-section{grid-template-columns:1fr;}
  .awards-grid,.ws-impact-grid,.svc-grox-stats{grid-template-columns:1fr 1fr;}
  .home-nav-inner{grid-template-columns:1fr 1fr;}

  /* ── Section padding ── */
  .awards-list-section,.awards-photo-grid,.ws-venues-section,.ws-impact-section,
  .ws-posts-section,.ws-cta-section,.svc-grid-main,.svc-stats-section,
  .media-press-section,.media-tv-section,.media-podcast-section,.media-social-section,
  .comm-orgs,.comm-events,.comm-impact,.home-nav-grid,
  .award-detail-section,.ws-topics-section{padding:40px 24px;}
  .contact-left,.contact-right{padding:48px 24px;}
  .svc-card-body{padding:28px 24px;}
  .svc-card-logo-zone{padding:0 24px;}

  /* ── Forms ── */
  .cf-grid{grid-template-columns:1fr;}
  .cf-full{grid-column:span 1;}

  /* ── Misc ── */
  footer{flex-direction:column;gap:12px;padding:20px;text-align:center;}
  .ws-topics-section{gap:40px;}
  .media-podcast-inner{flex-direction:column;gap:24px;align-items:flex-start;}
  .media-podcast-cta{margin-left:0;}
  .svc-stats-section{grid-template-columns:1fr;padding:40px 24px;}
  .comm-impact{grid-template-columns:1fr;gap:36px;padding:48px 24px;}
  .ws-photo-strip{height:180px;padding:0 24px;}
  .awards-photo-grid{padding:0 24px;}

  /* ── Touch-friendly targets ── */
  .btn-navy,.btn-a,.back-btn,.ws-venue-link,.coc-link,.press-card-link,
  .nav-hamburger span,.mobile-menu a{touch-action:manipulation;}
  .back-btn{padding:10px 20px;font-size:10px;}
  .btn-navy,.btn-a{padding:14px 28px;min-height:44px;}
}

/* ── Small phones (≤520px) ── */
@media(max-width:520px){
  .home-nav-inner{grid-template-columns:1fr;}
  .awards-grid,.ws-impact-grid,.svc-grox-stats{grid-template-columns:1fr;}
  .hero-photo-wrap img{height:260px;}
  .hero-left{padding:70px 20px 32px;}
  .hero-right{padding:28px 20px 48px;}
  .story-hero,.awards-hero,.ws-hero,.svc-hero,.media-hero,.comm-hero{padding:70px 20px 32px;}
  .story-sticky-col-wrap{padding:28px 20px 0;}
  .awards-list-section,.ws-venues-section,.ws-impact-section,.ws-posts-section,
  .ws-cta-section,.svc-stats-section,.media-press-section,.media-tv-section,
  .media-podcast-section,.media-social-section,.comm-orgs,.comm-events,
  .comm-impact,.home-nav-grid,.svc-grid-main,.award-detail-section,
  .ws-topics-section{padding:32px 18px;}
  .contact-left,.contact-right{padding:32px 18px;}
  .svc-card-body{padding:24px 18px;}
  .svc-card-logo-zone{padding:0 18px;}
  .rm-timeline{padding:28px 14px 48px;}
  .rm-timeline::before{left:14px;}
  #rm-progress-bar{left:14px;}
  .hs-item{min-width:calc(50% - 10px);}
  .hero-stats-row{gap:16px 20px;}
  .ws-venue-body{padding:22px 18px;}
  .comm-org-body{padding:24px 18px;}
  footer{padding:14px;}
}
