:root {
  --forest: #092d39;
  --paper: #fbfaf3;
  --sun: #dcf49b;
  --book-ink: var(--forest);
  --book-accent: #143d49;
}
html { scroll-padding-top: 16px; }
.mast { min-height: 88px; }
.identity { display: inline-flex; align-items: center; gap: 11px; color: #071f45; }
.identity img { width: 52px; height: 57px; object-fit: contain; mix-blend-mode: multiply; }
.wordmark { font: italic 800 clamp(36px,4vw,55px)/1 Georgia,serif; letter-spacing: -.075em; white-space: nowrap; }
.rmv { font: 800 11px/1 Arial,sans-serif; letter-spacing: .1em; align-self: center; margin: 5px 0 0 2px; padding: 6px 8px; border: 1px solid #b8c8a7; border-radius: 3px; }
.hero-content { min-height: clamp(448px,37vw,595px); }
.hero-content h1 { font-size: clamp(80px,7.3vw,125px); }
.hero-price { font-size: 15px; font-weight: 600; }
.founder { background: #e7eddd; }
.founder-in { display:grid; grid-template-columns: minmax(220px,.66fr) 1.6fr; gap: 5%; align-items:center; padding-block:clamp(25px,2.6vw,46px); }
.founder-in h2 { color: #123737; font-size: clamp(28px,2.8vw,45px); }
.founder-in p { max-width: 76ch; }
.reference { display: inline-block; margin-top:8px; font-size:15px; }
.plan-section { padding-block: clamp(42px,5vw,78px); }
.plan-section h2 { margin: 0; font-size: clamp(41px,4.2vw,66px); letter-spacing:-.065em; line-height:1.07; }
.plan-sub { margin: 10px 0 27px; }
.plan-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(290px,1fr); gap:clamp(24px,5vw,78px); }
.sr-only { position:absolute; height:1px; width:1px; margin:-1px; overflow:hidden; clip-path:inset(50%); }
.options { min-width: 0; margin:0; padding:0; border:0; border-top:3px solid var(--forest); }
.option { display:flex; align-items:center; gap:13px; padding:15px 12px; border-bottom:1px solid #b7c2b4; cursor:pointer; }
.option:has(input:checked) { background:#e8eddf; }
.option input { accent-color: #2b572f; width:19px; height:19px; flex-shrink:0; margin:0; }
.option strong { font-size:clamp(16px,1.55vw,22px); letter-spacing:-.035em; }
.option>span small { display:block; color:#52635a; font-size:13px; }
.option>b { white-space:nowrap; margin-left:auto; font-size:24px; letter-spacing:-.045em; }
.option>b small { font-size:13px; letter-spacing:0; font-weight:400; }
.pass { background:#e5efc6; border-top:3px solid var(--forest); }
.pass-heading { display:flex; justify-content:space-between; gap:18px; padding:10px 18px; border-bottom:1px dashed #879774; font:750 12px/1.4 Arial,sans-serif; text-transform:uppercase; letter-spacing:.08em; }
.pass-body { padding:15px 18px; }
.pass-summary { display:flex; align-items:baseline; flex-wrap:wrap; gap:3px 10px; }
.pass-summary strong { font-size:27px; line-height:1; letter-spacing:-.05em; }
.pass-summary span { font-size:15px; }
.start-trial { margin:14px 0 8px; display:flex; justify-content:space-between; align-items:center; padding:13px 16px; background:var(--forest); color:#fff; font-weight:700; border-radius:3px; }
.start-trial:hover { background:#245448; }
.pass-body p,.route-check { font-size:14px; margin:0; }
.route-check { margin-top:16px; }
.route-check a { font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.foot .identity img { width:30px; height:34px; }
.foot .wordmark { font-size:32px; }
.foot .rmv { font-size:9px; padding:4px; }
@media(max-width:760px) {
  .plan-grid { grid-template-columns:1fr; gap:18px; }
  .founder-in { grid-template-columns:.75fr 1.5fr; gap:20px; }
}
@media(max-width:600px) {
  .mast { min-height:68px; padding-inline:16px; }
  .identity { gap:6px; }
  .identity img { width:32px; height:36px; }
  .wordmark { font-size:34px; }
  .rmv { font-size:9px; margin:3px 0 0 1px; padding:4px; }
  .mast .contact-nav { font-size:12px; border:0; padding:9px 0 9px 7px; }
  .hero-content { min-height:clamp(382px,111vw,496px); padding-top:112px; padding-bottom:28px; }
  .hero-content h1 { font-size:clamp(56px,13.5vw,80px); }
  .hero-actions { gap:12px; flex-wrap:wrap; }
  .hero-price { font-size:13px; }
  .founder-in { display:block; }
  .founder-in h2 br { display:none; }
  .founder-in h2 br::after { content:" "; }
  .founder-in p { margin:9px 0 0; }
  .founder-in .reference { margin-top:10px; }
  .option { gap:8px; padding:13px 7px; }
  .option>b { font-size:20px; }
  .plan-section h2 { font-size:40px; }
  .desktop-break { display:none; }
  .foot .identity span { width:auto; }
}
@media(max-width:360px) {
  .mast { padding-inline:12px; }
  .mast .wordmark { font-size:29px; }
  .mast .identity img { width:28px; height:31px; }
  .mast .contact-nav { white-space:nowrap; font-size:11px; padding-left:3px; }
  .hero-content h1 { font-size:clamp(46px,15.4vw,55px); }
}
