/* Shared design kit lifted from the new homepage so subpages speak the same visual language.
   Sections: tokens/type/buttons/grain/gradients/icons/shot/reveal + glass nav, hero, metrics,
   feature track cards, FAQ, final CTA. */

@font-face{font-family:"Mozilla Text";src:url("https://cdn.prod.website-files.com/68d4ff5decdc987146c7f056/6af263c649be30db54bdc9a0_w21-v3-brand-MozillaText-VariableFont_wght.ttf") format("truetype");font-weight:200 700;font-display:swap;}
:root{
  --g:#14CB62; --g-deep:#0E9E4C; --g-text:#0A6E35; --forest:#04210F; --ink:#0A0A0A; --ink2:#2A332E;
  --slate:#5A645E; --mute:#8A928C; --panel:#FAFBFA; --line:#F0F2EF; --line2:#E3E6E1;
  --ease:cubic-bezier(.2,.7,.2,1); --r:32px;
  --display:"Mozilla Text", Inter, system-ui, sans-serif;
  --body:Inter, system-ui, -apple-system, sans-serif;
  --emerald:#14CB62; --emerald-text:#0A6E35; --ink-2:#2A332E; --mono:"JetBrains Mono", ui-monospace, monospace;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:#fff;color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;
  -webkit-font-smoothing:antialiased;}
a{color:var(--g-text);}
a:hover:not(.proof):not(.wcard):not(.rcard):not(.nx):not(.rep){color:var(--forest);}
img{display:block;max-width:100%;}
.wrap{max-width:1280px;margin:0 auto;padding:0 40px;}
.panel{margin:12px 16px;border-radius:36px;}
section{scroll-margin-top:96px;}

