
:root{
  --black:#080808;
  --black2:#0d0b0a;
  --ivory:#f5efe3;
  --gold:#b88b2e;
  --gold2:#ddb85a;
  --wine:#6b0f1a;
  --text:#f7f3e8;
  --muted:rgba(247,243,232,.64);
  --line:rgba(247,243,232,.09);
  --cream:#f3ede0;
  --ink:#111;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--black);
  color:var(--text);
  font-family:"Montserrat",system-ui,sans-serif;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit}
section{position:relative}
main{overflow:hidden}
::selection{background:var(--gold);color:#000}

.site-header{
  position:fixed;
  inset:0 0 auto 0;
  z-index:100;
  height:84px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  padding:0 5vw;
  gap:24px;
  background:linear-gradient(180deg,rgba(8,8,8,.96),rgba(8,8,8,.72),rgba(8,8,8,0));
  backdrop-filter:blur(10px);
}
.brand{width:260px;display:flex;align-items:center}
.brand img{max-height:54px;object-fit:contain;object-position:left center}
.nav{display:flex;gap:24px;align-items:center}
.nav a{
  text-decoration:none;
  font-size:.78rem;
  color:#e7e0d4;
  transition:.25s ease;
}
.nav a:hover{color:var(--gold2)}
.header-cta{
  justify-self:end;
  text-decoration:none;
  color:#111;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
  padding:12px 18px;
  border-radius:999px;
  font-weight:700;
  font-size:.78rem;
}

/* shared */
.section-kicker,.eyebrow{
  margin:0 0 16px;
  color:var(--gold2);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.68rem;
  font-weight:700;
}
.btn{
  min-height:52px;
  padding:0 22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  text-decoration:none;
  font-size:.84rem;
  font-weight:700;
  transition:.25s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{
  color:#111;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
  box-shadow:0 12px 32px rgba(184,139,46,.22);
}
.btn-secondary{
  color:var(--text);
  border:1px solid rgba(247,243,232,.16);
  background:rgba(255,255,255,.025);
}

/* HERO */
.hero.hero-cinematic{
  --mx:0px;
  --my:0px;
  min-height:100svh;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#050505;
  isolation:isolate;
  padding:118px 5vw 70px;
}
.hero-cinematic-stage,.hero-cinematic-overlay{position:absolute;inset:0}
.hero-cinematic-stage{z-index:0}
.hero-cinematic-blur{
  position:absolute;inset:-4%;
  background:url("assets/hero-famac-concierto.png") center/cover no-repeat;
  filter:blur(22px) brightness(.42);
  transform:scale(1.08);
}
.hero-cinematic-image{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;
  object-position:center;
  z-index:2;
  transform:translate3d(calc(var(--mx)*.18),calc(var(--my)*.18),0) scale(1.02);
  animation:heroZoom 16s ease-in-out infinite alternate;
}
.hero-cinematic-glow{
  position:absolute;inset:0;z-index:1;
  background:
    radial-gradient(circle at 75% 25%,rgba(247,190,89,.22),transparent 15%),
    radial-gradient(circle at 28% 75%,rgba(107,15,26,.22),transparent 24%);
}
.hero-cinematic-light{
  position:absolute;z-index:3;top:-14%;right:10%;
  width:38vw;height:120%;
  background:linear-gradient(180deg,rgba(255,238,198,.16),transparent 72%);
  clip-path:polygon(42% 0,60% 0,100% 100%,0 100%);
  filter:blur(38px);
  animation:lightSweep 10s ease-in-out infinite alternate;
}
.hero-cinematic-noise{position:absolute;inset:0;z-index:4;opacity:.05}
.hero-particles{position:absolute;inset:0;z-index:5;pointer-events:none}
.hero-particles span{
  position:absolute;bottom:-10px;width:4px;height:4px;border-radius:50%;
  background:rgba(221,184,90,.75);opacity:0;animation:particleRise linear infinite;
}
.hero-particles span:nth-child(1){left:62%;animation-duration:10s}
.hero-particles span:nth-child(2){left:67%;animation-duration:12s;animation-delay:2s}
.hero-particles span:nth-child(3){left:72%;animation-duration:11s;animation-delay:4s}
.hero-particles span:nth-child(4){left:78%;animation-duration:13s;animation-delay:1s}
.hero-particles span:nth-child(5){left:84%;animation-duration:15s;animation-delay:5s}
.hero-particles span:nth-child(n+6){display:none}
.hero-cinematic-overlay{
  z-index:6;
  background:
    linear-gradient(90deg,rgba(5,5,5,.88) 0%,rgba(5,5,5,.72) 28%,rgba(5,5,5,.20) 54%,rgba(5,5,5,.08) 100%),
    linear-gradient(180deg,rgba(5,5,5,.42),transparent 25%,transparent 75%,rgba(5,5,5,.55));
}
.hero-content-card.cinematic-card{
  position:relative;
  z-index:8;
  width:min(610px,48vw);
  padding:34px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(7,7,7,.68),rgba(7,7,7,.52));
  border:1px solid rgba(247,243,232,.09);
  backdrop-filter:blur(15px);
  box-shadow:0 30px 80px rgba(0,0,0,.36);
}
.hero-content-card h1{
  margin:0;
  font-size:clamp(3.2rem,5.7vw,6.2rem);
  line-height:.88;
  letter-spacing:-.06em;
}
.hero-content-card h1 span{
  display:block;
  color:var(--gold2);
  font-family:"Playfair Display",serif;
  font-style:italic;
  font-weight:500;
}
.hero-content-card .lead{
  margin:22px 0 0;
  max-width:520px;
  font-size:1.05rem;
  line-height:1.55;
}
.hero-content-card .body-copy{
  margin:15px 0 0;
  color:var(--muted);
  max-width:530px;
  line-height:1.7;
  font-size:.91rem;
}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0 20px}
.hero-meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:rgba(247,243,232,.52);font-size:.64rem;text-transform:uppercase}
.hero-meta span:not(:last-child)::after{content:"•";margin-left:14px;color:var(--gold)}
.microcopy{margin:12px 0 0;color:var(--gold2);font-size:.74rem}
.experience-pill-fixed{
  position:absolute;right:5vw;bottom:8vh;z-index:8;
}
.experience-pill{
  width:150px;aspect-ratio:1;border-radius:50%;
  display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;
  background:rgba(245,239,227,.96);color:#111;
  box-shadow:0 26px 60px rgba(0,0,0,.30);
}
.experience-pill strong{
  color:var(--wine);
  font-family:"Playfair Display",serif;font-style:italic;
  font-size:2.55rem;line-height:.9;
}
.experience-pill span{
  width:104px;margin-top:8px;font-size:.55rem;line-height:1.3;
  text-transform:uppercase;letter-spacing:.06em;font-weight:700;
}
.cinematic-scroll{
  position:absolute;left:50%;bottom:18px;z-index:8;transform:translateX(-50%);
  color:rgba(247,243,232,.45);font-size:.55rem;letter-spacing:.18em;text-transform:uppercase;
}
.cinematic-scroll i{display:block;width:1px;height:28px;margin:8px auto 0;background:linear-gradient(var(--gold2),transparent)}

