/* Home page (landing) styles. Scoped to .lp so no other page changes. Nov 2 2026.
   Spacing scale: 4 8 12 16 24 32 48 72 96. Sky #29b6f6 with navy #062033 text on sky. No orange, no yellow. */
.lp{--sky:#29b6f6;--navy:#062033;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:72px;--s9:96px;--maxw:1160px;padding:0 0 var(--s7)}
.lp-wrap{max-width:var(--maxw);margin:0 auto;padding-left:20px;padding-right:20px}
.lp h1,.lp h2,.lp h3{letter-spacing:-.015em;text-wrap:balance}
.lp h2{font-size:clamp(1.6rem,3.6vw,2.4rem);line-height:1.15;margin:0 0 var(--s4);text-align:center;font-weight:800}
.lp h3{font-size:1.12rem;line-height:1.3;margin:0 0 var(--s2);font-weight:800}
.lp p{margin:0 0 var(--s4)}
.lp-sec{padding-top:var(--s8);padding-bottom:0}
.lp-kicker{display:block;text-align:center;color:var(--sky);font-weight:800;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;margin:0 0 var(--s3)!important}
.lp-small{font-size:.88rem;color:var(--muted)}
.lp-center{text-align:center}
.lp-h-sm{font-size:1.3rem!important}
.lp a:focus-visible,.lp summary:focus-visible{outline:2px solid #fff;outline-offset:3px;border-radius:6px}

/* Buttons: 36px visual, 44px tap area */
.lp-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 16px;border-radius:10px;font-weight:700;font-size:.92rem;line-height:1;white-space:nowrap;text-decoration:none;color:var(--text);background:rgba(var(--card-rgb),.85);border:1px solid rgba(var(--accent-rgb),.45);transition:background-color .15s,border-color .15s,filter .15s}
.lp-btn::after{content:'';position:absolute;inset:-4px}
.lp-btn svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.lp-btn-sky{background:var(--sky);color:var(--navy);border-color:var(--sky);font-weight:800}
@media (hover:hover){.lp-btn:hover{border-color:var(--sky);background:rgba(var(--accent-rgb),.12)}.lp-btn-sky:hover{background:var(--sky);filter:brightness(1.08)}}
.lp-ctas{display:flex;flex-wrap:wrap;gap:var(--s3);margin:var(--s5) 0 var(--s4)}
.lp-center-row{justify-content:center}
.lp-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:700;color:var(--sky);text-decoration:none}
.lp-link span{transition:transform .15s}
@media (hover:hover){.lp-link:hover span{transform:translateX(3px)}}

