:root { color-scheme: light; --ink:#15232b; --muted:#53626b; --canvas:#f5f7f8; --surface:#fff; --line:#dce4e8; --accent:#1769aa; --warm:#a64f2a; --radius:18px; font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
* { box-sizing:border-box; } html { background:var(--canvas); color:var(--ink); } body { margin:0; line-height:1.58; } a { color:var(--accent); text-underline-offset:.18em; }
.shell { width:min(1120px,calc(100% - 40px)); margin:0 auto; } .site-header { border-bottom:1px solid var(--line); background:rgba(255,255,255,.92); }
.nav { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:70px; } .brand { color:var(--ink); font-size:1.1rem; font-weight:800; text-decoration:none; } .brand-mark { color:var(--accent); margin-right:7px; }
nav { display:flex; gap:20px; flex-wrap:wrap; } nav a { color:var(--muted); font-weight:650; text-decoration:none; } nav a[aria-current="page"] { color:var(--accent); }
.hero { padding:clamp(58px,10vw,118px) 0 74px; background:linear-gradient(135deg,#e9f4fb,#f7f8f5 54%,#f5eee9); } .eyebrow { color:var(--accent); font-weight:800; letter-spacing:.08em; text-transform:uppercase; font-size:.78rem; }
h1,h2,h3 { line-height:1.15; letter-spacing:-.035em; } h1 { max-width:850px; margin:14px 0 20px; font-size:clamp(2.5rem,6vw,5.1rem); } h2 { margin-top:0; font-size:clamp(1.55rem,3vw,2.25rem); } h3 { font-size:1.1rem; }
.lead { max-width:720px; color:var(--muted); font-size:clamp(1.1rem,2vw,1.3rem); } .cta-row { display:flex; gap:12px; flex-wrap:wrap; margin-top:30px; } .button { display:inline-block; border-radius:999px; padding:12px 19px; background:var(--accent); color:#fff; font-weight:750; text-decoration:none; } .button.secondary { background:transparent; color:var(--accent); border:1px solid var(--accent); }
.section { padding:68px 0; } .section.alt { background:var(--surface); border-block:1px solid var(--line); } .grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; } .card { background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:24px; } .card p,.content p { color:var(--muted); }
.notice { border-left:4px solid var(--warm); background:#fff7f2; border-radius:0 var(--radius) var(--radius) 0; padding:18px 20px; color:#66351f; } .content { width:min(780px,100%); padding:58px 0; } .content h1 { font-size:clamp(2.2rem,5vw,3.8rem); } .content h2 { margin-top:46px; }
.site-footer { border-top:1px solid var(--line); color:var(--muted); font-size:.92rem; padding:32px 0; } .footer-row { display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; }
@media (max-width:720px) { .shell { width:min(100% - 28px,1120px); } .nav { padding:13px 0; align-items:flex-start; flex-direction:column; gap:8px; } nav { gap:14px; } .grid { grid-template-columns:1fr; } .section { padding:48px 0; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
