:root{--primer:#EFEEEA;--ink:#1A2238;--muted:#474B57;--muted2:#6B6C70;--steel:#9A9890;--border:#D3CFC6;
--enamel:#F5B800;--enamel-dk:#8C6A00;--card:#FFFFFF;--plate:#1A4FD6;--plate-2:#4A77E6;--input-bg:#F6F5F2;--teal:#0B6F96;--red:#D71004;
--disp:"Barlow Condensed","Arial Narrow",Arial,sans-serif;--body:"Barlow",Arial,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--primer);color:var(--ink);font:400 17px/1.55 var(--body)}
a{color:var(--ink);text-decoration-color:var(--enamel);text-decoration-thickness:2px;text-underline-offset:3px}
a:hover{color:var(--enamel-dk)}:focus-visible{outline:3px solid var(--enamel);outline-offset:2px}
h1,h2,h3{font-family:var(--disp);letter-spacing:.005em}

/* Header: centered badge, same as HomesteadCalcs */
header{display:flex;align-items:center;justify-content:center;padding:6px 24px;border-bottom:1px solid var(--border);background:var(--primer)}
header .badge{display:block;width:224px;height:auto;padding:4px 0}
header .badge svg{width:100%;height:100%}
@media (max-width:640px){header .badge{width:136px;height:auto}}

