/* Hive Workshops — "Crowd / community" event page theme (events.page_theme = 'crowd'), used by The Endorser Circle.
   Bright cream/white canvas, MOH blue + sunshine + coral accents, chunky rounded Fredoka display, Nunito body (both OFL, self-hosted).
   PERF RULES: transform/opacity only; no parallax, scroll listeners, backdrop-filter, mix-blend-mode, fixed full-screen layers, animated shadows/gradients/filters.
   Reveals: html.cr-pre arms them (set in <head>, removed after 3.5 s if crowd.js never runs) so the page is readable with JS off. */
@font-face{font-family:'Fredoka';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/fredoka-latin.woff2) format('woff2')}
@font-face{font-family:'Nunito';font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/nunito-latin.woff2) format('woff2')}
:root{
  --navy:#0B2A6B;--navy2:#071b47;--blue:#1D5FD1;--sun:#FFC93C;--sun-l:#FFF0B8;--coral:#FF7A66;--coral-l:#FFE1D9;--sky:#E8F0FD;--mint:#CDEFD9;
  --cream:#FFF8EC;--paper:#FFFDF8;--ink:#14244F;--mute:#475789;
  --disp:'Fredoka','Nunito',system-ui,'Segoe UI',Roboto,sans-serif;--sans:'Nunito',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --bounce:cubic-bezier(.34,1.56,.64,1);--ease:cubic-bezier(.22,.61,.36,1);--sab:env(safe-area-inset-bottom,0px);--gut:clamp(18px,5vw,64px);--hh:62px;--sk:clamp(28px,5vw,72px);--rad:26px;
}
@supports (transition-timing-function:linear(0,1)){:root{--bounce:linear(0,.18 6%,.58 14%,.96 22%,1.12 29%,1.14 33%,1.08 40%,1.01 48%,.98 55%,.99 63%,1 72%,1.004 85%,1)}}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hh) + 12px);background:var(--cream)}
body.pg-crowd{margin:0;background:var(--cream);color:var(--ink);font:500 17px/1.65 var(--sans);overflow-x:clip;-webkit-font-smoothing:antialiased}
.pg-crowd *,.pg-crowd *::before,.pg-crowd *::after{box-sizing:border-box}
.pg-crowd main{display:block}
.pg-crowd a{color:var(--blue);text-underline-offset:3px;text-decoration-thickness:2px}
.pg-crowd :focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:8px}
.pg-crowd .skip{background:var(--sun);color:var(--navy);z-index:1000}
:where(.pg-crowd) :is(h1,h2,h3){margin:0;font-family:var(--disp);font-weight:600;letter-spacing:0;color:var(--navy)}
:where(.pg-crowd) p{margin:0 0 1.1em}
:where(.pg-crowd) figure{margin:0}
:where(.pg-crowd) img{display:block;max-width:100%;height:auto}
:where(.pg-crowd) ul,:where(.pg-crowd) ol{margin:0;padding:0;list-style:none}
.cr-i{flex:none}
.cr-wrap{width:100%;max-width:1220px;margin:0 auto;padding-inline:var(--gut)}

/* ---------- header ---------- */
.cr-head{position:sticky;top:0;z-index:50;height:var(--hh);display:flex;align-items:center;gap:18px;padding:0 var(--gut);background:var(--paper);border-bottom:3px solid var(--navy)}
.cr-brand{display:flex;align-items:center;gap:10px;text-decoration:none!important;font:600 17px/1 var(--disp);color:var(--navy)}
.cr-mark{display:grid;place-items:center;width:34px;height:34px;border:3px solid var(--navy);border-radius:11px;background:var(--sun);font:700 18px/1 var(--disp);color:var(--navy);transform:rotate(-6deg)}
.cr-nav{display:none;margin-left:auto;gap:6px}
.cr-nav a{font:600 15px/1 var(--sans);text-decoration:none;color:var(--navy);padding:10px 12px;border-radius:999px}
.cr-nav a:hover{background:var(--sky)}
.cr-head .cr-btn{margin-left:auto}
@media (max-width:480px){.cr-brand span+span{display:none}}
@media (min-width:1000px){.cr-nav{display:flex}.cr-head .cr-btn{margin-left:8px}}

