/* ═══════════════════════════════════════════════════════════════════
   RMM PREMIUM LAYER v2 — cinematic navy · champagne gold · true glass
   Loaded AFTER /css/style.css on EVERY page (EN + ES + products).
   Pure overrides: zero markup dependencies beyond existing classes.
   ═══════════════════════════════════════════════════════════════════ */

:root{
  --bg:#05080f;
  --bg-alt:#080e1c;
  --ink:#f6f8fd;
  --body:#dce5f5;
  --muted:#9fadc6;
  --blue:#6ea8ff;
  --blue-lt:#9cc2ff;
  --blue-deep:#1e40af;
  --gold:#3f6ce8;
  --gold-lt:#9cc2ff;
  --gold-hi:#dce9ff;
  --line:rgba(94,141,240,.18);
  --border:rgba(110,168,255,.16);
  --glass-hi:rgba(255,255,255,.10);
  --r:16px;
  --gap:150px;
  --ease:cubic-bezier(.22,.61,.36,1);
}

html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(1400px 800px at 80% -10%, rgba(30,64,175,.20), transparent 60%),
    radial-gradient(1100px 700px at -10% 40%, rgba(94,141,240,.06), transparent 55%),
    linear-gradient(180deg,#060b16 0%,#05080f 50%,#070d1a 100%);
  background-attachment:fixed;
  color:var(--body);
  overflow-x:hidden;
}
/* cinematic film grain */
body::after{
  content:"";position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");
}
/* floating aurora orbs (parallaxed by JS) */
.pr-orb{
  position:fixed;border-radius:50%;pointer-events:none;z-index:0;
  filter:blur(90px);will-change:transform;
}
.pr-orb-a{
  width:560px;height:560px;top:-160px;right:-140px;
  background:radial-gradient(circle at 35% 35%, rgba(30,64,175,.4), rgba(30,64,175,0) 70%);
}
.pr-orb-b{
  width:480px;height:480px;bottom:-180px;left:-160px;
  background:radial-gradient(circle at 60% 40%, rgba(94,141,240,.16), rgba(94,141,240,0) 70%);
}
nav,section,footer,.pr-sticky-cta{position:relative;z-index:2}

