/* Public page. Builds on Rewivara's original paper/coral/time-of-day palette.
   Variable-length preview content stays in normal flow. See HOMEPAGE-DESIGN.md. */
.landing-v3 {
  --lp-paper: var(--canvas);
  --lp-surface: var(--surface);
  --lp-ink: var(--ink);
  --lp-muted: var(--ink-2);
  --lp-line: var(--hair);
  --lp-soft: var(--surface-2);
  background: var(--lp-paper);
  color: var(--lp-ink);
  font-size: 1rem;
  line-height: 1.65;
}
.landing-v3 *, .landing-v3 *::before, .landing-v3 *::after { box-sizing: border-box; }
.landing-v3 :where(h1,h2,h3,p) { margin-top: 0; }
.landing-v3 :is(h1,h2,h3) { text-wrap: balance; }
.landing-v3 a { color: inherit; }
.landing-v3 .skip-link { background: var(--lp-ink); color: var(--lp-paper); }
.landing-v3 :is(a,button,summary):focus-visible { outline: 3px solid var(--accent); outline-offset: 5px; }
.landing-v3 .lp-container { width: min(1280px, calc(100% - 7rem)); margin-inline: auto; }
.landing-v3 .lp-header { border-bottom: 1px solid var(--lp-line); }
.landing-v3 .lp-nav { display: flex; height: auto; min-height: 6.25rem; align-items: center; gap: 2.5rem; padding-block: 1rem; }
.landing-v3 .wordmark { color: var(--lp-ink); font-size: 2.75rem; letter-spacing: -.15rem; }
.landing-v3 .wordmark>span { color: var(--accent); }
.landing-v3 .lp-nav-links { display: flex; gap: 2rem; margin-left: auto; }
.landing-v3 .lp-nav-links a, .landing-v3 .lp-signin { display: inline-flex; align-items: center; min-height: 2.75rem; text-decoration: none; font-size: .875rem; }
.landing-v3 .lp-nav-links a:hover, .landing-v3 .lp-signin:hover { text-decoration: underline; text-underline-offset: .3rem; }
.landing-v3 .lp-nav-actions { display: flex; align-items: center; gap: 1.5rem; }
.landing-v3 .lp-cta { display: inline-flex; justify-content: center; align-items: center; gap: 1.2rem; min-height: 3.5rem; padding: .85rem 1.5rem; border: 1px solid var(--lp-ink); border-radius: .55rem; background: var(--lp-ink); color: var(--lp-paper); font-size: .9375rem; font-weight: 600; line-height: 1.4; text-decoration: none; transition: background .16s, border-color .16s; }
.landing-v3 .lp-cta:hover { background: var(--accent); border-color: var(--accent); color: var(--accent-ink); }
.landing-v3 .lp-cta svg { width: 1.2rem; height: 1.2rem; }
.landing-v3 .lp-nav-cta { min-height: 2.8rem; padding: .65rem 1rem; font-size: .8125rem; gap: .75rem; }
.landing-v3 .lp-hero { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: 5rem; padding-block: 4.5rem 5.5rem; }
.lp-eyebrow { color: var(--lp-muted); font-size: .6875rem; line-height: 1.8; letter-spacing: .12em; font-weight: 500; margin-bottom: 1.5rem; }
.landing-v3 .lp-hero h1 { font: 700 clamp(3.25rem,6.2vw,5.75rem)/.99 var(--display); letter-spacing: -.055em; margin: 0 0 1.7rem; text-wrap: initial; }
.landing-v3 .lp-hero h1>span { display: block; color: var(--accent); }
.lp-hero-lede { max-width: 33ch; margin: 0; color: var(--lp-muted); font-size: 1.125rem; line-height: 1.85; }
.lp-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .65rem 1.25rem; margin-top: 1.8rem; }
.lp-invite-note { margin: 1rem 0 0; color: var(--lp-muted); font-size: .75rem; line-height: 1.8; }
.lp-hero-platforms { display: flex; align-items: center; flex-wrap: wrap; gap: .65rem 1.25rem; margin-top: 1.8rem; color: var(--lp-muted); font-size: .75rem; }
.lp-hero-platforms>span { display: inline-flex; align-items: center; gap: .4rem; }
.lp-hero-platforms svg { width: 1rem; height: 1rem; }
.lp-platform-icon { display: block; flex: none; }
.landing-v3 :is(#product,#how,#questions,#difference,#restart-example) { scroll-margin-top: 1.5rem; }
.lp-product { min-width: 0; }
.landing-v3 .lp-preview { min-width: 0; padding: 0; border: 0; background: transparent; box-shadow: none; transform: none; }
.lp-preview-chrome { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; flex-wrap: wrap; padding-bottom: 1rem; border-bottom: 1px solid var(--lp-line); }
.lp-sample-label { color: var(--lp-muted); font-size: .625rem; letter-spacing: .08em; }
.lp-preview-stamp { color: var(--accent); font-size: .75rem; }
.lp-demo-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; padding: .5rem 0; border-bottom: 1px solid var(--lp-line); }
.lp-demo-tabs button { display: flex; justify-content: center; align-items: center; gap: .5rem; min-width: 0; min-height: 2.75rem; padding: .55rem .25rem; border-bottom: 2px solid transparent; color: var(--lp-muted); font-size: .875rem; line-height: 1.4; }
.lp-demo-tabs button[aria-selected="true"] { border-color: var(--accent); color: var(--lp-ink); }
.lp-demo-tabs svg { width: 1.1rem; height: 1.1rem; }
.lp-demo-panel { padding-top: 1.7rem; }
.lp-demo-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: 0 0 1.4rem; }
.lp-demo-heading>div { min-width: 0; }
.lp-demo-heading p { color: var(--lp-muted); font-size: .625rem; letter-spacing: .1em; margin-bottom: .5rem; }
.landing-v3 .lp-demo-heading h3 { font: 650 2.75rem/1.1 var(--display); letter-spacing: -.045em; margin: 0; }
.lp-demo-heading h3>span { color: var(--accent); }
.lp-demo-heading>.ui-icon { width: 3rem; height: 3rem; color: var(--accent); stroke-width: 1.3; }
.lp-preview-habits { display: grid; gap: .8rem; }
.landing-v3 .lp-demo-habit { display: flex; align-items: center; gap: 1rem; width: 100%; margin: 0; padding: 1.25rem 1.4rem; border-radius: .75rem; background: var(--morning); color: var(--morning-ink); transform: none; transition: box-shadow .16s; }
.landing-v3 .lp-period-midday { background: var(--midday); color: var(--midday-ink); }
.landing-v3 .lp-period-evening { background: var(--evening); color: var(--evening-ink); }
.landing-v3 .lp-demo-habit:hover { box-shadow: inset 0 0 0 1px currentColor; }
.lp-habit-symbol svg { width: 1.5rem; height: 1.5rem; stroke-width: 1.4; }
.lp-habit-text { display: grid; gap: .25rem; min-width: 0; flex: 1; }
.lp-habit-text>small { font-size: .6875rem; }
.lp-habit-text>strong { font: 600 1.375rem/1.25 var(--display); letter-spacing: -.025em; }
.lp-habit-text>span { font-size: .75rem; line-height: 1.6; }
.landing-v3 .lp-habit-check { display: grid; place-items: center; width: 1.75rem; height: 1.75rem; flex: none; border: 1px solid currentColor; color: inherit; background: transparent; border-radius: .5rem; }
.lp-habit-check .ui-icon { width: 1.2rem; height: 1.2rem; opacity: 0; }
.lp-demo-habit.done .lp-habit-check .ui-icon { opacity: 1; }
.lp-demo-habit.done .lp-habit-text>strong { text-decoration: line-through; text-decoration-thickness: 1px; }
.landing-v3 .lp-demo-progress { padding: 1.5rem 0 0; gap: .65rem; color: var(--lp-muted); font-size: .75rem; }
.landing-v3 .lp-demo-progress b { color: var(--lp-ink); }
.landing-v3 .preview-track { background: var(--lp-line); height: .3rem; }
.landing-v3 .preview-track i { background: var(--accent); }
.lp-demo-note { display: flex; align-items: center; justify-content: flex-end; gap: .6rem; color: var(--lp-muted); font-size: .75rem; line-height: 1.7; margin: 1rem 0 0; }
.lp-demo-note svg { width: 1rem; height: 1rem; }
.lp-preview-foot { display: flex; align-items: flex-start; gap: .5rem; border-top: 1px solid var(--lp-line); margin-top: 1.4rem; padding-top: 1rem; color: var(--lp-muted); font-size: .6875rem; line-height: 1.7; }
.lp-preview-foot svg { width: 1rem; height: 1rem; margin-top: .1rem; }
.lp-demo-feelings { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; margin-bottom: 1rem; }
.lp-demo-feelings>div { padding: 1rem; border: 1px solid var(--lp-line); border-radius: .6rem; }
.lp-demo-feelings span { color: var(--lp-muted); font-size: .75rem; }
.lp-demo-feelings strong { display: block; margin-top: .5rem; font: 600 1.125rem/1.4 var(--display); }
.lp-sample-history { margin-bottom: 1rem; overflow-wrap: anywhere; }
.lp-sample-history>span { color: var(--lp-muted); font-size: .625rem; letter-spacing: .07em; }
.lp-sample-history>div { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .4rem; margin-top: .6rem; }
.lp-sample-history>div>span { padding: .6rem .25rem; border: 1px solid var(--lp-line); border-radius: .35rem; text-align: center; color: var(--lp-muted); font-size: .625rem; }
.lp-sample-history>div>.is-complete { background: var(--morning); color: var(--morning-ink); border-color: var(--morning); }
.lp-sample-history strong { display: block; font-size: .625rem; font-weight: 500; margin-top: .25rem; }
.lp-sample-history>p { color: var(--lp-muted); font-size: .6875rem; margin: .6rem 0 0; }
.lp-demo-entry { padding: 1.5rem; border-radius: .75rem; color: var(--evening-ink); background: var(--evening); }
.lp-demo-entry>span { font-size: .6875rem; letter-spacing: .08em; }
.lp-demo-entry p { font-size: 1rem; line-height: 1.9; margin: 1rem 0 0; }
.lp-context-chips { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1.25rem; }
.lp-context-chips span { display: inline-flex; align-items: center; gap: .4rem; padding: .4rem .6rem; border: 1px solid var(--lp-line); border-radius: .4rem; color: var(--lp-muted); font-size: .75rem; }
.lp-context-chips svg { width: 1rem; height: 1rem; }
.lp-demo-message { background: var(--midday); color: var(--midday-ink); border-radius: .7rem .7rem .15rem .7rem; padding: 1rem 1.25rem; max-width: 92%; margin: 0 0 1rem auto; font-size: .9375rem; }
.lp-demo-reply { padding: 1.4rem; background: var(--lp-soft); border-radius: .7rem .7rem .7rem .15rem; }
.lp-demo-reply>span { display: flex; align-items: center; gap: .4rem; font-size: .6875rem; letter-spacing: .06em; }
.lp-demo-reply svg { width: 1rem; height: 1rem; }
.lp-demo-reply p { font-size: .9375rem; line-height: 1.85; margin: .9rem 0 0; }
.lp-demo-prompts { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.lp-demo-prompts button { display: inline-flex; align-items: center; gap: .5rem; min-height: 2.75rem; padding: .6rem .8rem; border: 1px solid var(--lp-line); border-radius: .45rem; font-size: .75rem; }
.lp-demo-prompts button:hover { background: var(--lp-soft); }
.lp-demo-prompts svg { width: 1rem; height: 1rem; }
.landing-v3 .lp-how { background: var(--evening); color: var(--evening-ink); padding-block: 4.5rem; }
.lp-how-layout { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 5rem; }
.lp-how .lp-eyebrow { color: inherit; }
.landing-v3 .lp-section-heading h2, .landing-v3 .lp-mobile h2, .landing-v3 .lp-faq h2 { font: 600 clamp(2.25rem,3.8vw,3.5rem)/1.08 var(--display); letter-spacing: -.04em; margin-bottom: 1.25rem; }
.lp-section-heading>p:not(.lp-eyebrow) { font-size: 1rem; margin-bottom: 0; }
.lp-benefits { display: grid; gap: 1.65rem; }
.lp-benefits article { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 1.5rem; align-items: baseline; padding-bottom: 1.65rem; border-bottom: 1px solid currentColor; }
.lp-benefits article:last-child { padding-bottom: 0; border-bottom: 0; }
.lp-step-number { font-size: .6875rem; }
.lp-benefits article>.ui-icon { align-self: start; width: 1.6rem; height: 1.6rem; margin-top: .15rem; stroke-width: 1.4; }
.landing-v3 .lp-benefits h3 { font: 600 1.5rem/1.3 var(--display); letter-spacing: -.025em; margin-bottom: .6rem; }
.lp-benefits p { font-size: .9375rem; line-height: 1.85; margin: 0; }
.landing-v3 .lp-coach-story { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 5rem; align-items: center; padding-block: 5.5rem; }
.landing-v3 .lp-coach-story h2 { font: 600 clamp(2.5rem,4vw,3.7rem)/1.08 var(--display); letter-spacing: -.045em; margin-bottom: 1.4rem; }
.lp-coach-copy>p:not(.lp-eyebrow) { color: var(--lp-muted); font-size: 1rem; line-height: 1.9; max-width: 40ch; }
.lp-coach-tools { list-style: none; padding: 0; display: grid; gap: .7rem; margin: 1.5rem 0; font-size: .8125rem; }
.lp-coach-tools li { display: flex; align-items: flex-start; gap: .6rem; }
.lp-coach-tools svg { width: 1rem; height: 1rem; margin-top: .2rem; color: var(--accent); }
.lp-text-link { display: inline-flex; align-items: center; gap: .65rem; min-height: 2.75rem; font-size: .8125rem; text-decoration: underline; text-underline-offset: .3rem; text-decoration-thickness: 1px; }
.lp-text-link svg { width: 1.05rem; height: 1.05rem; }
.lp-text-link:hover { color: var(--accent); }
.lp-context-story { padding: 2rem; background: var(--morning); color: var(--morning-ink); border-radius: .85rem; }
.lp-context-source { background: var(--lp-surface); color: var(--lp-ink); padding: 1.5rem; border-radius: .6rem; }
.lp-context-source>span, .lp-context-answer>span { display: flex; align-items: center; gap: .5rem; font-size: .625rem; letter-spacing: .07em; }
.lp-context-source>span svg, .lp-context-answer>span svg { width: 1rem; height: 1rem; }
.lp-context-source>p { font: 500 1.4rem/1.55 var(--display); letter-spacing: -.02em; margin: 1rem 0 0; }
.lp-context-source>small { display: block; font-size: .75rem; line-height: 1.8; margin-top: 1rem; }
.lp-context-bridge { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: .7rem; padding: 1rem 1.2rem; }
.lp-context-bridge>span { height: 1px; background: currentColor; opacity: .35; }
.lp-context-bridge svg { width: 1rem; height: 1rem; }
.lp-context-bridge p { grid-column: 1/-1; text-align: center; margin: -.35rem 0 0; font-size: .6875rem; }
.lp-context-answer { background: var(--evening); color: var(--evening-ink); padding: 1.5rem; border-radius: .6rem; }
.lp-context-answer>p { font: 600 1.8rem/1.25 var(--display); letter-spacing: -.03em; margin: 1rem 0; }
.lp-context-answer>small { display: block; font-size: .8125rem; line-height: 1.7; }
.lp-context-caption { text-align: center; font-size: .625rem; margin: 1rem 0 0; }
.landing-v3 .lp-difference { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 5rem; padding-bottom: 5.5rem; }
.lp-difference h2 { font: 600 clamp(2.25rem,3.8vw,3.5rem)/1.08 var(--display); letter-spacing: -.04em; margin-bottom: 1.25rem; }
.lp-difference header>p:not(.lp-eyebrow) { color: var(--lp-muted); font-size: 1rem; line-height: 1.85; max-width: 35ch; }
.lp-fit-table { width: 100%; table-layout: fixed; border-collapse: collapse; text-align: left; overflow-wrap: anywhere; }
.lp-fit-table caption { text-align: left; font-size: .875rem; font-weight: 600; padding-bottom: 1rem; }
.lp-fit-table thead th { color: var(--lp-muted); font-size: .6875rem; font-weight: 500; text-transform: uppercase; letter-spacing: .06em; }
.lp-fit-table :is(th,td) { width: 50%; padding: 1.1rem .9rem; border-block: 1px solid var(--lp-line); vertical-align: top; }
.lp-fit-table tbody th { font: 500 .9375rem/1.8 var(--sans); }
.lp-fit-table td { color: var(--lp-muted); font-size: .875rem; line-height: 1.9; }
.lp-fit-table .lp-fit-focus :is(th,td) { background: var(--morning); color: var(--morning-ink); border-color: var(--morning); }
.lp-fit-note { color: var(--lp-muted); font-size: .75rem; line-height: 1.8; margin: 1rem 0 0; }
.landing-v3 .lp-mobile { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 5rem; align-items: center; padding-block: 3.5rem 5.5rem; border-top: 1px solid var(--lp-line); }
.lp-mobile-copy>p:not(.lp-eyebrow) { font-size: 1rem; color: var(--lp-muted); max-width: 35ch; line-height: 1.85; }
.lp-platform-cards { display: grid; gap: 1rem; }
.lp-platform-card { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .65rem 1.5rem; border-radius: .75rem; background: var(--midday); color: var(--midday-ink); padding: 1.75rem; }
.lp-platform-card:nth-child(2) { background: var(--anytime); color: var(--anytime-ink); }
.lp-platform-mark { grid-row: 1/3; display: grid; place-items: center; width: 3.5rem; }
.lp-platform-mark svg { width: 2.5rem; height: 2.5rem; }
.landing-v3 .lp-platform-card h3 { font: 600 1.5rem/1.25 var(--display); letter-spacing: -.025em; margin: 0 0 .3rem; }
.lp-platform-card p { font-size: .8125rem; margin: 0; }
.lp-coming-soon { grid-column: 2; display: inline-flex; align-items: center; gap: .4rem; font-size: .6875rem; font-weight: 500; text-transform: uppercase; letter-spacing: .08em; }
.lp-coming-soon i { display: none; }
.landing-v3 .lp-data { display: flex; gap: 1.5rem; align-items: flex-start; padding-block: 2.5rem; border-block: 1px solid var(--lp-line); }
.lp-data-icon { display: grid; place-items: center; flex: none; width: 3rem; height: 3rem; border-radius: .65rem; background: var(--lp-soft); }
.lp-data-icon svg { width: 1.5rem; height: 1.5rem; }
.landing-v3 .lp-data h2 { font: 600 1.65rem/1.3 var(--display); letter-spacing: -.035em; margin-bottom: .5rem; }
.lp-data p { color: var(--lp-muted); font-size: .875rem; max-width: 59ch; margin-bottom: .5rem; }
.lp-export-formats { margin-left: auto; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .5rem; align-self: center; }
.lp-export-formats>span { border: 1px solid var(--lp-line); border-radius: .35rem; padding: .4rem .6rem; font-size: .6875rem; white-space: nowrap; }
.landing-v3 .lp-faq { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 5rem; padding-block: 5.5rem; }
.lp-faq>div>p:not(.lp-eyebrow) { color: var(--lp-muted); font-size: .875rem; line-height: 1.9; }
.lp-faq>div>p>a { display: inline-flex; align-items: center; gap: .5rem; min-height: 2.75rem; text-underline-offset: .25rem; }
.lp-faq>div>p>a>svg { width: 1rem; height: 1rem; }
.lp-faq details { border-bottom: 1px solid var(--lp-line); }
.lp-faq details:first-child { border-top: 1px solid var(--lp-line); }
.lp-faq summary { display: flex; justify-content: space-between; align-items: center; gap: 1rem; cursor: pointer; padding: 1.25rem 0; font-size: .9375rem; font-weight: 500; list-style: none; }
.lp-faq summary::-webkit-details-marker { display: none; }
.lp-faq summary>span { font-size: 1.5rem; font-weight: 400; line-height: 1; }
.lp-faq details[open] summary>span { transform: rotate(45deg); }
.lp-faq details>p { color: var(--lp-muted); font-size: .875rem; line-height: 1.9; padding-right: 1rem; margin-bottom: 1.5rem; }
.lp-footer { background: var(--morning); color: var(--morning-ink); }
.lp-final-cta { display: flex; justify-content: space-between; gap: 2rem; align-items: center; padding-block: 3.5rem 1.5rem; }
.lp-final-cta .lp-eyebrow { color: inherit; margin-bottom: 1rem; }
.landing-v3 .lp-final-cta h2 { font: 600 clamp(2.5rem,4.3vw,3.75rem)/1.08 var(--display); letter-spacing: -.045em; margin: 0; }
.lp-final-cta>div>p { font-size: .75rem; margin: 1rem 0 0; }
.lp-footer-wordmark { font: 800 clamp(4rem,18vw,18rem)/1 var(--display); letter-spacing: -.065em; margin: .5rem 0 1.5rem; overflow-wrap: anywhere; }
.lp-footer-wordmark>span { color: var(--accent); }
.lp-footer-bottom { border-top: 1px solid currentColor; display: flex; flex-wrap: wrap; gap: 1.5rem; align-items: center; padding-block: 1.25rem; }
.lp-footer-bottom>span { font-size: .75rem; }
.lp-footer-bottom>nav { margin-left: auto; display: flex; gap: 1.25rem; font-size: .75rem; }
.lp-footer-bottom>nav>a { min-height: 2.75rem; display: inline-flex; align-items: center; text-decoration: none; }
.lp-footer-bottom>nav>a:hover { text-decoration: underline; text-underline-offset: .25rem; }
.lp-footer-bottom>small { font-size: .6875rem; }
@media (max-width: 1100px) {
  .landing-v3 .lp-container { width: calc(100% - 5rem); }
  .landing-v3 .lp-nav { gap: 2rem; }
  .landing-v3 .lp-nav-links { gap: 1.25rem; }
  .landing-v3 .lp-hero, .lp-how-layout, .landing-v3 .lp-coach-story, .landing-v3 .lp-mobile, .landing-v3 .lp-faq, .landing-v3 .lp-difference { gap: 3rem; }
  .lp-habit-text>strong { font-size: 1.25rem; }
  .landing-v3 .lp-demo-habit { padding: 1.1rem; gap: .8rem; }
}
@media (max-width: 900px) {
  .landing-v3 .lp-container { width: calc(100% - 4rem); }
  .landing-v3 .lp-nav-links { display: none; }
  .landing-v3 .lp-nav-actions { margin-left: auto; }
  .landing-v3 .lp-hero { gap: 2rem; }
  .landing-v3 .lp-hero h1 { font-size: clamp(3rem,6.2vw,4rem); }
  .lp-hero-actions { flex-direction: column; align-items: flex-start; }
  .lp-hero-lede { font-size: 1rem; }
  .lp-habit-symbol { display: none; }
  .lp-demo-tabs { gap: .5rem; }
  .lp-demo-tabs button { font-size: .8125rem; }
  .lp-preview-stamp { display: none; }
  .lp-context-story { padding: 1.25rem; }
  .lp-platform-card { padding: 1.25rem; gap: .65rem 1rem; }
  .lp-platform-mark { width: 2.75rem; }
  .lp-platform-mark svg { width: 2.1rem; height: 2.1rem; }
  .landing-v3 .lp-platform-card h3 { font-size: 1.3rem; }
  .lp-benefits article { gap: 1rem; }
}
@media (max-width: 700px) {
  .landing-v3 .lp-container { width: calc(100% - 2.5rem); }
  .landing-v3 .lp-nav { min-height: 5.25rem; gap: 1rem; flex-wrap: wrap; }
  .landing-v3 .wordmark { font-size: 2.3rem; }
  .landing-v3 .lp-nav-actions { gap: 1rem; }
  .landing-v3 .lp-nav-cta { font-size: .75rem; padding: .65rem .8rem; }
  .landing-v3 .lp-nav-cta svg { display: none; }
  .landing-v3 .lp-signin { font-size: .75rem; }
  .landing-v3 .lp-hero { grid-template-columns: minmax(0,1fr); padding-block: 2.75rem 3rem; gap: 2.5rem; }
  .lp-hero-copy>.lp-eyebrow { margin-bottom: 1.5rem; }
  .landing-v3 .lp-hero h1 { font-size: clamp(3rem,12.5vw,4.7rem); margin-bottom: 1.5rem; }
  .landing-v3 .lp-hero h1>span { display: block; }
  .lp-hero-lede { max-width: 36ch; font-size: 1rem; }
  .lp-hero-actions { flex-direction: row; align-items: center; gap: .5rem 1rem; margin-top: 1.5rem; }
  .lp-invite-note { margin-top: .75rem; }
  .lp-hero-platforms { margin-top: 1.25rem; font-size: .6875rem; }
  .lp-preview-chrome { padding-top: 1.25rem; border-top: 1px solid var(--lp-line); }
  .lp-demo-tabs { gap: 1rem; }
  .lp-demo-tabs button { font-size: .875rem; }
  .lp-demo-panel { padding-top: 1.4rem; }
  .landing-v3 .lp-demo-heading h3 { font-size: 2.5rem; }
  .lp-habit-symbol { display: block; }
  .landing-v3 .lp-demo-habit { padding: 1.15rem 1.2rem; }
  .lp-habit-text>strong { font-size: 1.3rem; }
  .landing-v3 .lp-how { padding-block: 3rem; }
  .lp-how-layout { grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .lp-section-heading .lp-eyebrow { margin-bottom: 1rem; }
  .landing-v3 .lp-section-heading h2, .landing-v3 .lp-mobile h2, .landing-v3 .lp-faq h2 { font-size: 2.6rem; }
  .lp-benefits { gap: 1.5rem; }
  .lp-benefits article { padding-bottom: 1.5rem; }
  .lp-benefits article>.ui-icon { width: 1.4rem; height: 1.4rem; }
  .landing-v3 .lp-benefits h3 { font-size: 1.35rem; }
  .landing-v3 .lp-coach-story { grid-template-columns: minmax(0,1fr); padding-block: 3.5rem; gap: 2rem; }
  .landing-v3 .lp-coach-story h2 { font-size: 2.8rem; }
  .lp-coach-copy>p:not(.lp-eyebrow) { max-width: 48ch; }
  .lp-context-story { padding: 1.5rem; }
  .lp-context-source>p { font-size: 1.35rem; }
  .landing-v3 .lp-difference { grid-template-columns: minmax(0,1fr); gap: 1.5rem; padding-bottom: 3.5rem; }
  .lp-difference h2 { font-size: 2.6rem; }
  .lp-fit-table :is(th,td) { padding: .9rem .6rem; }
  .landing-v3 .lp-mobile { grid-template-columns: minmax(0,1fr); padding-block: 3rem 3.5rem; gap: 1.5rem; }
  .lp-mobile-copy>p:not(.lp-eyebrow) { max-width: 44ch; }
  .lp-platform-card { padding: 1.5rem; column-gap: 1.25rem; }
  .lp-platform-mark { width: 3rem; }
  .lp-platform-mark svg { width: 2.5rem; height: 2.5rem; }
  .landing-v3 .lp-platform-card h3 { font-size: 1.4rem; }
  .landing-v3 .lp-data { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 1rem; }
  .lp-export-formats { grid-column: 2; margin-left: 0; justify-content: flex-start; }
  .landing-v3 .lp-faq { grid-template-columns: minmax(0,1fr); padding-block: 3.5rem; gap: 1.5rem; }
  .lp-final-cta { flex-wrap: wrap; padding-top: 2.5rem; gap: 1.5rem; }
  .lp-footer-wordmark { margin-block: .5rem 1.5rem; }
  .lp-footer-bottom { gap: .5rem 1rem; }
  .lp-footer-bottom>span { width: 100%; }
  .lp-footer-bottom>nav { margin-left: 0; }
  .lp-footer-bottom>small { margin-left: auto; }
}
@media (max-width: 380px) {
  .landing-v3 .lp-container { width: calc(100% - 2rem); }
  .landing-v3 .lp-nav-actions { gap: .65rem; }
  .landing-v3 .wordmark { font-size: 1.8rem; letter-spacing: -.1rem; }
  .landing-v3 .lp-hero h1 { font-size: 2.8rem; }
  .lp-hero-copy>.lp-eyebrow { font-size: .625rem; }
  .lp-hero-actions { flex-direction: column; align-items: flex-start; }
  .lp-demo-tabs { gap: .5rem; }
  .lp-demo-tabs button { gap: .35rem; font-size: .8125rem; }
  .lp-habit-symbol { display: none; }
  .landing-v3 .lp-demo-habit { padding: 1.15rem 1rem; }
  .lp-habit-text>strong { font-size: 1.2rem; }
  .lp-demo-feelings>div { padding: .8rem; }
  .lp-demo-entry, .lp-demo-reply { padding: 1.15rem; }
  .lp-context-story { padding: 1rem; }
  .lp-context-source, .lp-context-answer { padding: 1.15rem; }
  .lp-context-answer>p { font-size: 1.6rem; }
  .lp-platform-card { padding: 1.25rem; column-gap: 1rem; }
  .lp-platform-mark { width: 2.5rem; }
  .lp-platform-mark svg { width: 2.1rem; height: 2.1rem; }
  .landing-v3 .lp-platform-card h3 { font-size: 1.25rem; }
  .landing-v3 .lp-data { display: block; }
  .lp-data-icon { margin-bottom: 1rem; }
  .lp-export-formats { margin-top: 1rem; }
  .lp-footer-bottom>small { margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .landing-v3 *, .landing-v3 *::before, .landing-v3 *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
