/* Public landing only. Shared colors and basic controls come from site.css. */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

.lp-container { width: min(100% - 3rem, 72rem); margin-inline: auto; }
.lp-section { padding: 7rem 0; }
.lp-section-narrow { max-width: 52rem; }
.lp-h2 { margin: .75rem 0 0; font-size: clamp(2rem, 4vw, 3.5rem); line-height: 1.04; letter-spacing: -.045em; font-weight: 720; }
.lp-section-head { max-width: 47rem; margin: 0 auto 3.5rem; text-align: center; }
.lp-section-head p, .lp-section-head-left p { margin: 1.2rem 0 0; color: var(--muted-foreground); font-size: 1.05rem; line-height: 1.7; }
.lp-section-head-left { max-width: 52rem; margin-bottom: 3.5rem; }
.lp-kicker { display: inline-flex; align-items: center; gap: .65rem; color: oklch(.75 .15 258); font-size: .75rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.lp-kicker > span { width: 1.8rem; height: 1px; background: currentColor; }
.lp-kicker-light { color: oklch(.82 .11 258); }
.lp-text-link { display: inline-flex; align-items: center; gap: .55rem; color: var(--foreground); font-size: .95rem; font-weight: 650; }
.lp-text-link:hover { color: oklch(.75 .15 258); }
.lp-text-link span { color: oklch(.75 .15 258); }

/* Navigation */
.lp-nav { position: sticky; top: 0; z-index: 40; border-bottom: 1px solid oklch(1 0 0 / .07); background: oklch(.13 0 0 / .83); backdrop-filter: blur(18px) saturate(140%); }
.lp-nav-inner { display: flex; align-items: center; height: 4.5rem; gap: 1.25rem; }
.lp-brand { margin: 0; }
.lp-brand .brand-logo { height: 1.8rem; }
.lp-nav-links { display: flex; align-items: center; gap: 1.75rem; margin-left: auto; }
.lp-nav-links a, .lp-login-link { color: var(--muted-foreground); font-size: .9rem; transition: color .18s ease; }
.lp-nav-links a:hover, .lp-login-link:hover { color: var(--foreground); }
.lp-nav-cta { white-space: nowrap; }

/* Hero */
.lp-hero { position: relative; overflow: hidden; padding: 7rem 0 0; background: linear-gradient(180deg, oklch(.16 .018 258 / .35), transparent 70%); }
.lp-orb { position: absolute; border-radius: 999px; filter: blur(90px); pointer-events: none; }
.lp-orb-one { width: 32rem; height: 32rem; top: -18rem; left: 12%; background: oklch(.6 .22 258 / .22); }
.lp-orb-two { width: 26rem; height: 26rem; right: -10rem; top: 14rem; background: oklch(.69 .15 185 / .11); }
.lp-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(25rem, .92fr); align-items: center; gap: 5rem; }
.lp-hero-copy h1 { margin: 1.2rem 0 0; max-width: 43rem; font-size: clamp(2.7rem, 5vw, 4.65rem); font-weight: 760; line-height: .99; letter-spacing: -.06em; }
.lp-hero-copy h1 em { color: oklch(.72 .16 258); font-style: normal; }
.lp-lede { max-width: 40rem; margin: 1.6rem 0 0; color: oklch(.77 0 0); font-size: 1.1rem; line-height: 1.72; }
.lp-hero-points { display: flex; flex-wrap: wrap; gap: .7rem 1.2rem; margin-top: 1.5rem; color: oklch(.88 0 0); font-size: .9rem; }
.lp-hero-points span { display: inline-flex; align-items: center; gap: .42rem; }
.lp-hero-points i { color: oklch(.74 .17 150); font-style: normal; }
.lp-cta-row { display: flex; align-items: center; flex-wrap: wrap; gap: 1.35rem; margin-top: 2rem; }
.lp-btn-main { min-height: 3.15rem; padding-inline: 1.35rem; gap: .65rem; box-shadow: 0 12px 30px oklch(.45 .18 258 / .24); }
.lp-hero-note { margin: .9rem 0 0; color: oklch(.62 0 0); font-size: .78rem; }

