
:root{--bg:#f7f8fa;--surface:#fff;--text:#16181d;--muted:#5b6170;--line:#e2e5eb;--brand:#2f9e44;--brand-ink:#fff;--accent:#e8f5ea;--badge:#fff3bf;--badge-ink:#5c4400}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1115;--surface:#171a21;--text:#e8eaef;--muted:#9aa1b0;--line:#2a2f3a;--brand:#51cf66;--brand-ink:#0b1a0e;--accent:#1b2a1f;--badge:#4a3d00;--badge-ink:#ffe8a3}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--brand)}img{max-width:100%;height:auto}
.wrap{max-width:1080px;margin:0 auto;padding:0 16px}
header.site{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
header.site .wrap{display:flex;align-items:center;gap:16px;min-height:56px;flex-wrap:wrap}
.brand{font-weight:800;color:var(--text);text-decoration:none;display:flex;gap:8px;align-items:center}
.brand img{width:28px;height:28px;border-radius:6px}
nav.main{display:flex;gap:4px;flex-wrap:wrap;margin-left:auto}
nav.main a{padding:6px 10px;border-radius:8px;text-decoration:none;color:var(--text);font-size:15px}
nav.main a[aria-current=page],nav.main a:hover{background:var(--accent);color:var(--brand)}
@media (max-width:720px){nav.main{width:100%;overflow-x:auto;flex-wrap:nowrap;margin:0 0 8px}nav.main a{white-space:nowrap}}
main{padding:24px 0 48px}.crumbs{font-size:14px;color:var(--muted);margin-bottom:8px}.crumbs a{color:var(--muted)}
h1{font-size:clamp(28px,4vw,40px);line-height:1.15;margin:0 0 8px}h2{font-size:24px;margin:36px 0 12px}h3{font-size:19px;margin:24px 0 8px}
.lead{font-size:18px;color:var(--muted);margin:0 0 16px}.updated{font-size:14px;color:var(--muted)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin:16px 0}
.grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.grid a.tile{display:block;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px;text-decoration:none;color:var(--text)}
.grid a.tile strong{display:block;color:var(--brand)}.grid a.tile span{font-size:14px;color:var(--muted)}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
table{border-collapse:collapse;width:100%;font-size:15px}th,td{padding:9px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{background:var(--accent);font-weight:700;white-space:nowrap}tr:last-child td{border-bottom:0}
.facts th{width:38%;background:transparent;white-space:normal}
.badge{display:inline-block;font-size:12px;font-weight:700;padding:1px 6px;border-radius:6px;background:var(--badge);color:var(--badge-ink);margin-left:6px;vertical-align:middle}
.code{font-family:ui-monospace,Consolas,monospace;font-weight:700;letter-spacing:.02em}
button.copy{font:inherit;font-size:13px;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:3px 10px;cursor:pointer}
.tier{display:flex;gap:12px;align-items:stretch;margin:10px 0}.tier b{flex:0 0 48px;display:grid;place-items:center;border-radius:10px;background:var(--brand);color:var(--brand-ink);font-size:22px}
.tier ul{list-style:none;margin:0;padding:8px;display:flex;flex-wrap:wrap;gap:8px;flex:1;background:var(--surface);border:1px solid var(--line);border-radius:10px}
.tier li a{display:block;padding:4px 10px;border-radius:8px;background:var(--accent);text-decoration:none}
input.filter{width:100%;max-width:360px;font:inherit;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);margin:8px 0}
details.sources{margin-top:40px;font-size:14px;color:var(--muted)}details.sources summary{cursor:pointer}
footer.site{border-top:1px solid var(--line);background:var(--surface);padding:24px 0;font-size:14px;color:var(--muted)}
footer.site .cols{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}footer.site a{color:var(--muted)}
footer.site ul{list-style:none;padding:0;margin:6px 0}

:root{--bg:#0d1018;--surface:#151a26;--text:#edf1f9;--muted:#b0bbcd;--line:#2c3549;--brand:#c4fb5d;--brand-ink:#14220a;--accent:#25351b;--badge:#423318;--badge-ink:#ffdc8a;color-scheme:dark}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0d1018;--surface:#151a26;--text:#edf1f9;--muted:#b0bbcd;--line:#2c3549;--brand:#c4fb5d;--brand-ink:#14220a;--accent:#25351b;--badge:#423318;--badge-ink:#ffdc8a}}
body{background:radial-gradient(ellipse at 65% 0%,#211b3a 0,transparent 45%),var(--bg);line-height:1.7}.wrap{max-width:1180px;padding-left:24px;padding-right:24px}main{padding-top:34px}header.site{background:#101521f2;backdrop-filter:blur(14px)}header.site .wrap{min-height:72px}.brand{font-size:16px;letter-spacing:-.025em;max-width:235px}nav.main a{font-size:13px;padding:8px 10px}h1{font-size:clamp(27px,4vw,44px);letter-spacing:-.035em;max-width:900px}h2{font-size:clamp(23px,3vw,29px);letter-spacing:-.02em}h3{letter-spacing:-.015em}.updated{margin:10px 0 22px;font-size:12px}.eyebrow{color:var(--brand);font-size:11px;font-weight:800;letter-spacing:.13em;margin:0 0 12px}.hero{display:grid;grid-template-columns:1.04fr 1fr;border:1px solid #465334;background:linear-gradient(135deg,#19231b,#1a1930);border-radius:22px;overflow:hidden;margin:22px 0 18px}.hero-copy{padding:34px}.hero-copy p{max-width:510px}.hero-line{font-size:clamp(34px,4.5vw,60px);line-height:1.03;font-weight:900;letter-spacing:-.05em;margin:20px 0}.hero img{width:100%;height:100%;object-fit:cover;min-height:330px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0 12px}.button{display:inline-block;background:var(--brand);color:var(--brand-ink);padding:11px 18px;border-radius:9px;text-decoration:none;font:700 14px/1.4 system-ui;border:1px solid var(--brand);cursor:pointer}.button.secondary{background:transparent;color:var(--text);border-color:#4f5d46}.hero-note{font-size:12px;color:var(--muted);margin-bottom:0}.quick-facts{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:12px;margin-bottom:38px;background:var(--surface)}.quick-facts>div{padding:16px 20px;border-right:1px solid var(--line)}.quick-facts>div:last-child{border:0}.quick-facts strong{display:block;font-size:22px}.quick-facts span{font-size:11px;color:var(--muted)}section{margin:36px 0}.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.section-head h2{margin:0 0 14px}.section-head>a{font-size:13px;white-space:nowrap}.grid{gap:14px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.grid a.tile{padding:22px;border-radius:13px;transition:border-color .15s,transform .15s}.grid a.tile:hover{border-color:var(--brand);transform:translateY(-2px)}.grid a.tile small{display:block;font-size:10px;color:var(--muted);letter-spacing:.13em;margin-bottom:16px}.grid a.tile strong{font-size:18px;margin-bottom:7px}.grid a.tile span{font-size:13px}.pet-letter{display:grid!important;place-items:center;width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#343252,#294027);font-size:25px!important;color:var(--brand);font-weight:900;margin-bottom:16px}.callout{border:1px solid #4a6233;background:#1b271b;border-radius:12px;padding:20px 24px}.callout h2{margin-top:0}.callout p:last-child{margin-bottom:0}.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;counter-reset:step}.steps li{counter-increment:step;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.steps li:before{content:'0'counter(step);display:block;font-size:12px;color:var(--brand);font-weight:800;margin-bottom:12px}.steps strong,.steps span{display:block}.steps span{font-size:12px;color:var(--muted);margin-top:8px}.table-wrap{margin:20px 0}table{font-size:14px}td{max-width:420px;overflow-wrap:anywhere}th{color:var(--text)}td .badge{white-space:nowrap}.card{border-radius:14px}.journey-badge{display:inline-block;border:1px solid #424760;color:#d4c9fd;border-radius:6px;font-size:10px;text-transform:uppercase;letter-spacing:.09em;padding:2px 8px;margin:12px 0 0}.calculator form{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.calculator label{display:block;font-weight:600;font-size:13px}.calculator input[type=number]{display:block;width:100%;padding:11px;border-radius:8px;border:1px solid #485570;background:var(--bg);color:var(--text);font:inherit;margin-top:8px}.calculator .check{grid-column:1/-1;display:flex;gap:10px;align-items:center}.calculator button{justify-self:start}.calculator output{display:block;margin-top:22px;padding:18px;background:#27361e;color:#d4fc9c;border-radius:10px;font-weight:700}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #c4fb5d;outline-offset:3px}.skip{position:absolute;left:-9999px;top:10px;z-index:100;background:var(--brand);color:var(--brand-ink);padding:10px}.skip:focus{left:10px}footer.site{margin-top:30px}footer.site strong{color:var(--text)}footer.site p,footer.site li{font-size:12px}.sources{padding:16px;border-top:1px solid var(--line)}
@media(max-width:800px){.hero{grid-template-columns:1fr}.hero-copy{padding:25px}.hero img{height:220px;min-height:0;object-position:center}.quick-facts{grid-template-columns:repeat(2,1fr)}.quick-facts>div{border-bottom:1px solid var(--line)}.quick-facts>div:nth-child(2){border-right:0}.quick-facts>div:nth-child(3){border-bottom:0}.steps{grid-template-columns:1fr}.steps li{display:grid;grid-template-columns:32px 68px 1fr;align-items:center;gap:10px;padding:14px}.steps li:before,.steps span{margin:0}.section-head{align-items:flex-start;flex-direction:column;gap:0}.section-head>a{margin-bottom:12px}.wrap{padding-left:18px;padding-right:18px}header.site .wrap{min-height:58px;gap:5px}.brand{max-width:none;padding-top:12px}.calculator form{grid-template-columns:1fr}.calculator .check{grid-column:auto}table{font-size:12px}th,td{padding:8px 10px}.hero-line{font-size:43px}.hero-actions{gap:8px}.button{font-size:12px;padding:10px 13px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.table-wrap table:has(th:nth-child(4)){min-width:860px}.table-wrap td{min-width:90px;overflow-wrap:normal;word-break:normal}