/* authority */
.authority-strip{background:var(--cream);color:#111;border-top:1px solid rgba(184,139,46,.2)}
.authority-track{max-width:1500px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);padding:28px 4vw}
.authority-item{min-height:112px;padding:16px 24px;display:flex;align-items:center;gap:16px;border-right:1px solid rgba(17,17,17,.1)}
.authority-item:last-child{border-right:none}
.authority-number,.authority-icon{min-width:68px;color:var(--wine);font-family:"Playfair Display",serif;font-style:italic;font-size:3.5rem}
.authority-icon{color:var(--gold)}
.authority-item p{margin:0;color:#5a554d;font-size:.78rem;line-height:1.5}
.authority-item strong{color:#111}

/* section alternating shells */
.method-section,.disciplines-section,.stage-section,.adult-voice-section,.trial-section{
  background:linear-gradient(180deg,#090909,#0d0b0a);
  color:var(--text);
}
.path-section,.stories-section,.founder-section,.location-section{background:var(--cream);color:#111}

/* method */
.method-section{
  padding:120px 6vw;display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start;
}
.method-intro{position:sticky;top:120px}
.method-intro h2,.path-heading h2,.disciplines-copy h2,.stage-copy h2,.stories-heading h2,.founder-copy h2,.adult-voice-copy h2,.trial-copy h2,.location-copy h2{
  margin:0;font-size:clamp(3rem,5.4vw,6rem);line-height:.92;letter-spacing:-.055em;
}
.method-manifesto{font-family:"Playfair Display",serif;font-style:italic;font-size:1.65rem;line-height:1.35;margin:24px 0 0}
.method-description{color:var(--muted);line-height:1.75;margin:22px 0 0}
.method-cta,.founder-link,.stage-cta{
  display:inline-flex;gap:10px;align-items:center;margin-top:28px;color:var(--gold2);text-decoration:none;font-weight:700;font-size:.78rem
}
.method-timeline{display:grid}
.method-step{display:grid;grid-template-columns:60px 1px 1fr;gap:20px;min-height:180px}
.step-index{font-family:"Playfair Display",serif;font-style:italic;color:#756b5d}
.step-line{background:linear-gradient(var(--gold),rgba(184,139,46,.08));position:relative}
.step-line:before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:9px;height:9px;border-radius:50%;background:var(--gold2)}
.step-body{padding-bottom:42px}
.step-label{color:var(--gold2);font-size:.65rem;letter-spacing:.16em;text-transform:uppercase}
.step-body h3{margin:10px 0 0;font-size:2rem;line-height:1.08}
.step-body p{color:var(--muted);line-height:1.65;font-size:.88rem}

/* path */
.path-section,.stories-section,.founder-section,.location-section{padding:110px 6vw}
.path-heading,.stories-heading{max-width:920px;margin-bottom:48px}
.path-heading .section-kicker,.stories-heading .section-kicker,.founder-copy .section-kicker,.location-copy .section-kicker{color:var(--wine)}
.path-heading>p:last-child,.stories-heading>p:last-child,.founder-lead,.founder-body,.location-lead{color:#5b554d;line-height:1.75}
.path-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.path-card{
  min-height:330px;padding:30px;border-radius:26px;position:relative;overflow:hidden;
  background:linear-gradient(150deg,#111,#0c0c0c);color:var(--text);border:1px solid rgba(255,255,255,.06);
}
.path-card-number{position:absolute;right:22px;top:18px;color:rgba(221,184,90,.12);font-family:"Playfair Display",serif;font-style:italic;font-size:3.7rem}
.path-tag{color:var(--gold2);text-transform:uppercase;letter-spacing:.15em;font-size:.64rem}
.path-card h3{font-size:2rem;line-height:1.04;margin:26px 0 0}
.path-card p{color:var(--muted);line-height:1.65;font-size:.88rem}
.path-card a{display:inline-flex;gap:8px;margin-top:24px;text-decoration:none;font-weight:700;font-size:.76rem}

/* disciplines */
.disciplines-section{padding:110px 6vw}
.disciplines-copy{max-width:900px;margin-bottom:44px}
.disciplines-copy>p:last-child{color:var(--muted);line-height:1.7}
.instrument-cloud{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.instrument-card{
  min-height:170px;padding:22px;border-radius:20px;display:flex;flex-direction:column;justify-content:flex-end;
  text-decoration:none;border:1px solid var(--line);background:rgba(255,255,255,.025)
}
.instrument-card strong{font-size:1.45rem}
.instrument-card small{color:rgba(247,243,232,.46);margin-top:4px}
.instrument-index{position:absolute;top:18px;right:18px;color:rgba(247,243,232,.2);font-size:.65rem}
.instrument-note{margin-top:24px;padding:24px;border:1px solid var(--line);border-radius:20px;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}
.instrument-note>span{font-family:"Playfair Display",serif;font-style:italic;color:var(--gold2);font-size:1.25rem}
.instrument-note p{margin:0;color:var(--muted);font-size:.84rem}

/* stage */
.stage-section{
  padding:110px 6vw;display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center;
}
.stage-lead{color:var(--muted);line-height:1.7}
.stage-points{margin-top:34px;display:grid;gap:20px}
.stage-point{display:grid;grid-template-columns:48px 1fr;gap:14px;padding-top:18px;border-top:1px solid var(--line)}
.stage-point>span{color:var(--gold2);font-family:"Playfair Display",serif;font-style:italic}
.stage-point p{color:var(--muted);font-size:.86rem;line-height:1.6}
.stage-visual{min-height:560px;position:relative}
.stage-photo-card{position:absolute;border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.6)),#15110e;border:1px solid var(--line)}
.stage-photo-main{inset:0 10% 8% 0}
.stage-photo-small{width:42%;height:38%;right:0;top:6%}
.stage-photo-copy{position:absolute;left:24px;right:24px;bottom:24px}
.stage-photo-copy span{color:var(--gold2);font-size:.62rem;text-transform:uppercase;letter-spacing:.15em}
.stage-photo-copy strong{display:block;font-size:1.7rem;margin-top:6px}
.stage-badge{
  position:absolute;right:2%;bottom:0;width:170px;aspect-ratio:1;border-radius:50%;background:var(--cream);color:#111;
  display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center
}
.stage-badge strong{font-family:"Playfair Display",serif;font-style:italic;font-size:1.8rem}

/* stories */
.stories-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.story-card{min-height:300px;padding:28px;border-radius:24px;background:#fffaf1;border:1px solid rgba(17,17,17,.06);position:relative}
.story-featured{grid-row:span 2;min-height:620px;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.72)),#17120f;color:var(--text);display:flex;flex-direction:column;justify-content:flex-end}
.story-label{color:var(--wine);text-transform:uppercase;letter-spacing:.15em;font-size:.63rem}
.story-featured .story-label{color:var(--gold2)}
.story-card h3{font-size:2rem;line-height:1.06;margin:16px 0 0}
.story-card p{color:#5b554d;line-height:1.7;font-size:.88rem}
.story-featured p{color:var(--muted)}
.story-quote{font-family:"Playfair Display",serif;font-style:italic;color:var(--gold2);font-size:1.3rem;margin-top:24px}
.stories-footer{margin-top:24px;padding:24px;border-radius:22px;background:#0b0b0b;color:var(--text);display:flex;justify-content:space-between;align-items:center;gap:20px}
.stories-footer span{font-family:"Playfair Display",serif;font-style:italic;font-size:1.5rem}

/* founder */
.founder-section{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:center}
.founder-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}
.founder-fact{padding:18px;border-radius:18px;background:rgba(255,255,255,.45);border:1px solid rgba(17,17,17,.06)}
.founder-fact strong{display:block;color:var(--wine);font-family:"Playfair Display",serif;font-style:italic;font-size:2.2rem}
.founder-fact span{font-size:.68rem;color:#625b52}
.founder-quote{font-family:"Playfair Display",serif;font-style:italic;color:var(--gold);font-size:1.8rem;margin-top:24px}
.founder-visual{min-height:540px;position:relative}
.founder-portrait{position:absolute;inset:0 10% 5% 0;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(0,0,0,.55)),#17110f}
.portrait-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:rgba(247,243,232,.45);font-size:.72rem;letter-spacing:.14em}
.founder-portrait-caption{position:absolute;left:26px;right:26px;bottom:24px;color:var(--text)}
.founder-portrait-caption span{font-family:"Playfair Display",serif;font-style:italic;font-size:1.8rem}
.founder-disc{position:absolute;right:0;top:12%;width:165px;aspect-ratio:1;border-radius:50%;background:#0b0b0b;color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.68rem}

/* adult voice */
.adult-voice-section{padding:110px 6vw;display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:center}
.adult-voice-lead{color:var(--muted);line-height:1.75}
.adult-voice-list{margin-top:30px;display:grid;gap:18px}
.adult-voice-item{display:grid;grid-template-columns:42px 1fr;gap:14px;padding-top:16px;border-top:1px solid var(--line)}
.adult-voice-item>span{color:var(--gold2);font-family:"Playfair Display",serif;font-style:italic}
.adult-voice-item p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.65}
.adult-voice-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.adult-voice-visual{min-height:500px;display:flex;align-items:center;justify-content:center;position:relative}
.voice-circle{width:min(480px,90%);aspect-ratio:1;border-radius:50%;position:relative;display:grid;place-items:center;background:radial-gradient(circle,rgba(107,15,26,.25),transparent 65%)}
.voice-ring{position:absolute;border:1px solid rgba(221,184,90,.18);border-radius:50%}
.ring-1{inset:5%}.ring-2{inset:18%}.ring-3{inset:31%}
.voice-center{text-align:center;width:58%}
.voice-center span{color:var(--gold2);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase}
.voice-center strong{display:block;font-family:"Playfair Display",serif;font-style:italic;font-size:2.7rem;line-height:1.04;margin-top:10px}
.adult-voice-proof{position:absolute;left:0;bottom:6%;width:230px;padding:18px;border-radius:18px;background:var(--cream);color:#111}
.adult-voice-proof span{font-weight:700;color:var(--wine);font-size:.76rem}
.adult-voice-proof p{font-size:.7rem;color:#5b554d;line-height:1.45}

/* trial */
.trial-section{padding:110px 6vw;display:grid;grid-template-columns:1fr .8fr;gap:80px;align-items:center}
.trial-lead{color:var(--muted);line-height:1.75}
.trial-benefits{margin-top:30px;display:grid;gap:18px}
.trial-benefit{display:grid;grid-template-columns:42px 1fr;gap:14px;padding-top:16px;border-top:1px solid var(--line)}
.trial-benefit>span{color:var(--gold2);font-family:"Playfair Display",serif;font-style:italic}
.trial-benefit p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.6}
.trial-main-cta{margin-top:28px}
.trial-panel{min-height:470px;padding:34px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.65)),#17110f;display:flex;flex-direction:column;justify-content:flex-end}
.trial-panel-kicker{color:var(--gold2);text-transform:uppercase;letter-spacing:.16em;font-size:.64rem}
.trial-panel>strong{font-family:"Playfair Display",serif;font-style:italic;font-size:2.7rem;line-height:1.04;margin-top:12px}
.trial-panel-line{height:1px;background:linear-gradient(90deg,var(--gold2),transparent);margin:24px 0}
.trial-panel-meta{display:grid;gap:12px}
.trial-panel-meta div{display:flex;justify-content:space-between;gap:18px}
.trial-panel-meta span{color:rgba(247,243,232,.42);font-size:.68rem}
.trial-panel-meta strong{font-size:.7rem;text-align:right}

/* location */
.location-section{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:center}
.location-info{margin-top:28px}
.location-row{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:16px 0;border-top:1px solid rgba(17,17,17,.09)}
.location-row:last-child{border-bottom:1px solid rgba(17,17,17,.09)}
.location-row span{font-size:.68rem;color:#8a8176;text-transform:uppercase;letter-spacing:.08em}
.location-row strong{font-size:.86rem}
.location-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.location-actions .btn-secondary{color:#111;border-color:rgba(17,17,17,.14)}
.location-card{min-height:500px;border-radius:28px;background:#0b0b0b;position:relative;overflow:hidden}
.location-map-art{position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(184,139,46,.16),transparent 18%),#0d0d0d}
.map-grid{position:absolute;inset:-10%;background-image:linear-gradient(rgba(247,243,232,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(247,243,232,.04) 1px,transparent 1px);background-size:44px 44px;transform:rotate(-8deg)}
.map-pin{position:absolute;left:52%;top:43%;width:68px;height:68px;border-radius:50% 50% 50% 0;background:linear-gradient(135deg,var(--gold2),var(--gold));transform:translate(-50%,-50%) rotate(-45deg)}
.map-pin span{position:absolute;inset:21px;border-radius:50%;background:#0b0b0b}
.map-ring{position:absolute;left:52%;top:43%;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(221,184,90,.18)}
.ring-a{width:180px;height:180px}.ring-b{width:300px;height:300px}
.location-card-copy{position:absolute;left:28px;right:28px;bottom:24px;color:var(--text);border-top:1px solid var(--line);padding-top:18px}
.location-card-copy span{color:var(--gold2);font-size:.62rem;letter-spacing:.15em;text-transform:uppercase}
.location-card-copy strong{display:block;margin-top:6px}
.location-card-copy small{display:block;margin-top:4px;color:rgba(247,243,232,.45)}

/* final */
.final-cta-section{
  min-height:72vh;padding:130px 6vw;display:flex;align-items:center;justify-content:center;text-align:center;
  background:radial-gradient(circle at 50% 30%,rgba(184,139,46,.14),transparent 24%),#070707;color:var(--text)
}
.final-cta-copy{max-width:1050px;z-index:2}
.final-cta-copy h2{margin:0;font-size:clamp(3.2rem,6.2vw,7rem);line-height:.9;letter-spacing:-.06em}
.final-cta-copy h2 span{display:block;color:var(--gold2);font-family:"Playfair Display",serif;font-style:italic}
.final-cta-copy>p{color:var(--muted);max-width:620px;margin:26px auto 0;line-height:1.7}
.final-cta-actions{margin-top:30px;display:flex;flex-direction:column;align-items:center;gap:14px}
.final-whatsapp{text-decoration:none;color:rgba(247,243,232,.48);font-size:.74rem}
.final-wordmark{position:absolute;left:50%;bottom:-.12em;transform:translateX(-50%);font-size:20vw;font-weight:700;color:rgba(247,243,232,.022);pointer-events:none}

/* footer */
.site-footer{background:#050505;border-top:1px solid var(--line);padding:30px 6vw;display:flex;align-items:center;justify-content:space-between;gap:30px;color:#8d867c}
.footer-brand img{width:210px}
.footer-brand p{margin:8px 0 0;font-size:.7rem}
.footer-meta{text-align:right;display:flex;flex-direction:column;gap:4px;font-size:.66rem}

/* effects */
.reveal{opacity:0;transform:translateY(24px);transition:.75s cubic-bezier(.2,.8,.2,1)}
.reveal.is-visible{opacity:1;transform:none}
@keyframes heroZoom{from{transform:translate3d(calc(var(--mx)*.18),calc(var(--my)*.18),0) scale(1.02)}to{transform:translate3d(calc(var(--mx)*.18),calc(var(--my)*.18),0) scale(1.05)}}
@keyframes lightSweep{from{transform:rotate(-5deg);opacity:.16}to{transform:rotate(5deg);opacity:.26}}
@keyframes particleRise{0%{transform:translateY(0);opacity:0}10%{opacity:.7}100%{transform:translateY(-80vh) translateX(25px);opacity:0}}

/* responsive */
@media(max-width:1100px){
  .nav{display:none}
  .site-header{grid-template-columns:1fr auto}
  .hero.hero-cinematic{min-height:auto;padding:110px 24px 60px}
  .hero-cinematic-image{object-fit:cover}
  .hero-content-card.cinematic-card{width:min(620px,75vw)}
  .experience-pill-fixed{right:24px;bottom:28px}

  .authority-track{grid-template-columns:repeat(2,1fr)}
  .authority-item:nth-child(2){border-right:none}
  .method-section,.stage-section,.founder-section,.adult-voice-section,.trial-section,.location-section{grid-template-columns:1fr}
  .method-intro{position:relative;top:auto}
  .instrument-cloud{grid-template-columns:repeat(2,1fr)}
  .stage-visual,.founder-visual,.adult-voice-visual{min-height:500px}
  .stories-grid{grid-template-columns:1fr}
  .story-featured{grid-row:auto;min-height:500px}
}
@media(max-width:700px){
  .site-header{height:72px;padding:0 18px}
  .brand{width:180px}
  .header-cta{padding:10px 13px;font-size:.68rem}

  .hero.hero-cinematic{padding:92px 14px 30px;align-items:flex-end;min-height:100svh}
  .hero-cinematic-image{object-fit:cover;object-position:62% center}
  .hero-cinematic-overlay{background:linear-gradient(180deg,rgba(5,5,5,.10) 20%,rgba(5,5,5,.78) 58%,rgba(5,5,5,.96) 100%)}
  .hero-content-card.cinematic-card{
    width:100%;padding:22px;border-radius:22px;margin-top:48vh;
    background:linear-gradient(180deg,rgba(7,7,7,.44),rgba(7,7,7,.84));
  }
  .hero-content-card h1{font-size:clamp(2.9rem,14vw,4.4rem)}
  .hero-content-card .lead{font-size:.96rem}
  .hero-content-card .body-copy{font-size:.86rem}
  .hero-actions .btn{width:100%}
  .experience-pill-fixed{top:90px;right:14px;bottom:auto}
  .experience-pill{width:104px}
  .experience-pill strong{font-size:1.9rem}
  .experience-pill span{font-size:.46rem;width:78px}
  .cinematic-scroll{display:none}

  .authority-track{grid-template-columns:1fr;padding:14px 18px}
  .authority-item{border-right:none;border-bottom:1px solid rgba(17,17,17,.08);padding:14px 0}
  .authority-number,.authority-icon{font-size:2.8rem;min-width:58px}

  .method-section,.disciplines-section,.stage-section,.adult-voice-section,.trial-section{padding:80px 20px}
  .path-section,.stories-section,.founder-section,.location-section{padding:80px 20px}
  .path-grid,.instrument-cloud{grid-template-columns:1fr}
  .instrument-note{grid-template-columns:1fr}
  .stories-footer{flex-direction:column;align-items:flex-start}
  .founder-facts{grid-template-columns:1fr}
  .stage-visual,.founder-visual,.adult-voice-visual{min-height:420px}
  .adult-voice-proof{width:200px}
  .location-row{grid-template-columns:1fr;gap:6px}
  .location-actions .btn{width:100%}
  .trial-panel-meta div{flex-direction:column;gap:4px}
  .trial-panel-meta strong{text-align:left}
  .final-cta-section{padding:100px 20px}
  .final-cta-copy h2{font-size:clamp(3rem,14vw,5rem)}
  .site-footer{padding:28px 20px;flex-direction:column;align-items:flex-start}
  .footer-meta{text-align:left}
}