.lp-product { position: relative; border: 1px solid oklch(1 0 0 / .12); border-radius: 1.25rem; overflow: hidden; background: oklch(.185 .006 258); box-shadow: 0 35px 90px oklch(0 0 0 / .48); transform: rotate(.6deg); }
.lp-product::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(130deg, oklch(1 0 0 / .035), transparent 38%); }
.lp-product-top { display: flex; align-items: center; min-height: 3.25rem; padding: 0 1rem; border-bottom: 1px solid oklch(1 0 0 / .08); }
.lp-product-dots { display: flex; gap: .35rem; }
.lp-product-dots span { width: .55rem; height: .55rem; border-radius: 50%; background: oklch(.36 0 0); }
.lp-product-title { margin-left: .85rem; color: oklch(.65 0 0); font-size: .72rem; font-family: var(--font-mono); }
.lp-product-live { display: flex; align-items: center; gap: .42rem; margin-left: auto; color: oklch(.72 .14 150); font-size: .7rem; font-weight: 650; }
.lp-product-live span { width: .42rem; height: .42rem; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px oklch(.72 .14 150 / .12); }
.lp-product-body { padding: 1.15rem; }
.lp-message { border-radius: .9rem; padding: .9rem 1rem; line-height: 1.48; }
.lp-message span { display: block; margin-bottom: .25rem; color: oklch(.75 .15 258); font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.lp-message-user { margin: 0 0 1.2rem 2.6rem; border: 1px solid oklch(.6 .19 258 / .2); background: oklch(.25 .035 258 / .7); color: oklch(.93 0 0); }
.lp-agent-line { position: relative; display: grid; grid-template-columns: 1.8rem 1fr; gap: .75rem; padding: .72rem .25rem; }
.lp-agent-line:not(:last-child)::after { content: ""; position: absolute; left: 1.13rem; top: 2.3rem; bottom: -.4rem; width: 1px; background: oklch(1 0 0 / .1); }
.lp-agent-mark { display: grid; place-items: center; width: 1.8rem; height: 1.8rem; border-radius: 50%; background: oklch(.25 .035 258); color: oklch(.76 .14 258); font-family: var(--font-mono); font-size: .68rem; font-weight: 700; }
.lp-agent-line strong { display: block; padding-top: .15rem; color: oklch(.92 0 0); font-size: .86rem; }
.lp-agent-line p { margin: .32rem 0 0; color: oklch(.65 0 0); font-size: .78rem; line-height: 1.52; }
.lp-agent-line-done .lp-agent-mark { color: oklch(.76 .16 150); background: oklch(.28 .06 150); }
.lp-product-result { display: flex; gap: .8rem; align-items: center; margin: 0 1rem 1rem; padding: .9rem 1rem; border: 1px solid oklch(.7 .15 150 / .2); border-radius: .8rem; background: oklch(.25 .045 150 / .45); }
.lp-result-icon { display: grid; place-items: center; flex: 0 0 1.8rem; height: 1.8rem; border-radius: 50%; color: oklch(.78 .16 150); background: oklch(.32 .07 150); }
.lp-product-result b, .lp-product-result small { display: block; }
.lp-product-result b { color: oklch(.9 0 0); font-size: .83rem; }
.lp-product-result small { margin-top: .2rem; color: oklch(.64 0 0); font-size: .7rem; }

.lp-proofbar { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 2.3fr 1fr; align-items: center; gap: 2rem; margin-top: 7rem; min-height: 6.25rem; border-top: 1px solid oklch(1 0 0 / .08); border-bottom: 1px solid oklch(1 0 0 / .08); }
.lp-proof-copy { color: oklch(.58 0 0); font-size: .76rem; text-transform: uppercase; letter-spacing: .08em; }
.lp-proof-apps { display: flex; justify-content: center; flex-wrap: wrap; gap: .8rem 1.5rem; color: oklch(.82 0 0); font-weight: 650; }
.lp-proof-fact { color: oklch(.62 0 0); font-size: .78rem; text-align: right; }
.lp-proof-fact b { color: oklch(.86 0 0); font-size: 1rem; }

/* Use cases */
.lp-use-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.lp-use { position: relative; display: flex; flex-direction: column; min-height: 25rem; padding: 1.7rem; border: 1px solid var(--border); border-radius: 1.1rem; background: linear-gradient(145deg, oklch(.19 .006 258), var(--card)); overflow: hidden; transition: transform .2s ease, border-color .2s ease; }
.lp-use:hover { transform: translateY(-3px); border-color: oklch(.55 .08 258); }
.lp-use-number { position: absolute; right: 1.4rem; top: 1.2rem; color: oklch(.35 0 0); font-family: var(--font-mono); font-size: 2.25rem; font-weight: 700; }
.lp-use-icon { display: grid; place-items: center; width: 3.25rem; height: 3.25rem; margin-bottom: 3.25rem; border-radius: .85rem; color: oklch(.75 .15 258); background: oklch(.27 .055 258); }
.lp-use-icon svg { width: 1.45rem; height: 1.45rem; }
.lp-use-icon-warm { color: oklch(.82 .16 65); background: oklch(.28 .06 65); }
.lp-use-icon-green { color: oklch(.76 .16 150); background: oklch(.27 .055 150); }
.lp-use h3 { margin: 0; font-size: 1.3rem; line-height: 1.25; letter-spacing: -.02em; }
.lp-use p { margin: .8rem 0 0; color: var(--muted-foreground); font-size: .95rem; line-height: 1.65; }
.lp-use-result { margin-top: auto; padding-top: 1.3rem; border-top: 1px solid oklch(1 0 0 / .08); color: oklch(.82 0 0); font-size: .84rem; line-height: 1.5; }
.lp-use-result span { display: block; margin-bottom: .3rem; color: oklch(.55 0 0); font-size: .65rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }

/* Story demo */
.lp-section-demo { position: relative; background: linear-gradient(145deg, oklch(.22 .075 258), oklch(.14 .025 258) 60%, oklch(.15 .035 190)); border-block: 1px solid oklch(1 0 0 / .08); }
.lp-demo-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 6rem; align-items: center; }
.lp-demo-copy > p { max-width: 31rem; margin: 1.35rem 0 0; color: oklch(.76 0 0); font-size: 1.03rem; line-height: 1.72; }
.lp-demo-copy blockquote { margin: 2rem 0; padding-left: 1.25rem; border-left: 2px solid oklch(.72 .16 258); color: oklch(.94 0 0); font-size: 1.1rem; line-height: 1.62; }
.lp-demo-outcome { display: flex; gap: .9rem; align-items: center; padding: 1rem; border: 1px solid oklch(.72 .15 150 / .2); border-radius: .9rem; background: oklch(.24 .055 150 / .42); }
.lp-demo-check { display: grid; place-items: center; flex: 0 0 2rem; height: 2rem; border-radius: 50%; background: oklch(.72 .16 150); color: oklch(.15 .04 150); font-weight: 900; }
.lp-demo-outcome strong, .lp-demo-outcome span { display: block; }
.lp-demo-outcome strong { font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; color: oklch(.75 .15 150); }
.lp-demo-outcome span { margin-top: .25rem; color: oklch(.85 0 0); font-size: .82rem; line-height: 1.45; }
.lp-demo-steps { margin: 0; padding: 0; list-style: none; }
.lp-demo-steps li { position: relative; display: grid; grid-template-columns: 2.5rem 1fr auto; gap: 1rem; align-items: start; padding: 1.2rem 0; border-bottom: 1px solid oklch(1 0 0 / .09); }
.lp-demo-step-n { display: grid; place-items: center; width: 2.35rem; height: 2.35rem; border-radius: .7rem; color: oklch(.78 .15 258); background: oklch(.28 .07 258); font-family: var(--font-mono); font-size: .75rem; font-weight: 700; }
.lp-demo-step-ok { color: oklch(.77 .16 150); background: oklch(.27 .06 150); }
.lp-demo-steps strong { display: block; margin-top: .08rem; font-size: 1rem; }
.lp-demo-steps p { margin: .4rem 0 0; color: oklch(.67 0 0); font-size: .83rem; line-height: 1.5; }
.lp-demo-tag { margin-top: .25rem; padding: .28rem .5rem; border-radius: 999px; background: oklch(1 0 0 / .07); color: oklch(.65 0 0); font-size: .63rem; text-transform: uppercase; letter-spacing: .06em; }
.lp-demo-tag-ok { color: oklch(.74 .15 150); background: oklch(.25 .055 150); }
.lp-demo-disclaimer { margin-top: 2.5rem; color: oklch(.52 0 0); font-size: .7rem; text-align: center; }

