/* ============================================================
   Rennt — platform brand design system
   Rennt is the resold white-label SaaS (a SEPARATE brand from
   any tenant storefront like Havana). This theme is intentionally
   distinct: cool "ink + teal" SaaS look, Space Grotesk / Inter.
   Everything is CSS-variable driven — re-theme by editing :root.
   PROVISIONAL identity: easy to swap when a final brand is set.
   ============================================================ */
:root{
  --ink:#141a24; --navy:#1f2a3a; --slate:#5b6472; --line:#ebe7e1;
  --cream:#FAF7F4;            /* brand cream — matches the logo square */
  --bg:#fbfaf8; --surface:#ffffff; --surface-2:#f6f2ed;
  --teal:#0f766e; --teal-bright:#13a594; --teal-soft:#e2f3f0;
  --teal-ink:#0c4f49;        /* deep teal for high-contrast text on cream */
  --amber:#d98a3d;            /* warm accent nod to events */
  --ok:#2f6b46; --warn:#a83219;
  --radius:18px; --radius-sm:12px; --maxw:1120px;
  --shadow:0 18px 50px rgba(20,26,36,.10); --shadow-sm:0 6px 20px rgba(20,26,36,.07);
  --font-head:"Space Grotesk", "Segoe UI", system-ui, sans-serif;
  --font-body:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
h1,h2,h3,h4{font-family:var(--font-head);font-weight:700;line-height:1.12;margin:0 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(2.1rem,5.4vw,3.6rem)}
h2{font-size:clamp(1.6rem,3.6vw,2.5rem)}
h3{font-size:1.18rem}
p{margin:0 0 1rem}
.container{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.section{padding:84px 0}
.center{text-align:center}
.muted{color:var(--slate)}
.eyebrow{font-family:var(--font-head);text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:600;color:var(--teal);margin-bottom:.7rem}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;border:none;border-radius:999px;padding:.85rem 1.5rem;font-weight:600;font-size:.95rem;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--teal);color:#fff;box-shadow:var(--shadow-sm)}
.btn-primary:hover{background:var(--teal-bright)}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:var(--navy)}
.btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.btn-ghost:hover{border-color:var(--teal);color:var(--teal)}
.btn-light{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}
.btn-block{width:100%;justify-content:center}
.btn-lg{padding:1rem 1.8rem;font-size:1rem}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}

/* focus-visible accessibility */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid var(--teal);outline-offset:2px;border-radius:8px}

/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(251,250,248,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:70px}
.brand{display:flex;align-items:center;gap:.6rem;font-family:var(--font-head);font-weight:700;font-size:1.35rem;letter-spacing:-.01em;color:var(--ink)}
.brand .mark{width:38px;height:38px;border-radius:11px;background:var(--cream);border:2px solid var(--teal);color:var(--teal);display:grid;place-items:center;font-size:1.15rem;font-weight:700}
.nav-links{display:flex;align-items:center;gap:1.6rem}
.nav-links a{font-size:.92rem;color:var(--slate);font-weight:500}
.nav-links a:hover{color:var(--ink)}
.nav-cta{display:flex;align-items:center;gap:.7rem}
@media(max-width:760px){.container.nav{flex-wrap:wrap;height:auto;min-height:70px;padding-bottom:.25rem}.nav-links{display:flex;order:3;width:100%;gap:.8rem;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:.45rem .4rem .15rem 0;margin-top:.35rem;border-top:1px solid var(--line)}.nav-links a{white-space:nowrap;font-size:.85rem}.nav-links::-webkit-scrollbar{display:none}}