::selection{background:rgba(94,141,240,.4);color:#fff}
::-webkit-scrollbar{width:11px}
::-webkit-scrollbar-track{background:#05080f}
::-webkit-scrollbar-thumb{background:#1c2944;border-radius:6px;border:2px solid #05080f}
::-webkit-scrollbar-thumb:hover{background:#2a3c63}

/* ── TYPOGRAPHY SYSTEM ─────────────────────────────────────────────── */
h1,h2,h3,h4{color:var(--ink)}
h1{font-size:clamp(2.5rem,5.4vw,4.2rem);font-weight:800;letter-spacing:-.028em;line-height:1.08}
h2{font-size:clamp(1.8rem,3.6vw,2.7rem);letter-spacing:-.022em;margin-bottom:1.4rem;line-height:1.15}
h3{color:var(--ink)}
p{color:var(--body)}
a{color:var(--blue)}
a:hover{color:var(--blue-lt)}

.prose{max-width:700px}
.prose p{
  font-size:1.06rem;line-height:1.88;color:var(--body);
  margin-bottom:1.7rem;
}
.prose p strong{color:var(--gold-lt);font-weight:700}
/* lede: first paragraph reads like an opening statement */
.prose p:first-of-type{
  font-size:1.28rem;line-height:1.75;color:#eef3fc;font-weight:500;
}
/* the closer (last <p>, holds the <strong> punchline) becomes a gold callout */
.prose p:last-of-type:not(:first-of-type){
  border-left:3px solid var(--gold);
  background:linear-gradient(90deg,rgba(94,141,240,.10),rgba(94,141,240,0) 70%);
  padding:1.2rem 1.5rem;border-radius:0 12px 12px 0;
}
/* Bud Light case study (verified: <p> #4 in EN and ES) becomes evidence block */
#problem .prose p:nth-of-type(4){
  background:linear-gradient(150deg,rgba(26,38,66,.5),rgba(10,16,32,.32));
  border:1px solid rgba(110,168,255,.22);
  border-radius:14px;padding:1.5rem 1.75rem;
  font-size:1.12rem;color:#d9e2f2;
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 10px 36px rgba(2,6,14,.45), inset 0 1px 0 var(--glass-hi);
}

.label{
  color:var(--gold-lt);font-size:.72rem;letter-spacing:.3em;
  display:inline-flex;align-items:center;gap:.7rem;
}
.label::before{content:"";width:26px;height:1px;background:var(--gold);display:inline-block}
.rule{
  width:72px;height:2px;margin:0 0 2.4rem;
  background:linear-gradient(90deg,var(--gold),rgba(94,141,240,0));
}
section{padding:var(--gap) 0}
section.alt{
  background:
    radial-gradient(1100px 480px at 88% -10%, rgba(30,64,175,.16), transparent 60%),
    radial-gradient(700px 380px at 0% 110%, rgba(94,141,240,.05), transparent 60%),
    rgba(10,16,32,.45);
  border-top:1px solid rgba(255,255,255,.045);
  border-bottom:1px solid rgba(255,255,255,.045);
}

/* ── PAGE-TOP ATMOSPHERE — every page opens like the homepage ─────────
   About/Shop/frameworks pages have no #hero, so they were opening flat.
   The first section on any page now carries the same blue/gold glow. */
body > section:first-of-type,
main > section:first-of-type{
  padding-top:170px;
  background:
    radial-gradient(1300px 640px at 15% -8%, rgba(30,64,175,.32), transparent 62%),
    radial-gradient(1000px 560px at 92% 105%, rgba(94,141,240,.10), transparent 58%);
}

/* ── NAV ───────────────────────────────────────────────────────────── */
nav{
  background:rgba(5,8,15,.72);
  backdrop-filter:blur(22px) saturate(1.6);
  -webkit-backdrop-filter:blur(22px) saturate(1.6);
  border-bottom:1px solid rgba(94,141,240,.16);
}
.nav-brand-text{color:var(--ink)}
.nav-brand-text span{
  background:linear-gradient(100deg,var(--gold-lt),var(--gold));
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
.nav-links>li>a{color:var(--muted)}
.nav-links>li>a:hover{color:var(--gold-hi)}
.nav-links>li>a.nav-cta{
  background:linear-gradient(135deg,var(--gold-hi) 0%,var(--gold-lt) 35%,var(--gold) 100%);
  color:#080e1c !important;border-radius:11px;
  box-shadow:0 2px 16px rgba(94,141,240,.3), inset 0 1px 0 rgba(255,255,255,.5);
  transition:box-shadow .25s var(--ease),transform .2s var(--ease);
}
.nav-links>li>a.nav-cta:hover{transform:translateY(-1px);box-shadow:0 8px 28px rgba(94,141,240,.45), inset 0 1px 0 rgba(255,255,255,.6)}
.has-dd .dd{
  background:rgba(8,14,28,.95);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1px solid var(--line);box-shadow:0 20px 56px rgba(0,0,0,.6);
}
.dd a{color:var(--body);border-bottom:1px solid rgba(255,255,255,.05)}
.dd a:hover{background:rgba(94,141,240,.09);color:var(--gold-hi)}
.hamburger span{background:var(--ink)}
@media(max-width:768px){
  .nav-links.open{background:rgba(5,8,15,.97);border-bottom:1px solid var(--line)}
  .nav-links.open>li>a{border-bottom:1px solid rgba(255,255,255,.06)}
}

/* ── HERO ──────────────────────────────────────────────────────────── */
#hero{
  min-height:94vh;display:flex;align-items:center;
  padding-top:150px;padding-bottom:120px;overflow:hidden;
  background:
    radial-gradient(1300px 640px at 15% -8%, rgba(30,64,175,.32), transparent 62%),
    radial-gradient(1000px 560px at 92% 105%, rgba(94,141,240,.13), transparent 58%);
}
#hero .container{position:relative;z-index:2}
.pr-hero-canvas{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.9}
.hero-eyebrow{color:var(--gold-lt);letter-spacing:.32em;font-size:.75rem}
.hero-headline{
  max-width:780px;
  background:linear-gradient(115deg,#ffffff 25%,#c4d2ea 58%,var(--gold-hi) 92%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  margin-bottom:1.6rem;
}
.hero-sub{color:#e0e8f6;font-size:1.18rem;max-width:560px;line-height:1.8;margin-bottom:2.75rem}
.hero-logo{position:relative}
.hero-logo::before{
  content:"";position:absolute;inset:-12%;border-radius:50%;
  background:radial-gradient(circle, rgba(110,168,255,.16), rgba(94,141,240,.07) 55%, transparent 72%);
  filter:blur(28px);z-index:-1;
}
.hero-logo img{
  opacity:1;
  filter:drop-shadow(0 0 44px rgba(110,168,255,.5)) drop-shadow(0 0 110px rgba(94,141,240,.2));
  transition:transform .35s var(--ease);will-change:transform;
}
.hero-eyebrow,.hero-headline,.hero-sub,.hero-actions,.hero-logo{
  opacity:0;transform:translateY(30px);
  transition:opacity 1s var(--ease),transform 1s var(--ease);
}
#hero.pr-in .hero-eyebrow{opacity:1;transform:none;transition-delay:.05s}
#hero.pr-in .hero-headline{opacity:1;transform:none;transition-delay:.2s}
#hero.pr-in .hero-sub{opacity:1;transform:none;transition-delay:.38s}
#hero.pr-in .hero-actions{opacity:1;transform:none;transition-delay:.55s}
#hero.pr-in .hero-logo{opacity:1;transform:none;transition-delay:.32s}

/* ── BUTTONS — champagne with sheen sweep ──────────────────────────── */
.btn{border-radius:13px;padding:17px 38px;font-size:.94rem;position:relative;overflow:hidden}
.btn-blue,.btn-buy{
  background:linear-gradient(135deg,var(--gold-hi) 0%,var(--gold-lt) 38%,var(--gold) 100%);
  color:#080e1c;
  box-shadow:0 5px 26px rgba(94,141,240,.33), inset 0 1px 0 rgba(255,255,255,.55);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease);
}
.btn-blue::after{
  content:"";position:absolute;top:0;left:-80%;width:55%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);
  transform:skewX(-22deg);transition:left .6s var(--ease);
}
.btn-blue:hover{
  color:#080e1c;transform:translateY(-3px);
  box-shadow:0 16px 44px rgba(94,141,240,.5), inset 0 1px 0 rgba(255,255,255,.65);
}
.btn-blue:hover::after{left:125%}
.btn-buy:hover{color:#080e1c;box-shadow:0 10px 30px rgba(94,141,240,.45)}
.btn-outline{
  border:1px solid rgba(94,141,240,.5);color:var(--gold-hi);
  background:rgba(94,141,240,.06);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  transition:all .25s var(--ease);
}
.btn-outline:hover{
  background:rgba(94,141,240,.15);color:var(--gold-hi);border-color:var(--gold-lt);
  transform:translateY(-2px);box-shadow:0 10px 32px rgba(94,141,240,.2);
}

/* ═══ TRUE GLASS CARD SYSTEM ════════════════════════════════════════
   Applied to every card-like component on every page. Gradient gold→blue
   border drawn with a masked ::before so it glows without extra markup. */
.d-card,.fw-card,.team-card,.a-card,.p-card,.sp-card,.book-card,
.matrix-cell,.mc,.law-box,.theory-box,.pilot-box,.pullquote,
.rrr-guarantee,.newsletter,.fw-img-card{
  position:relative;
  background:linear-gradient(150deg,rgba(26,38,66,.55) 0%,rgba(10,16,32,.38) 100%);
  backdrop-filter:blur(22px) saturate(1.5);
  -webkit-backdrop-filter:blur(22px) saturate(1.5);
  border:1px solid transparent;
  border-radius:var(--r);
  box-shadow:0 14px 44px rgba(1,4,10,.55), inset 0 1px 0 var(--glass-hi);
}
.d-card::before,.fw-card::before,.team-card::before,.a-card::before,
.p-card::before,.matrix-cell::before,.mc::before,.law-box::before,
.theory-box::before,.pilot-box::before,.rrr-guarantee::before,
.newsletter::before,.book-card::before,.sp-card::before{
  content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;
  background:linear-gradient(140deg,rgba(156,194,255,.5) 0%,rgba(110,168,255,.28) 45%,rgba(156,194,255,.1) 100%);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  pointer-events:none;opacity:.5;transition:opacity .35s var(--ease);
}
.d-card:hover::before,.fw-card:hover::before,.team-card:hover::before,
.a-card:hover::before,.p-card:hover::before{opacity:1}

.d-card,.fw-card,.team-card,.a-card,.p-card{
  transition:transform .35s var(--ease),box-shadow .35s var(--ease);
  will-change:transform;
}
.d-card:hover,.fw-card:hover,.team-card:hover,.a-card:hover,.p-card:hover{
  transform:translateY(-9px);
  box-shadow:
    0 30px 70px rgba(1,4,10,.7),
    0 0 56px rgba(94,141,240,.14),
    0 0 24px rgba(110,168,255,.1),
    inset 0 1px 0 rgba(255,255,255,.14);
}
/* cursor-tracked inner glow */
.d-card::after,.fw-card::after,.team-card::after,.p-card::after{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(440px 220px at var(--mx,50%) var(--my,0%), rgba(156,194,255,.13), transparent 65%);
  opacity:0;transition:opacity .35s var(--ease);
}
.d-card:hover::after,.fw-card:hover::after,.team-card:hover::after,.p-card:hover::after{opacity:1}

/* ── STATS — glass strip with gold numerals ────────────────────────── */
.stat-row{
  margin-top:3.25rem;gap:1px;border:1px solid rgba(255,255,255,.09);
  border-radius:var(--r);overflow:hidden;
  background:rgba(255,255,255,.03);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  box-shadow:0 14px 44px rgba(1,4,10,.5), inset 0 1px 0 var(--glass-hi);
}
.stat-cell{background:rgba(13,21,40,.45);border-right:1px solid rgba(255,255,255,.07);padding:2.3rem 2rem;transition:background .3s var(--ease)}
.stat-cell:hover{background:rgba(26,38,66,.55)}
.stat-num{
  font-size:2.6rem;
  background:linear-gradient(120deg,var(--gold-hi),var(--gold-lt) 55%,var(--gold));
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 0 22px rgba(94,141,240,.35));
}
.stat-label{color:var(--muted);font-size:.82rem;letter-spacing:.02em}

/* ── DELIVER ───────────────────────────────────────────────────────── */
.deliver-grid{gap:1.6rem;margin-top:3rem}
.d-card{padding:2.4rem;overflow:hidden}
.d-card-num{
  font-size:.74rem;color:var(--gold-lt);
  text-shadow:0 0 20px rgba(94,141,240,.55);letter-spacing:.18em;
}
.d-card h3{font-size:1.12rem;margin-bottom:.7rem}
.d-card p{color:#bac7dd;font-size:.93rem;line-height:1.75}

/* ── FRAMEWORKS ────────────────────────────────────────────────────── */
.fw-cards{gap:1.8rem;margin-top:3rem}
.fw-card{padding:2.9rem;overflow:hidden}
.fw-card .fw-tag{color:var(--gold-lt);letter-spacing:.2em}
.fw-card h3{font-size:1.38rem;margin-bottom:.9rem}
.fw-card p{color:#dde6f4;font-size:1rem;font-style:italic;line-height:1.7}
.fw-card .fw-arrow{color:var(--gold-hi);transition:transform .25s var(--ease);display:inline-block;margin-top:1.4rem}
.fw-card:hover .fw-arrow{transform:translateX(7px)}
#frameworks .container>p[style]{color:var(--muted) !important}
.fw-img-card{background:rgba(13,21,40,.5)}

/* ── TEAM ──────────────────────────────────────────────────────────── */
.team-grid{gap:1.8rem;margin-top:3rem}
.team-card{padding:2.7rem 2rem}
.team-av{
  background:
    radial-gradient(circle at 32% 28%, rgba(255,255,255,.16), transparent 45%),
    linear-gradient(135deg,#21335c, #101a33 60%, #2a2410);
  border:2px solid rgba(156,194,255,.5);
  box-shadow:0 0 30px rgba(94,141,240,.22), inset 0 2px 6px rgba(255,255,255,.08);
}
.team-card h3{font-size:1.02rem}
.team-card .team-role{
  color:var(--gold-lt);font-size:.74rem;letter-spacing:.14em;
  text-transform:uppercase;font-weight:700;margin-top:.3rem;
}

/* ── PILOT ─────────────────────────────────────────────────────────── */
.pilot-box{padding:3.2rem;margin-top:3rem}
.pilot-box p{color:#dde6f4;font-size:1.05rem;line-height:1.8}
.pilot-box p:first-of-type{font-size:1.18rem;color:#dde5f3}

/* ── ARTICLES — now true dark glass (inline #111 overridden) ───────── */
.article-grid{gap:1.8rem;margin:2.75rem 0 2.75rem}
.a-card{overflow:hidden}
.a-card .a-body span{color:var(--ink) !important}
.a-card .a-body span[style*="var(--blue)"]{color:var(--gold-hi) !important}
.a-img{height:165px;border-bottom:1px solid rgba(255,255,255,.07);opacity:.92;transition:opacity .3s,transform .5s var(--ease)}
.a-card:hover .a-img{opacity:1}
.a-meta{color:var(--muted) !important}
.a-body{padding:1.35rem}
#articles .container>p[style]{color:var(--muted) !important}

/* ── GUARANTEE ─────────────────────────────────────────────────────── */
.rrr-guarantee{border-left:3px solid var(--gold);padding:2.4rem 2.6rem}
.rrr-seal{
  background:rgba(8,14,28,.85);border:2px solid var(--gold-lt);
  box-shadow:0 0 34px rgba(94,141,240,.35), inset 0 0 16px rgba(94,141,240,.1);
}
.rrr-guarantee h3{font-size:1.12rem}
.rrr-guarantee .rrr-chk{color:var(--gold-lt)}
.rrr-guarantee p{color:var(--body)}
.rrr-guarantee summary{color:var(--gold-hi)}
.rrr-guarantee details p{color:var(--muted)}
.rrr-badge-inline{border-color:var(--gold);color:var(--gold-hi);background:rgba(94,141,240,.08)}

/* ── NEWSLETTER ────────────────────────────────────────────────────── */
.newsletter{padding:3.75rem 2.75rem}
.newsletter h2{color:var(--ink)}
.newsletter p{color:var(--body)}
.newsletter .nl-embed{box-shadow:0 10px 36px rgba(1,4,10,.5)}

/* ── PRODUCTS / SHOP (all pages) ───────────────────────────────────── */
.cat-label{color:var(--gold-lt);letter-spacing:.22em}
.cat-desc{color:var(--muted)}
.p-card{padding:1.75rem}
.p-card-premium{border:1px solid rgba(156,194,255,.45)}
.p-card-premium::before{opacity:.9}
.p-img,.sp-img,.book-img,.a-placeholder{
  background:linear-gradient(135deg,rgba(30,64,175,.3),rgba(94,141,240,.12));
  border:1px solid rgba(255,255,255,.06);
}
.p-card h3,.p-body h3,.sp-card h3,.book-card h4{color:var(--ink)}
.p-card p,.p-body p,.p-desc{color:#bac7dd}
.p-meta,.book-card .book-author{color:var(--muted)}
.p-price,.sp-card .sp-price{
  background:linear-gradient(120deg,var(--gold-hi),var(--gold));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 0 14px rgba(94,141,240,.3));
}
.badge-sold{background:rgba(185,28,28,.2);color:#fda4af;border:1px solid rgba(185,28,28,.4)}
.badge-soon{background:rgba(94,141,240,.14);color:var(--gold-hi);border:1px solid rgba(94,141,240,.35)}
.sp-card,.book-card{padding:1.4rem;text-align:center}
.book-card a{color:var(--gold-hi)}

/* ── FRAMEWORK / THEORY PAGES ──────────────────────────────────────── */
.matrix-grid{border:1px solid rgba(255,255,255,.08);border-radius:var(--r);background:rgba(255,255,255,.02)}
.matrix-cell,.mc{background:rgba(13,21,40,.45);border-right-color:rgba(255,255,255,.06);border-bottom-color:rgba(255,255,255,.06);border-radius:0}
.matrix-cell::before,.mc::before{display:none}
.matrix-label,.mc-tag{color:var(--gold-lt)}
.matrix-cell h3,.mc h3{color:var(--ink)}
.matrix-cell p,.mc p{color:#bac7dd}
.law-box{padding:2.75rem;margin:2.5rem 0}
.law-box blockquote{
  color:var(--gold-hi);border-left:3px solid var(--gold);
  font-size:1.35rem;line-height:1.6;
}
.law-box p{color:var(--body)}
.theory-box{padding:2.25rem;margin:2rem 0}
.theory-box p{color:var(--body)}
.pullquote{border-left:3px solid var(--gold);border-radius:0 14px 14px 0;padding:1.5rem 1.75rem}
.pullquote p{color:#d9e2f2;font-size:1.08rem}

/* ── ABOUT ─────────────────────────────────────────────────────────── */
.about-photo{border:1px solid rgba(156,194,255,.35);box-shadow:0 18px 56px rgba(1,4,10,.6), 0 0 40px rgba(94,141,240,.1)}
.about-photo img{border:none}
.map-wrap{
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 16px 48px rgba(1,4,10,.55);
  filter:saturate(.85) contrast(1.05);
}
.vid-wrap{border:1px solid rgba(255,255,255,.1);box-shadow:0 16px 48px rgba(1,4,10,.5)}

/* ── FOOTER ────────────────────────────────────────────────────────── */
footer{background:#03060c;border-top:1px solid rgba(94,141,240,.15)}
.footer-brand-text{color:var(--ink)}
.footer-brand-text span{color:var(--gold-lt)}
.footer-social a{border-color:rgba(255,255,255,.13);color:var(--muted);transition:all .25s var(--ease)}
.footer-social a:hover{
  border-color:var(--gold-lt);color:var(--gold-hi);
  box-shadow:0 0 22px rgba(94,141,240,.25);transform:translateY(-2px);
}
.footer-bottom{border-top:1px solid rgba(255,255,255,.06)}
.footer-copy,.footer-legal a{color:var(--muted)}
.footer-legal a:hover{color:var(--gold-hi)}

/* ── THE GATE — full-page loading screen ──────────────────────────── */
body.pr-locked{overflow:hidden}
#pr-gate{
  position:fixed;inset:0;z-index:400;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:3.2rem;padding:24px;
  background:radial-gradient(circle at 50% 34%, #0a1428 0%, #03060d 68%, #010205 100%);
  transition:opacity 1.15s var(--ease),transform 1.15s var(--ease);
}
#pr-gate.pr-open{opacity:0;transform:scale(1.07);pointer-events:none}
#pr-gate canvas{
  display:block;
  filter:drop-shadow(0 50px 110px rgba(80,140,255,.45)) drop-shadow(0 0 80px rgba(94,141,240,.12));
}
#pr-gate .pr-unlock-btn{
  opacity:0;transform:translateY(20px);
  transition:opacity 1s var(--ease),transform 1s var(--ease);
}
#pr-gate.pr-cta .pr-unlock-btn{opacity:1;transform:none}

/* the unlock button — big, pulsing, impossible to miss */
.pr-unlock-btn{
  font-size:1.02rem;padding:21px 46px;max-width:min(92vw,640px);text-align:center;
  animation:pr-pulse 2.6s ease-in-out infinite;
}
@keyframes pr-pulse{
  0%,100%{box-shadow:0 5px 26px rgba(94,141,240,.33), inset 0 1px 0 rgba(255,255,255,.55)}
  50%{box-shadow:0 6px 52px rgba(94,141,240,.6), 0 0 90px rgba(94,141,240,.22), inset 0 1px 0 rgba(255,255,255,.6)}
}

/* ── 3D LOGO CANVAS (JS-injected over the hidden static img) ──────── */
.pr-logo-3d{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  pointer-events:none;
  filter:drop-shadow(0 40px 90px rgba(80,140,255,.45)) drop-shadow(0 0 60px rgba(94,141,240,.15));
}

/* ── HEADING LEGIBILITY — style.css hardcodes color:#111 on several
   card headings; on dark glass that renders invisible (seen on the
   framework cards). Blanket override ends this entire bug class. */
.d-card h3,.fw-card h3,.team-card h3,.pilot-box h3,.rrr-guarantee h3,
.matrix-cell h3,.mc h3,.theory-box h3,.law-box h3,.sp-card h3,
.p-card h3,.p-body h3,.book-card h4,.newsletter h2{color:var(--ink) !important}

/* ── AMBIENT LOGO BACKDROP — behind the words, never in the way ────── */
.pr-bg-logo{
  position:fixed;top:6vh;right:-9vw;z-index:1;
  opacity:.14;pointer-events:none;
  filter:drop-shadow(0 0 90px rgba(110,168,255,.3));
}
@media(max-width:1100px){.pr-bg-logo{display:none}}

/* ── HERO KICKER + REPEATED CTAs (conversion layer, JS-injected) ───── */
.pr-kicker{
  color:var(--gold-hi);font-size:.95rem;font-weight:600;letter-spacing:.02em;
  margin:0 0 1.3rem;opacity:0;transform:translateY(20px);
  transition:opacity .9s var(--ease),transform .9s var(--ease);
}
#hero.pr-in .pr-kicker{opacity:1;transform:none;transition-delay:.46s}
.pr-cta-repeat{margin-top:3.25rem}

/* ── MOBILE MENU — big targets, smooth open, readable ──────────────── */
@media(max-width:768px){
  .hamburger{padding:10px}
  .hamburger span{width:24px;height:2.5px;background:#fff}
  .nav-links.open{
    background:rgba(4,7,14,.98);
    backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
    border-bottom:1px solid rgba(94,141,240,.3);
    padding:.75rem 1.5rem 1.5rem;
    box-shadow:0 30px 60px rgba(0,0,0,.6);
    animation:pr-menu-in .28s var(--ease);
  }
  .nav-links.open>li>a{
    min-height:48px;display:flex;align-items:center;
    font-size:1.02rem;padding:12px 6px;color:#dce5f5;
    border-bottom:1px solid rgba(255,255,255,.07);
  }
  .nav-links.open>li>a.nav-cta{justify-content:center;margin-top:.85rem;border-bottom:none;min-height:52px}
  .has-dd .dd a{min-height:44px;display:flex;align-items:center;font-size:.95rem;color:#bac7dd}
}
@keyframes pr-menu-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}

/* ── SCROLL REVEALS ────────────────────────────────────────────────── */
.pr-reveal{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.pr-reveal.pr-in{opacity:1;transform:none}

/* ── STICKY MOBILE CTA ─────────────────────────────────────────────── */
.pr-sticky-cta{
  position:fixed;left:0;right:0;bottom:0;z-index:180;
  padding:.8rem 1rem calc(.8rem + env(safe-area-inset-bottom));
  background:rgba(5,8,15,.92);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-top:1px solid rgba(94,141,240,.3);
  display:none;transform:translateY(110%);
  transition:transform .45s var(--ease);
}
.pr-sticky-cta.pr-show{transform:none}
.pr-sticky-cta .btn{display:block;text-align:center;width:100%;padding:15px 20px;font-size:.9rem}
@media(max-width:768px){.pr-sticky-cta{display:block}}

/* ── 2D FALLBACK GATE — flat CSS spin, runs on ANY machine ─────────── */
#pr-gate{perspective:900px}
.pr-gate-2d{
  height:min(46vh,440px);width:auto;
  filter:drop-shadow(0 40px 90px rgba(80,140,255,.45));
  animation:pr-spin-in 2.2s cubic-bezier(.16,1,.3,1) 1,
            pr-spin-loop 9s linear 2.2s infinite;
}
@keyframes pr-spin-in{from{transform:rotateY(-810deg) scale(.5)}to{transform:rotateY(0deg) scale(1)}}
@keyframes pr-spin-loop{from{transform:rotateY(0deg)}to{transform:rotateY(360deg)}}

/* ── ORO soundtrack controls ───────────────────────────────────────── */
.pr-music-dock{
  appearance:none;cursor:pointer;position:fixed;left:18px;bottom:18px;z-index:190;
  width:46px;height:46px;border-radius:50%;
  border:1px solid rgba(156,194,255,.35);
  background:rgba(5,8,15,.85);color:#9cc2ff;font-size:1.1rem;
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 8px 28px rgba(1,4,10,.5);
  transition:all .25s var(--ease);
}
.pr-music-dock:hover{border-color:#9cc2ff;color:#eef4ff}
.pr-music-dock.pr-on{
  background:linear-gradient(135deg,#dce9ff,#9cc2ff);color:#0a1424;
  box-shadow:0 0 26px rgba(110,168,255,.5);
  animation:pr-dock-spin 4s linear infinite;
}
@keyframes pr-dock-spin{to{transform:rotate(360deg)}}
.pr-music-dock.pr-muted{opacity:.55;text-decoration:line-through}
.pr-spotify-link{position:fixed;left:74px;bottom:24px;z-index:190;
  font:600 .74rem/1 var(--font,Inter,sans-serif);letter-spacing:.04em;
  color:#9cc2ff;text-decoration:none;padding:7px 12px;border-radius:999px;
  border:1px solid rgba(156,194,255,.28);background:rgba(5,8,15,.8);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  opacity:.85;transition:all .25s cubic-bezier(.22,.61,.36,1)}
.pr-spotify-link:hover{opacity:1;color:#dce9ff;border-color:#9cc2ff;
  box-shadow:0 0 18px rgba(110,168,255,.2)}
@media(max-width:560px){.pr-spotify-link{display:none}}

/* ── in-dark rhythm: alt sections rise a step lighter (no white) ───── */
section.alt{
  background:
    radial-gradient(1100px 480px at 88% -10%, rgba(36,81,230,.2), transparent 60%),
    linear-gradient(180deg, rgba(30,48,90,.35), rgba(13,21,40,.5)),
    #0c1526;
  border-top:1px solid rgba(156,194,255,.1);
  border-bottom:1px solid rgba(156,194,255,.1);
}

/* ── CUBA GALLERY ──────────────────────────────────────────────────── */
.cuba-gallery{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin-top:2.5rem;
}
.cuba-shot{
  display:block;border-radius:14px;overflow:hidden;
  border:1px solid rgba(156,194,255,.18);
  box-shadow:0 14px 40px rgba(1,4,10,.5);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease);
}
.cuba-shot img{width:100%;height:240px;object-fit:cover;display:block;
  transition:transform .6s var(--ease)}
.cuba-shot:hover{transform:translateY(-6px);
  box-shadow:0 24px 60px rgba(1,4,10,.65), 0 0 40px rgba(110,168,255,.15)}
.cuba-shot:hover img{transform:scale(1.05)}
@media(max-width:900px){.cuba-gallery{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.cuba-gallery{grid-template-columns:1fr}.cuba-shot img{height:280px}}

/* ── RESPONSIVE / MOTION SAFETY ────────────────────────────────────── */
@media(max-width:768px){
  :root{--gap:96px}
  #hero{min-height:auto;padding-top:124px;padding-bottom:84px}
  .prose p:first-of-type{font-size:1.16rem}
  .pr-orb{display:none}
}
@media (prefers-reduced-motion: reduce){
  .pr-reveal,.hero-eyebrow,.hero-headline,.hero-sub,.hero-actions,.hero-logo{
    opacity:1 !important;transform:none !important;transition:none !important;
  }
  .pr-hero-canvas,.pr-orb{display:none}
  *{scroll-behavior:auto !important}
}