.breadcrumb{padding:16px 24px 0;font-size:13px;color:var(--muted2);max-width:1200px;margin:0 auto}
.breadcrumb a{color:var(--muted2)}
.intro{margin:0 auto;padding:20px 24px 0;display:flex;flex-direction:column;gap:12px;max-width:760px}
.intro h1{margin:0;font-weight:700;font-size:clamp(32px,4.5vw,48px);line-height:1.05}
.intro p{margin:0;font-size:17px;line-height:1.55;color:var(--muted)}
.tags{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.tag{background:#DCEEF5;color:#0B6F96!important;color:var(--ink);font-size:12px;font-weight:700;padding:5px 12px;border-radius:999px}
.updated{font-size:13px;color:var(--muted2)}

/* Calculator grid: card + sidebar */
.grid{max-width:1200px;margin:0 auto;padding:28px 24px 0;display:grid;grid-template-columns:1.7fr 1fr;gap:24px;align-items:start}
@media (max-width:860px){.grid{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid var(--border);border-radius:20px;padding:28px;display:flex;flex-direction:column;gap:22px;box-shadow:0 2px 10px rgba(26,34,56,.07)}
@media (max-width:520px){.card{padding:20px}}
.sidebar{display:flex;flex-direction:column;gap:20px}
.tipCard{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:10px}
.tipCard h3{margin:0;font-size:20px}.tipCard p{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}
.cardhead{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.cardhead .lbl{font:700 20px/1 var(--disp)}
.units{display:inline-flex;border:1px solid var(--steel);border-radius:999px;overflow:hidden}
.units button{background:transparent;color:var(--ink);border:0;padding:7px 14px;font:600 15px/1 var(--disp);cursor:pointer}
.units button[aria-pressed="true"]{background:var(--ink);color:#fff}
fieldset{border:0;margin:0;padding:0}
legend{font:700 19px/1 var(--disp);padding:0;margin:0 0 10px;color:var(--ink)}
.hr{height:1px;background:var(--border)}
.hint{font-size:14px;color:var(--muted2);margin:4px 0 0;line-height:1.4}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px 16px}
@media (max-width:560px){.grid3{grid-template-columns:1fr 1fr}}
.field label{display:block;font:600 14px/1.25 var(--body);margin-bottom:5px}
.field .u{color:var(--muted2);font-weight:400}
.field input,.field select{width:100%;font:500 18px/1.2 var(--body);padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:var(--input-bg);color:var(--ink)}
.field input:focus,.field select:focus{border-color:var(--ink);background:#fff}
.segwrap{font-weight:600;font-size:14px}
.seg{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 2px}
.seg label{border:1px solid var(--border);border-radius:999px;padding:7px 14px;background:var(--input-bg);cursor:pointer;font-weight:600;font-size:14px}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg label:has(input:checked){background:var(--ink);border-color:var(--ink);color:#fff}
.seg label:has(input:focus-visible){outline:3px solid var(--enamel);outline-offset:2px}

/* Data plate: GarageCalcs' signature result panel */
.plate{background:var(--plate);color:#fff;border-radius:12px;padding:22px 22px 18px;box-shadow:inset 0 0 0 2px var(--plate-2),inset 0 0 0 5px var(--plate);
 background-image:radial-gradient(circle at 12px 12px,#A9C1F7 0 3px,transparent 3.5px),radial-gradient(circle at calc(100% - 12px) 12px,#A9C1F7 0 3px,transparent 3.5px),radial-gradient(circle at 12px calc(100% - 12px),#A9C1F7 0 3px,transparent 3.5px),radial-gradient(circle at calc(100% - 12px) calc(100% - 12px),#A9C1F7 0 3px,transparent 3.5px)}
.plate h2{font:600 18px/1 var(--disp);color:#DCE6FF;margin:0 0 12px;letter-spacing:.04em}
.big{font:700 clamp(44px,7vw,62px)/.95 var(--disp);font-variant-numeric:tabular-nums}
.big small{font-size:.42em;font-weight:600;color:#DCE6FF;margin-left:4px}
.bigcap{font-size:15px;color:#DCE6FF;margin:4px 0 14px}
.rows{border-top:1px solid #5C86EC;margin:0;padding:0}
.rows div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #4A77E6;font-size:15px}
.rows dt{color:#DCE6FF}.rows dd{margin:0;font:600 19px/1.2 var(--disp);font-variant-numeric:tabular-nums;text-align:right}
.note{margin:14px 0 0;font-size:15px;line-height:1.45;color:#F3F6FF;border-left:3px solid var(--enamel);padding-left:10px}
.note.bad{border-left-color:#FF6B5E}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.btn{font:600 16px/1 var(--disp);letter-spacing:.03em;padding:11px 14px;border-radius:8px;border:1.5px solid #A9C1F7;background:transparent;color:#fff;cursor:pointer;text-decoration:none;display:inline-block}
.btn:hover{border-color:var(--enamel);color:#fff}.btn.solid{background:var(--enamel);border-color:var(--enamel);color:var(--ink)}.btn.solid:hover{background:#FFCB1F;border-color:#FFCB1F;color:var(--ink)}
.toast{font-size:14px;color:#FFE27A;min-height:0;margin-top:8px}
.tbl{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;margin-top:10px}
.tbl th,.tbl td{padding:6px 4px;text-align:right;border-bottom:1px solid #4A77E6;font-size:15px}
.tbl th:first-child,.tbl td:first-child{text-align:left}.tbl th{color:#DCE6FF;font-weight:600}
.scroll{overflow-x:auto}

/* Article */
.article{max-width:760px;margin:0 auto;padding:48px 24px 0;display:flex;flex-direction:column;gap:16px}
.article h2{margin:0;font-size:30px}.article h3{margin:6px 0 0;font-size:22px}
.article p,.article li{margin:0;font-size:16px;line-height:1.6;color:var(--muted)}
.formula{background:var(--card);border-left:4px solid var(--enamel);border-radius:0 10px 10px 0;padding:12px 14px;font:500 17px/1.5 var(--body);overflow-x:auto}
.sources{font-size:14px!important;color:var(--muted2)!important}

/* All tools directory (same as HomesteadCalcs) */
.related{max-width:1200px;margin:0 auto;padding:48px 24px 0;display:flex;flex-direction:column;gap:16px}
.related h2{margin:0;font-size:26px;font-weight:700}
.filter{display:flex;gap:12px;align-items:center}
.filter input{flex:1;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--card);font:500 16px var(--body)}
.filter span{font-size:14px;color:var(--muted2);white-space:nowrap}
.allCalcsGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
@media (max-width:1000px){.allCalcsGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.allCalcsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:460px){.allCalcsGrid{grid-template-columns:1fr}}
.allCalcsColTitle{font:700 17px/1.1 var(--disp);color:var(--teal);margin-bottom:10px}
.allCalcsCol a{display:block;font-size:14px;color:var(--muted);padding:5px 0;text-decoration:none;line-height:1.4}
.allCalcsCol a:hover{color:var(--enamel-dk)}

/* Category landing pages (same card grid as HomesteadCalcs) */
.catGrid{max-width:1200px;margin:0 auto;padding:32px 24px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media (max-width:900px){.catGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.catGrid{grid-template-columns:1fr}}
.catCardBig{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--ink)}
.catCardBig:hover{border-color:var(--ink)}
.catCardBig h3{margin:0;font-size:22px}.catCardBig p{margin:0;font-size:15px;color:var(--muted);flex-grow:1}
.catCardBig .go{font:600 16px/1 var(--disp);color:var(--enamel-dk)}

/* Homepage */
.hero{max-width:1200px;margin:0 auto;padding:36px 24px 0;display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
@media (max-width:900px){.hero{grid-template-columns:1fr}}
.hero h1{margin:0 0 14px;font-size:clamp(42px,6vw,68px);line-height:1}
.hero p{margin:0 0 18px;font-size:18px;color:var(--muted);max-width:52ch}
.search{display:flex;gap:10px;flex-wrap:wrap}
.search input{flex:1;min-width:200px;padding:13px 14px;border:1px solid var(--border);border-radius:10px;background:var(--card);font:500 16px var(--body)}
.search a{padding:13px 18px;border-radius:10px;background:var(--ink);color:#fff;text-decoration:none;font:600 17px/1 var(--disp);display:flex;align-items:center}
.search a:hover{background:var(--enamel-dk);color:#fff}
.catTiles{max-width:1200px;margin:0 auto;padding:44px 24px 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
@media (max-width:900px){.catTiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.catTile{background-color:var(--teal);background-size:cover;background-position:center;min-height:210px!important;color:#fff;border-radius:16px;padding:20px 18px;text-decoration:none;display:flex;flex-direction:column;gap:6px;min-height:130px;justify-content:flex-end}
.catTile:hover{color:#fff;filter:brightness(1.1)}
.catTile strong{font:700 24px/1.05 var(--disp)}.catTile span{font-size:14px;color:#DCE6FF}
.catTile .count{color:#FFD23F;font:700 15px/1 var(--disp)}

.ad{max-width:1200px;margin:0 auto;padding:24px 24px 0}
footer{background:var(--ink);color:#F3F6FF;padding:40px 24px;margin-top:48px}
footer .inner{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:18px}
footer .top{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:20px}
footer .brand{display:flex;align-items:center;gap:12px;max-width:360px}
footer .icon{width:44px;height:44px;border-radius:50%;background:var(--primer);display:flex;align-items:center;justify-content:center;flex-shrink:0}
footer .name{font:700 22px/1 var(--disp)}footer .tag2{color:#DCE6FF;font-size:14px}
footer a{color:#F3F6FF}footer .fine{font-size:13px;color:#9AA3A8}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.tbl tr.mark td{color:#FFD23F;font-weight:600}

.catTile span{color:#E6F4FA}
.catTile strong,.catTile span{text-shadow:0 1px 3px rgba(0,0,0,.5)}
@media (max-width:900px){.catTile:last-child{grid-column:1/-1;min-height:170px!important}}
.heroPhoto{position:relative;margin:12px 0 0 12px}
.heroPhoto::before{content:"";position:absolute;inset:-12px 12px 12px -12px;background:var(--enamel);border-radius:18px}
.heroPhoto img{position:relative;display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 6px 20px rgba(26,34,56,.18)}
.buildSheet{max-width:1200px;margin:0 auto;padding:48px 24px 0;display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
@media (max-width:900px){.buildSheet{grid-template-columns:1fr}}
.buildSheet>div>h2{margin:0 0 12px;font-size:clamp(30px,4vw,40px)}.buildSheet>div>p{margin:0 0 12px;font-size:17px;color:var(--muted);max-width:52ch}
footer .icon{width:48px;height:48px}footer .icon img{width:40px;height:40px;display:block}
header .badge img{width:100%;height:auto;display:block}
