/* ═══════════════════════════════════════════════════════════════
   LANDING v3 (23 sept 2026) — pagina publică, pentru nelogați.
   Stilul videoclipurilor: contur negru, culori plate, desenele din
   canal. Interfața folosește DOAR culorile ghepardului (blană teal,
   piept mint, pete navy, șnur lime); portocaliul/cărămiziul rămân
   numai în desene și în „peretele sălii" de la final.
   TOTUL e sub `.lp` și cu prefix `lp-`, ca să nu atingă app-ul logat
   (#app), care își păstrează tema întunecată din styles.css.
   Funnel: „Become a member" = cont GRATUIT (joinFree); prețul apare
   doar în secțiunea PRO.
   ═══════════════════════════════════════════════════════════════ */
.lp{
  --lp-cream:#FFF3E2; --lp-paper:#FFFBF5; --lp-ink:#15181A; --lp-ink-2:#434A4E; --lp-ink-3:#646B6F;
  --lp-orange:#F3A23C; --lp-brick:#C6452C; --lp-charcoal:#221D1E;
  --lp-teal:#45C1B5; --lp-teal-hi:#5CCFC3; --lp-teal-2:#1E7F75; --lp-mint:#D6F7E8; --lp-mint-2:#A6F2CE;
  --lp-navy:#294563; --lp-navy-2:#1F3650; --lp-navy-3:#35577C; --lp-lime:#C5F84E; --lp-yt:#FF0033;
  --lp-b:3px; --lp-r:22px;
  --lp-sh-s:4px 4px 0 var(--lp-ink); --lp-sh:7px 7px 0 var(--lp-ink); --lp-sh-l:10px 10px 0 var(--lp-ink);
  --lp-display:'Bricolage Grotesque','Arial Black',system-ui,sans-serif;
  --lp-body:'Geist',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  background:var(--lp-cream); color:var(--lp-ink); font-family:var(--lp-body); font-size:17px; line-height:1.55;
  min-height:100vh; overflow-x:hidden; -webkit-font-smoothing:antialiased;
}
body:has(#landing.lp:not(.hidden)){ background:#FFF3E2; }
.lp img{ max-width:100%; height:auto; display:block; }
.lp a{ color:inherit; }
.lp h1,.lp h2,.lp h3{ color:inherit; }
.lp :focus-visible{ outline:3px dashed var(--lp-ink); outline-offset:3px; border-radius:6px; }
.lp .lp-wrap{ width:min(1180px,100% - 32px); margin-inline:auto; }
.lp .lp-ico{ width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }

/* ── butoane ── */
.lp .lp-btn{ display:inline-flex; align-items:center; justify-content:center; gap:10px; font:700 17px/1 var(--lp-body); text-decoration:none;
  padding:17px 24px; border:var(--lp-b) solid var(--lp-ink); border-radius:14px; box-shadow:var(--lp-sh-s); cursor:pointer;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease; white-space:nowrap; -webkit-appearance:none; appearance:none; }
.lp .lp-btn:hover{ transform:translate(-2px,-2px); box-shadow:6px 6px 0 var(--lp-ink); }
.lp .lp-btn:active{ transform:translate(2px,2px); box-shadow:2px 2px 0 var(--lp-ink); }
.lp .lp-btn-main{ background:var(--lp-teal); color:var(--lp-ink); }
.lp .lp-btn-main:hover{ background:var(--lp-teal-hi); }
.lp .lp-btn-paper{ background:var(--lp-paper); color:var(--lp-ink); }
.lp .lp-btn-sm{ padding:11px 14px; font-size:15px; border-radius:12px; box-shadow:3px 3px 0 var(--lp-ink); }
.lp .lp-free{ font:800 11px/1 var(--lp-body); letter-spacing:.07em; background:var(--lp-lime); color:var(--lp-ink); border:2px solid var(--lp-ink); border-radius:6px; padding:3px 5px; }
.lp .lp-store{ display:inline-flex; align-items:center; gap:10px; background:var(--lp-ink); color:#fff; text-decoration:none; border:2px solid var(--lp-ink);
  border-radius:12px; padding:8px 16px 8px 12px; transition:transform .12s ease; }
.lp .lp-store:hover{ transform:translateY(-2px); }
.lp .lp-store svg{ width:24px; height:24px; flex:none; fill:currentColor; }
.lp .lp-store small{ display:block; font-size:10.5px; line-height:1.15; opacity:.8; }
.lp .lp-store b{ display:block; font:700 17px/1.15 var(--lp-body); }
.lp .lp-stores{ display:flex; flex-wrap:wrap; gap:12px; }

/* ── bara de sus ── */
.lp .lp-nav{ position:sticky; top:0; z-index:100; background:var(--lp-cream); border-bottom:var(--lp-b) solid var(--lp-ink); }
.lp .lp-nav-in{ display:flex; align-items:center; gap:14px; height:68px; }
.lp .lp-brand{ display:flex; align-items:center; gap:10px; font:800 21px/1 var(--lp-display); letter-spacing:-.01em; text-decoration:none; }
.lp .lp-brand img{ width:36px; height:36px; border-radius:10px; border:2px solid var(--lp-ink); background:#fff; }
.lp .lp-nav-links{ display:flex; gap:2px; margin-left:22px; }
.lp .lp-nav-links a{ font-weight:600; font-size:15px; text-decoration:none; padding:8px 12px; border-radius:10px; }
.lp .lp-nav-links a:hover{ background:rgba(21,24,26,.07); }
.lp .lp-nav-cta{ margin-left:auto; display:flex; align-items:center; gap:8px; }
.lp .lp-login{ font:600 15px/1 var(--lp-body); color:var(--lp-ink); background:none; border:0; cursor:pointer; padding:10px; border-radius:10px; white-space:nowrap; }
.lp .lp-login:hover{ background:rgba(21,24,26,.07); }

/* ── hero ── */
.lp .lp-hero{ position:relative; overflow:hidden; padding:56px 0 96px; }
.lp .lp-hero-grid{ display:grid; grid-template-columns:1fr 1.06fr; gap:56px; align-items:center; }
.lp .lp-hero-copy{ position:relative; z-index:2; }
.lp .lp-chip{ display:inline-flex; align-items:center; gap:9px; font:700 14px/1 var(--lp-body); padding:7px 13px 7px 7px; background:var(--lp-paper);
  border:2px solid var(--lp-ink); border-radius:999px; box-shadow:3px 3px 0 var(--lp-ink); text-decoration:none; }
.lp .lp-yt{ width:28px; height:20px; background:var(--lp-yt); border-radius:6px; display:grid; place-items:center; color:#fff; flex:none; }
.lp .lp-yt svg{ width:12px; height:12px; fill:#fff; }
.lp .lp-h1{ font:800 clamp(48px,6.7vw,92px)/.93 var(--lp-display); letter-spacing:-.028em; margin:24px 0 24px; }
.lp .lp-mark{ display:inline-block; background:var(--lp-mint-2); border:var(--lp-b) solid var(--lp-ink); border-radius:16px; padding:0 .14em .05em;
  transform:rotate(-2deg); box-shadow:var(--lp-sh-s); margin-bottom:.06em; }
.lp .lp-lede{ font-size:clamp(17px,1.55vw,20px); color:var(--lp-ink-2); max-width:31em; }
.lp .lp-cta-row{ display:flex; flex-wrap:wrap; align-items:center; gap:14px 20px; margin-top:32px; }
.lp .lp-micro{ font-size:14px; color:var(--lp-ink-3); display:flex; align-items:center; gap:7px; }
.lp .lp-micro svg{ width:16px; height:16px; color:var(--lp-teal-2); stroke-width:3; }
.lp .lp-hero .lp-stores{ margin-top:22px; }
.lp .lp-hero-art{ position:relative; padding:12px 18px 64px 44px; }
.lp .lp-burst{ position:absolute; z-index:0; width:128%; aspect-ratio:1; left:-8%; top:50%; transform:translateY(-54%); border-radius:50%;
  background:repeating-conic-gradient(from 4deg, var(--lp-mint-2) 0deg 8deg, transparent 8deg 16deg); opacity:.5; }
.lp .lp-scene{ position:relative; z-index:1; border:var(--lp-b) solid var(--lp-ink); border-radius:28px; overflow:hidden; box-shadow:var(--lp-sh-l);
  transform:rotate(1.6deg); background:var(--lp-orange); }
.lp .lp-scene img{ width:100%; aspect-ratio:5/4; object-fit:cover; }
.lp .lp-phone.lp-hero-phone{ position:absolute; z-index:2; left:0; bottom:0; width:clamp(112px,13vw,172px); transform:rotate(-7deg); }
.lp .lp-float{ position:absolute; z-index:3; right:0; top:30px; background:var(--lp-paper); border:var(--lp-b) solid var(--lp-ink); border-radius:16px;
  box-shadow:var(--lp-sh-s); padding:12px 15px 13px; transform:rotate(3deg); min-width:196px; }
.lp .lp-float .k{ font:700 11px/1 var(--lp-body); letter-spacing:.09em; text-transform:uppercase; color:var(--lp-ink-3); }
.lp .lp-float .v{ font:800 20px/1.1 var(--lp-display); margin:5px 0 9px; }
.lp .lp-float .beat{ display:flex; align-items:center; gap:7px; font-weight:800; font-size:14px; color:var(--lp-teal-2); }
.lp .lp-float .beat svg{ width:17px; height:17px; stroke-width:2.8; }

/* ── telefoane cu ecrane reale din app ── */
.lp .lp-phone{ position:relative; aspect-ratio:520/1127; background:#0B0B0C; border:var(--lp-b) solid var(--lp-ink); border-radius:34px; padding:7px; box-shadow:var(--lp-sh); }
.lp .lp-phone img{ width:100%; height:100%; object-fit:cover; object-position:top; border-radius:26px; }

/* ── videoclipul recomandat (editabil din admin: fvOpen) ── */
.lp .lp-video{ position:relative; z-index:5; margin-top:-46px; }
.lp .lp-vcard{ position:relative; display:grid; grid-template-columns:300px 1fr; gap:28px; align-items:center; background:var(--lp-paper); border:var(--lp-b) solid var(--lp-ink);
  border-radius:var(--lp-r); box-shadow:var(--lp-sh); padding:16px 26px 16px 16px; }
.lp .lp-vthumb{ position:relative; display:block; aspect-ratio:16/9; border:2px solid var(--lp-ink); border-radius:14px; overflow:hidden; background:#000; }
.lp .lp-vthumb img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.lp .lp-vthumb .lp-yt{ position:absolute; left:50%; top:50%; width:58px; height:40px; border-radius:12px; border:2px solid var(--lp-ink); transform:translate(-50%,-50%); }
.lp .lp-vthumb .lp-yt svg{ width:20px; height:20px; }
.lp .lp-vthumb.playing iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.lp .lp-kicker{ font:700 12px/1 var(--lp-body); letter-spacing:.1em; text-transform:uppercase; color:var(--lp-navy); }
.lp .lp-vcard h3{ font:800 clamp(22px,2.4vw,30px)/1.08 var(--lp-display); letter-spacing:-.01em; margin:9px 0 8px; }
.lp .lp-vdesc{ font-size:15px; color:var(--lp-ink-2); line-height:1.5; margin-bottom:16px; }
.lp .lp-vactions{ display:flex; flex-wrap:wrap; gap:12px 22px; align-items:center; }
.lp .lp-link-arrow{ font:700 16px/1.3 var(--lp-body); color:var(--lp-ink); text-decoration:none; display:inline-flex; align-items:center; gap:7px;
  background:none; border:0; border-bottom:2.5px solid var(--lp-ink); padding:0 0 2px; cursor:pointer; text-align:left; }
.lp .lp-link-arrow svg{ width:18px; height:18px; stroke-width:2.6; flex:none; }
.lp .fv-form .f-field input, .lp .fv-form .f-field textarea{ color:var(--lp-ink); background:#fff; border:2px solid var(--lp-ink); }

/* ── secțiuni ── */
.lp .lp-sec{ padding:104px 0; }
.lp .lp-sec-head{ max-width:760px; margin:0 auto 60px; text-align:center; }
.lp .lp-eyebrow{ display:inline-block; font:700 13px/1 var(--lp-body); letter-spacing:.1em; text-transform:uppercase; padding:7px 10px; border-radius:8px; border:2px solid currentColor; color:var(--lp-navy); }
.lp .lp-h2{ font:800 clamp(36px,4.7vw,62px)/1 var(--lp-display); letter-spacing:-.022em; margin:18px 0 16px; }
.lp .lp-sub{ font-size:clamp(17px,1.5vw,19px); color:var(--lp-ink-2); }
.lp .lp-dark{ background:var(--lp-navy-2); color:#F2F6F8; }
.lp .lp-dark .lp-sub{ color:rgba(242,246,248,.8); }
.lp .lp-dark .lp-eyebrow{ color:var(--lp-lime); }

/* banda cu cele 5 telefoane */
.lp .lp-phones{ display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:24px; align-items:end; }
.lp .lp-pcol{ text-align:center; }
.lp .lp-pcol:nth-child(2), .lp .lp-pcol:nth-child(4){ transform:translateY(-22px); }
.lp .lp-pcol:nth-child(3){ transform:translateY(-44px); }
.lp .lp-dark .lp-phone{ border-color:#000; box-shadow:8px 8px 0 var(--lp-teal); }
.lp .lp-pcol h3{ font:800 21px/1.1 var(--lp-display); margin:24px 0 4px; }
.lp .lp-pcol p{ font-size:14.5px; color:rgba(242,246,248,.74); line-height:1.4; }
.lp .lp-center{ display:flex; justify-content:center; margin-top:56px; }
.lp .lp-dark .lp-store{ background:var(--lp-paper); color:var(--lp-ink); border-color:var(--lp-paper); }

/* rândul cu logarea seriilor */
.lp .lp-row{ display:grid; grid-template-columns:1.05fr 1fr; gap:68px; align-items:center; }
.lp .lp-art{ border:var(--lp-b) solid var(--lp-ink); border-radius:26px; overflow:hidden; box-shadow:var(--lp-sh-l); transform:rotate(-1.2deg); }
.lp .lp-art img{ width:100%; aspect-ratio:4/3; object-fit:cover; }
.lp .lp-ticks{ list-style:none; display:grid; gap:11px; margin:24px 0 0; padding:0; }
.lp .lp-ticks li{ display:flex; gap:11px; align-items:flex-start; font-weight:500; }
.lp .lp-tk{ flex:none; width:25px; height:25px; border-radius:8px; background:var(--lp-teal); border:2px solid var(--lp-ink); display:grid; place-items:center; margin-top:1px; }
.lp .lp-tk svg{ width:14px; height:14px; stroke:var(--lp-ink); stroke-width:3.4; }

/* bento: nutriție, alergare, teme */
.lp .lp-bento{ display:grid; grid-template-columns:1.2fr 1fr; gap:26px; margin-top:96px; }
.lp .lp-card{ position:relative; overflow:hidden; background:var(--lp-paper); border:var(--lp-b) solid var(--lp-ink); border-radius:var(--lp-r); box-shadow:var(--lp-sh); padding:32px; }
.lp .lp-card h3{ font:800 clamp(25px,2.5vw,33px)/1.05 var(--lp-display); letter-spacing:-.015em; margin:14px 0 10px; }
.lp .lp-card p{ color:var(--lp-ink-2); max-width:26em; }
.lp .lp-card .lp-eyebrow{ font-size:12px; }
.lp .lp-food{ display:flex; flex-direction:column; }
.lp .lp-duo{ position:relative; flex:1; min-height:330px; margin:22px -32px -32px; }
.lp .lp-duo .lp-phone{ position:absolute; width:40%; }
.lp .lp-duo .lp-phone:first-child{ left:9%; top:34px; transform:rotate(-6deg); }
.lp .lp-duo .lp-phone:last-child{ right:9%; top:4px; transform:rotate(5deg); }
.lp .lp-run{ background:var(--lp-mint); display:flex; flex-direction:column; }
.lp .lp-run .lp-eyebrow{ align-self:flex-start; }
.lp .lp-run .lp-phone{ width:58%; margin:26px auto -150px; transform:rotate(3deg); }
.lp .lp-themes{ grid-column:1/-1; display:grid; grid-template-columns:1fr 1.35fr; gap:30px; align-items:center; background:var(--lp-navy-2); color:#F2F6F8; }
.lp .lp-themes p{ color:rgba(242,246,248,.8); }
.lp .lp-themes .lp-eyebrow{ color:var(--lp-lime); }
.lp .lp-four{ display:flex; gap:16px; justify-content:flex-end; align-items:center; padding:6px 6px 10px 0; }
.lp .lp-four .lp-phone{ width:22%; border-color:#000; box-shadow:6px 6px 0 var(--lp-teal); }
.lp .lp-four .lp-phone:nth-child(odd){ transform:rotate(-3deg); }
.lp .lp-four .lp-phone:nth-child(even){ transform:rotate(3deg) translateY(12px); }

/* membership gratuit (editabil din admin: ed-why) */
.lp .lp-member{ background:var(--lp-mint); border-block:var(--lp-b) solid var(--lp-ink); }
.lp .lp-member-grid{ display:grid; grid-template-columns:.92fr 1.08fr; gap:56px; align-items:center; }
.lp .lp-member-art img{ width:100%; max-width:540px; margin-inline:auto; filter:drop-shadow(12px 10px 0 var(--lp-mint-2)); }
.lp .lp-member .lp-eyebrow{ color:var(--lp-teal-2); }
.lp .lp-perks{ position:relative; display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:30px 0 32px; }
.lp .lp-perk{ background:var(--lp-paper); border:var(--lp-b) solid var(--lp-ink); border-radius:18px; padding:18px 18px 19px; box-shadow:var(--lp-sh-s); }
.lp .lp-pi{ width:42px; height:42px; border-radius:12px; border:2px solid var(--lp-ink); display:grid; place-items:center; margin-bottom:13px; color:var(--lp-ink); }
.lp .lp-pi svg{ width:21px; height:21px; stroke-width:2.4; }
.lp .lp-perk h3{ font:800 18.5px/1.15 var(--lp-display); margin:0 0 6px; }
.lp .lp-perk p{ font-size:15px; color:var(--lp-ink-2); line-height:1.45; margin:0; }
.lp .lp-pill{ font:800 10px/1 var(--lp-body); letter-spacing:.08em; text-transform:uppercase; background:var(--lp-lime); border:2px solid var(--lp-ink); border-radius:6px; padding:3px 5px; margin-left:6px; vertical-align:3px; }
.lp .lp-editing, .lp [id^="ed-"].editing [data-ed]{ outline:2px dashed var(--lp-navy); outline-offset:3px; border-radius:4px; }

/* recenzii — apar doar când există (renderReviews); adminul le vede mereu */
.lp .lp-reviews{ padding:88px 0; }
.lp [id^="lp-"]{ scroll-margin-top:72px; }
.lp .lp-reviews:has(#testiHead.is-empty){ display:none; }
body.admin .lp .lp-reviews:has(#testiHead.is-empty){ display:block; }
.lp .lp-reviews .section-head{ margin:0 0 24px; align-items:center; }
.lp .lp-reviews .section-head h2{ font:800 clamp(30px,3.6vw,46px)/1 var(--lp-display); letter-spacing:-.02em; }
.lp .testi-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:18px; }
.lp .testi{ position:relative; background:var(--lp-paper); border:var(--lp-b) solid var(--lp-ink); border-radius:18px; box-shadow:var(--lp-sh-s); padding:22px; }
.lp .testi .ico{ color:var(--lp-teal-2); width:24px; height:24px; opacity:1; }
.lp .testi p{ font-size:16px; color:var(--lp-ink-2); line-height:1.55; margin:12px 0 16px; }
.lp .testi-who .t-ava{ background:var(--lp-mint-2); border:2px solid var(--lp-ink); color:var(--lp-ink); }
.lp .testi-who .t-name{ font-size:15px; font-weight:700; }
.lp .testi-who .t-cap{ font-size:12px; color:var(--lp-ink-3); }
.lp .testi-empty{ color:var(--lp-ink-3); border-color:rgba(21,24,26,.25); }

/* PRO (opțional) */
.lp .lp-pro-grid{ display:grid; grid-template-columns:1.25fr .75fr; gap:48px; align-items:center; }
.lp .lp-plans{ display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:30px 0 30px; }
.lp .lp-plan{ position:relative; background:var(--lp-paper); color:var(--lp-ink); border:var(--lp-b) solid #000; border-radius:18px; padding:22px; box-shadow:7px 7px 0 var(--lp-teal); }
.lp .lp-plan .name{ font:700 14px/1 var(--lp-body); letter-spacing:.08em; text-transform:uppercase; color:var(--lp-ink-3); }
.lp .lp-plan .price{ font:800 44px/1 var(--lp-display); letter-spacing:-.02em; margin:12px 0 6px; }
.lp .lp-plan .price small{ font:600 16px/1 var(--lp-body); letter-spacing:0; color:var(--lp-ink-3); }
.lp .lp-plan .note{ font-size:14.5px; color:var(--lp-ink-2); }
.lp .lp-best{ position:absolute; top:-15px; right:16px; background:var(--lp-lime); border:2px solid #000; border-radius:8px; font:800 11px/1 var(--lp-body); letter-spacing:.06em; padding:6px 8px; color:var(--lp-ink); }
.lp .lp-pro-list{ list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:12px 26px; margin:0; padding:0; }
.lp .lp-pro-list li{ display:flex; gap:10px; align-items:flex-start; font-size:16px; }
.lp .lp-pro-list svg{ flex:none; width:20px; height:20px; color:var(--lp-lime); stroke-width:3.2; margin-top:3px; }
.lp .lp-pro-cta{ display:flex; flex-wrap:wrap; align-items:center; gap:14px 20px; margin-top:32px; }
.lp .lp-fine{ font-size:13.5px; color:rgba(242,246,248,.7); }
.lp .lp-fine a{ color:inherit; }
.lp .lp-pro-art img{ width:100%; max-width:330px; margin-inline:auto; filter:drop-shadow(14px 10px 0 var(--lp-navy-3)); }

/* întrebări */
.lp .lp-faq{ max-width:840px; margin:0 auto; display:grid; gap:14px; }
.lp .lp-faq details{ background:var(--lp-paper); border:var(--lp-b) solid var(--lp-ink); border-radius:16px; box-shadow:var(--lp-sh-s); }
.lp .lp-faq summary{ cursor:pointer; list-style:none; padding:19px 22px; font:700 18px/1.3 var(--lp-body); display:flex; justify-content:space-between; gap:16px; align-items:center; }
.lp .lp-faq summary::-webkit-details-marker{ display:none; }
.lp .lp-faq summary svg{ flex:none; width:22px; height:22px; stroke-width:2.6; transition:transform .2s ease; }
.lp .lp-faq details[open] summary svg{ transform:rotate(180deg); }
.lp .lp-faq details p{ padding:0 22px 20px; color:var(--lp-ink-2); margin:0; }

/* final — pictat ca peretele din sală: portocaliu, cărămiziu, podea */
.lp .lp-final{ position:relative; overflow:hidden; border-top:var(--lp-b) solid var(--lp-ink); padding-top:88px;
  background:linear-gradient(to top, var(--lp-charcoal) 0 62px, var(--lp-brick) 62px 214px, var(--lp-orange) 214px 100%); }
.lp .lp-final-grid{ display:grid; grid-template-columns:1.1fr .9fr; gap:24px; align-items:end; }
.lp .lp-final-copy{ padding-bottom:258px; }
.lp .lp-final .lp-h2{ margin-top:0; }
.lp .lp-final .lp-sub{ color:var(--lp-ink); opacity:.85; }
.lp .lp-final .lp-cta-row{ margin-top:28px; }
.lp .lp-final-art img{ width:100%; max-width:440px; margin:0 0 20px auto; }

.lp .lp-footer{ background:var(--lp-charcoal); color:#EDE4DA; padding:30px 0 42px; font-size:14.5px; }
.lp .lp-foot{ display:flex; flex-wrap:wrap; gap:18px 28px; align-items:center; justify-content:space-between; }
.lp .lp-foot nav{ display:flex; flex-wrap:wrap; gap:6px 20px; }
.lp .lp-foot a{ text-decoration:none; opacity:.8; }
.lp .lp-foot a:hover{ opacity:1; text-decoration:underline; }
.lp .lp-grants{ display:inline-flex; align-items:center; gap:6px; opacity:.72; margin-left:14px; }
.lp .lp-grants img{ height:12px; width:auto; }

/* ── responsive ── */
@media (max-width:1100px){
  .lp .lp-nav-links{ display:none; }
  .lp .lp-phones{ gap:16px; }
  .lp .lp-pcol h3{ font-size:19px; }
}
@media (max-width:880px){
  .lp .lp-hero{ padding:30px 0 80px; }
  .lp .lp-hero-grid, .lp .lp-row, .lp .lp-member-grid, .lp .lp-pro-grid, .lp .lp-final-grid, .lp .lp-bento, .lp .lp-themes{ grid-template-columns:1fr; }
  .lp .lp-hero-grid{ gap:34px; }
  .lp .lp-hero-art{ width:100%; max-width:560px; margin-inline:auto; padding:8px 10px 50px 26px; }
  .lp .lp-float{ top:14px; min-width:0; padding:10px 12px; }
  .lp .lp-float .v{ font-size:17px; }
  .lp .lp-video{ margin-top:-30px; }
  .lp .lp-vcard{ grid-template-columns:1fr; gap:16px; padding:14px 14px 20px; }
  .lp .lp-sec{ padding:80px 0; }
  .lp .lp-reviews{ padding:64px 0; }
  .lp .lp-phones{ display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:18px; margin:0 -16px; padding:40px 16px 34px; }
  .lp .lp-pcol{ flex:none; width:62vw; max-width:250px; scroll-snap-align:center; }
  .lp .lp-pcol:nth-child(n){ transform:none; }
  .lp .lp-row{ gap:40px; }
  .lp .lp-bento{ margin-top:72px; gap:22px; }
  .lp .lp-card{ padding:24px; }
  .lp .lp-duo{ min-height:300px; margin:18px -24px -24px; }
  .lp .lp-duo .lp-phone{ width:44%; }
  .lp .lp-run .lp-phone{ width:52%; }
  .lp .lp-four{ justify-content:flex-start; }
  .lp .lp-four .lp-phone{ width:23%; }
  .lp .lp-perks{ grid-template-columns:1fr; }
  .lp .lp-member-art img{ max-width:400px; }
  .lp .lp-plans{ grid-template-columns:1fr; gap:24px; }
  .lp .lp-pro-list{ grid-template-columns:1fr; }
  .lp .lp-pro-art{ order:-1; }
  .lp .lp-pro-art img{ max-width:220px; }
  .lp .lp-final{ padding-top:64px; background:linear-gradient(to top, var(--lp-charcoal) 0 50px, var(--lp-brick) 50px 160px, var(--lp-orange) 160px 100%); }
  .lp .lp-final-copy{ padding-bottom:10px; }
  .lp .lp-final-art img{ max-width:300px; margin:0 auto 16px; }
}
@media (max-width:520px){
  .lp{ font-size:16px; }
  .lp .lp-nav-in{ height:62px; gap:8px; }
  .lp .lp-brand span{ display:none; }
  .lp .lp-brand img{ width:34px; height:34px; }
  .lp .lp-nav .lp-free{ display:none; }
  .lp .lp-btn{ width:100%; }
  .lp .lp-nav .lp-btn{ width:auto; }
  .lp .lp-cta-row{ gap:12px; }
  .lp .lp-store{ flex:1 1 150px; justify-content:center; }
  .lp .lp-duo{ min-height:250px; }
  .lp .lp-four{ gap:10px; }
  .lp .lp-grants{ margin-left:10px; }
}
@media (prefers-reduced-motion:reduce){ .lp *{ transition:none !important; } }
