/* Marketing components use Brand System 2.0 tokens. */
.marketing { margin:0; background:var(--wl-void); color:var(--wl-fog); font:var(--wl-text-body); }
.m-header { border-bottom:1px solid var(--wl-line); background:var(--wl-void); }
.m-nav-wrap,.m-footer-inner { max-width:1152px; margin:auto; padding:20px 24px; }
.m-nav-wrap { display:flex; align-items:center; gap:24px; }
.m-nav-wrap img,.m-footer img { display:block; width:144px; height:auto; }
.m-desktop-nav { display:flex; flex:1; align-items:center; justify-content:center; gap:24px; font-size:14px; }
.m-header a,.m-footer a { text-decoration:none; }
.m-header a:hover,.m-footer a:hover { color:var(--wl-frost); }
a.m-button,.m-button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:10px 20px; border:1px solid var(--wl-pulse); border-radius:var(--wl-radius-md); background:var(--wl-pulse); color:var(--wl-void); font-weight:500; font-size:14px; text-decoration:none; line-height:1.4; text-align:center; }
a.m-button:hover { color:var(--wl-void); opacity:.9; }
.m-mobile-nav { display:none; }
.m-skip { position:absolute; left:16px; top:-100px; padding:12px; background:var(--wl-pulse); color:var(--wl-void); z-index:100; }
.m-skip:focus { top:8px; }
.m-main { max-width:1152px; margin:auto; padding:0 24px; }
.m-hero { padding:64px 0; max-width:900px; }
.m-breadcrumb { margin-bottom:32px; font-size:13px; }
.m-breadcrumb a { color:var(--wl-fog); }
.marketing h1 { font-size:clamp(38px,5.8vw,64px); line-height:1.07; letter-spacing:-.05em; font-weight:600; color:var(--wl-frost); margin:20px 0 24px; }
.marketing h2,.m-cta h2 { font-size:clamp(25px,3vw,36px); line-height:1.15; letter-spacing:-.04em; font-weight:600; color:var(--wl-frost); margin:0 0 20px; }
.marketing h3 { font-size:21px; line-height:1.3; letter-spacing:-.025em; color:var(--wl-frost); margin:0 0 12px; font-weight:500; }
.marketing p { margin:0 0 20px; }
.m-intro { max-width:760px; font-size:20px; line-height:1.65; }
.m-section { padding:48px 0; border-top:1px solid var(--wl-line); }
.m-section>p { max-width:780px; }
.m-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.m-grid-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.m-card { border:1px solid var(--wl-line); border-radius:var(--wl-radius-lg); background:var(--wl-obsidian); padding:28px; }
.m-card p:last-child { margin-bottom:0; }
.m-main a:not(.m-button),.m-home-links a { color:var(--wl-pulse); text-decoration:underline; text-underline-offset:4px; }
.m-main a:not(.m-button):hover { text-decoration:underline; }
.m-main ul,.m-main ol { padding-left:24px; margin:0 0 24px; }
.m-main ul { list-style:disc; }
.m-main ol { list-style:decimal; }
.m-main li { margin:10px 0; padding-left:4px; }
.m-main strong { color:var(--wl-frost); font-weight:500; }
.m-main code { font-family:var(--wl-font-mono); font-size:.88em; overflow-wrap:anywhere; }
.m-main pre { white-space:pre-wrap; overflow-wrap:anywhere; padding:24px; border:1px solid var(--wl-line); border-radius:var(--wl-radius-lg); background:var(--wl-obsidian); color:var(--wl-frost); line-height:1.7; margin:20px 0; }
.m-table-wrap { overflow-x:auto; border:1px solid var(--wl-line); border-radius:var(--wl-radius-lg); margin:24px 0; }
.m-main table { border-collapse:collapse; width:100%; text-align:left; font-size:15px; }
.m-main caption { padding:16px; text-align:left; color:var(--wl-frost); }
.m-main th,.m-main td { padding:16px 20px; border-top:1px solid var(--wl-line); vertical-align:top; }
.m-main th { background:var(--wl-obsidian); color:var(--wl-frost); font-weight:500; }
.m-main details { border-bottom:1px solid var(--wl-line); padding:20px 0; }
.m-main summary { cursor:pointer; color:var(--wl-frost); font-size:18px; }
.m-main details p { margin:16px 0 0; max-width:850px; }
.m-cta { display:flex; gap:32px; align-items:center; justify-content:space-between; margin:40px 0 72px; padding:40px; border:1px solid var(--wl-line); border-radius:var(--wl-radius-lg); background:var(--wl-obsidian); }
.m-cta p { margin:0 0 12px; }
.m-cta .m-button { flex-shrink:0; }
.m-footer { border-top:1px solid var(--wl-line); background:var(--wl-void); color:var(--wl-fog); font:var(--wl-text-body); }
.m-footer-inner { padding-top:40px; padding-bottom:40px; }
.m-footer p { margin:16px 0; }
.m-footer nav { display:flex; gap:16px 24px; flex-wrap:wrap; padding:24px 0; font-size:14px; }
.m-small { font-size:13px; }
.m-home-links { padding:0 24px 64px; max-width:1152px; margin:auto; }
.m-home-links h2 { color:var(--wl-frost); font-size:32px; margin-bottom:24px; }
.m-home-links h3 { color:var(--wl-frost); font-size:20px; margin-bottom:12px; }
.m-home-links p { margin-bottom:16px; }
:focus-visible { outline:2px solid var(--wl-pulse); outline-offset:4px; }
@media(max-width:1000px) { .m-desktop-nav { display:none; } .m-nav-cta { margin-left:auto; } .m-mobile-nav { display:block; position:relative; font-size:14px; } .m-mobile-nav summary { cursor:pointer; padding:10px 0; color:var(--wl-frost); } .m-mobile-nav nav { position:absolute; right:0; top:48px; width:240px; background:var(--wl-obsidian); border:1px solid var(--wl-line); padding:16px; z-index:50; } .m-mobile-nav nav a { display:block; padding:12px; } }
@media(max-width:700px) { .m-grid,.m-grid-two { grid-template-columns:1fr; } .m-nav-wrap { gap:16px; padding:16px; } .m-nav-wrap img { width:110px; } .m-nav-cta { padding:10px 12px; } .m-main { padding:0 20px; } .m-hero { padding:40px 0; } .m-section { padding:32px 0; } .m-cta { align-items:flex-start; flex-direction:column; padding:28px; } .m-intro { font-size:18px; } }

