/* Basic/Premium comparison. Report previews are raster images, not report HTML. */
.promo {box-sizing:border-box; position:relative; left:50%; transform:translateX(-50%); width:min(calc(100vw - 40px),1380px); max-width:none; margin:30px 0 0; padding:0 0 32px; color:var(--ink); text-align:left;}
.promo * {box-sizing:border-box;}
.promo-head {display:flex; align-items:end; justify-content:space-between; gap:32px; margin-bottom:29px;}
.promo-kicker {margin:0 0 12px; color:var(--accent); font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase;}
.promo-head h2 {max-width:780px; margin:0; font-size:clamp(34px,4vw,58px); line-height:1.05; letter-spacing:-.05em;}
.promo-head h2 span {color:var(--accent);}
.promo-intro {max-width:360px; margin:0 0 2px; color:var(--muted); font-size:16px; line-height:1.55;}
.promo-grid {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px;}
.promo-card {min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:20px; background:var(--surface); box-shadow:0 14px 38px #143a8710;}
.promo-card-premium {border-color:var(--success-border); box-shadow:0 16px 42px #1454bd20;}
.promo-card-head {min-height:150px; padding:24px 27px 18px;}
.promo-card-title {display:flex; align-items:center; gap:10px; margin-bottom:8px;}
.promo-card-title h3 {margin:0; font-size:30px; line-height:1.1; letter-spacing:-.04em;}
.promo-pill {display:inline-flex; align-items:center; padding:5px 9px; border-radius:99px; background:var(--soft); color:var(--muted); font-size:11px; font-style:normal; font-weight:800; letter-spacing:.08em; text-transform:uppercase;}
.promo-card-premium .promo-pill {background:var(--success-bg); color:var(--accent);}
.promo-card-head p {margin:0 0 13px; color:var(--muted); font-size:14px; line-height:1.4;}
.promo-chips {display:flex; gap:7px; flex-wrap:wrap;}
.promo-chips span {padding:4px 8px; border-radius:6px; background:var(--soft); color:var(--muted); font-size:12px; font-weight:650;}
.promo-card-premium .promo-chips span {background:var(--success-bg); color:var(--success-text);}
.promo-browser {margin:0 13px; overflow:hidden; border:1px solid var(--line); border-radius:11px 11px 0 0; background:#fff;}
.promo-browser-bar {height:35px; display:flex; align-items:center; gap:11px; padding:0 12px; border-bottom:1px solid var(--line); background:var(--soft); color:var(--muted); font-size:11px; font-weight:650;}
.promo-browser-dots {display:flex; gap:5px;}
.promo-browser-dots i {width:7px; height:7px; border-radius:50%; background:var(--input-border); opacity:.7;}
.promo-shot {display:block; width:100%; height:auto; aspect-ratio:690/525; object-fit:cover; object-position:top left;}
.promo-shot-dark {display:none;}
.promo-card-premium:has(#promo-theme-dark:checked) .promo-shot-light {display:none;}
.promo-card-premium:has(#promo-theme-dark:checked) .promo-shot-dark {display:block;}
.promo-card-footer {min-height:56px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 27px 18px; color:var(--muted); font-size:12px;}
.promo-theme-options {display:flex; align-items:center; gap:4px;}
.promo-theme-options label {position:relative; cursor:pointer;}
.promo-theme-options input {position:absolute; width:1px; height:1px; opacity:0;}
.promo-theme-options span {display:block; padding:5px 9px; border:1px solid var(--line); border-radius:7px; color:var(--muted); font-size:12px; font-weight:700;}
.promo-theme-options input:checked+span {border-color:var(--accent); background:var(--accent); color:#fff;}
.promo-theme-options input:focus-visible+span {outline:2px solid var(--accent); outline-offset:2px;}
.promo-feature-grid {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin:22px 0 28px;}
.promo-feature {padding:0 27px;}
.promo-feature h4 {margin:0 0 8px; color:var(--subtle); font-size:12px; font-weight:800; letter-spacing:.11em; text-transform:uppercase;}
.promo-feature p {margin:0; color:var(--muted); font-size:14px; line-height:1.55;}
.promo-colors {padding:24px 27px 21px; border:1px solid var(--line); border-radius:19px; background:var(--surface);}
.promo-colors-head {display:flex; align-items:baseline; justify-content:space-between; gap:18px; margin-bottom:16px;}
.promo-colors h3 {margin:0; font-size:26px; letter-spacing:-.035em;}
.promo-colors-head p {max-width:650px; margin:0; color:var(--muted); font-size:14px; line-height:1.5;}
.promo-colors picture img {display:block; width:100%; height:auto; border:1px solid var(--line); border-radius:11px;}
.promo-future {display:grid; grid-template-columns:minmax(0,1fr) minmax(290px,470px); align-items:center; gap:27px; margin-top:21px; padding:26px 27px; border-radius:19px; background:linear-gradient(115deg,#10244b,#154a9e); color:#fff; box-shadow:0 15px 35px #154a9e21;}
.promo-future-label {display:inline-block; margin-bottom:12px; padding:5px 9px; border:1px solid #a9c5ff6b; border-radius:99px; background:#ffffff16; color:#d4e5ff; font-size:11px; font-weight:800; letter-spacing:.11em; text-transform:uppercase;}
.promo-future h3 {margin:0 0 9px; color:#fff; font-size:clamp(24px,2.5vw,34px); line-height:1.15; letter-spacing:-.035em;}
.promo-future p {max-width:65ch; margin:0; color:#d7e4fa; font-size:14px; line-height:1.55;}
.promo-pricing {display:flex; align-items:center; gap:12px; padding:17px 18px; border:1px solid #c5dbff4d; border-radius:13px; background:#ffffff13;}
.promo-price {min-width:0; flex:1;}
.promo-price strong {display:block; margin-bottom:3px; color:#fff; font-size:22px; line-height:1.2; letter-spacing:-.025em;}
.promo-price span {display:block; color:#d7e4fa; font-size:12px; line-height:1.45;}
.promo-plus {color:#b6d1ff; font-size:24px; font-weight:300;}
.promo-truth {display:flex; align-items:baseline; gap:13px; margin:25px 0 0; padding:16px 19px; border:1px solid var(--success-border); border-radius:13px; background:var(--success-bg); color:var(--success-text); font-size:14px; line-height:1.5;}
.promo-truth strong {flex:none; font-size:15px;}
.promo-note {margin:18px 0 0; color:var(--subtle); font-size:12px;}
.format-heading-row {display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:baseline; width:100%;}
.format-heading-row .promo-jump {grid-column:2; text-align:center;}
.promo-jump {color:var(--accent); font-size:13px; font-weight:700; text-decoration:none;}
.promo-jump:hover {text-decoration:underline;}
.promo-jump:focus-visible {outline:2px solid var(--accent); outline-offset:3px; border-radius:2px;}
@media(max-width:980px) {
  .promo-head {display:block;}
  .promo-intro {max-width:620px; margin-top:16px;}
  .promo-grid,.promo-feature-grid {grid-template-columns:1fr;}
  .promo-card-head {min-height:0;}
  .promo-feature {padding:0 5px;}
  .promo-feature-grid {gap:17px;}
  .promo-colors-head {display:block;}
  .promo-colors-head p {margin-top:8px;}
  .promo-future {grid-template-columns:1fr;}
}
@media(max-width:620px) {
  .format-heading-row {display:block;}
  .format-heading-row .promo-jump {display:block; margin-top:6px;}
  .promo {width:calc(100vw - 28px); margin-top:22px;}
  .promo-head h2 {font-size:35px;}
  .promo-intro {font-size:15px;}
  .promo-card-head {padding:20px 18px;}
  .promo-card-title h3 {font-size:27px;}
  .promo-browser {margin:0 8px;}
  .promo-shot {aspect-ratio:390/525;}
  .promo-card-footer {padding:11px 18px 18px;}
  .promo-colors {padding:18px 13px;}
  .promo-colors h3 {font-size:23px;}
  .promo-future {padding:21px 18px; gap:18px;}
  .promo-pricing {padding:14px 12px; gap:8px;}
  .promo-price strong {font-size:18px;}
  .promo-price span {font-size:11px;}
  .promo-truth {display:block;}
  .promo-truth strong {display:block; margin-bottom:5px;}
}
@media(min-width:1120px) {
  body.horizontal-layout #main>.promo {grid-column:1/-1; grid-row:3;}
  body.horizontal-layout #main>.privacy {grid-row:4;}
}
