/* Shared product-site structure, with Relua's blue annotation accent. */
:root { --paper:#edf2fc; --soft:#e6edfc; --line:#d4dff4; --blue:#2448ff; --blue-hover:#1938d6; }
.site-header { background:#f7f9fbdc; border-color:#fff; }
.brand-icon { width:36px; height:36px; }
.product-hero { grid-template-columns:1fr 1fr; }
.live-capture .product-screenshot-button { border:0; border-radius:12px; }
.review-modes,.steps-section { padding-bottom:100px; scroll-margin-top:110px; }
#features { scroll-margin-top:40px; }
.mode-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin:36px 0 26px; }
.mode-grid article { padding:32px; background:#e9eef5; border-radius:16px; }
.mode-grid article + article { background:#e2eaf3; }
.mode-grid h3 { font-size:34px; margin-bottom:16px; }
.mode-grid p { max-width:430px; color:var(--muted); font-size:18px; }
.mode-grid .mode-example { margin:30px 0 0; color:var(--blue); font-size:15px; }
.review-steps { list-style:none; counter-reset:steps; padding:0; margin:38px 0 0; }
.review-steps li { counter-increment:steps; display:grid; grid-template-columns:48px 1fr 1.15fr; gap:20px; align-items:baseline; padding:24px 0; border-top:1px solid var(--line); }
.review-steps li::before { content:counter(steps,decimal-leading-zero); color:var(--blue); font-size:15px; }
.review-steps h3,.review-steps p { margin:0; }
.review-steps p { color:var(--muted); font-size:17px; max-width:500px; }
.privacy-surface { background:#e7edf3; border-color:#d3dfe9; }
.privacy-surface p { color:#4c5968; }
.download-actions,.release-links { display:flex; flex-wrap:wrap; gap:12px; }
.release-links { margin-top:26px; gap:20px 32px; }
@media(max-width:720px) { .product-hero,.mode-grid{grid-template-columns:1fr}.review-modes,.steps-section{padding-bottom:64px}.mode-grid{gap:20px}.mode-grid article{padding:26px}.review-steps li{grid-template-columns:32px 1fr;gap:10px 16px}.review-steps p{grid-column:2}.download-actions{align-items:stretch}.download-actions .button{flex:1;white-space:nowrap} }
@media(prefers-reduced-transparency:reduce) { .site-header{background:#f3f5f7} }
@media(prefers-contrast:more) { :root{--muted:#354555;--line:#647689}.site-header{background:#f3f5f7;border-color:var(--line)} }

/* Keep one download destination and one description of each capability. */
.privacy-surface { display:block; }
.privacy-surface > div { max-width:660px; }
.privacy-surface h2 br { display:none; }
.download-status { color:var(--muted); }
.button[aria-disabled="true"], .button:disabled { opacity:.55; cursor:default; }
.button[aria-disabled="true"]:active, .button:disabled:active { transform:none; }
.pricing-page { padding-top:76px; padding-bottom:100px; }
.pricing-heading { display:flex; align-items:center; gap:22px; margin-bottom:48px; }
.pricing-heading h1 { margin:0; }
.pricing-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.price-card { display:flex; flex-direction:column; padding:30px; border:1px solid var(--line); border-radius:16px; }
.price-card h2 { margin-bottom:32px; font-size:26px; letter-spacing:-.035em; }
.price { margin:0 0 6px; font-size:48px; font-weight:620; letter-spacing:-.05em; line-height:1.2; }
.price span { font-size:15px; letter-spacing:0; font-weight:500; color:var(--muted); }
.price-quote { font-size:36px; line-height:1.6; }
.price-term { min-height:48px; margin-bottom:22px; font-size:14px; color:var(--muted); }
.price-card ul { margin:0 0 32px; padding-left:18px; font-size:15px; }
.price-card li + li { margin-top:12px; }
.price-card .button { width:100%; margin-top:auto; }
.supporter-card { background:#fff; border-color:#a9baff; }
@media(max-width:900px) { .pricing-grid{gap:16px}.price-card{padding:24px}.price-card h2{font-size:23px}.price-quote{font-size:30px;line-height:1.92} }
@media(max-width:720px) { .pricing-page{padding-top:48px;padding-bottom:64px}.pricing-heading{margin-bottom:32px}.pricing-grid{grid-template-columns:1fr}.price-card{padding:28px}.price-card h2{margin-bottom:20px}.price-term{min-height:0}.price-card ul{margin-bottom:24px} }
@media(prefers-color-scheme:dark) {
 :root { color-scheme:dark; --ink:#edf2fc; --muted:#aab6ca; --paper:#121722; --soft:#202b40; --line:#344159; --blue:#91a7ff; --blue-hover:#b3c2ff; }
 .site-header { background:#171e2ced; border-color:#344159; box-shadow:none; }
 .nav a { color:var(--muted); }
 .button { background:var(--ink); border-color:var(--ink); color:#121722; }
 .button:hover { background:#cdd9f2; border-color:#cdd9f2; }
 .button-secondary { background:transparent; color:var(--ink); border-color:#53627c; }
 .button-secondary:hover { background:var(--soft); border-color:#7585a0; }
 .live-capture { background:#1b2332; box-shadow:none; }
 .privacy-surface, .download-grid article:first-child, .supporter-card { background:#1b2332; border-color:var(--line); }
 .privacy-surface p { color:var(--muted); }
 .supporter-card { border-color:#637ac5; }
 .product-image-close { color:var(--ink); }
}

.legal-page { padding-top:76px; padding-bottom:100px; }
.legal-heading { max-width:800px; margin-bottom:48px; }
.legal-heading h1 { margin-bottom:20px; }
.legal-copy { max-width:760px; }
.legal-copy section + section { margin-top:36px; padding-top:32px; border-top:1px solid var(--line); }
.legal-copy h2 { font-size:26px; margin-bottom:16px; letter-spacing:-.03em; }
.legal-copy p { color:var(--muted); font-size:17px; line-height:1.7; }
.legal-copy a { color:var(--blue); text-decoration:underline; text-underline-offset:3px; }
@media(max-width:720px) { .legal-page{padding-top:48px;padding-bottom:64px}.legal-heading{margin-bottom:32px}.legal-copy h2{font-size:23px}.legal-copy p{font-size:16px} }

/* One OS-aware entry point; CPU choices appear only when needed. */
.product-hero .download-status { margin:12px 0 0; font-size:14px; }
.primary-download { min-height:52px; }
.download-dialog { width:min(460px,calc(100% - 32px)); padding:32px; border:1px solid var(--line); border-radius:16px; background:var(--paper); color:var(--ink); }
.download-dialog::backdrop { background:#101419bf; }
.download-dialog h2 { padding-right:24px; font-size:28px; letter-spacing:-.035em; }
.download-dialog h3 { margin:24px 0 12px; font-size:18px; }
.installer-options { display:flex; flex-direction:column; gap:12px; }
.download-close { position:absolute; top:10px; right:10px; width:40px; height:40px; border:0; border-radius:8px; background:transparent; color:var(--ink); font-size:28px; cursor:pointer; }
.download-close:hover { background:var(--soft); }

/* Quiet, centered headings with the commitments written in plain language. */
.pricing-heading { justify-content:center; text-align:center; }
.price-card { text-align:center; }
.price-card ul { padding:0; list-style:none; }
.bulk-contact { margin:36px auto 0; max-width:600px; text-align:center; color:var(--muted); font-size:15px; }
.bulk-contact a { color:var(--blue); text-decoration:underline; text-underline-offset:3px; }
.legal-page { max-width:calc(820px + var(--page-x) * 2); }
.legal-heading { text-align:center; margin-inline:auto; }
.legal-copy { margin-inline:auto; }
.downloads-page,.values-page { padding-top:76px; padding-bottom:100px; }
.centered-heading { text-align:center; margin:0 auto 64px; max-width:800px; }
.centered-heading h1 { margin-bottom:24px; }
.centered-heading .lead { max-width:580px; margin:0 auto; }
.centered-heading .actions { justify-content:center; }
.centered-heading .download-status { margin:14px 0 0; font-size:14px; }
.all-downloads { max-width:900px; margin-inline:auto; }
.all-downloads > h2 { text-align:center; font-size:30px; }
.download-grid { text-align:center; }
.download-grid p { margin-inline:auto; }
.values-list { max-width:880px; margin-inline:auto; }
.values-list section { display:grid; grid-template-columns:1fr 1.3fr; gap:40px; padding:32px 0; border-top:1px solid var(--line); }
.values-list h2 { font-size:27px; margin:0; letter-spacing:-.03em; }
.values-list p { margin:0; font-size:17px; color:var(--muted); }
.values-list a { color:var(--blue); text-decoration:underline; text-underline-offset:3px; }
@media(max-width:720px) { .downloads-page,.values-page{padding-top:48px;padding-bottom:64px}.centered-heading{margin-bottom:40px}.values-list section{grid-template-columns:1fr;gap:16px;padding:26px 0}.values-list h2{font-size:24px}.values-list p{font-size:16px}.bulk-contact{margin-top:28px} }
