/* GLORIA WORLD-VISION — design system
   OLED black, Clash Display + General Sans (self-hosted), double-bezel shells,
   island nav, fluid motion. No inline SVG anywhere, shapes are CSS. */

@font-face{font-family:'Clash Display';src:url('../assets/fonts/clash-display-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Clash Display';src:url('../assets/fonts/clash-display-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Clash Display';src:url('../assets/fonts/clash-display-700.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'General Sans';src:url('../assets/fonts/general-sans-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'General Sans';src:url('../assets/fonts/general-sans-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'General Sans';src:url('../assets/fonts/general-sans-600.woff2') format('woff2');font-weight:600;font-display:swap}

:root{
  --bg:#050505; --ink:#f4f4f2; --mut:#9b9d9e; --dim:#5e6163;
  --hair:rgba(255,255,255,.08); --hair2:rgba(255,255,255,.14);
  --shell:rgba(255,255,255,.04); --core:#0b0c0d;
  --g1:#34B233; --g2:#FFD100; --g3:#F58220; --g4:#EC008C; --g5:#00AEEF; --g6:#92278F; --g7:#2E3192;
  --amber:#ff9a3c;
  --ease:cubic-bezier(.32,.72,0,1); --ease2:cubic-bezier(.16,1,.3,1);
  --disp:'Clash Display',sans-serif; --body:'General Sans',sans-serif;
  --maxw:1280px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scrollbar-width:thin;scrollbar-color:#2a2c2e transparent}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{
  background:var(--bg);color:var(--ink);font-family:var(--body);
  font-size:16px;line-height:1.6;overflow-x:hidden;
  -webkit-font-smoothing:antialiased;cursor:none;
}
@media(hover:none){body{cursor:auto}}
a{color:inherit;text-decoration:none}
::selection{background:var(--g3);color:#050505}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,4vw,56px)}
h1,h2,h3,.disp{font-family:var(--disp);font-weight:600;line-height:1.02;letter-spacing:-.015em}

/* ---------- ambient layers ---------- */
#gl{position:fixed;inset:0;width:100vw;height:100dvh;z-index:0;opacity:0;transition:opacity 1.4s var(--ease)}
body.gl-ready #gl{opacity:1}
.grain{position:fixed;inset:-50%;z-index:60;pointer-events:none;opacity:.055;
  background:url('../assets/noise.png') repeat;background-size:110px;
  animation:grain 9s steps(6) infinite}
@keyframes grain{
  0%,100%{transform:translate(0,0)}16%{transform:translate(-6%,4%)}33%{transform:translate(4%,-7%)}
  50%{transform:translate(-4%,6%)}66%{transform:translate(7%,-3%)}83%{transform:translate(-5%,-6%)}}
.mesh{position:fixed;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:0;opacity:.5}
.mesh-a{width:56vw;height:56vw;right:-18vw;top:-16vw;background:radial-gradient(circle,rgba(245,130,32,.14),transparent 62%)}
.mesh-b{width:48vw;height:48vw;left:-16vw;bottom:-14vw;background:radial-gradient(circle,rgba(46,49,146,.16),transparent 62%)}

/* ---------- cursor ---------- */
.cursor,.cursor-ring{position:fixed;top:0;left:0;pointer-events:none;z-index:120;border-radius:50%}
.cursor{width:6px;height:6px;background:var(--ink);transform:translate(-50%,-50%)}
.cursor-ring{width:34px;height:34px;border:1px solid rgba(255,255,255,.35);
  transform:translate(-50%,-50%);transition:width .45s var(--ease2),height .45s var(--ease2),opacity .3s}
body.cursor-big .cursor-ring{width:64px;height:64px;opacity:.9}
@media(hover:none){.cursor,.cursor-ring{display:none}}

/* ---------- preloader ---------- */
.loader{position:fixed;inset:0;z-index:200;background:#050505;display:flex;align-items:center;justify-content:center}
.loader-inner{text-align:center}
.loader-word{font-family:var(--disp);font-weight:700;font-size:clamp(40px,8vw,96px);letter-spacing:.08em;
  background:linear-gradient(90deg,#fff 40%,#6b6d6f);-webkit-background-clip:text;background-clip:text;color:transparent}
.loader-count{font-family:var(--body);font-weight:500;color:var(--dim);font-size:14px;letter-spacing:.3em;margin-top:18px}
.loader-stripes{position:absolute;left:0;right:0;bottom:0;top:0;display:flex;z-index:-1;opacity:.13}
.loader-stripes i{flex:1;transform:scaleY(0);transform-origin:bottom}
.loader-stripes i:nth-child(1){background:var(--g1)} .loader-stripes i:nth-child(2){background:var(--g2)}
.loader-stripes i:nth-child(3){background:var(--g3)} .loader-stripes i:nth-child(4){background:var(--g4)}
.loader-stripes i:nth-child(5){background:var(--g5)} .loader-stripes i:nth-child(6){background:var(--g6)}
.loader-stripes i:nth-child(7){background:var(--g7)}

/* ---------- island nav ---------- */
.nav{position:fixed;top:22px;left:50%;transform:translateX(-50%);z-index:100;
  display:flex;align-items:center;gap:26px;
  background:rgba(10,10,11,.55);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
  border:1px solid var(--hair);border-radius:999px;padding:10px 12px 10px 18px;
  transition:transform .6s var(--ease),box-shadow .6s var(--ease),background .4s}
.nav.hidden{transform:translate(-50%,-140%)}
.nav-logo{display:flex;align-items:center;gap:11px}
.nav-mark{display:flex;gap:2px;height:16px;align-items:flex-end}
.nav-mark i{width:3px;border-radius:2px;height:100%;display:block}
.nav-mark i:nth-child(1){background:var(--g1);height:60%} .nav-mark i:nth-child(2){background:var(--g2);height:85%}
.nav-mark i:nth-child(3){background:var(--g3);height:70%} .nav-mark i:nth-child(4){background:var(--g4);height:100%}
.nav-mark i:nth-child(5){background:var(--g5);height:70%} .nav-mark i:nth-child(6){background:var(--g6);height:85%}
.nav-mark i:nth-child(7){background:var(--g7);height:60%}
.nav-name{font-family:var(--disp);font-weight:700;font-size:15px;letter-spacing:.14em}
.nav-links{display:flex;gap:22px}
.nav-links a{font-size:13.5px;font-weight:500;color:var(--mut);transition:color .35s var(--ease)}
.nav-links a:hover{color:var(--ink)}
.nav-cta{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:#0a0a0a;
  border-radius:999px;padding:8px 8px 8px 16px;font-size:13.5px;font-weight:600;
  transition:transform .5s var(--ease)}
.nav-cta:hover{transform:scale(1.03)}
.nav-cta:active{transform:scale(.97)}
.cta-orb{width:26px;height:26px;border-radius:50%;background:rgba(0,0,0,.1);display:inline-flex;align-items:center;justify-content:center;
  transition:transform .5s var(--ease)}
.cta-orb.dark{background:rgba(0,0,0,.14)}
.btn:hover .cta-orb,.nav-cta:hover .cta-orb{transform:translate(2px,-2px) scale(1.06)}
.arr{width:8px;height:8px;border-top:1.6px solid currentColor;border-right:1.6px solid currentColor;display:block;transform:rotate(45deg) translate(-1px,1px);color:#0a0a0a}
.btn-line .arr{color:var(--ink)}
.nav-burger{display:none;background:none;border:0;width:40px;height:40px;position:relative;cursor:none}
.nav-burger span{position:absolute;left:10px;right:10px;height:1.6px;background:var(--ink);
  transition:transform .5s var(--ease),top .5s var(--ease)}
.nav-burger span:nth-child(1){top:16px}
.nav-burger span:nth-child(2){top:23px}
body.menu-open .nav-burger span:nth-child(1){top:19.5px;transform:rotate(45deg)}
body.menu-open .nav-burger span:nth-child(2){top:19.5px;transform:rotate(-45deg)}

/* ---------- fullscreen menu ---------- */
.menu{position:fixed;inset:0;z-index:90;background:rgba(5,5,5,.86);
  backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);
  display:flex;flex-direction:column;justify-content:center;
  opacity:0;pointer-events:none;transition:opacity .6s var(--ease)}
body.menu-open .menu{opacity:1;pointer-events:auto}
.menu-links{display:flex;flex-direction:column;gap:6px;padding:0 clamp(24px,8vw,120px)}
.menu-link{font-family:var(--disp);font-weight:600;font-size:clamp(40px,9vw,88px);line-height:1.12;
  color:var(--ink);display:flex;align-items:baseline;gap:22px;
  transform:translateY(60px);opacity:0;transition:transform .8s var(--ease2),opacity .8s var(--ease2),color .3s}
.menu-link em{font-family:var(--body);font-style:normal;font-size:13px;color:var(--dim);letter-spacing:.2em}
.menu-link:hover{color:var(--amber)}
body.menu-open .menu-link{transform:none;opacity:1}
body.menu-open .menu-link:nth-child(1){transition-delay:.10s}
body.menu-open .menu-link:nth-child(2){transition-delay:.16s}
body.menu-open .menu-link:nth-child(3){transition-delay:.22s}
body.menu-open .menu-link:nth-child(4){transition-delay:.28s}
.menu-foot{position:absolute;bottom:34px;left:0;right:0;display:flex;gap:26px;justify-content:center;
  color:var(--dim);font-size:13px;letter-spacing:.08em}

/* ---------- shared ---------- */
.pill{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--hair2);border-radius:999px;
  padding:7px 14px;font-size:10.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--mut)}
.pill.sm{padding:6px 12px;font-size:10px}
.dotstripe{width:14px;height:8px;border-radius:2px;background:linear-gradient(90deg,var(--g1),var(--g2),var(--g3),var(--g4),var(--g5),var(--g6),var(--g7))}
.eyebrow-row{display:flex;align-items:center;gap:18px;margin-bottom:clamp(28px,4vw,44px)}
.eyebrow-row .rule{flex:1;height:1px;background:var(--hair)}
.hud-count{font-size:12px;color:var(--dim);letter-spacing:.18em}
.hud-count b{color:var(--ink);font-weight:600}
.h2{font-size:clamp(34px,5.6vw,64px);font-weight:600}
.btn{display:inline-flex;align-items:center;gap:12px;border-radius:999px;font-weight:600;font-size:15px;
  padding:14px 15px 14px 24px;transition:transform .5s var(--ease),background .4s var(--ease),border-color .4s}
.btn:active{transform:scale(.97)}
.btn-solid{background:var(--ink);color:#0a0a0a}
.btn-line{border:1px solid var(--hair2);color:var(--ink);padding:14px 24px;background:rgba(255,255,255,.02)}
.btn-line:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.3)}
/* double bezel */
.shell{background:var(--shell);border:1px solid var(--hair);border-radius:28px;padding:7px}
.shell>[class$="-core"],.shell>.case-core,.shell>.scard-core,.shell>.proc-core{
  background:var(--core);border-radius:21px;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.05)}
section{position:relative;z-index:5}

/* ---------- hero ---------- */
.hero{min-height:100dvh;display:flex;flex-direction:column;justify-content:flex-end;
  padding:0 clamp(20px,4vw,56px) 0;position:relative;z-index:5}
.hero-inner{max-width:var(--maxw);margin:0 auto;width:100%;padding-top:18dvh}
.hero .pill{margin-bottom:clamp(22px,3vw,34px)}
.hero-h{font-size:clamp(46px,8.6vw,124px);font-weight:600;letter-spacing:-.02em}
.hero-h em{font-style:normal;background:linear-gradient(92deg,var(--g2),var(--g3) 30%,var(--g4) 60%,var(--g5));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.hl{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}
.hl-in{display:block;transform:translateY(112%)}
.hero-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;
  margin-top:clamp(34px,5vw,60px);padding-bottom:2px}
.hero-sub{max-width:430px;color:var(--mut);font-size:15.5px}
.hero-ctas{display:flex;gap:14px;flex-shrink:0}
.hero-meta{max-width:var(--maxw);margin:0 auto;width:100%;
  display:flex;justify-content:space-between;align-items:center;
  border-top:1px solid var(--hair);margin-top:clamp(30px,4vw,48px);padding:20px 0 26px;
  font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--dim)}
.hero-scroll{display:flex;flex-direction:column;align-items:center;gap:8px}
.scroll-line{width:1px;height:30px;background:linear-gradient(var(--mut),transparent);display:block;
  animation:drip 2.2s var(--ease) infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}
  55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* ---------- marquee ---------- */
.marquee{position:relative;z-index:5;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);
  padding:26px 0;overflow:hidden;background:rgba(5,5,5,.5)}
.marquee-track{display:flex;align-items:center;gap:38px;width:max-content;will-change:transform}
.marquee-track span{font-family:var(--disp);font-weight:500;font-size:clamp(20px,2.6vw,30px);color:var(--dim);white-space:nowrap}
.mq-dot{width:8px;height:8px;border-radius:50%;background:var(--g3);flex-shrink:0}

/* ---------- manifesto ---------- */
.manifesto{padding:clamp(120px,16vw,220px) 0}
.manifesto-text{font-family:var(--disp);font-weight:500;font-size:clamp(26px,4.3vw,52px);line-height:1.22;letter-spacing:-.01em;max-width:1080px}
.manifesto-text .w{opacity:.13;transition:none}

/* ---------- 3D chapters (pinned) ---------- */
.chapter{position:relative;z-index:4;height:280vh}
.chapter.ch-truck{height:400vh}
.chapter.ch-outro{height:260vh}
.story-pin::after{content:"";position:absolute;left:0;right:0;bottom:0;height:44vh;
  background:linear-gradient(180deg,transparent,rgba(5,5,5,.55) 45%,rgba(5,5,5,.92));pointer-events:none}
.story-hud{position:relative;z-index:2}
.story-pin{position:sticky;top:0;height:100dvh;display:flex;align-items:flex-end}
.story-hud{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,4vw,56px) clamp(28px,4vw,52px)}
.story-hud .eyebrow-row{margin-bottom:22px}
.beats{position:relative;min-height:128px}
.beat{position:absolute;inset:0;max-width:520px;opacity:0;transform:translateY(24px);
  transition:opacity .6s var(--ease),transform .6s var(--ease);pointer-events:none}
.beat.is-on{opacity:1;transform:none}
.beat h3{font-size:clamp(26px,3.8vw,44px);margin-bottom:10px;text-shadow:0 2px 22px rgba(0,0,0,.9)}
.beat p{color:#c9cbcd;font-size:15.5px;max-width:460px;text-shadow:0 1px 12px rgba(0,0,0,.9)}

/* ---------- work ---------- */
.work{padding-top:clamp(110px,14vw,190px);position:relative;z-index:5;background:linear-gradient(180deg,transparent,rgba(5,5,5,.9) 12%)}
.work-head{margin-bottom:clamp(30px,4vw,54px)}
.work-pin{position:relative}
.work-track{display:flex;gap:clamp(18px,2.4vw,30px);padding:0 clamp(20px,4vw,56px);width:max-content}
.case{width:clamp(320px,44vw,600px);flex-shrink:0}
.case-core{overflow:hidden}
.case-art{height:clamp(240px,30vw,400px);position:relative;border-radius:21px 21px 0 0;overflow:hidden}
.case-art::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;z-index:2;
  background:linear-gradient(90deg,var(--g1),var(--g2),var(--g3),var(--g4),var(--g5),var(--g6),var(--g7))}
.art-a{background:radial-gradient(130% 120% at 20% 0%,rgba(52,178,51,.25),transparent 52%),radial-gradient(120% 130% at 90% 100%,rgba(245,130,32,.18),transparent 55%),#0d0f10}
.art-b{background:radial-gradient(130% 120% at 80% 0%,rgba(0,174,239,.22),transparent 52%),radial-gradient(120% 130% at 10% 100%,rgba(236,0,140,.16),transparent 55%),#0d0f10}
.art-c{background:radial-gradient(130% 120% at 50% 0%,rgba(146,39,143,.24),transparent 55%),#0d0f10}
.art-d{background:radial-gradient(130% 120% at 15% 10%,rgba(255,209,0,.16),transparent 50%),radial-gradient(110% 120% at 85% 90%,rgba(46,49,146,.24),transparent 55%),#0d0f10}
.art-e{background:radial-gradient(130% 120% at 85% 15%,rgba(245,130,32,.2),transparent 52%),#0d0f10}
.ph-tag{position:absolute;top:14px;right:14px;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--dim);border:1px dashed var(--hair2);border-radius:6px;padding:5px 9px}
.case-meta{padding:22px 24px 26px}
.case-tag{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--amber);font-weight:600}
.case-meta h3{font-size:clamp(20px,2.2vw,27px);margin:10px 0 8px}
.case-meta p{color:var(--mut);font-size:14px;max-width:420px}

/* ---------- services stack ---------- */
.services{padding-top:clamp(120px,15vw,200px)}
.stack{margin-top:clamp(26px,3vw,40px);display:flex;flex-direction:column;gap:18px}
.scard{position:sticky;will-change:transform}
.scard:nth-child(1){top:calc(12dvh + 0px)} .scard:nth-child(2){top:calc(12dvh + 26px)}
.scard:nth-child(3){top:calc(12dvh + 52px)} .scard:nth-child(4){top:calc(12dvh + 78px)}
.scard:nth-child(5){top:calc(12dvh + 104px)} .scard:nth-child(6){top:calc(12dvh + 130px)}
.scard:nth-child(7){top:calc(12dvh + 156px)}
.scard-core{display:flex;gap:clamp(18px,3vw,44px);align-items:flex-start;padding:clamp(24px,3.4vw,44px)}
.s-no{font-family:var(--disp);font-weight:600;font-size:13px;color:var(--dim);border:1px solid var(--hair2);
  border-radius:999px;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.scard-core h3{font-size:clamp(22px,3vw,34px);margin-bottom:8px}
.scard-core p{color:var(--mut);font-size:15px;max-width:560px}

/* ---------- stats ---------- */
.stats{padding:clamp(110px,14vw,180px) 0 clamp(60px,8vw,90px)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--hair);
  border:1px solid var(--hair);border-radius:24px;overflow:hidden}
.stat{background:#070808;padding:clamp(28px,3.4vw,46px) 20px;text-align:center}
.stat-n{font-family:var(--disp);font-weight:600;font-size:clamp(34px,5vw,62px);display:block;
  background:linear-gradient(180deg,#fff,#9a9c9e);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat-l{color:var(--dim);font-size:12px;letter-spacing:.08em;margin-top:8px;display:block}

/* ---------- process ---------- */
.process{padding:clamp(60px,8vw,100px) 0 clamp(110px,14vw,170px)}
.proc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.proc-core{padding:clamp(24px,2.6vw,36px);min-height:210px;display:flex;flex-direction:column;gap:12px}
.proc-core h3{font-size:21px}
.proc-core p{color:var(--mut);font-size:14px}
.proc-core .s-no{margin-bottom:6px}

/* ---------- cta ---------- */
.cta{padding:clamp(130px,17vw,230px) 0;text-align:center;position:relative;overflow:hidden}
.cta::before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);
  width:min(900px,90vw);height:1px;background:linear-gradient(90deg,transparent,var(--hair2),transparent)}
.cta-inner{display:flex;flex-direction:column;align-items:center;gap:26px}
.cta-h{font-size:clamp(40px,7.6vw,96px);font-weight:600}
.cta-btns{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin-top:8px}

/* ---------- footer ---------- */
footer{position:relative;z-index:5;background:#040404;border-top:1px solid var(--hair);overflow:hidden}
.foot-giant{font-family:var(--disp);font-weight:700;font-size:clamp(90px,21vw,320px);line-height:.84;
  text-align:center;letter-spacing:.02em;margin-top:clamp(30px,5vw,60px);
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.015));
  -webkit-background-clip:text;background-clip:text;color:transparent;user-select:none}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:34px;padding-top:clamp(40px,6vw,70px);padding-bottom:50px}
.fcol h4{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);margin-bottom:14px;font-weight:600}
.fcol a,.fcol p{display:block;color:var(--mut);font-size:14.5px;margin-bottom:9px;transition:color .3s}
.fcol a:hover{color:var(--ink)}
.brandcol p{max-width:300px}
.foot-stripe{display:flex;height:5px}
.foot-stripe i{flex:1}
.foot-stripe i:nth-child(1){background:var(--g1)} .foot-stripe i:nth-child(2){background:var(--g2)}
.foot-stripe i:nth-child(3){background:var(--g3)} .foot-stripe i:nth-child(4){background:var(--g4)}
.foot-stripe i:nth-child(5){background:var(--g5)} .foot-stripe i:nth-child(6){background:var(--g6)}
.foot-stripe i:nth-child(7){background:var(--g7)}
.foot-legal{display:flex;justify-content:space-between;padding-top:22px;padding-bottom:26px;color:var(--dim);font-size:12.5px}

/* ---------- reveal defaults ---------- */
.reveal-load{opacity:0;transform:translateY(34px)}
[data-rv]{opacity:0;transform:translateY(56px)}

/* ---------- responsive ---------- */
@media(max-width:1023px){
  .nav-links,.nav-cta{display:none}
  .nav-burger{display:block}
  .nav{gap:10px;padding:8px 8px 8px 16px}
}
@media(max-width:767px){
  .work-pin{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .work-pin::-webkit-scrollbar{display:none}
  .hero-foot{flex-direction:column;align-items:flex-start;gap:26px}
  .hero-inner{padding-top:20dvh}
  .hero-meta span:first-child{display:none}
  .stats-grid{grid-template-columns:1fr 1fr;border-radius:20px}
  .proc-grid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr;gap:26px}
  .brandcol{grid-column:1/-1}
  .case{width:min(84vw,420px)}
  .scard-core{flex-direction:column;gap:14px}
  .chapter{height:240vh}
  .chapter.ch-truck{height:340vh}
  .beat{max-width:100%}
  .menu-foot{flex-direction:column;align-items:center;gap:8px}
  .cta-btns .btn{width:100%;justify-content:center}
}
@media(max-width:479px){
  .hero-ctas{flex-direction:column;width:100%}
  .hero-ctas .btn{width:100%;justify-content:center}
  .hero-h{font-size:clamp(42px,12.5vw,56px)}
}
@media(prefers-reduced-motion:reduce){
  .grain{animation:none}
  .scroll-line{animation:none}
  .hl-in{transform:none}
  .reveal-load,[data-rv]{opacity:1;transform:none}
  .manifesto-text .w{opacity:1}
}