/* ---------- buttons / stickers ---------- */
.cr-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:12px 26px;text-align:center;border:3px solid var(--navy);border-radius:999px;background:var(--sun);color:var(--navy)!important;font:600 18px/1.2 var(--disp);text-decoration:none!important;cursor:pointer;box-shadow:0 5px 0 var(--navy);transition:transform .15s var(--ease)}
.cr-btn:hover{transform:translateY(-2px)}
.cr-btn:active{transform:translateY(4px)}
.cr-btn-ghost{background:var(--paper);box-shadow:0 5px 0 var(--navy)}
.cr-btn-y{background:var(--sun)}
.cr-btn-sm{min-height:42px;padding:6px 18px;font-size:15px;box-shadow:0 3px 0 var(--navy);white-space:nowrap}
.cr-btn-block{width:100%}
.cr-btn:disabled{opacity:.6;cursor:progress}
.cr-chip{display:inline-block;padding:8px 14px;border:3px solid var(--navy);border-radius:999px;background:var(--paper);color:var(--navy);font-weight:700}
.cr-sticker{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;padding:9px 18px;border:3px solid var(--navy);border-radius:999px;background:var(--sun);color:var(--navy);font:600 17px/1.2 var(--disp);transform:rotate(var(--r,-2deg));box-shadow:3px 4px 0 var(--navy)}
.cr-dot{width:6px;height:6px;border-radius:50%;background:var(--navy)}
.cr-badge{display:inline-block;padding:3px 12px;margin-right:6px;border:2px solid var(--navy);border-radius:999px;background:var(--sun);color:var(--navy);font:600 14px/1.5 var(--disp);vertical-align:1px}

/* ---------- type ---------- */
.cr-kicker{display:inline-block;margin:0 0 14px;padding:5px 14px;border:2px solid currentColor;border-radius:999px;font:700 14px/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--blue)}
.cr-h2{font-size:clamp(30px,4.8vw,54px);line-height:1.1;max-width:18ch;margin-bottom:22px}
.cr-lead2{max-width:62ch;color:var(--mute);font-size:18px}
.cr-small{font-size:15px;color:var(--mute);max-width:70ch;margin-top:30px}
.cr-u{position:relative;display:inline-block;white-space:nowrap}
.cr-ul{position:absolute;left:-2%;bottom:-.2em;width:104%;height:.3em;overflow:visible;pointer-events:none}
.cr-ul path{fill:none;stroke:var(--coral);stroke-width:4;stroke-linecap:round}
.cr-pre .cr-ul path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .8s var(--ease) .35s}
.cr-pre .in .cr-ul path,.cr-pre .in.cr-ul path{stroke-dashoffset:0}
.cr-hero .cr-ul path{animation:cr-draw .9s var(--ease) 1s both}
.cr-pre .cr-hero .cr-ul path{animation:cr-draw .9s var(--ease) 1s both;stroke-dasharray:1}
@keyframes cr-draw{from{stroke-dashoffset:1;stroke-dasharray:1}to{stroke-dashoffset:0;stroke-dasharray:1}}