/* Cards */
.lp-card{background:rgba(var(--card-rgb),.84);border:1px solid rgba(var(--accent-rgb),.24);border-radius:16px;padding:var(--s5);box-shadow:0 0 0 1px rgba(var(--accent-rgb),.04),0 10px 30px -18px rgba(0,0,0,.9),0 1px 0 rgba(255,255,255,.04) inset;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.lp-card p{color:var(--muted)}
.lp-card p:last-child{margin-bottom:0}

/* Hero */
.lp-hero{display:grid;grid-template-columns:1fr;gap:var(--s7);align-items:center;padding-top:var(--s7);padding-bottom:var(--s4)}
.lp-hero-copy{text-align:center}
.lp-eyebrow{display:inline-block;margin:0 0 var(--s4)!important;padding:6px 12px;border-radius:999px;border:1px solid rgba(var(--accent-rgb),.4);background:rgba(var(--accent-rgb),.08);color:#cfe9fb;font-size:.8rem;font-weight:700}
.lp-hero h1{font-size:clamp(2.1rem,6vw,3.6rem);line-height:1.06;margin:0 0 var(--s4);font-weight:850}
.lp-hl{color:var(--sky)}
.lp-sub{color:#c3cde3;font-size:clamp(1.02rem,1.8vw,1.18rem);line-height:1.6;max-width:620px;margin-left:auto!important;margin-right:auto!important}
.lp-checks{list-style:none;padding:0;margin:0 auto var(--s2);display:inline-flex;flex-direction:column;gap:var(--s2);text-align:left}
.lp-checks li{display:flex;align-items:center;gap:10px;font-weight:600}
.lp-checks svg,.lp-badge svg{width:20px;height:20px;flex:none;padding:3px;border-radius:50%;background:rgba(var(--accent-rgb),.18);fill:none;stroke:var(--sky);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.lp-hero .lp-ctas{justify-content:center}
.lp-offer{color:var(--muted);font-size:.95rem}
.lp-offer strong{color:var(--text)}
.lp-hero-media{position:relative;display:flex;justify-content:center;align-items:flex-end;min-height:0}
.lp-hero-media .lp-phone-front{width:min(300px,68vw);z-index:2}
.lp-hero-media .lp-phone-back{position:absolute;width:min(250px,56vw);left:50%;bottom:26px;transform:translateX(-96%) rotate(-6deg);opacity:.92;z-index:1}
.lp-hero-media .lp-phone-front{transform:translateX(22%)}
.lp-hero-media::before{content:'';position:absolute;inset:10% 5% 0;background:radial-gradient(closest-side,rgba(41,182,246,.35),transparent);filter:blur(30px);z-index:0}
@media (min-width:960px){
  .lp-hero{grid-template-columns:1.05fr .95fr;gap:var(--s6);padding-top:var(--s8)}
  .lp-hero-copy{text-align:left}
  .lp-sub{margin-left:0!important}
  .lp-hero .lp-ctas{justify-content:flex-start}
  .lp-checks{display:flex}
  .lp-hero-media .lp-phone-front{width:310px}
  .lp-hero-media .lp-phone-back{width:260px}
}

/* Device frames */
.lp-phone{margin:0;position:relative;width:min(300px,76vw);padding:7px;border-radius:40px;background:linear-gradient(160deg,#2a3550,#0b1120 45%,#1b2438);border:1px solid rgba(var(--accent-rgb),.35);box-shadow:0 30px 60px -28px rgba(0,0,0,.95),0 0 40px -14px rgba(var(--accent-rgb),.55),inset 0 0 0 1px rgba(255,255,255,.06)}
.lp-phone img{display:block;width:100%;height:auto;aspect-ratio:600/1298;border-radius:33px;border:0;box-shadow:none;margin:0;background:#05070d}
.lp-phone-sm{width:min(250px,62vw)}
.lp-browser{margin:0 auto var(--s6);max-width:1040px;border-radius:14px;overflow:hidden;border:1px solid rgba(var(--accent-rgb),.35);background:#0b1120;box-shadow:0 40px 80px -40px rgba(0,0,0,.95),0 0 50px -20px rgba(var(--accent-rgb),.55)}
.lp-browser-bar{display:flex;align-items:center;gap:7px;height:34px;padding:0 14px;background:#121a2c;border-bottom:1px solid rgba(var(--accent-rgb),.18)}
.lp-browser-bar span{width:10px;height:10px;border-radius:50%;background:#3a4663}
.lp-browser-bar em{font-style:normal;font-size:.75rem;color:var(--muted);margin-left:12px;padding:3px 12px;border-radius:6px;background:rgba(255,255,255,.05)}
.lp-browser img{display:block;width:100%;height:auto;aspect-ratio:1600/975;border:0;border-radius:0;box-shadow:none;margin:0}

/* Steps */
.lp-steps{list-style:none;padding:0;margin:var(--s6) 0 0;display:grid;gap:var(--s4);grid-template-columns:1fr}
.lp-steps li{position:relative;padding-top:var(--s6)}
.lp-step-n{position:absolute;top:-16px;left:var(--s5);width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:var(--sky);color:var(--navy);font-weight:900}
@media (min-width:760px){.lp-steps{grid-template-columns:repeat(3,1fr);gap:var(--s5)}}

/* Video */
.lp-video{display:grid;gap:var(--s6);align-items:center;grid-template-columns:1fr}
.lp-video-copy{text-align:center;max-width:560px;margin:0 auto}
.lp-video-copy p{color:var(--muted)}
.lp-video-frame{margin:0 auto;width:min(360px,86vw);padding:7px;border-radius:24px;background:linear-gradient(160deg,#2a3550,#0b1120 45%,#1b2438);border:1px solid rgba(var(--accent-rgb),.35);box-shadow:0 30px 60px -28px rgba(0,0,0,.95),0 0 40px -14px rgba(var(--accent-rgb),.55)}
.lp-video-frame video{display:block;width:100%;height:auto;aspect-ratio:9/16;border-radius:18px;background:#0b0f14;object-fit:cover}
@media (min-width:860px){.lp-video{grid-template-columns:1fr 1fr}.lp-video-copy{text-align:left;margin:0}.lp-video-copy .lp-kicker,.lp-video-copy h2{text-align:left}}

/* Feature rows */
.lp-feature{display:grid;grid-template-columns:1fr;gap:var(--s6);align-items:center;padding-top:var(--s8)}
.lp-feature > .lp-phone,.lp-pair{justify-self:center}
.lp-feature-copy p{color:#c3cde3;font-size:1.05rem}
.lp-feature-copy .lp-kicker,.lp-feature-copy h2{text-align:left}
.lp-list,.lp-numbered{padding:0;margin:0 0 var(--s4);display:grid;gap:var(--s3)}
.lp-list{list-style:none}
.lp-list li{position:relative;padding-left:28px;color:var(--muted)}
.lp-list li::before{content:'';position:absolute;left:0;top:.3em;width:18px;height:18px;border-radius:50%;background:rgba(var(--accent-rgb),.18) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4L18 8' fill='none' stroke='%2329b6f6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.lp-list strong,.lp-numbered strong{color:var(--text)}
.lp-numbered{list-style:none;counter-reset:n}
.lp-numbered li{counter-increment:n;position:relative;padding-left:40px;color:var(--muted);min-height:28px}
.lp-numbered li::before{content:counter(n);position:absolute;left:0;top:-1px;width:28px;height:28px;display:grid;place-items:center;border-radius:8px;border:1px solid rgba(var(--accent-rgb),.5);color:var(--sky);font-weight:800;font-size:.9rem}
.lp-pair{display:flex;align-items:flex-end;justify-content:center;gap:0}
.lp-pair .lp-phone{width:min(270px,52vw)}
.lp-pair .lp-phone-sm{width:min(220px,42vw);margin-left:-8%;margin-bottom:-12px;z-index:0}
.lp-pair .lp-phone:not(.lp-phone-sm){z-index:1}
.lp-flip .lp-pair .lp-phone-sm{order:2;margin-left:-8%}
.lp-feature:not(.lp-flip) .lp-pair .lp-phone-sm{order:0;margin-left:0;margin-right:-8%}
@media (min-width:900px){
  .lp-feature{grid-template-columns:1fr 1fr;gap:var(--s7)}
  .lp-flip .lp-feature-copy{order:2}
  .lp-pair .lp-phone{width:290px}
  .lp-pair .lp-phone-sm{width:235px}
}

/* RP */
.lp-rp{display:grid;grid-template-columns:1fr;gap:var(--s6);padding:var(--s6);border-color:rgba(var(--accent-rgb),.45)}
.lp-rp .lp-kicker,.lp-rp h2{text-align:left}
.lp-rp p{color:#c3cde3}
.lp-mini-steps{list-style:none;padding:0;margin:0 0 var(--s5);display:grid;gap:var(--s2)}
.lp-mini-steps li{display:flex;align-items:center;gap:var(--s3);font-weight:600}
.lp-mini-steps span{flex:none;width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:rgba(var(--accent-rgb),.16);color:var(--sky);font-weight:800;font-size:.85rem}
.lp-compare{align-self:center;padding:var(--s5);border-radius:14px;background:rgba(var(--bg-rgb),.55);border:1px solid rgba(var(--accent-rgb),.2)}
.lp-compare-h{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)!important;font-weight:800}
.lp-compare-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s4);padding:var(--s3) 0;border-bottom:1px solid rgba(var(--accent-rgb),.14)}
.lp-compare-row strong{font-size:1.5rem}
.lp-compare-us span{font-weight:800;color:var(--sky)}
.lp-compare-us strong{color:var(--sky)}
.lp-compare .lp-small{margin-top:var(--s3)}
@media (min-width:900px){.lp-rp{grid-template-columns:1.4fr 1fr;padding:var(--s7)}}

/* Coaches */
.lp-coach{margin-top:var(--s8);padding:var(--s8) 0;background:linear-gradient(180deg,rgba(6,32,51,.0),rgba(6,32,51,.75) 12%,rgba(6,32,51,.75) 88%,rgba(6,32,51,0));border-top:1px solid rgba(var(--accent-rgb),.12);border-bottom:1px solid rgba(var(--accent-rgb),.12)}
.lp-coach-head{text-align:center;max-width:760px;margin:0 auto var(--s6)}
.lp-grid3{list-style:none;padding:0;margin:0 0 var(--s6);display:grid;gap:var(--s4);grid-template-columns:1fr}
.lp-grid3 svg{width:28px;height:28px;margin-bottom:var(--s3);fill:none;stroke:var(--sky);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media (min-width:640px){.lp-grid3{grid-template-columns:repeat(2,1fr)}}
@media (min-width:980px){.lp-grid3{grid-template-columns:repeat(3,1fr)}}
.lp-tiers{text-align:center}
.lp-tiers-h{font-weight:800;font-size:1.1rem}
.lp-tiers ul{list-style:none;padding:0;margin:0 auto var(--s4);display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s2);max-width:960px}
.lp-tiers li{display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:64px;padding:var(--s2) var(--s3);border-radius:12px;border:1px solid rgba(var(--accent-rgb),.3);background:rgba(var(--card-rgb),.8)}
.lp-tiers li span{font-size:.8rem;color:var(--muted)}
@media (min-width:700px){.lp-tiers ul{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1000px){.lp-tiers ul{grid-template-columns:repeat(6,1fr)}}

/* Goals */
.lp-goals{display:grid;gap:var(--s4);grid-template-columns:1fr;margin:var(--s6) 0 var(--s4)}
.lp-goal{display:block;text-align:center;text-decoration:none;color:var(--text);transition:border-color .15s,transform .15s}
.lp-goal h3{color:var(--sky)}
.lp-goal-art{display:block;margin:0 auto var(--s3);fill:none;stroke:var(--sky);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
@media (hover:hover){.lp-goal:hover{border-color:rgba(var(--accent-rgb),.6);transform:translateY(-2px)}}
@media (min-width:760px){.lp-goals{grid-template-columns:repeat(3,1fr)}}

/* Pricing */
.lp-prices{display:grid;gap:var(--s4);grid-template-columns:1fr;margin:var(--s6) 0 var(--s5);align-items:stretch}
.lp-price{position:relative;text-align:center;display:flex;flex-direction:column}
.lp-price h3{font-size:1.2rem}
.lp-price-big{margin:var(--s2) 0 var(--s1)!important;color:var(--text)!important;display:flex;align-items:baseline;justify-content:center;gap:4px}
.lp-price-big strong{font-size:2.6rem;line-height:1;font-weight:850}
.lp-price-big span{color:var(--muted);font-weight:600}
.lp-price-big .lp-from{font-size:.9rem;margin-right:4px}
.lp-price-alt{color:#c3cde3!important;margin-bottom:var(--s2)!important}
.lp-ticks{list-style:none;padding:var(--s4) 0 0;margin:auto 0 0;border-top:1px solid rgba(var(--accent-rgb),.14);display:grid;gap:var(--s2);text-align:left}
.lp-ticks li{position:relative;padding-left:26px}
.lp-ticks li::before{content:'';position:absolute;left:0;top:.2em;width:18px;height:18px;border-radius:50%;background:rgba(var(--accent-rgb),.18) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4L18 8' fill='none' stroke='%2329b6f6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.lp-price-feat{border-color:var(--sky);box-shadow:0 0 0 1px rgba(41,182,246,.5),0 20px 50px -24px rgba(41,182,246,.55)}
.lp-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:6px;margin:0!important;padding:4px 12px 4px 6px;border-radius:999px;background:var(--sky);color:var(--navy)!important;font-weight:800;font-size:.78rem;white-space:nowrap}
.lp-badge svg{background:rgba(6,32,51,.15);stroke:var(--navy)}
@media (min-width:860px){.lp-prices{grid-template-columns:repeat(3,1fr)}}

/* FAQ */
.lp-faq-list{max-width:820px;margin:var(--s6) auto var(--s4);display:grid;gap:var(--s3)}
.lp-faq details{background:rgba(var(--card-rgb),.84);border:1px solid rgba(var(--accent-rgb),.22);border-radius:14px}
.lp-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:var(--s4);min-height:52px;padding:var(--s3) var(--s5);font-weight:700}
.lp-faq summary::-webkit-details-marker{display:none}
.lp-faq summary::after{content:'';flex:none;width:12px;height:12px;border-right:2.5px solid var(--sky);border-bottom:2.5px solid var(--sky);transform:rotate(45deg) translate(-3px,-3px);transition:transform .2s}
.lp-faq details[open] summary::after{transform:rotate(225deg) translate(-3px,-3px)}
.lp-faq details p{margin:0;padding:0 var(--s5) var(--s5);color:var(--muted)}

/* Explore */
.lp-explore ul{list-style:none;padding:0;margin:var(--s4) auto 0;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s2);max-width:900px}
.lp-explore a{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--s4);border-radius:10px;border:1px solid rgba(var(--accent-rgb),.25);background:rgba(var(--card-rgb),.7);color:var(--text);text-decoration:none;font-weight:600;font-size:.92rem}
@media (hover:hover){.lp-explore a:hover{border-color:var(--sky);color:var(--sky)}}

/* Final CTA */
.lp-final{text-align:center;padding:var(--s7) var(--s5);border-color:rgba(var(--accent-rgb),.5);background:radial-gradient(ellipse at 50% 0%,rgba(41,182,246,.16),transparent 60%),rgba(var(--card-rgb),.88)}
.lp-final img{display:block;margin:0 auto var(--s4);width:200px;height:auto}
.lp-final p{max-width:560px;margin-left:auto;margin-right:auto;color:#c3cde3}

/* Subtle reveal (JS adds .lp-js; nothing hides without JS; off for reduced motion) */
@media (prefers-reduced-motion:no-preference){
  .lp-js .lp-rv{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
  .lp-js .lp-rv.lp-in{opacity:1;transform:none}
}
@media (max-width:420px){.lp-btn{padding:0 14px}.lp-ctas .lp-btn{flex:1 1 100%}.lp-rp{padding:var(--s5)}}
