/* ============================================================
   8WTC v2 — built from the actual references
   Dribbble (Imperium): rounded dark container on a tinted ground;
     headline words in PILL BOXES (outlined + solid); hand-drawn arrow
     curving INTO the CTA; overlapping photo cards; floating white stat
     card with mini progress bars; thin connector lines.
   RESET (Onmi): cream ground; MULTI-COLOUR pastel tiles; arc-set text in
   FitFlow (Nahid): saturated ground with WHITE app cards floating on it.
   Palette stays 8WTC: blue #3070ff, white, black.
   ============================================================ */

:root {
  --font-serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  --c-blue-deep: #0a2050;          /* darkened brand blue, container ground */
  --c-cream:     #fdf3ea;          /* RESET's cream */
  --t-lilac:     #cbb5e8;
  --t-mint:      #86d3c0;
  --t-pink:      #f6cdd6;
  --t-amber:     #f2ac52;
}

.v2 { background: var(--bg-tint); }
.v2 h1, .v2 h2 { letter-spacing:-.045em; }
.v2 .eyebrow { background:none; padding:0; color:#4A77FF; font-family:var(--font-heading); font-size:.8rem; font-weight:700; letter-spacing:0; text-transform:none; display:block; }
.v2 .center .eyebrow { text-align:center; }

/* RESET: grotesque with serif-italic fragments */

/* ---- Dribbble: hand-drawn arrow curving into the CTA ---- */

.arrow-to-cta { color:rgba(255,255,255,.75); flex:none; }
@media (prefers-reduced-motion: no-preference) {
  .arrow-to-cta { animation:drift 2.6s ease-in-out infinite; }
  @keyframes drift { 0%,100%{transform:translateX(0)} 50%{transform:translateX(-5px)} }
}

/* ---- Dribbble: overlapping photo cards + floating stat card + connectors ---- */

.connector { position:absolute; inset:0; pointer-events:none; color:rgba(255,255,255,.3); }

/* ---- FitFlow: saturated ground, white app cards floating ---- */

.rowicon { width:2.25rem; height:2.25rem; border-radius:50%; display:grid; place-items:center; flex:none; font-size:.9375rem; }
   

/* ---- shared ---- */
.trustbar { border-block:1px solid var(--border); background:#fff; }
.trustbar__inner { display:grid; gap:var(--s-4); padding-block:var(--s-5); grid-template-columns:repeat(2,1fr); text-align:center; }
@media (min-width:820px) { .trustbar__inner { grid-template-columns:repeat(4,1fr); } }
.trustbar__item + .trustbar__item { border-left:1px solid var(--border); }
@media (max-width:819px) { .trustbar__item:nth-child(odd) { border-left:0; } }
.trustbar__n { display:block; font-family:var(--font-heading); font-weight:var(--fw-black); font-size:clamp(1.375rem,3vw,2rem); color:var(--fg); letter-spacing:-.03em; }
.trustbar__l { font-size:.75rem; color:var(--fg-subtle); letter-spacing:.06em; }
.trustbar .stars { color:var(--c-gold); }

.photoblock { position:relative; min-height:clamp(24rem,58vh,34rem); display:grid; align-items:end; overflow:hidden; }
.photoblock > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.photoblock::after { content:""; position:absolute; inset:0; background:linear-gradient(transparent 25%, rgba(4,10,22,.84)); }
.photoblock__body { position:relative; z-index:1; padding-block:clamp(2rem,5vw,3.5rem); color:#fff; }
.photoblock__body h2 { color:#fff; max-width:20ch; }
.photoblock__body p { color:rgba(255,255,255,.85); max-width:44ch; }
/* Dribbble: text over photo in solid highlight boxes */
.hl { background:var(--c-blue-deep); color:#fff; padding:.08em .35em; border-radius:.35em; box-decoration-break:clone; -webkit-box-decoration-break:clone; }
.hl em { font-style:normal; color:var(--c-green); }
.stagger { display:grid; gap:var(--s-5); grid-template-columns:1fr; align-items:start; }
@media (min-width:760px)  { .stagger { grid-template-columns:repeat(2,1fr); } }
@media (min-width:1060px) { .stagger { grid-template-columns:repeat(3,1fr); } }
@media (min-width:760px) {
  .stagger > *:nth-child(3n+2) { transform:translateY(2.25rem); }
  .stagger > *:nth-child(3n+3) { transform:translateY(-1.25rem); }
}
.stagger .quote { border-radius:var(--r-extra-huge); }
.strip { display:grid; gap:var(--s-4); grid-template-columns:repeat(2,1fr); }
@media (min-width:820px) { .strip { grid-template-columns:repeat(4,1fr); } }
.strip .result { border-radius:var(--r-extra-large); }
.strip .result img { aspect-ratio:3/4; }
.chips { display:flex; flex-wrap:wrap; gap:.6rem; justify-content:center; margin-bottom:var(--s-6); }
.chip { display:inline-flex; align-items:center; gap:.45rem; padding:.6rem 1.1rem; border-radius:var(--r-full); border:1px solid var(--border-strong); background:#fff; color:var(--fg); font-family:var(--font-heading); font-weight:var(--fw-bold); font-size:.875rem; cursor:pointer; }
.chip:hover { border-color:var(--fg); }
.chip__n { font-size:.75rem; color:var(--fg-subtle); font-weight:var(--fw-medium); }
.chip[aria-pressed="true"] { background:var(--accent); border-color:var(--accent); color:#fff; }
.chip[aria-pressed="true"] .chip__n { color:rgba(255,255,255,.75); }
.filter-empty { text-align:center; color:var(--fg-subtle); padding:var(--s-8) 0; }
.pagehead { padding-block:clamp(2.5rem,5vw,4rem) clamp(1.5rem,3vw,2.5rem); }
.v2 .plan { border-radius:var(--r-extra-huge); }

/* ============================================================
   Testimonial marquee — from the Dribbble screenshot:
   blue frame around a white panel; black pill badge floating above the
   heading; two horizontally-scrolling rows, offset and counter-moving;
   cards fade out at both edges; big blue quote glyph on light-grey cards.
   ============================================================ */
.praise { background:var(--accent); padding:clamp(.75rem,1.6vw,1.25rem); }
.praise__panel { background:#fff; border-radius:1.75rem; padding:clamp(2rem,5vw,3.5rem) 0 clamp(2.5rem,5vw,4rem); overflow:hidden; }

.praise__badge {
  display:flex; justify-content:center; margin-bottom:clamp(1.25rem,3vw,2rem);
}
.praise__badge span {
  display:inline-flex; align-items:center; gap:.6rem;
  background:#0b0b0f; color:#fff; border-radius:var(--r-full);
  padding:.55rem 1.1rem .55rem .55rem; font-size:.9375rem; font-weight:var(--fw-semi);
  box-shadow:0 10px 30px rgba(10,15,40,.22);
}
.praise__badge i {
  width:1.9rem; height:1.9rem; border-radius:50%; background:var(--accent);
  display:grid; place-items:center; font-style:normal; font-size:.8125rem; color:#fff;
}
.praise h2 { text-align:center; max-width:20ch; margin-inline:auto; margin-bottom:clamp(2rem,4vw,3rem); font-size:clamp(1.9rem,4.4vw,3.1rem); }

.marquee { position:relative; overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent); }
.marquee + .marquee { margin-top:1.25rem; }
.marquee__track { display:flex; gap:1.25rem; width:max-content; }
@media (prefers-reduced-motion: no-preference) {
  .marquee__track { animation:slide var(--dur,46s) linear infinite; }
  .marquee--rev .marquee__track { animation-direction:reverse; }
  .marquee:hover .marquee__track { animation-play-state:paused; }
  @keyframes slide { from{transform:translateX(0)} to{transform:translateX(-50%)} }
}
@media (prefers-reduced-motion: reduce) {
  .marquee { overflow-x:auto; scroll-snap-type:x mandatory; -webkit-mask-image:none; mask-image:none; }
  .marquee__track > * { scroll-snap-align:center; }
}
/* second row offset, as in the reference */
.marquee--offset .marquee__track { padding-left:7rem; }

.pcard {
  flex:none; width:min(23rem,78vw);
  background:#f5f6f8; border-radius:1.35rem; padding:1.6rem;
  display:flex; flex-direction:column; gap:1.1rem;
}
.pcard__q { color:var(--accent); font-family:Georgia,serif; font-size:2.75rem; line-height:.7; height:1.4rem; }
.pcard__t { color:var(--fg); font-size:1.0625rem; line-height:1.5; margin:0; flex:1; }
.pcard__who { display:flex; align-items:center; gap:.8rem; }
.pcard__who img { width:2.9rem; height:2.9rem; border-radius:50%; object-fit:cover; flex:none; }
.pcard__n { display:block; font-weight:var(--fw-bold); color:var(--fg); font-size:1rem; }
.pcard__r { display:block; color:var(--fg-subtle); font-size:.875rem; }

/* ============================================================
   Results arch — portraits scattered in a scalloped band that frames
   centred copy, with ghost placeholders and dotted guide lines.
   ============================================================ */
.arch { background:#f4f5f7; padding:0; }
.arch__inner { position:relative; background:#fafbfc; border-radius:2rem; overflow:hidden;
  padding:clamp(2rem,5vw,3rem) 0 clamp(2.5rem,6vw,4.5rem); }

/* ghost placeholders + dotted guides sit behind everything */
.arch__ghosts { position:absolute; inset:0 0 auto 0; display:none; gap:1.1rem; padding:0 1.5rem; }
@media (min-width:1000px) { .arch__ghosts { display:grid; grid-template-columns:repeat(9,1fr); } }
.arch__ghosts i { display:block; height:9rem; border-radius:1rem; background:#eef0f3; }
.arch__ghosts i:nth-child(even) { height:7rem; }
.arch__guides { position:absolute; inset:0; display:none; grid-template-columns:repeat(9,1fr); padding:0 1.5rem; }
@media (min-width:1000px) { .arch__guides { display:grid; } }
.arch__guides i { display:block; width:1px; margin-inline:auto; height:70%;
  background:repeating-linear-gradient(#dfe3e8 0 4px, transparent 4px 9px); }

/* the scattered portrait band */
.arch__cards { position:relative; z-index:1; display:grid; gap:.85rem; padding-inline:1.5rem;
  grid-template-columns:repeat(3,1fr); }
@media (min-width:700px)  { .arch__cards { grid-template-columns:repeat(5,1fr); } }
@media (min-width:1000px) { .arch__cards { grid-template-columns:repeat(9,1fr); gap:1.1rem; align-items:start; } }
.arch__cards figure { margin:0; border-radius:1rem; overflow:hidden; background:#e9ecef;
  box-shadow:0 10px 26px rgba(15,25,50,.13); position:relative; }
.arch__cards img { width:100%; aspect-ratio:3/4; object-fit:cover; display:block; }
.arch__cards figcaption {
  position:absolute; inset:auto 0 0 0; padding:1.6rem .55rem .5rem;
  background:linear-gradient(transparent,rgba(6,12,26,.86)); color:#fff;
}
.arch__cards .n { display:block; font-family:var(--font-heading); font-weight:var(--fw-bold); font-size:.8125rem; line-height:1.2; }
.arch__cards .r { display:block; font-size:.6875rem; color:rgba(255,255,255,.82); }

/* scalloped offsets — only once there's room for the full band */
@media (min-width:1000px) {
  .arch__cards figure:nth-child(1) { margin-top:5.5rem }
  .arch__cards figure:nth-child(2) { margin-top:1rem }
  .arch__cards figure:nth-child(3) { margin-top:4.25rem }
  .arch__cards figure:nth-child(4) { margin-top:.5rem }
  .arch__cards figure:nth-child(5) { margin-top:3.5rem }
  .arch__cards figure:nth-child(6) { margin-top:.75rem }
  .arch__cards figure:nth-child(7) { margin-top:4rem }
  .arch__cards figure:nth-child(8) { margin-top:1.25rem }
  .arch__cards figure:nth-child(9) { margin-top:5rem }
  /* one card tilted, as in the reference */
  .arch__cards figure:nth-child(7) { transform:perspective(900px) rotateY(-11deg) rotateX(3deg); }
}

/* centred copy sitting in the valley */
.arch__body { position:relative; z-index:2; text-align:center; margin-top:clamp(2rem,5vw,3.25rem); padding-inline:1.5rem; }
@media (min-width:1000px) { .arch__body { margin-top:-1.5rem; } }
.arch__tag { display:inline-block; background:#eceef1; color:var(--fg); border-radius:var(--r-full);
  padding:.4rem 1rem; font-size:.8125rem; font-weight:var(--fw-semi); margin-bottom:1.25rem; }
.arch__body h2 { font-size:clamp(2rem,5.2vw,3.6rem); margin-bottom:1rem; }
.arch__body h2 .dim { color:#9aa3ad; }
.arch__body p { max-width:34rem; margin-inline:auto; color:var(--fg-muted); }
.btn--black { background:#0b0b0f; color:#fff; }
.btn--black:hover { background:#26262e; }

/* ============================================================
   v3 additions — structural patterns from the design direction
   §2 competitor takes: method pillars (U.P.), objection handling (75 Hard),
   goal paths (U.P./DDP/Sweat), risk reversal as a section (Sweat).
   §1.2 research: UGC video sits BESIDE THE PRICE.
   ============================================================ */

/* --- Method pillars --- */
.pillars { display:grid; gap:clamp(2.5rem,6vw,4.5rem); }
.pillar { display:grid; gap:clamp(1.5rem,4vw,3rem); align-items:center; }
@media (min-width:860px){ .pillar{ grid-template-columns:1fr 1fr } .pillar--flip .pillar__media{ order:-1 } }
.pillar__media img{ width:100%; border-radius:1.5rem; box-shadow:var(--shadow-md) }
.pillar__n{ font-family:var(--font-heading); font-weight:800; font-size:.8125rem; letter-spacing:.16em; color:var(--accent);
  display:inline-block; padding-bottom:.4rem; border-bottom:2px solid var(--accent-tint); margin-bottom:.9rem }
.pillar__body h3{ font-size:clamp(1.375rem,2.6vw,1.875rem); margin-bottom:.6rem }
.pillar__proof{ display:inline-block; margin-top:.4rem; font-size:.8125rem; font-weight:600;
  color:var(--fg-subtle); background:var(--bg-tint); border:1px solid var(--border); padding:.35rem .8rem; border-radius:999px }

/* --- Goal paths --- */
.paths{ display:grid; gap:var(--s-4); grid-template-columns:1fr }
@media (min-width:800px){ .paths{ grid-template-columns:repeat(3,1fr) } }
.path{ background:#fff; border:1px solid var(--border); border-radius:1.25rem; padding:var(--s-5); box-shadow:var(--shadow-sm) }
.path__icon{ display:grid; place-items:center; width:2.75rem; height:2.75rem; border-radius:.9rem;
  background:var(--accent-tint); font-size:1.25rem; margin-bottom:var(--s-4) }
.path h3{ margin-bottom:.4rem }
.path__who{ font-weight:600; color:var(--fg); margin-bottom:.5rem }
.path__how{ color:var(--fg-muted); font-size:.9375rem; margin:0 }

/* --- Objection handling --- */
.objections{ max-width:52rem; margin-inline:auto }
.obj{ border:1px solid var(--border); border-radius:1rem; background:#fff; margin-bottom:.6rem }
.obj summary{ cursor:pointer; list-style:none; padding:1.1rem 3rem 1.1rem 1.25rem; position:relative;
  font-family:var(--font-heading); font-weight:700; font-size:1.0625rem; color:var(--fg); line-height:1.4 }
.obj summary::-webkit-details-marker{ display:none }
.obj summary::before{ content:"“"; color:var(--accent); font-family:Georgia,serif; font-size:1.6rem; line-height:0; position:relative; top:.35rem; margin-right:.35rem }
.obj summary::after{ content:"+"; position:absolute; right:1.1rem; top:50%; transform:translateY(-50%); font-size:1.4rem; font-weight:400; color:var(--accent) }
.obj[open] summary::after{ content:"−" }
.obj[open]{ border-color:var(--accent) }
.obj__a{ padding:0 1.25rem 1.25rem; color:var(--fg-muted) }
.obj__a p{ margin:0 }

/* --- Guarantee as its own section --- */
.guaranteeband{ background:#f0fff8; border-block:1px solid #c7f2df }
.guaranteeband .seal{ width:6.5rem; height:6.5rem; flex:none; color:var(--accent-success) }
.guaranteeband__row{ display:flex; gap:clamp(1.5rem,4vw,2.5rem); align-items:center; flex-wrap:wrap }
.guaranteeband h2{ margin-bottom:.5rem }
.guaranteeband .lede{ margin-bottom:0 }

/* --- UGC video beside the price (research §1.2) --- */
.ugcrow{ display:grid; gap:.75rem; grid-template-columns:repeat(2,1fr) }
@media (min-width:520px){ .ugcrow{ grid-template-columns:repeat(4,1fr) } }
.ugc{ position:relative; margin:0; border-radius:1rem; overflow:hidden; background:#0d1626; cursor:pointer }
.ugc img{ width:100%; aspect-ratio:3/4; object-fit:cover; opacity:.85 }
.ugc video{ width:100%; aspect-ratio:3/4; object-fit:cover; display:block }
.ugc__play{ position:absolute; inset:0; border:0; background:rgba(6,14,32,.25); cursor:pointer; display:grid; place-items:center; width:100% }
.ugc__play span{ width:2.75rem; height:2.75rem; border-radius:50%; background:#fff; display:grid; place-items:center; box-shadow:0 6px 18px rgba(0,0,0,.3) }
.ugc__play span::after{ content:""; border-left:.75rem solid var(--fg); border-top:.48rem solid transparent; border-bottom:.48rem solid transparent; margin-left:.2rem }
.ugc:hover .ugc__play span{ transform:scale(1.08) }
.ugc figcaption{ position:absolute; inset:auto 0 0 0; padding:1.75rem .7rem .7rem; color:#fff;
  background:linear-gradient(transparent,rgba(4,10,24,.9)); pointer-events:none }
.ugc figcaption b{ display:block; font-family:var(--font-heading); font-size:.875rem }
.ugc figcaption span{ display:block; font-size:.6875rem; color:rgba(255,255,255,.8); line-height:1.3 }

/* ============================================================
   v4 — waitlist capture, consent gate, story pages
   ============================================================ */

/* --- Waitlist --- */
.wl{ background:#fff; border:1px solid var(--border); border-radius:1.5rem; padding:clamp(1.5rem,4vw,2.25rem);
  max-width:44rem; margin-inline:auto; box-shadow:var(--shadow-md); text-align:left }
.wl__h{ margin-bottom:.4rem }
.wl__p{ color:var(--fg-muted); font-size:.9375rem; margin-bottom:1.25rem }
.wl__row{ display:flex; gap:.6rem; flex-wrap:wrap }
.wl__input{ flex:1 1 15rem; min-width:0; font:inherit; font-size:1rem; padding:.95rem 1.1rem;
  border:1px solid var(--border-strong); border-radius:999px; background:#fff; color:var(--fg) }
.wl__input:focus-visible{ outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent) }
.wl__row .btn{ flex:0 0 auto }
.wl__hp{ position:absolute!important; left:-9999px; width:1px; height:1px; overflow:hidden }
.wl__consent{ display:flex; gap:.65rem; align-items:flex-start; margin-top:1rem; font-size:.875rem; color:var(--fg-muted); cursor:pointer }
.wl__consent input{ margin-top:.28rem; width:1.05rem; height:1.05rem; accent-color:var(--accent); flex:none }
.wl__status{ margin:.85rem 0 0; font-size:.875rem; min-height:1.2em }
.wl__status[data-state="err"]{ color:#c0341d }
.wl__status[data-state="ok"]{ color:var(--accent-success) }
.wl__fine{ margin:.85rem 0 0; font-size:.75rem; color:var(--fg-subtle); line-height:1.5 }
.wl__done{ margin:0; font-family:var(--font-heading); font-weight:700; font-size:1.125rem; color:var(--accent-success) }

/* --- Consent gate (analytics load only after opt-in) --- */
.cc{ position:fixed; left:1rem; right:1rem; bottom:1rem; z-index:200; max-width:36rem;
  background:#fff; border:1px solid var(--border-strong); border-radius:1.1rem;
  box-shadow:0 20px 50px rgba(8,18,45,.25); padding:1.15rem 1.25rem; font-size:.875rem; color:var(--fg-body) }
@media (min-width:640px){ .cc{ left:1.5rem; right:auto } }
.cc[hidden]{ display:none!important }
.cc h4{ margin:0 0 .35rem; font-size:.9375rem }
.cc p{ margin:0 0 .9rem; color:var(--fg-muted); font-size:.8125rem; line-height:1.55 }
.cc__row{ display:flex; gap:.5rem; flex-wrap:wrap }
.cc .btn{ min-height:2.5rem; padding:.55rem 1.1rem; font-size:.875rem }

/* --- Result story page --- */
.story{ display:grid; gap:clamp(1.5rem,4vw,3rem) }
@media (min-width:860px){ .story{ grid-template-columns:.95fr 1.05fr; align-items:start } }
.story__img{ border-radius:1.5rem; overflow:hidden; box-shadow:var(--shadow-lg); background:var(--bg-tint) }
.story__img img{ width:100%; aspect-ratio:4/5; object-fit:cover; display:block }
.story__facts{ display:grid; gap:.6rem; margin:1.5rem 0 }
.story__facts div{ display:flex; justify-content:space-between; gap:1rem; padding:.75rem 0; border-bottom:1px solid var(--border) }
.story__facts dt{ color:var(--fg-subtle); font-size:.875rem }
.story__facts dd{ margin:0; font-family:var(--font-heading); font-weight:700; color:var(--fg) }
.story__nav{ display:flex; gap:.75rem; flex-wrap:wrap; margin-top:2rem }

/* ============================================================
   The app — product-focused conversion block.
   Pattern synthesis: Zipline (copy+badges left, screens right, generous
   space) · Revolut (badge paired with real rating proof) · Deezer (state
   the OS requirement) · Fresha (screens with room, not crammed).
   ============================================================ */
.appsec{ background:linear-gradient(180deg,var(--bg-tint) 0%,#fff 70%) }
.appsec__top{ display:grid; gap:clamp(2rem,5vw,4rem); align-items:center }
@media (min-width:1000px){ .appsec__top{ grid-template-columns:.86fr 1.14fr } }
.appsec__pitch h2{ font-size:clamp(1.9rem,3.8vw,2.9rem); margin-bottom:.75rem }
.appsec__pitch .lede{ margin-bottom:1.75rem }

/* app identity: real icon + real listing facts */
.appid{ display:flex; gap:1rem; align-items:center; padding:1rem; background:#fff;
  border:1px solid var(--border); border-radius:1.15rem; box-shadow:var(--shadow-sm); margin-bottom:1.25rem }
.appid__icon{ width:3.5rem; height:3.5rem; border-radius:.9rem; flex:none;
  box-shadow:0 2px 8px rgba(15,25,50,.16); border:1px solid var(--border) }
.appid__name{ display:block; font-family:var(--font-heading); font-weight:800; font-size:1.0625rem; color:var(--fg); letter-spacing:-.02em }
.appid__meta{ display:block; font-size:.75rem; color:var(--fg-subtle); margin-top:.1rem }
.appid__rating{ display:block; font-size:.8125rem; color:var(--fg-muted); margin-top:.3rem }
.appid__rating .stars{ color:var(--c-gold); letter-spacing:.02em }

/* official store badges — sized to Apple/Google guidance */
.badges{ display:flex; gap:.75rem; flex-wrap:wrap; align-items:center }
.badge{ display:inline-block; line-height:0; border-radius:.55rem; transition:transform .15s ease, opacity .15s ease }
.badge:hover{ transform:translateY(-2px) }
.badge:focus-visible{ outline:3px solid var(--accent); outline-offset:3px }
.badge img{ height:2.9rem; width:auto; display:block }
.badge--g img{ height:4.1rem; margin:-.6rem }   /* Google's asset carries its own padding */
.appsec__fine{ margin:.9rem 0 0; font-size:.8125rem; color:var(--fg-subtle) }

/* the screens: staggered so they breathe, not stacked on each other */
.appsec__gallery-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin:0 .25rem 1.2rem;text-align:left}.appsec__gallery-head span,.appsec__gallery-head b{display:block}.appsec__gallery-head span{margin-bottom:.3rem;color:#777b83;font-size:.65rem;font-weight:750;letter-spacing:.16em;text-transform:uppercase}.appsec__gallery-head b{font-size:1.05rem}.appsec__gallery-head small{flex:none;color:#737780;font-size:.72rem}
.screens{ display:grid; grid-auto-flow:column; grid-auto-columns:clamp(175px,12vw,215px);
  gap:clamp(1rem,1.6vw,1.5rem); align-items:start;
  overflow-x:auto; overscroll-behavior-inline:contain; scroll-snap-type:x mandatory; padding:.5rem .25rem 1.6rem; scrollbar-width:thin; scrollbar-color:#4A77FF rgba(74,119,255,.12) }
.screens::-webkit-scrollbar{height:6px}.screens::-webkit-scrollbar-track{border-radius:999px;background:rgba(74,119,255,.1)}.screens::-webkit-scrollbar-thumb{border-radius:999px;background:#4A77FF}
.screens > *{ scroll-snap-align:center }
.screen{ margin:0 }
@media (min-width:700px){
  .screen:nth-child(2){ transform:translateY(1.9rem) }
  .screen:nth-child(3){ transform:translateY(.5rem) }
  .screen:nth-child(4){ transform:translateY(2.3rem) }
  .screen:nth-child(5){ transform:translateY(.9rem) }
  .screen:nth-child(6){ transform:translateY(1.8rem) }
  .screen:nth-child(7){ transform:translateY(.35rem) }
  .screen:nth-child(8){ transform:translateY(2.1rem) }
}
.screen__frame{ display:block; border-radius:1.25rem; padding:.3rem; background:#0d0f14;
  box-shadow:0 18px 40px rgba(12,22,48,.2), 0 2px 6px rgba(12,22,48,.12) }
.screen__frame img{ width:100%; display:block; border-radius:1rem; aspect-ratio:414/900; object-fit:cover }
.screen figcaption{ margin-top:.7rem; text-align:center }
.screen figcaption b{ display:block; font-family:var(--font-heading); font-weight:700; font-size:.8125rem; color:var(--fg) }
.screen figcaption span{ display:block; font-size:.6875rem; color:var(--fg-subtle); line-height:1.4; margin-top:.15rem; max-width:20ch; margin-inline:auto }
@media(max-width:699px){.appsec__gallery-head{align-items:flex-start}.appsec__gallery-head b{font-size:.95rem}.screens{grid-auto-columns:68vw;gap:1rem;padding-right:12vw}.screen figcaption b{font-size:1rem}.screen figcaption span{font-size:.78rem}}

.appsec__foot{ display:grid; gap:clamp(1.5rem,4vw,3rem); align-items:center;
  margin-top:clamp(2.5rem,5vw,4rem); padding-top:clamp(1.75rem,4vw,2.5rem); border-top:1px solid var(--border) }
@media (min-width:880px){ .appsec__foot{ grid-template-columns:1.3fr .7fr } }
.applist{ list-style:none; padding:0; margin:0; display:grid; gap:.85rem }
@media (min-width:620px){ .applist{ grid-template-columns:repeat(2,1fr) } }
.applist li{ font-size:.875rem; color:var(--fg-muted); padding-left:1.6rem; position:relative; line-height:1.5 }
.applist li::before{ content:""; position:absolute; left:0; top:.4em; width:.8rem; height:.8rem; border-radius:50%;
  background:var(--accent-tint); border:2px solid var(--accent) }
.applist b{ display:block; color:var(--fg); font-family:var(--font-heading); font-weight:700; font-size:.9375rem }
.appsec__cta{ display:flex; justify-content:flex-start }
@media (min-width:880px){ .appsec__cta{ justify-content:flex-end } }

/* --- Blue band (prize section) --- */
.bluefield{ background:var(--accent); color:#fff }
.bluefield h1, .bluefield h2, .bluefield h3{ color:#fff }
.bluefield .lede, .bluefield p{ color:rgba(255,255,255,.86) }
.bluefield .eyebrow{ color:#3765F5 }
.bluefield .btn--outline{ background:#fff; color:var(--accent); border-color:#fff }
.bluefield .btn--outline:hover{ background:rgba(255,255,255,.9) }
.bluefield .typicality{ color:rgba(255,255,255,.62) }
.bluefield .prize-list li{ background:rgba(255,255,255,.12); border-color:rgba(255,255,255,.2) }
.bluefield .prize-list .pl{ color:rgba(255,255,255,.88) }
.bluefield .prize-list .pl small{ color:rgba(255,255,255,.6) }
.bluefield .prize-list .pv{ color:#fff }
.bluefield .prize-list li:first-child .pv{ color:var(--c-yellow) }

/* --- Install: QR on desktop, tappable badges on mobile --- */
.install{ margin-top:.25rem }
.install__qr{ display:none }
.install__badges{ display:flex; gap:.75rem; flex-wrap:wrap; align-items:center }
@media (min-width:1000px){
  .install__qr{ display:flex; gap:1rem; align-items:center;
    background:#fff; border:1px solid var(--border); border-radius:1.15rem;
    padding:1rem 1.25rem 1rem 1rem; box-shadow:var(--shadow-sm); max-width:24rem }
  .install__badges{ display:none }
}
.qr{ width:6.5rem; height:6.5rem; flex:none; display:grid; place-items:center }
.qr svg{ width:100%; height:100%; display:block }
.install__qr b{ display:block; font-family:var(--font-heading); font-weight:700; font-size:.9375rem; color:var(--fg) }
.install__qr span{ display:block; font-size:.8125rem; color:var(--fg-muted); line-height:1.45; margin-top:.15rem; max-width:22ch }

/* --- /get redirect page --- */
.getpage{ min-height:70vh; display:grid; place-items:center; text-align:center }
.getpage__icon{ width:4.5rem; height:4.5rem; border-radius:1.1rem; margin:0 auto 1.25rem;
  box-shadow:0 4px 14px rgba(15,25,50,.16); border:1px solid var(--border) }
.getpage .lede{ margin-inline:auto; margin-bottom:1.75rem }
.getpage .badges{ justify-content:center }

/* --- Countdown (header) --- */
.countdown{ display:inline-flex; align-items:baseline; gap:.35rem }
.countdown b{ font-family:var(--font-heading); font-weight:var(--fw-bold);
  color:var(--c-yellow); font-variant-numeric:tabular-nums }
.countdown[data-elapsed="true"] b{ color:var(--fg-on-dark-mut) }

/* --- Card (week strip on /how-it-works) --- */
.card{ background:#fff; border:1px solid var(--border); border-radius:var(--r-large);
  padding:var(--s-5); box-shadow:var(--shadow-sm) }
.card h3{ margin-bottom:.4rem }
.card p{ margin:0; color:var(--fg-muted); font-size:.9375rem }
.card__n{ display:block; font-family:var(--font-heading); font-size:.75rem; color:var(--accent);
  font-weight:var(--fw-bold); letter-spacing:.12em; margin-bottom:.5rem }

/* --- layout wrappers --- */

.appsec__screens{ min-width:0 }

/* ============================================================
   Hero — Bevel pattern: centred, enormous whitespace, one CTA,
   micro social proof sitting directly beneath it, soft horizon.
   ============================================================ */
.hero5{ position:relative; overflow:hidden; text-align:center;
  padding-block:clamp(4rem,10vw,8rem) clamp(5rem,12vw,9rem); background:#fff }
.hero5__sky{ position:absolute; inset:auto 0 -12% 0; height:78%; pointer-events:none; z-index:0;
  background:
    radial-gradient(58% 62% at 50% 100%, rgba(48,112,255,.30), transparent 72%),
    radial-gradient(40% 46% at 22% 96%, rgba(0,224,122,.20), transparent 70%),
    radial-gradient(42% 48% at 80% 98%, rgba(245,166,35,.18), transparent 70%);
  filter:blur(26px); opacity:.9 }
.hero5__inner{ position:relative; z-index:1; max-width:56rem }
.hero5__kicker{ font-family:var(--font-heading); font-size:.75rem; font-weight:700;
  letter-spacing:.16em; text-transform:uppercase; color:var(--fg-subtle); margin:0 0 1.5rem }
.hero5 h1{ font-size:clamp(2.75rem,7.2vw,5.25rem); line-height:1.02; letter-spacing:-.045em;
  margin:0 auto 1.25rem; max-width:16ch; text-wrap:balance }
.hero5__sub{ font-size:clamp(1.0625rem,1.7vw,1.25rem); color:var(--fg-muted);
  max-width:46ch; margin:0 auto 2.25rem }
.hero5__cta{ display:flex; justify-content:center }
.hero5__cta .btn{ background:#0b0b0f; color:#fff; box-shadow:0 10px 28px rgba(11,11,15,.22) }
.hero5__cta .btn:hover{ background:#26262e }
.hero5__proof{ display:flex; align-items:center; justify-content:center; gap:.55rem; flex-wrap:wrap;
  margin:1.1rem 0 0; font-size:.8125rem; color:var(--fg-muted) }
.hero5__proof .stars{ color:var(--c-gold); letter-spacing:.02em; font-size:.875rem }
.hero5__fine{ margin:.5rem 0 0; font-size:.75rem; color:var(--fg-subtle) }

  gap:1rem; overflow-x:auto; scroll-snap-type:x mandatory;
  padding:.5rem clamp(1rem,6vw,4rem) 1.75rem; scrollbar-width:thin;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent) }

/* ============================================================
   Works with — Bevel's quiet centred logo strip.
   Marks are inlined SVG (no requests), set in ink at low emphasis.
   ============================================================ */
.ww{ background:#fff; padding-block:clamp(2.5rem,5vw,4rem); text-align:center }
.ww__h{ font-size:1.0625rem; font-weight:700; color:var(--fg); margin:0 0 1.75rem; letter-spacing:-.01em }
.ww__row{ list-style:none; margin:0 auto; padding:0; display:flex; flex-wrap:wrap;
  justify-content:center; align-items:center; gap:clamp(1.5rem,4vw,3.25rem); max-width:56rem }
.ww__item{ display:inline-flex; align-items:center; gap:.5rem; color:var(--fg);
  font-family:var(--font-heading); font-weight:700; font-size:1rem; letter-spacing:-.01em;
  opacity:.72; transition:opacity .2s ease }
.ww__item:hover{ opacity:1 }
.ww__mark{ width:1.35rem; height:1.35rem; fill:currentColor; flex:none }
.ww__wordmark{ display:inline-grid; place-items:center; width:1.35rem; height:1.35rem; flex:none;
  background:var(--fg); color:#fff; border-radius:.3rem; font-size:.75rem; font-weight:800 }
.ww__note{ margin:1.75rem auto 0; font-size:.8125rem; color:var(--fg-subtle); max-width:40ch }

/* ============================================================
   Bevel pivot — page sits on a soft ground, content in rounded panels.
   ============================================================ */
body.v2{ background:var(--bg-tint) }
.panel{ border-radius:clamp(1.25rem,2.5vw,2rem); margin-inline:clamp(.5rem,1.5vw,1.25rem);
  overflow:hidden; position:relative }
.v2 main > section.panel + section.panel{ margin-top:clamp(.5rem,1.5vw,1.25rem) }
.panel.sec--tint{ background:var(--bg-tint) }

/* --- Members band --- */
.members{ background:#fff; text-align:center; padding-block:clamp(3rem,7vw,5rem) }
.members h2{ font-size:clamp(1.75rem,4.4vw,3rem); line-height:1.08; letter-spacing:-.04em;
  max-width:20ch; margin:0 auto 1.75rem; text-wrap:balance }

:where(.panel){ background:#fff }   /* zero-specificity default: any section rule wins */

/* --- Centred section heads: one rule, applied consistently --- */
.sec-head.center, .center > .sec-head{ text-align:center; margin-inline:auto }
.sec-head.center .eyebrow, .center .eyebrow{ justify-content:center }
.sec-head.center h1, .sec-head.center h2,
.sec-head.center .lede{ margin-inline:auto }
.sec-head.center .lede{ text-align:center }

/* --- Close: a clean centred panel, not a cropped portrait --- */
.closing{ background:var(--fg); color:#fff; text-align:center; padding-block:clamp(3.5rem,8vw,6rem) }
.closing h2{ color:#fff; font-size:clamp(2rem,5vw,3.5rem); line-height:1.05; letter-spacing:-.04em;
  max-width:20ch; margin:0 auto 1rem; text-wrap:balance }
.closing p{ color:rgba(255,255,255,.72); max-width:44ch; margin:0 auto 2rem }
.closing .btn--primary{ background:#fff; color:var(--fg); box-shadow:none }
.closing .btn--primary:hover{ background:#eceef1 }
.closing .btn--outline{ background:transparent; color:#fff; border-color:rgba(255,255,255,.35) }
.closing .btn--outline:hover{ border-color:#fff }

/* --- Transformations: give the rail depth instead of a flat white row --- */
  transition:transform .25s ease, border-color .25s ease }
.cta-row.center-row{ justify-content:center }

/* Any row inside a centred section centres — belt and braces so a missing
   class can't silently left-align a button under centred copy again. */
.appsec .cta-row, .ww .cta-row, .praise .cta-row,
section:has(> .wrap > .sec-head.center) .cta-row{ justify-content:center }

/* ============================================================
   Utilities — replace inline style attributes, which the production
   CSP (style-src 'self') silently blocks. Never reintroduce style="".
   ============================================================ */
.u-center-row{ justify-content:center }
.u-mi-auto{ margin-inline:auto }
.u-tac{ text-align:center }
.u-pt0{ padding-top:0 }
.u-pt-lg{ padding-top:clamp(2.5rem,5vw,4rem) }
.u-pb-lg{ padding-block:0 clamp(2rem,4vw,3rem) }
.u-prose{ max-width:52rem }
.u-prose-sm{ max-width:44rem }
.u-measure-32{ max-width:32ch }
.u-flex1{ flex:1; min-width:16rem }
.u-mt-md{ margin-top:1rem }
.u-mt-lg{ margin-top:2rem }
.u-mt-xl{ margin-top:2.5rem }
.u-mb-md{ margin-bottom:1rem }
.u-mb-block{ margin-block:2rem }
.u-figure{ font-size:clamp(3.5rem,10vw,6.5rem); line-height:.9 }
.u-on-dark{ color:#fff }
.u-plainlink{ color:inherit; text-decoration:none }
.u-logo-footer{ height:44px; width:auto }
.marquee.u-dur-52{ --dur:52s }
.marquee.u-dur-60{ --dur:60s }
/* screen stagger by index class (CSP blocks inline custom properties) */
.screen--0{ --i:0 } .screen--1{ --i:1 } .screen--2{ --i:2 } .screen--3{ --i:3 } .screen--4{ --i:4 }

/* ============================================================
   Transformations — Bevel "Join over 1 million members" pattern:
   light ground, one huge centred headline, then a rail of cards that
   are ALL THE SAME HEIGHT with edge-to-edge imagery and a soft fade.
   The badge overlays the photo so it can never change card height.
   ============================================================ */
.tx{ background:#fff; padding-block:clamp(3rem,7vw,5.5rem) }
.tx__head{ text-align:center; margin-bottom:clamp(2rem,5vw,3.5rem) }
.tx__tag{ display:inline-block; background:var(--bg-tint); border:1px solid var(--border);
  border-radius:999px; padding:.35rem .9rem; font-size:.75rem; font-weight:600;
  color:var(--fg-muted); margin-bottom:1.25rem }
.tx__head h2{ font-size:clamp(2rem,5.4vw,3.6rem); line-height:1.06; letter-spacing:-.04em;
  margin:0 auto; max-width:18ch; text-wrap:balance; color:var(--fg) }
.tx__head em{ font-style:normal; color:var(--accent) }

.tx__rail{
  display:grid; grid-auto-flow:column; grid-auto-columns:minmax(190px,232px);
  gap:clamp(.65rem,1.4vw,1rem);
  align-items:stretch;                 /* every card the same height */
  overflow-x:auto; scroll-snap-type:x mandatory;
  padding:.25rem clamp(1rem,5vw,3.5rem) 1.5rem; scrollbar-width:thin;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
.tx__rail > *{ scroll-snap-align:center }

.txc{ margin:0; display:flex; flex-direction:column; gap:.7rem }
.txc__media{ display:block; position:relative; border-radius:1rem; overflow:hidden;
  background:var(--bg-tint); border:1px solid var(--border);
  transition:transform .25s ease, box-shadow .25s ease }
.txc__media img{ width:100%; height:100%; display:block;
  aspect-ratio:3/4; object-fit:cover }      /* identical crop for every card */
.txc__media:hover{ transform:translateY(-4px); box-shadow:0 16px 34px rgba(15,25,50,.16) }

/* badge sits ON the photo — it can wrap freely without moving anything */
.txc__badge{ position:absolute; left:.5rem; right:.5rem; bottom:.5rem;
  background:rgba(10,14,24,.72); backdrop-filter:blur(6px);
  color:#fff; border-radius:.6rem; padding:.4rem .55rem;
  font-family:var(--font-heading); font-weight:700; font-size:.75rem; line-height:1.25;
  text-align:center }

.txc__cap{ text-align:center; min-height:2.6rem }   /* fixed so captions align */
.txc__cap b{ display:block; font-family:var(--font-heading); font-weight:700;
  font-size:.9375rem; color:var(--fg); line-height:1.2 }
.txc__cap span{ display:block; font-size:.75rem; color:var(--fg-subtle); margin-top:.1rem }

/* ============================================================
   Bevel-inspired art direction: calm whitespace, atmospheric colour,
   product-first imagery, dark pill actions and generously rounded cards.
   ============================================================ */
.v2 {
  --bg-tint:#f7f8f8;
  --fg:#17181b;
  --fg-body:#55585d;
  --accent:#17181b;
  background:#fff;
}
.v2 .wrap{max-width:1240px}
.v2 .header{position:absolute;inset:0 0 auto;z-index:30;background:transparent;border:0;color:var(--fg)}
.v2 .header__inner{max-width:1180px;margin-top:1rem;min-height:3.5rem;padding:.45rem .55rem .45rem 1.1rem;border:1px solid rgba(22,24,27,.08);border-radius:999px;background:rgba(255,255,255,.8);box-shadow:0 10px 40px rgba(33,47,61,.07);backdrop-filter:blur(18px)}
.v2 .header__logo{filter:invert(1);height:24px;width:auto}
.v2 .nav a{color:#52555a;font-size:.82rem}
.v2 .nav a:hover{color:#111}
.v2 .header__timer{display:none}
.v2 .header .btn{background:#17181b;color:#fff;border-color:#17181b;box-shadow:none}
.v2 .btn{border-radius:999px;min-height:3.15rem;padding:.8rem 1.45rem}
.v2 .btn--primary,.v2 .btn--dark{background:#17181b;color:#fff;border-color:#17181b;box-shadow:none}
.v2 .btn:hover{transform:translateY(-1px)}

.hero5{min-height:940px;padding:9.4rem 0 0;background:#fff;overflow:hidden}
.hero5__sky{inset:0;background:
  radial-gradient(ellipse 55% 32% at 50% 54%,rgba(173,222,255,.65),transparent 72%),
  radial-gradient(ellipse 45% 24% at 16% 49%,rgba(255,205,178,.42),transparent 70%),
  radial-gradient(ellipse 42% 26% at 86% 47%,rgba(206,190,255,.42),transparent 72%),
  linear-gradient(#fff 0 38%,rgba(244,250,255,.85) 58%,#fff 88%)}
.hero5__inner{max-width:1050px}
.hero5__kicker{color:#6d7075;background:rgba(255,255,255,.7);border:1px solid #e7e9eb;box-shadow:0 4px 20px rgba(30,50,70,.05)}
.hero5 h1{font-size:clamp(3.4rem,7.4vw,6.7rem);max-width:11ch;font-weight:600;line-height:.93;letter-spacing:-.068em;margin-top:1.25rem}
.hero5__sub{max-width:39rem;font-size:clamp(1.05rem,1.55vw,1.25rem);line-height:1.5}
.hero5__proof{color:#55585d}
.hero5__devices{position:relative;height:455px;max-width:760px;margin:2.6rem auto 0;perspective:1200px}
.hero5__glow{position:absolute;inset:12% 5% 0;border-radius:50%;background:radial-gradient(ellipse,rgba(255,255,255,.98),rgba(219,239,255,.38) 52%,transparent 72%);filter:blur(8px)}
.hero5__phone{position:absolute;bottom:-7rem;margin:0;width:230px;padding:7px;background:#111;border-radius:37px;box-shadow:0 30px 60px rgba(25,39,55,.22);overflow:hidden}
.hero5__phone img{display:block;width:100%;aspect-ratio:9/18.7;object-fit:cover;border-radius:30px}
.hero5__phone--main{left:50%;z-index:3;width:265px;transform:translateX(-50%) rotateX(3deg)}
.hero5__phone--left{left:16%;z-index:2;transform:rotate(-10deg) translateY(50px)}
.hero5__phone--right{right:16%;z-index:2;transform:rotate(10deg) translateY(50px)}
.hero5__float{position:absolute;z-index:5;background:rgba(255,255,255,.9);border:1px solid rgba(25,35,45,.08);border-radius:16px;padding:.75rem 1rem;box-shadow:0 16px 35px rgba(30,45,60,.12);backdrop-filter:blur(12px);text-align:left}
.hero5__float b,.hero5__float span{display:block}.hero5__float b{font-size:1.05rem}.hero5__float span{font-size:.7rem;color:#777}
.hero5__float--steps{left:5%;top:33%}.hero5__float--streak{right:4%;top:48%}

.trustbar{border:0;background:#fff}.trustbar__inner{padding-block:2.2rem}.trustbar__item+.trustbar__item{border-color:#eceef0}.trustbar__n{font-weight:600}
.ww{padding-block:3.5rem 5rem;background:#fff}.ww__h{font-size:.75rem;font-weight:500;color:#8a8d92}.ww__row{opacity:.65}
.v2 main>section{padding-block:clamp(5rem,9vw,8rem)}
.v2 main>.panel{margin:12px;border-radius:30px}
.tx{background:#f7f8f8!important}
.tx__head h2,.members h2,.sec-head h2{font-weight:600;letter-spacing:-.055em}
.tx__head em{color:#8b8e94}
.txc__media{border:0;border-radius:20px;box-shadow:none}
.members{background:#fff}
.members h2{font-size:clamp(2.3rem,5vw,4.2rem);max-width:17ch}
.video-frame{border-radius:28px;box-shadow:none}
.sec--tint{background:#eef5ff!important}
.pillar{padding:clamp(1rem,2vw,1.5rem);background:rgba(255,255,255,.58);border:1px solid rgba(255,255,255,.8);border-radius:28px}
.pillar__media img{border-radius:22px;box-shadow:none}
.path{border:0;border-radius:24px;box-shadow:none;background:#f5f2ff;padding:2rem}
.path:nth-child(2){background:#eef7ff}.path:nth-child(3){background:#f4f8ec}
.appsec{background:linear-gradient(135deg,#eaf7ff,#eef0ff 54%,#fff3ed)!important}
.appsec__screens .screen{filter:drop-shadow(0 24px 28px rgba(35,48,65,.16))}
.praise{background:#202125;padding:12px}.praise__panel{background:#202125;color:#fff;border-radius:28px}.praise h2{color:#fff}.pcard{background:#f7f7f8}.praise__badge span{background:#fff;color:#17181b}
.bluefield{margin:12px;background:linear-gradient(135deg,#dfefff,#e9e2ff 55%,#ffe8de);color:#17181b;border-radius:30px}.bluefield h2,.bluefield .pv{color:#17181b!important}.bluefield p,.bluefield .lede,.bluefield .eyebrow{color:#595c63}.bluefield .prize-list li{background:rgba(255,255,255,.62);border-color:rgba(255,255,255,.8)}
.guaranteeband{border:0;background:#eef8f3}
.closing{margin:12px;border-radius:30px;background:#202125}

@media(max-width:819px){
  .v2 .header{position:absolute}.v2 .header__inner{width:auto;margin:.65rem .7rem;padding:.45rem .5rem .45rem .85rem}.v2 .header__logo{height:19px}.v2 .header__cta .btn{font-size:.72rem;padding:.55rem .85rem;min-height:2.55rem}
  .hero5{min-height:825px;padding-top:7.5rem}.hero5 h1{font-size:clamp(3.05rem,15vw,4.4rem)}.hero5__sub{font-size:1rem;max-width:31ch}
  .hero5__fine{display:none}.hero5__devices{height:355px;margin-top:2rem}.hero5__phone{width:154px;border-radius:26px;padding:5px;bottom:-3rem}.hero5__phone img{border-radius:21px}.hero5__phone--main{width:185px}.hero5__phone--left{left:2%}.hero5__phone--right{right:2%}.hero5__float{padding:.55rem .7rem;border-radius:12px}.hero5__float--steps{left:0;top:27%}.hero5__float--streak{right:0;top:52%}
  .trustbar__inner{grid-template-columns:repeat(2,1fr)}.v2 main>section{padding-block:4.5rem}.v2 main>.panel,.bluefield,.closing{margin:7px;border-radius:23px}
}

.v2 .pricing-model--featured .btn{border-color:#4A77FF;background:#4A77FF;color:#fff;box-shadow:0 12px 30px rgba(74,119,255,.38)}
.v2 .pricing-model--featured .btn:hover{border-color:#6d91ff;background:#6d91ff;transform:translateY(-2px)}

/* One predictable vertical rhythm for every standard content section. */
.v2 .compatibility-strip,
.v2 .community-proof,
.v2 .reviews-focus,
.v2 .founder-note,
.v2 .journey,
.v2 .goal-fit,
.v2 .prize-focus,
.v2 .decision,
.v2 .buying-questions{padding-block:clamp(5rem,6vw,6rem)!important}
.v2 .community-proof__awards{margin-bottom:1.5rem}
.v2 .community-proof__head h2{margin-bottom:4rem}
.v2 .community-proof__head .community-proof__intro{margin-bottom:3rem}
.v2 .reviews-focus__grid{margin-top:clamp(2.5rem,4vw,3.5rem)}
.v2 .goal-fit__tabs{margin-top:2.25rem}
.v2 .buying-questions__list{margin-top:2.25rem}

.v2 .reviews-focus{background:#edf4ff}
.v2 .reviews-focus::before{display:none}
.v2 .reviews-focus__field{margin-top:clamp(2.5rem,4vw,3.5rem);overflow:hidden}
.v2 .reviews-focus__field .marquee{padding-block:4px}
.v2 .reviews-focus__field .marquee+.marquee{margin-top:1rem}
.v2 .reviews-focus__field .pcard{width:min(29rem,82vw);min-height:245px;padding:2rem 2.25rem;border:1px solid rgba(40,53,79,.05);border-radius:24px;background:rgba(255,255,255,.86);box-shadow:0 18px 48px rgba(53,76,118,.06)}
.v2 .reviews-focus__field .pcard__q{color:#17181b}
.v2 .reviews-focus__field .pcard__t{font-size:1.15rem;line-height:1.5}
.v2 .reviews-focus__field .pcard__r{color:#8a8f98}
.v2 .reviews-focus__fine{max-width:720px;margin:2.5rem 0 0}
@media(max-width:819px){
  .v2 .compatibility-strip,
  .v2 .community-proof,
  .v2 .reviews-focus,
  .v2 .founder-note,
  .v2 .journey,
  .v2 .goal-fit,
  .v2 .prize-focus,
  .v2 .decision,
  .v2 .buying-questions{padding-block:4.25rem!important}
  .v2 .community-proof__head h2{margin-bottom:3rem}
  .v2 .community-proof__head .community-proof__intro{margin-bottom:2.25rem}
  .v2 .reviews-focus__field .marquee{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-mask-image:none;mask-image:none}
  .v2 .reviews-focus__field .marquee__track{animation:none!important}
  .v2 .reviews-focus__field .pcard{min-height:230px;padding:1.5rem;scroll-snap-align:center}
}

/* Lower-funnel editorial rebuild: every section answers one buying question. */
.reviews-focus{position:relative;padding-block:clamp(6rem,9vw,9rem)!important;background:#fff;overflow:hidden}.reviews-focus::before{content:"";position:absolute;inset:5% -10% auto;height:75%;pointer-events:none;background:radial-gradient(circle at 20% 55%,rgba(188,221,255,.35),transparent 35%),radial-gradient(circle at 80% 35%,rgba(231,204,255,.3),transparent 36%)}.reviews-focus>.wrap{position:relative;max-width:1240px}.reviews-focus__head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.55fr);align-items:end;gap:clamp(2rem,7vw,7rem)}.reviews-focus__head h2{max-width:14ch;margin:.7rem 0 0;font-size:clamp(3.7rem,6vw,6.4rem);line-height:.9;letter-spacing:-.067em}.reviews-focus__head>div:last-child{padding-bottom:.45rem}.reviews-focus__head>div:last-child p{margin:0 0 1rem;color:#686d75;line-height:1.55}.reviews-focus__head a{color:#25272b;font-size:.82rem;font-weight:750}.reviews-focus__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:clamp(3rem,5vw,5rem)}.reviews-focus .quote{min-height:350px;padding:2rem;border:0;border-radius:26px;background:#eaf2ff;box-shadow:none}.reviews-focus .quote:nth-child(2){background:#eeeafd}.reviews-focus .quote:nth-child(3){background:#fff0ea}.reviews-focus .quote__stars{color:#4A77FF;letter-spacing:.08em}.reviews-focus .quote__text{font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.25;letter-spacing:-.025em}.reviews-focus .quote__who{margin-top:auto;padding-top:1.5rem;border-top:1px solid rgba(46,55,72,.12)}.reviews-focus .quote__who img{width:52px;height:52px}.reviews-focus .quote__badge{color:#4A77FF}.reviews-focus__cta{margin-top:2rem;text-align:center}
.founder-note{padding-block:clamp(4.5rem,7vw,7rem)!important;background:#fff}
.founder-note__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.75fr);align-items:center;gap:clamp(2.5rem,6vw,6rem);max-width:1180px}
.founder-note__media{margin:0;aspect-ratio:16/9;border-radius:28px;overflow:hidden}
.founder-note__media img{width:100%;height:100%;object-fit:cover}.founder-note__copy h2{margin:.55rem 0 1rem;font-size:clamp(2.8rem,4.5vw,4.7rem);line-height:.94;letter-spacing:-.06em}.founder-note__copy>p:not(.eyebrow){max-width:40ch;color:#6d7178;font-size:1.06rem;line-height:1.55}.founder-note__actions{display:flex;align-items:center;gap:1.2rem;margin-top:1.6rem;flex-wrap:wrap}.founder-note__actions>a{color:#565a61;font-size:.82rem;font-weight:700}

.journey{position:relative;padding-block:clamp(6rem,9vw,9rem)!important;background:linear-gradient(145deg,#edf5ff,#f0edff 55%,#fff1eb)}
.journey__layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(440px,1.15fr);gap:clamp(4rem,9vw,9rem);max-width:1180px}
.journey__intro{align-self:start;position:sticky;top:20vh}.journey__intro h2{max-width:9ch;margin:.7rem 0 1.4rem;font-size:clamp(3.7rem,5.5vw,5.8rem);line-height:.9;letter-spacing:-.065em}.journey__intro>p:not(.eyebrow){max-width:36ch;color:#6b7078;line-height:1.55}.journey__meter{width:min(340px,100%);height:4px;margin:2rem 0 1.8rem;border-radius:99px;background:rgba(74,119,255,.14);overflow:hidden}.journey__meter i{display:block;width:100%;height:100%;background:#4A77FF;transform:scaleX(.25);transform-origin:left;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.journey__steps{margin:0;padding:0;list-style:none}.journey__steps li{display:grid;grid-template-columns:58px 1fr;gap:1.25rem;min-height:55vh;padding:10vh 0;border-top:1px solid rgba(65,74,91,.15);opacity:.45;transition:opacity .45s ease,transform .55s cubic-bezier(.16,1,.3,1)}.journey__steps li:first-child{border-top:0}.journey__steps li.is-active{opacity:1;transform:translateX(-10px)}.journey__steps li>span{color:#4A77FF;font-size:.72rem;font-weight:850;letter-spacing:.15em}.journey__steps h3{max-width:12ch;margin:0 0 1rem;font-size:clamp(2.2rem,3.4vw,3.6rem);line-height:.96;letter-spacing:-.055em}.journey__steps p{max-width:42ch;margin:0;color:#666b73;font-size:1.06rem;line-height:1.55}.journey__steps small{display:inline-block;margin-top:1.2rem;padding:.55rem .85rem;border-radius:999px;background:rgba(255,255,255,.72);color:#656a72;font-weight:700}

.goal-fit{padding-block:clamp(6rem,9vw,9rem)!important;background:#fff}.goal-fit>.wrap{max-width:1160px}.goal-fit__head{text-align:center}.goal-fit__head h2{margin:.7rem auto 1.2rem;font-size:clamp(3.4rem,6vw,6.2rem);line-height:.9;letter-spacing:-.065em}.goal-fit__head>p:last-child{max-width:50ch;margin-inline:auto;color:#6c7077;font-size:1.05rem;line-height:1.55}.goal-fit__tabs{display:grid;grid-template-columns:repeat(3,1fr);max-width:760px;margin:3rem auto 0;padding:6px;border-radius:999px;background:#f0f2f5}.goal-fit__tabs button{min-height:54px;border:0;border-radius:999px;background:transparent;color:#696d74;font:750 .9rem/1 inherit;cursor:pointer}.goal-fit__tabs button[aria-selected="true"]{background:#17181b;color:#fff;box-shadow:0 8px 22px rgba(24,29,39,.15)}.goal-fit__panels{max-width:920px;margin:1.25rem auto 0}.goal-fit__panels article{min-height:260px;padding:clamp(2.5rem,5vw,4.5rem);border-radius:28px;background:linear-gradient(135deg,#e8f2ff,#efedff);text-align:center;animation:goal-panel-in .3s cubic-bezier(.16,1,.3,1)}.goal-fit__panels article:nth-child(2){background:linear-gradient(135deg,#eef4ea,#e8f4ff)}.goal-fit__panels article:nth-child(3){background:linear-gradient(135deg,#fff0e9,#f0edff)}.goal-fit__panels b{display:block;font-size:clamp(2rem,3.5vw,3.2rem);line-height:1;letter-spacing:-.05em}.goal-fit__panels p{max-width:48ch;margin:1rem auto;color:#656a72;font-size:1.05rem;line-height:1.5}.goal-fit__panels span{font-size:.76rem;font-weight:750;color:#4A77FF}@keyframes goal-panel-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.prize-focus{padding-block:clamp(5rem,8vw,8rem)!important}.prize-focus .prize-hero{align-items:center}.prize-focus__label{margin:0 0 1rem;color:#737780;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.prize-focus .prize-list{background:rgba(255,255,255,.62);border-radius:24px;padding:.5rem 1.25rem}.prize-focus .prize-list li{padding:1rem 0;border:0;border-bottom:1px solid rgba(72,80,96,.12);background:transparent}.prize-focus .prize-list li:last-child{border-bottom:0}.prize-focus .prize-list .pl,.prize-focus .prize-list .pl small{color:#5f646d}.prize-focus .typicality{color:#737780}.prize-focus .typicality a{color:#24262a;font-weight:700}

.decision{padding-block:clamp(6rem,9vw,9rem)!important;background:#fff}.decision__shell{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(480px,1fr);gap:clamp(3rem,8vw,8rem);max-width:1180px;align-items:start}.decision__intro{position:sticky;top:18vh}.decision__intro h2{margin:.7rem 0 1.25rem;font-size:clamp(3.8rem,5.7vw,6rem);line-height:.9;letter-spacing:-.065em}.decision__intro>p:not(.eyebrow){max-width:36ch;color:#6c7077;line-height:1.55}.decision__proof{display:flex;flex-direction:column;gap:.65rem;margin-top:2rem}.decision__proof span{display:flex;align-items:center;gap:.65rem;color:#4f545c;font-size:.82rem;font-weight:720}.decision__proof span::before{content:"✓";display:grid;width:1.65rem;height:1.65rem;place-items:center;border-radius:50%;background:#e8f0ff;color:#4A77FF}.decision__offer .plan{margin:0;padding:clamp(2rem,4vw,3.5rem);border:0;border-radius:30px;background:#f3f6fb;box-shadow:none}.decision__offer .plan__price{margin-block:1.5rem}.decision__offer .plan__list{grid-template-columns:1fr}.decision__renewal{display:grid;gap:.35rem;margin:1.5rem 0;padding:1.15rem 0;border-block:1px solid #dfe3ea}.decision__renewal b{font-size:.86rem}.decision__renewal span{color:#666b73;font-size:.8rem;line-height:1.45}.decision__guarantee{display:flex;gap:1rem;align-items:center;margin:0 0 1.5rem;padding:1.15rem;border-radius:18px;background:#e9f7ef}.decision__guarantee svg{width:48px;height:48px;flex:none;fill:none;stroke:#1b7b4c;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.decision__guarantee b,.decision__guarantee small{display:block}.decision__guarantee b{font-size:.78rem;line-height:1.35}.decision__guarantee small{margin-top:.25rem;color:#557063;font-size:.7rem;line-height:1.4}.decision .plan__fine a{color:inherit;text-decoration:underline}
.decision__head{max-width:940px;margin:0 auto 4rem;text-align:center}.decision__head h2{margin:.7rem 0 1.25rem;font-size:clamp(3.8rem,6vw,6.4rem);line-height:.9;letter-spacing:-.067em}.decision__head>p:last-child{max-width:54ch;margin-inline:auto;color:#696e76;font-size:1.05rem;line-height:1.55}.pricing-models{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pricing-model{position:relative;display:flex;min-height:570px;padding:1.55rem;flex-direction:column;border:1px solid #e2e5ea;border-radius:24px;background:#f6f7f9}.pricing-model:nth-child(2){background:#eef4ff}.pricing-model:nth-child(3){background:#f0edff}.pricing-model--featured{border-color:#17181b;background:#17181b!important;color:#fff;box-shadow:0 26px 65px rgba(24,28,38,.2)}.pricing-model__flag{position:absolute;right:1rem;top:1rem;padding:.42rem .65rem;border-radius:999px;background:#4A77FF;color:#fff;font-size:.62rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.pricing-model__label{display:block;min-height:2em;margin-bottom:1.4rem;color:#71767e;font-size:.66rem;font-weight:820;letter-spacing:.11em;text-transform:uppercase}.pricing-model--featured .pricing-model__label{color:#8faaff}.pricing-model h3{margin:0 0 .65rem;font-size:1.5rem;line-height:1;letter-spacing:-.04em}.pricing-model>div>p{min-height:4.2em;margin:0;color:#6b7078;font-size:.78rem;line-height:1.45}.pricing-model--featured>div>p{color:rgba(255,255,255,.65)}.pricing-model__price{display:flex;align-items:baseline;gap:.35rem;margin:1.5rem 0 .8rem}.pricing-model__price strong{font-size:clamp(2.6rem,3.5vw,3.7rem);line-height:.9;letter-spacing:-.06em}.pricing-model__price span{color:#737780;font-size:.72rem}.pricing-model--featured .pricing-model__price span{color:rgba(255,255,255,.55)}.pricing-model__value{display:flex;min-height:3rem;flex-direction:column;gap:.2rem;font-size:.7rem}.pricing-model__value s{color:#8a8e95}.pricing-model__value b{color:#4A77FF}.pricing-model ul{display:grid;gap:.7rem;margin:1.2rem 0 1.5rem;padding:1.2rem 0 0;border-top:1px solid rgba(69,76,90,.13);list-style:none}.pricing-model li{position:relative;padding-left:1.25rem;color:#555a62;font-size:.74rem;line-height:1.35}.pricing-model li::before{content:"✓";position:absolute;left:0;color:#4A77FF;font-weight:900}.pricing-model--featured li{color:rgba(255,255,255,.78)}.pricing-model .btn{width:100%;margin-top:auto;font-size:.76rem;padding-inline:.7rem}.decision>.wrap>.decision__guarantee{max-width:940px;margin:2rem auto 0;padding:1.25rem 1.5rem}.decision__guarantee>a{margin-left:auto;color:#236843;font-size:.72rem;font-weight:750;white-space:nowrap}.decision__fine{text-align:center;color:#8a8e95;font-size:.68rem}

.buying-questions{padding-block:clamp(6rem,9vw,9rem)!important}.buying-questions__list{max-width:850px;margin:3rem auto 0;border-top:1px solid #d9dde4}.buying-questions__list .obj,.buying-questions__list .faq__item{margin:0;border:0;border-bottom:1px solid #d9dde4;border-radius:0;background:transparent}.buying-questions__list summary{min-height:70px;padding:1.35rem 3.5rem 1.35rem 0;font-size:1.02rem}.buying-questions__list .obj summary::before{display:none}.buying-questions__list .obj summary::after{right:.25rem}.buying-questions__list .faq__item summary::after{right:.25rem}.buying-questions__list .obj__a,.buying-questions__list .faq__a{padding:0 2.5rem 1.5rem 0}.buying-questions__list p{color:#666b73;line-height:1.55}.buying-questions .cta-row{margin-top:2.5rem}.closing small{display:block;margin-top:1rem;color:rgba(255,255,255,.55);text-align:center}

@media(max-width:819px){
  .reviews-focus{padding-block:5rem!important}.reviews-focus__head{grid-template-columns:1fr;gap:1.5rem}.reviews-focus__head h2{font-size:3.45rem}.reviews-focus__grid{display:flex;gap:10px;margin-inline:-16px;padding:4px 8vw 18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.reviews-focus__grid::-webkit-scrollbar{display:none}.reviews-focus .quote{flex:0 0 78vw;min-height:330px;padding:1.5rem;border-radius:22px;scroll-snap-align:center}.reviews-focus .quote__text{font-size:1.35rem}
  .founder-note__grid,.journey__layout,.decision__shell{grid-template-columns:1fr}.founder-note__grid{gap:2rem}.founder-note__media{border-radius:22px}.founder-note__copy h2{font-size:3rem}.founder-note__actions .btn{width:auto}
  .journey{padding-block:5rem!important}.journey__layout{gap:3rem}.journey__intro{position:relative;top:auto;padding-inline:4px}.journey__intro h2{font-size:3.55rem}.journey__meter{display:none}.journey__steps li{grid-template-columns:40px 1fr;gap:.75rem;min-height:0;padding:2.2rem 0;opacity:1}.journey__steps li.is-active{transform:none}.journey__steps h3{font-size:2rem}.journey__steps p{font-size:.95rem}
  .goal-fit__head h2{font-size:3.45rem}.goal-fit__tabs{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:max-content;justify-content:start;max-width:none;margin-inline:-4px;overflow-x:auto;border-radius:18px;padding:5px}.goal-fit__tabs button{padding-inline:1.2rem;white-space:nowrap}.goal-fit__panels article{min-height:290px;padding:2.5rem 1.25rem;border-radius:24px;display:flex;flex-direction:column;justify-content:center}.goal-fit__panels b{font-size:2.2rem}
  .decision__intro{position:relative;top:auto}.decision__intro h2{font-size:3.65rem}.decision__offer .plan{padding:1.5rem;border-radius:24px}.decision__guarantee{align-items:flex-start}.decision__proof{margin-bottom:.5rem}.buying-questions__list summary{min-height:64px;padding-right:2.5rem}.buying-questions__list .obj__a,.buying-questions__list .faq__a{padding-right:.5rem}
  .decision__head{margin-bottom:2.5rem;text-align:left}.decision__head h2{font-size:3.5rem}.decision__head>p:last-child{margin-left:0}.pricing-models{display:flex;gap:10px;margin-inline:-16px;padding:5px 8vw 20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.pricing-models::-webkit-scrollbar{display:none}.pricing-model{flex:0 0 82vw;min-height:535px;padding:1.5rem;scroll-snap-align:center}.pricing-model__price strong{font-size:3.4rem}.decision>.wrap>.decision__guarantee{margin-top:1.5rem;align-items:flex-start;flex-wrap:wrap}.decision__guarantee>a{margin:0 0 0 64px}.decision__fine{padding-inline:1rem;line-height:1.5}
  .praise{overflow:hidden}.praise .marquee--offset{display:none}.praise .marquee{-webkit-mask-image:none;mask-image:none;overflow-x:auto;scroll-snap-type:x mandatory}.praise .marquee__track{animation:none!important;transform:none!important;padding-left:0}.praise .pcard{scroll-snap-align:center}
}
@media(prefers-reduced-motion:reduce){.journey__steps li,.goal-fit__panels article{transition:none;animation:none}.journey__steps li{opacity:1;transform:none}}

/* Floating nav uses the standalone challenge mark, never the wordmark. */
.v2 .header__brand{display:grid;flex:0 0 auto;width:34px;height:34px;place-items:center}
.v2 .header__brand{display:grid!important;width:42px;height:42px;place-items:center;border-radius:11px;background:#111317;overflow:hidden}
.v2 .header__logo{display:block!important;width:32px!important;height:32px!important;max-width:none!important;object-fit:contain!important;object-position:center!important;filter:invert(1)!important}
@media(max-width:819px){.v2 .header__brand{width:38px!important;height:38px!important;border-radius:10px}.v2 .header__logo{width:29px!important;height:29px!important}}

/* Food-log compilation: real UI fragments, composed as one depth system. */
.v2 .hero5__feature--workout,.v2 .hero5__feature--nutrition,.v2 .hero5__feature--accountability,.v2 .hero5__feature--tracking,.v2 .hero5__feature--community{display:none!important}
.v2 .hero5__food{display:block!important;border:0!important;background:transparent!important;box-shadow:0 20px 42px rgba(18,31,55,.18)!important;border-radius:18px!important;overflow:hidden!important;opacity:1!important}
.v2 .hero5__food img{display:block;width:100%;height:100%;object-fit:cover;mix-blend-mode:normal!important;filter:none!important}
.v2 .hero5__food--results{left:3%!important;top:250px!important;width:260px!important;height:74px!important}
.v2 .hero5__food--macros{right:2%!important;top:260px!important;width:275px!important;height:104px!important}
.v2 .hero5__food--calories{left:6%!important;top:430px!important;width:185px!important;height:166px!important}
.v2 .hero5__food--database{right:6%!important;top:420px!important;width:170px!important;height:210px!important}
@media(max-width:1050px){
  .v2 .hero5__food--results{left:1%!important;top:275px!important;width:210px!important;height:60px!important}.v2 .hero5__food--macros{right:1%!important;top:285px!important;width:220px!important;height:83px!important}.v2 .hero5__food--calories{left:2%!important;top:430px!important;width:155px!important;height:140px!important}.v2 .hero5__food--database{right:2%!important;top:425px!important;width:145px!important;height:178px!important}
}
@media(max-width:819px){
  .v2 .hero5__feature--tracking,.v2 .hero5__feature--community{display:none!important}.v2 .hero5__food{border-radius:12px!important}.v2 .hero5__food--results{display:block!important;left:-7%!important;top:118px!important;width:145px!important;height:42px!important}.v2 .hero5__food--macros{display:block!important;right:-8%!important;top:70px!important;width:155px!important;height:59px!important}.v2 .hero5__food--calories,.v2 .hero5__food--database{display:none!important}
}

/* Nomu-inspired depth finish: CSS texture only; the product scene stays DOM-native. */
.v2 .hero5::after{content:"";position:absolute;z-index:0;inset:0;pointer-events:none;opacity:.16;background-image:radial-gradient(circle,rgba(69,99,135,.32) .65px,transparent .75px);background-size:18px 18px;mask-image:linear-gradient(to bottom,transparent 8%,#000 34%,#000 78%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 8%,#000 34%,#000 78%,transparent 100%)}
@media(prefers-reduced-motion:reduce){.v2 .hero5__feature{transform:none!important;will-change:auto!important}.v2 .hero5__phone{will-change:auto!important}}

/* Transformation proof mosaic — final editorial composition */
.v2 main .tx{background:#fff;overflow:hidden}
.v2 main .tx__stage{width:min(1260px,calc(100% - 32px));margin-inline:auto}
.v2 main .tx__rail{margin:0;padding:0;list-style:none}
.v2 main .tx-tile{display:block;position:relative;overflow:hidden;background:#eee;border-radius:30px;isolation:isolate}
.v2 main .tx-tile img{position:absolute;inset:0 auto 0 0;width:200%;max-width:none;height:100%;object-fit:cover;transform:translate3d(0,0,0);transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.v2 main .tx-tile--after img{left:-100%}
.v2 main .tx-tile:focus-visible{outline:3px solid #151518;outline-offset:4px}
.v2 main .tx__prize{text-align:center;color:#171719}
.v2 main .tx__prize-kicker{display:block;margin-bottom:1.1rem;color:#76767c;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.v2 main .tx__prize strong{display:block;letter-spacing:-.06em;line-height:.96;font-weight:620}
.v2 main .tx__prize p{margin:1.3rem auto 1.35rem;color:#707075;line-height:1.48}
.v2 main .tx__prize-paid{display:flex;align-items:center;justify-content:center;gap:.55rem;margin-bottom:1.45rem;color:#66666c;font-size:.9rem}
.v2 main .tx__prize-paid b{color:#1b1b1d;font-weight:700}
.v2 main .tx__prize-paid i{width:3px;height:3px;border-radius:50%;background:#aaa}
.v2 main .tx .typicality{max-width:760px;margin-top:2.4rem;color:#929297;font-size:.72rem;line-height:1.55}

@media(min-width:1051px){
  .v2 main .tx{padding:7.5rem 0 5.5rem!important}
  .v2 main .tx__stage{display:block!important;height:auto!important;min-height:0!important;padding:0!important}
  .v2 main .tx__rail{position:relative!important;inset:auto!important;display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(6,82px);gap:14px 16px;width:100%!important;height:562px!important;overflow:visible!important;mask-image:none!important;-webkit-mask-image:none!important}
  .v2 main .tx-tile{opacity:1!important;transform:none!important;animation:none!important}
  .v2 main .tx-tile:nth-child(1){grid-column:1;grid-row:1/4}.v2 main .tx-tile:nth-child(2){grid-column:1;grid-row:4/7}
  .v2 main .tx-tile:nth-child(3){grid-column:2;grid-row:1/3}.v2 main .tx-tile:nth-child(4){grid-column:2;grid-row:3/5}.v2 main .tx-tile:nth-child(5){grid-column:2;grid-row:5/7}
  .v2 main .tx-tile:nth-child(6){grid-column:3;grid-row:2/7}.v2 main .tx-tile:nth-child(7){grid-column:4;grid-row:1/6}
  .v2 main .tx-tile:nth-child(8){grid-column:5;grid-row:1/6}.v2 main .tx-tile:nth-child(9){grid-column:6;grid-row:2/7}
  .v2 main .tx-tile:nth-child(10){grid-column:7;grid-row:1/3}.v2 main .tx-tile:nth-child(11){grid-column:7;grid-row:3/5}.v2 main .tx-tile:nth-child(12){grid-column:7;grid-row:5/7}
  .v2 main .tx-tile:nth-child(13){grid-column:8;grid-row:1/4}.v2 main .tx-tile:nth-child(14){grid-column:8;grid-row:4/7}
  .v2 main .tx-tile:nth-child(1){top:24px;border-radius:44px}.v2 main .tx-tile:nth-child(2){top:10px;border-radius:34px}
  .v2 main .tx-tile:nth-child(3){top:-10px;border-radius:38px}.v2 main .tx-tile:nth-child(4){top:8px;border-radius:46px}.v2 main .tx-tile:nth-child(5){top:-5px;border-radius:32px}
  .v2 main .tx-tile:nth-child(6){top:22px;border-radius:48px}.v2 main .tx-tile:nth-child(7){top:108px;border-radius:34px}.v2 main .tx-tile:nth-child(8){top:78px;border-radius:46px}.v2 main .tx-tile:nth-child(9){top:34px;border-radius:36px}
  .v2 main .tx-tile:nth-child(10){top:-12px;border-radius:40px}.v2 main .tx-tile:nth-child(11){top:9px;border-radius:32px}.v2 main .tx-tile:nth-child(12){top:-4px;border-radius:46px}
  .v2 main .tx-tile:nth-child(13){top:22px;border-radius:42px}.v2 main .tx-tile:nth-child(14){top:6px;border-radius:34px}
  .v2 main .tx-tile:hover img{transform:translate3d(0,-8px,0) scale(1.025)}
  .v2 main .tx-tile--after:hover img{transform:translate3d(0,-8px,0) scale(1.025)}
  .v2 main .tx__prize{position:relative!important;inset:auto!important;width:min(700px,80%)!important;max-width:none!important;margin:-54px auto 0!important;padding:1.25rem 1rem 0!important;background:#fff!important;transform:none!important;z-index:4}
  .v2 main .tx__prize strong{font-size:clamp(3.5rem,4.5vw,4.25rem)!important}
  .v2 main .tx__prize p{max-width:590px;font-size:1.08rem!important}
}

@media(max-width:1050px) and (min-width:820px){
  .v2 main .tx{padding:6rem 0 5rem!important}
  .v2 main .tx__stage{display:block!important;height:auto!important;min-height:0!important}
  .v2 main .tx__rail{position:relative!important;display:grid!important;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(4,96px);gap:12px;width:100%!important;height:420px!important;overflow:hidden!important}
  .v2 main .tx-tile{display:block!important;position:relative!important;opacity:1!important;transform:none!important;border-radius:24px}
  .v2 main .tx-tile:nth-child(1){grid-column:1;grid-row:1/3}.v2 main .tx-tile:nth-child(2){grid-column:1;grid-row:3/5}.v2 main .tx-tile:nth-child(3){grid-column:2;grid-row:1/5}.v2 main .tx-tile:nth-child(4){grid-column:3;grid-row:2/5}.v2 main .tx-tile:nth-child(5){grid-column:4;grid-row:1/4}.v2 main .tx-tile:nth-child(6){grid-column:5;grid-row:2/5}.v2 main .tx-tile:nth-child(7){grid-column:6;grid-row:1/5}.v2 main .tx-tile:nth-child(8){grid-column:7;grid-row:1/3}.v2 main .tx-tile:nth-child(9){grid-column:7;grid-row:3/5}.v2 main .tx-tile:nth-child(n+10){display:none!important}
  .v2 main .tx__prize{position:relative!important;inset:auto!important;width:min(650px,82%)!important;margin:-34px auto 0!important;padding:1.25rem 1rem 0!important;background:#fff!important;transform:none!important}
  .v2 main .tx__prize strong{font-size:3.5rem!important}
}

@media(max-width:819px){
  .v2 main .tx{padding:5rem 0 4.5rem!important}
  .v2 main .tx__stage{display:flex!important;flex-direction:column;width:100%;gap:2.2rem!important}
  .v2 main .tx__prize{order:1!important;position:relative!important;inset:auto!important;width:100%!important;margin:0!important;padding:0 1.25rem!important;transform:none!important;background:#fff!important}
  .v2 main .tx__prize strong{font-size:clamp(2.75rem,13vw,4rem)!important}
  .v2 main .tx__prize p{max-width:34rem;font-size:1rem!important}
  .v2 main .tx__prize-paid{flex-wrap:wrap;max-width:320px;margin-inline:auto;line-height:1.45}
  .v2 main .tx__rail{order:2!important;position:relative!important;display:grid!important;grid-auto-flow:column;grid-auto-columns:68vw;grid-template-rows:420px;gap:12px;width:100%!important;height:auto!important;overflow-x:auto!important;overscroll-behavior-inline:contain;padding:4px 8vw 18px!important;scroll-padding-inline:8vw;scroll-snap-type:x mandatory;scrollbar-width:none;mask-image:none!important;-webkit-mask-image:none!important}
  .v2 main .tx__rail::-webkit-scrollbar{display:none}
  .v2 main .tx-tile,.v2 main .tx-tile:nth-child(n){display:block!important;position:relative!important;inset:auto!important;width:auto!important;height:auto!important;opacity:1!important;transform:none!important;animation:none!important;border-radius:28px;scroll-snap-align:start}
}

/* Final motion/feather layer — intentionally last in the cascade. */
@media(min-width:820px){
  .v2 main .tx__prize{background:transparent!important;isolation:isolate}
  .v2 main .tx__prize::before{content:"";position:absolute;z-index:-1;inset:-80px -120px -38px;pointer-events:none;background:radial-gradient(ellipse at center,#fff 0%,rgba(255,255,255,.99) 46%,rgba(255,255,255,.9) 65%,rgba(255,255,255,.42) 82%,transparent 100%)}
}
@media(min-width:820px) and (prefers-reduced-motion:no-preference){
  .v2 main .tx-tile{animation:tx-proof-drift 9s cubic-bezier(.45,0,.55,1) infinite alternate!important;will-change:transform}
  .v2 main .tx-tile:nth-child(3n+1){animation-duration:10.5s!important;animation-delay:-4s!important}
  .v2 main .tx-tile:nth-child(3n+2){animation-duration:8.5s!important;animation-delay:-7s!important;animation-direction:alternate-reverse!important}
  .v2 main .tx-tile:nth-child(4n){animation-duration:11.5s!important;animation-delay:-2s!important}
}
@media(prefers-reduced-motion:reduce){.v2 main .tx-tile{animation:none!important;transform:none!important;will-change:auto}}

/* Hero assets reveal as one decoded set; the 25ms cadence reads as motion,
   never as individual network requests catching up. */
.motion-entered:not(.hero-features-ready) .v2 .hero5__feature{opacity:0!important;filter:blur(8px)!important}
.motion-entered.hero-features-ready .v2 .hero5__feature{opacity:1!important;filter:blur(0)!important;transition-duration:.48s!important}
.motion-entered.hero-features-ready .v2 .hero5__feature:nth-child(1){transition-delay:0ms!important}.motion-entered.hero-features-ready .v2 .hero5__feature:nth-child(2){transition-delay:25ms!important}.motion-entered.hero-features-ready .v2 .hero5__feature:nth-child(3){transition-delay:50ms!important}.motion-entered.hero-features-ready .v2 .hero5__feature:nth-child(4){transition-delay:75ms!important}.motion-entered.hero-features-ready .v2 .hero5__feature:nth-child(5){transition-delay:100ms!important}.motion-entered.hero-features-ready .v2 .hero5__feature:nth-child(6){transition-delay:125ms!important}.motion-entered.hero-features-ready .v2 .hero5__feature:nth-child(7){transition-delay:150ms!important}.motion-entered.hero-features-ready .v2 .hero5__feature:nth-child(8){transition-delay:175ms!important}.motion-entered.hero-features-ready .v2 .hero5__feature:nth-child(9){transition-delay:200ms!important}.motion-entered.hero-features-ready .v2 .hero5__feature:nth-child(10){transition-delay:225ms!important}.motion-entered.hero-features-ready .v2 .hero5__feature:nth-child(11){transition-delay:250ms!important}



/* Compact method cards: keep the four-part system scannable in one viewport. */
.v2 .sec--tint:has(.pillars){padding-block:clamp(4.5rem,6vw,6rem)}
.v2 .sec--tint:has(.pillars) .sec-head{margin-bottom:2.25rem}
.v2 .pillars{gap:12px}
.v2 .pillar,.v2 .pillar:nth-child(even){min-height:430px;padding:1.75rem 1.75rem 0;border-radius:22px}
.v2 .pillar__n{margin-bottom:.55rem;font-size:.7rem}
.v2 .pillar__body h3{margin-bottom:.45rem;font-size:1.65rem;line-height:1.02}
.v2 .pillar__body p{margin-bottom:.65rem;font-size:.92rem;line-height:1.45}
.v2 .pillar__proof{margin-top:0;font-size:.72rem}
.v2 .pillar__media img{max-height:245px;border-radius:18px}
@media(max-width:819px){
  .v2 .sec--tint:has(.pillars){padding-block:4rem}
  .v2 .sec--tint:has(.pillars) .sec-head{margin-bottom:1.75rem}
  .v2 .pillars{gap:10px}
  .v2 .pillar,.v2 .pillar:nth-child(even){min-height:390px;padding:1.5rem 1.35rem 0}
  .v2 .pillar__body h3{font-size:1.45rem}
  .v2 .pillar__media img{max-height:220px}
}

/* Hero art-direction correction: unframed feature fragments around the message. */
.v2 .hero5__glow{inset:10% 4% -4%!important;z-index:-1!important;border-radius:50%!important;background:radial-gradient(ellipse,rgba(255,255,255,.98),rgba(219,239,255,.42) 52%,transparent 74%)!important;filter:blur(8px)!important;transform:none!important;box-shadow:none!important}
.v2 .hero5__features{position:absolute;inset:70px -180px auto;z-index:-1;height:620px;pointer-events:none}
.v2 .hero5__feature{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
.v2 .hero5__feature img{mix-blend-mode:screen!important;filter:drop-shadow(0 20px 34px rgba(38,65,104,.15))!important}
.v2 .hero5__feature--workout{left:-3%;top:85px;width:225px}.v2 .hero5__feature--nutrition{right:-2%;top:120px;width:260px}.v2 .hero5__feature--community{left:1%;right:auto;top:365px;width:235px;opacity:.9}.v2 .hero5__feature--tracking{right:0;top:390px;width:245px}.v2 .hero5__feature--accountability{left:12%;top:500px;width:225px;opacity:.82}

@media(max-width:1050px){
  .v2 .hero5__features{inset:85px -70px auto;height:560px}.v2 .hero5__feature--workout{left:-4%;width:175px}.v2 .hero5__feature--nutrition{right:-4%;width:195px}.v2 .hero5__feature--community{left:-2%;top:380px;width:185px}.v2 .hero5__feature--tracking{right:-2%;top:400px;width:190px}.v2 .hero5__feature--accountability{display:none}
}
@media(max-width:819px){
  .v2 .hero5__features{inset:420px -14% auto;height:300px}.v2 .hero5__feature--workout{display:none}.v2 .hero5__feature--nutrition{right:-4%;top:75px;width:145px}.v2 .hero5__feature--tracking{right:auto;left:-4%;top:145px;width:140px}.v2 .hero5__feature--community{display:none}
}

/* Hero art direction v2: one cinematic product scene, not floating stickers. */
.v2 .hero5__devices{height:520px!important;max-width:880px!important;margin-top:1.4rem!important;perspective:1500px}
.v2 .hero5__glow{inset:8% 7% -18%!important;border-radius:48% 52% 44% 56%/45% 43% 57% 55%!important;background:radial-gradient(circle at 48% 35%,#4f8cff 0%,#1760ee 38%,#0a3ca7 67%,rgba(9,47,129,.1) 78%,transparent 80%)!important;filter:blur(0)!important;transform:rotate(-3deg);box-shadow:0 50px 100px rgba(29,91,219,.25)}
.v2 .hero5__features{inset:0 -20% -5%;z-index:2}
.v2 .hero5__feature{border:1px solid rgba(255,255,255,.13);border-radius:22px;background:#05070b;box-shadow:0 24px 55px rgba(6,18,44,.28);overflow:hidden}
.v2 .hero5__feature img{mix-blend-mode:normal!important;filter:none!important;animation:hero-panel-arrive 1.15s cubic-bezier(.16,1,.3,1) both!important}
.v2 .hero5__feature--workout{left:-2%;top:31%;width:250px}.v2 .hero5__feature--nutrition{right:-3%;top:27%;width:310px}.v2 .hero5__feature--accountability{left:3%;top:70%;width:280px}.v2 .hero5__feature--tracking{right:2%;top:68%;width:285px}.v2 .hero5__feature--community{right:12%;top:4%;width:275px;opacity:1}
@keyframes hero-panel-arrive{from{opacity:0;transform:translate3d(0,24px,0) scale(.9)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}

.v2 .hero5__phone{z-index:5!important;background:#090b10!important;border:1px solid rgba(255,255,255,.2);box-shadow:0 38px 80px rgba(4,18,52,.42)!important;overflow:hidden!important}
.v2 .hero5__phone-screen{display:block;width:100%;height:100%;overflow:hidden;border-radius:inherit;transform-origin:50% 100%}
.v2 .hero5__phone-screen img{display:block;width:100%;height:auto}
.motion-entered .v2 .hero5__phone img{animation:none!important}
.motion-entered .v2 .hero5__phone--main .hero5__phone-screen{animation:hero-phone-main 1.15s .08s cubic-bezier(.16,1,.3,1) both}
.motion-entered .v2 .hero5__phone--left .hero5__phone-screen{animation:hero-phone-left 1.2s .24s cubic-bezier(.16,1,.3,1) both}
.motion-entered .v2 .hero5__phone--right .hero5__phone-screen{animation:hero-phone-right 1.2s .32s cubic-bezier(.16,1,.3,1) both}
@keyframes hero-phone-main{from{opacity:0;transform:translate3d(0,70px,0) scale(.88)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes hero-phone-left{from{opacity:0;transform:translate3d(65px,45px,0) rotate(7deg) scale(.9)}to{opacity:1;transform:none}}
@keyframes hero-phone-right{from{opacity:0;transform:translate3d(-65px,45px,0) rotate(-7deg) scale(.9)}to{opacity:1;transform:none}}

@media(max-width:1050px){
  .v2 .hero5__devices{max-width:720px!important}.v2 .hero5__features{inset:3% -8% 0}.v2 .hero5__feature--workout{left:-2%;width:205px}.v2 .hero5__feature--nutrition{right:-2%;width:245px}.v2 .hero5__feature--accountability{left:0;width:225px}.v2 .hero5__feature--tracking{right:0;width:230px}
}
@media(max-width:819px){
  .v2 .hero5__devices{height:345px!important;margin-top:1.6rem!important}.v2 .hero5__glow{inset:14% -20% -30%!important}.v2 .hero5__features{inset:8% -18% 0}.v2 .hero5__feature{border-radius:15px}.v2 .hero5__feature--workout{left:-7%;top:43%;width:135px}.v2 .hero5__feature--nutrition{right:-8%;top:35%;width:155px}.v2 .hero5__feature--tracking{right:-6%;top:75%;width:150px}.v2 .hero5__phone{box-shadow:0 25px 55px rgba(4,18,52,.38)!important}
}
@media(prefers-reduced-motion:reduce){
  .v2 .hero5__feature img,.v2 .hero5__phone-screen{animation:none!important;opacity:1!important;transform:none!important}
}

/* Cinematic hero product choreography, translated from the supplied motion brief. */
.hero5__devices{isolation:isolate;perspective:1400px}
.hero5__features{position:absolute;inset:-12% -30% -8%;z-index:1;pointer-events:none}
.hero5__feature{--feature-x:0px;--feature-y:0px;--feature-r:0deg;position:absolute;margin:0;opacity:1;transform:translate3d(var(--feature-x),var(--feature-y),0) rotate(var(--feature-r));will-change:transform}
.hero5__feature img{display:block;width:100%;height:auto;mix-blend-mode:screen;filter:drop-shadow(0 22px 35px rgba(38,65,104,.16));animation:hero-feature-settle 2.8s cubic-bezier(.2,.8,.2,1) both;transform-origin:center}
.hero5__feature--workout{left:-2%;top:14%;width:310px}.hero5__feature--workout img{animation-delay:-2s}
.hero5__feature--nutrition{right:-3%;top:8%;width:330px}.hero5__feature--nutrition img{animation-delay:-5s}
.hero5__feature--accountability{left:3%;top:61%;width:310px}.hero5__feature--accountability img{animation-delay:-4s}
.hero5__feature--tracking{right:1%;top:58%;width:315px}.hero5__feature--tracking img{animation-delay:-1s}
.hero5__feature--community{right:23%;top:-4%;width:270px;opacity:.78}.hero5__feature--community img{animation-delay:-6s}
@keyframes hero-feature-settle{0%{transform:translate3d(0,13px,0) scale(.94)}55%{transform:translate3d(0,-4px,0) scale(1.012)}100%{transform:translate3d(0,0,0) scale(1)}}

.motion-ready .hero5__phone,.motion-ready .hero5__feature{opacity:0;filter:blur(10px)}
.motion-entered .hero5__phone,.motion-entered .hero5__feature{opacity:1;filter:blur(0);transition:opacity .9s cubic-bezier(.2,.8,.2,1),filter .9s cubic-bezier(.2,.8,.2,1)}
.motion-entered .hero5__phone--main{transition-delay:.12s}.motion-entered .hero5__phone--left{transition-delay:.28s}.motion-entered .hero5__phone--right{transition-delay:.38s}
.motion-entered .hero5__feature--nutrition{transition-delay:.45s}.motion-entered .hero5__feature--workout{transition-delay:.56s}.motion-entered .hero5__feature--tracking{transition-delay:.68s}.motion-entered .hero5__feature--accountability{transition-delay:.78s}.motion-entered .hero5__feature--community{transition-delay:.88s}
.hero5__phone{transition:filter .45s ease,box-shadow .45s ease;backface-visibility:hidden}
.hero5__phone--main{box-shadow:0 34px 80px rgba(23,47,81,.28),0 0 0 1px rgba(255,255,255,.16)}
.hero5__phone--left,.hero5__phone--right{filter:saturate(.92) brightness(.95);box-shadow:0 25px 55px rgba(23,47,81,.2)}
.motion-entered .hero5__phone img{animation:hero-screen-settle 1.15s cubic-bezier(.16,1,.3,1) both}.motion-entered .hero5__phone--left img{animation-delay:.28s}.motion-entered .hero5__phone--main img{animation-delay:.12s}.motion-entered .hero5__phone--right img{animation-delay:.38s}
@keyframes hero-screen-settle{from{transform:translate3d(0,18px,0) scale(1.035)}to{transform:translate3d(0,0,0) scale(1)}}

@media(max-width:1050px){
  .hero5__features{inset:-4% -14% -4%}.hero5__feature--workout{left:-5%;width:235px}.hero5__feature--nutrition{right:-6%;width:250px}.hero5__feature--accountability{left:-3%;width:230px}.hero5__feature--tracking{right:-3%;width:235px}.hero5__feature--community{display:none}
}
@media(max-width:819px){
  .hero5__features{inset:2% -18% 0}.hero5__feature--workout{left:-7%;top:28%;width:175px}.hero5__feature--nutrition{right:-8%;top:19%;width:190px}.hero5__feature--tracking{right:-7%;top:65%;width:175px}.hero5__feature--accountability{display:none}
  .hero5__phone--left,.hero5__phone--right{filter:saturate(.9) brightness(.96)}
}
@media(prefers-reduced-motion:reduce){
  .motion-ready .hero5__phone,.motion-ready .hero5__feature{opacity:1;filter:none;transition:none}
  .hero5__feature{transform:none!important;will-change:auto}.hero5__feature img,.hero5__phone img{animation:none!important}
}

/* Gentle proof-wall motion and a feathered copy halo. */
@media(min-width:820px) and (prefers-reduced-motion:no-preference){
  .v2 main .tx-tile{animation:tx-proof-drift 9s cubic-bezier(.45,0,.55,1) infinite alternate!important;will-change:transform}
  .v2 main .tx-tile:nth-child(3n+1){animation-duration:10.5s!important;animation-delay:-4s!important}
  .v2 main .tx-tile:nth-child(3n+2){animation-duration:8.5s!important;animation-delay:-7s!important;animation-direction:alternate-reverse!important}
  .v2 main .tx-tile:nth-child(4n){animation-duration:11.5s!important;animation-delay:-2s!important}
}
@keyframes tx-proof-drift{from{transform:translate3d(0,-5px,0)}to{transform:translate3d(0,7px,0)}}

@media(min-width:820px){
  .v2 main .tx__prize{background:transparent!important;isolation:isolate}
  .v2 main .tx__prize::before{content:"";position:absolute;z-index:-1;inset:-70px -110px -30px;pointer-events:none;background:radial-gradient(ellipse at center,#fff 0%,rgba(255,255,255,.99) 48%,rgba(255,255,255,.92) 66%,rgba(255,255,255,.48) 82%,rgba(255,255,255,0) 100%)}
}

@media(prefers-reduced-motion:reduce){
  .v2 main .tx-tile{animation:none!important;transform:none!important;will-change:auto}
}

@media(prefers-reduced-motion:reduce){.v2 main .tx-tile img{transition:none!important}}

/* Transformation orbit — real participant imagery surrounds the prize pool. */
.tx__stage{position:relative;width:min(1360px,100%);height:720px;margin:0 auto 3.5rem;overflow:hidden}
.tx__stage .tx__rail{position:absolute;inset:0;display:block;overflow:visible;padding:0;mask-image:none;-webkit-mask-image:none}
.tx__stage .txc{position:absolute;width:160px;margin:0;animation:tx-float 6.5s ease-in-out infinite;will-change:transform}
.tx__stage .txc__media{border-radius:48px;box-shadow:0 18px 50px rgba(25,30,40,.12);background:#e9edf2}
.tx__stage .txc__media img{aspect-ratio:3/5;object-fit:cover}
.tx__stage .txc__cap{display:none}.tx__stage .txc__badge{display:none}
.tx__stage .txc:nth-child(1){left:2%;top:23%;width:150px;animation-delay:-1.2s}
.tx__stage .txc:nth-child(2){left:13%;top:3%;width:170px;animation-delay:-4.1s}
.tx__stage .txc:nth-child(3){left:15%;bottom:1%;width:145px;animation-delay:-2.7s}
.tx__stage .txc:nth-child(4){left:31%;top:1%;width:150px;animation-delay:-5.4s}
.tx__stage .txc:nth-child(5){left:30%;bottom:0;width:165px;animation-delay:-.4s}
.tx__stage .txc:nth-child(6){right:30%;top:0;width:165px;animation-delay:-3.3s}
.tx__stage .txc:nth-child(7){right:31%;bottom:1%;width:148px;animation-delay:-5.9s}
.tx__stage .txc:nth-child(8){right:13%;top:3%;width:170px;animation-delay:-2s}
.tx__stage .txc:nth-child(9){right:2%;top:23%;width:150px;animation-delay:-4.7s}
.tx__prize{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);width:370px;aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.8rem;text-align:center;background:radial-gradient(circle at 35% 28%,#fff 0,#f5f0ff 45%,#dcecff 100%);border:1px solid rgba(31,32,37,.08);box-shadow:0 30px 80px rgba(53,65,86,.16)}
.tx__prize::before{content:"";position:absolute;inset:-18px;border:1px solid #dfe4eb;border-radius:50%;opacity:.8}
.tx__prize-kicker{font-size:.72rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:#747880}
.tx__prize strong{display:block;margin:.45rem 0 .7rem;font-size:clamp(4rem,6vw,5.7rem);line-height:.9;letter-spacing:-.075em;color:#17181b}
.tx__prize p{max-width:25ch;margin:0 0 1.25rem;color:#686c73;font-size:.92rem;line-height:1.45}
.tx__prize-paid{display:block;margin:-.55rem 0 1.1rem;font-size:.72rem;font-weight:700;color:#545861}
.tx__prize .btn{position:relative;z-index:2;min-height:2.8rem;padding:.65rem 1rem;font-size:.78rem}
@keyframes tx-float{0%,100%{transform:translate3d(0,-5px,0) rotate(-.6deg)}50%{transform:translate3d(0,9px,0) rotate(.8deg)}}

@media(max-width:1050px) and (min-width:820px){
 .tx__stage{height:650px}.tx__stage .txc{width:125px!important}.tx__prize{width:330px}
}
@media(max-width:819px){
 .tx__stage{height:auto;overflow:visible;margin-bottom:2.5rem;display:flex;flex-direction:column;gap:3rem}
 .tx__prize{position:relative;inset:auto;transform:none;order:1;width:min(78vw,330px);margin:0 auto;padding:2.25rem}
 .tx__prize strong{font-size:4.6rem}
 .tx__stage .tx__rail{position:relative;inset:auto;order:2;display:grid;grid-auto-flow:column;grid-auto-columns:44vw;gap:.8rem;width:100%;overflow-x:auto;padding:.5rem 8vw 1.5rem;scroll-snap-type:x mandatory;scrollbar-width:none}
 .tx__stage .tx__rail::-webkit-scrollbar{display:none}
 .tx__stage .txc,.tx__stage .txc:nth-child(n){position:relative;inset:auto;width:auto!important;animation:none;scroll-snap-align:center}
 .tx__stage .txc__media{border-radius:28px}.tx__stage .txc__media img{aspect-ratio:3/5}
}
@media(prefers-reduced-motion:reduce){.tx__stage .txc{animation:none}}

/* Final integration-strip lockup: deliberately compact and self-contained. */
.v2 main .ww{
  min-height:0;
  padding:3rem 1.5rem!important;
  text-align:center!important;
}
.v2 main .ww>.wrap{
  width:100%;
  max-width:860px;
  margin-inline:auto;
  padding:0;
}
.v2 main .ww .ww__h{
  display:block;
  width:100%;
  margin:0 0 1.5rem!important;
  text-align:center!important;
  font-size:1rem;
  line-height:1.2;
}
.v2 main .ww .ww__row{
  width:100%;
  max-width:820px;
  margin:0 auto!important;
  padding:0;
  gap:clamp(1.25rem,3vw,2.5rem);
  justify-content:center!important;
}
.v2 main .ww .ww__item{
  font-size:.84rem;
  transform:scale(.9);
  transform-origin:center;
}

@media(max-width:819px){
  .v2 main .ww{padding:2.75rem 1rem!important}
  .v2 main .ww .ww__h{margin-bottom:1.25rem!important}
  .v2 main .ww .ww__row{max-width:340px;gap:.85rem 1.15rem}
  .v2 main .ww .ww__item{font-size:.76rem;transform:scale(.86)}
}

/* Community stories — oversized moving portrait rail, mirroring the reference's
   early social-proof beat while using the real 8WTC member videos. */
.community-proof{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#f2f6ff 18%,#edf5ff 52%,#f6f1ff 78%,#fff 100%)!important;padding:9rem 0 8rem!important;text-align:center}
.community-proof::before,.community-proof::after{content:"";position:absolute;z-index:-1;width:58vw;height:58vw;border-radius:50%;filter:blur(70px);opacity:.58;pointer-events:none}.community-proof::before{left:-20vw;top:18rem;background:radial-gradient(circle,#8bdfff 0%,rgba(139,223,255,0) 68%)}.community-proof::after{right:-22vw;top:30rem;background:radial-gradient(circle,#d4a9ff 0%,rgba(212,169,255,0) 68%)}
.community-proof__awards{display:flex;justify-content:center;align-items:center;gap:.65rem;margin-bottom:2.4rem;color:#9a9ca1}
.community-proof__awards span{color:#4A77FF;letter-spacing:.08em}.community-proof__awards small{font-size:.78rem}
.community-proof__head{max-width:980px}.community-proof__head h2{font-size:clamp(3.5rem,5.5vw,5.1rem);line-height:.98;letter-spacing:-.062em;font-weight:650;text-wrap:balance;margin:0 auto 5.5rem}
.community-proof__kicker{margin:0 0 1.1rem;color:#84878e;font-size:.74rem;font-weight:750;letter-spacing:.17em;text-transform:uppercase}
.community-proof__head .community-proof__intro{max-width:650px;margin:1.5rem auto 4.5rem;color:#777b82;font-size:1.08rem;line-height:1.55;text-wrap:balance}
.community-proof__head h2+.community-proof__intro{margin-top:-3.6rem}
.community-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,18vw);gap:1.25rem;width:max-content;min-width:100%;justify-content:center;padding-inline:2rem;position:relative}
.community-rail::before,.community-rail::after{content:"";position:absolute;z-index:4;top:0;bottom:0;width:10vw;pointer-events:none}
.community-rail::before{left:0;background:linear-gradient(90deg,#fff,transparent)}.community-rail::after{right:0;background:linear-gradient(-90deg,#fff,transparent)}
.community-card{position:relative;margin:0;aspect-ratio:4/5.35;border:5px solid rgba(255,255,255,.92);border-radius:28px;overflow:hidden;background:#e8ebef;box-shadow:0 28px 70px rgba(44,68,108,.2),0 3px 10px rgba(32,45,71,.08);transform:translateZ(0)}
.community-card video{width:100%;height:100%;display:block;object-fit:cover;background:linear-gradient(145deg,#dfe8f5,#f4e8e5)}
.community-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,12,15,.12),transparent 32%,transparent 50%,rgba(10,12,15,.9));pointer-events:none}
.community-card figcaption{position:absolute;z-index:2;left:1.15rem;right:1.15rem;bottom:1.2rem;display:flex;align-items:flex-end;gap:.75rem;color:#fff;text-align:left}
.community-card figcaption>span:last-child{min-width:0}.community-card figcaption em,.community-card figcaption b,.community-card figcaption small{display:block}.community-card figcaption em{margin-bottom:.28rem;color:#4A77FF;font-size:.59rem;font-style:normal;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.community-card figcaption b{font-size:1.12rem}.community-card figcaption small{max-width:24ch;margin-top:.18rem;font-size:.76rem;line-height:1.32;color:rgba(255,255,255,.88)}
.community-card__avatar{display:grid!important;place-items:center;width:2.35rem;height:2.35rem;border-radius:50%;background:rgba(255,255,255,.92);color:#17181b;font-weight:700;flex:none}
.community-card__sound{position:absolute;z-index:3;right:.85rem;top:.85rem;border:1px solid rgba(255,255,255,.4);background:rgba(20,21,24,.45);color:#fff;border-radius:999px;padding:.45rem .7rem;font:600 .68rem/1 inherit;backdrop-filter:blur(10px);cursor:pointer}
.community-card__sound.is-on{background:#fff;color:#17181b}
.community-proof__hint{margin:2rem 0 0;color:#929499;font-size:.78rem}
.community-results{max-width:1080px;margin-top:7.5rem;padding:5.5rem 4rem 4rem;border:1px solid rgba(255,255,255,.9);border-radius:42px;background:rgba(255,255,255,.72);box-shadow:0 30px 90px rgba(54,66,101,.11);backdrop-filter:blur(24px);text-align:center}.community-results__kicker{margin:0 0 1rem;color:#6d7077;font-size:.75rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.community-results h3{margin:0;font-size:clamp(3.2rem,5.2vw,5.5rem);line-height:.92;letter-spacing:-.065em}.community-results__intro{max-width:650px;margin:1.6rem auto 3.2rem;color:#71757c;font-size:1.08rem;line-height:1.55;text-wrap:balance}.community-results__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.community-results__grid>div{display:flex;min-height:170px;padding:1.6rem;flex-direction:column;justify-content:flex-end;border-radius:24px;background:#f3f6fa;text-align:left}.community-results__grid>div:nth-child(2){background:#fff2d9}.community-results__grid>div:nth-child(3){background:#eeeafd}.community-results__grid strong{font-size:clamp(2.4rem,4vw,4rem);line-height:.9;letter-spacing:-.055em}.community-results__grid span{margin-top:.7rem;color:#6f737a;font-size:.78rem;font-weight:650}
.community-card:hover{transform:translateY(-8px) scale(1.012);transition:transform .6s cubic-bezier(.19,1,.22,1)}

@media(max-width:819px){
 .community-proof{padding:6rem 0 5rem!important}.community-proof__head h2{font-size:2.9rem;margin-bottom:3.5rem;padding-inline:.35rem}
 .community-rail{display:flex;width:100%;min-width:0;justify-content:flex-start;gap:.8rem;padding:0 8vw 1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.community-rail::-webkit-scrollbar{display:none}.community-rail::before,.community-rail::after{display:none}
 .community-card{flex:0 0 72vw;scroll-snap-align:center}
 .community-card{border-radius:18px}.community-proof__hint{padding-inline:1rem}
 .community-proof::before,.community-proof::after{width:120vw;height:120vw;filter:blur(45px)}.community-card{flex-basis:78vw;border-width:4px;border-radius:24px}.community-results{width:calc(100% - 24px);margin-top:5rem;padding:4rem 12px 12px;border-radius:30px}.community-results h3{font-size:3.2rem}.community-results__intro{padding-inline:10px;font-size:.95rem}.community-results__grid{grid-template-columns:1fr}.community-results__grid>div{min-height:140px}.community-results__grid strong{font-size:3rem}
}

/* Second reference pass — match Bevel's scale and page rhythm more closely. */
.v2{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Helvetica,Arial,sans-serif}
.v2 h1,.v2 h2,.v2 h3,.v2 .btn,.v2 .nav{font-family:inherit}
.v2 .header__inner{max-width:740px;justify-content:center;gap:1.5rem;padding:.42rem .85rem .42rem 1.15rem;border:0;background:rgba(255,255,255,.88);box-shadow:none}
.v2 .header__inner>a:first-child{margin-right:auto}
.v2 .header__logo{height:25.2px;max-width:103.2px;object-fit:contain;object-position:left}
.v2 .nav{gap:1.55rem;flex-wrap:nowrap}.v2 .nav a{white-space:nowrap}.v2 .nav a:nth-child(n+3){display:none}
.v2 .header__cta{margin-left:auto;flex:none}.v2 .header__cta .btn{min-height:2.75rem;padding:.55rem 1.05rem;font-size:.84rem;white-space:nowrap}

.hero5{min-height:990px;margin:8px;border-radius:26px;padding-top:7.1rem;background:#e9f3ff}
.hero5__sky{background:
 url('/assets/generated/hero-atmosphere-placeholder.png') center 38% / cover no-repeat,
 radial-gradient(ellipse 72% 19% at 50% 69%,rgba(117,221,217,.62),transparent 64%),
 radial-gradient(ellipse 65% 17% at 50% 73%,rgba(242,196,217,.62),transparent 68%),
 radial-gradient(ellipse 45% 24% at 7% 65%,rgba(173,228,255,.68),transparent 72%),
 radial-gradient(ellipse 45% 24% at 93% 64%,rgba(207,203,255,.66),transparent 72%),
 linear-gradient(180deg,#eaf3ff 0%,#e8f2ff 50%,#fbfaf7 92%)}
.hero5__kicker{padding:0;border:0;background:none;box-shadow:none;letter-spacing:.02em;text-transform:none;font-size:.75rem;color:#676b71}
.hero5 h1{font-size:clamp(3.8rem,6vw,5.25rem);line-height:.96;max-width:12ch;margin-top:1.05rem;font-weight:650}
.hero5__sub{font-size:1.35rem;max-width:34rem;line-height:1.42;margin-top:1rem}
.hero5__cta{margin-top:1.6rem}.hero5__cta .btn{font-size:1rem;min-height:3.25rem;padding:.8rem 1.45rem}
.hero5__proof{margin-top:1rem;font-size:.8rem}.hero5__fine{font-size:.72rem}
.hero5__devices{height:500px;max-width:720px;margin-top:1.5rem}
.hero5__phone{bottom:-8.2rem}.hero5__phone--main{width:285px}.hero5__phone--left,.hero5__phone--right{width:235px}
.hero5__float{display:none}

.trustbar{display:none}
.ww{padding-block:4.75rem 4.5rem!important;text-align:center}.ww .wrap{max-width:1120px}.ww__h{font-size:1.25rem;font-weight:650;color:#24262a;margin:0 0 2rem;text-align:center}.ww__row{opacity:1;gap:clamp(1.5rem,4vw,4.5rem);justify-content:center;align-items:center;color:#1f2025}.ww__item{color:#1f2025}.ww__note{display:none}
.tx{margin:0!important;border-radius:0!important;padding-top:8.5rem!important;background:#fff!important}
.tx__tag{border:0;background:transparent;color:#9b9da1;margin-bottom:1.6rem}
.tx__head{margin-bottom:4.8rem}.tx__head h2{font-size:clamp(3.4rem,5vw,4.5rem);max-width:19ch;line-height:.98}.tx__head em{display:block;color:#1d1f22}
.tx__rail{grid-auto-columns:minmax(230px,260px);gap:1.8rem;padding-inline:2rem;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.txc__media{border-radius:22px}.txc__cap b{font-size:1rem}.txc__badge{background:rgba(18,18,20,.82);border-radius:999px;left:.7rem;right:.7rem}
.members{padding-block:8rem!important}.members h2{font-size:clamp(3.5rem,5vw,4.5rem);max-width:18ch}

.v2 main>section:not(.hero5):not(.tx):not(.members){padding-block:8.5rem}
.sec-head{margin-bottom:4.5rem}.sec-head h2{font-size:clamp(3.3rem,5vw,4.6rem);line-height:.98;max-width:17ch}.sec-head .lede{font-size:1.18rem}
.video-frame{max-width:1040px;margin-inline:auto;border-radius:26px}
.sec--tint{margin:8px!important;border-radius:28px;background:#edf3fc!important}
.pillars{grid-template-columns:repeat(2,1fr);gap:10px}.pillar,.pillar:nth-child(even){display:flex;flex-direction:column;padding:2.6rem 2.6rem 0;overflow:hidden;min-height:600px;border:0;border-radius:24px;background:#e8eff9}.pillar:nth-child(2){background:#eeeafd}.pillar:nth-child(3){background:#eaf5ee}.pillar:nth-child(4){background:#f8ece9}.pillar__media,.pillar--flip .pillar__media{order:2;margin-top:auto}.pillar__media img{max-height:390px;object-fit:contain;object-position:center bottom}.pillar__body{order:1}.pillar__n{border:0;color:#7c8087}.pillar__body h3{font-size:2rem}.pillar__body p{font-size:1.05rem;color:#686c72}
.paths{gap:10px}.path{min-height:300px;padding:2.5rem;border-radius:24px}.path h3{font-size:1.8rem}
.appsec{margin:8px!important;border-radius:28px!important;background:linear-gradient(140deg,#e4f3fb,#eae7fa 55%,#f7ece9)!important}
.praise{margin:8px;border-radius:28px;padding:0;background:#202125 url('/assets/generated/dark-atmosphere-placeholder.png') center bottom / cover no-repeat}.praise__panel{padding-block:8rem;border-radius:28px;background:linear-gradient(180deg,rgba(32,33,37,.9),rgba(32,33,37,.55))}.praise h2{font-size:clamp(3.4rem,5vw,4.5rem);max-width:18ch}
.bluefield,.guaranteeband,.closing{margin:8px;border-radius:28px}

@media(max-width:819px){
 .v2 .header__inner{max-width:none;width:auto;gap:.5rem;margin:14px 16px}.v2 .nav{display:none}.v2 .header__logo{height:18px}.v2 .header__cta .btn{min-height:2.5rem;font-size:.72rem}
 .hero5{min-height:790px;margin:6px;border-radius:20px;padding-top:6.4rem}.hero5 h1{font-size:3.25rem;line-height:.95}.hero5__sub{font-size:1rem;max-width:29ch}.hero5__kicker{font-size:.68rem}.hero5__proof{font-size:.7rem}.hero5__devices{height:300px;margin-top:1.2rem}.hero5__phone{bottom:-4.5rem}.hero5__phone--main{width:175px}.hero5__phone--left,.hero5__phone--right{width:145px}
 .ww{padding-block:3.75rem 3.5rem!important}.ww__h{font-size:1rem;margin-bottom:1.5rem}.ww__row{gap:1.15rem 1.75rem;justify-content:center}
 .tx{padding-top:6rem!important}.tx__head{margin-bottom:3rem}.tx__head h2{font-size:2.85rem}.tx__rail{grid-auto-columns:210px;gap:.75rem}
 .members{padding-block:5.5rem!important}.members h2{font-size:2.75rem}
 .v2 main>section:not(.hero5):not(.tx):not(.members){padding-block:5.5rem}.sec-head{margin-bottom:2.75rem}.sec-head h2{font-size:2.75rem}
 .pillars{grid-template-columns:1fr}.pillar,.pillar:nth-child(even){min-height:520px;padding:2rem 1.5rem 0}.pillar__body h3{font-size:1.6rem}
 .paths{grid-template-columns:1fr}.path{min-height:240px;padding:2rem}
 .praise__panel{padding-block:5.5rem}.praise h2{font-size:2.75rem}
}

/* Rows in centred sections centre. Kept last so a section purge can't drop it. */
.tx .cta-row, .members .cta-row, .closing .cta-row, .appsec .cta-row,
.ww .cta-row, .praise .cta-row, .u-center-row{ justify-content:center }

/* Keep this final: the broad section-spacing rules above must never expand it. */
.v2 main section.ww{padding:3rem 1.5rem!important;min-height:0!important;text-align:center!important}
.v2 main section.ww>.wrap{width:100%;max-width:860px;margin:0 auto;padding:0}
.v2 main section.ww .ww__h{width:100%;margin:0 auto 1.35rem!important;text-align:center!important;font-size:1rem;line-height:1.2}
.v2 main section.ww .ww__row{width:100%;max-width:800px;margin:0 auto!important;padding:0;justify-content:center!important;gap:1rem 2rem}
.v2 main section.ww .ww__item{font-size:.82rem;transform:scale(.88);transform-origin:center}
@media(max-width:819px){
  .v2 main section.ww{padding:2.5rem 1rem!important}
  .v2 main section.ww .ww__row{max-width:350px;gap:.75rem 1rem}
  .v2 main section.ww .ww__item{font-size:.74rem;transform:scale(.84)}
}

/* Larger, intentionally overlapping transformation collage. */
@media(min-width:1051px){
  .tx__stage{height:780px;max-width:1460px;overflow:visible}
  .tx__stage .txc{width:195px;z-index:1}
  .tx__stage .txc__media{border-radius:56px;box-shadow:0 28px 65px rgba(25,30,40,.15)}
  .tx__stage .txc:nth-child(1){left:-1%;top:27%;width:190px;z-index:2}
  .tx__stage .txc:nth-child(2){left:9%;top:1%;width:225px;z-index:1}
  .tx__stage .txc:nth-child(3){left:25%;top:-2%;width:205px;z-index:3}
  .tx__stage .txc:nth-child(4){left:20%;bottom:-4%;width:210px;z-index:2}
  .tx__stage .txc:nth-child(5){left:34%;bottom:-9%;width:220px;z-index:3}
  .tx__stage .txc:nth-child(6){right:34%;top:-3%;width:220px;z-index:3}
  .tx__stage .txc:nth-child(7){right:22%;bottom:-8%;width:210px;z-index:2}
  .tx__stage .txc:nth-child(8){right:9%;top:1%;width:225px;z-index:1}
  .tx__stage .txc:nth-child(9){right:-1%;top:26%;width:190px;z-index:2}
  .tx__prize{width:405px;z-index:5}
}

/* Reference-faithful result mosaic: imagery frames the statement instead of
   orbiting a promotional badge. Kept last to supersede the earlier concept. */
.tx{padding-bottom:7rem!important}
.tx>.wrap:first-child{position:absolute;z-index:3;left:0;right:0;pointer-events:none}
.tx__head{margin:0}.tx__head .tx__tag{display:none}
.tx__stage{height:900px;max-width:1500px;margin:0 auto 2rem;overflow:hidden}
.tx__stage .tx__rail{inset:0}
.tx__stage .txc{animation:tx-float 8s ease-in-out infinite}
.tx__stage .txc__media{border-radius:42px;box-shadow:none}
.tx__stage .txc__media img{aspect-ratio:3/5.25}
.tx__prize{position:absolute;z-index:6;left:0;right:0;top:auto;bottom:0;transform:none;width:min(760px,54vw);margin-inline:auto;aspect-ratio:auto;border:0;border-radius:0;display:block;padding:0 1rem 1rem;background:transparent;box-shadow:none;text-align:center}
.tx__prize::before{display:none}
.tx__prize-kicker{display:none}
.tx__prize strong{display:block;margin:0 0 1.1rem;font-size:clamp(3.7rem,5.2vw,5.4rem);line-height:.98;letter-spacing:-.065em;font-weight:650}
.tx__prize p{max-width:660px;margin:0 auto 1rem;font-size:1.18rem;line-height:1.5;color:#84868b}
.tx__prize-paid{margin:0 0 1.35rem;font-size:.78rem;color:#686b72}
.tx__prize .btn{min-height:2.8rem}
@media(min-width:1051px){
 .tx__stage .txc:nth-child(1){left:1%;top:13%;width:170px}
 .tx__stage .txc:nth-child(2){left:13%;top:1%;width:185px}
 .tx__stage .txc:nth-child(3){left:13%;top:52%;bottom:auto;width:165px}
 .tx__stage .txc:nth-child(4){left:29%;top:15%;width:185px}
 .tx__stage .txc:nth-child(5){left:38%;top:1%;bottom:auto;width:180px}
 .tx__stage .txc:nth-child(6){right:38%;top:1%;width:180px}
 .tx__stage .txc:nth-child(7){right:29%;top:15%;bottom:auto;width:185px}
 .tx__stage .txc:nth-child(8){right:13%;top:1%;width:185px}
 .tx__stage .txc:nth-child(9){right:1%;top:13%;width:170px}
}
@media(max-width:1050px) and (min-width:820px){
 .tx__stage{height:760px}.tx__prize{width:64vw}.tx__prize strong{font-size:3.8rem}
}
@media(max-width:819px){
 .tx{padding-top:5rem!important}.tx>.wrap:first-child{display:none}
 .tx__stage{height:auto;display:flex;flex-direction:column;gap:2.5rem;overflow:visible}
 .tx__prize{position:relative;inset:auto;transform:none;order:1;width:100%;padding:0 1.25rem}
 .tx__prize strong{font-size:2.8rem}.tx__prize p{font-size:1rem}
 .tx__stage .tx__rail{order:2}.tx__stage .txc{animation:none}
}

/* ============================================================
   Results mosaic v2 — grid-based, predictable and responsive.
   This intentionally replaces every earlier orbit/absolute rule.
   ============================================================ */
@media(min-width:1051px){
  .v2 main .tx{padding:7.5rem 0 6rem!important;overflow:hidden}
  .v2 main .tx>.wrap:first-child{display:none}
  .v2 main .tx__stage{
    position:relative;
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    grid-template-rows:repeat(10,64px);
    gap:14px;
    width:min(1460px,calc(100% - 32px));
    height:auto;
    min-height:766px;
    margin:0 auto 2rem;
    padding:0;
    overflow:visible;
  }
  .v2 main .tx__stage .tx__rail{position:static!important;display:contents!important;inset:auto!important;width:auto!important;height:auto!important;padding:0!important;overflow:visible!important}
  .v2 main .tx__stage .txc{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;margin:0!important;animation:tx-float 8s ease-in-out infinite;z-index:1}
  .v2 main .tx__stage .tx__rail>.txc{opacity:1!important}
  .v2 main .tx__stage .txc__media{display:block;width:100%;height:100%;border-radius:34px;overflow:hidden;box-shadow:none}
  .v2 main .tx__stage .txc__media img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
  .v2 main .tx__stage .txc:nth-child(1){grid-column:1/3;grid-row:2/7;animation-delay:-1s}
  .v2 main .tx__stage .txc:nth-child(2){grid-column:3/5;grid-row:1/5;animation-delay:-4s}
  .v2 main .tx__stage .txc:nth-child(3){grid-column:3/5;grid-row:5/9;animation-delay:-2s}
  .v2 main .tx__stage .txc:nth-child(4){grid-column:5/7;grid-row:2/8;animation-delay:-5s}
  .v2 main .tx__stage .txc:nth-child(5){grid-column:7/9;grid-row:1/7;animation-delay:-3s}
  .v2 main .tx__stage .txc:nth-child(6){grid-column:9/11;grid-row:2/6;animation-delay:-6s}
  .v2 main .tx__stage .txc:nth-child(7){grid-column:9/11;grid-row:6/10;animation-delay:-1.5s}
  .v2 main .tx__stage .txc:nth-child(8){grid-column:11/13;grid-row:2/7;animation-delay:-4.5s}
  .v2 main .tx__stage .txc:nth-child(9){grid-column:1/3;grid-row:7/11;animation-delay:-2.5s}
  .v2 main .tx__prize{
    position:relative!important;
    inset:auto!important;
    grid-column:4/10;
    grid-row:8/11;
    align-self:end;
    justify-self:center;
    width:100%!important;
    max-width:720px;
    margin:0!important;
    padding:1.5rem 1rem 0!important;
    transform:none!important;
    background:#fff;
    z-index:5;
  }
  .v2 main .tx__prize strong{font-size:clamp(3.5rem,4.7vw,4.8rem);margin-bottom:.75rem}
  .v2 main .tx__prize p{font-size:1.05rem;max-width:590px}
}

@media(max-width:1050px) and (min-width:820px){
  .v2 main .tx__stage{height:auto;min-height:690px;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(9,62px);gap:10px;padding-inline:12px;overflow:hidden}
  .v2 main .tx__stage .tx__rail{display:contents!important;position:static!important}
  .v2 main .tx__stage .txc{position:relative!important;inset:auto!important;width:auto!important;animation:none}
  .v2 main .tx__stage .tx__rail>.txc{opacity:1!important;transform:none}
  .v2 main .tx__stage .txc__media{height:100%;border-radius:28px}.v2 main .tx__stage .txc__media img{height:100%;object-fit:cover}
  .v2 main .tx__stage .txc:nth-child(1){grid-column:1/3;grid-row:2/7}.v2 main .tx__stage .txc:nth-child(2){grid-column:3/5;grid-row:1/5}.v2 main .tx__stage .txc:nth-child(3){grid-column:3/5;grid-row:5/9}.v2 main .tx__stage .txc:nth-child(4){grid-column:5/7;grid-row:1/6}.v2 main .tx__stage .txc:nth-child(5){grid-column:7/9;grid-row:2/7}.v2 main .tx__stage .txc:nth-child(n+6){display:none}
  .v2 main .tx__prize{position:relative!important;inset:auto!important;transform:none!important;grid-column:2/8;grid-row:7/10;width:100%;margin:0;padding:1rem;background:#fff}
}

@media(max-width:819px){
  .v2 main .tx{padding:5rem 0!important}
  .v2 main .tx__stage{display:flex;height:auto;min-height:0;gap:2.5rem;overflow:visible}
  .v2 main .tx__prize{position:relative!important;inset:auto!important;transform:none!important;order:1;width:100%!important;margin:0!important;padding:0 1.25rem!important;background:#fff}
  .v2 main .tx__stage .tx__rail{position:relative!important;display:grid!important;order:2;width:100%!important;grid-auto-flow:column;grid-auto-columns:72vw;gap:.8rem;overflow-x:auto!important;padding:0 8vw 1rem!important;scroll-snap-type:x mandatory}
  .v2 main .tx__stage .txc,.v2 main .tx__stage .txc:nth-child(n){position:relative!important;display:block!important;inset:auto!important;width:auto!important;height:440px!important;animation:none;scroll-snap-align:center}
  .v2 main .tx__stage .txc__media{height:100%;border-radius:28px}.v2 main .tx__stage .txc__media img{height:100%;aspect-ratio:auto;object-fit:cover}
}

/* Keep the researched proof mosaic authoritative over retired experiments above. */
@media(min-width:1051px){
  .v2 main .tx{padding:3.5rem 0 5rem!important}
  .v2 main .tx__stage{position:relative!important;display:block!important;width:min(1380px,calc(100% - 32px))!important;height:750px!important;min-height:0!important;margin:0 auto!important;padding:0!important;overflow:visible!important}
  .v2 main .tx__stage .tx__rail{position:absolute!important;inset:0!important;display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr))!important;grid-template-rows:repeat(6,96px)!important;gap:14px 16px!important;width:100%!important;height:646px!important;padding:0!important;overflow:visible!important;mask-image:none!important;-webkit-mask-image:none!important}
  .v2 main .tx-tile{position:relative!important;inset:auto!important;width:auto!important;height:auto!important;margin:0!important;opacity:1!important;transform:none!important;animation:none!important}
  .v2 main .tx-tile:nth-child(1){grid-column:1;grid-row:1/4}.v2 main .tx-tile:nth-child(2){grid-column:1;grid-row:4/7}
  .v2 main .tx-tile:nth-child(3){grid-column:2;grid-row:1/3}.v2 main .tx-tile:nth-child(4){grid-column:2;grid-row:3/5}.v2 main .tx-tile:nth-child(5){grid-column:2;grid-row:5/7}
  .v2 main .tx-tile:nth-child(6){grid-column:3;grid-row:4/7}.v2 main .tx-tile:nth-child(7){grid-column:4;grid-row:4/7}
  .v2 main .tx-tile:nth-child(8){grid-column:5;grid-row:4/7}.v2 main .tx-tile:nth-child(9){grid-column:6;grid-row:4/7}
  .v2 main .tx-tile:nth-child(10){grid-column:7;grid-row:1/3}.v2 main .tx-tile:nth-child(11){grid-column:7;grid-row:3/5}.v2 main .tx-tile:nth-child(12){grid-column:7;grid-row:5/7}
  .v2 main .tx-tile:nth-child(13){grid-column:8;grid-row:1/4}.v2 main .tx-tile:nth-child(14){grid-column:8;grid-row:4/7}
  .v2 main .tx-tile:nth-child(6){top:22px!important}.v2 main .tx-tile:nth-child(7){top:92px!important}.v2 main .tx-tile:nth-child(8){top:92px!important}.v2 main .tx-tile:nth-child(9){top:34px!important}
  .v2 main .tx__prize{position:absolute!important;inset:22px 0 auto!important;display:block!important;width:min(700px,58%)!important;max-width:none!important;margin:0 auto!important;padding:1.25rem 1rem 0!important;background:transparent!important;transform:none!important;z-index:4}
  .v2 main .tx__prize strong{font-size:clamp(3.5rem,4.5vw,4.25rem)!important}
  .v2 main .tx__prize p{max-width:590px;font-size:1.08rem!important}
}
@media(max-width:1050px) and (min-width:820px){
  .v2 main .tx{padding:6rem 0 5rem!important}
  .v2 main .tx__stage{display:block!important;width:calc(100% - 24px)!important;height:auto!important;min-height:0!important;margin:auto!important;padding:0!important;overflow:visible!important}
  .v2 main .tx__stage .tx__rail{position:relative!important;inset:auto!important;display:grid!important;grid-template-columns:repeat(7,1fr)!important;grid-template-rows:repeat(4,96px)!important;gap:12px!important;width:100%!important;height:420px!important;padding:0!important;overflow:hidden!important}
  .v2 main .tx-tile{display:block!important;position:relative!important;inset:auto!important;width:auto!important;height:auto!important;opacity:1!important;transform:none!important;border-radius:24px}
  .v2 main .tx-tile:nth-child(1){grid-column:1;grid-row:1/3}.v2 main .tx-tile:nth-child(2){grid-column:1;grid-row:3/5}.v2 main .tx-tile:nth-child(3){grid-column:2;grid-row:1/5}.v2 main .tx-tile:nth-child(4){grid-column:3;grid-row:2/5}.v2 main .tx-tile:nth-child(5){grid-column:4;grid-row:1/4}.v2 main .tx-tile:nth-child(6){grid-column:5;grid-row:2/5}.v2 main .tx-tile:nth-child(7){grid-column:6;grid-row:1/5}.v2 main .tx-tile:nth-child(8){grid-column:7;grid-row:1/3}.v2 main .tx-tile:nth-child(9){grid-column:7;grid-row:3/5}.v2 main .tx-tile:nth-child(n+10){display:none!important}
  .v2 main .tx__prize{position:relative!important;inset:auto!important;width:min(650px,82%)!important;margin:0 auto 3.5rem!important;padding:1.25rem 1rem 0!important;background:#fff!important;transform:none!important}
  .v2 main .tx__prize strong{font-size:3.5rem!important}
}
@media(max-width:819px){
  .v2 main .tx{padding:5rem 0 4.5rem!important}
  .v2 main .tx__stage{display:flex!important;flex-direction:column!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;gap:2.2rem!important;overflow:visible!important}
  .v2 main .tx__prize{position:relative!important;inset:auto!important;order:1!important;width:100%!important;margin:0!important;padding:0 1.25rem!important;background:#fff!important;transform:none!important}
  .v2 main .tx__prize strong{font-size:clamp(2.75rem,13vw,4rem)!important}.v2 main .tx__prize p{max-width:34rem;font-size:1rem!important}
  .v2 main .tx__stage .tx__rail{position:relative!important;inset:auto!important;display:grid!important;order:2!important;grid-auto-flow:column!important;grid-auto-columns:68vw!important;grid-template-rows:420px!important;gap:12px!important;width:100%!important;height:auto!important;padding:4px 8vw 18px!important;overflow-x:auto!important;overscroll-behavior-inline:contain;scroll-padding-inline:8vw;scroll-snap-type:x mandatory;scrollbar-width:none;mask-image:none!important;-webkit-mask-image:none!important}
  .v2 main .tx-tile,.v2 main .tx-tile:nth-child(n){display:block!important;position:relative!important;inset:auto!important;width:auto!important;height:auto!important;opacity:1!important;transform:none!important;animation:none!important;border-radius:28px;scroll-snap-align:start}
}

/* Active finish: soft copy edge plus staggered, transform-only movement. */
@media(min-width:820px){
  .v2 main .tx__prize{background:transparent!important;isolation:isolate}
  .v2 main .tx__prize::before{content:"";position:absolute;z-index:-1;inset:-80px -120px -38px;pointer-events:none;background:radial-gradient(ellipse at center,#fff 0%,rgba(255,255,255,.99) 46%,rgba(255,255,255,.9) 65%,rgba(255,255,255,.42) 82%,transparent 100%)}
}
@media(min-width:820px) and (prefers-reduced-motion:no-preference){
  .v2 main .tx-tile{animation:tx-proof-drift 9s cubic-bezier(.45,0,.55,1) infinite alternate!important;will-change:transform}
  .v2 main .tx-tile:nth-child(3n+1){animation-duration:10.5s!important;animation-delay:-4s!important}
  .v2 main .tx-tile:nth-child(3n+2){animation-duration:8.5s!important;animation-delay:-7s!important;animation-direction:alternate-reverse!important}
  .v2 main .tx-tile:nth-child(4n){animation-duration:11.5s!important;animation-delay:-2s!important}
}
@media(prefers-reduced-motion:reduce){.v2 main .tx-tile{animation:none!important;transform:none!important;will-change:auto}}

/* Active hero finish: light field, unframed feature fragments around the copy. */
.v2 .hero5__glow{inset:10% 4% -4%!important;border-radius:50%!important;background:radial-gradient(ellipse,rgba(255,255,255,.98),rgba(219,239,255,.42) 52%,transparent 74%)!important;filter:blur(8px)!important;transform:none!important;box-shadow:none!important}
.v2 .hero5__features{position:absolute!important;inset:70px -55px auto!important;z-index:2!important;height:620px!important;pointer-events:none}
.v2 .hero5__feature{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
.v2 .hero5__feature img{mix-blend-mode:screen!important;filter:brightness(1.16) contrast(1.08) drop-shadow(0 20px 34px rgba(38,65,104,.15))!important}
.v2 .hero5__feature--workout{left:0!important;top:85px!important;width:225px!important}.v2 .hero5__feature--nutrition{right:0!important;top:120px!important;width:260px!important}.v2 .hero5__feature--community{left:2%!important;right:auto!important;top:365px!important;width:235px!important;opacity:.94!important}.v2 .hero5__feature--tracking{right:1%!important;top:390px!important;width:245px!important}.v2 .hero5__feature--accountability{left:15%!important;top:500px!important;width:225px!important;opacity:.88!important}
@media(max-width:1050px){
  .v2 .hero5__features{inset:85px -70px auto!important;height:560px!important}.v2 .hero5__feature--workout{left:-4%!important;width:175px!important}.v2 .hero5__feature--nutrition{right:-4%!important;width:195px!important}.v2 .hero5__feature--community{left:-2%!important;top:380px!important;width:185px!important}.v2 .hero5__feature--tracking{right:-2%!important;top:400px!important;width:190px!important}.v2 .hero5__feature--accountability{display:none!important}
}
@media(max-width:819px){
  .v2 .hero5__features{inset:420px -14% auto!important;height:300px!important}.v2 .hero5__feature--workout{display:none!important}.v2 .hero5__feature--nutrition{display:block!important;right:-4%!important;top:75px!important;width:145px!important}.v2 .hero5__feature--tracking{display:block!important;right:auto!important;left:-4%!important;top:145px!important;width:140px!important}.v2 .hero5__feature--community,.v2 .hero5__feature--accountability{display:none!important}
}

/* Active food-log compilation. */
.v2 .hero5__feature--nutrition,.v2 .hero5__feature--accountability,.v2 .hero5__feature--community{display:none!important}
.v2 .hero5__feature{transform:translate3d(var(--feature-x),var(--feature-y),0) rotate(calc(var(--feature-r) + var(--base-r,0deg)))!important}
.v2 .hero5__feature--workout{--base-r:-10deg;display:block!important;left:3%!important;right:auto!important;top:365px!important;width:265px!important;opacity:.88!important;z-index:0}
.v2 .hero5__feature--tracking{--base-r:10deg;display:block!important;left:auto!important;right:3%!important;top:405px!important;width:255px!important;opacity:.84!important;z-index:0}
.v2 .hero5__food{display:block!important;border:0!important;background:transparent!important;box-shadow:0 20px 42px rgba(18,31,55,.18)!important;border-radius:18px!important;overflow:hidden!important;opacity:1!important}
.v2 .hero5__food img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;mix-blend-mode:normal!important;filter:none!important}
.v2 .hero5__food--results{--base-r:-18deg;left:-8%!important;right:auto!important;top:190px!important;width:300px!important;height:86px!important}.v2 .hero5__food--macros{--base-r:18deg;left:auto!important;right:-8%!important;top:190px!important;width:315px!important;height:119px!important}.v2 .hero5__food--calories{--base-r:-4deg;left:17%!important;right:auto!important;top:625px!important;width:215px!important;height:194px!important}.v2 .hero5__food--database{--base-r:4deg;left:auto!important;right:17%!important;top:595px!important;width:200px!important;height:246px!important}
.v2 .hero5__feature--leaderboard{--base-r:-7deg;display:block!important;left:9%!important;right:auto!important;top:535px!important;width:190px!important;opacity:.9!important;z-index:0}.v2 .hero5__feature--rest{--base-r:7deg;display:block!important;left:auto!important;right:8%!important;top:525px!important;width:235px!important;opacity:.9!important;z-index:0}
.v2 .hero5__feature--leaderboard img,.v2 .hero5__feature--rest img{display:block!important;width:100%!important;height:auto!important;mix-blend-mode:normal!important;filter:drop-shadow(0 20px 34px rgba(20,35,65,.18))!important;border-radius:18px}
@media(max-width:1050px){.v2 .hero5__food--results{left:-8%!important;top:245px!important;width:210px!important;height:60px!important}.v2 .hero5__food--macros{right:-8%!important;top:250px!important;width:220px!important;height:83px!important}.v2 .hero5__food--calories{left:14%!important;top:455px!important;width:155px!important;height:140px!important}.v2 .hero5__food--database{right:14%!important;top:450px!important;width:145px!important;height:178px!important}}
@media(max-width:819px){.v2 .hero5__feature--nutrition,.v2 .hero5__feature--tracking,.v2 .hero5__feature--community{display:none!important}.v2 .hero5__feature--workout{display:block!important;left:17%!important;top:145px!important;width:125px!important;opacity:.78!important}.v2 .hero5__food{border-radius:12px!important}.v2 .hero5__food--results{display:none!important}.v2 .hero5__food--macros{display:block!important;right:-8%!important;top:70px!important;width:155px!important;height:59px!important}.v2 .hero5__food--calories,.v2 .hero5__food--database{display:none!important}}

/* Coded atmospheric tunnel: large composited layers, no video or WebGL. */
.v2 .hero5__sky{overflow:hidden}
.v2 .hero5__sky{inset:0!important;width:100%!important;height:100%!important;min-height:100%!important;background-size:120% 125%,auto,auto,auto,auto,auto!important;background-position:center 44%,center,center,center,center,center!important;background-repeat:no-repeat!important}
.v2 .hero5__sky::before,.v2 .hero5__sky::after{content:"";position:absolute;pointer-events:none;will-change:transform;transform-origin:center}
.v2 .hero5__sky::before{inset:16% -18% -20%;background:radial-gradient(ellipse 32% 36% at 15% 58%,rgba(68,218,246,.4),transparent 72%),radial-gradient(ellipse 34% 38% at 85% 62%,rgba(239,145,203,.34),transparent 72%),radial-gradient(ellipse 42% 22% at 50% 80%,rgba(123,153,255,.3),transparent 76%);filter:blur(26px);animation:hero-atmosphere-drift 13s ease-in-out infinite alternate}
.v2 .hero5__sky::after{left:8%;right:8%;bottom:4%;height:40%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(255,255,255,.72),rgba(171,220,255,.18) 46%,transparent 72%);filter:blur(18px);animation:hero-atmosphere-breathe 9s ease-in-out infinite alternate}
@keyframes hero-atmosphere-drift{from{transform:translate3d(-2.5%,-1.5%,0) rotate(-2deg) scale(1.02)}to{transform:translate3d(2.5%,1.5%,0) rotate(2deg) scale(1.09)}}
@keyframes hero-atmosphere-breathe{from{transform:translate3d(0,2%,0) scale(.94);opacity:.58}to{transform:translate3d(0,-3%,0) scale(1.08);opacity:.9}}
@media(prefers-reduced-motion:reduce){.v2 .hero5__sky::before,.v2 .hero5__sky::after{animation:none!important;transform:none!important;will-change:auto}}

/* Continue the atmospheric field beneath the rounded hero while the product
 * row crosses into the next section; the fade removes the hard colour seam. */
.v2 .hero5::after{content:"";position:absolute;z-index:0;left:0;right:0;bottom:-300px;height:390px;pointer-events:none;background:linear-gradient(180deg,rgba(232,242,255,.92) 0%,rgba(238,245,255,.7) 38%,rgba(255,255,255,.28) 76%,transparent 100%);border-radius:0 0 42% 42%/0 0 18% 18%}

/* Active device fan: the phones open like cards and bridge into Works with. */
@media(min-width:820px){
  .v2 .hero5{overflow:visible!important;z-index:2;margin-bottom:0!important}
  .v2 .hero5__sky{border-radius:inherit;clip-path:inset(0 round 26px)}
  .v2 .hero5__inner{padding-bottom:0}
  .v2 .hero5__devices{height:540px!important;margin-bottom:-118px!important;overflow:visible!important;z-index:4}
  .v2 .hero5__phone{bottom:-6.5rem!important;transform-origin:50% 100%;will-change:transform}
  .v2 .hero5__phone--main{z-index:6!important}
  .v2 .hero5__phone--left,.v2 .hero5__phone--right{z-index:5!important}
  .v2 main section.ww{position:relative;z-index:1;padding-top:21rem!important}
  html:has(body.v2),body.v2{overflow-x:clip}
}
@media(max-width:819px){
  .v2 .hero5__devices{margin-bottom:-34px!important}
}
@media(prefers-reduced-motion:reduce) and (min-width:820px){
  .v2 .hero5__phone--left{transform:translate(-150px,70px) rotate(-17deg)!important}
  .v2 .hero5__phone--main{transform:translateX(-50%) translateY(12px)!important}
  .v2 .hero5__phone--right{transform:translate(150px,70px) rotate(17deg)!important}
}

/* Mobile product story: no desktop flare or cross-section transforms. */
.mobile-products{display:none}
@media(max-width:819px){
  .v2 .header{position:fixed!important;top:0!important;z-index:1000!important}
  .v2 .hero5{min-height:760px!important;padding-top:6.25rem!important;overflow:hidden!important;margin-bottom:0!important}
  .v2 .hero5::after{display:none!important}
  .v2 .hero5__inner{max-width:100%;padding-inline:18px}
  .v2 .hero5__kicker{font-size:.66rem!important;line-height:1.35;max-width:30ch;margin-inline:auto}
  .v2 .hero5 h1{font-size:clamp(2.9rem,14vw,3.55rem)!important;line-height:.93!important;max-width:9.5ch!important;margin-top:1rem!important}
  .v2 .hero5__sub{max-width:31ch!important;font-size:.98rem!important;line-height:1.42!important;margin-top:1rem!important}
  .v2 .hero5__cta{margin-top:1.35rem!important}.v2 .hero5__cta .btn{min-height:3rem;font-size:.88rem}
  .v2 .hero5__proof{margin-top:.85rem!important;font-size:.66rem!important}.v2 .hero5__fine{display:none!important}
  .v2 .hero5__features,.v2 .hero5__feature,.v2 .hero5__food,.v2 .hero5__feature--leaderboard,.v2 .hero5__feature--rest{display:none!important}
  .v2 .hero5__devices{display:block!important;position:relative!important;width:100%!important;max-width:350px!important;height:285px!important;margin:1.25rem auto -16px!important;transform:none!important;overflow:hidden!important}
  .v2 .hero5__glow{inset:16% 0 -22%!important}
  .v2 .hero5__phone,.v2 .hero5__phone--main,.v2 .hero5__phone--left,.v2 .hero5__phone--right{display:block!important;left:50%!important;right:auto!important;top:24px!important;bottom:auto!important;width:132px!important;padding:4px!important;border-radius:22px!important;overflow:hidden!important}
  .v2 .hero5__phone--main{width:158px!important;z-index:6!important}.v2 .hero5__phone--left,.v2 .hero5__phone--right{z-index:5!important;filter:saturate(.92) brightness(.95)}
  .v2 .hero5__phone img{border-radius:18px!important}.v2 .hero5__phone figcaption{display:none!important}
  .mobile-products{display:block;position:relative;z-index:3;padding:3rem 0 5rem;background:#fff;overflow:hidden}
  .mobile-products__head{padding:0 22px;text-align:center}.mobile-products__head p{margin:0 0 .75rem;color:#858991;font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.mobile-products__head h2{max-width:10ch;margin:0 auto;font-size:2.45rem;line-height:.95;letter-spacing:-.045em}.mobile-products__head span{display:block;margin-top:1rem;color:#8a8e95;font-size:.72rem}
  .mobile-products__rail{display:flex;gap:14px;margin-top:2.25rem;padding:8px 9vw 20px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-padding-inline:9vw;scroll-snap-type:x mandatory;scrollbar-width:none}.mobile-products__rail::-webkit-scrollbar{display:none}
  .mobile-product{flex:0 0 76vw;margin:0;padding:0 4px 20px;border-radius:0;background:transparent!important;box-shadow:none;scroll-snap-align:center;text-align:center}
  .mobile-product img{display:block;width:78%;max-height:450px;margin:0 auto;object-fit:cover;object-position:top;border:5px solid #101216;border-radius:26px;box-shadow:0 20px 35px rgba(15,23,40,.16)}
  .mobile-product figcaption{margin-top:1.25rem}.mobile-product figcaption b,.mobile-product figcaption span{display:block}.mobile-product figcaption b{font-size:1.15rem}.mobile-product figcaption span{margin-top:.35rem;color:#747982;font-size:.82rem}
  .v2 main section.ww{padding-top:4rem!important}
}

/* Five-screen product row: stacked on arrival, level from edge to edge on scroll. */
@media(min-width:820px){
  .v2 .hero5__devices{width:min(1360px,calc(100vw - 72px))!important;max-width:none!important;margin-left:calc((100% - min(1360px,calc(100vw - 72px)))/2)!important;transform:none!important}
  .v2 .hero5__phone,.v2 .hero5__phone--main,.v2 .hero5__phone--left,.v2 .hero5__phone--right{--phone-label:0;left:50%!important;right:auto!important;top:42px!important;bottom:auto!important;width:232px!important;transform-origin:50% 12%;transition:opacity .28s linear,filter .45s ease,box-shadow .45s ease!important;overflow:visible!important}
  .v2 .hero5__phone figcaption{position:absolute;top:calc(100% + 18px);left:-12px;right:-12px;text-align:center;color:#15171b;opacity:var(--phone-label);transform:translateY(calc((1 - var(--phone-label))*14px));will-change:opacity,transform}
  .v2 .hero5__phone figcaption b,.v2 .hero5__phone figcaption span{display:block}.v2 .hero5__phone figcaption b{font-size:1.05rem;line-height:1.1}.v2 .hero5__phone figcaption span{margin-top:.35rem;color:#74787f;font-size:.72rem;line-height:1.25}
  .v2 .hero5__phone--extra{z-index:4!important;opacity:0}
  .v2 .hero5__phone--left,.v2 .hero5__phone--right{z-index:5!important}
  .v2 .hero5__phone--main{z-index:6!important}
}
@media(max-width:819px){.v2 .hero5__phone--extra{display:none!important}}
@media(max-width:819px){.v2 .hero5__phone figcaption{display:none}}
@media(prefers-reduced-motion:reduce) and (min-width:820px){
  .v2 .hero5__phone{opacity:1!important}
  .v2 .hero5__phone--recipes{transform:translateX(calc(-50% - 520px))!important}
  .v2 .hero5__phone--left{transform:translateX(calc(-50% - 260px))!important}
  .v2 .hero5__phone--main{transform:translateX(-50%)!important}
  .v2 .hero5__phone--right{transform:translateX(calc(-50% + 260px))!important}
  .v2 .hero5__phone--foodlog{transform:translateX(calc(-50% + 520px))!important}
}

/* High-salience social proof: prize history is a primary conversion claim. */
.v2 .trustbar{display:block!important;position:relative;z-index:1;border:0;background:#fff;padding:10rem 24px 7rem}
.v2 .trustbar__head{max-width:980px;text-align:center}.v2 .trustbar__head p{margin:0 0 1rem;color:#858990;font-size:.74rem;font-weight:750;letter-spacing:.16em;text-transform:uppercase}.v2 .trustbar__head h2{margin:0;font-size:clamp(3.5rem,6.4vw,6.25rem);line-height:.88;letter-spacing:-.065em}.v2 .trustbar__head>span{display:block;max-width:52ch;margin:1.5rem auto 0;color:#71757c;font-size:1.05rem;line-height:1.5}
.v2 .trustbar__inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1240px;padding:4rem 0 0}
.v2 .trustbar__item,.v2 .trustbar__item+.trustbar__item{display:flex;min-height:245px;padding:2rem;flex-direction:column;align-items:flex-start;justify-content:flex-end;border:0;border-radius:26px;background:#f3f6fa;text-align:left}.v2 .trustbar__item:first-child{background:linear-gradient(145deg,#15171b,#252933);color:#fff}.v2 .trustbar__item:nth-child(2){background:#eaf2ff}.v2 .trustbar__item:nth-child(3){background:#fff4db}.v2 .trustbar__item:nth-child(4){background:#eeeafd}
.v2 .trustbar__icon{display:grid;width:58px;height:58px;margin:0 0 auto;place-items:center;border-radius:18px;background:rgba(255,255,255,.72);color:#17191d}.v2 .trustbar__item:first-child .trustbar__icon{background:rgba(255,255,255,.12);color:#fff}.v2 .trustbar__icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.v2 .trustbar__n{font-size:clamp(2.3rem,3.5vw,3.7rem);font-weight:700;line-height:.92;letter-spacing:-.055em;color:inherit}.v2 .trustbar__l{margin-top:.65rem;color:#6f737a;font-size:.78rem;font-weight:650;letter-spacing:.02em;text-transform:none}.v2 .trustbar__item:first-child .trustbar__l{color:rgba(255,255,255,.7)}
.v2 main section.ww{padding-top:4rem!important}

/* Social-proof milestone: count-up, card lift and one decisive celebration. */
.v2 .trustbar__head{position:relative;isolation:isolate}
.v2 .trustbar__head h2,.v2 .trustbar__n{font-variant-numeric:tabular-nums;transition:transform .2s ease,color .2s ease}
.v2 .trustbar__head h2.is-counting{color:#6558ef;transform:scale(1.025)}
.v2 .trustbar__head h2.has-counted{animation:proof-number-land .65s cubic-bezier(.16,1.5,.3,1)}
.v2 .trustbar__n.is-counting{transform:translateY(-3px) scale(1.035)}
.v2 .trustbar__n.has-counted{animation:proof-number-land .58s cubic-bezier(.16,1.5,.3,1)}
.v2 .trustbar__item{transform:translateY(18px);opacity:.78;transition:transform .8s cubic-bezier(.16,1,.3,1),opacity .65s ease,box-shadow .35s ease}
.v2 .trustbar.is-celebrating .trustbar__item{transform:none;opacity:1}
.v2 .trustbar.is-celebrating .trustbar__item:nth-child(1){transition-delay:.12s}.v2 .trustbar.is-celebrating .trustbar__item:nth-child(2){transition-delay:.21s}.v2 .trustbar.is-celebrating .trustbar__item:nth-child(3){transition-delay:.3s}.v2 .trustbar.is-celebrating .trustbar__item:nth-child(4){transition-delay:.39s}
.v2 .trustbar.is-celebrating .trustbar__icon{animation:proof-icon-pop .75s .42s cubic-bezier(.16,1.6,.3,1) both}
.v2 .trustbar__item:hover{transform:translateY(-8px)!important;box-shadow:0 22px 55px rgba(28,35,52,.12)}
.v2 .trustbar__celebration{position:absolute;z-index:-1;left:50%;top:50%;width:1px;height:1px;pointer-events:none}
.v2 .trustbar__celebration i{position:absolute;left:0;top:0;width:9px;height:14px;border-radius:3px;background:var(--color);opacity:0;animation:proof-confetti 1.8s var(--delay) cubic-bezier(.12,.75,.24,1) forwards}
.v2 .trustbar__celebration i.is-star{width:18px;height:18px;border-radius:0;background:var(--color);clip-path:polygon(50% 0,61% 36%,100% 50%,61% 64%,50% 100%,39% 64%,0 50%,39% 36%)}
@keyframes proof-confetti{0%{opacity:0;transform:translate(0,0) rotate(0) scale(.2)}12%{opacity:1}70%{opacity:1}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--r)) scale(1)}}
@keyframes proof-number-land{0%{transform:scale(.92)}55%{transform:scale(1.075)}100%{transform:scale(1)}}
@keyframes proof-icon-pop{0%{transform:scale(.55) rotate(-12deg);opacity:0}65%{transform:scale(1.12) rotate(4deg);opacity:1}100%{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){.v2 .trustbar__item{transform:none;opacity:1;transition:none}.v2 .trustbar__celebration{display:none}.v2 .trustbar__icon,.v2 .trustbar__n,.v2 .trustbar__head h2{animation:none!important}}
@media(max-width:819px){
  .v2 .trustbar{padding:5.5rem 16px 4.5rem}.v2 .trustbar__head h2{font-size:3.55rem;line-height:.9}.v2 .trustbar__head>span{font-size:.92rem;max-width:32ch}.v2 .trustbar__inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:2.75rem}.v2 .trustbar__item,.v2 .trustbar__item+.trustbar__item{min-height:190px;padding:1.25rem;border-radius:20px}.v2 .trustbar__icon{width:48px;height:48px;border-radius:15px}.v2 .trustbar__icon svg{width:26px;height:26px}.v2 .trustbar__n{font-size:2.15rem}.v2 .trustbar__l{font-size:.69rem;line-height:1.25}
}

/* Member videos replace only the former app-phone pack. */
.v2 .hero5__member-devices{display:block!important}
.v2 .hero5__feature{opacity:var(--feature-alpha,1)!important}
.v2 .hero5__member-devices .community-card{--member-label:0;position:absolute;left:50%;top:42px;width:260px;margin:0;aspect-ratio:4/5.25;border-radius:28px;background:transparent;box-shadow:none;overflow:visible;transform-origin:50% 12%;will-change:transform}
.v2 .hero5__member-devices .community-card:nth-of-type(1){z-index:5}
.v2 .hero5__member-devices .community-card:nth-of-type(2){z-index:4}
.v2 .hero5__member-devices .community-card:nth-of-type(3){z-index:3}
.v2 .hero5__member-devices .community-card:nth-of-type(4){z-index:2}
.v2 .hero5__member-devices .community-card:nth-of-type(5){z-index:1}
.v2 .hero5__member-devices .community-card video{border-radius:inherit;background:#dfe6ef;box-shadow:0 28px 58px rgba(22,40,67,.2)}
.v2 .hero5__member-devices .community-card__shade{border-radius:inherit}
.v2 .hero5__member-devices .community-card figcaption{top:auto;bottom:1.15rem;left:1.1rem;right:1.1rem;justify-content:flex-start;color:#fff;text-align:left;opacity:var(--member-label);transform:translateY(calc((1 - var(--member-label))*12px))}
.v2 .hero5__member-devices .community-card figcaption>span:last-child{width:auto}.v2 .hero5__member-devices .community-card figcaption em{color:#4A77FF;font-size:.61rem}.v2 .hero5__member-devices .community-card figcaption b{color:#fff;font-size:1.08rem}.v2 .hero5__member-devices .community-card figcaption .community-card__avatar{display:grid!important}.v2 .hero5__member-devices .community-card figcaption small{max-width:24ch;margin:.28rem 0 0;color:rgba(255,255,255,.88);font-size:.76rem;line-height:1.35;text-wrap:balance}
.v2 .hero5__member-devices .community-card__sound{display:none}
@media(max-width:819px){
  .v2 .hero5__member-devices{display:block!important;height:285px!important;overflow:hidden!important}
  .v2 .hero5__member-devices .community-card{top:20px;width:68vw;max-width:250px;aspect-ratio:4/5.2}
  .v2 .hero5__member-devices .community-card:nth-of-type(1){z-index:3;transform:translateX(-50%)!important}
  .v2 .hero5__member-devices .community-card:nth-of-type(2){z-index:1;transform:translateX(calc(-50% - 44px)) translateY(22px) rotate(-4deg) scale(.91)!important}
  .v2 .hero5__member-devices .community-card:nth-of-type(3){z-index:2;transform:translateX(calc(-50% + 44px)) translateY(22px) rotate(4deg) scale(.91)!important}
  .v2 .hero5__member-devices .community-card:nth-of-type(n+4){display:none!important}
  .v2 .hero5__member-devices .community-card figcaption{left:.75rem;right:.75rem;bottom:.75rem}
}

/* Fourth step in each desktop flare, kept clear of the testimonial row. */
@media(min-width:1051px){
  .v2 .hero5__feature--leaderboard{left:2%!important;top:590px!important;width:175px!important}
  .v2 .hero5__food--calories{left:24%!important;top:655px!important}
  .v2 .hero5__feature--rest{right:2%!important;top:570px!important;width:215px!important}
  .v2 .hero5__food--database{right:24%!important;top:625px!important}
}
@media(min-width:820px) and (max-width:1050px){.v2 .hero5__feature--leaderboard,.v2 .hero5__feature--rest{display:none!important}}

/* Prize schedule: distinguish the £10k overall pool from weekly wins. */
.prize-schedule{overflow:hidden;border:1px solid rgba(48,58,78,.1);border-radius:24px;background:rgba(255,255,255,.7);box-shadow:0 18px 48px rgba(50,68,106,.08)}
.prize-schedule__head,.prize-schedule__row{display:grid;grid-template-columns:minmax(190px,1.5fr) repeat(2,minmax(90px,.6fr));align-items:center;gap:1rem;padding:1rem 1.25rem}
.prize-schedule__head{background:rgba(74,119,255,.08);color:#747984;font-size:.63rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.prize-schedule__head span:not(:first-child){text-align:right}
.prize-schedule__row{min-height:82px;border-top:1px solid rgba(48,58,78,.09)}.prize-schedule__row b{font-size:.8rem;line-height:1.3}.prize-schedule__row strong{text-align:right;font-size:1.25rem;letter-spacing:-.04em}
.prize-schedule__total{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem;background:#17181b;color:#fff}.prize-schedule__total span,.prize-schedule__total b,.prize-schedule__total small{display:block}.prize-schedule__total b{font-size:.8rem}.prize-schedule__total small{margin-top:.25rem;color:rgba(255,255,255,.58);font-size:.62rem}.prize-schedule__total>strong{color:#8faaff;font-size:1.25rem;white-space:nowrap}
@media(max-width:600px){.prize-schedule__head,.prize-schedule__row{grid-template-columns:1.25fr .65fr .65fr;gap:.45rem;padding:.9rem}.prize-schedule__row b{font-size:.7rem}.prize-schedule__row strong{font-size:1rem}.prize-schedule__total{align-items:flex-start;flex-direction:column}.prize-schedule__total>strong{font-size:1.4rem}}



/* Compatibility belongs to its own calm beat, not on top of a product screen. */
.compatibility-strip{padding:clamp(4rem,7vw,7rem) 24px;background:#fff}
.compatibility-strip__inner{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(520px,1.28fr);align-items:center;gap:clamp(3rem,8vw,8rem);padding:clamp(2.5rem,5vw,5rem);border-radius:32px;background:linear-gradient(135deg,#f3f7ff,#f6f1ff 55%,#fff4f1)}
.compatibility-strip__copy p{margin:0 0 .8rem;color:#4A77FF;font-size:.7rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.compatibility-strip__copy h2{margin:0 0 1rem;font-size:clamp(2.5rem,4vw,4.4rem);line-height:.94;letter-spacing:-.06em;text-wrap:balance}
.compatibility-strip__copy span{display:block;max-width:40ch;color:#6d727b;font-size:1rem;line-height:1.55}
.compatibility-strip__logos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.compatibility-strip__logos .ww__item{display:flex;min-height:86px;align-items:center;justify-content:center;gap:.7rem;padding:1.1rem;border:1px solid rgba(23,24,27,.06);border-radius:20px;background:rgba(255,255,255,.82);box-shadow:0 14px 35px rgba(42,57,90,.07);font-size:.9rem;font-weight:780;white-space:nowrap}
.compatibility-strip__logos .ww__mark,.compatibility-strip__logos .ww__wordmark{width:1.7rem;height:1.7rem;object-fit:contain}
@media(min-width:820px){
  .v2 .journey__layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(3rem,5vw,5rem);max-width:1320px}
  .v2 .journey__intro h2{max-width:10ch;font-size:clamp(3.7rem,5vw,5.6rem)}
}
@media(max-width:819px){
  .compatibility-strip{padding:3.5rem 16px}
  .compatibility-strip__inner{display:block;padding:2.2rem 1.2rem;border-radius:24px}
  .compatibility-strip__copy{text-align:center}
  .compatibility-strip__copy h2{font-size:2.8rem}
  .compatibility-strip__copy span{margin-inline:auto}
  .compatibility-strip__logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:2rem}
  .compatibility-strip__logos .ww__item{min-height:68px;padding:.75rem .45rem;border-radius:15px;font-size:.68rem}
}

/* ══ Product deep-dive — the Bevel pattern: a dark full-bleed band, stacked
      pastel feature cards, and one sticky phone that swaps real app screens
      as each card passes behind it. Floating callouts echo the UI. ══ */
.intel{padding:clamp(5rem,9vw,8.5rem) 8px clamp(3.5rem,6vw,5rem);background:var(--c-dark-bg)}
.intel__head{max-width:820px;margin:0 auto clamp(3.25rem,6vw,5rem);text-align:center}
.intel__head h2{margin:0;font-size:clamp(2.7rem,5.4vw,4.4rem);line-height:1.02;letter-spacing:-.05em}
.intel__head h2 span,.intel__head h2 b{display:block}
.intel__head h2 span{color:rgba(255,255,255,.42)}
.intel__head h2 b{color:#fff}
.intel__head p{max-width:46ch;margin:1.4rem auto 0;color:rgba(255,255,255,.6);font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.6}
.intel__stack{position:relative;display:grid;gap:10px;width:min(1360px,100%);margin:0 auto}
.intel__panel{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;min-height:min(92vh,820px);padding:clamp(2.25rem,4.5vw,4.25rem) clamp(1.5rem,4.5vw,5rem);border-radius:min(34px,6vw);overflow:hidden}
.intel__panel--blue{background:linear-gradient(135deg,#dde9ff 0%,#e7e4ff 55%,#f3eeff 100%)}
.intel__panel--peach{background:linear-gradient(135deg,#f0f0f3 0%,#f7ebe4 55%,#ffe9df 100%)}
.intel__panel--mint{background:linear-gradient(135deg,#def2e8 0%,#e9f7ef 55%,#f5fbf8 100%)}
.intel__panel--cream{background:linear-gradient(135deg,#f4efe2 0%,#faf3e7 55%,#fff8ec 100%)}
.intel__panel--dusk{background:linear-gradient(135deg,#dfe7fb 0%,#e9ecfd 50%,#f7f0fb 100%)}
.intel__copy{max-width:520px}
.intel__kicker{margin:0 0 1.1rem;color:#4A77FF;font-family:var(--font-heading);font-size:.8rem;font-weight:700}
.intel__copy h3{max-width:12ch;margin:0;font-size:clamp(2.2rem,3.9vw,3.6rem);line-height:1;letter-spacing:-.045em;color:#14161b;text-wrap:balance}
.intel__note{max-width:40ch;margin:1.4rem 0 0;color:#565b66;font-size:clamp(1rem,1.3vw,1.15rem);line-height:1.6}

/* The sticky phone: an absolute rail spanning the stack, with the frame
   sticky inside it — so the phone starts on the first card, rides the
   viewport centre, and leaves with the last card. Painted above the cards. */
.intel__phone{position:absolute;inset:0;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:start;padding-inline:clamp(1.5rem,4.5vw,5rem);pointer-events:none}
.intel__frame{position:sticky;top:max(10vh,calc(50vh - 337px));grid-column:2;justify-self:center;width:min(300px,23vw);margin-top:clamp(3rem,9vh,6rem);aspect-ratio:414/900;padding:.42rem;border-radius:clamp(2.1rem,2.6vw,2.6rem);background:#17191e;box-shadow:0 50px 110px rgba(4,9,24,.5)}
.intel__screen{position:absolute;inset:.42rem;width:calc(100% - .84rem);height:calc(100% - .84rem);border-radius:clamp(1.7rem,2.2vw,2.2rem);object-fit:cover;object-position:top;opacity:0;transition:opacity .55s var(--ease-expo)}
.intel__screen.is-active{opacity:1}

/* Floating callouts: white cards overlapping the phone, above it (z 3 > 2). */
.intel__float{display:grid;gap:.7rem;justify-items:start}
.intel__float--desk{position:absolute;z-index:3;left:53%;bottom:13%}
.intel__panel:nth-of-type(even) .intel__float--desk{left:auto;right:4%;top:12%;bottom:auto;justify-items:end}
.intel__card{min-width:230px;max-width:280px;padding:1.05rem 1.2rem;border-radius:18px;background:#fff;box-shadow:0 28px 70px rgba(9,16,34,.3)}
.intel__card b{display:block;font-family:var(--font-heading);font-size:1rem;font-weight:750;letter-spacing:-.02em;color:#15171c}
.intel__card span{display:block;margin-top:.3rem;color:#6b7079;font-size:.8rem;line-height:1.45}
.intel__meter{display:block;height:5px;margin-top:.85rem;border-radius:99px;background:rgba(74,119,255,.16)}
.intel__meter u{display:block;height:100%;border-radius:inherit;background:#4A77FF}
.intel__chip{display:inline-flex;align-items:center;padding:.55rem .85rem;border:1px solid rgba(255,255,255,.75);border-radius:999px;background:rgba(255,255,255,.85);backdrop-filter:blur(6px);box-shadow:0 14px 34px rgba(9,16,34,.18);font-size:.72rem;font-weight:750;color:#2a2d35}

/* Section close: rating + store badges on the dark ground. */
.intel__close{max-width:640px;margin:clamp(3rem,5vw,4.5rem) auto 0;text-align:center}
.intel__proof{margin:0 0 1.4rem;color:rgba(255,255,255,.72);font-size:.85rem}
.intel__proof .stars{color:#8faaff;letter-spacing:.08em}
.intel__fine{margin:1.4rem 0 0;color:rgba(255,255,255,.45);font-size:.75rem}

/* Mobile: each card carries its own phone, bleeding off the card's bottom
   edge with the callout overlapping it — the sticky phone stands down. */
.intel__shot{display:none}
@media(max-width:819px){
  .intel{padding-inline:8px}
  .intel__phone,.intel__float--desk{display:none}
  .intel__panel{display:block;min-height:0;padding:2.5rem 1.4rem 0;border-radius:26px}
  .intel__copy{max-width:none}
  .intel__copy h3{max-width:none;font-size:2.3rem}
  .intel__note{max-width:none;font-size:1rem}
  .intel__shot{position:relative;display:block;width:min(250px,74%);margin:2.5rem auto -12%}
  .intel__shot-frame{display:block;padding:.34rem;border-radius:2rem;background:#17191e;box-shadow:0 30px 70px rgba(9,16,34,.3)}
  .intel__shot-frame img{display:block;width:100%;aspect-ratio:414/900;object-fit:cover;object-position:top;border-radius:1.66rem}
  .intel__shot .intel__float{position:absolute;right:-14%;bottom:34%;justify-items:end}
  .intel__card{min-width:0;max-width:230px;padding:.9rem 1rem}
  .intel__chip{font-size:.66rem}
}

/* ══════════════════════════════════════════════════════════════════
   Blueprint pass — rhythm, funnel and craft. See DESIGN_SYSTEM.md.
   Appended last so it wins the cascade over the per-section patchwork.
   ══════════════════════════════════════════════════════════════════ */
:root{interpolate-size:allow-keywords}

/* One spacing scale (Bevel's measured clamp) — desktop; mobile has one flat rule */
@media(min-width:820px){.v2 main>section{padding-block:clamp(5rem,7vw + 3.5rem,10rem)}}

/* Display type is budgeted: hero, the dark band, the close. Every other
   heading steps down so the page has crescendos instead of constant shout. */
.v2 .reviews-focus__head h2{font-size:clamp(2rem,2.6vw,2.75rem);line-height:1.08;letter-spacing:-.03em}
.v2 .journey__intro h2{max-width:16ch;font-size:clamp(2rem,2.8vw,2.75rem);line-height:1.08;letter-spacing:-.03em}
.v2 .decision__head h2{font-size:clamp(2.1rem,3.2vw,3.1rem);line-height:1.05;letter-spacing:-.035em}
.v2 .decision__head{margin-bottom:2.75rem}
.v2 .buying-questions .sec-head h2{font-size:clamp(2rem,2.6vw,2.75rem);letter-spacing:-.03em}
.v2 .tx__prize strong{font-size:clamp(2.3rem,3.2vw,3.2rem)}
.v2 .journey__steps h3{font-size:clamp(1.5rem,2.2vw,2rem);letter-spacing:-.03em}

/* Trustbar rides as the mosaic's quiet stat head */
.v2 .trustbar--slim .trustbar__inner{padding-block:1.6rem}

/* Transformations: primary ask + quiet gallery link */
.tx__more{display:inline-block;margin-top:1rem;color:#33373f;font-size:.82rem;font-weight:750;text-decoration:underline;text-underline-offset:3px}
.v2 .tx__prize .btn{margin-top:.5rem}

/* Intel: tighter panels, honest contrast, sync chips replace the store leak */
.v2 .intel__head h2 span{color:rgba(255,255,255,.55)}
.v2 .intel__panel{min-height:min(72vh,640px)}
.v2 .intel__frame{width:min(280px,22vw);top:max(8vh,calc(50vh - 320px))}
.intel__sync{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:0;list-style:none}
.intel__sync .ww__item{display:flex;align-items:center;gap:.5rem;padding:.55rem .85rem;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.78);font-size:.72rem;font-weight:700}
.intel__sync .ww__mark{width:1rem;height:1rem;fill:currentColor}
.intel__sync .ww__wordmark{display:inline-grid;place-items:center;width:1rem;height:1rem;font-size:.7rem;font-weight:900}

/* Founder: authority, not a conversion stop */
.linklike{border:0;background:none;padding:0;color:#17181b;font:inherit;font-size:.85rem;font-weight:750;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* Journey: one viewport of process certainty + goal chips */
.v2 .journey__steps li{min-height:0;padding:2.6rem 0}
@media(min-width:820px){.v2 .journey__steps li{opacity:.55}}
.v2 .journey__steps li.is-active{opacity:1}
.journey__goals{display:flex;flex-wrap:wrap;gap:8px;margin:1.2rem 0 0;padding:0;list-style:none}
.journey__goals li{padding:.5rem .85rem;border:1px solid rgba(47,58,80,.14);border-radius:999px;background:rgba(255,255,255,.72);color:#3c414b;font-size:.75rem;font-weight:750}

/* Prize: scroll-scrubbed shutter curtain (the one added showpiece) */
.v2 .prize-focus{position:relative;overflow:hidden}
.prize-focus .shutter{position:absolute;inset:-1px;z-index:5;display:none;grid-template-rows:repeat(6,1fr);pointer-events:none}
.prize-focus .shutter i{background:var(--bg);transform-origin:center top}
.prize-hero__fine{margin:1rem 0 0;color:#6d727b;font-size:.75rem}
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion:no-preference){
    .prize-focus .shutter{display:grid}
    .prize-focus .shutter i{animation:shutter-open linear both;animation-timeline:view()}
    .prize-focus .shutter i:nth-child(1){animation-range:entry 0% entry 55%}
    .prize-focus .shutter i:nth-child(2){animation-range:entry 4% entry 59%}
    .prize-focus .shutter i:nth-child(3){animation-range:entry 8% entry 63%}
    .prize-focus .shutter i:nth-child(4){animation-range:entry 12% entry 67%}
    .prize-focus .shutter i:nth-child(5){animation-range:entry 16% entry 71%}
    .prize-focus .shutter i:nth-child(6){animation-range:entry 20% entry 75%}
    @keyframes shutter-open{to{transform:scaleY(0)}}
  }
}

/* Decision: the £149.99 anchor, experiments lower and quieter */
.pricing-entry{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);gap:2rem;align-items:center;max-width:940px;margin:0 auto;padding:clamp(1.6rem,3vw,2.4rem);border:1px solid #14161b;border-radius:24px;background:#fff;box-shadow:0 28px 70px rgba(9,16,34,.12)}
.pricing-entry h3{margin:.55rem 0 .2rem;font-size:1.55rem;letter-spacing:-.03em}
.pricing-entry .pricing-model__label{min-height:0;margin-bottom:0}
.pricing-entry .pricing-model__price{margin:.7rem 0 1.1rem}
.pricing-entry .pricing-model__price strong{font-size:clamp(2.8rem,3.6vw,3.6rem)}
.pricing-entry ul{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}
.pricing-entry li{position:relative;padding-left:1.35rem;color:#4b5058;font-size:.88rem}
.pricing-entry li::before{content:"✓";position:absolute;left:0;color:#4A77FF;font-weight:900}
.pricing-entry__act{display:grid;gap:.85rem;justify-items:stretch;text-align:center}
.pricing-entry__act small{color:#82868e;font-size:.72rem;line-height:1.5}
.decision__more{max-width:940px;margin:3.25rem auto 1.1rem}
.decision__more h3{margin:0 0 .25rem;font-size:1.1rem;letter-spacing:-.02em}
.decision__more p{margin:0;color:#6b7078;font-size:.85rem}
.v2 .pricing-models{max-width:940px;margin-inline:auto}
.v2 .pricing-model{min-height:430px;padding:1.35rem}
.v2 .pricing-model__price strong{font-size:2.1rem}
.v2 .pricing-model__label{min-height:2.4em}

/* Member voices at the point of decision */
.decision__voices{margin:3.5rem auto 1.5rem;text-align:center}
.decision__voices h3{margin:0 0 1.3rem;font-size:1.1rem;letter-spacing:-.02em}
.decision__voices .community-proof__hint{margin:1rem 0 0;color:#8a8e95;font-size:.72rem}

/* FAQ opens like it was designed, not toggled */
.buying-questions .faq__item::details-content,
.buying-questions .obj::details-content{block-size:0;overflow:hidden;transition:block-size .35s var(--ease-expo),content-visibility .35s allow-discrete}
.buying-questions .faq__item[open]::details-content,
.buying-questions .obj[open]::details-content{block-size:auto}

/* One dark close, flush with the footer's world */
.v2 .closing{background:#050d1d}

/* Footer stores — the app's home now */
.footer__stores{display:flex;flex-wrap:wrap;gap:10px;margin-top:1.2rem}
.footer__stores .badge img{height:40px;width:auto}

/* Mobile bottom sticky CTA (hidden over the decision section) */
.sticky-cta{position:fixed;left:10px;right:10px;bottom:10px;z-index:60;display:none;grid-template-columns:auto 1fr;justify-items:stretch;align-items:center;gap:.8rem;padding:.55rem .55rem .55rem 1rem;border:1px solid rgba(23,24,27,.08);border-radius:18px;background:rgba(255,255,255,.93);backdrop-filter:blur(10px);box-shadow:0 18px 48px rgba(10,16,30,.2);transform:translateY(130%);transition:transform .45s cubic-bezier(.19,1,.22,1)}
.sticky-cta__info b{display:block;font-family:var(--font-heading);font-size:.8rem;color:#14161b}
.sticky-cta__info small{color:#71767e;font-size:.68rem}
.sticky-cta .btn{min-height:2.9rem;padding:.7rem 1.15rem;font-size:.8rem}
.sticky-cta.is-on{transform:none}
@media(max-width:819px){
  .sticky-cta{display:grid}
  .v2 .decision__head h2{font-size:2.3rem}
  .pricing-entry{grid-template-columns:1fr;gap:1.4rem}
  .v2 .journey__intro h2{font-size:2rem}
  .v2 .reviews-focus__head h2,.v2 .buying-questions .sec-head h2{font-size:1.9rem}
}
@media(prefers-reduced-motion:reduce){.sticky-cta{transition:none}}

/* Final blueprint polish */
.v2 .founder-note h2{font-size:clamp(2rem,2.6vw,2.75rem);letter-spacing:-.03em}
/* Burned-in clip captions: deepen the card shade so overlay text stays legible */
.hero5__member-devices .community-card__shade{background:linear-gradient(180deg,transparent 30%,rgba(10,13,20,.5) 62%,rgba(10,13,20,.92) 100%)}
/* Stat numbers in full ink — proof shouldn't whisper */
.v2 .trustbar__item .trustbar__n{color:#17191d}
.v2 .trustbar__item:first-child .trustbar__n{color:#fff}

/* Decision voices: one new face on video + two badged quotes, fixed grid */
.voices{display:grid;grid-template-columns:minmax(0,.8fr) repeat(2,minmax(0,1.1fr));column-gap:26px;row-gap:16px;align-items:stretch;max-width:1040px;margin:0 auto}
.voices .community-card{grid-row:span 2}
.voices .community-card{width:100%;height:100%;aspect-ratio:auto;min-height:0}
.voices__quote{display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem;margin:0;padding:1.6rem;border:1px solid #e3e6ec;border-radius:24px;background:#f6f7f9;text-align:left}
.voices__quote p{margin:0;color:#2c3038;font-size:1.05rem;line-height:1.5;letter-spacing:-.01em}
.voices__quote footer{display:flex;align-items:center;gap:.7rem}
.voices__quote img{width:44px;height:44px;border-radius:50%;object-fit:cover}
.voices__quote b{display:block;font-family:var(--font-heading);font-size:.85rem;color:#17191d}
.voices__quote small{color:#4A77FF;font-size:.72rem;font-weight:750}
@media(max-width:819px){
  .voices{grid-template-columns:1fr;gap:10px}
  .voices .community-card{width:min(280px,80%);min-height:0;aspect-ratio:4/5;margin:0 auto}
}

/* ── Three-tier pricing: per-challenge / annual / unlimited (featured) ── */
.pricing-models--three{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1040px}
.pricing-models--three .pricing-model{min-height:0}
.pricing-models--three .pricing-model__compare{display:grid;gap:.2rem;min-height:3.9rem;align-content:center;margin:.2rem 0 0;padding:.75rem .9rem;border-radius:12px;font-size:.72rem;line-height:1.35}
.pricing-models--three .btn{margin-top:auto}
.decision__dates{margin:1.6rem 0 0;text-align:center;color:#7b8089;font-size:.78rem}

/* ══ Mobile pass — one rhythm, no crops, no ghosts (mobile critique) ══ */
main section[id]{scroll-margin-top:90px}
@media(max-width:819px){
  body{overflow-x:clip}
  /* One flat rhythm rule; the section-local patchwork stops fighting */
  .v2 main>section,.v2 .trustbar{padding-block:4.25rem!important}
  .v2 .trustbar{padding-inline:16px!important}
  /* Hero: price back, member videos uncropped */
  .v2 .hero5__fine{display:block!important;margin-top:.6rem;font-size:.68rem}
  .v2 .hero5__member-devices{height:310px!important}
  .v2 .hero5__member-devices .community-card{top:0;width:min(60vw,215px)}
  /* Trustbar never waits for a reveal it might miss */
  .v2 .trustbar__item{opacity:1;transform:none}
  /* Proof section: sane display size, stacked actions */
  .v2 main .tx__prize strong{font-size:2.4rem!important}
  .tx__more{display:block;margin-top:.9rem}
  /* Intel: no clipped phone, callout beside the screen not on it */
  .intel__shot{margin:2.25rem auto 0}
  .v2 .intel__panel{padding-bottom:2.25rem}
  /* Bevel mobile pattern: the callout hangs off the phone's side, floats
     idly, and scrubs in/out with scroll where the browser supports it */
  .intel__shot .intel__float{top:30%;bottom:auto;left:auto;right:-40%;justify-items:start;width:max-content;max-width:200px}
  .v2 .intel__panel:nth-of-type(even) .intel__shot .intel__float{right:auto;left:-40%;justify-items:end}
  .intel__shot .intel__card{max-width:210px;padding:.85rem .95rem}
  .intel__shot .intel__card b{font-size:.9rem}
  .intel__shot .intel__card span{font-size:.74rem}
  .intel__shot .intel__chip{display:none}
  /* Reviews: the marquee drifts again — mobile's one ambient motion */
  @media(prefers-reduced-motion:no-preference){
    .v2 .reviews-focus__field .marquee{overflow:hidden}
    .v2 .reviews-focus__field .marquee__track{animation:slide 70s linear infinite!important}
  }
  /* Pricing: featured first, next card peeks */
  /* Evidence (NN/g, Baymard, CXL): at 3 tiers, stacked beats swiped — every
     plan discoverable, gold anchors first, £149.99 one scroll away. */
  .pricing-models--three{display:grid;grid-template-columns:1fr;gap:12px;margin-inline:0;padding:5px 0 8px;overflow:visible}
  .pricing-models--three .pricing-model{min-height:0}
  .pricing-models--three .pricing-model--featured{order:-1}
  .pricing-models--three .pricing-model--bronze{order:0}
  .pricing-models--three .pricing-model--silver{order:1}
  /* Sticky bar: out of the home-indicator zone */
  .sticky-cta{bottom:calc(10px + env(safe-area-inset-bottom))}
  /* Two dark bands flush at the end: let the close sit apart */
  .v2 .closing{margin-bottom:16px}
}

/* ══ One CTA system — Transformation Challenge blue (the app's #4A77FF).
   Solid blue = "give us money", and nothing else wears it. ══ */
.v2 .btn--primary,.v2 .btn--dark,.v2 .header .btn,.v2 .hero5__cta .btn{background:#4A77FF;border-color:#4A77FF;color:#fff;box-shadow:0 8px 24px rgba(74,119,255,.32)}
.v2 .btn--primary:hover,.v2 .btn--dark:hover,.v2 .header .btn:hover,.v2 .hero5__cta .btn:hover{background:#3765F5;border-color:#3765F5;box-shadow:0 12px 32px rgba(74,119,255,.42)}
.v2 .closing .btn--primary{background:#4A77FF;color:#fff;box-shadow:0 8px 24px rgba(74,119,255,.35)}
.v2 .closing .btn--primary:hover{background:#3765F5}

/* Labels that read as buttons stop dressing like them */
.v2 .journey__steps small{margin-top:1rem;padding:0;border-radius:0;background:none;box-shadow:none;color:#4A77FF;font-family:var(--font-heading);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.v2 .journey__goals{gap:.4rem 1.1rem;margin-top:1.1rem}
.v2 .journey__goals li{padding:0;border:0;border-radius:0;background:none;color:#5d626b;font-size:.82rem;font-weight:650}
.v2 .journey__goals li::before{content:"✓";margin-right:.4rem;color:#4A77FF;font-weight:800}

/* ══ The podium: bronze, silver — and the gold winner.
      Metal rims via two-layer backgrounds; Unlimited gets the champion
      treatment: rotating gold ring, glow, lift, gold accents. ══ */
.pricing-models--three .pricing-model{border:2px solid transparent}
.pricing-models--three .pricing-model--bronze{background:linear-gradient(#f6f7f9,#f6f7f9) padding-box,linear-gradient(150deg,#c98d5e,#eec39a 35%,#8a5a35 70%,#d99e6d) border-box}
.pricing-models--three .pricing-model--bronze .pricing-model__label{color:#a06a35}
.pricing-models--three .pricing-model--silver{background:linear-gradient(#eef4ff,#eef4ff) padding-box,linear-gradient(150deg,#98a1ad,#eef2f7 35%,#76808d 70%,#c3cad4) border-box}
.pricing-models--three .pricing-model--silver .pricing-model__label{color:#6d7683}
@property --gold-ring{syntax:'<angle>';initial-value:0deg;inherits:false}
.pricing-models--three .pricing-model--featured{border-width:3px;background:linear-gradient(#15161a,#15161a) padding-box,conic-gradient(from var(--gold-ring),#8a6a1c,#f7d774 22%,#b8860b 45%,#fff3c4 68%,#caa036 85%,#8a6a1c) border-box!important;box-shadow:0 30px 80px rgba(212,160,42,.28),0 8px 28px rgba(20,16,4,.35)}
@media(prefers-reduced-motion:no-preference){
  .pricing-models--three .pricing-model--featured{animation:gold-ring 7s linear infinite}
  @keyframes gold-ring{to{--gold-ring:360deg}}
}
.pricing-models--three .pricing-model--featured .pricing-model__flag{background:linear-gradient(135deg,#f7d774,#d4a02a);color:#241a02;box-shadow:0 6px 18px rgba(212,160,42,.4)}
.pricing-models--three .pricing-model--featured .pricing-model__label{color:#f0c75a}
.pricing-models--three .pricing-model--featured .pricing-model__value b{color:#f0c75a}
.pricing-models--three .pricing-model--featured li::before{color:#f0c75a}
@media(min-width:820px){
  /* The podium lift: the winner stands above the field */
  .pricing-models--three{align-items:center}
  .pricing-models--three .pricing-model{min-height:520px}
  .pricing-models--three .pricing-model--featured{min-height:568px;z-index:1}
}
/* Gold card: the winner's name stays legible */
.pricing-models--three .pricing-model--featured h3{color:#fff}
/* Mobile mosaic: never crop a face — bias every tile crop to the top */
@media(max-width:819px){
  .v2 main .tx__stage .txc__media img{object-position:50% 12%}
}

/* /the-app install band */
.install-band{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:clamp(2rem,5vw,4rem);align-items:center}
.install-band__copy h2{margin:.6rem 0 1.5rem;font-size:clamp(2rem,2.8vw,2.75rem);letter-spacing:-.03em;line-height:1.08}
.install-band .appid{max-width:420px;margin-bottom:1.5rem;border:1px solid var(--border);border-radius:18px}
.install-band .install__qr{display:flex;gap:1.2rem;align-items:center;padding:1.5rem;border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:var(--shadow-md)}
.install-band .qr{width:132px;flex:none}
.install-band .install__qr b{display:block;font-family:var(--font-heading)}
.install-band .install__qr span{color:var(--fg-muted);font-size:.85rem}
@media(max-width:819px){.install-band{grid-template-columns:1fr}.install-band .install__qr{display:none}}

/* ── Mobile menu: burger + dropdown panel; the sticky bar owns the CTA ── */
.header__menu{display:none;position:relative;flex-direction:column;justify-content:center;gap:4px;width:44px;height:44px;padding:0;border:1px solid rgba(23,24,27,.1);border-radius:14px;background:#fff;cursor:pointer;align-items:center}
.header__menu span:not(.header__menu-label){display:block;width:17px;height:2px;border-radius:2px;background:#17191d;transition:transform .25s var(--ease-expo),opacity .2s}
.header__menu-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.menu-open .header__menu span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-open .header__menu span:nth-child(2){opacity:0}
.menu-open .header__menu span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media(max-width:819px){
  .v2 .header__cta{display:none}
  .header__menu{display:flex}
  .v2 .nav{position:absolute;top:calc(100% + 8px);left:0;right:0;display:none;flex-direction:column;gap:2px;margin:0;padding:.6rem;border:1px solid rgba(23,24,27,.06);border-radius:20px;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);box-shadow:0 24px 60px rgba(15,25,50,.18)}
  .v2 .header.menu-open .nav{display:flex}
  .v2 .nav a{display:block;padding:.85rem 1rem;border-radius:12px;color:#1f2025;font-size:1rem;font-weight:650}
  .v2 .nav a:nth-child(n+3){display:block}
  .v2 .nav a:active{background:#f2f4f8}
  .v2 .header__inner{position:relative}
}

/* Comparison rows carry each card's argument against the tier before it */
.pricing-model__compare b{font-family:var(--font-heading);font-size:.78rem;letter-spacing:-.01em;color:#17191d}
.pricing-model__compare span{color:#6b7078}
.pricing-models--three .pricing-model--bronze .pricing-model__compare{background:rgba(160,106,53,.09)}
.pricing-models--three .pricing-model--bronze .pricing-model__compare b{color:#8a5a35}
.pricing-models--three .pricing-model--silver .pricing-model__compare{background:rgba(109,118,131,.11)}
.pricing-models--three .pricing-model--silver .pricing-model__compare b{color:#4e5866}
.pricing-models--three .pricing-model--featured .pricing-model__compare{background:rgba(247,215,116,.13)}
.pricing-models--three .pricing-model--featured .pricing-model__compare b{color:#f0c75a}
.pricing-models--three .pricing-model--featured .pricing-model__compare span{color:rgba(255,255,255,.66)}

/* ── Story pages: labelled photo, stat tiles, pull quote, related rail ── */
.crumbs{margin:0 0 1rem;color:#8a8e95;font-size:.75rem}
.crumbs a{color:#6b7078;text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.v2 .story{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,4vw,4rem);align-items:start}
.story__img{position:relative;margin:0}
.story__img img{width:100%;border-radius:24px;box-shadow:0 18px 48px rgba(20,30,60,.12)}
.story__chip{position:absolute;top:14px;padding:.4rem .7rem;border-radius:999px;background:rgba(10,13,20,.72);color:#fff;font-family:var(--font-heading);font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(4px)}
.story__chip--b{left:14px}
.story__chip--a{left:calc(50% + 14px)}
.story__img figcaption{margin-top:.7rem;color:#8a8e95;font-size:.72rem}
.story__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 1.6rem}
.story__stats div{padding:1rem 1.1rem;border:1px solid var(--border);border-radius:16px;background:#f6f7f9}
.story__stats b{display:block;font-family:var(--font-heading);font-size:1.35rem;letter-spacing:-.03em;color:#17191d}
.story__stats span{color:#7b8089;font-size:.7rem}
.story__quote{margin:0 0 1.4rem;padding:1.4rem 1.6rem;border-left:3px solid #4A77FF;border-radius:0 18px 18px 0;background:#f2f5ff}
.story__quote p{margin:0;font-family:var(--font-heading);font-size:1.15rem;line-height:1.4;letter-spacing:-.015em;color:#1d2027}
.story__quote footer{margin-top:.6rem;color:#5b6069;font-size:.8rem}
.story__related .result{max-width:none}
@media(max-width:819px){.v2 .story{grid-template-columns:1fr}.story__stats b{font-size:1.15rem}}

/* ── Testimonial wall: masonry, app-store-style cards ── */
.wall{columns:3 300px;column-gap:12px}
.wall .quote{display:inline-block;width:100%;margin:0 0 12px;break-inside:avoid}
@media(max-width:600px){.wall{columns:1}}

/* ── Footer tidy ── */
.v2 .footer{padding:clamp(3.5rem,6vw,5.5rem) 24px 2.5rem}
.v2 .footer__grid{gap:clamp(2rem,5vw,4.5rem)}
.v2 .footer h4{margin:0 0 .9rem;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.v2 .footer ul{display:grid;gap:.55rem}
.v2 .footer a{color:rgba(255,255,255,.78);font-size:.9rem}
.v2 .footer a:hover{color:#fff}
.v2 .footer__stores{margin-top:1.5rem;gap:8px}
.v2 .footer__stores .badge img{height:42px;border-radius:8px}
.v2 .footer__legal{margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.45);font-size:.72rem;line-height:1.6}

/* ── Everything grid: the open-access membership capabilities ── */
.everything{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;max-width:1040px;margin:2.5rem auto 0;padding:0;list-style:none}
.everything li{position:relative;padding:1.05rem 1.1rem 1.05rem 2.5rem;border:1px solid var(--border);border-radius:16px;background:#fff;font-family:var(--font-heading);font-size:.92rem;font-weight:600;letter-spacing:-.01em;color:#1d2027}
.everything li::before{content:"✓";position:absolute;left:1.05rem;color:#4A77FF;font-weight:800}
@media(max-width:600px){.everything{grid-template-columns:repeat(2,minmax(0,1fr))}.everything li{padding:.85rem .8rem .85rem 2rem;font-size:.8rem}.everything li::before{left:.8rem}}

/* ── Site-wide nav: the whole site is one click away ── */
@media(min-width:1100px){
  .v2 .nav a:nth-child(n+3){display:inline}
  .v2 .nav{gap:1.15rem}
  .v2 .nav a{font-size:.78rem}
}
/* ── Page heads: one discipline across every route ── */
.v2 .pagehead h1,.v2 main>section:first-of-type .sec-head h1{font-size:clamp(2.4rem,4vw,3.4rem);letter-spacing:-.04em;line-height:1.05}
.v2 .pagehead{padding-bottom:2.5rem!important}
.stat-tiles{display:flex;justify-content:center;gap:12px;margin-top:2.25rem}
.stat-tiles div{min-width:170px;padding:1.1rem 1.3rem;border:1px solid var(--border);border-radius:16px;background:var(--bg-tint);text-align:center}
.stat-tiles b{display:block;font-family:var(--font-heading);font-size:1.5rem;letter-spacing:-.03em;color:#17191d}
.stat-tiles span{color:#7b8089;font-size:.72rem}
@media(max-width:600px){.stat-tiles{flex-wrap:wrap}.stat-tiles div{flex:1 1 40%;min-width:0;padding:.85rem}}
/* Filter chips wear the CTA blue when active */
.v2 .chip[aria-pressed="true"]{background:#4A77FF;border-color:#4A77FF;color:#fff}
/* FAQ: close the dead gap under the page head */
.v2 main .pagehead+section.u-pt0{padding-top:0!important}

/* Kickers speak, they don't shout: sentence case, brand blue, no dash */
.v2 .intel__kicker,.v2 .journey__intro .eyebrow,.v2 .decision__head .eyebrow{letter-spacing:0;text-transform:none;font-size:.8rem}

/* Reason-why cards: the mechanism, argued plainly */
.whys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:1040px;margin:2.5rem auto 0}
.whys article{padding:1.6rem;border:1px solid var(--border);border-radius:24px;background:#fff}
.whys h3{margin:0 0 .6rem;font-size:1.1rem;letter-spacing:-.02em}
.whys p{margin:0;color:#565b66;font-size:.92rem;line-height:1.6}
@media(max-width:819px){.whys{grid-template-columns:1fr}}

/* ── Mobile deep-dive pass (Bevel teardown + pricing evidence + audit) ── */
.decision__ways{margin:0 0 1.1rem;text-align:center;color:#565b66;font-size:.85rem;font-weight:650}
@media(min-width:820px){.decision__ways{display:none}}
.pricing-model__assure{display:block;margin-top:.7rem;text-align:center;color:#8a8e95;font-size:.68rem}
.pricing-model--featured .pricing-model__assure{color:rgba(255,255,255,.55)}
/* Pricing type floor: the upsell argument must not be the smallest text on the page */
.v2 .pricing-model li{font-size:.8rem}
.v2 .pricing-models--three .pricing-model__compare{font-size:.78rem}
.v2 .pricing-model__compare span{font-size:.78rem}
.v2 .pricing-models--three .pricing-model--featured .pricing-model__compare span{color:rgba(255,255,255,.8)}
.v2 .decision__fine{font-size:.75rem}
/* Footer badges: one height */
.v2 .footer__stores .badge img{height:44px;width:auto}
.v2 .footer__stores .badge--g img{height:63px;margin:-9px;border-radius:0}
@media(max-width:819px){
  /* Sticky bar returns 40px of every viewport */
  .sticky-cta{padding:.45rem .45rem .45rem .95rem;gap:.6rem}
  .sticky-cta__info b{display:inline;font-size:.82rem}
  .sticky-cta__info small{display:inline;margin-left:.45rem;font-size:.68rem}
  .sticky-cta .btn{min-height:2.7rem;padding:.6rem 1.1rem}
  /* Cookie card: a row, not a wall — it was covering the money screen */
  .cc{left:10px;right:10px;bottom:10px;max-width:none;padding:.85rem .95rem;font-size:.78rem}
  .cc .btn{min-height:2.4rem;padding:.5rem .9rem;font-size:.75rem}
  /* Intel tour diet: ~30% of the page was one section */
  .v2 .intel__panel{padding-top:2rem;padding-bottom:1.8rem}
  .intel__shot{width:min(215px,64%);margin-top:1.8rem}
  .v2 .intel__head{margin-bottom:2.25rem}
  /* Trustbar: four stats don't need 575px */
  .v2 .trustbar__item{min-height:0;padding:1.15rem}
  .v2 .trustbar__icon{width:44px;height:44px;margin-bottom:.6rem}
  .v2 .trustbar__icon svg{width:24px;height:24px}
  /* Pricing menu entry surfaces first, in the accent */
  .v2 .header.menu-open .nav a[href="/#price"]{order:-1;color:#4A77FF}
  /* Decision section: one axis */
  .v2 .decision__head{text-align:center}
}

/* ── Get the App: mobile header entry + menu row with store icons ── */
.header__get{display:none}
.nav__get{display:none}
@media(max-width:819px){
  .header__get{display:inline-flex;align-items:center;gap:.4rem;margin-left:auto;margin-right:.45rem;padding:.55rem .95rem;border-radius:999px;background:#4A77FF;color:#fff;font-family:var(--font-heading);font-size:.74rem;font-weight:700;letter-spacing:0;text-decoration:none!important;box-shadow:0 6px 18px rgba(74,119,255,.28)}
  .header__get svg{fill:#fff;flex:none}
  .os-only{display:none}
  html.is-ios .os-ios{display:block}
  html.is-android .os-android{display:block}
  .v2 .header__inner{gap:.4rem;padding:.4rem .6rem .4rem .8rem}
  .header__menu{border-radius:999px}
  .nav__get{display:flex;align-items:center;justify-content:space-between;margin-top:.4rem;padding:.85rem 1rem;border-top:1px solid rgba(23,24,27,.08)}
  .nav__get>span{font-family:var(--font-heading);font-size:1rem;font-weight:650;color:#1f2025}
  .nav__get-icons{display:flex;gap:10px}
  .nav__store{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#17191d}
  .nav__store svg{width:22px;height:22px;fill:#fff}
}

/* ── Faces first: bias every before/after crop toward the top ── */
.tx__stage .txc__media img{object-position:50% 8%}
.tx__rail .tx-tile img,.tx__stage .tx-tile img{object-position:50% 8%}
.strip .result img{object-fit:cover;object-position:50% 10%}
.results-grid .result img{object-position:50% 10%}

/* ── Mobile mosaic: every case study drifts slowly across, Bevel-style ── */
.tx__marquee{display:none}
@media(max-width:819px){
  .v2 main .tx__stage .tx__rail{display:none!important}
  .tx__marquee{display:block;overflow:hidden;margin:1.5rem -16px 0}
  .tx__marquee-track{display:flex;gap:10px;width:max-content}
  .v2 main .tx__marquee .txc,.v2 main .tx__marquee .tx-tile{position:relative!important;flex:0 0 150px;width:150px!important;height:auto!important;margin:0;animation:none;transform:none!important;inset:auto!important}
  .v2 main .tx__marquee .txc__media{height:auto;border-radius:18px}
  .v2 main .tx__marquee img{position:static!important;width:100%!important;height:auto!important;aspect-ratio:3/4!important;object-fit:cover;object-position:50% 8%;border-radius:18px;display:block}
  .tx__marquee .txc__cap,.tx__marquee figcaption,.tx__marquee .tx-tile__cap{display:none}
}
@media(max-width:819px) and (prefers-reduced-motion:no-preference){
  .tx__marquee-track{animation:slide 75s linear infinite}
}
@media(max-width:819px) and (prefers-reduced-motion:reduce){
  .tx__marquee{overflow-x:auto}
}

/* ── Hero: gentle idle float on member cards (mobile; desktop has the fan) ── */
@media(max-width:819px) and (prefers-reduced-motion:no-preference){
  .v2 .hero5__member-devices .community-card{animation:card-idle 7s ease-in-out infinite}
  .v2 .hero5__member-devices .community-card:nth-of-type(2){animation-delay:-2.3s}
  .v2 .hero5__member-devices .community-card:nth-of-type(3){animation-delay:-4.6s}
}
@keyframes card-idle{50%{translate:0 -7px}}

/* ── Works-with strip: centered on desktop, slow drift on mobile ── */
.intel__sync-wrap{max-width:660px;margin:1.4rem auto 0}
.intel__sync--dup{display:none}
@media(max-width:819px){
  .intel__sync-wrap{display:flex;max-width:none;margin-inline:-16px;overflow:hidden}
  .intel__sync-wrap .intel__sync{flex:0 0 auto;display:flex;flex-wrap:nowrap;gap:8px;max-width:none;margin:0;padding-inline:4px}
  .intel__sync--dup{display:flex}
}
@media(max-width:819px) and (prefers-reduced-motion:no-preference){
  .intel__sync-wrap .intel__sync{animation:slide 30s linear infinite}
}
@media(max-width:819px) and (prefers-reduced-motion:reduce){
  .intel__sync-wrap{overflow-x:auto}
}

/* ── Sticky bar: OS-aware app download beside the plans CTA ── */
.sticky-cta__get{flex:0 0 auto;min-height:2.7rem;padding:.6rem .95rem;font-size:.78rem;border-color:rgba(23,24,27,.16);color:#1f2025;background:#fff}


/* Intel media: video plays inside the frames like any screen */
.intel__shot-frame video{display:block;width:100%;aspect-ratio:414/900;object-fit:cover;object-position:top;border-radius:1.66rem;background:#0d0f14}
video.intel__screen{background:#0d0f14}

/* No lateral scroll, ever: clip at the root and size the header honestly */
@media(max-width:819px){
  html{overflow-x:clip}
  .v2 .header{width:100%;max-width:100%;left:0;right:0;box-sizing:border-box}
  /* Menu store tiles: glyph dead-centre */
  .nav__store{position:relative!important;display:block!important;padding:0!important}
  .nav__store svg{position:absolute;top:50%;left:50%;width:22px;height:22px;margin:0;transform:translate(-50%,-50%);fill:#fff}
}

/* Trustbar → mosaic: close the leftover gap on mobile */
@media(max-width:819px){
  .v2 .panel.tx{padding-block:1rem 3.25rem!important}
  .tx__stage{min-height:0}
}
/* Hero kicker countdown emphasis */
.hero5__kicker [data-countdown-value]{color:#4A77FF;font-variant-numeric:tabular-nums}

/* ══ Mobile density pass: same content, ~2,500px less scroll ══ */
@media(max-width:819px){
  /* Base rhythm: 68px → 56px per section edge (×11 sections) */
  .v2 main>section,.v2 .trustbar{padding-block:3.5rem!important}
  .v2 .trustbar{padding-block:2.25rem .75rem!important}
  .v2 .trustbar__item,.v2 .trustbar__item+.trustbar__item{min-height:0;padding:.95rem;border-radius:16px}
  .v2 .trustbar__inner{padding-top:.75rem}

  /* Intel (26% of the page): smaller phone, tighter panels */
  .v2 .intel__panel{padding-top:1.6rem;padding-bottom:2rem}
  .intel__shot{width:min(190px,58%);margin-top:1.4rem}
  .v2 .intel__head{margin-bottom:1.75rem}
  .v2 .intel__head p{margin-top:.9rem}
  .intel__note{margin-top:1rem;font-size:.95rem}
  .v2 .intel__close{margin-top:2rem}

  /* Decision (21%): tighter cards, one quote beside the video */
  .v2 .decision__head{margin-bottom:1.9rem}
  .v2 .pricing-model{padding:1.15rem}
  .v2 .pricing-model__price{margin:1rem 0 .6rem}
  .v2 .pricing-model ul{gap:.5rem;margin:.9rem 0 1.1rem;padding-top:.9rem}
  .v2 .pricing-models--three .pricing-model__compare{min-height:0;padding:.65rem .8rem}
  .v2 .pricing-model__label{min-height:0;margin-bottom:.9rem}
  .v2 .pricing-model>div>p{min-height:0}
  .decision__voices{margin-top:2.25rem}
  .voices blockquote:nth-of-type(n+2){display:none}
  .voices .community-card{width:min(250px,76%)}

  /* Journey: process certainty in half the air */
  .v2 .journey__steps li{padding:1.5rem 0}
  .v2 .journey__steps h3{margin-bottom:.5rem}
  .v2 .journey__layout{gap:2rem}

  /* Reviews, prize, FAQ heads: shorter run-ups */
  .v2 .reviews-focus__head{margin-bottom:.5rem}
  .v2 .reviews-focus__field{margin-top:1.5rem}
  .v2 .reviews-focus .pcard{min-height:0;padding:1.25rem}
  .prize-schedule__row{min-height:60px}
  .v2 .prize-hero{gap:1.75rem}
  .v2 .buying-questions .sec-head{margin-bottom:.25rem}
  .buying-questions__list{margin-top:1.75rem}
  .buying-questions__list summary{min-height:58px;padding-block:1rem}
}

/* Callout motion on mobile: idle float always; scroll-scrubbed entrance/exit
   where scroll-driven animations exist */
@media(max-width:819px) and (prefers-reduced-motion:no-preference){
  .intel__shot .intel__float{animation:card-idle 6.5s ease-in-out infinite}
  @supports (animation-timeline: view()){
    .intel__shot .intel__float{animation:float-through linear both;animation-timeline:view();animation-range:cover 5% cover 95%}
    .v2 .intel__panel:nth-of-type(even) .intel__shot .intel__float{animation-name:float-through-l}
  }
}
/* The card really travels: enters off the bezel, glides across the phone
   with the scroll, and leaves the opposite side */
@keyframes float-through{
  0%{opacity:0;transform:translateX(130px) translateY(10px)}
  25%{opacity:1;transform:translateX(0) translateY(0)}
  60%{opacity:1;transform:translateX(-26px) translateY(-8px)}
  100%{opacity:0;transform:translateX(-120px) translateY(-16px)}
}
@keyframes float-through-l{
  0%{opacity:0;transform:translateX(-130px) translateY(10px)}
  25%{opacity:1;transform:translateX(0) translateY(0)}
  60%{opacity:1;transform:translateX(26px) translateY(-8px)}
  100%{opacity:0;transform:translateX(120px) translateY(-16px)}
}

/* Wide desktop: the capsule fits its content — 7 links + CTA can't burst it */
@media(min-width:1100px){
  .v2 .header__inner{width:fit-content;max-width:calc(100% - 48px);gap:1.25rem}
}
/* The mosaic kicker joins the sentence-case blue kicker voice */
.v2 .tx__prize-kicker{letter-spacing:0;text-transform:none;color:#4A77FF;font-family:var(--font-heading);font-size:.8rem;font-weight:700}

/* Hero countdown: always one line */
.hero5__kicker{white-space:nowrap}
.hero5__kicker .countdown{display:inline-flex;gap:.3em;align-items:baseline;white-space:nowrap}
@media(max-width:360px){.hero5__kicker{font-size:.62rem}}

/* ══ Centre-stage featured plan: app-blue colorway — buying the app ══ */
.pricing-models--three .pricing-model--featured{border-width:3px;background:linear-gradient(160deg,#3D63E8,#4A77FF 55%,#3D63E8) padding-box,conic-gradient(from var(--gold-ring),#8a6a1c,#f7d774 22%,#b8860b 45%,#fff3c4 68%,#caa036 85%,#8a6a1c) border-box!important;box-shadow:0 26px 70px rgba(74,119,255,.35),0 10px 30px rgba(212,160,42,.25)}
.pricing-models--three .pricing-model--featured .pricing-model__flag{background:#fff;color:#2f55d4;box-shadow:0 6px 18px rgba(20,35,90,.28)}
.pricing-models--three .pricing-model--featured .pricing-model__label{color:#dfe9ff}
.pricing-models--three .pricing-model--featured h3{color:#fff}
.pricing-models--three .pricing-model--featured>div>p{color:rgba(255,255,255,.82)}
.pricing-models--three .pricing-model--featured .pricing-model__price strong{color:#fff}
.pricing-models--three .pricing-model--featured .pricing-model__price span{color:rgba(255,255,255,.7)}
.pricing-models--three .pricing-model--featured .pricing-model__compare{background:rgba(255,255,255,.16)}
.pricing-models--three .pricing-model--featured .pricing-model__compare b{color:#fff}
.pricing-models--three .pricing-model--featured .pricing-model__compare span{color:rgba(255,255,255,.85)!important}
.pricing-models--three .pricing-model--featured li{color:rgba(255,255,255,.92)}
.pricing-models--three .pricing-model--featured li::before{color:#fff}
.pricing-models--three .pricing-model--featured ul{border-top-color:rgba(255,255,255,.22)}
.pricing-model--featured .pricing-model__assure{color:rgba(255,255,255,.7)}
.pricing-models--three .pricing-model--featured .btn--primary{background:#fff;color:#2f55d4;box-shadow:0 10px 26px rgba(15,30,80,.3)}
.pricing-models--three .pricing-model--featured .btn--primary:hover{background:#eef3ff;color:#2f55d4}

/* Desktop: featured sits centre, pops upward, all three CTAs on one line */
@media(min-width:820px){
  .pricing-models--three{align-items:stretch}
  .pricing-models--three .pricing-model,.pricing-models--three .pricing-model--featured{min-height:0}
  .pricing-models--three .pricing-model--bronze{order:0}
  .pricing-models--three .pricing-model--featured{order:1;z-index:1;margin-top:-26px;padding-top:calc(1.35rem + 26px)}
  .pricing-models--three .pricing-model--silver{order:2}
  /* CTA is always the bottom element; assurance rides just above it */
  .pricing-models--three .pricing-model .pricing-model__assure{order:9;margin-top:auto;margin-bottom:.15rem}
  .pricing-models--three .pricing-model .btn{order:10;margin-top:.6rem}
  .pricing-models--three .pricing-model:not(:has(.pricing-model__assure)) .btn{margin-top:auto}
}

/* ══ Liquid Glass navigation ══ */
.v2 .header__inner{position:relative;background:rgba(255,255,255,.44);border:1px solid rgba(255,255,255,.62);backdrop-filter:blur(24px) saturate(1.9);-webkit-backdrop-filter:blur(24px) saturate(1.9);box-shadow:0 1px 0 rgba(255,255,255,.85) inset,0 -1px 0 rgba(255,255,255,.25) inset,0 12px 40px rgba(25,40,70,.12)}
.v2 .header__inner::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,rgba(255,255,255,.5),rgba(255,255,255,0) 38%,rgba(255,255,255,0) 62%,rgba(255,255,255,.28));pointer-events:none}
.v2 .header__inner>*:not(.nav){position:relative}
@media(max-width:819px){
  /* Premium mobile menu: glass panel, sprung entrance, staggered rows */
  .v2 .nav{border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.92);backdrop-filter:blur(28px) saturate(1.9);-webkit-backdrop-filter:blur(28px) saturate(1.9);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 30px 80px rgba(15,25,50,.3);border-radius:26px;padding:.75rem;gap:0}
  .v2 .header.menu-open .nav{animation:menu-pop .42s cubic-bezier(.19,1,.22,1)}
  .v2 .nav a{padding:1rem 1.05rem;border-radius:16px;font-size:1.05rem;font-weight:700;letter-spacing:-.01em}
  .v2 .nav a+a{border-top:1px solid rgba(23,24,27,.05)}
  .v2 .nav a:active{background:rgba(74,119,255,.1);color:#2f55d4}
  .v2 .header.menu-open .nav>*{animation:menu-item .5s cubic-bezier(.19,1,.22,1) both}
  .v2 .header.menu-open .nav>*:nth-child(1){animation-delay:.03s}
  .v2 .header.menu-open .nav>*:nth-child(2){animation-delay:.07s}
  .v2 .header.menu-open .nav>*:nth-child(3){animation-delay:.11s}
  .v2 .header.menu-open .nav>*:nth-child(4){animation-delay:.15s}
  .nav__get{border-top:1px solid rgba(23,24,27,.08);margin-top:.35rem;padding:1rem .95rem .5rem}
}
@keyframes menu-pop{from{opacity:0;transform:translateY(-10px) scale(.96)}to{opacity:1;transform:none}}
@keyframes menu-item{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.v2 .header.menu-open .nav,.v2 .header.menu-open .nav>*{animation:none}}
/* Mobile: first section clears the fixed header so breadcrumbs never hide */
@media(max-width:819px){
  .v2 main>section:first-of-type{padding-top:6.25rem!important}
}
/* Prize judging: air between the adherence checklist and the next heading */
.v2 .u-prose .feature__list{margin-bottom:2.5rem}

/* ══ Roadmap: what's shipping, shown not told ══ */
.road{display:grid;gap:14px;max-width:1080px;margin:0 auto}
.road__item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(2rem,4vw,3.5rem);align-items:center;padding:clamp(1.8rem,3.5vw,3rem);border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:0 18px 48px rgba(20,30,60,.06)}
.road__copy h2{margin:0 0 .8rem;font-size:clamp(1.6rem,2.4vw,2.1rem);letter-spacing:-.03em}
.road__copy p{margin:0 0 1rem;color:#565b66;line-height:1.6}
.road__copy ul{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}
.road__copy li{position:relative;padding-left:1.35rem;color:#4b5058;font-size:.9rem}
.road__copy li::before{content:"→";position:absolute;left:0;color:#4A77FF;font-weight:700}
/* Share-card mocks: the feature, demonstrated */
.sharecards{display:flex;gap:14px;justify-content:center;align-items:center}
.sharecard{flex:0 0 150px;aspect-ratio:9/14;display:flex;flex-direction:column;justify-content:space-between;padding:1rem .95rem;border-radius:18px;color:#fff;box-shadow:0 22px 55px rgba(15,25,60,.25);transform:rotate(-3deg)}
.sharecard:nth-child(2){transform:rotate(1.5deg) translateY(-10px);z-index:1}
.sharecard:nth-child(3){transform:rotate(4deg)}
.sharecard--blue{background:linear-gradient(165deg,#4A77FF,#2f55d4)}
.sharecard--dark{background:linear-gradient(165deg,#1b1e26,#0b0d12)}
.sharecard small{font-size:.55rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.75}
.sharecard b{font-family:var(--font-heading);font-size:2.3rem;line-height:.95;letter-spacing:-.04em}
.sharecard b span{display:block;font-size:.7rem;font-weight:650;letter-spacing:0;margin-top:.3rem;opacity:.85}
.sharecard em{font-style:normal;font-size:.62rem;line-height:1.35;opacity:.7}
/* Leaderboard + chat mocks */
.road__lb{max-width:280px;margin-inline:auto;padding:1.1rem;border-radius:20px;background:#101319;color:#fff;box-shadow:0 22px 55px rgba(15,25,60,.3)}
.road__lb b{display:block;margin-bottom:.7rem;font-size:.72rem;color:#8fa8ff}
.road__lb div{display:flex;gap:.6rem;align-items:baseline;padding:.45rem 0;border-top:1px solid rgba(255,255,255,.07);font-size:.82rem}
.road__lb i{font-style:normal;width:1.1rem;color:#6f7686}
.road__lb em{margin-left:auto;font-style:normal;color:#9db9ff;font-variant-numeric:tabular-nums}
.road__lb-you span{color:#fff;font-weight:700}
.road__chat{display:grid;gap:.6rem;max-width:300px;margin-inline:auto}
.road__bubble{padding:.75rem .95rem;border-radius:16px 16px 16px 4px;background:#f0f2f7;color:#2a2d35;font-size:.84rem;line-height:1.45;box-shadow:0 10px 26px rgba(20,30,60,.08)}
.road__bubble--you{border-radius:16px 16px 4px 16px;background:#4A77FF;color:#fff;justify-self:end}
@media(max-width:819px){
  .road__item{grid-template-columns:1fr;gap:1.5rem;padding:1.5rem 1.25rem}
  .sharecard{flex:0 0 118px}
  .sharecard b{font-size:1.8rem}
}
/* Footer roadmap strip */
.footer__roadmap{display:flex;gap:1.5rem;align-items:center;justify-content:space-between;margin-top:2.75rem;padding:1.15rem 1.35rem;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.75);font-size:.85rem;line-height:1.5;text-decoration:none;transition:border-color .25s ease,background .25s ease}
.footer__roadmap:hover{border-color:rgba(143,168,255,.5);background:rgba(255,255,255,.08)}
.footer__roadmap b{color:#fff}
.footer__roadmap i{flex:none;font-style:normal;font-family:var(--font-heading);font-weight:700;color:#8fa8ff;white-space:nowrap}
@media(max-width:600px){.footer__roadmap{flex-direction:column;align-items:flex-start;gap:.6rem}}

/* ══ Meal-plan lead magnet wizard ══ */
.mp{max-width:640px;margin:0 auto;padding:clamp(1.5rem,3vw,2.5rem);border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:0 18px 48px rgba(20,30,60,.07)}
.mp__hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.mp__dots{display:flex;gap:6px;justify-content:center;margin:0 0 1.75rem;padding:0;list-style:none}
.mp__dots li{width:26px;height:4px;border-radius:99px;background:#e7e8ec;transition:background .3s}
.mp__dots li.is-on{background:#4A77FF}
.mp__step{display:none;margin:0;padding:0;border:0}
.mp__step.is-on{display:block}
.mp__step legend{margin-bottom:1.1rem;font-family:var(--font-heading);font-size:1.35rem;font-weight:700;letter-spacing:-.02em}
.mp__hint{margin:-.6rem 0 1rem;color:#7b8089;font-size:.85rem}
.mp__sub{margin:1.4rem 0 .5rem;font-family:var(--font-heading);font-size:.8rem;font-weight:700;color:#3c414b}
.mp__sub span{color:#9aa0a8;font-weight:500}
.mp__choices{display:grid;gap:10px}
.mp__choices label{position:relative;display:block;padding:1rem 1.1rem;border:1.5px solid var(--border);border-radius:16px;cursor:pointer;transition:border-color .2s,background .2s}
.mp__choices label:has(input:checked){border-color:#4A77FF;background:#f2f5ff}
.mp__choices input,.mp__chips input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;pointer-events:none}
.mp__choices b{display:block;font-family:var(--font-heading);font-size:1rem}
.mp__choices span{color:#6b7078;font-size:.82rem}
.mp__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mp__grid label{display:block;font-size:.78rem;font-weight:700;color:#3c414b}
.mp__grid input,.mp__grid select{display:block;width:100%;margin-top:.35rem;padding:.7rem .8rem;border:1.5px solid var(--border);border-radius:12px;background:#fff;font:inherit;font-size:.95rem}
.mp__grid input:focus,.mp__grid select:focus{outline:2px solid #4A77FF;outline-offset:1px;border-color:#4A77FF}
.mp__grid-full{grid-column:1/-1}
.mp__phone-label{display:block;font-size:.78rem;font-weight:700;color:#3c414b}
.mp__phone-row{display:grid;grid-template-columns:minmax(150px,.55fr) minmax(0,1fr);gap:8px;margin-top:.35rem}
.mp__phone-row select,.mp__phone-row input{display:block;width:100%;padding:.7rem .8rem;border:1.5px solid var(--border);border-radius:12px;background:#fff;font:inherit;font-size:.95rem}
.mp__phone-row select:focus,.mp__phone-row input:focus{outline:2px solid #4A77FF;outline-offset:1px;border-color:#4A77FF}
.mp__phone-hint{display:block;margin-top:.35rem;color:#8a8e95;font-size:.72rem}
.mp__opt{color:#9aa0a8;font-weight:500}
.mp__chips{display:flex;flex-wrap:wrap;gap:8px}
.mp__chips label{position:relative;display:inline-flex;align-items:center;gap:.35rem;padding:.55rem .9rem;border:1.5px solid var(--border);border-radius:999px;font-size:.85rem;font-weight:600;cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.mp__chips label:has(input:checked){border-color:#4A77FF;background:#4A77FF;color:#fff}
.mp__consent{display:flex;gap:.6rem;align-items:flex-start;margin-top:1.1rem;font-size:.82rem;color:#565b66;cursor:pointer}
.mp__consent input{margin-top:.2rem;width:1.05rem;height:1.05rem;accent-color:#4A77FF;flex:none}
.mp__summary{margin-top:1.1rem;padding:.85rem 1rem;border-radius:12px;background:#f6f7f9;font-size:.82rem;color:#4b5058;line-height:1.55}
.mp__nav{display:flex;gap:10px;justify-content:space-between;margin-top:1.6rem}
.mp__nav [data-mp-next],.mp__nav [data-mp-submit]{margin-left:auto}
.mp__error{margin:.9rem 0 0;color:#c93a2e;font-size:.85rem;text-align:center}
.mp__loading,.mp__done{max-width:560px;margin:0 auto;text-align:center;padding:3rem 1rem}
.mp__loading h2,.mp__done h2{font-size:1.8rem;letter-spacing:-.03em;margin:.6rem 0}
.mp__loading p,.mp__done p{color:#565b66}
.mp__progress{height:6px;max-width:420px;margin:0 auto 1.6rem;border-radius:999px;background:#e7e8ec;overflow:hidden}
.mp__progress i{display:block;height:100%;width:0;border-radius:inherit;background:#4A77FF;transition:width .7s cubic-bezier(.2,.7,.2,1)}
.mp__stages{max-width:380px;margin:1.4rem auto 0;padding:0;list-style:none;display:grid;gap:.55rem;text-align:left}
.mp__stages li{position:relative;padding-left:1.9rem;color:#9aa0a8;font-size:.92rem;transition:color .3s}
.mp__stages li::before{content:"";position:absolute;left:0;top:.2rem;width:1.05rem;height:1.05rem;border-radius:999px;border:2px solid #d9dce3;background:#fff;transition:all .3s}
.mp__stages li.is-on{color:#14161b;font-weight:700}
.mp__stages li.is-on::before{border-color:#4A77FF;box-shadow:0 0 0 4px #e8eeff;animation:mp-pulse 1.2s ease-in-out infinite}
.mp__stages li.is-done{color:#3c414b}
.mp__stages li.is-done::before{border-color:#4A77FF;background:#4A77FF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center/70% no-repeat}
.mp__days{display:inline-flex;gap:4px;margin-left:.5rem;vertical-align:middle}
.mp__days b{padding:.15rem .4rem;border-radius:999px;background:#eef1f6;color:#9aa0a8;font-size:.62rem;font-weight:700;letter-spacing:.02em;transition:all .3s}
.mp__days b.is-lit{background:#4A77FF;color:#fff}
@keyframes mp-pulse{0%,100%{box-shadow:0 0 0 4px #e8eeff}50%{box-shadow:0 0 0 7px #dfe7ff}}
.mp__spinner{width:44px;height:44px;margin:0 auto;border-radius:50%;border:4px solid #e7e8ec;border-top-color:#4A77FF;animation:mp-spin 1s linear infinite}
@keyframes mp-spin{to{transform:rotate(360deg)}}
.mp__after{margin-top:1.5rem;font-size:.85rem}
@media(max-width:600px){.mp__grid{grid-template-columns:1fr}}
.mp [hidden],.mp__loading[hidden],.mp__done[hidden]{display:none!important}

/* ══ Progress deep-dive (member data pages) ══ */
.pg__tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:940px;margin:2.25rem auto}
.pg__tiles div{padding:1.2rem 1.3rem;border:1px solid var(--border);border-radius:18px;background:#fff}
.pg__tiles b{display:block;font-family:var(--font-heading);font-size:1.7rem;letter-spacing:-.03em;color:#14161b;font-variant-numeric:tabular-nums}
.pg__tiles span{color:#7b8089;font-size:.78rem}
.pg__chart{max-width:940px;margin:1rem auto;padding:1.4rem;border:1px solid var(--border);border-radius:20px;background:#fff}
.pg__chart figcaption{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;margin-bottom:1rem;flex-wrap:wrap}
.pg__chart figcaption b{font-family:var(--font-heading);font-size:1rem}
.pg__chart figcaption span{color:#8a8e95;font-size:.78rem}
.pg__chart svg{display:block;width:100%;height:auto}
.pg-ax{font:600 11px var(--font-body);fill:#9aa0a8}
.pg-lbl{font:700 12px var(--font-heading);fill:#14161b}
.pg-lbl--b{fill:#4A77FF}
.pg__cols{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:940px;margin:0 auto}
.pg__nutrition{max-width:940px;margin:1.5rem auto;padding:1.5rem;border:1px solid var(--border);border-radius:20px;background:#fff}
.pg__nutrition h3{margin:0 0 .2rem;font-size:1.05rem}
.pg__nutrition>p{margin:0 0 1.1rem;color:#7b8089;font-size:.82rem}
.pg__macro{display:grid;grid-template-columns:70px 1fr auto;gap:1rem;align-items:center;padding:.5rem 0}
.pg__macro span{font-size:.8rem;font-weight:700;color:#3c414b}
.pg__macro i{position:relative;display:block;height:8px;border-radius:99px;background:#eef1f6;overflow:hidden}
.pg__macro u{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:#4A77FF}
.pg__macro em{position:absolute;top:-3px;bottom:-3px;width:2px;background:#14161b;border-radius:2px}
.pg__macro b{font-size:.85rem;font-variant-numeric:tabular-nums}
.pg__macro small{color:#8a8e95;font-weight:500}
.pg__table-wrap{max-width:940px;margin:1.5rem auto 0}
.pg__table-wrap h3{margin:0 0 .8rem;font-size:1.05rem}
.pg__scroll{overflow-x:auto;border:1px solid var(--border);border-radius:16px;background:#fff}
.pg__table{width:100%;border-collapse:collapse;font-size:.83rem;font-variant-numeric:tabular-nums}
.pg__table th{padding:.7rem .9rem;text-align:left;font-family:var(--font-heading);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:#8a8e95;border-bottom:2px solid var(--border)}
.pg__table td{padding:.6rem .9rem;border-bottom:1px solid #f0f1f4;color:#3c414b}
.pg__table tr:last-child td{border-bottom:0}
.pg__table .is-ahead{color:#177a4c;font-weight:650}
.pg__method{max-width:760px;margin:1.75rem auto 0;color:#565b66;font-size:.92rem;line-height:1.65;text-align:center}
@media(max-width:819px){
  .pg__tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pg__tiles b{font-size:1.35rem}
  .pg__cols{grid-template-columns:1fr}
  .pg__macro{grid-template-columns:58px 1fr;gap:.6rem}
  .pg__macro b{grid-column:2}
}

/* Copy-sweep additions */
.trustbar__note{max-width:640px;margin:1.4rem auto 0;padding-inline:20px;text-align:center;color:#7b8089;font-size:.85rem}
.decision__keep{max-width:640px;margin:2.5rem auto 0;text-align:center;color:#565b66;font-size:.95rem;line-height:1.6}
.results__next{margin:1.75rem 0 .25rem;text-align:center;font-family:var(--font-heading);font-weight:700;color:#14161b}
.u-cap{text-transform:capitalize}
/* Journey pages: legend, phase cards, training strip, notes, accordions */
.pg__legend{display:flex;gap:.6rem 1.2rem;justify-content:center;flex-wrap:wrap;margin-top:.9rem;color:#6b7078;font-size:.75rem;font-weight:600}
.pg__legend span{white-space:nowrap;display:inline-flex;align-items:center}
.pg__legend i{display:inline-block;width:18px;height:4px;border-radius:99px;margin-right:.4rem;vertical-align:middle}
.pg__legend-gap{display:inline-block;width:18px;height:0;border-top:2px dashed #b9bec7;margin-right:.4rem;vertical-align:middle}
.pg__phases{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;max-width:940px;margin:1rem auto}
.pg__phase{padding:1rem;border:1px solid var(--border);border-top:3px solid #4A77FF;border-radius:16px;background:#fff}
.pg__phase--build{border-top-color:#D9A03C}
.pg__phase i{display:block;font-style:normal;font-size:.62rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#8a8e95}
.pg__phase b{display:block;margin:.4rem 0 .1rem;font-family:var(--font-heading);font-size:.95rem;letter-spacing:-.02em}
.pg__phase em{display:block;font-style:normal;font-weight:750;font-size:.85rem;color:#14161b}
.pg__phase--build em{color:#9a6a12}
.pg__phase span{display:block;margin-top:.5rem;color:#7b8089;font-size:.68rem;line-height:1.5}
.pg__train{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:.5rem}
.pg__train div{text-align:center;padding:.9rem;border-radius:14px;background:#f6f7f9}
.pg__train b{display:block;font-family:var(--font-heading);font-size:1.4rem;letter-spacing:-.03em}
.pg__train span{color:#7b8089;font-size:.72rem}
.pg__notes{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--border)}
.pg__notes h4{margin:0 0 .8rem;font-size:.9rem}
.pg__notes blockquote{margin:.5rem 0;padding:.8rem 1rem;border-left:3px solid #4A77FF;border-radius:0 12px 12px 0;background:#f6f8ff;font-size:.9rem;color:#2c3038}
.pg__notes blockquote span{display:block;margin-top:.25rem;color:#9aa0a8;font-size:.7rem}
.pg__notes-fine{margin:.8rem 0 0;color:#7b8089;font-size:.8rem}
.pg__acc{border:1px solid var(--border);border-radius:16px;background:#fff;margin-bottom:10px;overflow:hidden}
.pg__acc summary{padding:1rem 1.2rem;font-family:var(--font-heading);font-weight:700;font-size:.92rem;cursor:pointer}
.pg__acc .pg__scroll{border:0;border-top:1px solid var(--border);border-radius:0}
.pg__phases[data-n="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.pg__phases[data-n="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.pg__legend-est{display:inline-block;width:18px;height:0;border-top:2px dotted #4A77FF;margin-right:.4rem;vertical-align:middle}
.pg__acc-note{margin:0;padding:.8rem 1.2rem;border-top:1px solid var(--border);color:#7b8089;font-size:.75rem;line-height:1.5}
/* Story page: optional second photo (longer-term shot) */
.story__extra{max-width:560px;margin:0 auto;text-align:center}
.story__extra img{width:100%;height:auto;border-radius:24px;box-shadow:0 18px 48px rgba(20,30,60,.12)}
.story__extra figcaption{margin-top:.9rem}
.story__extra figcaption b{display:block;font-family:var(--font-heading);font-size:1.05rem;letter-spacing:-.02em}
.story__extra figcaption span{display:block;margin-top:.25rem;color:#7b8089;font-size:.82rem;line-height:1.5}
@media(max-width:819px){
  .pg__phases,.pg__phases[data-n]{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pg__phases[data-n="3"] .pg__phase:last-child{grid-column:1/-1}
  .pg__train{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Macro rows: per-macro hue dot; steps chart numeric labels */
.pg__dot{display:inline-block;width:8px;height:8px;border-radius:99px;margin-right:.45rem;vertical-align:baseline}
.pg-ax--num{font-weight:700;fill:#3c414b}
/* Macro stat cards — one hue per macro, tinted ground, count-up numbers */
.pg__macros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:1rem}
.pg__mcard{padding:1.1rem 1.2rem;border-radius:18px;background:color-mix(in srgb,var(--mc) 6%,#fff);border:1px solid color-mix(in srgb,var(--mc) 16%,#fff)}
@supports not (background:color-mix(in srgb,red 6%,#fff)){.pg__mcard{background:#f6f7f9;border:1px solid var(--border)}}
.pg__mcard i{display:flex;align-items:center;gap:.45rem;font-style:normal;font-size:.64rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#6b7078}
.pg__mcard i::before{content:"";width:8px;height:8px;border-radius:99px;background:var(--mc)}
.pg__mcard b{display:block;margin:.55rem 0 .7rem;font-family:var(--font-heading);font-size:clamp(1.5rem,2vw,1.9rem);line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.pg__mcard b em{display:block;margin:.4rem 0 0;font-style:normal;font-family:var(--font-body,inherit);font-size:.72rem;font-weight:600;letter-spacing:0;color:#8a8e95}
.pg__mbar{display:block;height:6px;border-radius:99px;background:color-mix(in srgb,var(--mc) 14%,#fff);overflow:hidden}
@supports not (background:color-mix(in srgb,red 6%,#fff)){.pg__mbar{background:#e7e8ec}}
.pg__mbar span{display:block;height:100%;border-radius:inherit;background:var(--mc)}
.pg__mcard small{display:block;margin-top:.55rem;color:#7b8089;font-size:.72rem}
@media(max-width:819px){.pg__macros{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ══ Free meal plan — lead magnet page (PROOF → VALUE → CONVERSION) ══ */
.mpx-hero{padding:clamp(6.5rem,9vw,9rem) 0 clamp(3rem,5vw,4.5rem);text-align:center;background:#fff}
.mpx-hero__kicker{display:inline-flex;align-items:center;gap:.5rem;margin:0 0 1.2rem;padding:.45rem .95rem;border-radius:999px;background:#f2f5ff;color:#3559d6;font-family:var(--font-heading);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.mpx-hero h1{max-width:14ch;margin:0 auto .9rem;font-size:clamp(2.7rem,5.4vw,4.4rem);line-height:1.02;letter-spacing:-.05em}
.mpx-hero__sub{max-width:44rem;margin:0 auto 1.6rem;color:#565b66;font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.55}
.mpx-hero__proof{display:flex;justify-content:center;align-items:center;gap:.5rem;margin:1.2rem 0 .3rem;color:#3c414b;font-size:.9rem;font-weight:600}
.mpx-hero__proof .stars{color:#f5a623;letter-spacing:.05em}
.mpx-hero__fine{margin:0;color:#8a8e95;font-size:.8rem}
.mpx-preview{padding:clamp(3rem,5vw,5rem) 0 clamp(5rem,7vw,8rem)}
.mpx-preview__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.mpx-preview h2{font-size:clamp(2rem,3.4vw,2.75rem);letter-spacing:-.04em;line-height:1.05;margin:.4rem 0 1.4rem}
.mpx-list{display:grid;gap:1rem;margin:0;padding:0;list-style:none}
.mpx-list li{position:relative;padding-left:1.8rem;color:#4b5058;font-size:.98rem;line-height:1.55}
.mpx-list li::before{content:"";position:absolute;left:0;top:.45rem;width:.9rem;height:.9rem;border-radius:999px;background:#4A77FF;box-shadow:0 0 0 4px #e8eeff}
.mpx-list b{color:#14161b}
.mpx-sample{border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:0 18px 48px rgba(20,30,60,.08);overflow:hidden}
.mpx-sample header{display:flex;justify-content:space-between;align-items:flex-end;padding:1.4rem 1.6rem;background:#4A77FF;color:#fff}
.mpx-sample header i{display:block;font-style:normal;font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.8}
.mpx-sample header b{font-family:var(--font-heading);font-size:1.8rem;letter-spacing:-.03em;text-transform:uppercase}
.mpx-sample__kcal{font-family:var(--font-heading);font-size:1.9rem;font-weight:700;letter-spacing:-.03em}
.mpx-sample__kcal small{display:block;font-size:.6rem;font-weight:700;letter-spacing:.12em;text-align:right;opacity:.8}
.mpx-sample__macros{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;border-bottom:1px solid var(--border)}
.mpx-sample__macros div{padding:.8rem;border-right:1px solid var(--border)}.mpx-sample__macros div:last-child{border-right:0}
.mpx-sample__macros b{display:block;font-family:var(--font-heading);font-size:1.15rem;letter-spacing:-.02em}
.mpx-sample__macros span{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#8a8e95}
.mpx-sample__meal{padding:1rem 1.6rem;border-bottom:1px solid #f0f1f4}
.mpx-sample__meal i{display:block;font-style:normal;font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#4A77FF}
.mpx-sample__meal b{display:block;margin:.15rem 0;font-family:var(--font-heading);font-size:1rem;letter-spacing:-.01em}
.mpx-sample__meal span{color:#6b7078;font-size:.78rem;font-weight:600}
.mpx-sample footer{padding:.9rem 1.6rem;color:#8a8e95;font-size:.72rem;background:#f6f7f9}
.mpx-build .sec-head{margin-bottom:2.5rem}
.mpx-build__grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.5rem;align-items:start;max-width:1000px;margin:0 auto}
.mpx-build__grid .mp{max-width:none;margin:0}
.mpx-side{position:sticky;top:6rem;padding:1.4rem;border:1px solid var(--border);border-radius:24px;background:#fff}
.mpx-side i{display:block;margin-bottom:.8rem;font-style:normal;font-family:var(--font-heading);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#8a8e95}
.mpx-side dl{margin:0;display:grid;gap:.1rem}
.mpx-side dl div{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid #f0f1f4;font-size:.85rem}
.mpx-side dt{color:#7b8089}.mpx-side dd{margin:0;font-weight:700;color:#14161b;text-align:right}
.mpx-side p{margin:1rem 0 0;color:#6b7078;font-size:.78rem;line-height:1.5}
.mpx-how{padding:clamp(4rem,6vw,6rem) 0}
.mpx-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.mpx-steps li{padding:1.6rem;border:1px solid var(--border);border-radius:24px;background:#fff}
.mpx-steps span{display:block;font-family:var(--font-heading);font-size:.72rem;font-weight:700;color:#4A77FF;letter-spacing:.08em}
.mpx-steps h3{margin:.5rem 0 .4rem;font-size:1.15rem;letter-spacing:-.02em}
.mpx-steps p{margin:0;color:#565b66;font-size:.9rem;line-height:1.55}
.strip--4{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media(max-width:819px){
  .mpx-preview__grid{grid-template-columns:1fr}
  .mpx-build__grid{grid-template-columns:1fr}
  .mpx-side{position:static}
  .mpx-steps{grid-template-columns:1fr}
  .strip--4{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ══ /plan/<id> — the member's private plan page ══ */
.plan-head .eyebrow{margin-bottom:.6rem}
.plan-head h1{font-size:clamp(2.2rem,4.6vw,3.6rem);letter-spacing:-.045em}
.plan-head__actions{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;margin-top:1.4rem}
.plan-head__note{color:#7b8089;font-size:.82rem;max-width:22rem}
.plan-targets{margin-top:0;grid-template-columns:repeat(4,minmax(0,1fr))}
.plan-targets div{background:#f6f7f9}
.plan-intro{max-width:640px;margin:1.5rem auto 0;text-align:center;color:#3c414b;font-size:1.05rem;line-height:1.55}
.plan-days{display:flex;gap:8px;overflow-x:auto;padding:.2rem .2rem .6rem;margin:2.5rem auto 1rem;max-width:940px;scrollbar-width:none}
.plan-days::-webkit-scrollbar{display:none}
.plan-days button{flex:1 0 auto;min-width:92px;padding:.7rem .9rem;border:1.5px solid var(--border);border-radius:999px;background:#fff;font:inherit;cursor:pointer;text-align:center;transition:border-color .2s,background .2s,color .2s}
.plan-days button b{display:block;font-family:var(--font-heading);font-size:.9rem}
.plan-days button span{font-size:.7rem;color:#8a8e95;font-weight:600}
.plan-days button[aria-selected="true"]{background:#14161b;border-color:#14161b;color:#fff}
.plan-days button[aria-selected="true"] span{color:rgba(255,255,255,.7)}
.plan-day{max-width:940px;margin:0 auto;border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:0 18px 48px rgba(20,30,60,.08);overflow:hidden}
.plan-day__head{display:flex;justify-content:space-between;align-items:flex-end;padding:1.6rem clamp(1.2rem,3vw,2.2rem);background:#4A77FF;color:#fff}
.plan-day__head small{display:block;font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.8}
.plan-day__head h2{margin:.1rem 0 0;font-size:clamp(1.7rem,3vw,2.4rem);letter-spacing:-.03em;text-transform:uppercase;color:#fff}
.plan-day__head b{font-family:var(--font-heading);font-size:clamp(1.7rem,3vw,2.3rem);letter-spacing:-.03em}
.plan-day__head b span{display:block;font-size:.6rem;font-weight:700;letter-spacing:.12em;opacity:.8;text-align:right}
.plan-day__macros{display:grid;grid-template-columns:repeat(4,1fr);text-align:center;border-bottom:1px solid var(--border)}
.plan-day__macros div{padding:.9rem;border-right:1px solid var(--border)}.plan-day__macros div:last-child{border-right:0}
.plan-day__macros b{display:block;font-family:var(--font-heading);font-size:1.25rem;letter-spacing:-.02em}
.plan-day__macros span{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#8a8e95}
.plan-meals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:clamp(1rem,2.5vw,1.6rem)}
.plan-meal{padding:1.3rem 1.4rem;border-radius:18px;background:#f6f8ff}
.plan-meal i{display:block;font-style:normal;font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#4A77FF}
.plan-meal h3{margin:.25rem 0 .2rem;font-size:1.1rem;letter-spacing:-.02em}
.plan-meal__n{margin:0 0 .6rem;color:#3559d6;font-size:.78rem;font-weight:700}
.plan-meal__l{margin:.8rem 0 .25rem;font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#8a8e95}
.plan-meal__ing{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.plan-meal__ing li{padding:.3rem .6rem;border-radius:999px;background:#fff;border:1px solid #e1e6f5;font-size:.76rem;color:#3c414b}
.plan-meal__m{margin:0;color:#3c414b;font-size:.88rem;line-height:1.55}
.plan-shop{max-width:940px;margin:3rem auto 0;padding:clamp(1.4rem,3vw,2.2rem);border:1px solid var(--border);border-radius:24px;background:#fff}
.plan-shop__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:end;margin-bottom:1.4rem}
.plan-shop__head h2{margin:.2rem 0 0;font-size:1.8rem;letter-spacing:-.03em}
.plan-shop__head p{margin:0;color:#6b7078;font-size:.88rem}
.plan-shop__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem 1.5rem}
.plan-shop__group h3{margin:0 0 .5rem;font-size:.9rem}
.plan-shop__group ul{margin:0;padding:0;list-style:none;display:grid;gap:.25rem}
.plan-shop__group label{display:flex;gap:.55rem;align-items:flex-start;font-size:.85rem;color:#3c414b;cursor:pointer}
.plan-shop__group input{margin-top:.2rem;accent-color:#4A77FF;flex:none}
.plan-shop__group input:checked+span{color:#9aa0a8;text-decoration:line-through}
.plan-missing{max-width:560px;margin:0 auto;padding:3rem 1rem;text-align:center}
.plan-missing h2{font-size:1.9rem;letter-spacing:-.03em}.plan-missing p{color:#565b66}
.plan-upsell{padding:clamp(4rem,6vw,6rem) 0 0}
.plan-upsell__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,4vw,4rem);align-items:center}
.plan-upsell h2{font-size:clamp(1.9rem,3.2vw,2.6rem);letter-spacing:-.04em;line-height:1.05;margin:.4rem 0 1rem}
.plan-upsell p{color:#565b66;line-height:1.55}
@media(max-width:819px){
  .plan-meals{grid-template-columns:1fr}
  .plan-shop__head{grid-template-columns:1fr}
  .plan-shop__grid{grid-template-columns:1fr}
  .plan-upsell__grid{grid-template-columns:1fr}
  .plan-day__macros b{font-size:1.05rem}
  .plan-targets{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* ============================================================
   /live — free live-session registration (lead page)
   Reuses the meal-plan wizard shell (.mp) and the /prize table.
   ============================================================ */
.v2 .live-hero{padding-top:clamp(6.75rem,10vw,8.5rem);padding-bottom:clamp(3rem,6vw,5rem)}
.live-hero__grid{display:grid;gap:clamp(2rem,5vw,4rem);align-items:center}
@media(min-width:900px){.live-hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.85fr)}}
.live-hero h1{margin:0;max-width:14ch;font-size:clamp(2.5rem,5.4vw,4.4rem);font-weight:600;line-height:1;letter-spacing:-.05em}
.live-hero h1 mark{background:#4A77FF;color:#fff;padding:.02em .18em;border-radius:12px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.live-hero .lede{margin-top:1.2rem;max-width:46ch}
.live-hero .cta-row{margin-top:1.75rem;gap:1.25rem}
.live-hero__meta{margin:0;font-size:.86rem;color:#7b8089}
.live-hero__meta b{color:#1f2025;font-family:var(--font-heading)}

.live-card{border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:0 18px 48px rgba(20,30,60,.08);overflow:hidden}
.live-card__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 1.4rem;background:#4A77FF;color:#fff}
.live-card__head h2{margin:0;font-size:1.05rem;color:#fff;letter-spacing:-.02em}
.live-card__head p{margin:.2rem 0 0;font-size:.8rem;color:rgba(255,255,255,.85)}
.live-card__tag{flex:none;padding:.32rem .7rem;border-radius:999px;background:rgba(255,255,255,.2);font-family:var(--font-heading);font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.live-card__rows{padding:.3rem 0}
.live-card__row{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 1.4rem;border-bottom:1px solid var(--border);font-size:.9rem;color:#6d7178}
.live-card__row:last-child{border-bottom:0}
.live-card__row b{color:#1f2025;font-family:var(--font-heading);font-variant-numeric:tabular-nums}
.live-card__count{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.4rem;background:#f3f6fb;border-top:1px solid var(--border)}
.live-card__count span{font-family:var(--font-heading);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6d7178}
.live-card__count b{font-family:var(--font-heading);font-size:1.35rem;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:#4A77FF}
.live-card__count[data-elapsed] b{color:#1b7b4c}
.live-card__foot{margin:0;padding:.85rem 1.4rem;text-align:center;font-size:.76rem;color:#8b8c8f}

.v2 main>.live-stats{padding-block:0 clamp(1rem,2vw,1.5rem)}
.live-stats__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;border:1px solid var(--border);border-radius:24px;overflow:hidden;background:var(--border)}
@media(min-width:820px){.live-stats__grid{grid-template-columns:repeat(4,1fr)}}
.live-stats__grid>div{padding:1.5rem 1.1rem;background:#fff;text-align:center}
.live-stats__grid b{display:block;font-family:var(--font-heading);font-weight:600;font-size:clamp(1.7rem,3.4vw,2.4rem);letter-spacing:-.04em;line-height:1;color:#1f2025}
.live-stats__grid span{display:block;margin:.55rem auto 0;max-width:20ch;font-size:.78rem;line-height:1.4;color:#6d7178}

.live-prize__fig{display:block;margin:.4rem 0 1rem;font-family:var(--font-heading);font-weight:600;font-size:clamp(3.6rem,10vw,6.5rem);line-height:.95;letter-spacing:-.06em;color:#17181b}
.live-prize .prize-hero__fine a{color:inherit;font-weight:700}

@media(min-width:820px){.live-steps{grid-template-columns:repeat(3,1fr)}}
.live-steps .step{text-align:left}
.live-steps .step h3{margin:0 0 .5rem;font-size:1.1rem;letter-spacing:-.02em}
.live-steps .step p{margin:0;color:#4b4d55;line-height:1.55;font-size:.95rem}

.live-features{display:grid;gap:0 2.5rem;margin:0;padding:0;list-style:none}
@media(min-width:820px){.live-features{grid-template-columns:repeat(2,1fr)}}
.live-features li{display:flex;gap:.9rem;align-items:flex-start;padding:1.1rem 0;border-bottom:1px solid var(--border)}
.live-features li::before{content:"";flex:none;margin-top:.1rem;width:1.4rem;height:1.4rem;border-radius:50%;background:#4A77FF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M3.5 8.5l3 3 6-7' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/68% no-repeat}
.live-features h3{margin:0;font-size:1rem;letter-spacing:-.01em}
.live-features p{margin:.3rem 0 0;font-size:.9rem;line-height:1.5;color:#6d7178}

.v2 main>.live-band{margin:12px;border-radius:30px;background:#050d1d;color:#fff;text-align:center}
.live-band .eyebrow{color:#8faaff;justify-content:center}
.live-band h2{margin:0 auto;max-width:20ch;font-size:clamp(2.4rem,5.4vw,4.4rem);font-weight:600;line-height:.98;letter-spacing:-.05em;color:#fff}
.live-band h2 span{display:block;color:rgba(255,255,255,.55)}
.live-band p{max-width:52ch;margin:1.25rem auto 0;color:rgba(255,255,255,.72);line-height:1.55}
.live-band .cta-row{justify-content:center;margin-top:2rem}

.live-reg{scroll-margin-top:4.5rem}
.live-reg .mp{position:relative}
.live-reg .mp__nav [data-live-next],.live-reg .mp__nav [data-live-submit]{margin-left:auto}
.live-reg__head{text-align:center;margin-bottom:1.5rem}
.live-reg__head h2{margin:0;font-size:clamp(1.6rem,3vw,2rem);letter-spacing:-.03em}
.live-reg__head p{margin:.5rem auto 0;max-width:40ch;color:#6d7178;font-size:.92rem;line-height:1.5}
.live-reg__kicker{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:.9rem;padding:.38rem .85rem;border-radius:999px;background:#eef2ff;color:#3765F5;font-family:var(--font-heading);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.live-reg .mp__choices label{padding:.95rem 1.1rem}
.live-reg .mp__choices b{font-weight:600}
.live-reg .wl__fine{margin:1.1rem 0 0;font-size:.74rem;color:#8b8c8f;line-height:1.45}
.live-reg .mp[hidden],.live-done[hidden]{display:none!important}
.live-done{text-align:center}
.live-done h2{margin:0;font-size:1.8rem;letter-spacing:-.03em}
.live-done p{margin:.6rem auto 0;max-width:40ch;color:#565b66;line-height:1.5}
.live-done__icon{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 1rem;border-radius:50%;background:#e8f0ff;color:#4A77FF}
.live-done__detail{margin:1.4rem auto 0;max-width:440px;padding:.9rem 1.1rem;border:1px dashed var(--border-strong);border-radius:12px;background:#f6f7f9;font-size:.82rem;line-height:1.5;color:#4b5058}
.live-done .cta-row{justify-content:center;margin-top:1.4rem}
.live-done__again{display:block;margin:1.2rem auto 0;padding:0;background:none;border:0;color:#8b8c8f;font:inherit;font-size:.8rem;text-decoration:underline;cursor:pointer}
@media(max-width:819px){
  .live-hero .cta-row{flex-direction:column;align-items:stretch;gap:.9rem}
  .live-hero .cta-row .btn{width:100%;justify-content:center}
  .live-hero__meta{text-align:center}
  .live-done .cta-row{flex-direction:column;align-items:stretch}
}

/* Footer banner for the live session — same shell as the roadmap link */
.footer__live{background:#4A77FF;color:#fff;border-color:#4A77FF}
.footer__live b,.footer__live i{color:#fff}
.footer__live:hover{background:#3765F5}
.footer__live+.footer__roadmap{margin-top:.75rem}

/* ---- legal pages (/legal/*): long-form policy text ---- */
.legal{max-width:var(--maxw-prose);margin-inline:auto;padding-bottom:clamp(2rem,4vw,3.5rem)}
.legal h2{margin:2.25rem 0 .75rem;font-size:clamp(1.2rem,1.7vw,1.45rem);letter-spacing:-.02em;scroll-margin-top:6rem}
.legal h2:first-child{margin-top:0}
.legal p,.legal li{color:var(--fg-body);line-height:1.65}
.legal p{margin:0 0 1rem}
.legal ul,.legal ol{margin:0 0 1rem;padding-left:1.35rem}
.legal li{margin:.35rem 0}
.legal a{color:var(--accent);text-decoration:underline;text-underline-offset:.15em}
.legal a:hover{color:var(--accent-hover)}
/* ══ Waitlist pop-up ══ */
.wlp{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:1rem}
.wlp[hidden],.wlp [hidden]{display:none!important}
.wlp__backdrop{position:absolute;inset:0;background:rgba(5,13,29,.62);backdrop-filter:blur(3px)}
.wlp__card{position:relative;width:min(560px,100%);max-height:calc(100vh - 2rem);overflow:auto;padding:clamp(1.4rem,3vw,2.2rem);border-radius:24px;background:#fff;box-shadow:0 28px 70px rgba(9,16,34,.25);animation:wlp-in .32s cubic-bezier(.2,.7,.2,1)}
@keyframes wlp-in{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.wlp__x{position:absolute;top:.9rem;right:.9rem;width:2.2rem;height:2.2rem;border:0;border-radius:999px;background:#f2f3f5;color:#14161b;font-size:1.4rem;line-height:1;cursor:pointer}
.wlp__x:hover{background:#e7e8ec}
.wlp__card h3{margin:.3rem 0 .4rem;font-size:clamp(1.6rem,3vw,2.1rem);letter-spacing:-.04em}
.wlp__sub{margin:0 0 1.2rem;color:#565b66;font-size:.95rem;line-height:1.5}
.wlp__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.wlp__grid label,.wlp__label{display:block;font-size:.76rem;font-weight:700;color:#3c414b}
.wlp__grid input,.wlp__grid select{display:block;width:100%;margin-top:.3rem;padding:.7rem .8rem;border:1.5px solid var(--border);border-radius:12px;background:#fff;font:inherit;font-size:.95rem}
.wlp__grid input:focus,.wlp__grid select:focus{outline:2px solid #4A77FF;outline-offset:1px;border-color:#4A77FF}
.wlp__full{grid-column:1/-1}
.wlp__grid .mp__phone-row{margin-top:.3rem}
.wlp .mp__consent{margin-top:1rem}
.wlp__go{width:100%;margin-top:1.1rem}
.wlp__fine{margin:.8rem 0 0;text-align:center;color:#8a8e95;font-size:.72rem}
.wlp__done{padding:1.2rem;border-radius:16px;background:#f2f5ff;text-align:center}
.wlp__done b{display:block;font-family:var(--font-heading);font-size:1.2rem;letter-spacing:-.02em}
.wlp__done span{display:block;margin-top:.3rem;color:#565b66;font-size:.9rem}
.wlp-open{overflow:hidden}
@media(max-width:600px){.wlp{padding:.6rem;align-items:end}.wlp__grid{grid-template-columns:1fr}.wlp__card{max-height:calc(100vh - 1.2rem)}}

/* Waitlist entry points: hero link and the floating pill */
.hero5__wl{margin:.8rem 0 0;font-size:.85rem}
.hero5__wl a{color:#3559d6;font-weight:700;text-decoration:none;border-bottom:1.5px solid #c9d5ff}
.hero5__wl a:hover{border-bottom-color:#3559d6}
.wl-fab{position:fixed;right:18px;bottom:18px;z-index:150;display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 1.15rem;border:1px solid rgba(23,24,27,.08);border-radius:999px;background:#14161b;color:#fff;font:700 .82rem var(--font-heading);letter-spacing:.01em;cursor:pointer;box-shadow:0 18px 48px rgba(10,16,30,.28);transition:transform .2s,box-shadow .2s}
.wl-fab:hover{transform:translateY(-2px);box-shadow:0 22px 54px rgba(10,16,30,.34)}
.wl-fab__dot{width:8px;height:8px;border-radius:999px;background:#4A77FF;box-shadow:0 0 0 4px rgba(74,119,255,.25)}
body[data-no-popup] .wl-fab,.wlp-open .wl-fab{display:none}
@media(max-width:819px){.wl-fab{right:10px;bottom:82px;padding:.65rem .95rem;font-size:.76rem}}

.wlp__klaviyo{margin:.2rem 0 0}
.wlp__klaviyo[hidden]{display:none!important}

/* ══ Insights — index, categories, articles ══ */
.ins__chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:0 0 2rem}
.ins__chips a{padding:.55rem .95rem;border:1.5px solid var(--border);border-radius:999px;background:#fff;color:#3c414b;font-size:.85rem;font-weight:600;text-decoration:none}
.ins__chips a:hover{border-color:#14161b;color:#14161b}
.ins__chips a[aria-current="page"]{background:#14161b;border-color:#14161b;color:#fff}
.ins__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ins-card{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 18px 48px rgba(20,30,60,.06);transition:transform .25s,box-shadow .25s}
.ins-card:hover{transform:translateY(-3px);box-shadow:0 24px 56px rgba(20,30,60,.1)}
.ins-card a{color:inherit;text-decoration:none;display:flex;flex-direction:column;height:100%}
.ins-card__img{aspect-ratio:16/10;background:linear-gradient(135deg,#e8eeff,#f6f7f9);overflow:hidden}
.ins-card__img img{width:100%;height:100%;object-fit:cover;display:block}
.ins-card__body{display:flex;flex-direction:column;gap:.5rem;padding:1.2rem 1.3rem 1.3rem;flex:1}
.ins-card__cat{font-family:var(--font-heading);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#3559d6}
.ins-card h3{margin:0;font-size:1.15rem;letter-spacing:-.02em;line-height:1.25}
.ins-card p{margin:0;color:#565b66;font-size:.9rem;line-height:1.5}
.ins-card__who{display:flex;align-items:center;gap:.55rem;margin-top:auto;padding-top:.8rem;color:#7b8089;font-size:.76rem}
.ins-card__who img{width:26px;height:26px;border-radius:999px;object-fit:cover}
.ins__empty{max-width:560px;margin:2rem auto;padding:2rem;border:1px dashed var(--border);border-radius:24px;text-align:center;color:#565b66}
.ins-post__head h1{max-width:20ch;font-size:clamp(2.1rem,4.6vw,3.4rem);letter-spacing:-.045em;line-height:1.04}
.ins-post__stand{max-width:44rem;margin:.6rem 0 0;color:#565b66;font-size:1.1rem;line-height:1.55}
.ins-post__byline{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem;margin-top:1.4rem}
.ins-post__author{display:flex;align-items:center;gap:.65rem}
.ins-post__author img{width:44px;height:44px;border-radius:999px;object-fit:cover}
.ins-post__author b{display:block;font-family:var(--font-heading);font-size:.95rem}
.ins-post__author span{display:block;color:#7b8089;font-size:.78rem;max-width:34rem}
.ins-post__meta{color:#7b8089;font-size:.82rem}
.ins-post__reviewed{margin:.6rem 0 0;color:#7b8089;font-size:.8rem}
.ins-post__reviewed b{color:#3c414b}
.ins-post__cover{margin:0 auto 2.5rem;max-width:1040px;padding:0 24px}
.ins-post__cover img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:24px;box-shadow:0 18px 48px rgba(20,30,60,.12)}
.article{max-width:720px;margin:0 auto;font-size:1.08rem;line-height:1.7;color:#2c3038}
.article>*:first-child{margin-top:0}
.article h2{margin:2.4rem 0 .8rem;font-size:1.7rem;letter-spacing:-.03em;line-height:1.15}
.article h3{margin:1.8rem 0 .6rem;font-size:1.25rem;letter-spacing:-.02em}
.article p{margin:0 0 1.2rem}
.article a{color:#3559d6;text-decoration:underline;text-underline-offset:2px}
.article ul,.article ol{margin:0 0 1.2rem;padding-left:1.4rem}
.article li{margin:.35rem 0}
.article blockquote{margin:1.6rem 0;padding:1rem 1.4rem;border-left:3px solid #4A77FF;border-radius:0 18px 18px 0;background:#f2f5ff;font-family:var(--font-heading);font-size:1.15rem;line-height:1.45;color:#1d2027}
.article blockquote p{margin:0}
.article img{max-width:100%;height:auto;border-radius:18px;margin:1.6rem 0}
.article table{width:100%;border-collapse:collapse;margin:1.4rem 0;font-size:.95rem}
.article th,.article td{padding:.65rem .8rem;border-bottom:1px solid var(--border);text-align:left}
.article th{font-family:var(--font-heading);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#8a8e95}
.article code{padding:.1rem .35rem;border-radius:6px;background:#f2f3f5;font-size:.9em}
.article pre{overflow:auto;padding:1rem 1.2rem;border-radius:16px;background:#14161b;color:#fff}
.article pre code{background:none;padding:0;color:inherit}
.article hr{border:0;border-top:1px solid var(--border);margin:2rem 0}
.article input[type=checkbox]{margin-right:.4rem}
.ins-post__fine{max-width:720px;margin:2.5rem auto 0}
@media(max-width:819px){.ins__grid{grid-template-columns:1fr}.ins-post__cover{padding:0 12px}.article{font-size:1.02rem}}
@media(min-width:820px) and (max-width:1100px){.ins__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Article pages: one column for everything — header text, cover and body
   share the same 900px measure; the header starts below the floating nav. */
.ins-post .wrap{max-width:948px}
.ins-post__head{padding-top:clamp(6.5rem,9vw,8.5rem)}
.ins-post__head .crumbs{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ins-post__head h1{max-width:none;font-size:clamp(2.1rem,4.2vw,3.2rem)}
.ins-post__stand{max-width:none}
.ins-post__cover{max-width:948px;padding:0 24px}
.article,.ins-post__fine{max-width:none}
.article{font-size:1.06rem}
@media(max-width:819px){.ins-post__head{padding-top:5.5rem}}

/* ══ Roadmap suggestions form ══ */
.fb__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,4rem);align-items:start}
.fb__grid h2{font-size:clamp(2rem,3.4vw,2.75rem);letter-spacing:-.04em;line-height:1.05;margin:.4rem 0 1rem}
.fb__lede{color:#565b66;font-size:1.02rem;line-height:1.55;margin:0 0 1.4rem}
.fb.mp{max-width:none;margin:0}
.fb__fields{margin-top:1rem}
.fb__fields textarea{display:block;width:100%;margin-top:.35rem;padding:.7rem .8rem;border:1.5px solid var(--border);border-radius:12px;background:#fff;font:inherit;font-size:.95rem;resize:vertical;min-height:7rem}
.fb__fields textarea:focus{outline:2px solid #4A77FF;outline-offset:1px;border-color:#4A77FF}
.fb__go{width:100%;margin-top:1.1rem}
.fb__fine{margin:.8rem 0 0;text-align:center;color:#8a8e95;font-size:.72rem}
.fb [hidden]{display:none!important}
@media(max-width:819px){.fb__grid{grid-template-columns:1fr}}