/* ---------- sections ---------- */
.cr-sec{padding:calc(var(--sk) + clamp(40px,6vw,88px)) 0 clamp(56px,8vw,112px);position:relative;content-visibility:auto;contain-intrinsic-size:auto var(--cis,900px)}
.cr-slant::before{content:"";position:absolute;left:0;right:0;top:0;height:var(--sk);background:var(--prev,#fff);clip-path:polygon(0 0,100% 0,0 100%)}
.cr-slant-r::before{clip-path:polygon(0 0,100% 0,100% 100%)}
.cr-white{background:var(--paper)}
.cr-sun{background:var(--sun-l)}
.cr-dots{background:var(--cream) radial-gradient(rgba(29,95,209,.16) 2px,transparent 2.5px) 0 0/26px 26px}
.cr-navy{background:var(--navy);color:#fff}
.cr-navy :is(h2,h3){color:#fff}
.cr-navy p,.cr-navy li{color:#E6EDFB}
.cr-navy .cr-kicker{color:var(--sun)}
.cr-navy a:not(.cr-btn){color:var(--sun)}
.cr-navy .cr-lead2{color:#E6EDFB}
.cr-coral{background:var(--coral-l)}
.cr-sky{background:var(--sky)}
.cr-yellow{background:var(--sun)}
.cr-yellow .cr-kicker{color:var(--navy)}
.cr-yellow .cr-ul path{stroke:var(--navy)}
.cr-sec p{color:#2c3b69}
.cr-navy p{color:#E6EDFB}

/* ---------- hero ---------- */
.cr-hero{position:relative;overflow:hidden;isolation:isolate;background:var(--cream);padding:clamp(28px,5vw,64px) 0 clamp(64px,8vw,110px)}
.cr-hero::before{content:"";position:absolute;z-index:-1;width:min(70vw,640px);aspect-ratio:1;right:-12%;top:-16%;border-radius:50%;background:var(--sun-l)}
.cr-hero::after{content:"";position:absolute;z-index:-1;width:min(50vw,420px);aspect-ratio:1;left:-14%;bottom:-24%;border-radius:50%;background:var(--sky)}
.cr-hero-in{display:grid;gap:36px;align-items:center}
.cr-h1{font-size:clamp(44px,8.4vw,96px);line-height:.98;font-weight:700;margin-bottom:18px;color:var(--navy);max-width:11ch}
.cr-h1 .cr-hp{display:inline-block}
.cr-tag{font:600 clamp(22px,3vw,32px)/1.2 var(--disp);color:var(--blue)!important;margin-bottom:14px}
.cr-lead{font-size:clamp(17px,1.7vw,20px);max-width:46ch;margin-bottom:24px;color:#2c3b69}
.cr-next{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;padding:14px 18px;margin-bottom:26px;max-width:640px;border:3px solid var(--navy);border-radius:var(--rad);background:var(--paper);box-shadow:5px 6px 0 var(--navy)}
.cr-next-l{display:flex;flex-direction:column;gap:2px}
.cr-next-k{font:700 12px/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.cr-next-l b{font:600 clamp(19px,2.2vw,23px)/1.25 var(--disp);color:var(--navy)}
.cr-sep{display:inline-block;width:6px;height:6px;margin:0 10px;border-radius:50%;background:var(--coral);vertical-align:middle}
.cr-cd{display:flex;gap:8px;margin-left:auto;contain:layout paint}
.cr-cd[hidden]{display:none}
.cr-cd span{display:flex;flex-direction:column;align-items:center;min-width:50px;padding:6px 4px 5px;border-radius:14px;background:var(--navy);color:#fff}
.cr-cd b{font:600 24px/1 var(--disp);font-variant-numeric:tabular-nums;color:var(--sun)}
.cr-cd small{font:700 10px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;margin-top:4px;color:#DCE6FA}
.cr-cta{display:flex;flex-wrap:wrap;gap:14px 16px;align-items:center}
@media (max-width:520px){.cr-cd{margin-left:0}}

/* collage */
.cr-collage{position:relative;width:min(100%,540px);aspect-ratio:1/1.04;margin:0 auto}
.cr-collage figure{position:absolute;overflow:hidden;background:#fff;border:4px solid var(--navy);border-radius:var(--rad);box-shadow:6px 8px 0 var(--navy);transform:rotate(var(--r,0))}
.cr-collage img{width:100%;height:100%;object-fit:cover}
.cr-c1{left:6%;top:0;width:88%;aspect-ratio:1}
.cr-c2{left:-2%;bottom:0;width:46%;aspect-ratio:4/3}
.cr-c3{right:-2%;bottom:6%;width:40%;aspect-ratio:4/3}
.cr-star{position:absolute;right:-2%;top:-3%;width:clamp(78px,16vw,112px);aspect-ratio:1;display:grid;place-items:center;transform:rotate(12deg)}
.cr-star svg{position:absolute;inset:0;width:100%;height:100%}
.cr-star b{position:relative;font:700 clamp(16px,3.4vw,22px)/1 var(--disp);color:var(--navy);text-align:center}
.cr-star small{display:block;font:600 clamp(11px,2.2vw,14px)/1.2 var(--disp)}
.cr-note-ill{position:absolute;left:50%;bottom:-26px;transform:translateX(-50%);margin:0;font-size:12px;color:var(--mute)!important;white-space:nowrap}
@media (min-width:900px){.cr-hero-in{grid-template-columns:1.05fr .95fr;gap:56px}}
@media (max-width:899px){.cr-hero-in{padding-bottom:20px}}
/* hero load animation: pure CSS, ends visible */
.cr-hp{animation:cr-pop .75s var(--bounce) both;animation-delay:calc(.12s + var(--i,0)*.09s)}
@keyframes cr-pop{from{opacity:0;transform:translateY(16px) scale(.88) rotate(calc(var(--r,0deg)*2))}to{opacity:1;transform:rotate(var(--r,0deg))}}
.cr-collage figure.cr-hp{animation-name:cr-popf}
@keyframes cr-popf{from{opacity:0;transform:translateY(24px) scale(.85) rotate(calc(var(--r,0deg)*3))}to{opacity:1;transform:rotate(var(--r,0deg))}}
.cr-sticker.cr-hp{animation-name:cr-pops}
@keyframes cr-pops{from{opacity:0;transform:scale(.6) rotate(-10deg)}to{opacity:1;transform:rotate(var(--r,-2deg))}}
.cr-star.cr-hp{animation-name:cr-popstar}
@keyframes cr-popstar{from{opacity:0;transform:scale(.4) rotate(-40deg)}to{opacity:1;transform:rotate(12deg)}}

/* ---------- marquee ---------- */
.cr-marq{display:flex;overflow:hidden;background:var(--navy);padding:16px 0;border-block:3px solid var(--navy);contain:layout paint}
.cr-track{flex:none;display:flex;gap:14px;padding-right:14px;min-width:100%;justify-content:space-around;animation:cr-marq 38s linear infinite;animation-play-state:paused}
.cr-marq.on .cr-track{animation-play-state:running}
.cr-mc{flex:none;padding:8px 20px;border-radius:999px;border:3px solid #fff;background:var(--sun);font:600 18px/1.2 var(--disp);color:var(--navy);white-space:nowrap}
.cr-mc1{background:var(--coral)}.cr-mc2{background:#fff}.cr-mc3{background:#A9C8FF}
@keyframes cr-marq{to{transform:translateX(-100%)}}

/* ---------- split / blobs / cards ---------- */
.cr-split{display:grid;gap:40px;align-items:center}
.cr-blob{position:relative;border:4px solid var(--navy);border-radius:36px 80px 36px 80px;overflow:hidden;box-shadow:8px 10px 0 var(--navy);background:var(--sky);transform:rotate(var(--r,0))}
.cr-blob img{width:100%;height:auto;aspect-ratio:1}
.cr-blob figcaption{position:absolute;left:12px;bottom:10px;padding:2px 10px;border-radius:999px;background:var(--paper);font-size:12px;font-weight:700;color:var(--navy)}
@media (min-width:900px){.cr-split{grid-template-columns:1.05fr .95fr;gap:72px}}
.cr-who{display:grid;gap:22px;margin-top:56px}
.cr-wcard{padding:26px 24px;border:3px solid var(--navy);border-radius:var(--rad);box-shadow:5px 6px 0 var(--navy);transform:rotate(var(--r,0))}
.cr-wcard h3{font-size:23px;line-height:1.2;margin:14px 0 8px}
.cr-wcard p{margin:0;font-size:16px;color:var(--ink)}
.cr-ico{display:grid;place-items:center;width:52px;height:52px;border:3px solid var(--navy);border-radius:16px;background:#fff;color:var(--navy)}
.cr-t0{background:var(--sun-l)}.cr-t1{background:var(--coral-l)}.cr-t2{background:var(--sky)}.cr-t3{background:var(--mint)}.cr-t4{background:#fff}
@media (min-width:700px){.cr-who{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.cr-who{grid-template-columns:repeat(4,1fr)}}

/* ---------- sticky card stack (desktop); plain flow on mobile ---------- */
.cr-indic{max-width:60ch;color:var(--mute)}
.cr-stack{display:grid;gap:20px;margin-top:34px;counter-reset:s}
.cr-scard{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;align-items:start;padding:22px;border:3px solid var(--navy);border-radius:var(--rad);box-shadow:6px 7px 0 var(--navy)}
.cr-no{grid-row:span 2;display:grid;place-items:center;width:54px;height:54px;border:3px solid var(--navy);border-radius:50%;background:var(--sun);font:700 26px/1 var(--disp);color:var(--navy);transform:rotate(-8deg)}
.cr-t0 .cr-no{background:var(--coral)}.cr-t2 .cr-no{background:#fff}.cr-t3 .cr-no{background:#A9C8FF}
.cr-scard h3{font-size:clamp(22px,3vw,30px);line-height:1.15;margin:4px 0 6px;color:var(--navy)}
.cr-scard p{margin:0;color:var(--ink)}
.cr-sph{grid-column:1/-1;overflow:hidden;border:3px solid var(--navy);border-radius:18px;aspect-ratio:4/3;max-height:260px}
.cr-sph img{width:100%;height:100%;object-fit:cover}
@media (min-width:900px){
  .cr-stack{gap:30px;max-width:900px;margin-inline:auto}
  .cr-scard{grid-template-columns:auto 1fr 300px;align-items:center;min-height:230px;padding:26px 28px;position:sticky;top:calc(var(--hh) + 20px + var(--i)*54px)}
  .cr-sph{grid-column:auto;grid-row:span 2;max-height:none;width:300px}
  .cr-scard:nth-child(odd){transform:rotate(-.6deg)}.cr-scard:nth-child(even){transform:rotate(.6deg)}
}
@media (min-width:900px) and (max-height:560px){.cr-scard{position:relative;top:auto}}

/* ---------- ideas wall ---------- */
.cr-notes{display:grid;gap:26px 22px;margin-top:40px}
.cr-nt{position:relative;padding:34px 22px 24px;border:3px solid var(--navy);border-radius:10px 10px 10px 36px;box-shadow:5px 6px 0 var(--navy);transform:rotate(var(--r,0))}
.cr-nt p{margin:0;font:600 clamp(18px,2vw,21px)/1.35 var(--disp);color:var(--navy)}
.cr-pin{position:absolute;left:50%;top:-12px;width:22px;height:22px;margin-left:-11px;border:3px solid var(--navy);border-radius:50%;background:var(--coral)}
@media (min-width:640px){.cr-notes{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.cr-notes{grid-template-columns:repeat(4,1fr)}}

/* ---------- program (navy) ---------- */
.cr-steps{display:grid;gap:24px;margin-top:38px}
.cr-step{position:relative;padding:30px 24px 26px;border:3px solid var(--sun);border-radius:var(--rad);background:#12388A}
.cr-step h3{font-size:24px;line-height:1.2;margin:10px 0 10px;color:#fff}
.cr-step p{margin:0;font-size:16.5px}
.cr-sno{display:grid;place-items:center;width:50px;height:50px;border:3px solid var(--navy);border-radius:50%;background:var(--sun);font:700 26px/1 var(--disp);color:var(--navy);transform:rotate(-8deg)}
@media (min-width:900px){.cr-steps{grid-template-columns:repeat(3,1fr)}}
.cr-nums{display:grid;gap:16px;margin-top:40px;grid-template-columns:repeat(2,1fr)}
.cr-num{display:flex;flex-direction:column;gap:6px;padding:18px 16px;border-radius:var(--rad);background:var(--paper);border:3px solid var(--sun)}
.cr-num b{font:700 clamp(40px,6vw,64px)/1 var(--disp);color:var(--blue);font-variant-numeric:tabular-nums}
.cr-num>span{font-size:15px;line-height:1.4;color:var(--ink)!important}
@media (min-width:900px){.cr-nums{grid-template-columns:repeat(4,1fr)}}
.cr-credit{display:grid;gap:36px;margin-top:56px;align-items:center}
.cr-cph{position:relative;border:4px solid var(--sun);border-radius:var(--rad);overflow:hidden;transform:rotate(var(--r,0));max-width:460px;background:#fff}
.cr-cph img{width:100%;height:auto;aspect-ratio:1}
.cr-cph figcaption{padding:8px 14px;background:var(--paper);font-size:12px;font-weight:700;color:var(--navy)}
.cr-cbody h3{font-size:clamp(24px,3vw,32px);margin-bottom:14px}
.cr-ticks{display:grid;gap:12px;margin-bottom:20px}
.cr-ticks li{display:flex;gap:12px;align-items:flex-start}
.cr-ticks .cr-i{margin-top:3px;padding:2px;border-radius:50%;background:var(--sun);color:var(--navy);width:24px;height:24px}
.cr-disc{padding:14px 18px;border:3px dashed var(--sun);border-radius:18px;margin:0 0 24px}
@media (min-width:900px){.cr-credit{grid-template-columns:.8fr 1.2fr;gap:64px}}

/* ---------- video facade ---------- */
.cr-vgrid{display:grid;gap:36px;align-items:center}
.cr-vt{display:grid;gap:6px;margin-top:6px}
.cr-vt b{font:600 19px/1.3 var(--disp);color:var(--navy)}
.cr-vwrap{border:4px solid var(--navy);border-radius:var(--rad);overflow:hidden;box-shadow:8px 10px 0 var(--navy);background:#000;transform:rotate(var(--r,0))}
.cr-video{position:relative;aspect-ratio:4/3;background:#000}
.cr-video img,.cr-video iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}
.cr-play{position:absolute;inset:0;display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;background:rgba(11,42,107,.18);cursor:pointer}
.cr-play span{display:grid;place-items:center;width:84px;height:84px;border:4px solid var(--navy);border-radius:50%;background:var(--sun);color:var(--navy);box-shadow:0 5px 0 var(--navy);transition:transform .2s var(--bounce);padding-left:5px}
.cr-play:hover span{transform:scale(1.08)}
@media (min-width:900px){.cr-vgrid{grid-template-columns:.8fr 1.2fr;gap:64px}}

/* ---------- gallery: snap rail on mobile, masonry columns on desktop ---------- */
.cr-rail{display:flex;gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:34px var(--gut) 22px;scroll-padding-inline:var(--gut);scrollbar-width:thin;scrollbar-color:var(--navy) transparent}
.cr-cell{flex:0 0 min(78vw,340px);scroll-snap-align:start;border:3px solid var(--navy);border-radius:22px;overflow:hidden;background:#fff;box-shadow:5px 6px 0 var(--navy)}
.cr-cell img{width:100%;height:auto}
.cr-cell figcaption{padding:10px 14px;font:600 15px/1.3 var(--disp);color:var(--navy)}
@media (min-width:900px){
  .cr-rail{display:block;columns:3;column-gap:26px;max-width:1220px;margin:0 auto;padding:40px var(--gut) 0;overflow:visible}
  .cr-cell{display:block;break-inside:avoid;margin:0 0 26px;transform:rotate(var(--r,0))}
}

/* ---------- FAQ ---------- */
.cr-faqw{display:grid;gap:30px}
.cr-faq{display:grid;gap:14px}
.cr-acc{border:3px solid var(--navy);border-radius:22px;background:#fff;box-shadow:4px 5px 0 var(--navy)}
.cr-acc summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;font:600 clamp(18px,2vw,21px)/1.3 var(--disp);color:var(--navy);border-radius:19px}
.cr-acc summary::-webkit-details-marker{display:none}
.cr-acc summary i{position:relative;flex:none;width:30px;height:30px;border:3px solid var(--navy);border-radius:50%;background:var(--sun)}
.cr-acc summary i::before,.cr-acc summary i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:3px;margin:-1.5px 0 0 -6px;background:var(--navy);border-radius:2px}
.cr-acc summary i::after{transform:rotate(90deg);transition:transform .25s var(--ease)}
.cr-acc[open] summary i::after{transform:rotate(0)}
.cr-acc-b{padding:0 20px 18px;max-width:64ch}
.cr-acc-b p{margin:0}
@media (min-width:900px){.cr-faqw{grid-template-columns:.7fr 1.3fr;gap:64px;align-items:start}}

/* ---------- waitlist form ---------- */
.cr-joingrid{display:grid;gap:40px}
.cr-facts{display:grid;gap:12px;margin-top:24px}
.cr-facts li{display:flex;align-items:center;gap:12px;font:600 18px/1.3 var(--disp);color:var(--navy)}
.cr-formcard{position:relative;background:#fff;border:4px solid var(--navy);border-radius:30px;padding:clamp(22px,4vw,40px);box-shadow:8px 10px 0 var(--navy)}
.cr-form{display:grid;gap:18px}
.cr-form[hidden]{display:none}
.cr-hpf{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cr-row{display:grid;gap:18px}
.cr-fld label,.cr-fs legend{display:block;font:700 15px/1.4 var(--sans);color:var(--navy);margin-bottom:7px;padding:0}
.cr-fld b,.cr-fs legend b,.cr-consent b{color:#B3261E}
.cr-fld input,.cr-fld select{width:100%;min-height:52px;padding:12px 16px;border:3px solid var(--navy);border-radius:16px;background:#fff;color:var(--ink);font:500 16px/1.3 var(--sans)}
.cr-fld input::placeholder{color:#5f6b93}
.cr-fld input:focus,.cr-fld select:focus{outline:3px solid var(--blue);outline-offset:2px}
.cr-fs{border:0;margin:0;padding:0;min-width:0}
.cr-opts{display:flex;flex-wrap:wrap;gap:10px}
.cr-opt{position:relative;cursor:pointer}
.cr-opt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.cr-opt span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:3px solid var(--navy);border-radius:999px;font:600 15px/1.2 var(--sans);color:var(--navy);background:#fff;transition:background-color .2s var(--ease)}
.cr-opt input:checked+span{background:var(--sun);box-shadow:inset 0 0 0 2px var(--navy)}
.cr-opt input:focus-visible+span{outline:3px solid var(--blue);outline-offset:2px}
.cr-consent{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;line-height:1.55;color:#2c3b69;cursor:pointer}
.cr-consent input{flex:none;width:24px;height:24px;margin:1px 0 0;accent-color:var(--navy)}
.cr-msg{min-height:1.4em;margin:0;font-size:15px;color:var(--mute)!important}
.cr-msg.err{color:#B3261E!important;font-weight:800}
.cr-done{text-align:center;padding:26px 6px}
.cr-done[hidden]{display:none}
.cr-done h3{font-size:30px;margin:14px 0 8px}
.cr-done p{margin:0 auto;max-width:36ch}
.cr-done.go svg{animation:cr-pop2 .7s var(--bounce) both}
@keyframes cr-pop2{from{opacity:0;transform:scale(.3) rotate(-30deg)}to{opacity:1;transform:none}}
.cr-ck{stroke-dasharray:50;stroke-dashoffset:0}
.cr-done.go .cr-ck{animation:cr-draw2 .5s var(--ease) .45s both}
@keyframes cr-draw2{from{stroke-dashoffset:50}to{stroke-dashoffset:0}}
@media (min-width:640px){.cr-row{grid-template-columns:1fr 1fr}}
@media (min-width:980px){.cr-joingrid{grid-template-columns:.85fr 1.15fr;gap:72px;align-items:start}.cr-joingrid>.cr-copy{position:sticky;top:calc(var(--hh) + 32px)}}

/* confetti (JS adds <i> pieces once; transform/opacity only) */
.cr-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:26px}
.cr-confetti i{position:absolute;left:50%;top:38%;width:10px;height:14px;border-radius:3px;opacity:0;animation:cr-conf 1.25s cubic-bezier(.18,.7,.3,1) forwards;animation-delay:var(--d,0s)}
.cr-confetti i:nth-child(4n+1){background:var(--sun)}.cr-confetti i:nth-child(4n+2){background:var(--coral)}.cr-confetti i:nth-child(4n+3){background:var(--blue)}.cr-confetti i:nth-child(4n){background:var(--navy)}
.cr-confetti i:nth-child(3n){border-radius:50%;width:11px;height:11px}
@keyframes cr-conf{0%{opacity:1;transform:translate(0,0) rotate(0) scale(.5)}15%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--rot)) scale(1)}}

/* ---------- closing + footer ---------- */
.cr-end{background:var(--navy);padding:48px 0 40px;color:#E6EDFB}
.cr-share{display:flex;gap:12px;flex-wrap:wrap}
.cr-share a{font:700 15px/1 var(--sans);color:#fff;text-decoration:none;padding:12px 16px;border:2px solid #fff;border-radius:999px}
.cr-credit-note{margin:30px 0 0;font-size:13.5px;color:#C9D6F2!important;max-width:80ch}
.pg-crowd .pub-footer{background:var(--navy2);color:#C9D6F2;border-top:0;padding:26px var(--gut);display:flex;flex-wrap:wrap;gap:16px 40px;align-items:center;font-size:14px}
.pg-crowd .pub-footer .muted,.pg-crowd .pub-footer small{color:#C9D6F2}
.pg-crowd .pub-footer a{color:var(--sun);margin-right:14px}
.pg-crowd .pub-footer .logo-mark{display:none}
.has-cta-bar .pub-footer{padding-bottom:calc(92px + var(--sab))}
@media (min-width:900px){.has-cta-bar .pub-footer{padding-bottom:calc(26px + var(--sab))}}

/* ---------- sticky mobile CTA bar (transform-only slide-in) ---------- */
.cr-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;align-items:center;gap:14px;padding:10px max(16px,env(safe-area-inset-right)) calc(10px + var(--sab)) max(16px,env(safe-area-inset-left));background:var(--paper);border-top:3px solid var(--navy);transform:translateY(110%);transition:transform .5s var(--bounce);visibility:hidden}
.cr-bar.show{transform:none;visibility:visible}
.cr-bar-i{flex:1;min-width:0;font-size:13px;line-height:1.35;color:var(--mute)}
.cr-bar-i b{display:block;font:600 16px/1.3 var(--disp);color:var(--navy)}
.cr-bar .cr-btn{flex:none;min-height:46px;padding:0 26px;font-size:16px;box-shadow:0 4px 0 var(--navy)}
@media (min-width:900px){.cr-bar{display:none}}

/* ---------- reveals (one IntersectionObserver; armed by html.cr-pre) ---------- */
.cr-pre .rv{opacity:0;transform:translateY(22px)}
.cr-pre .rv:not(.in){will-change:opacity,transform}
.rv{transition:opacity .7s var(--ease) calc(var(--i,0)*80ms),transform .7s var(--ease) calc(var(--i,0)*80ms)}
.cr-pre .rv.in{opacity:1;transform:none}
.cr-pre .cr-pop{opacity:0;transform:translateY(18px) scale(.7) rotate(calc(var(--r,0deg)*2.5))}
.cr-pre .cr-pop:not(.in){will-change:opacity,transform}
.cr-pop{transform:rotate(var(--r,0deg));transition:opacity .35s var(--ease) calc(var(--i,0)*90ms),transform .7s var(--bounce) calc(var(--i,0)*90ms)}
.cr-pre .cr-pop.in{opacity:1;transform:rotate(var(--r,0deg))}
.cr-pre .cr-hp{will-change:auto}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .cr-hp,.cr-hero .cr-ul path{animation:none!important}
  .rv,.cr-pop,.cr-bar,.cr-btn,.cr-acc summary i::after,.cr-play span{transition:none!important}
  .cr-pre .rv,.cr-pre .cr-pop{opacity:1;transform:none}
  .cr-pre .cr-pop.in,.cr-pre .cr-pop{transform:rotate(var(--r,0deg))}
  .cr-track{animation:none!important}
  .cr-marq{overflow-x:auto}
  .cr-done.go svg,.cr-done.go .cr-ck{animation:none}
  .cr-confetti{display:none}
  .cr-pre .cr-ul path{stroke-dasharray:none;stroke-dashoffset:0;transition:none}
}
/* content-visibility intrinsic sizes — calibrated from measured section heights (mobile first, desktop override) */
#circle{--cis:1965px}#saturday{--cis:2900px}#ideas{--cis:1520px}#program{--cis:2970px}#video{--cis:764px}#gallery{--cis:830px}#faq{--cis:860px}#join{--cis:1700px}
@media (min-width:900px){#circle{--cis:1077px}#saturday{--cis:2240px}#ideas{--cis:937px}#program{--cis:1694px}#video{--cis:735px}#gallery{--cis:2800px}#faq{--cis:858px}#join{--cis:1053px}}