/* Start */
.lp-start-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0; padding: 0; list-style: none; border-block: 1px solid var(--border); }
.lp-start-steps li { display: grid; grid-template-columns: 2.8rem 1fr; gap: 1rem; padding: 2rem; }
.lp-start-steps li:not(:last-child) { border-right: 1px solid var(--border); }
.lp-start-n { display: grid; place-items: center; width: 2.55rem; height: 2.55rem; border-radius: 50%; color: oklch(.78 .14 258); background: oklch(.26 .05 258); font-family: var(--font-mono); font-size: .78rem; font-weight: 700; }
.lp-start-steps h3 { margin: .25rem 0 0; font-size: 1.05rem; }
.lp-start-steps p { margin: .55rem 0 0; color: var(--muted-foreground); line-height: 1.55; }
.lp-start-cta { display: flex; align-items: center; justify-content: center; gap: 1.2rem; margin-top: 2.5rem; }
.lp-start-cta span { color: var(--muted-foreground); font-size: .78rem; }

/* Business value */
.lp-value-box { display: grid; grid-template-columns: .92fr 1.08fr; gap: 5rem; padding: clamp(2rem, 5vw, 4.5rem); border-radius: 1.5rem; background: oklch(.94 .012 75); color: oklch(.18 .01 75); box-shadow: 0 30px 80px oklch(0 0 0 / .22); }
.lp-value-intro .lp-kicker { color: oklch(.48 .17 258); }
.lp-value-intro p { margin: 1.25rem 0 0; color: oklch(.42 .015 75); font-size: 1rem; line-height: 1.7; }
.lp-value-list > div { display: grid; grid-template-columns: 2.2rem 1fr; gap: 1rem; padding: 1.25rem 0; border-bottom: 1px solid oklch(.3 .01 75 / .14); }
.lp-value-list > div:first-child { padding-top: 0; }
.lp-value-list b { color: oklch(.51 .18 258); font-family: var(--font-mono); font-size: .73rem; }
.lp-value-list strong, .lp-value-list span { display: block; }
.lp-value-list strong { margin-bottom: .35rem; font-size: 1rem; }
.lp-value-list span { color: oklch(.43 .012 75); line-height: 1.55; }

