:root { color-scheme: light; --paper: #f6f7f8; --white: #fff; --ink: #15171b; --muted: #626b75; --hair: #dfe3e8; --accent: #c82335; --dark: #14171d; --ring: #e8b9c0; }
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Inter, Arial, sans-serif; font-size: 16px; line-height: 1.7; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:focus-visible { outline: 3px solid var(--ring); outline-offset: 4px; border-radius: 2px; }
.shell { width: min(1152px, calc(100% - 40px)); margin-inline: auto; }
.site-header { height: 84px; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--hair); }
.site-header > .shell { display: flex; align-items:center; justify-content:space-between; height: 100%; }
.brand { display:flex; align-items:center; text-decoration:none; gap:12px; }
.brand-mark { background: var(--dark); border-radius: 13px; padding: 8px; width:48px; height:48px; display:grid; place-items:center; }
.brand-mark img { max-width:100%; max-height:100%; object-fit:contain; }
.brand-word { font-size:18px; letter-spacing:-.04em; font-weight: 900; line-height:1.06; }
.brand-word small { display:block; font-size:10px; color:var(--muted); font-weight:750; letter-spacing:.14em; margin-top:4px; }
.nav { display:flex; gap:28px; align-items:center; }
.nav a { font-size:13px; font-weight:750; text-decoration:none; color:var(--muted); transition:color .2s; }
.nav a[aria-current="page"] { color:var(--ink); }
.nav a:hover { color:var(--accent); }
.page-hero { padding: 84px 0 66px; background: var(--white); border-bottom: 1px solid var(--hair); }
.eyebrow { display:inline-flex; align-items:center; gap:10px; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.18em; color:var(--accent); }
.eyebrow::before { content:""; width:20px; height:2px; border-radius:4px; background:currentColor; }
h1, h2, h3, p { margin-top:0; }
h1 { font-size:clamp(38px,6vw,70px); font-weight:850; letter-spacing:-.055em; line-height:1.07; margin:22px 0 22px; max-width:870px; }
.lead { font-size:19px; line-height:1.65; max-width:740px; color:var(--muted); margin-bottom:22px; }
.meta { display:flex; flex-wrap:wrap; gap:12px; font-size:12px; font-weight:700; color:var(--muted); }
.meta span { border:1px solid var(--hair); background:#fafafb; border-radius:999px; padding:6px 12px; }
.body-layout { display:grid; grid-template-columns: 235px minmax(0,1fr); gap:48px; padding-top:60px; padding-bottom:100px; align-items:start; }
.side-nav { position:sticky; top:28px; display:grid; gap:9px; border-left:1px solid var(--hair); padding-left:18px; }
.side-nav a { text-decoration:none; color:var(--muted); font-size:13px; font-weight:650; padding:5px 0; }
.side-nav a:hover { color:var(--accent); }
.document { background:var(--white); border:1px solid var(--hair); border-radius:20px; padding:clamp(24px,4.2vw,62px); box-shadow:0 14px 44px rgba(20,23,29,.025); }
.document section + section { border-top:1px solid var(--hair); margin-top:37px; padding-top:38px; }
.document h2 { font-size:clamp(20px,3vw,25px); font-weight:800; letter-spacing:-.035em; margin-bottom:14px; line-height:1.26; scroll-margin-top:30px; }
.document p, .document li { color:#343a42; font-size:15px; line-height:1.87; }
.document ul { padding-left:20px; }
.document li + li { margin-top:7px; }
.info { background:#f6f7f9; border:1px solid #e4e7ec; border-radius:14px; padding:20px 22px; margin:24px 0; }
.info p { margin:0; }
.info p + p { margin-top:10px; }
.info strong { color:var(--ink); }
.contact-card { display:grid; grid-template-columns:1fr auto; gap:24px; align-items:center; padding:25px; border-radius:16px; border:1px solid var(--hair); background:#fbfbfc; margin-top:26px; }
.contact-card strong { font-size:17px; }
.contact-card p { margin:6px 0 0; }
.cta { display:inline-flex; white-space:nowrap; align-items:center; justify-content:center; padding:12px 18px; border-radius:10px; background:var(--dark); color:#fff; text-decoration:none; font-weight:750; font-size:13px; }
.cta:hover { background:#303540; }
.site-footer { background:#101318; color:#e7eaef; padding:40px 0 30px; }
.site-footer .shell { display:flex; justify-content:space-between; align-items:start; flex-wrap:wrap; gap:24px; }
.site-footer p { font-size:12px; color:#aeb7c3; margin:7px 0 0; }
.site-footer a { font-size:13px; color:#e9edf2; text-decoration:none; margin-left:20px; }
.preview-warning { background:#fff1d8; border-bottom:1px solid #e5ba6a; color:#664818; padding:12px 20px; text-align:center; font-size:13px; font-weight:750; }
@media (max-width:850px) { .body-layout { grid-template-columns:1fr; gap:25px; padding-top:32px; padding-bottom:60px; } .side-nav { position:static; display:flex; flex-wrap:wrap; gap:7px 18px; border-left:0; padding:0; } .document { padding:30px 24px; } .page-hero { padding:62px 0 50px; } }
@media (max-width:550px) { .shell { width:min(100% - 28px,1152px); } .site-header { height:74px; } .brand-mark { width:40px; height:40px; } .brand-word { font-size:15px; } .nav { gap:13px; } .nav a { font-size:12px; } .lead { font-size:16px; } .contact-card { grid-template-columns:1fr; } .cta { width:100%; } .site-footer a { margin-left:0; margin-right:18px; } }
@media print { body { background:white; } .site-header,.side-nav,.site-footer,.preview-warning {display:none;} .page-hero {padding:26px 0;} .body-layout {display:block;padding:0;} .document {border:0;padding:12px 0;box-shadow:none;} }
