/* System fonts and local assets keep every page fast and self-contained. */
:root{--paper:#faf8f3;--white:#fffefa;--ink:#252d32;--muted:#596169;--wine:#8b333e;--wine-dark:#6d2430;--line:#dddcd4;--sage:#e6ebe2;--blush:#f1e4df;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--radius:8px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}a{color:var(--wine);text-underline-offset:4px}a:hover{color:var(--wine-dark)}button{cursor:pointer}button:disabled{cursor:default}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--wine);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.04em;line-height:1.12}h1{font-size:clamp(2.4rem,4.2vw,4rem)}h2{font-size:clamp(1.75rem,2.9vw,2.6rem)}h3{line-height:1.3;font-size:1.16rem}p{margin-bottom:1.2rem}svg{display:block;width:100%;height:100%}.shell{max-width:1200px;margin:0 auto;padding:0 40px}.eyebrow{font-size:.71rem;text-transform:uppercase;letter-spacing:.13em;font-weight:700;line-height:1.5;color:var(--wine)}.skip-link{position:absolute;top:0;left:20px;padding:12px 20px;background:var(--ink);color:white;z-index:30;transform:translateY(-120%)}.skip-link:focus{transform:translateY(0)}.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{max-width:1360px;margin:auto;padding:24px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;white-space:nowrap;font-weight:750;letter-spacing:-.04em;font-size:1.5rem}.wordmark-dot{color:var(--wine);margin-left:-11px}.logo-mark{width:38px;height:38px;border:1px solid var(--wine);background:var(--wine);color:var(--paper);font-family:var(--serif);font-size:30px;font-weight:400;line-height:30px;border-radius:50%;text-align:center;letter-spacing:-3px;padding-right:4px}.logo-mark span{color:#f1c5b3}.site-header nav{display:flex;align-items:center;gap:30px}.site-header nav a{font-size:.85rem;color:var(--ink);text-decoration:none;min-height:44px;display:flex;align-items:center}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--wine);text-decoration:underline}.site-header nav .nav-calculator{background:var(--ink);color:var(--paper);padding:0 20px;border-radius:4px;gap:18px}.menu-toggle{display:none;min-height:44px;padding:8px 12px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:.85rem;gap:10px;align-items:center}.button{border:1px solid var(--wine);display:inline-flex;justify-content:center;align-items:center;gap:30px;padding:12px 21px;min-height:48px;border-radius:4px;text-decoration:none;font-size:.88rem;font-weight:650;background:var(--wine);color:var(--paper)}.button:hover{background:var(--wine-dark);color:#fff}.text-link{font-size:.86rem;font-weight:650;display:inline-flex;align-items:center;gap:22px;min-height:44px}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:80px;padding-top:64px;padding-bottom:62px;align-items:center}.hero-copy>.eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:23px}.tiny-dot{display:inline-block;width:6px;height:6px;background:var(--wine);border-radius:50%}.hero h1{font-size:clamp(3.6rem,5.5vw,5.4rem);line-height:1.01;letter-spacing:-.055em;margin-bottom:23px}.hero h1 em{font-weight:400;color:var(--wine)}.hero-description{font-size:.95rem;line-height:1.85;color:var(--muted);max-width:410px;margin-bottom:25px}.hero-foot{display:flex;gap:12px;align-items:center;margin-top:34px}.hero-foot>span{width:30px;height:35px;color:var(--wine)}.hero-foot p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.65}.hero-calculator{position:relative}.calculator-form{padding:32px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 28px #252d3205}.hero-calculator .calculator-form{border-top:4px solid var(--wine);box-shadow:10px 10px 0 #e9e5dc}.calc-heading>.eyebrow{margin-bottom:12px}.calc-heading h2{font-size:1.7rem;letter-spacing:-.035em;margin-bottom:24px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{margin-bottom:16px;min-width:0}.field-grid .field{margin-bottom:0}.field-grid{margin-bottom:18px}.field label{display:block;font-size:.75rem;line-height:1.5;margin-bottom:6px;font-weight:650;color:var(--ink)}input,select{display:block;width:100%;min-width:0;background:#fff;border:1px solid #b9bcb6;border-radius:4px;min-height:46px;padding:10px 12px;color:var(--ink);font-size:.92rem}input[type=number]{appearance:textfield;-moz-appearance:textfield}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}select{padding-right:26px}input:invalid:not(:placeholder-shown){box-shadow:none}.input-unit{position:relative}.input-unit input{padding-right:58px}.input-unit>span{position:absolute;right:12px;top:12px;font-size:.73rem;color:var(--muted);pointer-events:none}.field small{display:block;font-size:.7rem;line-height:1.6;color:var(--muted);margin-top:5px}.calculator-form>.button{width:100%;margin-top:2px}.calculator-result{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.result-label{display:block;color:var(--muted);font-size:.75rem}.result-total{display:block;font-family:var(--serif);font-weight:400;font-size:2.65rem;color:var(--wine);line-height:1.3;letter-spacing:-.04em;overflow-wrap:anywhere}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:14px}.result-grid span{display:block;font-size:.68rem;color:var(--muted)}.result-grid b{display:block;font-size:.9rem;margin-top:3px;overflow-wrap:anywhere}.result-note{font-size:.7rem;line-height:1.65;color:var(--muted);margin:16px 0 0}.calc-caption{font-size:.7rem;line-height:1.6;color:var(--muted);margin:23px 10px 0;display:flex;gap:10px}.calc-caption>span{font-size:1.2rem;line-height:1}.trust-strip{border-block:1px solid var(--line);background:#f0f0e8}.trust-strip .shell{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:18px}.trust-strip span{font-size:.75rem;color:#454f48}.trust-strip span:before{content:'✓';margin-right:10px;color:var(--wine)}.section{padding-top:66px;padding-bottom:64px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}.section-heading .eyebrow{margin-bottom:10px}.section-heading h2{margin:0;max-width:620px}.section-heading>a{white-space:nowrap}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.article-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;min-width:0;transition:box-shadow .15s,border-color .15s}.article-card:hover{border-color:#ad8588;box-shadow:0 5px 18px #252d3208}.card-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:30px}.card-top .eyebrow{font-size:.65rem;max-width:150px}.card-icon{width:44px;height:44px;flex:0 0 44px;color:var(--wine);background:var(--blush);border-radius:50%;padding:8px}.article-card:nth-child(3n+2) .card-icon{background:var(--sage);color:#445c46}.article-card h3{margin-bottom:12px;font-family:var(--serif);font-weight:400;font-size:1.42rem;letter-spacing:-.025em;line-height:1.25}.article-card h3 a{color:var(--ink);text-decoration:none}.article-card h3 a:hover{text-decoration:underline;color:var(--wine)}.article-card p{font-size:.79rem;line-height:1.7;color:var(--muted);margin-bottom:20px}.card-bottom{border-top:1px solid var(--line);padding-top:13px;margin-top:auto;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.69rem}.card-bottom span:last-child{font-size:1.1rem;color:var(--wine)}.method-section{background:#e9ede5;border-block:1px solid #d5dcd0}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-block:55px}.method-grid>.method-steps{margin:0;padding:0;list-style:none}.method-grid>div>p:not(.eyebrow){color:var(--muted);font-size:.86rem;max-width:365px}.method-steps li{display:flex;gap:24px;border-bottom:1px solid #cfd6ca;padding:16px 0}.method-steps li:first-child{padding-top:0}.method-steps li:last-child{border:0;padding-bottom:0}.method-steps li>span{font-family:var(--serif);font-size:1.5rem;color:var(--wine);padding-top:1px}.method-steps h3{font-size:.98rem;margin:0 0 5px}.method-steps p{font-size:.78rem;color:var(--muted);margin:0}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tool-card{border-top:2px solid var(--wine);background:#f0eae2;border-radius:0 0 6px 6px;padding:25px;position:relative}.tool-icon{width:40px;height:40px;display:block;color:var(--wine);margin-bottom:21px}.tool-card h3{font-family:var(--serif);font-weight:400;font-size:1.38rem;letter-spacing:-.025em}.tool-card h3 a{color:var(--ink);text-decoration:none}.tool-card h3 a:hover{text-decoration:underline}.tool-card p{font-size:.78rem;line-height:1.7;color:var(--muted);margin-bottom:25px}.tool-card>span:last-child{color:var(--wine);display:block;text-align:right;font-size:1.3rem;line-height:1}.source-note{border-top:1px solid var(--line);display:flex;align-items:start;gap:25px;padding-top:33px;padding-bottom:60px}.source-mark{display:grid;place-items:center;background:var(--wine);color:var(--paper);width:47px;height:47px;flex:0 0 47px;border-radius:50%;font-size:1.4rem}.source-note h2{font-size:1.5rem;margin:0 0 10px}.source-note p{font-size:.79rem;color:var(--muted);max-width:750px;margin-bottom:8px}.source-note a{font-size:.78rem}.site-footer{background:var(--ink);color:var(--paper);padding:44px 48px 0}.footer-inner,.footer-note{max-width:1200px;margin:auto}.footer-inner{display:flex;justify-content:space-between;gap:40px;padding-bottom:30px}.footer-brand{font-family:var(--serif);font-size:1.6rem;letter-spacing:-.035em;text-decoration:none;color:var(--paper)}.footer-inner p{font-size:.74rem;color:#c5cbd0;margin:10px 0 0}.footer-inner nav{display:flex;align-items:start;flex-wrap:wrap;gap:10px 24px;max-width:470px}.footer-inner nav a{color:#eeeae1;font-size:.74rem;min-height:44px;display:flex;align-items:center}.footer-note{border-top:1px solid #475057;padding:18px 0 25px;display:flex;justify-content:space-between;gap:20px;color:#c5cbd0;font-size:.66rem}.breadcrumbs{max-width:1200px;margin:0 auto;padding:24px 40px 0;font-size:.7rem;color:var(--muted)}.breadcrumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:7px 11px}.breadcrumbs li:not(:last-child):after{content:'/';color:#87918e;margin-left:11px}.breadcrumbs a{color:var(--muted)}.page-intro{padding-top:45px;padding-bottom:8px}.page-intro>.eyebrow{margin-bottom:12px}.page-intro h1{margin-bottom:17px}.page-intro>p:last-child{max-width:740px;color:var(--muted);font-size:.96rem}.article-directory{padding-top:25px;padding-bottom:70px}.filters{display:grid;grid-template-columns:1.5fr 1fr auto;gap:20px;align-items:end;margin-bottom:30px;border-block:1px solid var(--line);padding:21px 0}.filters .field{margin:0}.filters>p{font-size:.75rem;color:var(--muted);margin:0 0 12px;min-width:75px}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 250px;gap:70px;padding-top:42px;padding-bottom:28px}.article-main{min-width:0}.article-header h1{font-size:clamp(2.25rem,3.9vw,3.65rem);margin-bottom:19px;line-height:1.1}.article-description{color:var(--muted);font-size:1rem;line-height:1.7}.article-meta{font-size:.71rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px 19px;padding-bottom:22px;border-bottom:1px solid var(--line)}.article-meta a{color:var(--ink)}.quick-answer{background:var(--sage);border-left:3px solid #72866d;border-radius:0 5px 5px 0;padding:23px 26px;margin:30px 0}.quick-answer .eyebrow{color:#415a3a}.quick-answer p{margin:8px 0 0;font-size:.93rem;line-height:1.75}.prose{font-size:1rem;line-height:1.85}.prose p{margin-bottom:1.25rem}.prose h2{font-size:1.8rem;margin:37px 0 15px;line-height:1.24;letter-spacing:-.025em}.prose h3{margin-top:26px}.prose ul,.prose ol{padding-left:23px;margin:20px 0}.prose li{margin-bottom:10px;padding-left:6px}.prose a{overflow-wrap:anywhere}.prose code{font-size:.83em;border-radius:3px;background:#eeede5;padding:3px 6px;overflow-wrap:anywhere}.note{font-size:.9rem;line-height:1.8;padding:20px 23px;background:var(--blush);border-left:3px solid var(--wine);margin:25px 0}.table-scroll{max-width:100%;overflow-x:auto;margin:25px 0;border:1px solid var(--line);border-radius:5px}table{border-collapse:collapse;width:100%;font-size:.82rem;line-height:1.6}th,td{padding:13px 16px;text-align:left;vertical-align:top;min-width:115px}th{background:#eeede5;font-weight:650}td{border-top:1px solid var(--line)}tr:nth-child(even) td{background:var(--white)}.article-sidebar{padding-top:12px;align-self:start;position:sticky;top:26px}.toc ol{list-style:none;padding:0;margin:0;border-left:1px solid var(--line)}.toc li a{display:block;padding:9px 0 9px 17px;font-size:.74rem;line-height:1.6;color:var(--muted);text-decoration:none}.toc li a:hover{color:var(--wine);text-decoration:underline}.sidebar-tool{margin-top:35px;background:#f0eae2;border-top:2px solid var(--wine);padding:24px 20px}.sidebar-tool h2{font-size:1.6rem;line-height:1.15;margin-bottom:13px}.sidebar-tool p{font-size:.76rem;color:var(--muted)}.sidebar-tool .button{font-size:.74rem;padding:10px 13px;gap:7px;width:100%}.sidebar-tool .tool-icon{width:35px;height:35px;margin-bottom:16px}.source-list li{font-size:.85rem}.article-correction{border-top:1px solid var(--line);padding-top:19px;margin-top:30px}.article-correction p{font-size:.78rem;color:var(--muted);margin:0}.related{border-top:1px solid var(--line)}.mobile-toc{display:none}.tool-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:55px;align-items:start;padding-top:25px;padding-bottom:70px}.tool-layout>.prose h2:first-child{margin-top:0}.tool-layout .calculator-form{position:sticky;top:25px}.tool-layout .prose{font-size:.88rem}.tool-layout .prose h2{font-size:1.5rem;margin-top:27px}.tool-explainer{max-width:780px;margin-top:45px}.legal-page{max-width:890px;padding-top:45px;padding-bottom:70px}.legal-page>header h1{margin-bottom:22px}.legal-page .article-meta{margin-bottom:30px}.not-found{min-height:50vh;padding-bottom:70px}.not-found .text-link{margin-left:20px}.form-error{margin:15px 0 0;font-size:.85rem;color:#9b1629}.noscript{padding:16px;margin:0;font-size:.8rem;border-top:1px solid var(--line)}
@media(min-width:1500px){.hero{padding-top:80px;padding-bottom:80px}.header-inner{padding-block:28px}}
@media(max-width:1050px){.header-inner{padding:20px 32px}.site-header nav{gap:20px}}
@container (max-width:1050px){.hero{gap:40px}.shell{padding-inline:32px}.hero h1{font-size:4.1rem}.calculator-form{padding:26px}.method-grid{gap:55px}.article-layout{gap:35px;grid-template-columns:minmax(0,1fr) 220px}.breadcrumbs{padding-inline:32px}.tool-layout{gap:35px}.article-grid,.tool-grid{gap:15px}.article-card{padding:21px}}
@media(max-width:800px){.site-header nav .nav-calculator{display:none}.site-footer{padding-inline:32px}.footer-inner{gap:30px}.footer-inner nav{max-width:280px;gap:4px 22px}.footer-note{font-size:.62rem}}
@container (max-width:800px){.hero{gap:32px;padding-top:42px;padding-bottom:45px}.hero h1{font-size:3.4rem}.hero-copy>.eyebrow{font-size:.64rem}.hero-description{font-size:.85rem}.hero-foot{margin-top:24px}.calc-heading h2{font-size:1.35rem}.calculator-form{padding:22px}.field-grid{gap:14px}.compact .field-grid:last-of-type{grid-template-columns:1fr}.compact .field-grid:last-of-type .field:last-child{grid-column:1}.section{padding-block:45px}.section-heading{gap:20px}.section-heading h2{font-size:2rem}.article-grid{grid-template-columns:repeat(2,1fr)}.article-card h3{font-size:1.35rem}.tool-grid{grid-template-columns:1fr}.tool-card{display:grid;grid-template-columns:45px 1fr;gap:0 20px;padding:24px}.tool-card .tool-icon{grid-row:span 3;margin:0}.tool-card h3{margin:0 0 10px}.tool-card p{margin:0;max-width:520px}.tool-card>span:last-child{display:none}.trust-strip .shell{flex-wrap:wrap;justify-content:center;gap:10px 20px}.trust-strip span{font-size:.66rem}.method-grid{gap:40px}.method-grid h2{font-size:2.15rem}.article-layout{grid-template-columns:1fr;max-width:820px}.article-sidebar{display:none}.mobile-toc{display:block;margin:25px 0;border-block:1px solid var(--line);padding:12px 0}.mobile-toc summary{min-height:44px;display:list-item;font-size:.85rem;cursor:pointer;padding-top:9px;font-weight:650}.mobile-toc ol{list-style:none;padding:0;margin:12px 0 0}.mobile-toc a{font-size:.83rem;display:block;min-height:44px;padding:9px 0}.tool-layout{grid-template-columns:1fr}.tool-layout .calculator-form{position:static}.tool-layout>div:first-child{max-width:600px;width:100%}.filters{grid-template-columns:1.3fr 1fr}.filters>p{grid-column:1/-1;margin:0}.breadcrumbs{font-size:.66rem}}
@media(max-width:600px){.header-inner{padding:16px 20px;position:relative;flex-wrap:wrap;gap:12px}.wordmark{font-size:1.3rem;gap:10px}.logo-mark{width:34px;height:34px;font-size:27px;line-height:28px}.wordmark-dot{margin-left:-9px}.menu-toggle{display:flex}.site-header #primary-nav{display:none;width:100%;align-items:stretch;gap:0;border-top:1px solid var(--line);padding-top:8px;justify-content:space-between}.site-header #primary-nav.open{display:flex}.site-header #primary-nav a{padding:8px 10px}.site-footer{padding:34px 22px 0}.footer-inner{display:block}.footer-inner nav{margin-top:22px;max-width:none;gap:2px 24px}.footer-note{display:block;padding:18px 0 22px}.footer-note span{display:block;margin-top:5px}}
@container (max-width:600px){.shell{padding-inline:22px}.hero{grid-template-columns:1fr;gap:35px;padding-top:34px;padding-bottom:38px}.hero h1{font-size:4.15rem;line-height:1;letter-spacing:-.045em}.hero-copy>.eyebrow{font-size:.64rem;margin-bottom:22px}.hero-description{font-size:.89rem;line-height:1.8;max-width:340px;margin-bottom:20px}.hero-foot{margin-top:23px}.hero-calculator{padding-right:8px}.calculator-form{padding:23px}.calc-heading h2{font-size:1.6rem}.compact .field-grid:last-of-type{grid-template-columns:1fr 1fr}.compact .field-grid:last-of-type .field:last-child{grid-column:1/-1}.trust-strip .shell{align-items:start;flex-direction:column;padding-block:17px;gap:8px}.trust-strip span{font-size:.71rem}.section{padding-block:37px}.section-heading{display:block;margin-bottom:24px}.section-heading h2{font-size:2rem}.section-heading>a{margin-top:13px}.article-grid{grid-template-columns:1fr;gap:15px}.article-card{padding:23px}.card-top{margin-bottom:20px}.card-top .eyebrow{font-size:.65rem}.article-card h3{font-size:1.6rem}.article-card p{font-size:.83rem}.method-grid{grid-template-columns:1fr;gap:30px;padding-block:35px}.method-grid h2{font-size:2.4rem}.method-steps li{padding-block:20px}.method-steps h3{font-size:1rem}.method-steps p{font-size:.82rem}.source-note{gap:16px;padding-top:27px;padding-bottom:35px}.source-note h2{font-size:1.4rem}.source-mark{width:35px;height:35px;flex-basis:35px;font-size:1.2rem}.source-note p{font-size:.79rem}.breadcrumbs{padding:20px 22px 0;line-height:1.7}.page-intro{padding-top:32px}.page-intro h1{font-size:2.6rem;line-height:1.12}.page-intro>p:last-child{font-size:.9rem}.filters{grid-template-columns:1fr;gap:15px;margin-bottom:24px}.article-directory{padding-top:15px;padding-bottom:42px}.article-layout{padding-top:30px;padding-bottom:30px}.article-header h1{font-size:2.65rem;line-height:1.12}.article-description{font-size:.92rem}.article-meta{gap:8px 15px;font-size:.68rem;padding-bottom:20px}.quick-answer{padding:20px;margin:24px 0}.quick-answer p{font-size:.9rem}.prose{font-size:.94rem;line-height:1.85}.prose h2{font-size:1.75rem;margin:31px 0 15px}.prose li{padding-left:3px}.note{padding:17px 18px;font-size:.85rem}th,td{padding:10px 12px;min-width:115px}.tool-layout{padding-top:17px;padding-bottom:44px;gap:35px}.tool-layout .calculator-form{padding:22px}.tool-layout .field-grid{grid-template-columns:1fr}.tool-layout .result-grid{grid-template-columns:1fr 1fr}.tool-explainer{margin-top:32px}.legal-page{padding-top:32px;padding-bottom:44px}.legal-page h1{font-size:2.8rem}.not-found .text-link{margin-left:0;display:flex;margin-top:14px}.tool-card{gap:0 15px;padding:22px}.tool-card h3{font-size:1.4rem}.tool-card p{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Page content reflows by the width of main, so side banners never squeeze content. */
main{container-type:inline-size}

/* Google AdSense. Under 1024px: no ad banners. */
.ad-rail{display:none}
/* 1024px and wider: only a left and a right 160x600 banner, outside the content, in normal flow (not sticky). */
@media(min-width:1024px){
  .page-frame{display:grid;grid-template-columns:160px minmax(0,1200px) 160px;justify-content:center;column-gap:24px;padding-inline:24px}
  .page-frame>*{grid-row:1}
  .page-frame>main{grid-column:2}
  .ad-rail{display:block;align-self:start;width:160px;padding-top:24px}
  .ad-rail[data-ad="left"]{grid-column:1}
  .ad-rail[data-ad="right"]{grid-column:3}
}
/* The noscript paragraph exists in the DOM only when scripts are disabled. */
body:has(noscript .noscript) .menu-toggle{display:none}
body:has(noscript .noscript) #primary-nav{display:flex!important}