/* Privacy */
.lp-privacy-layout { display: grid; grid-template-columns: .78fr 1.22fr; gap: 5rem; align-items: center; }
.lp-privacy-copy > p { margin: 1.3rem 0 1.5rem; color: var(--muted-foreground); font-size: 1rem; line-height: 1.7; }
.lp-privacy-cards { display: grid; gap: 1rem; }
.lp-privacy-card { padding: 1.5rem; border: 1px solid oklch(.62 .12 258 / .22); border-radius: 1rem; background: oklch(.19 .02 258 / .55); }
.lp-privacy-local { border-color: oklch(.67 .12 150 / .22); background: oklch(.19 .02 150 / .45); }
.lp-privacy-title { display: flex; align-items: center; gap: .65rem; font-weight: 700; }
.lp-privacy-title span { display: grid; place-items: center; width: 1.7rem; height: 1.7rem; border-radius: 50%; color: oklch(.75 .15 258); background: oklch(.28 .055 258); }
.lp-privacy-local .lp-privacy-title span { color: oklch(.76 .15 150); background: oklch(.27 .055 150); }
.lp-privacy-card ul { margin: 1rem 0 0; padding: 0; list-style: none; }
.lp-privacy-card li { position: relative; padding: .4rem 0 .4rem 1.1rem; color: var(--muted-foreground); line-height: 1.5; }
.lp-privacy-card li::before { content: ""; position: absolute; left: 0; top: .95rem; width: .32rem; height: .32rem; border-radius: 50%; background: oklch(.63 .13 258); }
.lp-privacy-local li::before { background: oklch(.7 .14 150); }
.lp-control-row { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 3rem; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.lp-control-row > div { padding: 1.5rem; }
.lp-control-row > div:not(:last-child) { border-right: 1px solid var(--border); }
.lp-control-icon { display: block; margin-bottom: 1rem; color: oklch(.73 .15 258); font-size: 1.1rem; }
.lp-control-row strong { font-size: .88rem; }
.lp-control-row p { margin: .5rem 0 0; color: var(--muted-foreground); font-size: .78rem; line-height: 1.5; }

/* Pricing */
.lp-price-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: .85rem; align-items: stretch; }
.lp-price-card { position: relative; display: flex; flex-direction: column; min-width: 0; padding: 1.55rem; border: 1px solid var(--border); border-radius: 1rem; background: var(--card); }
.lp-price-featured { border-color: oklch(.63 .16 258); background: linear-gradient(160deg, oklch(.23 .05 258), var(--card) 65%); box-shadow: 0 18px 45px oklch(.42 .16 258 / .15); }
.lp-price-popular { position: absolute; top: -1rem; left: 50%; transform: translateX(-50%); padding: .35rem .7rem; border-radius: 999px; background: oklch(.62 .19 258); color: white; font-size: .65rem; font-weight: 700; white-space: nowrap; }
.lp-price-top { display: flex; justify-content: space-between; align-items: baseline; gap: .6rem; }
.lp-price-name { font-size: 1rem; font-weight: 750; }
.lp-price-for { color: var(--muted-foreground); font-size: .7rem; }
.lp-price-value { min-height: 4rem; margin-top: 1.25rem; font-size: 1.75rem; font-weight: 760; letter-spacing: -.03em; }
.lp-price-value small { display: block; margin-top: .3rem; color: var(--muted-foreground); font-size: .72rem; font-weight: 500; letter-spacing: 0; }
.lp-price-limit { margin-top: .75rem; color: oklch(.72 .12 258); font-size: .75rem; }
.lp-price-card ul { min-height: 8.2rem; margin: 1.4rem 0; padding: 1.25rem 0 0; border-top: 1px solid var(--border); list-style: none; }
.lp-price-card li { position: relative; padding: .35rem 0 .35rem 1.15rem; color: var(--muted-foreground); font-size: .8rem; line-height: 1.45; }
.lp-price-card li::before { content: "✓"; position: absolute; left: 0; color: oklch(.72 .15 150); }
.lp-price-card .btn { width: 100%; margin-top: auto; }
.lp-pricing-foot { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; margin-top: 2rem; padding: 1.5rem 0; border-top: 1px solid var(--border); }
.lp-pricing-foot p { margin: 0; color: var(--muted-foreground); font-size: .78rem; line-height: 1.6; }
.lp-pricing-foot strong { color: var(--foreground); }

