:root { color-scheme: light; --ink: #172033; --muted: #61708a; --line: #e8edf5; --surface: #ffffff; --orange: #ff8b2b; --cyan: #08c9d4; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; color: var(--ink); font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif; background: radial-gradient(circle at 15% 0%, #fff1df, transparent 38rem), radial-gradient(circle at 90% 20%, #dffcff, transparent 35rem), #fbfcff; }
a { color: inherit; }
.shell { width: min(100% - 40px, 1040px); margin: 0 auto; }
header { display: flex; justify-content: space-between; align-items: center; padding: 25px 0; }
.brand { color: var(--ink); font-size: 1.4rem; font-weight: 800; letter-spacing: -.055em; text-decoration: none; }
.brand span { color: var(--orange); }
nav { display: flex; gap: 18px; color: var(--muted); font-size: .92rem; }
nav a { text-decoration: none; }
nav a:hover { color: var(--ink); }
main { padding: 66px 0 80px; }
.eyebrow { margin: 0 0 14px; color: #be5e11; font-size: .74rem; font-weight: 800; letter-spacing: .14em; }
h1 { max-width: 780px; margin: 0; font-size: clamp(3rem, 8vw, 6.4rem); line-height: .98; letter-spacing: -.075em; }
h1 em { color: #c96214; font-style: normal; }
.lead { max-width: 650px; color: var(--muted); font-size: clamp(1.1rem, 2vw, 1.35rem); line-height: 1.55; }
.grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 56px; }
.card { min-height: 180px; padding: 25px; border: 1px solid rgba(23,32,51,.08); border-radius: 26px; background: rgba(255,255,255,.78); box-shadow: 0 18px 60px rgba(38,50,70,.06); }
.card h2 { margin: 0 0 12px; font-size: 1.15rem; letter-spacing: -.025em; }
.card p, .document p, li { color: var(--muted); line-height: 1.58; }
.cta { display: inline-flex; align-items: center; margin-top: 26px; padding: 14px 19px; border-radius: 999px; background: var(--ink); color: white; font-weight: 700; text-decoration: none; }
.access-actions { display: flex; align-items: end; flex-wrap: wrap; gap: 14px 18px; }
.access-actions .cta { margin-top: 26px; }
.store-badges { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 26px; }
.store-badge { display: flex; min-width: 142px; min-height: 48px; flex-direction: column; justify-content: center; padding: 7px 13px; border: 1px solid rgba(23,32,51,.14); border-radius: 11px; background: rgba(255,255,255,.68); color: var(--ink); cursor: not-allowed; opacity: .68; user-select: none; }
.store-badge small { font-size: .63rem; font-weight: 650; letter-spacing: .02em; }
.store-badge strong { font-size: 1rem; line-height: 1.08; letter-spacing: -.02em; }
.document { max-width: 760px; }
.document h1 { font-size: clamp(2.8rem, 7vw, 4.8rem); }
.document h2 { margin-top: 40px; font-size: 1.25rem; }
.document li { margin: 9px 0; }
.note { margin-top: 32px; padding: 18px 20px; border-radius: 16px; background: #fff3e7; color: #75400f; line-height: 1.5; }
.text-button { padding: 0; border: 0; background: transparent; color: #0a6dbd; font: inherit; font-weight: 700; text-decoration: underline; cursor: pointer; }
.analytics-consent { position: fixed; z-index: 10; right: 20px; bottom: 20px; width: min(420px, calc(100% - 40px)); padding: 20px; border: 1px solid rgba(23,32,51,.13); border-radius: 20px; background: rgba(255,255,255,.97); box-shadow: 0 20px 65px rgba(23,32,51,.2); }
.analytics-consent p { margin: 0 0 14px; color: var(--muted); line-height: 1.5; }
.analytics-consent p strong { color: var(--ink); }
.analytics-consent div { display: flex; flex-wrap: wrap; gap: 9px; }
.analytics-consent button { padding: 10px 14px; border: 1px solid rgba(23,32,51,.2); border-radius: 999px; background: white; color: var(--ink); font: inherit; font-size: .88rem; font-weight: 700; cursor: pointer; }
.analytics-consent .analytics-allow { border-color: var(--ink); background: var(--ink); color: white; }
.analytics-consent a { display: inline-block; margin-top: 13px; color: #0a6dbd; font-size: .85rem; }
footer { border-top: 1px solid var(--line); padding: 26px 0 42px; color: var(--muted); font-size: .87rem; }
footer .shell { display: flex; justify-content: space-between; gap: 20px; }
@media (max-width: 680px) { .shell { width: min(100% - 30px, 1040px); } header { align-items: flex-start; gap: 18px; } nav { flex-wrap: wrap; justify-content: flex-end; gap: 10px 15px; } main { padding-top: 40px; } .access-actions { align-items: stretch; } .store-badges { width: 100%; } .store-badge { flex: 1 1 142px; } .grid { grid-template-columns: 1fr; margin-top: 36px; } footer .shell { flex-direction: column; } }