/* type */
.eyebrow{margin:0;font-size:12.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--g-deep);}
.h1{margin:0;font-family:var(--display);font-weight:300;font-size:clamp(44px,5.6vw,72px);line-height:1.03;letter-spacing:-.032em;text-wrap:balance;}
.h2{margin:0;font-family:var(--display);font-weight:300;font-size:clamp(34px,4vw,54px);line-height:1.06;letter-spacing:-.028em;text-wrap:balance;}
.h3{margin:0;font-family:var(--display);font-weight:400;font-size:24px;line-height:1.2;letter-spacing:-.018em;}
.h2 em,.h1 em{font-style:normal;color:var(--g-deep);}
.on-deep .h2 em{color:#9DF2C2;}
.on-bright .h2 em,.on-bright .h3 em{color:#fff;}
.lead{margin:0;font-size:18px;line-height:1.6;color:var(--slate);max-width:60ch;text-wrap:pretty;}
.head{display:flex;flex-direction:column;gap:18px;margin:0 0 48px;max-width:820px;}
.head.row{max-width:none;flex-direction:row;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:24px;}

/* buttons */
.ctas{display:flex;gap:10px;flex-wrap:wrap;}
.btn{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:15px;font-weight:500;
  padding:15px 26px;border-radius:999px;background:var(--g);color:var(--forest);
  transition:box-shadow .16s var(--ease),transform .1s var(--ease),background .16s var(--ease);}
.btn:hover{color:var(--forest);box-shadow:0 0 0 6px rgba(20,203,98,.18);}
.btn:active{transform:scale(.98);}
.btn.ghost{background:#fff;color:var(--ink);border:1px solid #C9D1CB;padding:14px 24px;}
.btn.ghost:hover{box-shadow:none;border-color:var(--ink);}
.btn.dark{background:var(--forest);color:#fff;}
.btn.dark:hover{color:#fff;box-shadow:0 0 0 6px rgba(4,33,15,.14);}
.btn.white{background:#fff;color:var(--forest);}
.btn.line-w{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55);padding:14px 24px;}
.btn.line-w:hover{color:#fff;border-color:#fff;box-shadow:none;}
.btn.line-d{background:transparent;color:var(--forest);border:1px solid rgba(4,33,15,.35);padding:14px 24px;}
.btn.line-d:hover{border-color:var(--forest);box-shadow:none;}
.textlink{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:500;color:var(--g-text);text-decoration:none;}
.textlink:hover{color:var(--forest);}

/* grain */
.grain{position:relative;isolation:isolate;overflow:hidden;}
.grain::after{content:"";position:absolute;inset:0;background:url("https://cdn.prod.website-files.com/68d4ff5decdc987146c7f056/6af263c7159f1358d2f6b641_w21-v3-brand-grain.png") 0 0/160px;
  opacity:.55;mix-blend-mode:overlay;pointer-events:none;z-index:1;}
.grain.soft::after{opacity:.22;mix-blend-mode:multiply;}
.grain > *{position:relative;z-index:2;}
.g-deep{background:radial-gradient(90% 80% at 6% -10%,rgba(141,236,182,.5),rgba(141,236,182,0) 55%),linear-gradient(168deg,#12A855 0%,#0B7A3D 55%,#075C2D 100%);color:#fff;}
.g-bright{background:radial-gradient(80% 90% at 100% 0%,rgba(214,250,228,.85),rgba(214,250,228,0) 60%),linear-gradient(150deg,#14CB62 0%,#3FD883 55%,#9BEABE 100%);color:var(--forest);}
.g-shot{background:radial-gradient(70% 90% at 0% 0%,rgba(173,242,203,.55),rgba(173,242,203,0) 60%),linear-gradient(140deg,#0E9E4C 0%,#14CB62 55%,#86E3AE 100%);}

/* icons */
.ico{width:48px;height:48px;border-radius:14px;background:#F2FBF6;border:1px solid #DDF3E6;display:grid;place-items:center;color:var(--g-deep);flex:none;}
.ico svg{width:24px;height:24px;}
svg.line{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}

/* frosted browser frame on a green gradient, running off the bottom right */
.shot{position:relative;border-radius:30px;overflow:hidden;}
.shot .frame{position:absolute;left:48px;top:56px;bottom:0;width:150%;display:flex;flex-direction:column;border-radius:20px 0 0 0;
  background:rgba(255,255,255,.26);border:1px solid rgba(255,255,255,.55);border-right:0;border-bottom:0;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:0 0 0 12px;
  box-shadow:0 30px 60px rgba(4,33,15,.16);}
.shot .dots{height:40px;flex:none;display:flex;align-items:center;gap:7px;}
.shot .dots i{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.9);}
.shot .frame img{width:100%;flex:1;min-height:0;object-fit:cover;object-position:left top;border-radius:12px 0 0 0;background:#fff;}

/* reveal */
.rv{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
.rv.in{opacity:1;transform:none;}
.rv.d1{transition-delay:.08s;}.rv.d2{transition-delay:.16s;}.rv.d3{transition-delay:.24s;}

/* shared nav on this page: light frosted glass with dark type, to sit with the light panels */
body .nav .nav-inner,body .nav.is-stuck .nav-inner{background:rgba(222,227,224,.58);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);
  border:1px solid rgba(255,255,255,.55);box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 12px 36px -18px rgba(4,33,15,.3);padding:9px 10px 9px 20px;}
body .nav .brand img{filter:brightness(0);}
body .nav .navlink{color:var(--ink2);}
body .nav .navlink:hover,body .nav .navlink[aria-expanded="true"]{color:var(--ink);background:rgba(4,33,15,.06);}
body .nav .navlink[aria-current="page"]{color:var(--g-text);}
body .nav .nav-login{color:var(--ink2);}
body .nav .nav-login:hover{color:var(--ink);}
body .nav .navmenu{color:var(--ink);border-color:rgba(4,33,15,.14);}
body .nav .navmenu:hover{background:rgba(4,33,15,.05);}
body .nav .lang-btn{color:var(--ink);background:rgba(255,255,255,.7);border-color:rgba(4,33,15,.12);}
body .nav .lang-btn:hover{background:#fff;}

/* mega menus + language menu: grey glass to match the nav pill */
body .mega,body .lang-menu{background:rgba(228,232,229,.84);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);
  border:1px solid rgba(255,255,255,.6);box-shadow:0 1px 0 rgba(255,255,255,.65) inset,0 30px 70px -30px rgba(4,33,15,.35);}
body .mega-head{border-bottom-color:rgba(4,33,15,.12);}
body .mega-label{color:var(--ink);}
body .mega-head:hover .mega-label{color:var(--g-text);}
body .mega-promise,body .mega-blurb em{color:var(--g-text);}
body .mega-links a,body .mega-wide{color:var(--ink2);}
body .mega-links a:hover,body .mega-wide:hover{color:var(--ink);background:rgba(255,255,255,.55);}
body .mega-txt span{color:var(--slate);}
body .mega-ico{background:rgba(255,255,255,.7);border-color:rgba(4,33,15,.1);color:var(--g-deep);}
body .mega-links a:hover .mega-ico,body .mega-wide:hover .mega-ico{background:#fff;border-color:rgba(20,203,98,.5);}
body .mega-wide{background:rgba(255,255,255,.4);border-color:rgba(4,33,15,.08);}
body .mega-wide:hover{border-color:rgba(20,203,98,.4);}
body .mega-blurb{color:var(--slate);}
body .mega-blurb:hover{color:var(--ink);}
body .mega-tags span{color:var(--ink2);background:rgba(255,255,255,.6);border-color:rgba(4,33,15,.1);}
body .mega-feat{border-color:rgba(255,255,255,.5);}
body .mega-scrim{background:rgba(4,33,15,.12);}
body .lang-menu button{color:var(--ink2);}
body .lang-menu button:hover{background:rgba(255,255,255,.6);color:var(--ink);}
body .lang-menu button[aria-checked="true"]{color:var(--g-text);}

/* ============ HERO ============ */
.hero{background:radial-gradient(70% 80% at 100% 0%,rgba(20,203,98,.15),rgba(20,203,98,0) 60%),#F4F6F4;}
.cust.panel{background:radial-gradient(70% 80% at 100% 0%,rgba(20,203,98,.15),rgba(20,203,98,0) 60%),#F4F6F4;}
.hero{margin-top:96px;min-height:calc(100vh - 108px);min-height:calc(100svh - 108px);display:flex;}
.hero > .wrap{flex:1;width:100%;display:flex;flex-direction:column;}
.hero .hero-grid{flex:1;}
.hero-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:56px;align-items:center;padding-top:76px;padding-bottom:64px;}
.hero-copy{display:flex;flex-direction:column;gap:28px;}
.hero-copy .ctas{margin-top:8px;}
.hero .shot{height:clamp(460px,58vh,640px);}
.hero .float{position:absolute;right:26px;bottom:26px;width:230px;height:auto;z-index:3;
  filter:drop-shadow(0 24px 40px rgba(4,33,15,.24));border-radius:16px;}
.logostrip{border-top:1px solid var(--line2);padding:36px 0 40px;display:flex;align-items:center;justify-content:space-between;gap:28px 44px;flex-wrap:wrap;}
.logostrip{position:relative;}
.cl{position:relative;display:flex;align-items:center;gap:8px;text-decoration:none;}
.cl img{width:auto;filter:grayscale(1) brightness(.3);opacity:.72;transition:filter .25s var(--ease),opacity .25s var(--ease);}
.cl:hover img,.cl:focus-visible img{filter:none;opacity:1;}
.clarrow{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--g);color:var(--forest);
  transition:transform .2s var(--ease);}
.cl.case:hover .clarrow{transform:translate(1px,-1px);}
.clpop{position:absolute;z-index:40;left:0;top:0;width:290px;display:flex;gap:12px;align-items:center;padding:10px;border-radius:18px;
  background:#fff;border:1px solid var(--line2);box-shadow:0 24px 50px -20px rgba(4,33,15,.35);text-decoration:none;color:var(--ink);
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s var(--ease),transform .18s var(--ease),visibility .18s;}
.clpop[data-on="true"]{opacity:1;visibility:visible;transform:none;}
.clpop-img{flex:none;width:96px;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#0d1a12;}
.clpop-img img{width:100%;height:100%;object-fit:cover;}
.clpop small{display:block;font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--g-deep);}
.clpop b{display:block;margin-top:4px;font-family:var(--display);font-weight:400;font-size:16px;line-height:1.25;letter-spacing:-.01em;}
.clpop i{display:block;margin-top:6px;font-style:normal;font-size:12px;font-weight:500;color:var(--g-text);}
@media (max-width:640px){.clpop{display:none;}}

/* ============ METRICS ============ */
.metrics .wrap{padding-top:72px;padding-bottom:72px;}
.mgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:44px;}
.m{background:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.7);border-radius:28px;padding:28px 26px;
  display:flex;flex-direction:column;gap:10px;backdrop-filter:blur(6px);}
.m .v{font-family:var(--display);font-weight:300;font-size:clamp(46px,5vw,66px);line-height:1;letter-spacing:-.04em;color:var(--forest);}
.m .v small{font-size:.5em;letter-spacing:-.01em;margin-left:2px;}
.m .l{font-size:15.5px;line-height:1.45;color:var(--forest);}
.m .s{margin-top:auto;padding-top:14px;font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#0A5A2C;}

/* ============ RETAILERS: scrolling feature track ============ */
.ret .wrap{padding-top:120px;padding-bottom:0;}
.ftnav{display:flex;align-items:center;gap:22px;}
.ftarrows{display:flex;gap:8px;}
.ftarrows button{width:44px;height:44px;border-radius:12px;border:1px solid var(--line2);background:#fff;color:var(--ink);display:grid;place-items:center;cursor:pointer;
  transition:border-color .14s var(--ease),opacity .14s var(--ease);}
.ftarrows button:hover{border-color:var(--g);}
.ftarrows button:disabled{opacity:.35;cursor:default;border-color:var(--line2);}
.ftarrows svg{width:18px;height:18px;}
.ftrack{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;
  padding:48px max(40px, calc((100vw - 1280px) / 2 + 40px)) 40px;
  scroll-padding-left:max(40px, calc((100vw - 1280px) / 2 + 40px));
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 220px),transparent 100%);mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 220px),transparent 100%);
  transition:-webkit-mask-image .3s,mask-image .3s;}
.ftrack::-webkit-scrollbar{display:none;}
.ftrack.at-end{-webkit-mask-image:none;mask-image:none;}
.fcard{flex:0 0 min(470px,84vw);scroll-snap-align:start;background:var(--panel);border:1px solid var(--line);border-radius:26px;
  display:flex;flex-direction:column;overflow:hidden;min-height:560px;}
.ftop{padding:30px 30px 0;display:flex;flex-direction:column;gap:10px;}
.flab{margin:0 0 8px;display:flex;align-items:center;gap:8px;font-size:15px;font-weight:500;color:var(--g-deep);}
.flab svg{width:20px;height:20px;}
.ftop h3{margin:0;font-family:var(--display);font-size:22px;font-weight:400;letter-spacing:-.015em;line-height:1.25;color:var(--ink);}
.ftop > p:not(.flab){margin:0;font-size:15px;line-height:1.6;color:var(--slate);}
.fstage{position:relative;flex:1;margin-top:28px;padding:0 30px;display:flex;flex-direction:column;justify-content:flex-end;}
.fapp{background:#fff;border:1px solid var(--line);border-bottom:0;border-radius:18px 18px 0 0;padding:18px 20px 0;box-shadow:0 -16px 40px -30px rgba(4,33,15,.25);}
.fapp-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line);}
.fapp-h span{font-size:13px;color:var(--mute);}
.fapp-h b{font-family:var(--display);font-weight:400;font-size:26px;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums;}
.fapp-h b.fsmall{font-size:16px;font-family:var(--body);font-weight:500;}
.fapp-h b span{font-size:inherit;color:inherit;}
.flist{list-style:none;margin:0;padding:0;height:168px;overflow:hidden;}
.flist li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);animation:frow .5s var(--ease) both;}
.flist li i{width:30px;height:30px;flex:none;border-radius:9px;background:var(--panel);display:grid;place-items:center;}
.flist li i img{max-width:20px;max-height:16px;object-fit:contain;}
.flist li span{flex:1;min-width:0;font-size:14px;color:var(--ink);}
.flist li span small{display:block;font-size:12px;color:var(--mute);margin-top:2px;}
.flist li em{font-style:normal;font-size:13px;font-weight:500;color:var(--g-text);font-variant-numeric:tabular-nums;}
.flist li em.st{font-size:11.5px;padding:3px 9px;border-radius:999px;background:rgba(20,203,98,.12);}
@keyframes frow{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
.fbadge{position:absolute;left:50%;bottom:26px;transform:translate(-50%,16px);opacity:0;display:flex;align-items:center;gap:9px;white-space:nowrap;
  background:var(--ink);color:#fff;font-size:13.5px;padding:11px 18px;border-radius:999px;box-shadow:0 16px 30px -14px rgba(4,33,15,.45);
  transition:opacity .4s var(--ease),transform .4s var(--ease);}
.fbadge.on{opacity:1;transform:translate(-50%,0);}
.fbadge i{width:8px;height:8px;border-radius:50%;background:var(--g);}
.fbrands{display:flex;justify-content:center;gap:10px;}
.fbrands span{width:52px;height:52px;border-radius:14px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;padding:9px;
  box-shadow:0 8px 20px -14px rgba(4,33,15,.3);transition:border-color .3s,transform .3s var(--ease);}
.fbrands span.on{border-color:var(--g);transform:translateY(-3px);}
.fbrands img{max-width:100%;max-height:22px;object-fit:contain;}
.fwires{display:block;width:calc(100% - 80px);height:28px;margin:0 auto -1px;}
.fwires path{fill:none;stroke:#D5DBD7;stroke-width:1.2;vector-effect:non-scaling-stroke;}
.fapp-c .flist{height:154px;}
.fhealth{list-style:none;margin:0;padding:0 0 6px;}
.fhealth li{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);transition:background .4s;}
.fhealth li span{flex:1;min-width:0;}
.fhealth li b{display:block;font-weight:500;font-size:14px;color:var(--ink);}
.fhealth li small{display:block;font-size:12px;color:var(--mute);margin-top:2px;}
.fhealth em{font-style:normal;font-size:12px;font-weight:500;padding:4px 10px;border-radius:999px;transition:background .35s,color .35s;}
.fhealth em.ok{background:rgba(20,203,98,.12);color:var(--g-text);}
.fhealth em.bad{background:#FCE9E7;color:#B4321F;}
.fhealth em.fix{background:#E8EEF8;color:#2D4C7C;}
.fagent{position:absolute;right:46px;top:96px;display:flex;align-items:center;gap:10px;padding:7px 16px 7px 7px;border-radius:999px;
  background:rgba(220,232,248,.95);color:#26446F;box-shadow:0 14px 30px -14px rgba(4,33,15,.35);
  opacity:0;transform:translateX(18px);transition:opacity .4s var(--ease),transform .4s var(--ease);}
.fagent.on{opacity:1;transform:none;}
.fagent img{width:30px;height:30px;border-radius:50%;background:#fff;}
.fagent b{display:block;font-size:13px;font-weight:500;}
.fagent small{display:block;font-size:11.5px;opacity:.8;}
.fbars{display:flex;align-items:flex-end;gap:4px;height:132px;padding-top:16px;}
.fbars i{flex:1;border-radius:4px 4px 2px 2px;background:#DDE3DF;transition:height .6s var(--ease),background .3s;}
.fbars i.cheap{background:rgba(20,203,98,.45);}
.fbars i.on{background:var(--g);}
.fhours{display:flex;justify-content:space-between;padding:8px 0 64px;font-size:11px;color:var(--mute);font-variant-numeric:tabular-nums;}
.fbar{position:absolute;left:30px;right:30px;bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:var(--ink);color:#fff;border-radius:14px;padding:12px 12px 12px 18px;font-size:13.5px;}
.fbar b{font-weight:600;font-variant-numeric:tabular-nums;}
.fbar em{font-style:normal;background:#fff;color:var(--ink);font-size:13px;font-weight:500;padding:7px 14px;border-radius:9px;white-space:nowrap;transition:transform .15s var(--ease),background .2s;}
.fbar em.press{transform:scale(.94);background:#D7F5E3;}
@media (max-width:900px){
  .lvls{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;}
  .lv{height:calc(96px + var(--i) * 22px);padding:12px 10px;border-radius:16px;}
  .lv b{font-size:14px;}
  .lv .n{font-size:10px;letter-spacing:.06em;}
  .lv .tk{display:none;}
  .ftnav{width:100%;justify-content:space-between;}
  .ftrack{padding-left:20px;padding-right:20px;scroll-padding-left:20px;
    -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 90px),transparent 100%);mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 90px),transparent 100%);}
  .fcard{min-height:520px;}
  .ftop{padding:24px 24px 0;}
  .fstage{padding:0 22px;}
  .fbar{left:22px;right:22px;}
  .fagent{right:28px;}
}
@media (max-width:480px){.ftarrows{display:none;}.fbrands span{width:44px;height:44px;}}

/* ============ FAQ ============ */
.faq .wrap{padding-top:120px;padding-bottom:60px;}
.faq-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:56px;align-items:start;}
.qs{display:flex;flex-direction:column;gap:10px;}
.qs details{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:0 26px;transition:background .2s;}
.qs details[open]{background:#fff;border-color:var(--line2);}
.qs summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:17px;font-weight:500;}
.qs summary::-webkit-details-marker{display:none;}
.qs summary i{flex:none;width:28px;height:28px;border-radius:50%;background:#E8F8EF;color:var(--g-text);display:grid;place-items:center;font-style:normal;font-size:18px;transition:transform .3s var(--ease);}
.qs details[open] summary i{transform:rotate(45deg);}
.qs details p{margin:0 0 22px;font-size:15.5px;line-height:1.6;color:var(--slate);max-width:62ch;}

/* ============ FINAL CTA ============ */
.final .wrap{padding-top:100px;padding-bottom:100px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:30px;}
.final .h2{max-width:16ch;}

/* ============ RESPONSIVE ============ */
@media (max-width:1024px){
  .mgrid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:900px){
  .lvls{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;}
  .lv{height:calc(96px + var(--i) * 22px);padding:12px 10px;border-radius:16px;}
  .lv b{font-size:14px;}
  .lv .n{font-size:10px;letter-spacing:.06em;}
  .lv .tk{display:none;}
  .wrap{padding:0 22px;}
  .panel{margin:10px 8px;border-radius:28px;}
  .hero-grid,.how-grid,.faq-grid,.who-grid,.workshop,.quote{grid-template-columns:minmax(0,1fr);}
  .hero-grid{padding-top:48px;gap:40px;}
  .hero .shot{height:380px;}
  .hero .float{width:150px;bottom:16px;right:14px;}
  .cards3,.rgrid{grid-template-columns:minmax(0,1fr);}
  .outs{grid-template-columns:minmax(0,1fr);}
  .story{height:300vh;}
  .story-pin{top:0;height:100svh;margin:0;border-radius:0;}
  .story-in{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:14px;padding-top:18px;padding-bottom:22px;}
  .tstep .h2{font-size:30px;}
  .tstep .tbody{font-size:15.5px;}
  .story-txt{gap:16px;}
  .story-cta .btn{padding:12px 18px;font-size:14px;}
  .tabs .shot{height:400px;}
  .acc{height:400px;}
  .ac{flex-basis:64px;}
  .lvls{grid-template-columns:repeat(5,minmax(120px,1fr));overflow-x:auto;padding-bottom:6px;}
  .lvinfo{grid-template-columns:minmax(0,1fr);}
  .workshop{padding:30px 24px;gap:28px;}
  .wcard{padding:30px;min-height:320px;}
  .why .wrap,.ret .wrap,.how .wrap,.tabs .wrap,.cust .wrap,.who .wrap,.mat .wrap,.sys .wrap,.res .wrap,.faq .wrap{padding-top:84px;}
}
@media (max-width:560px){
  .mgrid{grid-template-columns:minmax(0,1fr);}
}
@media (max-height:680px){
  .tstack{min-height:210px;}
  .tstep .h2{font-size:34px;}
  .tstep .tbody{font-size:16px;}
  .story-txt{gap:16px;}
  .story-cta{flex-wrap:nowrap;}
  .story-cta .btn{padding:11px 16px;font-size:13.5px;white-space:nowrap;}
}
@media (max-height:560px){
  .story-cta{display:none;}
  .tstack{min-height:180px;}
  .tstep .h2{font-size:30px;}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;}
  .rv{opacity:1;transform:none;}
  html{scroll-behavior:auto;}
}

/* feature track: nav hugs the right edge; drag the track sideways */
.ftnav{margin-left:auto;}
.ftrack{cursor:grab;}
.ftrack.dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto;user-select:none;}
.ftrack.dragging *{pointer-events:none;}
.ftrack img{-webkit-user-drag:none;user-select:none;}

/* customer logo strip carousel (matches the homepage) */
.logostrip{display:block !important;}
.ls-view{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 10%,#000 90%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 10%,#000 90%,transparent 100%);}
.ls-track{display:flex;align-items:center;width:max-content;will-change:transform;}
.ls-track > .cl{margin-right:64px;flex:none;}
.ls-track img{-webkit-user-drag:none;}
@media (max-width:640px){.ls-track > .cl{margin-right:40px;}}

/* Card links never recolour on hover: the whole card lifts slightly with a soft shadow instead */
a.proof,a.wcard,a.rcard,a.nx,a.rep{transition:transform .35s var(--ease),box-shadow .35s var(--ease);}
a.proof:hover,a.wcard:hover,a.rcard:hover,a.nx:hover,a.rep:hover{transform:translateY(-3px) scale(1.012);
  box-shadow:0 28px 50px -26px rgba(4,33,15,.42);}
@media (prefers-reduced-motion:reduce){a.proof:hover,a.wcard:hover,a.rcard:hover,a.nx:hover,a.rep:hover{transform:none;}}

/* the arrow on card links slides forward on hover */
a .arr{display:inline-block !important;position:static !important;margin:0 !important;transition:transform .35s var(--ease);}
a.proof:hover .arr,a.wcard:hover .arr,a.rcard:hover .arr,a.nx:hover .arr,a.rep:hover .arr{transform:translateX(6px);}
@media (prefers-reduced-motion:reduce){a .arr{transition:none;}}