/* Technical disclosure */
.lp-tools-section { padding-bottom: 2rem; }
.lp-tools { border: 1px solid var(--border); border-radius: 1rem; background: oklch(.17 0 0); }
.lp-tools > summary { display: flex; justify-content: space-between; gap: 1rem; align-items: center; padding: 1.25rem 1.5rem; list-style: none; cursor: pointer; color: var(--muted-foreground); }
.lp-tools > summary::-webkit-details-marker { display: none; }
.lp-tools > summary b { color: var(--foreground); }
.lp-tools-count { color: oklch(.72 .14 258); font-size: .78rem; white-space: nowrap; }
.lp-tools-body { padding: 0 1.5rem 1.5rem; border-top: 1px solid var(--border); }
.lp-tools-body > p { color: var(--muted-foreground); }
.lp-tools-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
.lp-tool-group { padding: 1rem; border: 1px solid var(--border); border-radius: .75rem; }
.lp-tool-group h3 { margin: 0; font-size: .9rem; }
.lp-tool-group h3 span { margin-left: .4rem; color: var(--muted-foreground); font-size: .7rem; }
.lp-tool-group > p { color: var(--muted-foreground); font-size: .72rem; line-height: 1.5; }
.lp-tool-group ul { margin: 0; padding: 0; list-style: none; }
.lp-tool-group li { display: grid; grid-template-columns: minmax(9rem, auto) 1fr; gap: .7rem; padding: .3rem 0; border-top: 1px solid oklch(1 0 0 / .04); }
.lp-tool-group code { font-size: .68rem; overflow-wrap: anywhere; }
.lp-tool-group li span { color: var(--muted-foreground); font-size: .68rem; }