.m-product-preview{margin:2rem 0}.m-product-preview img{display:block;width:100%;height:auto;border:1px solid var(--wl-line);border-radius:var(--wl-radius-lg)}.m-product-preview figcaption{margin-top:.75rem;font-size:.875rem;color:var(--wl-fog)}

/* Resale comparison: all revenue and profit figures cover one full plan term. */
.m-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.m-pricing-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:28px; }
.m-pricing-heading h2 { margin-bottom:12px; }
.m-pricing-heading p { margin:0; }
.m-pricing-heading>a { font-size:14px; flex-shrink:0; }
.m-volume-control,.m-plan-picker { border:0; padding:0; margin:0; min-width:0; }
.m-volume-control legend,.m-plan-picker legend { font-size:18px; font-weight:500; color:var(--wl-frost); padding:0; margin-bottom:16px; }
.m-volume-inputs { display:flex; gap:36px; align-items:center; padding:24px; background:var(--wl-obsidian); border:1px solid var(--wl-line); border-radius:var(--wl-radius-lg); }
.m-slider-wrap { flex:1; min-width:0; }
.m-slider-wrap input { width:100%; height:32px; cursor:pointer; accent-color:var(--wl-pulse); }
.m-slider-scale { display:flex; justify-content:space-between; font-size:12px; margin-top:4px; }
.m-count-input { width:136px; flex-shrink:0; }
.m-count-input label { display:block; font-size:13px; margin-bottom:6px; }
.m-count-input input { width:100%; border:1px solid var(--wl-line); border-radius:var(--wl-radius-md); padding:10px 12px; background:var(--wl-void); color:var(--wl-frost); font:500 24px/1.3 var(--wl-font-mono); }
#count-error { margin:12px 0 0; color:var(--wl-frost); }
.m-projection { margin:28px 0 36px; padding:28px; border:1px solid var(--wl-line); border-radius:var(--wl-radius-lg); }
.m-projection-label { font-size:14px; color:var(--wl-frost); }
.m-projection-grid { display:grid; grid-template-columns:1fr 1fr 1.2fr; gap:24px; margin-bottom:24px; }
.m-projection-grid span { display:block; font-size:13px; margin-bottom:10px; }
.m-projection-grid strong { display:block; font:500 clamp(24px,3vw,36px)/1.2 var(--wl-font-mono); letter-spacing:-.04em; }
.m-projection-profit { padding-left:24px; border-left:1px solid var(--wl-line); }
.m-projection-profit strong { color:var(--wl-pulse); }
.m-projection p:last-child { margin:0; }
.m-plan-picker>p { margin-bottom:0; }
.m-resale-wrap { margin:16px 0; }
.m-resale-table { min-width:800px; font-variant-numeric:tabular-nums; }
.m-resale-table caption { font-size:13px; }
.m-resale-table thead th { font-size:13px; }
.m-resale-table thead th>span { font-size:12px; color:var(--wl-fog); font-weight:400; }
.m-resale-table small { display:block; color:var(--wl-fog); font-size:11px; margin-top:5px; font-weight:400; white-space:nowrap; }
.m-resale-table td { white-space:nowrap; font-family:var(--wl-font-mono); font-size:14px; }
.m-resale-table tbody tr { cursor:pointer; }
.m-resale-table tbody th { background:transparent; }
.m-resale-table tr.is-selected { background:var(--wl-graphite); }
.m-resale-table tr.is-selected th { box-shadow:inset 3px 0 var(--wl-pulse); }
.m-plan-label { display:flex; gap:10px; align-items:center; cursor:pointer; min-height:44px; white-space:nowrap; }
.m-plan-label input { width:18px; height:18px; margin:0; accent-color:var(--wl-pulse); }
.m-profit-cell strong { color:var(--wl-pulse); }
.m-scroll-hint { display:none; }
.m-pricing-next { display:flex; gap:24px; align-items:center; justify-content:space-between; margin-top:32px; }
.m-pricing-next p { margin:0; }
@media(max-width:900px) { .m-pricing-heading { align-items:flex-start; flex-direction:column; } .m-projection-grid { gap:16px; } .m-projection { padding:24px; } .m-scroll-hint { display:block; } }
@media(max-width:600px) { .m-volume-inputs { gap:20px; padding:20px; } .m-count-input { width:104px; } .m-count-input input { font-size:20px; } .m-projection-grid { grid-template-columns:1fr 1fr; gap:24px 16px; } .m-projection-profit { grid-column:1 / -1; padding:20px 0 0; border-left:0; border-top:1px solid var(--wl-line); } .m-projection-profit strong { font-size:36px; } .m-pricing-next { align-items:flex-start; flex-direction:column; } }

