/* ============================================================
   LowLift — full landing page (Direction C, cinematic motion)
   ============================================================ */
:root{
  --volt:#CDFF00;
  --volt-dark:#A8D600;
  --volt-deep:#8FB800;
  --black:#0A0A0A;
  --ink:#0A0A0A;
  --white:#FFFFFF;
  --offwhite:#F7F7F5;
  --paper:#EFEFEA;
  --g100:#F0F0ED;
  --g200:#E6E6E1;
  --g300:#CFCFCA;
  --g400:#9C9C96;
  --g500:#74746F;
  --g600:#56564F;
  --dusty:#7BA7C2;
  --dusty-dark:#5E8BA6;
  --coral:#FF4F4F;
  --coral-soft:#FFE3E3;
  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-bounce:cubic-bezier(.34,1.56,.64,1);
  --sans:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,sans-serif;
  --head:"Bricolage Grotesque","Plus Jakarta Sans",sans-serif;
  --maxw:1180px;
  --pad:40px;
  --sect:clamp(80px,11vh,132px);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);background:var(--offwhite);color:var(--ink);
  font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);width:100%}
section{position:relative}

/* density */
body.dense{--sect:clamp(60px,8vh,96px)}
body.comfy{--sect:clamp(104px,14vh,168px)}

/* ---------- reveal (keyframe + scroll-timeline; falls back to play-on-load) ---------- */
.rv{animation:rvIn .85s var(--ease-out) both;animation-timeline:view();animation-range:entry 2% cover 20%}
@keyframes rvIn{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}
.rv-1{animation-delay:.05s}.rv-2{animation-delay:.12s}.rv-3{animation-delay:.19s}.rv-4{animation-delay:.26s}
body.nomo .rv{animation:none;opacity:1;transform:none}
body.nomo .float,body.nomo .blob,body.nomo .marker{animation:none!important}

/* ---------- type ---------- */
.eyebrow{font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--volt-deep);display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
.eyebrow .bar{width:26px;height:2px;background:var(--volt-deep)}
.eyebrow--dusty{color:var(--dusty-dark)}.eyebrow--dusty .bar{background:var(--dusty-dark)}
.eyebrow--ondark{color:var(--dusty)}.eyebrow--ondark .bar{background:var(--dusty)}
h1,h2,h3,h4,.philo .q{font-family:var(--head)}
h1,h2,h3{letter-spacing:-.04em;line-height:1;font-weight:800}
.h2{font-size:clamp(34px,4.6vw,58px);letter-spacing:-.035em;line-height:1.02}
.lede{font-size:clamp(17px,1.5vw,21px);line-height:1.55;font-weight:500}

/* marker highlight (black text on volt) */
.mk{display:inline;padding:0 .06em;border-radius:4px;color:var(--ink);
  background-image:linear-gradient(var(--volt),var(--volt));background-repeat:no-repeat;
  background-position:0 82%;background-size:var(--mk,100%) 74%}
