/* Product-led landing: transparent examples and first-party proof. */
body.api-landing .api-hero-copy h1 { font-size:clamp(3.1rem,4.8vw,4.7rem); }
body.api-landing .api-hero-copy h1 em { display:block; color:#116149; margin-top:.16em; }
.request-switch { display:flex; gap:6px; padding:20px 24px 0; flex-wrap:wrap; }
.request-switch button { border:1px solid #525950; border-radius:6px; background:transparent; color:#dce3da; padding:9px 13px; font:inherit; font-size:.8rem; cursor:pointer; }
.request-switch button[aria-pressed="true"] { background:#ddf59a; border-color:#ddf59a; color:#182215; }
body.api-landing .api-console pre { white-space:pre-wrap; overflow-wrap:anywhere; font-size:.77rem; }
.request-outcome { padding:24px 28px; border-top:1px solid #454a42; background:#252d23; }
.request-outcome h3 { color:white; font-size:1.4rem; margin:0 0 12px; letter-spacing:-.03em; }
.request-outcome p { color:#c0cbb9; font-size:.9rem; line-height:1.65; }
.request-outcome a { color:#ddf59a; font-size:.85rem; }
body.api-landing .request-outcome .api-kicker { color:#ddf59a; }
.request-note { color:#bac3b5; padding:16px 28px; margin:0; font-size:.72rem; }
.build-grid { display:grid; grid-template-columns:1fr 1fr; gap:36px; }
.build-feature { position:relative; overflow:hidden; background:#eaf0df; padding:42px; min-height:430px; }
.build-feature h3 { font-size:3rem; line-height:1.08; letter-spacing:-.055em; margin:0 0 24px; position:relative; z-index:1; }
.build-feature p { max-width:320px; color:#47533e; position:relative; z-index:1; }
.build-feature a { position:relative; z-index:1; margin-top:20px; }
.build-mark { position:absolute; bottom:-80px; right:-12px; font-size:260px; line-height:1; font-weight:800; letter-spacing:-50px; color:#d3dfc0; transform:rotate(-12deg); pointer-events:none; }
.build-mark span { color:#c7d7b0; }
.build-paths article { padding:22px 0; border-top:1px solid var(--landing-line); }
.build-paths article:first-child { padding-top:10px; }
.build-paths span { font: .67rem 'Geist Mono',monospace; color:#687260; }
.build-paths h3 { margin:12px 0 8px; font-size:1.35rem; letter-spacing:-.03em; }
.build-paths p { margin:0 0 12px; color:var(--landing-muted); font-size:.92rem; }
.build-paths a,.faq a { color:#116149; text-decoration:underline; text-underline-offset:4px; }
.comparison-teaser { background:#edf0e7; }
body.api-landing .comparison-teaser .api-section-heading { margin-bottom:0; }
.faq { max-width:880px; }
.faq h2 { font-size:2.5rem; letter-spacing:-.05em; margin:0 0 32px; }
.faq details { border-top:1px solid var(--landing-line); padding:22px 0; }
.faq summary { cursor:pointer; font-weight:600; }
.faq details p { color:var(--landing-muted); line-height:1.7; }
body.api-landing :focus-visible { outline:3px solid #519d79; outline-offset:5px; }
.compare-intro { max-width:820px; padding:90px 0 45px; }
.compare-intro h1 { font-size:clamp(2.8rem,5vw,4.5rem); line-height:1.05; letter-spacing:-.06em; margin:0 0 24px; }
.compare-intro > p { color:var(--landing-muted); font-size:1.05rem; }
.compare-table-wrap { overflow-x:auto; margin:30px 0 28px; border:1px solid var(--landing-line); }
.compare-table { border-collapse:collapse; width:100%; min-width:780px; font-size:.9rem; }
.compare-table th,.compare-table td { padding:24px; text-align:left; vertical-align:top; border-bottom:1px solid var(--landing-line); line-height:1.65; }
.compare-table th { background:#edf0e7; font-weight:650; }
.compare-table tbody th { width:155px; background:transparent; }
.compare-table tr:first-child td,.compare-table tr:first-child th { background:#edf4e5; }
.compare-table a { color:#116149; text-decoration:underline; text-underline-offset:3px; }
.compare-note { font-size:.83rem; color:var(--landing-muted); }
.buyer-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.buyer-steps article { border-top:2px solid #116149; padding-top:20px; }
.buyer-steps p { color:var(--landing-muted); }
@media(max-width:720px) { .build-grid,.buyer-steps { grid-template-columns:1fr; } .build-feature { padding:28px; } .request-switch { padding-inline:18px; } .compare-intro { padding-top:50px; } }
