/* Landing pages (templates/landing-*.html) and the two confirmation pages
   (templates/subscribe-*.html). The hero, the trial box, the FAQ and the header are the home
   page's own, from marketing.css; this adds the three short blocks, the pricing line, the
   guides list on /start and the plain confirmation column. Tokens only, no colour of its own.
   Nothing here animates and nothing moves itself. */
body[data-page=landing] .hero{min-height:min(46vh,520px)}
body[data-page=landing] .capture{max-width:720px}
.landing-points{padding-block:8px 8px}
.landing-point-list{list-style:none;margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:920px}
.landing-point{padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--shadow-card)}
.landing-point h2{font-size:16px;font-weight:600;letter-spacing:-.01em;line-height:1.35;margin:0 0 6px}
.landing-point p{font-size:14px;line-height:1.6;color:var(--ink-2);margin:0}
.landing-pricing{padding-block:64px 56px;text-align:center}
.landing-pricing h2{margin:0 0 24px}
.landing-plans{list-style:none;margin:0 auto 24px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:920px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--shadow-card);text-align:left}
.landing-plans li{display:grid;align-content:start;gap:4px;padding:16px 20px}
.landing-plans li+li{border-left:1px solid var(--line)}
.landing-plans strong{font-size:14px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}
.landing-plans span{font-size:14px;line-height:1.55;color:var(--ink-2)}
.landing-guides{max-width:720px;padding-block:0 56px}
.landing-guides h2{font-size:22px;letter-spacing:-.02em;line-height:1.25;margin:0 0 12px}
.landing-guide-list{list-style:none;margin:0;padding:0 16px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--shadow-card)}
.landing-guide-list li:last-child a{border-bottom:0}
.landing-guide-list a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px;font-weight:500;line-height:1.4;color:var(--ink);transition:color .12s var(--ease)}
.landing-guide-list a:hover{color:var(--blue-ink)}
.landing-guide-list a::after{content:"";flex:none;width:7px;height:7px;margin-right:6px;border:solid var(--ink-3);border-width:1.5px 1.5px 0 0;transform:rotate(45deg)}
.landing-faq{padding-block:0 8px}
.subscribe-note{max-width:760px;padding-block:88px 32px}
.subscribe-note h1{font-size:clamp(30px,3.6vw,40px);letter-spacing:-.035em;line-height:1.1;margin:0 0 12px}
.subscribe-note p{font-size:16px;line-height:1.7;color:var(--ink-2);margin:0 0 24px;max-width:56ch}
.subscribe-note+.capture{margin-top:0}
.subscribe-confirm{margin:0}
@media (max-width:767px){
  body[data-page=landing] .hero{min-height:auto}
  .landing-points{padding-top:16px}
  .landing-point-list{grid-template-columns:1fr;gap:10px}
  .landing-pricing{padding-block:48px 40px}
  .landing-plans{grid-template-columns:1fr}
  .landing-plans li+li{border-left:0;border-top:1px solid var(--line)}
  .landing-pricing .button{width:100%;min-height:48px;font-size:16px}
  .landing-guides{padding-bottom:40px}
  .subscribe-note{padding-block:48px 24px}
  .subscribe-note .button{width:100%;min-height:48px;font-size:16px}
}