.marker{animation:mkin 1s var(--ease-out) .5s both}
@keyframes mkin{from{--mk:0%}to{--mk:100%}}
@property --mk{syntax:'<percentage>';inherits:false;initial-value:100%}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.01em;border-radius:15px;font-size:17px;padding:16px 26px;transition:transform .22s var(--ease),box-shadow .22s var(--ease),background .2s}
.btn svg{width:18px;height:18px}
.btn-volt{background:var(--volt);color:#0a0a0a;box-shadow:0 14px 34px -12px var(--volt)}
.btn-volt:hover{transform:translateY(-2px) scale(1.015);box-shadow:0 20px 44px -12px var(--volt)}
.btn-volt:active{transform:scale(.98)}
.btn-ghost{box-shadow:inset 0 0 0 1.6px var(--g300)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1.6px var(--ink);transform:translateY(-2px)}
.btn-ghost--dark{color:#fff;box-shadow:inset 0 0 0 1.6px rgba(255,255,255,.26)}
.btn-ghost--dark:hover{box-shadow:inset 0 0 0 1.6px #fff;transform:translateY(-2px)}
.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{transform:translateY(-2px) scale(1.015)}

.badge-pill{display:inline-flex;align-items:center;gap:9px;padding:8px 16px;border-radius:100px;font-size:13.5px;font-weight:700;background:color-mix(in srgb,var(--volt) 18%,transparent);color:var(--ink)}
.badge-pill .dot{width:7px;height:7px;border-radius:50%;background:var(--volt-deep)}
.badge-pill--dark{background:rgba(205,255,0,.1);color:#fff;box-shadow:inset 0 0 0 1px rgba(205,255,0,.3)}

/* ---------- nav ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .3s,box-shadow .3s,backdrop-filter .3s}
.nav.scr{background:color-mix(in srgb,var(--offwhite) 78%,transparent);backdrop-filter:blur(16px);box-shadow:0 1px 0 var(--g200)}
.nav .row{display:flex;align-items:center;justify-content:space-between;height:80px}
.brand{display:inline-flex;flex-direction:column;align-items:flex-start;font-family:"Unbounded",var(--sans);line-height:1;white-space:nowrap}
.brand .splash{display:inline-block;font-weight:700;font-size:20px;letter-spacing:-.02em;color:var(--volt);background:var(--ink);padding:4px 10px 6px}
.brand .fit{font-family:var(--sans);font-weight:700;font-size:9px;letter-spacing:.42em;text-transform:uppercase;color:var(--g400);margin-top:6px;align-self:flex-end;margin-right:2px}
.nav-links{display:flex;gap:32px;font-size:15px;font-weight:600;color:var(--g600);white-space:nowrap}
.nav-links a{position:relative;transition:color .2s}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:2px;background:var(--ink);transition:width .25s var(--ease)}
.nav-links a:hover{color:var(--ink)}.nav-links a:hover::after{width:100%}
.nav-cta{padding:12px 22px;border-radius:100px;background:var(--ink);color:#fff;font-weight:700;font-size:14.5px;transition:transform .2s;white-space:nowrap}
.nav-cta:hover{transform:scale(1.04)}
@media(max-width:820px){.nav-links{display:none}}

/* ============================================================
   HERO
   ============================================================ */
.hero{padding:140px 0 60px;overflow:hidden}
.hero .grid{display:grid;grid-template-columns:1.06fr .94fr;gap:30px;align-items:center}
.hero h1{font-size:clamp(32px,6vw,76px);letter-spacing:-.045em;line-height:.96;margin:24px 0 0;white-space:nowrap}
.hero .lede{color:var(--dusty-dark);margin:26px 0 34px;max-width:480px}
.hero .cta{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.hero .trust{margin-top:20px;font-size:13.5px;color:var(--g500);font-weight:500;line-height:1.5}
.hero .trust b{color:var(--ink);font-weight:700;white-space:nowrap}

.illu{position:relative;display:grid;place-items:center;min-height:560px}
.illu .blob{position:absolute;width:min(440px,40vw);aspect-ratio:1;border-radius:46% 54% 58% 42%/52% 44% 56% 48%;background:var(--volt);animation:blob 16s var(--ease) infinite}
.illu .blob.b2{background:var(--ink);opacity:.06;animation-direction:reverse;animation-duration:20s}
@keyframes blob{0%,100%{border-radius:46% 54% 58% 42%/52% 44% 56% 48%;transform:rotate(0) scale(1)}33%{border-radius:60% 40% 42% 58%/48% 60% 40% 52%;transform:rotate(6deg) scale(1.03)}66%{border-radius:42% 58% 50% 50%/56% 42% 58% 44%;transform:rotate(-5deg) scale(.98)}}
.illu .person{position:relative;top:26px;width:min(345px,31vw);filter:drop-shadow(0 28px 38px rgba(10,10,10,.2));animation:bob 6s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}

/* floating UI fragments */
.frag{position:absolute;z-index:4;animation:bob 6s ease-in-out infinite}
.frag.f-badge{top:8%;right:14%;animation-delay:-1s}
.frag.f-timer{bottom:14%;left:2%;animation-delay:-2.5s}
.frag.f-week{bottom:4%;right:6%;animation-delay:-3.5s}
.fr-badge{background:var(--dusty);color:#fff;font-size:12px;font-weight:800;letter-spacing:.14em;padding:9px 15px;border-radius:100px;box-shadow:0 16px 34px -12px var(--dusty);transform:rotate(7deg)}
.fr-timer{background:#0a0a0a;color:#fff;border-radius:18px;padding:13px 20px;text-align:center;box-shadow:0 24px 50px -18px rgba(10,10,10,.5);transform:rotate(-5deg)}
.fr-timer .t{font-size:30px;font-weight:900;letter-spacing:-.04em;line-height:1}.fr-timer .t .cl{color:var(--volt)}
.fr-timer .l{font-size:9.5px;font-weight:800;letter-spacing:.14em;color:rgba(255,255,255,.55);margin-top:3px}
.fr-week{background:#fff;border-radius:18px;padding:13px 17px;box-shadow:0 24px 50px -22px rgba(10,10,10,.35);transform:rotate(4deg)}
.fr-week .l{font-size:9.5px;font-weight:800;letter-spacing:.14em;color:var(--g400);margin-bottom:8px}
.fr-week .dots{display:flex;gap:7px}.fr-week .dots i{width:17px;height:17px;border-radius:50%;background:var(--g100)}
.fr-week .dots i.on{background:var(--volt);box-shadow:0 2px 8px var(--volt)}
@media(max-width:880px){
  .hero{padding:116px 0 40px}
  .hero .grid{grid-template-columns:1fr;gap:4px}
  .illu{min-height:360px;margin-top:4px}
  .illu .person{width:min(224px,48vw);top:14px}
  .illu .blob{width:min(300px,64vw)}
  .frag{display:none}
}

/* ============================================================
   STATS
   ============================================================ */
.stats .row{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--g200);border-bottom:1px solid var(--g200)}
.stats .s{padding:36px 18px;text-align:center;border-left:1px solid var(--g200)}
.stats .s:first-child{border-left:none}
.stats .n{font-size:clamp(38px,5vw,52px);font-weight:900;letter-spacing:-.04em;line-height:1}
.stats .n em{font-style:normal;color:var(--volt-deep)}
.stats .k{font-size:14px;font-weight:600;color:var(--g500);margin-top:8px}
@media(max-width:680px){.stats .row{grid-template-columns:repeat(2,1fr)}.stats .s:nth-child(2){border-left:none}.stats .s:nth-child(3),.stats .s:nth-child(4){border-top:1px solid var(--g200)}}

/* ============================================================
   HOW IT WORKS
   ============================================================ */
.how{padding-top:var(--sect);padding-bottom:var(--sect)}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:52px}
.sec-head h2{font-size:clamp(34px,4.8vw,60px);letter-spacing:-.035em;line-height:1.0;max-width:600px}
.sec-head p{font-size:17px;color:var(--g500);max-width:340px;font-weight:500;line-height:1.55}
.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.how-card{background:#fff;border-radius:24px;padding:32px 30px 36px;box-shadow:0 1px 2px rgba(0,0,0,.05);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.how-card:hover{transform:translateY(-6px);box-shadow:0 22px 50px -22px rgba(10,10,10,.25)}
.how-card .num{width:44px;height:44px;border-radius:13px;background:var(--coral);color:#fff;font-weight:900;font-size:20px;display:grid;place-items:center;margin-bottom:56px}
.how-card h3{font-size:24px;font-weight:800;letter-spacing:-.02em;margin-bottom:10px}
.how-card p{font-size:15.5px;color:var(--g500);line-height:1.55;font-weight:500}
@media(max-width:820px){.how-grid{grid-template-columns:1fr}.sec-head{flex-direction:column;align-items:flex-start;gap:16px}}

/* ============================================================
   SHOWCASE  (real screenshots, alternating rows)
   ============================================================ */
.show{padding:var(--sect) 0;background:var(--paper)}
.feat{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-top:96px}
.feat:first-of-type{margin-top:56px}
.feat.rev .ftxt{order:2}
.feat .ftxt h3{font-size:clamp(28px,3.4vw,42px);letter-spacing:-.03em;line-height:1.04;margin:16px 0 16px}
.feat .ftxt p{font-size:17.5px;color:var(--g600);line-height:1.6;font-weight:500;max-width:440px}
.feat .ftxt .chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.feat .chip{font-size:13.5px;font-weight:700;padding:8px 14px;border-radius:100px;background:#fff;color:var(--g600);box-shadow:inset 0 0 0 1px var(--g200)}
.feat .fimg{display:grid;place-items:center;position:relative}
.feat .glow{position:absolute;width:74%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--volt) 40%,transparent),transparent 64%);filter:blur(8px)}
.shot{position:relative;width:min(218px,40vw);border-radius:40px;background:#0a0a0a;padding:8px;box-shadow:0 50px 90px -36px rgba(10,10,10,.5),0 0 0 1px rgba(0,0,0,.05)}
.shot img{border-radius:38px;width:100%}
.shot{will-change:transform}
.shot.tilt{transform:rotate(-3deg);animation:shotFloatA 7s var(--ease) infinite}
.shot.tilt2{transform:rotate(3deg);animation:shotFloatB 8.5s var(--ease) infinite}
.feat:nth-of-type(3) .shot{animation-delay:-3.2s}
.shot:hover{animation-play-state:paused;transform:translateY(-10px) rotate(0deg) scale(1.02);transition:transform .5s var(--ease-out)}
@keyframes shotFloatA{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(-2deg) translateY(-18px)}}
@keyframes shotFloatB{0%,100%{transform:rotate(3deg) translateY(0)}50%{transform:rotate(2deg) translateY(-18px)}}
.feat .glow{animation:glowPulse 7s var(--ease) infinite}
@keyframes glowPulse{0%,100%{opacity:.7;transform:scale(.96)}50%{opacity:1;transform:scale(1.06)}}
body.nomo .shot,body.nomo .feat .glow{animation:none}
@media(max-width:820px){.feat{grid-template-columns:1fr;gap:30px;margin-top:64px}.feat.rev .ftxt{order:0}}

/* little features grid */
.mini{padding:48px 0 var(--sect);background:var(--paper)}
.mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.mini-card{background:#fff;border-radius:20px;padding:26px 22px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.mini-card .mi{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;margin-bottom:18px;background:#EEF4F8;color:var(--dusty-dark)}
.mini-card h4{font-size:18px;font-weight:800;letter-spacing:-.02em;margin-bottom:7px}
.mini-card p{font-size:14.5px;color:var(--g500);line-height:1.5;font-weight:500}
@media(max-width:820px){.mini-grid{grid-template-columns:repeat(2,1fr)}}

/* ============================================================
   WHO IT'S FOR  (dark, cinematic)
   ============================================================ */
.who{padding:var(--sect) 0;background:var(--black);color:#fff;overflow:hidden}
.who .glow{position:absolute;top:-10%;left:50%;transform:translateX(-50%);width:900px;height:520px;background:radial-gradient(ellipse,rgba(205,255,0,.14),transparent 66%);pointer-events:none;animation:drift 14s ease-in-out infinite}
@keyframes drift{0%,100%{transform:translateX(-54%)}50%{transform:translateX(-46%)}}
.who h2{font-size:clamp(34px,5vw,62px);letter-spacing:-.035em;line-height:1.0;max-width:760px}
.who .lede{color:rgba(255,255,255,.62);max-width:620px;margin-top:20px}
.who .lede b{color:var(--volt);font-weight:700}
.who .hl{color:var(--coral)}
.persona-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:58px}
.persona{background:#141414;border-radius:22px;padding:28px 24px 30px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.persona:hover{transform:translateY(-6px);box-shadow:inset 0 0 0 1px rgba(205,255,0,.3),0 20px 50px -24px rgba(205,255,0,.3)}
.persona .pi{width:44px;height:44px;border-radius:12px;background:rgba(205,255,0,.12);color:var(--volt);display:grid;place-items:center;margin-bottom:20px}
.persona h4{font-size:19px;font-weight:800;letter-spacing:-.02em;margin-bottom:9px}
.persona p{font-size:14.5px;color:rgba(255,255,255,.56);line-height:1.55;font-weight:500}
@media(max-width:820px){.persona-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.persona-grid{grid-template-columns:1fr}}

/* ============================================================
   FORGIVENESS  (anti-streak)
   ============================================================ */
.forgive{padding-top:var(--sect);padding-bottom:var(--sect)}
.forgive .inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.forgive h2{font-size:clamp(32px,4.4vw,54px);letter-spacing:-.035em;line-height:1.02}
.forgive p{font-size:17.5px;color:var(--g600);line-height:1.6;font-weight:500;margin-top:18px;max-width:460px}
.compare{display:flex;flex-direction:column;gap:18px}
.cmp{border-radius:20px;padding:24px 26px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.cmp .ct{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px;display:flex;align-items:center;gap:8px;white-space:nowrap}
.cmp.bad .ct{color:var(--coral)}.cmp.good .ct{color:var(--volt-deep)}
.cmp.good{box-shadow:0 0 0 2px var(--volt),0 20px 50px -24px var(--volt)}
.strip{display:flex;gap:10px}
.strip .day{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px}
.strip .day span{font-size:11px;font-weight:700;color:var(--g400)}
.strip .dd{width:100%;max-width:42px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center}
.strip .dd.done{background:var(--volt)}
.strip .dd.miss-x{background:var(--coral-soft);color:var(--coral)}
.strip .dd.miss-soft{background:var(--g100)}
.strip .dd.dim{background:repeating-linear-gradient(45deg,var(--g100),var(--g100) 4px,#fff 4px,#fff 8px)}
.strip .dd svg{width:18px;height:18px}
@media(max-width:820px){.forgive .inner{grid-template-columns:1fr;gap:36px}}

/* ============================================================
   PHILOSOPHY
   ============================================================ */
.philo{padding:clamp(90px,13vh,150px) 0;background:var(--volt);color:#0a0a0a;text-align:center}
.philo q{quotes:none}
.philo .q{font-size:clamp(32px,5.2vw,68px);font-weight:800;letter-spacing:-.04em;line-height:1.04;max-width:980px;margin:0 auto;display:block}
.philo .by{margin-top:30px;font-size:14px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:rgba(10,10,10,.55)}

/* ============================================================
   FAQ
   ============================================================ */
.faq{padding-top:var(--sect);padding-bottom:var(--sect)}
.faq .inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}
.faq h2{font-size:clamp(32px,4.4vw,52px);letter-spacing:-.035em;line-height:1.02;position:sticky;top:110px}
.faq h2 .sub{display:block;font-size:16px;font-weight:500;color:var(--g500);letter-spacing:0;margin-top:14px;line-height:1.5}
.qa{border-bottom:1px solid var(--g200)}
.qa button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0;text-align:left;font-size:clamp(18px,2vw,22px);font-weight:700;letter-spacing:-.02em}
.qa .pm{width:30px;height:30px;flex:none;position:relative}
.qa .pm::before,.qa .pm::after{content:"";position:absolute;background:var(--ink);border-radius:2px;transition:transform .3s var(--ease)}
.qa .pm::before{left:50%;top:6px;bottom:6px;width:2.4px;transform:translateX(-50%)}
.qa .pm::after{top:50%;left:6px;right:6px;height:2.4px;transform:translateY(-50%)}
.qa.open .pm::before{transform:translateX(-50%) scaleY(0)}
.qa .ans{max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.qa .ans p{padding:0 60px 26px 0;font-size:16.5px;color:var(--g600);line-height:1.6;font-weight:500}
@media(max-width:820px){.faq .inner{grid-template-columns:1fr;gap:24px}.faq h2{position:static}}

/* ============================================================
   FINAL CTA
   ============================================================ */
.final{padding-top:0;padding-bottom:0}
.final .card{background:var(--black);color:#fff;border-radius:34px;padding:clamp(46px,7vw,84px);text-align:center;position:relative;overflow:hidden}
.final .card .glow{position:absolute;right:-6%;bottom:-30%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(205,255,0,.42),transparent 62%);filter:blur(8px)}
.final h2{font-size:clamp(32px,4.8vw,58px);letter-spacing:-.035em;line-height:1.02;position:relative}
.final p{color:rgba(255,255,255,.62);font-size:18px;margin:18px auto 34px;max-width:520px;font-weight:500;position:relative}
.final .cta{display:flex;gap:14px;justify-content:center;align-items:center;position:relative;flex-wrap:wrap}
.appbtn{display:inline-flex;align-items:center;gap:12px;background:#fff;color:#0a0a0a;padding:14px 24px;border-radius:15px;font-weight:700;transition:transform .2s}
.appbtn:hover{transform:translateY(-2px) scale(1.02)}
.appbtn svg{width:24px;height:24px}
.appbtn small{display:block;font-size:10px;font-weight:600;letter-spacing:.04em;opacity:.6;white-space:nowrap}
.appbtn b{font-size:18px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.soon{font-size:13.5px;color:rgba(255,255,255,.5);font-weight:600;display:inline-flex;align-items:center;gap:8px}
.emailrow{position:relative;margin-top:40px;padding-top:34px;border-top:1px solid rgba(255,255,255,.12);max-width:560px;margin-left:auto;margin-right:auto}
.emailrow .lab{font-size:14.5px;color:rgba(255,255,255,.6);font-weight:500;margin-bottom:14px}
.emailform{display:flex;gap:10px}
.emailform input{flex:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:13px;padding:14px 18px;color:#fff;font-size:15px;font-family:inherit;outline:none;transition:border .2s}
.emailform input::placeholder{color:rgba(255,255,255,.4)}
.emailform input:focus{border-color:var(--volt)}
.emailform button{background:var(--volt);color:#0a0a0a;font-weight:700;padding:0 24px;border-radius:13px;font-size:15px;transition:transform .2s;white-space:nowrap}
.emailform button:hover{transform:scale(1.03)}
.emailrow .ok{color:var(--volt);font-weight:700;font-size:15px;padding:6px 0}
@media(max-width:520px){.emailform{flex-direction:column}}

/* ---------- footer ---------- */
.foot{padding-top:40px;padding-bottom:56px}
.foot .row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid var(--g200);padding-top:32px}
.foot .cp{font-size:14px;color:var(--g500)}
.foot .lnk{display:flex;gap:26px;font-size:14px;font-weight:600;color:var(--g600)}
.foot .lnk a:hover{color:var(--ink)}

/* ============================================================
   RESPONSIVE — tablet & mobile refinements
   ============================================================ */
@media(max-width:680px){
  :root{--pad:24px}
  .stats .s{padding:26px 12px}
  .stats .k{font-size:13px;margin-top:6px}
  .sec-head{margin-bottom:36px}
  .feat .ftxt p,.forgive p,.lede{max-width:none}
}
@media(max-width:600px){
  :root{--sect:clamp(56px,9vh,84px)}
  .nav .row{height:64px}
  .hero{padding:96px 0 28px}
  .illu{min-height:312px;margin-top:0}
  .illu .person{width:min(190px,52vw)}
  .illu .blob{width:min(262px,72vw)}
  .hero .cta{flex-direction:column;align-items:stretch;gap:12px}
  .hero .cta .btn{width:100%;justify-content:center}
  .philo{padding:64px 0}
  .qa button{padding:22px 0;gap:14px}
  .qa .ans p{padding-right:0}
  .final .card{padding:44px 24px;border-radius:26px}
  .final p{font-size:16px}
  .emailrow{margin-top:30px;padding-top:26px}
  .foot .row{flex-direction:column;align-items:flex-start;gap:16px}
  .feat{gap:30px;margin-top:64px}
  .feat:first-of-type{margin-top:44px}
  .shot{width:min(212px,56vw);border-radius:38px;transform:none;animation:none}
  .shot.tilt,.shot.tilt2{transform:none;animation:none}
  .shot img{border-radius:30px}
  .feat .glow{width:62%;animation:none;opacity:.6}
}
@media(max-width:460px){
  :root{--pad:18px}
  .mini-grid{grid-template-columns:1fr}
  .how-card{padding:28px 24px 30px}
  .how-card .num{margin-bottom:36px}
  .stats .s{padding:22px 10px}
  .brand .splash{font-size:16px;padding:3px 8px 5px}
  .brand .fit{font-size:8px;letter-spacing:.36em;margin-top:5px}
  .nav-cta{padding:11px 18px;font-size:13.5px}
}