/* FAQ + final */
.lp-faq-section { padding-bottom: 5rem; }
.lp-faq-layout { display: grid; grid-template-columns: .65fr 1.35fr; gap: 6rem; }
.lp-faq-intro { position: sticky; top: 7rem; align-self: start; }
.lp-faq-intro > p { margin: 1.2rem 0 1.3rem; color: var(--muted-foreground); line-height: 1.65; }
.lp-faq-list { border-top: 1px solid var(--border); }
.lp-faq-list details { border-bottom: 1px solid var(--border); }
.lp-faq-list summary { position: relative; padding: 1.35rem 2rem 1.35rem 0; list-style: none; cursor: pointer; color: oklch(.9 0 0); font-size: 1rem; font-weight: 650; }
.lp-faq-list summary::-webkit-details-marker { display: none; }
.lp-faq-list summary::after { content: "+"; position: absolute; right: .2rem; top: 1.2rem; color: oklch(.7 .13 258); font-size: 1.3rem; font-weight: 400; }
.lp-faq-list details[open] summary::after { content: "−"; }
.lp-faq-list details p { max-width: 42rem; margin: -.25rem 0 1.5rem; color: var(--muted-foreground); line-height: 1.7; }
.lp-faq-list details a { color: oklch(.72 .14 258); }
.lp-final { display: flex; justify-content: space-between; align-items: center; gap: 3rem; margin-top: 6rem; padding: clamp(2rem, 5vw, 4rem); border-radius: 1.5rem; background: linear-gradient(120deg, oklch(.6 .2 258), oklch(.55 .18 280)); box-shadow: 0 30px 75px oklch(.4 .18 258 / .25); }
.lp-final > div > span { font-size: .72rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; opacity: .75; }
.lp-final h2 { max-width: 42rem; margin: .65rem 0 0; font-size: clamp(1.8rem, 4vw, 3.2rem); line-height: 1.05; letter-spacing: -.04em; }
.lp-final p { margin: .85rem 0 0; color: oklch(.94 0 0 / .76); }
.lp-final-btn { flex: 0 0 auto; min-height: 3.3rem; padding-inline: 1.4rem; background: white; color: oklch(.24 .04 258); box-shadow: 0 10px 30px oklch(0 0 0 / .18); }
.lp-final-btn:hover { opacity: .92; }

/* Footer */
.lp-footer { border-top: 1px solid var(--border); padding: 3rem 0 1.5rem; background: oklch(.12 0 0); }
.lp-footer-main { display: flex; justify-content: space-between; align-items: flex-start; gap: 2rem; }
.lp-footer-main .brand-logo { height: 1.6rem; }
.lp-footer-main p { margin: .8rem 0 0; }
.lp-footer-links { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 1rem 1.5rem; color: var(--muted-foreground); }
.lp-footer-links a:hover { color: var(--foreground); }
.lp-footer-legal { display: flex; justify-content: space-between; gap: 2rem; margin-top: 2.5rem; padding-top: 1.25rem; border-top: 1px solid var(--border); }
.lp-footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.lp-legal { font-size: 1rem; line-height: 1.72; }
.lp-legal > h1 { margin-top: 1rem; }
.lp-legal > h2 { margin: 2.5rem 0 .75rem; font-size: 1.25rem; }
.lp-legal > p, .lp-legal > ul { color: var(--muted-foreground); }
.lp-legal > ul { padding-left: 1.35rem; }
.lp-legal-note { margin-top: 3rem; padding-top: 1.25rem; border-top: 1px solid var(--border); }

