:root { --ink:#16221e; --muted:#596860; --paper:#f7f8f1; --card:#fff; --line:#dce2d8; --accent:#d9fa61; --accent-ink:#1b281c; --forest:#174b38; --radius:18px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; font:16px/1.55 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color:var(--ink); background:var(--paper); }
a { color:inherit; text-underline-offset:3px; }
.shell { width:min(1120px, calc(100% - 32px)); margin:auto; }
.site-header { padding:18px 0; border-bottom:1px solid var(--line); background:rgba(247,248,241,.94); position:sticky; top:0; z-index:2; backdrop-filter:blur(12px); }
.bar { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.brand { display:flex; align-items:center; gap:10px; font-weight:800; text-decoration:none; letter-spacing:-.03em; }
.mark { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; color:#fff; background:var(--forest); font-size:18px; }
nav { display:flex; flex-wrap:wrap; gap:14px; font-size:14px; }
nav a { text-decoration:none; color:var(--muted); }
nav a:hover { color:var(--ink); }
.hero { padding:72px 0 48px; display:grid; grid-template-columns:1.15fr .85fr; gap:44px; align-items:end; }
.eyebrow { margin:0 0 12px; color:var(--forest); font-size:13px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
h1,h2,h3 { margin:0; line-height:1.08; letter-spacing:-.045em; }
h1 { max-width:760px; font-size:clamp(40px, 6vw, 72px); }
h2 { font-size:clamp(28px, 4vw, 42px); }
h3 { font-size:21px; }
.lede { max-width:650px; color:var(--muted); font-size:19px; }
.hero-note { padding:22px; border-radius:var(--radius); background:var(--forest); color:white; }
.hero-note p { margin:0; }
.hero-note strong { color:var(--accent); }
.section { padding:46px 0; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:24px; }
.section-heading p { margin:0; max-width:560px; color:var(--muted); }
.tool-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.tool-link, .note, .calculator, .prose { border:1px solid var(--line); background:var(--card); border-radius:var(--radius); }
.tool-link { display:block; min-height:190px; padding:24px; text-decoration:none; transition:transform .16s, border-color .16s; }
.tool-link:hover { transform:translateY(-3px); border-color:var(--forest); }
.tool-link span { display:block; margin-top:30px; color:var(--muted); }
.calculator { padding:clamp(20px,4vw,38px); box-shadow:0 15px 40px rgba(22,34,30,.06); }
.calculator-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
label { display:grid; gap:6px; color:var(--muted); font-size:14px; font-weight:650; }
input,select { width:100%; border:1px solid #c8d2c8; border-radius:10px; padding:12px; font:inherit; color:var(--ink); background:#fff; }
input:focus,select:focus { outline:3px solid rgba(217,250,97,.6); border-color:var(--forest); }
button,.button { display:inline-flex; justify-content:center; align-items:center; border:0; border-radius:10px; padding:13px 18px; background:var(--accent); color:var(--accent-ink); cursor:pointer; font:inherit; font-weight:800; text-decoration:none; }
button:hover,.button:hover { filter:brightness(.96); }
.actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.result { margin-top:24px; padding:19px; border-radius:12px; background:#eff3e8; }
.result:empty { display:none; }
.result p { margin:0 0 6px; }.result p:last-child { margin-bottom:0; }
.result strong { color:var(--forest); }
.result table { width:100%; border-collapse:collapse; font-size:14px; }.result th,.result td { padding:8px 4px; text-align:right; border-bottom:1px solid #d7dfd3; }.result th:first-child,.result td:first-child { text-align:left; }
.legal,.quiet { color:var(--muted); font-size:14px; }.legal { margin-top:22px; }
.split { display:grid; grid-template-columns:1.2fr .8fr; gap:22px; }.prose,.note { padding:26px; }.prose p,.note p { color:var(--muted); }.prose p:last-child,.note p:last-child { margin-bottom:0; }
.affiliate { margin-top:20px; padding:17px; border-left:4px solid var(--accent); background:#f2f7e8; border-radius:0 10px 10px 0; }.affiliate p { margin:0 0 7px; font-size:14px; }.affiliate a { font-weight:750; }
.breadcrumb { padding-top:28px; font-size:14px; color:var(--muted); }.breadcrumb a { text-decoration:none; }
.site-footer { margin-top:48px; padding:36px 0; background:var(--ink); color:#dce5dd; }.footer-grid { display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px; }.site-footer a { color:#fff; }.site-footer p { margin:0; font-size:14px; }
@media (max-width:740px) { .site-header { position:static; }.hero,.split { grid-template-columns:1fr; gap:25px; }.hero { padding:48px 0 26px; }.tool-grid { grid-template-columns:1fr; }.calculator-grid { grid-template-columns:1fr; }.section { padding:32px 0; }.section-heading { display:block; }.section-heading p { margin-top:12px; } nav { gap:10px; } }
