/* Public content shares the documentation palette and typography. */
.marketing { --primary:var(--accent-fill);--primary-glow:var(--accent);--primary-dark:var(--accent-fill);--secondary-accent:var(--green);--bg-dark:var(--bg);--bg-elevated:var(--surface);--bg-card:var(--surface-alt);--bg-card-hover:var(--surface-hover);--bg-subtle:var(--surface);--text-secondary:var(--muted);--text-muted:var(--muted);--text-dim:var(--dim);--border-subtle:var(--border);--border-glass:var(--border);--font-primary:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--font-secondary:var(--font-primary);--font-mono:var(--mono);--success:var(--green);--warning:var(--gold);--error:var(--rose);--cyan:var(--green);--pink:var(--accent);--orange:var(--gold); }
.marketing main { max-width:none;padding:0;margin:0; }
.marketing .container { max-width:1280px;margin:auto; }
.marketing h1,.marketing h2,.marketing h3,.marketing h4 { font-family:var(--font-primary); }
.marketing h1 { font-size:clamp(38px,4.4vw,64px);line-height:1.1;letter-spacing:-2.7px;font-weight:650; }
.marketing p { color:var(--muted);line-height:1.85; }
.marketing .text-gradient { background:linear-gradient(100deg,var(--accent),var(--green));background-clip:text;-webkit-background-clip:text;color:transparent; }
.marketing .btn,.marketing .btn-primary,.marketing .btn-outline,.marketing .btn-ghost { display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:11px 19px;border-radius:7px;font-size:13px;font-weight:600;line-height:1.6;text-decoration:none;transition:background .18s,border-color .18s; }
.marketing .btn-primary { color:#fff;background:var(--accent-fill);border:1px solid var(--accent-fill); }
.marketing .btn-primary:hover { filter:brightness(1.08);color:#fff; }
.marketing .btn-outline,.marketing .btn-ghost { color:var(--text);background:var(--surface);border:1px solid var(--border); }
.marketing .btn-outline:hover,.marketing .btn-ghost:hover { border-color:var(--accent); }
.section-nav { border-bottom:1px solid var(--border);background:var(--surface-alt); }
.section-nav .container { display:flex;align-items:center;gap:30px;overflow-x:auto;padding:13px 0;scrollbar-width:thin; }
.section-nav a { color:var(--dim);font-size:11px;white-space:nowrap; }
.section-nav a:hover { color:var(--accent); }
.marketing .hero { padding:76px 40px 70px;position:relative;border-bottom:1px solid var(--border); }
.hero-inner { display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);column-gap:64px;align-items:start;max-width:1280px;margin:auto; }
.hero-inner>h1,.hero-inner>.hero-badge,.hero-inner>.hero-subtitle,.hero-inner>.hero-actions,.hero-inner>.social-proof { grid-column:1; }
.hero-inner>.terminal { grid-column:2;grid-row:1/span 5;align-self:center; }
.hero-badge { display:flex;align-items:center;gap:8px;color:var(--dim);font:10px/1.7 var(--mono);letter-spacing:.06em;margin:0 0 24px; }
.hero-badge .dot { width:6px;height:6px;border-radius:50%;background:var(--green); }
.marketing .hero h1 { margin:0 0 22px;max-width:640px; }
.marketing .hero-subtitle { font-size:16px;line-height:1.85;margin:0 0 28px;max-width:560px; }
.marketing .hero-actions { display:flex;justify-content:flex-start;align-items:center;gap:12px;flex-wrap:wrap;margin:0; }
.social-proof { display:flex;gap:16px;margin-top:18px;color:var(--dim);font-size:12px; }
.proof-item { display:flex;align-items:center;gap:7px; }
.terminal { min-width:0;width:100%;border:1px solid var(--border);border-radius:12px;background:var(--surface-alt);overflow:hidden;box-shadow:var(--shadow); }
.terminal-bar { display:flex;align-items:center;gap:6px;padding:13px 17px;border-bottom:1px solid var(--border);background:var(--surface); }
.terminal-dot { width:7px;height:7px;border-radius:50%; }
.terminal-dot.red { background:var(--rose); }.terminal-dot.yellow { background:var(--gold); }.terminal-dot.green { background:var(--green); }
.terminal-title { font:10px/1.7 var(--mono);color:var(--dim);margin-left:8px; }
.terminal-body { padding:22px 20px;overflow-x:auto;font:10px/2 var(--mono);color:var(--muted); }
.terminal-body .line { display:block;white-space:nowrap; }.terminal-body .banner,.terminal-body .info { color:var(--accent); }.terminal-body .time { color:var(--dim); }.terminal-body .ok { color:var(--green); }.terminal-body .swap { color:var(--gold); }
.terminal-caption { padding:12px 18px;border-top:1px solid var(--border);margin:0!important;font:9px/1.7 var(--mono)!important;color:var(--dim)!important; }
.marketing .section { padding:76px 40px;border-bottom:1px solid var(--border); }
.marketing .section-alt { background:var(--surface-alt); }
.marketing .section-header { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:72px;align-items:start;margin-bottom:36px; }
.section-label { display:block;grid-column:1/-1;color:var(--green);font:10px/1.7 var(--mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px; }
.marketing .section-header h2 { font-size:clamp(25px,3vw,36px);line-height:1.25;letter-spacing:-1.1px;margin:0; }
.marketing .section-header p { font-size:14px;margin:0; }
.features-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px; }
.feature-card { background:var(--surface-alt);border:1px solid var(--border);border-radius:9px;padding:26px;transition:border-color .18s; }
.section-alt .feature-card { background:var(--bg); }.feature-card:hover { border-color:var(--accent); }
.feature-icon { display:grid;place-items:center;width:36px;height:36px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--accent);font-size:19px;margin-bottom:20px; }
.feature-icon.green,.feature-icon.cyan { color:var(--green); }.feature-icon.orange { color:var(--gold); }.feature-icon.pink { color:var(--accent); }
.marketing .feature-card h3 { font-size:15px;line-height:1.5;margin:0 0 10px; }
.marketing .feature-card p { font-size:12px;line-height:1.9;margin:0; }
.comparison-wrapper,.cmp-wrap { max-width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:9px;background:var(--surface-alt);scrollbar-width:thin; }
.comparison-table,.cmp { width:100%;min-width:780px;border-collapse:collapse;line-height:1.8; }
.comparison-table th,.comparison-table td,.cmp th,.cmp td { padding:17px 20px;border-bottom:1px solid var(--border);vertical-align:top;text-align:left;font-size:12px; }
.comparison-table thead th,.cmp thead th { font-size:10px;font-weight:600;background:var(--surface);color:var(--text);letter-spacing:.02em; }
.comparison-table tbody td,.cmp tbody td { color:var(--muted); }.comparison-table th:first-child,.cmp th:first-child { min-width:225px;font-weight:500; }
.comparison-table tbody tr:last-child td,.cmp tbody tr:last-child>* { border-bottom:0; }
.comparison-table tbody tr:hover,.cmp tbody tr:hover { background:var(--surface); }
.marketing .highlight-cell,.cmp .me { background:#8b66ee08;color:var(--text); }.cmp .y,.check { color:var(--green)!important; }.cmp .n,.cross { color:var(--dim)!important; }.cmp .p,.partial { color:var(--gold)!important; }
.jdk-grid,.limitations-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px; }
.jdk-card,.limitation-card { padding:28px;border:1px solid var(--border);border-radius:9px;background:var(--surface-alt); }
.marketing .jdk-card h3 { font-size:19px;margin-bottom:8px; }.jdk-type { font:10px/1.7 var(--mono);color:var(--green);margin-bottom:18px;text-transform:uppercase;letter-spacing:.06em; }
.jdk-card ul { list-style:none;padding:0;margin:0; }.jdk-card li { color:var(--muted);font-size:13px;line-height:1.85;margin-bottom:8px;padding:0; }.jdk-card li::before { content:'·';color:var(--accent);margin-right:8px; }
.marketing .architecture-diagram { display:block;max-width:900px;margin:0 auto;padding:28px;background:var(--surface-alt);border:1px solid var(--border);border-radius:9px;overflow-x:auto;white-space:pre;font:11px/1.9 var(--mono);color:var(--muted); }
.architecture-diagram .highlight { color:var(--green); }.architecture-diagram .label { color:var(--accent); }.architecture-diagram .dim { color:var(--dim); }
.limitations-grid { margin-top:28px; }.limitation-card { border-left:3px solid var(--gold); }.marketing .limitation-card h4 { font-size:14px;margin:0 0 8px; }.marketing .limitation-card p { font-size:12px;margin:0; }
.install-steps { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px; }
.install-step { padding:28px;border:1px solid var(--border);border-radius:9px;background:var(--surface-alt); }
.step-number { display:grid;place-items:center;width:32px;height:32px;margin-bottom:22px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--accent);font:12px var(--mono); }
.marketing .install-step h3 { font-size:16px;margin-bottom:10px; }.marketing .install-step p { font-size:13px;margin:0; }.install-step code { display:block;font-size:11px;margin-top:14px; }
.faq-list { max-width:900px;margin:0 auto; }.marketing .faq-item { border:1px solid var(--border);border-radius:8px;background:var(--surface-alt);margin-bottom:10px;overflow:hidden; }
.faq-question { display:flex;justify-content:space-between;align-items:center;gap:18px;width:100%;text-align:left;background:none;border:0;padding:21px 24px;color:var(--text);font-size:14px;font-weight:500;line-height:1.6;cursor:pointer; }
.faq-question:hover { color:var(--accent); }.faq-arrow { flex-shrink:0;color:var(--dim);font-size:10px; }.faq-item.open .faq-arrow { transform:rotate(180deg); }.home-page .faq-answer { display:block; }.home-interactive .home-page .faq-answer { display:none; }.home-interactive .home-page .faq-item.open .faq-answer { display:block; }
.faq-answer-inner { padding:0 24px 24px;color:var(--muted);font-size:13px;line-height:1.9; }
.marketing .cta-section { padding:72px 40px;text-align:center;background:var(--surface-alt); }.cta-section .container { max-width:760px; }.marketing .cta-section h2 { font-size:clamp(28px,3vw,40px);line-height:1.25;letter-spacing:-1.3px; }.marketing .cta-section p { font-size:15px;max-width:580px;margin:20px auto 26px; }.cta-actions,.cta-row { display:flex;gap:12px;justify-content:center;flex-wrap:wrap; }
.community-link { padding:28px 24px;text-align:center; }.community-link img { max-width:100%;width:240px;height:auto; }.marketing .site-footer { margin-top:0; }
/* Legal and comparison articles keep comfortable reading widths. */
.marketing .license-page { padding:56px 40px 72px; }.license-page .container { max-width:920px; }.compare-page .license-page .container { max-width:1280px; }.back-link { display:inline-flex;align-items:center;color:var(--dim);font-size:12px;margin-bottom:30px; }
.marketing .license-page h1 { max-width:960px;margin:0 0 22px;font-size:clamp(36px,4vw,52px); }.marketing .license-page .subtitle { max-width:760px;font-size:16px;line-height:1.85;margin-bottom:36px; }
.marketing .license-page h2 { font-size:24px;margin-top:40px; }.marketing .license-page p,.marketing .license-page li { font-size:14px;line-height:1.9;overflow-wrap:anywhere; }
.tldr-card { padding:26px 28px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:9px;background:var(--surface-alt);margin-bottom:30px; }.marketing .tldr-card h2 { display:flex;align-items:center;gap:12px;margin:0 0 14px;font-size:17px; }.tldr-list { list-style:none;padding:0;margin:0; }.tldr-list li { display:flex;align-items:flex-start;gap:12px;margin:8px 0;padding:0; }.tldr-list .icon { flex-shrink:0; }
.terms-grid { display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:30px 0; }.term-card { padding:26px;border:1px solid var(--border);border-radius:9px;background:var(--surface-alt); }.term-card h3 { display:flex;align-items:center;gap:10px;font-size:15px;margin-bottom:18px; }.tag { font:9px var(--mono);padding:4px 7px;border-radius:4px;border:1px solid var(--border); }.tag.green { color:var(--green); }.tag.yellow { color:var(--gold); }.tag.red { color:var(--rose); }.term-card ul { list-style:none;padding:0;margin:0; }.term-card li { padding:0!important;margin:8px 0!important; }.term-card .dot { display:none; }
.attribution-callout,.liability-callout { border:1px solid var(--border);border-left:3px solid var(--gold);border-radius:9px;padding:26px 28px;margin:28px 0;background:var(--surface-alt); }.liability-callout { border-left-color:var(--rose); }.attribution-callout code { display:block;white-space:pre-wrap;margin-top:14px;padding:18px; }.license-text { border:1px solid var(--border);border-radius:9px;background:var(--surface-alt);margin-top:32px;overflow:hidden; }.license-text summary { padding:20px 24px;font-size:15px;color:var(--text); }.license-text summary::marker { color:var(--accent); }.license-text-body { border-top:1px solid var(--border); }.license-text-body pre { margin:0;padding:24px;font:11px/1.85 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;overflow-x:auto;color:var(--muted); }
.compare-page .cmp-wrap { margin-bottom:24px; }.marketing .license-page .faq-h2 { margin-top:50px; }.compare-page .faq-item { padding:24px; }.compare-page .faq-item h3 { font-size:17px;margin-bottom:12px; }.compare-page .faq-item p { margin:0; }.compare-page .cta-row { margin-top:32px;justify-content:flex-start; }
@media(min-width:1600px) { .hero-inner { column-gap:80px; }.marketing .hero { padding-top:96px;padding-bottom:86px; } }
@media(max-width:1250px) { .section-nav .container { margin:0 40px; }.hero-inner { column-gap:36px; }.marketing .hero h1 { font-size:52px; }.terminal-body { font-size:9px; }.marketing .section-header { column-gap:36px; } }
@media(max-width:1000px) { .hero-inner { grid-template-columns:1fr 1fr;column-gap:28px; }.marketing .hero h1 { font-size:43px;letter-spacing:-1.7px; }.marketing .hero-subtitle { font-size:14px; }.hero-actions a { padding:10px 14px;font-size:12px; }.terminal-body { font-size:8px;padding:17px 13px; }.features-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.marketing .section-header { display:block; }.marketing .section-header p { margin-top:18px;max-width:760px; } }
@media(max-width:760px) { .marketing .hero { padding:44px 24px; }.hero-inner { display:block; }.marketing .hero h1 { max-width:560px;font-size:clamp(38px,7vw,52px);letter-spacing:-1.8px; }.marketing .hero-subtitle { max-width:620px;font-size:15px; }.hero-inner>.terminal { margin-top:34px; }.terminal-body { font-size:10px;padding:20px; }.hero-badge { margin-bottom:18px; }.marketing .section { padding:48px 24px; }.marketing .section-header { margin-bottom:28px; }.features-grid,.install-steps,.jdk-grid,.limitations-grid,.terms-grid { grid-template-columns:1fr; }.feature-card { padding:24px; }.marketing .feature-card p { font-size:13px; }.marketing .license-page { padding:34px 24px 48px; }.marketing .license-page h1 { letter-spacing:-1.3px; }.section-nav .container { margin:0;padding:12px 24px;gap:24px; }.marketing .cta-section { padding:48px 24px; }.license-text-body pre { padding:20px;font-size:10px; }.tldr-card,.attribution-callout,.liability-callout { padding:22px; }.faq-question { padding:18px 20px; }.faq-answer-inner { padding:0 20px 20px; } }
@media(prefers-reduced-motion:reduce) { .marketing *, .marketing *::before,.marketing *::after { transition:none!important;animation:none!important;scroll-behavior:auto; } }
@media print { .section-nav,.hero-actions,.cta-section,.community-link { display:none; }.marketing .section { padding:20px 0; }.features-grid { grid-template-columns:1fr 1fr; }.home-page .faq-answer { display:block!important; }.comparison-wrapper,.cmp-wrap { overflow:visible; }.cmp,.comparison-table { min-width:0; }.marketing .license-page { padding:0; } }