@media (max-width: 1000px) {
  .lp-hero-grid { grid-template-columns: 1fr; gap: 4rem; }
  .lp-hero-copy { max-width: 48rem; text-align: center; margin-inline: auto; }
  .lp-hero-copy h1, .lp-lede { margin-inline: auto; }
  .lp-hero-points, .lp-cta-row { justify-content: center; }
  .lp-product { max-width: 36rem; margin-inline: auto; transform: none; }
  .lp-proofbar { grid-template-columns: 1fr; gap: 1rem; padding-block: 1.5rem; text-align: center; }
  .lp-proof-fact { text-align: center; }
  .lp-demo-grid, .lp-value-box, .lp-privacy-layout, .lp-faq-layout { grid-template-columns: 1fr; gap: 3.5rem; }
  .lp-price-grid { grid-template-columns: repeat(2, 1fr); gap: 1.2rem; }
  .lp-control-row { grid-template-columns: repeat(2, 1fr); }
  .lp-control-row > div:nth-child(2) { border-right: 0; }
  .lp-control-row > div:nth-child(-n+2) { border-bottom: 1px solid var(--border); }
  .lp-faq-intro { position: static; }
}

@media (max-width: 760px) {
  .lp-container { width: min(100% - 2rem, 72rem); }
  .lp-section { padding: 5rem 0; }
  .lp-nav-inner { height: 4rem; }
  /* «Войти» на телефоне НЕ прячем: иначе вернувшемуся клиенту остаётся только CTA регистрации. */
  .lp-nav-links { display: none; }
  .lp-login-link { margin-left: auto; white-space: nowrap; }
  .lp-nav-cta { margin-left: 0; }
  .lp-hero { padding-top: 4.5rem; }
  .lp-hero-copy h1 { font-size: clamp(2.55rem, 12vw, 3.8rem); }
  .lp-lede { font-size: 1rem; }
  .lp-use-grid, .lp-start-steps, .lp-price-grid, .lp-tools-grid { grid-template-columns: 1fr; }
  .lp-use { min-height: 22rem; }
  .lp-start-steps li:not(:last-child) { border-right: 0; border-bottom: 1px solid var(--border); }
  .lp-start-cta { flex-direction: column; text-align: center; }
  .lp-value-box { border-radius: 1.1rem; }
  .lp-pricing-foot { grid-template-columns: 1fr; gap: 1rem; }
  .lp-final { align-items: flex-start; flex-direction: column; }
  .lp-footer-main, .lp-footer-legal { flex-direction: column; }
  .lp-footer-links { justify-content: flex-start; }
}

@media (max-width: 480px) {
  .lp-nav-inner { gap: .75rem; }
  .lp-nav-cta { padding-inline: .8rem; font-size: .75rem; }
  .lp-login-link { font-size: .8rem; }
  .lp-hero-copy h1 br, .lp-h2 br { display: none; }
  .lp-cta-row { flex-direction: column; align-items: stretch; }
  .lp-cta-row .lp-text-link { justify-content: center; }
  .lp-message-user { margin-left: 0; }
  .lp-product-body { padding: .8rem; }
  .lp-product-result { margin-inline: .7rem; }
  .lp-proof-apps { gap: .65rem 1rem; font-size: .8rem; }
  .lp-demo-steps li { grid-template-columns: 2.5rem 1fr; }
  .lp-demo-tag { display: none; }
  .lp-control-row { grid-template-columns: 1fr; }
  .lp-control-row > div { border-right: 0 !important; border-bottom: 1px solid var(--border); }
  .lp-control-row > div:last-child { border-bottom: 0; }
  .lp-tools > summary { align-items: flex-start; flex-direction: column; }
  .lp-tool-group li { grid-template-columns: 1fr; gap: .15rem; }
}