/* hero */
.hero{background:radial-gradient(1200px 500px at 70% -10%, rgba(19,165,148,.20), transparent 60%), radial-gradient(900px 420px at 12% 0%, rgba(217,138,61,.07), transparent 55%), linear-gradient(180deg,#fff, var(--cream));padding:96px 0 60px}
.hero h1{max-width:14ch}
.hero .lead{font-size:clamp(1.05rem,2vw,1.3rem);color:var(--slate);max-width:56ch;margin:1.1rem 0 1.8rem}
.hero-cta{display:flex;gap:.8rem;flex-wrap:wrap;align-items:center}
.pill{display:inline-flex;align-items:center;gap:.5rem;background:var(--teal-soft);color:var(--teal);border-radius:999px;padding:.4rem 1rem;font-weight:600;font-size:.85rem;margin-bottom:1.1rem}
.hero-note{font-size:.85rem;color:var(--slate);margin-top:1rem}
.hero-shot{margin-top:54px;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--line);overflow:hidden;background:#fff}

/* trust strip */
.trust{display:flex;gap:30px;flex-wrap:wrap;justify-content:center;align-items:center;color:var(--slate);font-size:.86rem}
.trust b{color:var(--ink)}

/* feature grid */
.grid{display:grid;gap:24px}
.cols-3{grid-template-columns:repeat(3,1fr)}
.cols-2{grid-template-columns:repeat(2,1fr)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow-sm)}
.card .ic{width:46px;height:46px;border-radius:12px;background:var(--teal-soft);color:var(--teal);display:grid;place-items:center;font-size:1.3rem;margin-bottom:14px}
.card h3{margin:.1rem 0 .4rem}
.card p{margin:0;color:var(--slate);font-size:.94rem}

/* steps */
.steps{counter-reset:s;display:grid;gap:22px}
.step{display:flex;gap:16px;align-items:flex-start}
.step .n{counter-increment:s;flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-family:var(--font-head);font-weight:700}
.step .n::before{content:counter(s)}
.step h3{margin:.2rem 0 .25rem}
.step p{margin:0;color:var(--slate);font-size:.95rem}

/* pricing */
.price-card{max-width:460px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.price-top{background:var(--ink);color:#fff;padding:30px;text-align:center}
.price-top .amt{font-family:var(--font-head);font-size:3rem;font-weight:700;line-height:1}
.price-top .amt small{font-size:1rem;font-weight:500;color:#aeb6c2}
.price-top .plus{color:var(--teal-bright);font-weight:600;margin-top:.4rem}
.price-body{padding:26px 30px}
.feat{list-style:none;padding:0;margin:0 0 18px}
.feat li{padding:.4rem 0 .4rem 1.8rem;position:relative;font-size:.95rem}
.feat li::before{content:"✓";position:absolute;left:0;color:var(--teal);font-weight:700}

/* two-tier pricing grid */
.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;max-width:860px;margin:0 auto;align-items:start}
.price-grid .price-card{max-width:none;margin:0;position:relative;height:100%}
.price-card .plan-name{font-family:var(--font-head);font-weight:600;font-size:1.05rem;letter-spacing:.02em;color:#aeb6c2;text-transform:uppercase;margin-bottom:.5rem}
.price-card.featured{border-color:var(--teal);box-shadow:0 14px 40px -18px rgba(13,110,110,.55)}
.price-card.featured .price-top{background:linear-gradient(160deg,#0f766e 0%,var(--ink) 100%)}
.price-card.featured .plan-name{color:#bdeae3}
.price-flag{position:absolute;top:-12px;left:50%;transform:translateX(-50%);z-index:2;background:var(--teal-bright,#15b8a6);color:var(--ink);font-family:var(--font-head);font-weight:700;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;padding:.32rem .8rem;border-radius:999px;box-shadow:var(--shadow-sm,0 4px 12px -4px rgba(0,0,0,.25))}
.ai-credits-note{display:flex;align-items:flex-start;gap:14px;max-width:760px;margin:30px auto 0;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:18px 22px}
.ai-credits-note .ai-credits-ic{flex:0 0 auto;font-size:1.4rem;line-height:1;color:var(--teal);margin-top:.1rem}
.ai-credits-note p{margin:0;font-size:.92rem;color:var(--slate,#4a5568)}
@media(max-width:680px){.price-grid{grid-template-columns:1fr;gap:30px;max-width:460px}.price-card.featured{margin-top:6px}}

/* FAQ */
.faq{max-width:760px;margin:0 auto}
.faq details{border-bottom:1px solid var(--line);padding:16px 0}
.faq summary{font-family:var(--font-head);font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:"+";color:var(--teal);font-weight:700}
.faq details[open] summary::after{content:"–"}
.faq p{margin:.7rem 0 0;color:var(--slate);font-size:.95rem}

/* CTA band */
.cta-band{background:linear-gradient(125deg,var(--teal) 0%,#0c5f59 45%,var(--navy) 100%);color:#fff;border-radius:var(--radius);padding:54px 30px;text-align:center}
.cta-band h2{color:#fff}
.cta-band p{color:#d4eae6;max-width:52ch;margin:0 auto 1.5rem}

/* footer */
.site-footer{background:var(--ink);color:#aeb6c2;padding:48px 0 28px;margin-top:20px}
.site-footer .brand{color:#fff}
.foot-grid{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}
.site-footer a{color:#aeb6c2}.site-footer a:hover{color:#fff}
.foot-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:18px;font-size:.82rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}

/* signup */
.signup-wrap{max-width:520px;margin:7vh auto;padding:0 20px}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:28px}
.field{margin-bottom:14px}
.field label{display:block;font-size:.8rem;font-weight:600;color:var(--ink);margin-bottom:.35rem}
.field input{width:100%;padding:.75rem .9rem;border:1px solid var(--line);border-radius:var(--radius-sm);font-family:inherit;font-size:.95rem;background:#fff;color:var(--ink)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.addr{display:flex;align-items:center;gap:6px}.addr input{flex:1}

@media(max-width:820px){.cols-3,.cols-2,.two,.foot-grid{grid-template-columns:1fr}}
@media(max-width:820px){.section{padding:60px 0}}

/* marketing/SEO pages: comparison tables + prose */
.cmp{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:10px 0}
.cmp th,.cmp td{padding:13px 16px;border-bottom:1px solid var(--line);text-align:left;font-size:.95rem;vertical-align:top}
.cmp thead th{background:var(--ink);color:#fff;font-family:var(--font-head);font-size:.95rem}
.cmp thead th.r{color:var(--teal-bright)}
.cmp tbody th{font-weight:500;color:var(--slate);width:40%}
.cmp td.r{font-weight:700;color:var(--teal)}
.cmp tr:last-child td,.cmp tr:last-child th{border-bottom:none}
.prose{max-width:760px;margin:0 auto}
.prose h2{margin-top:1.7rem;font-size:1.4rem}
.prose p,.prose li{color:var(--ink);font-size:1.02rem}
.prose ul{padding-left:1.2rem}.prose li{margin:.3rem 0}
.prose a{color:var(--teal);text-decoration:underline}
.fineprint{font-size:.8rem;color:var(--slate);margin-top:16px}

/* ============================================================
   LANDING (homepage) — scoped marketing classes. Prefixed `lp-`
   so they never collide with the 60+ shared pages. Add-only.
   ============================================================ */

/* scroll-reveal entrance (respects reduced motion).
   FAIL-SAFE: a pure-CSS animation forces every .reveal to full opacity
   1.6s after load even if JS never runs. landing.js disables the failsafe
   (html.lp-js) only AFTER its observer + viewport watchdog are live, so
   content can never get stuck pale/illegible mid-animation. */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1);animation:lpRevealSafe .7s cubic-bezier(.22,.61,.36,1) 1.6s forwards}
@keyframes lpRevealSafe{to{opacity:1;transform:none}}
html.lp-js .reveal{animation:none}
.reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}.reveal.d4{transition-delay:.32s}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;animation:none}}

/* hero split layout */
.lp-hero{position:relative;overflow:hidden}
.lp-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.lp-hero-copy h1{max-width:15ch}
.lp-hero-art{position:relative;display:flex;justify-content:center;align-items:center;min-width:0}
.lp-hero-art svg{width:100%;height:auto;max-width:480px;filter:drop-shadow(0 30px 60px rgba(20,26,36,.16))}
.lp-stat-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:1.6rem}
.lp-chip{display:inline-flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:14px;padding:.6rem .9rem;box-shadow:var(--shadow-sm);min-width:96px}
.lp-chip b{font-family:var(--font-head);font-size:1.15rem;color:var(--ink);line-height:1.1}
.lp-chip span{font-size:.72rem;color:var(--slate);letter-spacing:.02em}
@media(max-width:880px){.lp-hero-grid{grid-template-columns:1fr;gap:36px}.lp-hero-art{order:-1}.lp-hero-art svg{max-width:360px}.lp-hero-copy h1{max-width:100%}}

/* trust marquee strip */
.lp-trust-band{background:var(--surface-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}
.lp-trust-row{display:flex;gap:14px 26px;flex-wrap:wrap;justify-content:center;align-items:center}
.lp-trust-tag{display:inline-flex;align-items:center;gap:8px;font-size:.86rem;color:var(--slate);font-weight:500}
.lp-trust-tag svg{flex:0 0 auto;color:var(--teal)}
.lp-trust-tag b{color:var(--ink)}

/* feature grid — custom-icon cards */
.lp-feat-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(150deg,var(--teal-soft),#fff);border:1px solid var(--line);display:grid;place-items:center;margin-bottom:16px;color:var(--teal)}
.lp-feat-icon svg{width:28px;height:28px}
.card.lp-feat{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.card.lp-feat:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--teal-soft)}

/* how-it-works visual steps */
.lp-how{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:hs}
.lp-how-step{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px;box-shadow:var(--shadow-sm)}
.lp-how-art{width:100%;height:120px;border-radius:14px;background:var(--surface-2);display:grid;place-items:center;margin-bottom:18px;overflow:hidden}
.lp-how-art svg{width:auto;height:88px}
.lp-how-step .lp-num{counter-increment:hs;position:absolute;top:-14px;left:24px;width:34px;height:34px;border-radius:50%;background:var(--teal);color:#fff;font-family:var(--font-head);font-weight:700;display:grid;place-items:center;font-size:.95rem;box-shadow:var(--shadow-sm)}
.lp-how-step .lp-num::before{content:counter(hs)}
.lp-how-step h3{margin:.3rem 0 .4rem}
.lp-how-step p{margin:0;color:var(--slate);font-size:.92rem}
@media(max-width:820px){.lp-how{grid-template-columns:1fr;gap:30px}}

/* social proof / case study */
.lp-proof{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;background:linear-gradient(135deg,var(--ink),var(--navy));border-radius:var(--radius);padding:42px;color:#fff;overflow:hidden}
.lp-proof h2{color:#fff}
.lp-proof .eyebrow{color:var(--teal-bright)}
.lp-proof-quote{font-family:var(--font-head);font-size:clamp(1.25rem,2.4vw,1.7rem);line-height:1.3;font-weight:600;margin:.4rem 0 1.1rem}
.lp-proof-who{display:flex;align-items:center;gap:12px;font-size:.9rem;color:#c6d3df}
.lp-proof-who .lp-ava{width:42px;height:42px;border-radius:50%;background:var(--teal);display:grid;place-items:center;font-family:var(--font-head);font-weight:700;color:#fff;font-size:1rem}
.lp-proof-shot{position:relative;display:flex;justify-content:center}
.lp-proof-shot svg{width:100%;max-width:380px;height:auto;border-radius:16px;box-shadow:0 26px 50px rgba(0,0,0,.4)}
.lp-proof-cta{margin-top:1.2rem}
@media(max-width:820px){.lp-proof{grid-template-columns:1fr;gap:28px;padding:30px}.lp-proof-shot{order:-1}}

/* pricing toggle + compare + details */
.lp-price-tag{display:inline-flex;align-items:center;gap:8px;background:var(--teal-soft);color:var(--teal-ink);font-weight:600;font-size:.84rem;border-radius:999px;padding:.4rem 1rem;margin:0 auto 16px}
.price-card .price-top .amt small{color:#aeb6c2}
.lp-aicred{display:inline-flex;align-items:center;gap:7px;background:var(--teal-soft);color:var(--teal-ink);font-weight:600;font-size:.82rem;border-radius:10px;padding:.45rem .7rem;margin:0 0 16px}
.lp-aicred svg{flex:0 0 auto}
.lp-more{margin-top:14px;border-top:1px dashed var(--line);padding-top:6px}
.lp-more summary{font-family:var(--font-head);font-weight:600;font-size:.9rem;color:var(--teal);cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px;padding:8px 0}
.lp-more summary::-webkit-details-marker{display:none}
.lp-more summary::after{content:"▾";margin-left:auto;transition:transform .2s}
.lp-more[open] summary::after{transform:rotate(180deg)}
.lp-more .lp-more-body{font-size:.9rem;color:var(--slate);padding-bottom:6px}
.lp-more .lp-more-body h4{font-family:var(--font-head);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink);margin:.6rem 0 .3rem}
.lp-more .lp-more-body ul{margin:.2rem 0 .5rem;padding-left:1.1rem}
.lp-more .lp-more-body li{margin:.2rem 0}
.lp-whofor{font-size:.86rem;color:var(--slate);background:var(--surface-2);border-radius:10px;padding:.6rem .8rem;margin-bottom:14px}
.lp-whofor b{color:var(--ink)}

/* compare-all expandable matrix */
.lp-compare{max-width:860px;margin:30px auto 0}
.lp-compare>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-head);font-weight:600;color:var(--teal);background:#fff;border:1px solid var(--line);border-radius:999px;padding:.8rem 1.4rem;width:max-content;margin:0 auto;box-shadow:var(--shadow-sm)}
.lp-compare>summary::-webkit-details-marker{display:none}
.lp-compare>summary::after{content:"▾";transition:transform .2s}
.lp-compare[open]>summary::after{transform:rotate(180deg)}
.lp-compare-wrap{overflow-x:auto;margin-top:22px;border-radius:var(--radius)}
.lp-matrix{width:100%;min-width:520px;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.lp-matrix th,.lp-matrix td{padding:.85rem 1rem;border-bottom:1px solid var(--line);text-align:left;font-size:.93rem}
.lp-matrix thead th{font-family:var(--font-head);background:var(--ink);color:#fff;text-align:center}
.lp-matrix thead th:first-child{text-align:left}
.lp-matrix thead th .pm{font-size:.78rem;color:#aeb6c2;font-weight:500}
.lp-matrix thead th.pro{background:linear-gradient(160deg,#0f766e,var(--ink))}
.lp-matrix td:nth-child(2),.lp-matrix td:nth-child(3){text-align:center}
.lp-matrix tbody tr:nth-child(even){background:var(--surface-2)}
.lp-matrix tr:last-child td{border-bottom:none}
.lp-matrix .yes{color:var(--teal);font-weight:700}
.lp-matrix .no{color:var(--slate)}
.lp-matrix td strong{color:var(--ink)}

/* Q&A (replaces "fine print") */
.lp-qa{max-width:760px;margin:0 auto}
.lp-qa details{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);padding:4px 18px;margin-bottom:12px;box-shadow:var(--shadow-sm)}
.lp-qa summary{font-family:var(--font-head);font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px;padding:14px 0;align-items:center}
.lp-qa summary::-webkit-details-marker{display:none}
.lp-qa summary::after{content:"+";color:var(--teal);font-weight:700;font-size:1.3rem;line-height:1}
.lp-qa details[open] summary::after{content:"–"}
.lp-qa details[open]{border-color:var(--teal-soft)}
.lp-qa p{margin:0 0 14px;color:var(--slate);font-size:.95rem}

/* section eyebrow helper for cream/ink rhythm */
.lp-band-cream{background:var(--cream)}
.lp-band-white{background:#fff}

/* ============================================================
   LANDING v3 — bold brand layer (ADDITIVE, lp- scoped).
   Used by index.html + pricing.html only. Do not edit the
   shared tokens/classes above — append below this line only.
   ============================================================ */

/* --- kinetic headline word --------------------------------- */
.lp-kinetic{position:relative;display:inline-block;background:linear-gradient(92deg,var(--teal) 0%,var(--teal-bright) 32%,var(--amber) 64%,var(--teal) 100%);background-size:280% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:lpHue 8s linear infinite}
@keyframes lpHue{to{background-position:-280% 0}}
.lp-kinetic::after{content:"";position:absolute;left:-1%;right:-1%;bottom:.03em;height:.13em;border-radius:99px;background:linear-gradient(90deg,var(--teal-bright),var(--amber));opacity:.35;transform:scaleX(0);transform-origin:left;animation:lpUnder 1s .5s cubic-bezier(.22,.61,.36,1) forwards}
@keyframes lpUnder{to{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){.lp-kinetic{animation:none}.lp-kinetic::after{animation:none;transform:scaleX(1)}}

/* --- hero animated phone demo ------------------------------ */
.lp-demo{position:relative;width:min(312px,82vw);margin:0 auto;padding-top:48px}
/* night badge: ONE small pill, centered in the reserved 48px strip ABOVE
   the phone frame — geometrically impossible to overlap the screen.
   (badge ≈30px tall, top:6px → bottom edge ≈36px < 48px strip, all widths) */
.lp-demo-night{position:absolute;z-index:9;top:6px;left:50%;display:inline-flex;align-items:center;gap:7px;background:var(--ink);color:#fff;border-radius:999px;padding:.42rem .95rem;font-size:.76rem;font-weight:600;box-shadow:var(--shadow-sm);white-space:nowrap;transform:translate(-50%,0);animation:lpFloatC 5.5s ease-in-out infinite}
.lp-demo-night svg{width:14px;height:14px;color:#f4c150;flex:0 0 auto}
@keyframes lpFloatC{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-5px)}}
@media(max-width:360px){.lp-demo-night{font-size:.7rem;padding:.38rem .8rem;gap:6px}}
/* morning toast: anchored to the phone's bottom-right bezel corner,
   slightly overhanging — classic notification composition */
.lp-demo-booked{position:absolute;z-index:9;bottom:54px;right:-18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:.55rem .85rem;font-size:.74rem;color:var(--slate);box-shadow:var(--shadow);animation:lpFloat 6.5s .9s ease-in-out infinite;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility .45s}
.lp-demo[data-scene="4"] .lp-demo-booked{opacity:1;visibility:visible}
.lp-demo-booked b{display:block;font-family:var(--font-head);color:var(--teal-ink);font-size:.8rem}
@keyframes lpFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(max-width:1080px){.lp-demo-booked{right:-8px}}
@media(max-width:640px){.lp-demo-booked{display:none}}
.lp-demo-phone{position:relative;background:#141a24;border-radius:46px;padding:12px;box-shadow:0 38px 80px rgba(20,26,36,.28)}
.lp-demo-screen{position:relative;background:linear-gradient(180deg,#ffffff,#f6f2ed);border-radius:36px;overflow:hidden;height:560px}
@media(max-width:480px){.lp-demo-screen{height:500px}}
.lp-demo-notch{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:86px;height:22px;border-radius:12px;background:#141a24;z-index:8}
.lp-demo-status{position:absolute;top:9px;left:0;right:0;display:flex;justify-content:space-between;padding:0 24px;font-size:.66rem;font-weight:600;color:rgba(255,255,255,.9);z-index:7;letter-spacing:.03em}
.lp-shop-head{position:absolute;top:0;left:0;right:0;height:96px;background:linear-gradient(95deg,var(--teal),var(--teal-bright));z-index:5;padding:36px 18px 0;display:flex;align-items:center;gap:10px;color:#fff}
.lp-shop-logo{width:34px;height:34px;border-radius:50%;background:var(--cream);color:var(--teal);font-family:var(--font-head);font-weight:700;display:grid;place-items:center;flex:0 0 auto;font-size:.95rem}
.lp-shop-name b{display:block;font-family:var(--font-head);font-size:.95rem;line-height:1.15}
.lp-shop-name i{font-style:normal;font-size:.64rem;color:#bdeae3;letter-spacing:.02em}
.lp-scenes{position:absolute;inset:96px 0 0 0}
.lp-scene{position:absolute;inset:0;padding:18px 16px;opacity:0;transform:translateX(26px);transition:opacity .5s ease,transform .5s cubic-bezier(.22,.61,.36,1);pointer-events:none}
.lp-demo[data-scene="1"] .lp-scene1,.lp-demo[data-scene="2"] .lp-scene2,.lp-demo[data-scene="3"] .lp-scene3,.lp-demo[data-scene="4"] .lp-scene4{opacity:1;transform:none}
.lp-scene-cap{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);margin:0 0 12px}
.lp-mini-card{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:.65rem .75rem;margin-bottom:10px;box-shadow:var(--shadow-sm);opacity:0;transform:translateY(12px);transition:opacity .45s ease,transform .45s ease}
.lp-demo[data-scene="1"] .lp-scene1 .lp-mini-card{opacity:1;transform:none}
.lp-demo[data-scene="1"] .lp-scene1 .lp-mini-card:nth-of-type(2){transition-delay:.14s}
.lp-demo[data-scene="1"] .lp-scene1 .lp-mini-card:nth-of-type(3){transition-delay:.28s}
.lp-demo[data-scene="1"] .lp-scene1 .lp-mini-card:nth-of-type(4){transition-delay:.42s}
/* docked request-summary bar (scene 1) — fills the lower screen like a
   real storefront mid-booking; the 4th card scrolls under it on short screens */
.lp-cart{position:absolute;left:14px;right:14px;bottom:14px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:.6rem .75rem .65rem;box-shadow:0 -12px 30px rgba(20,26,36,.10),var(--shadow);opacity:0;transform:translateY(14px);transition:opacity .45s .55s ease,transform .45s .55s ease}
.lp-demo[data-scene="1"] .lp-scene1 .lp-cart{opacity:1;transform:none}
.lp-cart-row{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.74rem;color:var(--slate);margin-bottom:.5rem}
.lp-cart-row b{font-family:var(--font-head);color:var(--ink);font-size:.78rem}
.lp-cart .lp-demo-btn{padding:.6rem;font-size:.8rem}
.lp-thumb{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;flex:0 0 auto;color:#fff}
.lp-thumb svg{width:24px;height:24px}
.lp-thumb-teal{background:linear-gradient(150deg,var(--teal-bright),var(--teal))}
.lp-thumb-amber{background:linear-gradient(150deg,#e8a45f,var(--amber))}
.lp-thumb-ink{background:linear-gradient(150deg,#3a4456,var(--ink))}
.lp-mini-meta{flex:1;min-width:0}
.lp-mini-meta b{display:block;font-family:var(--font-head);font-size:.84rem;line-height:1.2;color:var(--ink)}
.lp-mini-meta i{font-style:normal;font-size:.74rem;color:var(--slate)}
.lp-avail{display:inline-flex;align-items:center;gap:5px;font-size:.64rem;font-weight:700;color:var(--ok);background:#e9f4ec;border-radius:999px;padding:.25rem .55rem;white-space:nowrap}
.lp-avail em{width:6px;height:6px;border-radius:50%;background:var(--ok)}
.lp-cal{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:var(--shadow-sm)}
.lp-cal-head{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-head);font-weight:700;font-size:.85rem;margin-bottom:10px;color:var(--ink)}
.lp-cal-head span{font-size:.68rem;color:var(--teal);font-weight:600}
.lp-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center;font-size:.66rem;color:var(--slate)}
.lp-cal-grid span{padding:.34rem 0;border-radius:8px}
.lp-cal-grid .dim{opacity:.3}
.lp-cal-grid .pick{background:var(--teal);color:#fff;font-weight:700}
.lp-demo[data-scene="2"] .lp-cal-grid .pick{animation:lpPick .8s .5s both}
@keyframes lpPick{0%{transform:scale(.5);box-shadow:0 0 0 0 rgba(15,118,110,.45)}60%{transform:scale(1.2)}100%{transform:scale(1);box-shadow:0 0 0 9px rgba(15,118,110,0)}}
.lp-cal-note{display:flex;align-items:center;gap:7px;font-size:.74rem;color:var(--ok);font-weight:600;margin:12px 2px 0}
.lp-cal-note em{flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--ok)}
.lp-sum{background:#fff;border:1px solid var(--line);border-radius:14px;padding:6px 14px;box-shadow:var(--shadow-sm);margin-bottom:14px}
.lp-sum-row{display:flex;justify-content:space-between;gap:10px;font-size:.8rem;color:var(--slate);padding:.55rem 0;border-bottom:1px dashed var(--line)}
.lp-sum-row:last-child{border-bottom:none}
.lp-sum-row b{font-weight:600;color:var(--ink)}
.lp-demo-btn{display:block;width:100%;border:none;border-radius:999px;background:linear-gradient(95deg,var(--teal),var(--teal-bright));color:#fff;font-family:var(--font-head);font-weight:700;font-size:.92rem;padding:.85rem;pointer-events:none;box-shadow:var(--shadow-sm)}
.lp-demo[data-scene="3"] .lp-demo-btn{animation:lpPress 1.4s 1s both}
@keyframes lpPress{0%,100%{transform:scale(1)}45%{transform:scale(.95)}62%{transform:scale(1.03)}}
.lp-toast{position:absolute;top:10px;left:12px;right:12px;background:var(--ink);color:#fff;border-radius:14px;padding:.6rem .8rem .6rem 2.6rem;font-size:.74rem;opacity:0;transform:translateY(-140%);box-shadow:var(--shadow);z-index:6}
.lp-toast::before{content:"R";position:absolute;left:.7rem;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:6px;background:var(--cream);color:var(--teal);font-family:var(--font-head);font-weight:700;font-size:.72rem;display:grid;place-items:center}
.lp-toast b{display:block;font-family:var(--font-head);font-size:.78rem}
.lp-toast i{position:absolute;right:.8rem;top:.65rem;font-style:normal;color:#aeb6c2;font-size:.64rem}
.lp-demo[data-scene="4"] .lp-toast{animation:lpToast .55s .9s cubic-bezier(.22,.61,.36,1) forwards}
@keyframes lpToast{to{opacity:1;transform:translateY(0)}}
.lp-confirm{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:100%;padding-top:26px}
.lp-confirm>b{font-family:var(--font-head);font-size:1.08rem;margin-top:14px;color:var(--ink)}
.lp-confirm>span{font-size:.8rem;color:var(--slate);margin-top:4px}
.lp-confirm>i{font-style:normal;font-size:.74rem;color:var(--teal-ink);background:var(--teal-soft);border-radius:999px;padding:.32rem .85rem;margin-top:14px;font-weight:600}
.lp-check{width:76px;height:76px}
.lp-check circle{stroke-dasharray:166;stroke-dashoffset:166}
.lp-check path{stroke-dasharray:48;stroke-dashoffset:48}
.lp-demo[data-scene="4"] .lp-check circle{animation:lpDash .6s ease forwards}
.lp-demo[data-scene="4"] .lp-check path{animation:lpDash .35s .55s ease forwards}
@keyframes lpDash{to{stroke-dashoffset:0}}
.lp-demo-dots{display:flex;justify-content:center;gap:8px;margin-top:16px}
.lp-demo-dots i{width:8px;height:8px;border-radius:999px;background:var(--line);transition:background .3s,transform .3s,width .3s}
.lp-demo[data-scene="1"] .lp-demo-dots i:nth-child(1),.lp-demo[data-scene="2"] .lp-demo-dots i:nth-child(2),.lp-demo[data-scene="3"] .lp-demo-dots i:nth-child(3),.lp-demo[data-scene="4"] .lp-demo-dots i:nth-child(4){background:var(--teal);width:20px}
@media(prefers-reduced-motion:reduce){
  .lp-scene{transition:none}
  .lp-mini-card,.lp-cart{opacity:1;transform:none;transition:none}
  .lp-toast{opacity:1;transform:none;animation:none!important}
  .lp-check circle,.lp-check path{stroke-dashoffset:0;animation:none!important}
  .lp-demo-night,.lp-demo-booked{animation:none}
  .lp-demo-btn,.lp-cal-grid .pick{animation:none!important}
}

/* --- stats / energy band ----------------------------------- */
.lp-energy{background:var(--ink);color:#fff;padding:40px 0;position:relative;overflow:hidden}
.lp-energy::before{content:"";position:absolute;inset:0;background:radial-gradient(640px 220px at 82% 0%,rgba(19,165,148,.28),transparent 62%),radial-gradient(520px 200px at 8% 100%,rgba(217,138,61,.14),transparent 60%)}
.lp-energy-row{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;text-align:center}
.lp-energy-item b{display:block;font-family:var(--font-head);font-weight:700;font-size:clamp(1.6rem,3.4vw,2.4rem);line-height:1.05;background:linear-gradient(92deg,#ffffff 25%,#7fd9cd 85%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.lp-energy-item span{display:block;margin-top:.4rem;font-size:.82rem;color:#aeb6c2}
@media(max-width:680px){.lp-energy-row{grid-template-columns:repeat(2,1fr);gap:26px 14px}}

/* --- before / after strip ---------------------------------- */
.lp-ba{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:960px;margin:0 auto;align-items:stretch}
.lp-ba-col{border-radius:var(--radius);padding:28px;position:relative}
.lp-ba-old{background:#fff;border:1.5px dashed #ddb8aa}
.lp-ba-new{background:linear-gradient(155deg,var(--teal) 0%,#0c5f59 75%);color:#fff;box-shadow:var(--shadow)}
.lp-ba-col h3{font-size:1.15rem;margin-bottom:1rem}
.lp-ba-new h3{color:#fff}
.lp-ba-tag{display:inline-block;font-family:var(--font-head);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:.32rem .85rem;margin-bottom:14px}
.lp-ba-old .lp-ba-tag{background:#f9e9e2;color:var(--warn)}
.lp-ba-new .lp-ba-tag{background:rgba(255,255,255,.16);color:#d9f2ee}
.lp-bubble{background:var(--surface-2);border:1px solid var(--line);border-radius:16px 16px 16px 4px;padding:.7rem .95rem;font-size:.88rem;color:var(--ink);max-width:36ch;margin:0 0 10px}
.lp-bubble i{display:block;font-style:normal;font-size:.7rem;color:var(--slate);margin-top:.3rem}
.lp-bubble.lp-missed{background:#fdf1ec;border-color:#eccfc0;border-radius:16px;color:var(--warn);font-weight:600}
.lp-onelink{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:.6rem 1.05rem;font-family:var(--font-head);font-weight:600;font-size:.88rem;margin-bottom:18px;width:max-content;max-width:100%}
.lp-onelink svg{flex:0 0 auto}
.lp-newlist{list-style:none;margin:0;padding:0}
.lp-newlist li{position:relative;padding:.5rem 0 .5rem 1.95rem;font-size:.93rem;color:#eafaf7}
.lp-newlist li::before{content:"";position:absolute;left:0;top:.62rem;width:19px;height:19px;border-radius:50%;background:rgba(255,255,255,.18)}
.lp-newlist li::after{content:"";position:absolute;left:5px;top:.98rem;width:8px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
@media(max-width:820px){.lp-ba{grid-template-columns:1fr}}

/* --- community / brand manifesto --------------------------- */
.lp-community{text-align:center;max-width:880px;margin:0 auto}
.lp-manifesto{font-family:var(--font-head);font-weight:700;font-size:clamp(1.5rem,3.4vw,2.35rem);line-height:1.22;letter-spacing:-.01em;margin:0 0 1.1rem;color:var(--ink)}
.lp-manifesto em{font-style:normal;color:var(--teal)}
.lp-values{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:34px 0 28px;text-align:left}
.lp-value{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease}
.lp-value:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.lp-value b{font-family:var(--font-head);display:block;margin-bottom:.35rem;color:var(--ink)}
.lp-value p{margin:0;font-size:.9rem;color:var(--slate)}
@media(max-width:760px){.lp-values{grid-template-columns:1fr}}

/* --- monthly / yearly billing toggle ------------------------ */
.lp-billswitch{display:inline-flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px;box-shadow:var(--shadow-sm);gap:4px}
.lp-billswitch button{border:none;background:transparent;border-radius:999px;padding:.55rem 1.25rem;font-family:var(--font-head);font-weight:600;font-size:.9rem;color:var(--slate);cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background .2s ease,color .2s ease}
.lp-billswitch button.on{background:var(--ink);color:#fff}
.lp-billswitch .lp-billtag{font-size:.64rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--teal-soft);color:var(--teal-ink);border-radius:999px;padding:.2rem .5rem}
.lp-billswitch button.on .lp-billtag{background:var(--teal-bright);color:var(--ink)}
.lp-pricewrap .lp-bill-y{display:none!important}
.lp-pricewrap.yearly .lp-bill-m{display:none!important}
.lp-pricewrap.yearly div.lp-bill-y,.lp-pricewrap.yearly p.lp-bill-y,.lp-pricewrap.yearly li.lp-bill-y,.lp-pricewrap.yearly tr.lp-bill-y{display:revert!important}
.lp-pricewrap.yearly span.lp-bill-y,.lp-pricewrap.yearly small.lp-bill-y,.lp-pricewrap.yearly strong.lp-bill-y{display:inline!important}
.lp-pricewrap.yearly .lp-save.lp-bill-y{display:inline-flex!important}
.lp-save{align-items:center;gap:6px;background:rgba(19,165,148,.22);color:#0c4f49;font-weight:600;font-size:.76rem;border-radius:999px;padding:.32rem .8rem;margin-top:.65rem}
.lp-save-light{background:var(--teal-soft);color:var(--teal-ink)}
.lp-yrnote{font-size:.78rem;color:#aeb6c2;margin-top:.4rem}

/* --- v3 responsive overrides (keep headline first on mobile) - */
@media(max-width:880px){
  .lp-hero .lp-hero-art{order:2}
  .lp-demo-screen{height:520px}
  .lp-demo-booked{right:0}
}

/* ============================================================
   LANDING v4 — polish layer + "Built by AI" live showcase.
   ADDITIVE, lp- scoped. Used by index.html + pricing.html.
   ============================================================ */

/* --- section rhythm: one shared header measure --------------- */
.lp-sechead{max-width:680px;margin:0 auto 48px}
@media(max-width:820px){.lp-sechead{margin-bottom:36px}}

/* --- soft hairline separators between content bands ---------- */
section.lp-band-cream,section.lp-band-white{position:relative}
section.lp-band-cream::before,section.lp-band-white::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(1120px,92%);height:1px;background:linear-gradient(90deg,transparent,rgba(20,26,36,.10),transparent);pointer-events:none}

/* --- button micro-polish ------------------------------------- */
.btn:active{transform:translateY(0) scale(.985)}
.btn-primary:hover{box-shadow:0 10px 26px -10px rgba(15,118,110,.55)}
.btn-ghost:hover{background:rgba(15,118,110,.06)}
.btn-light:hover{box-shadow:var(--shadow)}

/* --- energy band refinement ----------------------------------- */
.lp-energy{padding:46px 0}
.lp-energy-item{position:relative}
.lp-energy-item span{letter-spacing:.01em;max-width:22ch;margin-left:auto;margin-right:auto}
@media(min-width:681px){.lp-energy-item+.lp-energy-item::after{content:"";position:absolute;left:-12px;top:50%;transform:translateY(-50%);height:40px;width:1px;background:rgba(255,255,255,.12)}}
.lp-energy-item strong{display:block;margin-top:.34rem;font-family:var(--font-head);font-weight:700;font-size:1.04rem;color:#fff;letter-spacing:.01em}
.lp-energy-item span{margin-top:.18rem}
/* ---- dual scrollable phones (storefront + dashboard) ---- */
.dualph{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:8px}
.dph{width:198px;max-width:46%;flex:0 0 auto}
@media(max-width:520px){.dph{max-width:84%}}
.dph-frame{background:#141a24;border-radius:34px;padding:9px;box-shadow:0 30px 54px -26px rgba(15,23,42,.55);position:relative}
.dph-frame::before{content:"";position:absolute;top:15px;left:50%;transform:translateX(-50%);width:54px;height:5px;border-radius:3px;background:#000;opacity:.5;z-index:9}
.dph-scr{height:360px;overflow-y:auto;background:#fff;border-radius:26px;position:relative;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.dph-scr::-webkit-scrollbar{width:5px}.dph-scr::-webkit-scrollbar-thumb{background:#cdd3da;border-radius:3px}
.dph-lab{text-align:center;font-size:.82rem;font-weight:700;color:#141a24;margin:10px 0 0}
.dph-lab span{display:block;font-weight:500;color:#5b6472;font-size:.74rem;margin-top:1px}
.dst-hd{position:sticky;top:0;z-index:5;background:linear-gradient(90deg,#0f766e,#13a594);color:#fff;display:flex;align-items:center;gap:7px;padding:11px}
.dst-hd .lg{width:22px;height:22px;border-radius:50%;background:#FAF7F4;color:#0f766e;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:11px}
.dst-hd .bn{font-weight:700;font-size:11.5px}
.dst-hd .ct{margin-left:auto;display:flex}
.dst-hero{height:74px;background:linear-gradient(135deg,#bfe6df,#8fd4c8);display:flex;align-items:center;justify-content:center;color:#0c3b36;font-weight:700;font-size:12px}
.dst-chips{display:flex;gap:6px;padding:9px 10px;flex-wrap:wrap}
.dst-chips span{font-size:10px;font-weight:700;border-radius:999px;padding:4px 9px;background:#eef0f2;color:#5b6472}
.dst-chips span.on{background:#0f766e;color:#fff}
.dpc{display:flex;gap:8px;align-items:center;padding:7px 10px;border-bottom:1px solid #f0f1f3}
.dpc .th{width:40px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:17px;flex:none;background:#e2f3f0}
.dpc .nm{font-size:11.5px;font-weight:700;color:#141a24}
.dpc .pr{font-size:10.5px;color:#0f766e;font-weight:700}
.dpc .bk{margin-left:auto;font-size:9.5px;font-weight:800;color:#0f766e;border:1px solid #bfe6df;border-radius:999px;padding:3px 8px}
.dst-foot{text-align:center;font-size:9px;color:#9aa1ab;padding:11px}
.dad-hd{position:sticky;top:0;z-index:5;background:#0d1117;color:#fff;display:flex;align-items:center;gap:7px;padding:11px}
.dad-hd .t{font-weight:700;font-size:12px}.dad-hd .t span{color:#7fd9cd}
.dad-hd .bell{margin-left:auto;display:flex}
.dad-body{padding:11px;display:flex;flex-direction:column;gap:9px;background:#f6f7f9}
.dad-greet{font-size:12px;font-weight:700;color:#141a24}
.dad-kpis{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.dad-kpi{background:#fff;border:1px solid #ebedf0;border-radius:10px;padding:8px 9px}
.dad-kpi b{display:block;font-family:var(--font-head);font-size:15px;color:#0f766e;line-height:1.1}
.dad-kpi span{font-size:9px;color:#5b6472;font-weight:600}
.dad-card{background:#fff;border:1px solid #ebedf0;border-radius:10px;padding:9px 10px}
.dad-card .h{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#8a91a0;margin-bottom:6px}
.dad-row{display:flex;align-items:center;gap:7px;font-size:10.5px;padding:4px 0;color:#3a4150}
.dad-row .av{width:18px;height:18px;border-radius:50%;background:#e2f3f0;color:#0f766e;font-weight:800;font-size:9px;display:flex;align-items:center;justify-content:center;flex:none}
.dad-row .tm{margin-left:auto;color:#8a91a0;font-weight:600}
.dad-req{display:flex;align-items:center;gap:7px}
.dad-req .cf{margin-left:auto;background:#0f766e;color:#fff;font-size:9px;font-weight:800;border-radius:999px;padding:5px 10px}
.dad-bars{display:flex;align-items:flex-end;gap:5px;height:42px;margin-top:2px}
.dad-bars i{flex:1;background:linear-gradient(#13a594,#0f766e);border-radius:3px 3px 0 0}
.dad-inv{display:flex;justify-content:space-between;font-size:10px;padding:3px 0;color:#3a4150}
.dad-inv b{color:#0f766e}
/* ---- hero phone: scrollable storefront ---- */
.lp-heroscroll{position:absolute;inset:96px 0 0 0;overflow-y:auto;background:#fff;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.lp-heroscroll::-webkit-scrollbar{width:5px}.lp-heroscroll::-webkit-scrollbar-thumb{background:#cdd3da;border-radius:3px}
.lp-heroscroll .dst-hero{height:84px;font-size:13px}
.lp-heroscroll .dpc{padding:9px 13px}
.lp-heroscroll .dpc .th{width:44px;height:40px;font-size:19px}
.lp-heroscroll .dpc .nm{font-size:12.5px}
.lp-heroscroll .dpc .pr{font-size:11.5px}
.lp-heroscroll .dpc .bk{font-size:10.5px;padding:4px 10px}
.lp-hsbook{margin:10px 12px;padding:11px 12px;border:1px solid #cdeee6;background:#f3fbf9;border-radius:13px}
.lp-hsbook-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;color:#141a24}
.lp-hsbook-av{font-size:10.5px;color:#0f766e;font-weight:700;margin:6px 0 9px}
.lp-hsbook-btn{background:linear-gradient(95deg,#0f766e,#13a594);color:#fff;text-align:center;font-family:var(--font-head);font-weight:700;font-size:12px;border-radius:999px;padding:9px}
.lp-hsdone{margin:0 12px 10px;background:#0f766e;color:#fff;text-align:center;font-size:11px;font-weight:700;border-radius:11px;padding:9px}
/* ---- hero phone: interactive storefront app (realistic flow) ---- */
.lp-app{position:absolute;inset:96px 0 0 0;display:flex;flex-direction:column;background:#fff;overflow:hidden}
.lp-app-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}
.lp-app-scroll::-webkit-scrollbar{width:5px}.lp-app-scroll::-webkit-scrollbar-thumb{background:#cdd3da;border-radius:3px}
.lp-anim-in{animation:lpSlideIn .26s ease}
@keyframes lpSlideIn{from{transform:translateX(22px);opacity:.35}to{transform:none;opacity:1}}
.lp-tbar{display:flex;align-items:center;gap:6px;height:42px;padding:0 9px;border-bottom:1px solid #eef0f2;background:#fff;flex:none}
.lp-ttl{font-family:var(--font-head);font-weight:700;font-size:13px;color:#141a24;flex:1;text-align:center}
.lp-tback{width:28px;height:28px;border:none;background:#f3f4f6;border-radius:50%;font-size:19px;line-height:1;cursor:pointer;color:#141a24;flex:none}
.lp-tcart{position:relative;border:none;background:none;font-size:16px;cursor:pointer;width:28px;flex:none}
.lp-tcb{position:absolute;top:-3px;right:-3px;background:#e0a44e;color:#fff;font-size:8px;font-weight:800;font-style:normal;border-radius:999px;min-width:14px;height:14px;display:flex;align-items:center;justify-content:center;padding:0 3px}
.lp-search{margin:10px 11px 2px;display:flex;align-items:center;gap:7px;background:#f3f4f6;border-radius:10px;padding:8px 11px;font-size:11.5px;color:#9aa1ab;font-weight:600}
.lp-chips{display:flex;gap:6px;padding:9px 11px 6px;flex-wrap:wrap}
.lp-chip{border:none;font:inherit;cursor:pointer;font-size:10.5px;font-weight:700;border-radius:999px;padding:5px 11px;background:#eef0f2;color:#5b6472;transition:background .12s,color .12s}
.lp-chip.on{background:#0f766e;color:#fff}
.lp-list{display:flex;flex-direction:column}
.lp-prow{border:none;background:none;font:inherit;cursor:pointer;width:100%;text-align:left;display:flex;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #f0f1f3;transition:background .12s}
.lp-prow:hover,.lp-prow:active{background:#f3fbf9}
.lp-pth{width:44px;height:40px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:20px;flex:none}
.lp-pmeta{flex:1;display:flex;flex-direction:column;min-width:0}
.lp-pmeta b{font-size:12.5px;color:#141a24;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lp-pmeta i{font-size:11.5px;color:#0f766e;font-weight:800;font-style:normal}
.lp-pmeta i u{font-size:9px;color:#8a91a0;font-weight:600;text-decoration:none}
.lp-pmeta s{font-size:9px;color:#8a91a0;text-decoration:none;font-weight:600;margin-top:1px}
.lp-pgo{color:#c5ccd4;font-size:20px;font-weight:700;flex:none}
.lp-dhero{height:118px;display:flex;align-items:center;justify-content:center;font-size:52px;flex:none}
.lp-dbody{padding:13px 15px}
.lp-drow{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.lp-dtitle{font-family:var(--font-head);font-weight:700;font-size:15.5px;color:#141a24}
.lp-dprice{color:#0f766e;font-weight:800;font-size:15px;white-space:nowrap}
.lp-dprice small{font-size:9.5px;color:#8a91a0;font-weight:600;margin-left:1px}
.lp-drate{font-size:10.5px;color:#5b6472;font-weight:600;margin:3px 0 9px}
.lp-drate em{color:#2f6b46;font-style:normal}
.lp-ddesc{font-size:11px;color:#5b6472;line-height:1.5;margin:0 0 13px}
.lp-dlabel{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#8a91a0;margin-bottom:7px}
.lp-dates{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:9px}
.lp-dchip{border:1px solid #e6e8ec;background:#fff;font:inherit;cursor:pointer;font-size:11px;font-weight:700;color:#5b6472;border-radius:9px;padding:7px 9px;transition:all .12s}
.lp-dchip.on{background:#0f766e;border-color:#0f766e;color:#fff}
.lp-dav{font-size:10.5px;color:#0f766e;font-weight:700;margin-bottom:14px}
.lp-qty{display:inline-flex;align-items:center;border:1px solid #e6e8ec;border-radius:10px;overflow:hidden}
.lp-qty button{width:34px;height:32px;border:none;background:#f7f8fa;font-size:16px;cursor:pointer;color:#141a24}
.lp-qty span{min-width:36px;text-align:center;font-weight:700;font-size:13px}
.lp-citem{display:flex;gap:9px;align-items:center;padding:9px 12px;border-bottom:1px solid #f0f1f3}
.lp-cprice{font-family:var(--font-head);font-weight:700;font-size:12.5px;color:#141a24;flex:none}
.lp-deliv{margin:10px 12px;border:1px solid #eef0f2;border-radius:11px;padding:10px 11px}
.lp-dvh{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#8a91a0;margin-bottom:4px}
.lp-dvr{font-size:11.5px;color:#141a24;font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:8px}
.lp-dvedit{border:none;background:none;color:#0f766e;font-weight:700;font-size:11px;cursor:pointer;flex:none}
.lp-sum{margin:0 12px 12px;padding:11px 13px;background:#f7f8fa;border-radius:12px}
.lp-sr{display:flex;justify-content:space-between;font-size:11.5px;color:#3a4150;padding:3px 0}
.lp-sr.tot{border-top:1px solid #e6e8ec;margin-top:4px;padding-top:7px;font-weight:800;font-family:var(--font-head);font-size:13px;color:#141a24}
.lp-sr.dep{color:#0f766e;font-weight:800}
.lp-succ{padding:24px 22px;text-align:center}
.lp-succ-ring{width:62px;height:62px;margin:0 auto 12px}
.lp-succ-ring svg{width:100%;height:100%}
.lp-sc-c{fill:none;stroke:#0f766e;stroke-width:3;stroke-dasharray:145;stroke-dashoffset:145;animation:lpDraw .5s ease forwards}
.lp-sc-p{fill:none;stroke:#0f766e;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:lpDraw .35s .45s ease forwards}
@keyframes lpDraw{to{stroke-dashoffset:0}}
.lp-succ>b{font-family:var(--font-head);font-size:16px;color:#141a24;display:block}
.lp-succ>span{font-size:11px;color:#8a91a0;font-weight:700}
.lp-succ-card{background:#f7f8fa;border-radius:11px;padding:9px 13px;margin:13px 0;text-align:left}
.lp-succ-note{font-size:11px;color:#5b6472;line-height:1.5;margin:0}
.lp-status{margin-left:auto;font-size:9px;font-weight:800;color:#b06a00;background:#fdf2e2;border-radius:999px;padding:3px 8px;white-space:nowrap;flex:none}
.lp-app-nav{display:flex;border-top:1px solid #ebedf0;background:#fff;flex:none}
.lp-app-nav button{flex:1;border:none;background:none;font:inherit;cursor:pointer;font-size:9.5px;font-weight:700;color:#8a91a0;padding:8px 0 9px;display:flex;flex-direction:column;align-items:center;gap:2px;position:relative}
.lp-app-nav button span{font-size:16px}
.lp-app-nav button.on{color:#0f766e}
.lp-nbadge{position:absolute;top:3px;left:calc(50% + 6px);background:#e0a44e;color:#fff;font-size:8px;font-weight:800;font-style:normal;border-radius:999px;min-width:14px;height:14px;display:flex;align-items:center;justify-content:center;padding:0 3px}
.lp-cta{padding:10px 12px;border-top:1px solid #eef0f2;background:#fff;flex:none}
.lp-ctabtn{width:100%;border:none;cursor:pointer;background:linear-gradient(95deg,#0f766e,#13a594);color:#fff;font-family:var(--font-head);font-weight:700;font-size:13px;border-radius:999px;padding:12px;box-shadow:0 8px 18px -10px rgba(15,118,110,.8)}
.lp-ctabtn.ghost{background:#fff;color:#0f766e;border:1.5px solid #cdeee6;box-shadow:none}
.lp-toast2{position:absolute;left:50%;bottom:64px;transform:translateX(-50%);background:#141a24;color:#fff;font-size:11px;font-weight:700;padding:8px 14px;border-radius:999px;z-index:9;box-shadow:0 8px 20px rgba(0,0,0,.25);animation:lpToastIn .25s ease;white-space:nowrap}
.lp-toast2.out{opacity:0;transition:opacity .3s}
@keyframes lpToastIn{from{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%,0)}}
.lp-empty{padding:40px 24px;text-align:center;color:#8a91a0;font-size:30px}
.lp-empty b{display:block;font-size:13px;color:#141a24;margin:9px 0 3px}
.lp-empty span{display:block;font-size:11px;font-weight:500}
.lp-brow{display:flex;gap:9px;align-items:center;padding:10px 12px;border-bottom:1px solid #f0f1f3}

/* --- closing CTA band glow ------------------------------------ */
.cta-band{position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;inset:0;background:radial-gradient(560px 260px at 85% -20%,rgba(255,255,255,.13),transparent 62%);pointer-events:none}
.cta-band>*{position:relative}

/* --- footer finish -------------------------------------------- */
.site-footer{padding:56px 0 30px}
.foot-grid>div{min-width:130px}
.site-footer h4{margin:0 0 .6rem}
.foot-grid a{display:inline-block;padding:.16rem 0;font-size:.9rem;transition:color .15s ease}
.foot-bottom{color:#8a93a0}

/* --- "Built by AI" live showcase ------------------------------ */
.lp-ai{max-width:880px;margin:0 auto}
.lp-ai-prompt{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:.85rem 1.2rem;box-shadow:var(--shadow-sm);font-size:.95rem;color:var(--ink);min-height:56px;max-width:640px;margin:0 auto 16px}
.lp-ai-spark{flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--teal-bright));color:#fff;display:grid;place-items:center;font-size:.95rem}
.lp-ai-text{font-family:var(--font-head);font-weight:500;line-height:1.35;min-height:1.35em}
.lp-ai-caret{flex:0 0 auto;width:2px;height:1.15em;border-radius:1px;background:var(--teal);animation:lpCaret 1s steps(1) infinite}
@keyframes lpCaret{50%{opacity:0}}
.lp-ai-status{display:flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-head);font-weight:600;font-size:.86rem;color:var(--teal-ink);margin:0 auto 18px;opacity:0;transition:opacity .35s ease}
.lp-ai.is-building .lp-ai-status{opacity:1}
.lp-ai-status i{width:140px;height:6px;border-radius:99px;background:linear-gradient(90deg,var(--teal-soft) 0%,var(--teal-bright) 50%,var(--teal-soft) 100%);background-size:200% 100%;animation:lpShimmer 1.1s linear infinite}
@keyframes lpShimmer{to{background-position:-200% 0}}
.lp-ai-frame{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 34px 70px -34px rgba(20,26,36,.35);opacity:0;transform:translateY(26px) scale(.985);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}
.lp-ai.is-built .lp-ai-frame{opacity:1;transform:none}
.lp-ai-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:var(--surface-2);border-bottom:1px solid var(--line)}
.lp-ai-bar>i{width:10px;height:10px;border-radius:50%;background:#e3ded6;display:block;flex:0 0 auto}
.lp-ai-url{display:inline-flex;align-items:center;gap:6px;margin:0 auto;font-size:12px;font-weight:600;color:#5f6a76;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 14px;line-height:1}
.lp-ai-url svg{flex:0 0 auto;color:var(--teal)}
.lp-ai-live{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ok);flex:0 0 auto}
.lp-ai-live em{width:7px;height:7px;border-radius:50%;background:var(--ok);animation:lpPulse 1.8s ease-in-out infinite}
@keyframes lpPulse{0%,100%{box-shadow:0 0 0 0 rgba(47,107,70,.35)}50%{box-shadow:0 0 0 5px rgba(47,107,70,0)}}
.lp-ai-embed{position:relative;height:580px;background:var(--surface-2)}
.lp-ai-embed iframe{display:block;width:100%;height:100%;border:0;background:#fff}
@media(max-width:640px){.lp-ai-embed{height:540px}.lp-ai-prompt{font-size:.88rem}}
.lp-ai-fallback{position:absolute;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;background:linear-gradient(180deg,#fff,var(--surface-2));padding:30px}
.lp-ai.is-fallback .lp-ai-fallback{display:flex}
.lp-ai.is-fallback iframe{visibility:hidden}
.lp-ai-fallback svg{width:min(340px,80%);height:auto;border-radius:14px;box-shadow:var(--shadow-sm)}
.lp-ai-fallback p{margin:0;font-size:.9rem;color:var(--slate);max-width:38ch}
.lp-ai-cap{text-align:center;font-size:.92rem;color:var(--slate);margin:18px auto 0;max-width:64ch}
.lp-ai-cap strong{color:var(--ink)}
.lp-ai-ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:20px}
@media(prefers-reduced-motion:reduce){
  .lp-ai-caret,.lp-ai-status i,.lp-ai-live em{animation:none}
  .lp-ai-frame{transition:none}
}

/* ============================================================
   LANDING v5 — visual-audit precision pass (ADDITIVE, lp- scoped).
   Moon badge / toast geometry live in the v3 block above; this
   layer covers the trust strip, manifesto contrast, pricing-swap
   height parity and the mobile sweep.
   ============================================================ */

/* --- trust strip: decorative social-proof, NOT navigation ------ */
.lp-trust-band{padding:16px 0}
.lp-trust-row{gap:10px 22px}
.lp-trust-label{font-family:var(--font-head);font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--slate);opacity:.8;margin-right:6px}
.lp-trust-band .lp-trust-tag{font-size:.8rem;color:var(--slate);cursor:default;opacity:.85}
.lp-trust-band .lp-trust-tag svg{width:16px;height:16px;color:var(--slate);opacity:.7}
.lp-trust-band .lp-trust-tag b{color:var(--slate);font-weight:600}

/* --- manifesto band: strong ink on cream (AA) ------------------ */
.lp-manifesto{color:var(--ink)}
.lp-community .muted{color:#454e5b}

/* --- pricing swap: zero layout jump, no ghost rows -------------
   .lp-save needs an explicit base display (it previously relied on
   the yearly override); monthly pills/notes in the card headers
   mirror the yearly ones so the dark header never changes height. */
.lp-save{display:inline-flex}
.price-top .lp-save,.price-top .lp-yrnote{position:relative;z-index:1}

/* --- mobile sweep ---------------------------------------------- */
@media(max-width:640px){
  .foot-grid{flex-direction:column;gap:26px}
  .foot-bottom{flex-direction:column;gap:4px}
}
@media(max-width:480px){
  .hero-cta .btn{width:100%;justify-content:center}
  .lp-ai-ctas .btn{width:100%;justify-content:center}
}
/* ---- founding-member scarcity ---- */
.lp-founding{background:linear-gradient(120deg,#0d2e2b,#0f766e);color:#fff;padding:22px 0}
.lp-founding-in{display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.lp-founding-l{flex:1;min-width:280px}
.lp-founding-badge{display:inline-block;background:rgba(255,255,255,.15);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:4px 11px;margin-bottom:7px}
.lp-founding-l b{display:block;font-family:var(--font-head);font-size:1.15rem;margin-bottom:3px}
.lp-founding-l .muted{color:#bfe6df;font-size:.92rem}
.lp-founding-r{display:flex;flex-direction:column;gap:7px;min-width:210px}
.lp-founding-bar{height:8px;border-radius:999px;background:rgba(255,255,255,.2);overflow:hidden}
.lp-founding-bar i{display:block;height:100%;background:linear-gradient(90deg,#5eead4,#13a594);border-radius:999px}
.lp-founding-count{font-size:.85rem;color:#dff3ef}.lp-founding-count b{color:#fff}
.lp-founding-r .btn{align-self:flex-start}
@media(max-width:760px){.lp-founding-r .btn{align-self:stretch;text-align:center}}
/* ---- rating + wall of love ---- */
.lp-rating{display:flex;align-items:center;gap:10px;justify-content:center;margin-top:10px;flex-wrap:wrap}
.lp-stars{color:#e0a44e;letter-spacing:2px;font-size:1.1rem}
.lp-rating b{font-family:var(--font-head);font-size:1.05rem}
.lp-wall{columns:3 260px;column-gap:18px;margin-top:30px}
@media(max-width:900px){.lp-wall{columns:2 240px}}
@media(max-width:560px){.lp-wall{columns:1}}
.lp-tcard{break-inside:avoid;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;margin:0 0 18px;box-shadow:var(--shadow-sm)}
.lp-tstars{color:#e0a44e;letter-spacing:1px;font-size:.9rem;margin-bottom:8px}
.lp-tcard p{font-size:.95rem;color:#2c3340;margin:0 0 14px;line-height:1.5}
.lp-twho{display:flex;align-items:center;gap:10px}
.lp-tav{width:38px;height:38px;border-radius:50%;background:var(--teal-soft);color:var(--teal);font-weight:800;font-family:var(--font-head);display:flex;align-items:center;justify-content:center;flex:none}
.lp-tn{font-weight:700;font-size:.9rem}.lp-tb{font-size:.8rem;color:var(--slate)}
/* ---- case study ---- */
.lp-case{display:grid;grid-template-columns:1fr 1.3fr;gap:0;align-items:stretch;margin-top:34px;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}
@media(max-width:760px){.lp-case{grid-template-columns:1fr}}
.lp-case-media{background:linear-gradient(150deg,#0e3b38,#13a594);min-height:230px;display:flex;align-items:center;justify-content:center;font-size:80px}
.lp-case-body{padding:26px 28px}
.lp-case-body h3{font-size:1.4rem;margin:.3rem 0 .6rem}
.lp-case-body p{color:var(--slate)}
.lp-case-stats{display:flex;gap:22px;margin:16px 0 18px;flex-wrap:wrap}
.lp-case-stats b{display:block;font-family:var(--font-head);font-size:1.5rem;color:var(--teal);line-height:1.1}
.lp-case-stats span{font-size:.82rem;color:var(--slate)}