.m-comparison-table { min-width:680px; }

/* Protocol feature: semantic copy, no synthetic speed comparisons or extra scripts. */
.m-protocol-hero { display:block; margin-top:24px; color:var(--wl-pulse); font-weight:500; text-decoration:underline; text-underline-offset:5px; }
.m-protocols { border-bottom:1px solid var(--wl-line); scroll-margin-top:24px; }
.m-protocols-inner { max-width:1152px; margin:auto; padding:80px 24px; display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:64px; }
.m-protocols h2 { margin:20px 0 24px; color:var(--wl-frost); font-size:clamp(42px,5vw,64px); line-height:1.05; letter-spacing:-.05em; font-weight:600; }
.m-protocols h2 span { color:var(--wl-pulse); }
.m-protocols-copy>p { margin-bottom:20px; }
.m-protocols-lead { color:var(--wl-frost); font-size:20px; line-height:1.6; }
.m-protocols-link { display:inline-block; margin-top:8px; color:var(--wl-pulse); text-decoration:underline; text-underline-offset:5px; }
.m-protocols-panel { border:1px solid var(--wl-line); border-top:2px solid var(--wl-pulse); border-radius:var(--wl-radius-lg); background:var(--wl-obsidian); padding:32px; }
.m-protocols-panel>.wl-label { line-height:1.8; }
.m-protocol-row { display:flex; gap:20px; padding:28px 0; border-bottom:1px solid var(--wl-line); }
.m-protocol-index { padding-top:5px; color:var(--wl-pulse); font:var(--wl-text-body); font-family:var(--wl-font-mono); font-size:13px; }
.m-protocols h3 { margin-bottom:8px; color:var(--wl-frost); font-size:24px; font-weight:500; letter-spacing:-.025em; line-height:1.3; }
.m-protocols-panel p { line-height:1.7; }
.m-protocol-build { padding-top:28px; }
.m-protocol-build h3 { font-size:18px; }
@media(max-width:800px) { .m-protocols-inner { grid-template-columns:1fr; gap:32px; padding:48px 20px; } .m-protocols-panel { padding:24px; } }

/* Product evidence: one lazy-loaded screenshot, with the benefits also in HTML. */
.m-panel-preview { border-top:1px solid var(--wl-line); }
.m-panel-preview-inner { max-width:1152px; margin:auto; padding:64px 24px; }
.m-panel-preview h2 { margin:16px 0 20px; color:var(--wl-frost); font-size:clamp(32px,4vw,44px); font-weight:600; line-height:1.12; letter-spacing:-.04em; }
.m-panel-intro { max-width:760px; margin-bottom:32px; font-size:18px; line-height:1.7; }
.m-dashboard-figure { margin:0 0 36px; }
.m-dashboard-figure a { display:block; border-radius:var(--wl-radius-lg); }
.m-dashboard-figure img { display:block; width:100%; height:auto; border:1px solid var(--wl-line); border-radius:var(--wl-radius-lg); }
.m-dashboard-figure figcaption { max-width:850px; margin-top:12px; font-size:13px; line-height:1.6; }
.m-panel-benefits { gap:28px; margin-bottom:24px; }
.m-panel-benefits article { border-top:1px solid var(--wl-line); padding-top:24px; }
.m-panel-benefits h3,.m-trial-note h3 { margin-bottom:10px; color:var(--wl-frost); font-size:18px; font-weight:500; line-height:1.4; letter-spacing:-.02em; }
.m-panel-benefits p,.m-trial-note p { font-size:15px; line-height:1.7; }
.m-trial-note { max-width:600px; margin-top:24px; padding-top:24px; border-top:1px solid var(--wl-line); }
@media(max-width:700px) { .m-panel-preview-inner { padding:40px 20px; } .m-panel-benefits { gap:20px; } }
