:root {
  --ink:#102a2e; --ink-2:#173d42; --copper:#c76f3b; --copper-dark:#9c4c22;
  --cream:#f7f2e8; --paper:#fffdf8; --sage:#9eaa97; --text:#203235;
  --muted:#526568; --line:#d9d9cf; --light:#eef0e9; --white:#fff;
  --nav-surface:rgba(255,253,248,.97);
  --nav-height:76px; --content:1180px; --reading:760px; --hero-content:1440px;
  --font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --serif:Georgia,"Times New Roman",serif;
}
*,*::before,*::after{box-sizing:border-box;border-radius:0!important}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;background:var(--paper);color:var(--text);font:16px/1.65 var(--font);overflow-x:hidden}
body.menu-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:var(--ink-2);text-decoration-color:rgba(23,61,66,.35);text-underline-offset:3px}
a:hover{color:var(--copper-dark)}
*:focus-visible{outline:3px solid #b05a2d;outline-offset:3px}
button,input{font:inherit}
h1,h2,h3{margin:0;color:var(--ink);line-height:1.08;letter-spacing:-.035em}
h1{font:700 clamp(2.55rem,6vw,5.5rem)/.98 var(--serif)}
h2{font:700 clamp(1.8rem,3.6vw,3.1rem)/1.04 var(--serif)}
h3{font-size:1.16rem;letter-spacing:-.02em}
p{margin:.85rem 0 0;color:var(--muted)}
.container-wide{width:min(calc(100% - 48px),var(--content));margin-inline:auto}
.container-narrow{width:min(calc(100% - 48px),var(--reading));margin-inline:auto}
.section{padding:clamp(4rem,8vw,7.5rem) 0}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skip-link{position:fixed;left:1rem;top:-100px;z-index:999;background:var(--copper-dark);color:#fff;padding:.7rem 1rem}
.skip-link:focus{top:1rem}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.72rem 1.2rem;border:1px solid transparent;font-weight:750;text-decoration:none;cursor:pointer}
.button-primary{background:var(--copper-dark);color:#fff;border-color:var(--copper-dark)}
.button-primary:hover{background:#733515;border-color:#733515;color:#fff}
.button-light{background:rgba(255,253,248,.08);color:var(--cream);border-color:rgba(255,255,255,.4)}
.button-light:hover{background:var(--cream);color:var(--ink)}
.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:var(--ink-2);color:#fff}
.button-outline{background:transparent;color:var(--ink);border-color:var(--ink)}.button-outline:hover{background:var(--ink);color:#fff}

/* Navigation: labeled mobile control and full-screen information architecture. */
.site-header{height:var(--nav-height);position:sticky;top:0;z-index:210;background:var(--nav-surface);border:0;backdrop-filter:blur(12px)}
.nav-shell{height:100%;display:flex;align-items:center;gap:2rem}
.brand{display:block;width:205px;flex:0 0 auto}.brand img{width:100%;height:auto}
.desktop-nav{display:flex;align-items:center;justify-content:center;gap:.2rem;flex:1;height:100%}
.desktop-nav>a,.nav-dropdown-trigger>a{padding:.55rem .75rem;text-decoration:none;font-size:.86rem;font-weight:700;color:var(--text)}
.desktop-nav>a:hover,.desktop-nav>a[aria-current=page],.nav-dropdown-trigger>a:hover,.nav-dropdown-trigger>a[aria-current=page]{background:var(--light);color:var(--ink)}
.nav-dropdown{position:relative;display:flex;align-items:center;height:100%}
.nav-dropdown-trigger{display:flex;align-items:center;transition:background .16s ease}
.nav-dropdown-trigger>a{padding-right:.38rem}
.nav-dropdown:hover .nav-dropdown-trigger,.nav-dropdown.open .nav-dropdown-trigger,.nav-dropdown:focus-within .nav-dropdown-trigger,.nav-dropdown.active .nav-dropdown-trigger{background:var(--light)}
.nav-dropdown:hover .nav-dropdown-trigger>a,.nav-dropdown.open .nav-dropdown-trigger>a,.nav-dropdown:focus-within .nav-dropdown-trigger>a,.nav-dropdown.active .nav-dropdown-trigger>a{background:transparent}
.nav-chevron{display:grid;place-items:center;width:30px;height:30px;margin-right:.2rem;padding:0;border:0;background:transparent;color:var(--muted);cursor:pointer;transition:background .16s ease,color .16s ease}
.nav-chevron:hover,.nav-chevron:focus-visible{background:var(--paper);color:var(--copper-dark)}
.nav-chevron svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
.nav-dropdown.open .nav-chevron svg{transform:rotate(180deg)}
.nav-dropdown-panel{position:absolute;top:calc(100% - 4px);left:0;z-index:220;width:min(680px,calc(100vw - 48px));padding:1.25rem;background:var(--paper);border:1px solid #cfd4ca;border-top:3px solid var(--copper);box-shadow:0 18px 42px rgba(16,42,46,.16);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity .16s ease,transform .16s ease,visibility .16s}
.nav-dropdown.open .nav-dropdown-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.nav-dropdown-heading{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:.15rem .2rem 1rem;border-bottom:1px solid var(--line)}
.nav-dropdown-heading strong{font:700 1.32rem/1.15 var(--serif);color:var(--ink);letter-spacing:-.02em}
.nav-dropdown-heading a,.nav-dropdown-footer a{padding:0;color:var(--copper-dark);font-size:.75rem;font-weight:800;text-decoration:none;white-space:nowrap}
.nav-dropdown-heading a:hover,.nav-dropdown-footer a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--copper)}
.nav-dropdown-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:1px;background:var(--line)}
.nav-dropdown-grid article{padding:1rem 1.05rem;background:var(--paper);transition:background .16s ease}
.nav-dropdown-grid article:hover{background:var(--cream)}
.nav-dropdown-grid a{display:inline;color:var(--ink);font-size:.85rem;font-weight:850;text-decoration:none}
.nav-dropdown-grid a:hover{color:var(--copper-dark);text-decoration:underline;text-decoration-color:var(--copper)}
.nav-dropdown-grid p{margin:.3rem 0 0;color:var(--muted);font-size:.72rem;line-height:1.45}
.nav-dropdown-footer{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:1rem;padding:.85rem 1rem;background:var(--cream);color:var(--muted);font-size:.7rem}
.nav-actions{display:flex;align-items:center;gap:.4rem}
.search-link{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);}
.search-link svg,.mobile-search svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.8}
.menu-button{display:none;align-items:center;justify-content:space-between;gap:.55rem;min-width:104px;height:46px;padding:.3rem .35rem .3rem .9rem;border:1px solid #bfc7bc;background:var(--cream);color:var(--ink);cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}
.menu-button:hover{border-color:var(--copper);background:#fff8ec}.menu-label{font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.menu-mark{position:relative;width:34px;height:34px;flex:0 0 34px;background:var(--ink);transition:background .18s ease,transform .18s ease}.menu-mark i{position:absolute;left:9px;width:16px;height:1.5px;background:var(--cream);transition:transform .2s ease,opacity .15s ease,top .2s ease}.menu-mark i:first-child{top:11px}.menu-mark i:nth-child(2){top:16px;width:12px}.menu-mark i:last-child{top:21px;width:8px}
.menu-button.open{border-color:var(--ink);background:var(--ink);color:#fff}.menu-button.open .menu-mark{background:var(--copper);transform:rotate(90deg)}.menu-button.open .menu-mark i{top:16px;left:9px;width:16px;background:#fff}.menu-button.open .menu-mark i:first-child{transform:rotate(45deg)}.menu-button.open .menu-mark i:nth-child(2){opacity:0}.menu-button.open .menu-mark i:last-child{transform:rotate(-45deg)}
.mobile-menu{display:none;position:fixed;inset:var(--nav-height) 0 0;z-index:200;overflow-y:auto;isolation:isolate;background:var(--cream);color:var(--text);padding:1.25rem 0 4rem}
.mobile-menu::before{content:"";position:fixed;z-index:-1;right:-170px;bottom:-220px;width:460px;height:460px;border:90px solid rgba(158,170,151,.12);pointer-events:none}.mobile-menu.open{display:block;animation:menu-in .2s ease-out}@keyframes menu-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
.mobile-menu-inner{position:relative}.mobile-svg-defs{position:absolute;width:0;height:0;overflow:hidden}
.mobile-menu-head{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.35rem 1.5rem;background:var(--ink);border-left:5px solid var(--copper);}
.mobile-menu-head>div{max-width:620px}.mobile-menu-head strong{font:700 clamp(1.55rem,4vw,2.25rem)/1.05 var(--serif);letter-spacing:-.03em;color:var(--cream)}.mobile-menu-head p{margin:.45rem 0 0;color:#b9c8c4;font-size:.82rem}.mobile-menu-art{width:96px;flex:0 0 96px;fill:none;stroke:#efae84;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mobile-search{display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;align-items:center;margin-top:.85rem;padding:.45rem .45rem .45rem .85rem;border:1px solid #c8c9bf;background:var(--paper)}
.mobile-search svg{color:var(--copper-dark)}.mobile-search input{min-width:0;border:0;outline:0;background:transparent;color:var(--ink);padding:.45rem}.mobile-search input::placeholder{color:#70817e}.mobile-search button{min-height:40px;border:0;background:var(--copper-dark);color:#fff;padding:.55rem 1rem;font-weight:800;cursor:pointer}.mobile-search button:hover{background:#733515}
.mobile-featured{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:.9rem}.mobile-featured article{position:relative;display:grid;grid-template-columns:1fr auto;align-content:start;min-height:130px;padding:1rem 1.05rem;background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--copper);}.mobile-featured-arrow{grid-column:2;grid-row:1/3;width:40px;height:24px;fill:none;stroke:var(--copper);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-featured strong,.mobile-featured small{display:block;grid-column:1}.mobile-featured strong{align-self:end;padding-right:.6rem;font:700 1.04rem/1.15 var(--serif)}.mobile-featured a{color:var(--ink)}.mobile-featured a:hover{color:var(--copper-dark)}.mobile-featured small{margin-top:.35rem;padding-right:.6rem;color:var(--muted);font-size:.68rem;line-height:1.4}
.mobile-nav-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-top:1.15rem}.mobile-nav-grid section{padding:1rem 1.05rem;background:rgba(255,253,248,.84);border:1px solid var(--line);}.mobile-nav-heading{margin:0 0 .45rem;padding-bottom:.75rem;border-bottom:2px solid var(--ink);font:700 1.15rem/1.1 var(--serif);letter-spacing:-.02em;color:var(--ink)}.mobile-nav-grid section>a{display:flex;align-items:center;justify-content:space-between;gap:.8rem;min-height:46px;padding:.65rem .1rem;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none;font-size:.82rem;font-weight:750}.mobile-nav-grid section>a svg{width:34px;height:20px;flex:0 0 34px;fill:none;stroke:var(--sage);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform .16s ease,stroke .16s ease}.mobile-nav-grid section>a:hover{color:var(--copper-dark)}.mobile-nav-grid section>a:hover svg{stroke:var(--copper);transform:translateX(3px)}.mobile-nav-grid section>a:last-child{border-bottom:0}.mobile-nav-grid section>a.mobile-nav-all{color:var(--copper-dark)}
.mobile-utility{display:flex;flex-wrap:wrap;gap:.45rem .65rem;margin-top:.9rem;padding:.85rem 1rem;border:1px solid var(--line);background:rgba(255,253,248,.72)}.mobile-utility a{padding:.28rem .5rem;color:var(--muted);font-size:.7rem;font-weight:750;text-decoration:none}.mobile-utility a:hover{background:var(--light);color:var(--ink)}

/* Hero */
.hero{position:relative;min-height:720px;display:flex;align-items:center;background:var(--ink);overflow:hidden}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,42,46,.97) 0%,rgba(16,42,46,.9) 36%,rgba(16,42,46,.12) 68%,rgba(16,42,46,.08))}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-grid{position:relative;z-index:1;padding-block:6rem}.hero-copy{width:100%}.hero h1{color:var(--cream)}.hero-copy>p{font-size:1.14rem;color:#d6dfdd}.hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.8rem}.hero .hero-note{font-size:.75rem;color:#aebdb9;margin-top:1rem}
.quick-calc{background:var(--cream);border-bottom:1px solid var(--line)}
.section-heading{margin-bottom:2rem}.section-heading p{font-size:1.02rem}.section-heading.split{max-width:none;display:flex;justify-content:space-between;align-items:end;gap:2rem}.section-heading.split>div{width:100%}.section-heading.split>a{font-weight:800;white-space:nowrap}
.inline-calc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);background:var(--paper);overflow:hidden}
.inline-calc>label{display:block;padding:1rem;border-right:1px solid var(--line);font-size:.75rem;font-weight:750;color:var(--muted)}
.inline-calc>label:nth-child(4){border-right:0}.inline-calc input{font-size:1.15rem;font-weight:750}.quick-result{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--ink);color:#fff}.quick-result>div{padding:1rem 1.2rem;border-right:1px solid rgba(255,255,255,.16)}.quick-result>div:nth-child(4){border-right:0}.quick-result span{display:block;font-size:.72rem;color:#bfcdca}.quick-result strong{display:block;margin-top:.15rem;font:700 1.55rem var(--serif)}.quick-result-note{grid-column:1/-1;margin:0;padding:.75rem 1.2rem;border-top:1px solid rgba(255,255,255,.16);color:#bfcdca;font-size:.72rem}.quick-result-note a{color:#fff;font-weight:800}
.money-input,.suffix-input{display:flex;align-items:center;margin-top:.3rem;color:var(--ink)}.money-input>span,.suffix-input>span{font-weight:750}.money-input input,.suffix-input input{min-width:0;width:100%;padding:.15rem;border:0;outline:0;background:transparent;color:var(--ink)}
.cost-map-section{background:var(--paper)}.cost-map-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);gap:2rem;align-items:start}.table-scroll{max-width:100%;overflow-x:auto}.cost-map-table{margin:0}.cost-map-table th:first-child{width:18%}.cost-map-table tbody th{color:var(--ink);font-size:.82rem}.cost-map-table td{vertical-align:top}.cost-map-table a{font-weight:800}.comparison-rule{padding:1.4rem;background:var(--cream);border:1px solid var(--line)}.comparison-rule h3{font:700 1.35rem/1.15 var(--serif)}.comparison-rule ul{padding-left:1.2rem;margin:.9rem 0 0}.comparison-rule li{margin:.55rem 0}.comparison-rule p{font-size:.84rem}.home-faq{border-top:1px solid var(--line)}

/* Cards: only descriptive headings are anchors; overlays make the hit area large without polluting anchor text. */
.tools-section{background:#eef0e9}.tool-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#cfd4ca;border:1px solid #cfd4ca}.tool-grid-all{grid-template-columns:repeat(3,1fr)}
.tool-card{position:relative;min-height:230px;background:var(--paper);padding:2rem;transition:background .15s}.tool-card:hover{background:#fff}.tool-card h2,.tool-card h3{margin-top:.7rem}.tool-card h2{font:700 1.5rem/1.1 var(--serif)}.tool-card p{width:100%}.tool-card-top{height:44px;display:flex;justify-content:flex-end;align-items:center}.arrow-art{width:74px;fill:none;stroke:var(--copper);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.card-title-link{text-decoration:none}.card-title-link::after{content:"";position:absolute;inset:0}
.editorial-band{background:var(--ink);color:#fff}.editorial-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:clamp(2rem,6vw,6rem)}.editorial-image img{aspect-ratio:3/2;object-fit:cover}.editorial-copy h2{color:var(--cream)}.editorial-copy p{color:#bdc9c6;font-size:1.05rem}.text-link{display:inline-flex;margin-top:1.3rem;color:var(--copper-dark);font-weight:800}.text-link:hover{color:var(--ink)}.editorial-band .text-link{color:#efae84}.editorial-band .text-link:hover{color:#fff}
.magazine-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1.2rem}.story-card{position:relative;border-top:1px solid var(--line);padding:1.25rem 0}.story-card-lead{grid-row:span 3;border-top:0;padding:0 1.5rem 0 0}.story-card-lead img{aspect-ratio:3/2;object-fit:cover;margin-bottom:1.2rem}.story-card h3{font:700 1.4rem/1.12 var(--serif)}.story-card-lead h3{font-size:2rem}.read-time{display:block;margin-top:.75rem;color:var(--copper-dark);font-size:.72rem;font-weight:800}.proof-section{background:var(--cream);text-align:center}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;text-align:left;margin:2.2rem 0}.proof-grid>div{border-top:3px solid var(--copper);padding-top:1rem}.proof-grid h3{font-size:1rem}.proof-grid p{font-size:.86rem}.proof-actions{justify-content:center}
.discovery-section{background:var(--ink);color:#fff}.discovery-section .section-heading{color:#fff}.discovery-section .section-heading h2{color:var(--cream)}.discovery-section .section-heading p{color:#bdc9c6}.discovery-directory-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.7rem 1.1rem}.discovery-directory-links a{color:#efae84;font-size:.8rem;font-weight:800;text-decoration-color:rgba(239,174,132,.5)}.discovery-directory-links a:hover{color:#fff}.discovery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.18)}.discovery-grid article{position:relative;display:flex;flex-direction:column;min-height:250px;padding:1.45rem;background:#17373b}.discovery-grid article:nth-child(3n+2){background:#153337}.discovery-grid h3{margin-top:1.1rem;font:700 1.28rem/1.15 var(--serif);letter-spacing:-.025em}.discovery-grid h3 a{color:#fff}.discovery-grid h3 a:hover{color:#efae84}.discovery-grid p{color:#bdc9c6;font-size:.84rem;line-height:1.55}.discovery-grid small{display:block;margin-top:auto;padding-top:1.2rem;color:#efae84;font-size:.68rem;font-weight:800}.discovery-arrow{align-self:flex-end;width:50px;fill:none;stroke:#efae84;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.discovery-note{margin-top:1rem;color:#9fb2ae;font-size:.72rem}

/* Interior and magazine pages */
.page-hero{display:grid;grid-template-columns:1fr .82fr;align-items:center;gap:4rem;padding-block:clamp(3.5rem,8vw,7rem);border-bottom:1px solid var(--line)}.page-hero>div>p{width:100%;font-size:1.1rem}.page-hero img{aspect-ratio:4/3;object-fit:cover}.simple-hero{padding:clamp(4rem,9vw,8rem) 0 3rem}.simple-hero p{font-size:1.15rem}
/* SHAREITONL-style breadcrumb bar, on the exact same surface as the top nav. */
.breadcrumb-bar{background:var(--nav-surface);border:0}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:.42rem;margin:0;padding:.7rem 0;color:var(--muted);font-size:.78rem;line-height:1.35}
.breadcrumb a{color:var(--ink-2);font-weight:700;text-decoration:none}.breadcrumb a:hover{text-decoration:underline;text-decoration-color:var(--copper)}
.breadcrumb .sep{color:var(--sage);font-size:1rem;line-height:1}
#main>.breadcrumb-bar+.page-hero,#main>.breadcrumb-bar+.simple-hero,#main>.breadcrumb-bar+.tool-hero{padding-top:clamp(2rem,4vw,3.5rem)}
#main>.breadcrumb-bar+.article-page>.article-header{padding-top:clamp(2rem,4vw,3.5rem)}
.hub-layout{display:grid;grid-template-columns:1fr 340px;gap:5rem}.hub-layout>div>p{font-size:1.05rem}.hub-aside{align-self:start;border:1px solid var(--line);padding:1.5rem}.hub-aside h2{font-size:1.45rem}.hub-aside>article{position:relative;padding:1rem 0;border-bottom:1px solid var(--line)}.hub-aside>article h3{font:700 1rem/1.2 var(--font)}.hub-aside>article p{margin:.3rem 0 0;color:var(--muted);font-size:.8rem}.disclaimer-small{font-size:.72rem}
.article-list{margin-top:2.5rem}.article-list article{position:relative;padding:1.5rem 0;border-top:1px solid var(--line)}.article-list h2,.article-list h3{font:700 1.5rem/1.14 var(--serif)}.article-list a{text-decoration:none}.article-list p{width:100%}
.cluster-section{background:var(--cream)}.cluster-grid,.cluster-directory>div{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.cluster-grid article,.cluster-directory article{position:relative;min-height:250px;padding:1.5rem;background:var(--paper)}.cluster-grid .arrow-art,.cluster-directory .arrow-art{display:block;margin-left:auto}.cluster-grid h3,.cluster-directory h3{margin-top:.7rem;font:700 1.3rem/1.12 var(--serif)}.cluster-grid small,.cluster-directory small{display:block;margin-top:1rem;color:var(--copper-dark);font-size:.7rem;font-weight:800}.cluster-directory{padding:0 0 4rem}.cluster-directory>h2{font-size:2rem;margin-bottom:1.5rem}
.hub-principles{padding:2.3rem 0;background:var(--cream);border-bottom:1px solid var(--line)}.hub-principles h2{font-size:1.65rem}.hub-answer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.3rem}.hub-answer-grid article{padding:1.15rem;background:var(--paper);border:1px solid var(--line)}.hub-answer-grid h3{display:flex;align-items:flex-start;gap:.65rem;margin:0 0 .7rem;font:700 1rem/1.25 var(--serif)}.hub-answer-grid p{margin:0;color:var(--muted);font-size:.87rem}.hub-principles .fact-arrow{flex:0 0 38px}
.article-header{padding:clamp(3.5rem,8vw,7rem) 0 2.5rem}.article-header h1{font-size:clamp(2.5rem,5vw,4.6rem)}.standfirst{font-size:1.18rem;max-width:680px}.direct-answer{font-weight:650}.article-meta{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;margin-top:1.4rem;font-size:.72rem;color:var(--muted)}.article-image img{width:100%;max-height:620px;object-fit:cover}.article-body{padding-block:3.5rem;overflow-wrap:anywhere}.article-body>section,.article-body>.answer-box{margin-bottom:2.8rem}.article-body h2{font-size:1.9rem}.article-body p,.article-body li{font-size:1.02rem}.answer-box{border-left:4px solid var(--copper);padding:1.2rem 1.5rem;background:var(--cream)}.answer-box h2{font-size:1.3rem}.worked-example{background:var(--ink);color:#fff;padding:2rem}.worked-example h2{color:var(--cream)}.fact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem 1rem;margin:1.2rem 0 0;padding:0;list-style:none}.fact-grid>li{display:flex;align-items:center;gap:.7rem;border-top:1px solid rgba(255,255,255,.16);padding:.75rem 0}.fact-arrow{width:38px;flex:0 0 auto;fill:none;stroke:#eaa378;stroke-width:2}.example-note{font-size:.72rem!important;color:#afc0bc}.contextual-bridge{margin:0 0 2.8rem;padding:1rem 0;border-block:1px solid var(--line);color:var(--muted)}.contextual-bridge a{color:var(--ink-2);font-weight:800;text-decoration:underline;text-decoration-color:var(--copper);text-decoration-thickness:2px;text-underline-offset:3px}.contextual-bridge a:hover{color:var(--ink);text-decoration-color:currentColor}.article-tool-callout{padding:1.5rem;background:var(--cream);border:1px solid var(--line)}.article-tool-callout h2{font-size:1.55rem}.article-tool-callout h3{font:700 1.3rem/1.15 var(--serif)}.article-tool-callout .text-link{margin-top:.3rem}.source-list{padding-left:1.2rem}.source-list li{margin:.6rem 0}.editorial-note,.contribution-notice{padding:1rem 1.2rem;background:var(--cream);border:1px solid var(--line);font-size:.85rem!important}.related{border-top:1px solid var(--line);padding-block:3rem 6rem}.related>div{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:1.5rem}.related article{position:relative;padding:1.5rem;background:var(--paper)}.related h3{font:700 1.2rem/1.15 var(--serif)}
.article-section-group{margin-bottom:clamp(2.8rem,6vw,5.5rem)}.article-section-group>h2{padding-bottom:1rem;border-bottom:3px solid var(--ink)}.article-section-group h3{font:700 clamp(1.25rem,2.2vw,1.65rem)/1.15 var(--serif);letter-spacing:-.025em}.decision-list ul{list-style:none;padding:0;margin:1.2rem 0 0}.decision-list li{display:flex;align-items:flex-start;gap:.85rem;padding:.85rem 0;border-top:1px solid var(--line)}.decision-list .fact-arrow{margin-top:.2rem;stroke:var(--copper)}.decision-depth{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:1rem 3rem;margin:1.5rem 0 2rem;padding:1.5rem;border-left:6px solid var(--copper);background:var(--cream)}.decision-depth>p:first-child{grid-row:1/3;margin:0;font-size:1.02rem;color:var(--text)}.decision-depth h3{font:700 1.35rem/1.15 var(--serif)}.decision-depth .evidence-checks{margin:0}.decision-depth .evidence-checks li{padding:.55rem 0}.pitfall-box{padding:1.5rem;background:#f7ebe3;border:1px solid #e5c4ae}.pitfall-box h2{font-size:1.55rem}.pitfall-box ul{margin-bottom:0}.article-faq details{border-top:1px solid var(--line);padding:1rem 0}.article-faq summary{cursor:pointer;font-weight:800;color:var(--ink)}.article-faq details p{font-size:.92rem;margin-right:1.5rem}
.policy-page{padding-bottom:7rem}.policy-page h2{font-size:1.9rem;margin-top:2.7rem}.policy-page h3{margin-top:1.7rem;font-size:1.08rem;letter-spacing:-.01em}.policy-page p,.policy-page li{font-size:1.02rem}.policy-page .answer-box h2{margin-top:0}.directory-intro{padding-bottom:2rem}.plain-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:1.5rem;background:var(--line);border:1px solid var(--line)}.plain-steps>section{padding:1.25rem;background:var(--paper)}.plain-steps h3{font:700 1.16rem/1.15 var(--serif)}.plain-steps p{font-size:.9rem}.tool-directory-group+.tool-directory-group{padding-top:0}.formula{overflow-x:auto;margin:1.2rem 0;padding:1rem 1.2rem;background:var(--ink);color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.search-form{display:flex;gap:.6rem;margin-top:1.5rem}.search-form input{flex:1;min-width:0;padding:.8rem 1rem;border:1px solid var(--line);}.search-results{padding-bottom:7rem}.search-results>h2{font-size:1.5rem}.search-results article{padding:1.25rem 0;border-top:1px solid var(--line)}.search-results h3{font:700 1.3rem var(--serif)}

/* Calculator */
.tool-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.58fr);align-items:center;gap:3rem;padding:4rem 0 2.5rem}.tool-hero>div{width:100%}.tool-hero-image{width:100%;aspect-ratio:3/2;object-fit:cover}.tool-hero h1{font-size:clamp(2.6rem,5vw,4.6rem)}.tool-hero p{font-size:1.08rem}.tool-hero .scope-note{padding:.9rem 1rem;border-left:3px solid var(--copper);background:var(--cream);font-size:.84rem;color:var(--muted)}.privacy-chip{display:inline-block;margin-top:1.2rem;padding:.45rem .7rem;border:1px solid #b7c1b4;color:#52635f;font-size:.72rem;font-weight:750}.tool-jump-links{display:flex;flex-wrap:wrap;gap:0 1.2rem;margin-top:1.2rem}.tool-jump-links a{display:inline-flex;align-items:center;min-height:44px;font-size:.78rem;font-weight:800}
.calculator-shell{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);border:1px solid var(--line);margin-bottom:4rem}.calculator-form,.calculator-result{padding:clamp(1.4rem,4vw,2.5rem)}.calculator-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;background:var(--cream)}.calculator-form>h2,.calculator-form>.offer-fields,.calculator-form>.button{grid-column:1/-1}.calculator-form>h2,.calculator-result>h2{font-size:1.7rem}.calculator-form label{font-size:.76rem;font-weight:800;color:var(--muted)}.calculator-form .money-input,.calculator-form .suffix-input{height:50px;padding:0 .7rem;background:var(--paper);border:1px solid #c8c9bf;}.calculator-form input{font-size:1rem}.offer-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.offer-fields fieldset{display:grid;gap:.8rem;margin:0;padding:1rem;border:1px solid #c8c9bf}.offer-fields legend{font-weight:850;color:var(--ink)}.calculator-result{background:var(--ink);color:#fff}.calculator-result h2{color:var(--cream)}.result-primary{padding:2rem 0;border-bottom:1px solid rgba(255,255,255,.2)}.result-primary span,.result-primary strong{display:block}.result-primary span{color:#b8c8c5;font-size:.78rem}.result-primary strong{font:700 clamp(2.6rem,5vw,4.2rem) var(--serif);color:#fff}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.16);margin-top:1rem}.result-grid>div{background:var(--ink);padding:.9rem 0}.result-grid span,.result-grid strong{display:block}.result-grid span{font-size:.69rem;color:#acbfbb}.result-grid strong{font-size:1.05rem}.result-note{margin-top:1.2rem;padding:1rem;background:#173d42;color:#d5dfdd;font-size:.78rem}.print-button{margin-top:1rem;padding:.55rem .8rem;border:1px solid #90a6a2;background:transparent;color:#fff;cursor:pointer}.tool-explainer{padding-bottom:7rem}.tool-explainer h2{font-size:2rem;margin-top:2.5rem}.source-box{margin-top:3rem;padding:1.3rem;border:1px solid var(--line);background:var(--cream)}
.amortization-section{padding:0 0 4rem}.amortization-section .section-heading{margin-bottom:1.2rem}.amortization-section table{margin:0}.amortization-section tbody th{color:var(--ink)}.amortization-section td,.amortization-section th{white-space:nowrap}.amortization-section .disclaimer-small{margin-top:1rem}
.offer-fields.three-offers{grid-template-columns:repeat(3,1fr)}.tool-depth{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:4rem}.tool-depth>div{padding:2rem;background:var(--cream)}.tool-depth h2{font-size:1.65rem}.tool-depth ul{padding-left:1.2rem;margin-bottom:0}.tool-depth li{margin:.65rem 0}.tool-related{padding-top:0}.tool-related h2{font-size:2rem}.tool-answer-list details{border-top:1px solid var(--line);padding:1rem 0}.tool-answer-list summary{cursor:pointer;font-weight:800;color:var(--ink)}.tool-answer-list p{margin:.7rem 0 0;color:var(--muted);font-size:.9rem}.glossary-layout{display:grid;grid-template-columns:minmax(210px,.3fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);padding-bottom:7rem}.glossary-nav{align-self:start;position:sticky;top:calc(var(--nav-height) + 1rem);padding:1.2rem;background:var(--cream);border:1px solid var(--line)}.glossary-nav h2{font-size:1.25rem}.glossary-nav a{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-top:1px solid var(--line);font-size:.82rem;font-weight:800}.glossary-nav span{color:var(--muted)}.glossary-group{scroll-margin-top:calc(var(--nav-height) + 1rem);margin-bottom:3.5rem}.glossary-group>h2{font-size:2rem;padding-bottom:.8rem;border-bottom:2px solid var(--ink)}.glossary-term{scroll-margin-top:calc(var(--nav-height) + 1rem);padding:1.4rem 0;border-bottom:1px solid var(--line)}.glossary-term h3{font:700 1.35rem/1.2 var(--serif);margin:0}.glossary-term dfn{font-style:normal}.glossary-term p{max-width:72ch}.glossary-links{font-size:.84rem;color:var(--muted)}.glossary-links a{font-weight:800}

/* Tables remain stable on hover: no elevation or shadow changes. */
table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.9rem}.article-body table{display:block;max-width:100%;overflow-x:auto}th,td{padding:.75rem;text-align:left;border-bottom:1px solid var(--line)}thead{background:var(--ink);color:#fff}tbody tr:hover{background:#f4f4ee;box-shadow:none}

.site-footer{background:#0b2225;color:#fff;padding:4rem 0 1.2rem}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:3rem}.footer-intro img{width:190px;height:auto;filter:brightness(0) invert(1)}.footer-intro p{max-width:34ch;color:#aebfbc;font-size:.82rem}.site-footer h2{font:800 .7rem var(--font);text-transform:uppercase;letter-spacing:.1em;color:#fff;margin-bottom:1rem}.site-footer div>a{display:block;color:#bdcac7;text-decoration:none;font-size:.8rem;margin:.55rem 0}.site-footer a:hover{color:#efae84}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.15);color:#829794;font-size:.68rem}

@media(max-width:980px){.desktop-nav{display:none}.menu-button{display:flex}.nav-shell{justify-content:space-between}.hero{min-height:650px}.hero::after{background:linear-gradient(90deg,rgba(16,42,46,.96),rgba(16,42,46,.82) 60%,rgba(16,42,46,.38))}.inline-calc{grid-template-columns:1fr 1fr}.inline-calc>label:nth-child(2),.inline-calc>label:nth-child(4){border-right:0}.quick-result{grid-template-columns:1fr 1fr}.quick-result>div:nth-child(2){border-right:0}.quick-result>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.16)}.cost-map-layout{grid-template-columns:1fr}.tool-grid-all{grid-template-columns:1fr 1fr}.cluster-grid,.cluster-directory>div,.hub-answer-grid,.discovery-grid{grid-template-columns:repeat(2,1fr)}.page-hero{gap:2rem}.hub-layout{grid-template-columns:1fr;gap:3rem}.hub-aside{width:100%}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2}}
@media(max-width:720px){:root{--nav-height:66px}.container-wide,.container-narrow{width:min(calc(100% - 32px),var(--content))}.brand{width:166px}.search-link{display:none}.hero{min-height:630px;align-items:flex-end}.hero-image{object-position:62% center}.hero::after{background:linear-gradient(0deg,rgba(16,42,46,.99) 4%,rgba(16,42,46,.9) 60%,rgba(16,42,46,.2))}.hero-grid{padding-block:4rem}.hero h1{font-size:clamp(2.7rem,13vw,4.1rem)}.hero-copy>p{font-size:1rem}.section-heading.split{display:block}.section-heading.split>a{display:inline-block;margin-top:1rem}.discovery-directory-links{justify-content:flex-start;margin-top:1rem}.inline-calc{grid-template-columns:1fr}.inline-calc>label{border-right:0;border-bottom:1px solid var(--line)}.quick-result{grid-template-columns:1fr 1fr}.quick-result>div{padding:.9rem}.quick-result strong{font-size:1.25rem}.tool-grid,.tool-grid-all,.cluster-grid,.cluster-directory>div,.hub-answer-grid,.plain-steps,.discovery-grid{grid-template-columns:1fr}.tool-card{min-height:205px;padding:1.4rem}.cluster-grid article,.cluster-directory article{min-height:210px}.discovery-grid article{min-height:220px}.editorial-grid{grid-template-columns:1fr}.magazine-grid{grid-template-columns:1fr}.story-card-lead{grid-row:auto;padding:0 0 1.2rem}.story-card-lead h3{font-size:1.55rem}.proof-grid{grid-template-columns:1fr}.page-hero,.tool-hero{grid-template-columns:1fr;padding-block:3rem}.page-hero img,.tool-hero-image{order:-1}.tool-hero{gap:1.5rem}.tool-hero-image{max-height:360px}.mobile-menu-head>span{display:none}.mobile-featured{grid-template-columns:1fr}.mobile-featured>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.2)}.mobile-nav-grid{grid-template-columns:1fr}.article-header h1{font-size:2.65rem}.fact-grid{grid-template-columns:1fr}.related>div{grid-template-columns:1fr}.calculator-shell{grid-template-columns:1fr}.calculator-form{grid-template-columns:1fr}.calculator-form>h2,.calculator-form>.offer-fields,.calculator-form>.button{grid-column:1}.offer-fields{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-intro{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.article-image{width:100%}.article-image img{max-height:450px}.search-form{flex-direction:column}}
@media(max-width:720px){.offer-fields.three-offers,.tool-depth,.glossary-layout{grid-template-columns:1fr}.glossary-nav{position:static}}
@media(max-width:720px){.decision-depth{grid-template-columns:1fr;padding:1.15rem;border-left-width:4px}.decision-depth>p:first-child{grid-row:auto}}
@media(max-width:720px){.menu-button{min-width:98px;height:44px;padding-left:.75rem}.menu-mark{width:32px;height:32px;flex-basis:32px}.mobile-menu{padding-top:.8rem}.mobile-menu-head{gap:1rem;padding:1.1rem 1rem;border-left-width:4px}.mobile-menu-head strong{font-size:1.55rem}.mobile-menu-head p{font-size:.75rem}.mobile-menu-art{width:66px;flex-basis:66px}.mobile-search{margin-top:.7rem}.mobile-search button{padding-inline:.8rem}.mobile-featured{gap:.55rem;margin-top:.7rem}.mobile-featured article{min-height:106px}.mobile-nav-grid{gap:.55rem;margin-top:.75rem}.mobile-nav-grid section{padding:.85rem 1rem}.mobile-utility{margin-top:.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media print{.site-header,.mobile-menu,.site-footer,.breadcrumb-bar,.print-button,.tool-explainer{display:none!important}.calculator-shell{display:grid;grid-template-columns:1fr 1fr;border:1px solid #000}.calculator-result{background:#fff;color:#000}.calculator-result h2,.result-primary strong{color:#000}.result-grid>div{background:#fff}.result-grid span,.result-primary span{color:#333}}

/* Full-width editorial rhythm. Headings and their summaries share the same measure as the content below. */
.hero-copy,.hero h1,.hero-copy>p,.section-heading,.section-heading.split>div,.page-hero>div>p,.standfirst,.direct-answer,.tool-hero>div,.tool-hero .scope-note,.article-list p,.tool-card p{max-width:none}
.hero-copy{width:100%}
.hero h1{font-size:clamp(3.25rem,7.2vw,6.8rem);text-wrap:balance}
.hero-copy>p{width:100%}
.page-hero{grid-template-columns:minmax(0,1.28fr) minmax(330px,.72fr);gap:clamp(2.5rem,6vw,6.5rem)}
.page-hero h1,.tool-hero h1,.article-header h1{max-width:none;text-wrap:balance}
.page-hero>div,.tool-hero>div{min-width:0;width:100%}
.tool-hero{grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:clamp(2.5rem,5vw,5.5rem)}
.article-header .standfirst{width:100%}
.calculation-privacy{margin-top:1.2rem;padding:.65rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#52635f!important;font-size:.75rem!important;font-weight:750}

/* Six editorial structures tied to the decision, not to a page-production loop. */
.article-body{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 clamp(1.4rem,3vw,3rem)}
.article-body>*{grid-column:1/-1;min-width:0}
.article-body>section,.article-body>.answer-box{margin-bottom:clamp(2.4rem,5vw,4.5rem)}
.article-body h2{max-width:none;text-wrap:balance}
.article-opening,.contract-explanation,.ledger-introduction,.article-section-grid,.comparison-sections,.ledger-notes,.scenario-explanation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,5vw,5rem);margin-bottom:clamp(2.8rem,6vw,5.5rem)}
.article-opening section:nth-child(even),.contract-explanation section:nth-child(even),.ledger-introduction section:nth-child(even){padding-top:clamp(2rem,6vw,5rem)}
.article-section-grid section,.comparison-sections section,.ledger-notes section,.scenario-explanation section{padding:1.5rem 0;border-top:2px solid var(--ink)}
.article-section-grid section:nth-child(3n+2),.ledger-notes section:nth-child(even){border-top-color:var(--copper)}
.worked-example{padding:clamp(1.8rem,4vw,3.2rem)}
.worked-example dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:1.5rem 0 0;background:rgba(255,255,255,.2)}
.worked-example dl>div{padding:1rem;background:var(--ink)}
.worked-example dt{color:#aabdb9;font-size:.78rem;font-weight:750;letter-spacing:0}
.worked-example dd{margin:.3rem 0 0;color:#fff;font-weight:700}
.editorial-connection{margin:-1.8rem 0 3rem;color:var(--muted)}
.editorial-connection a{font-weight:800}
.contract-scan>div,.scenario-board>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:1.4rem;background:var(--line);border:1px solid var(--line)}
.contract-scan article,.scenario-board article{padding:1.2rem;background:var(--paper)}
.contract-scan article p,.scenario-board article p{margin:.65rem 0 0}
.document-example table{display:table;color:#fff}.document-example thead{background:#173d42}.document-example th,.document-example td{border-color:rgba(255,255,255,.2)}
.contract-note{display:grid;grid-template-columns:minmax(240px,.42fr) minmax(0,1fr);gap:2rem;padding:1.5rem 0;border-top:1px solid var(--line)}
.contract-note p{margin:0}
.timeline-example ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:1.6rem 0 0;padding:0;list-style:none}
.timeline-example li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:.75rem;align-items:start;padding:1.2rem;border-top:2px solid #efae84}
.timeline-example li>.fact-arrow{width:44px;margin-top:.15rem}
.timeline-example li p{margin:0;color:#fff}
.timeline-explanation{margin-bottom:3rem}
.timeline-explanation>section{display:grid;grid-template-columns:minmax(240px,.38fr) minmax(0,1fr);gap:2.5rem;padding:1.6rem 0;border-top:1px solid var(--line)}
.timeline-explanation>section p{margin:0}
.timeline-explanation .contextual-bridge{margin:1rem 0 3rem}
.comparison-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:1.5rem;background:rgba(255,255,255,.2)}
.comparison-facts article{padding:1.2rem;background:var(--ink)}
.comparison-facts h3{color:#efae84}.comparison-facts p{color:#fff}
.comparison-sections section:nth-child(even){margin-top:clamp(2rem,5vw,5rem);border-top-color:var(--copper)}
.ownership-ledger{margin-left:clamp(0rem,5vw,7rem);margin-right:clamp(0rem,5vw,7rem)}
.scenario-warning{padding:clamp(1.5rem,3vw,2.5rem);border-left:6px solid var(--copper);background:#f7ebe3}
.scenario-explanation{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.scenario-explanation .contextual-bridge{grid-column:1/-1}
.article-sources{padding-top:1.5rem;border-top:2px solid var(--ink)}

/* Calculator families have different reading and result hierarchies. */
.calculator-deadline{grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);border-top:6px solid var(--copper)}
.calculator-choice{grid-template-columns:1fr 1fr}.calculator-choice .calculator-form{background:var(--paper)}
.calculator-asset{grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);border-left:6px solid var(--sage)}
.calculator-asset .calculator-result{background:#17373b}
.calculator-reserve{grid-template-columns:1fr}
.calculator-reserve .calculator-form{grid-template-columns:repeat(3,minmax(0,1fr))}
.calculator-reserve .calculator-result{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1fr);gap:2rem;align-items:start}
.calculator-reserve .calculator-result>h2,.calculator-reserve .result-note,.calculator-reserve .print-button{grid-column:1/-1}
.calculator-strategy{grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr)}
.calculator-strategy .calculator-result{order:-1;border-right:6px solid var(--copper)}
.tool-explainer{display:block;padding-bottom:7rem}
.tool-explainer>h2{margin-top:2.5rem}.tool-explainer>p,.tool-explainer>.formula,.tool-explainer>.contextual-bridge,.tool-explainer>.source-box{width:100%;max-width:none}
.tool-explainer>.contextual-bridge,.tool-explainer>.source-box{width:100%}
.tool-depth-asset,.tool-depth-reserve{grid-template-columns:.8fr 1.2fr}

@media(max-width:980px){
  .hero-copy,.hero-copy>p{width:100%}
  .page-hero,.tool-hero{grid-template-columns:1fr;gap:2rem;padding-block:3.5rem}
  .page-hero img,.tool-hero-image{width:min(100%,720px);aspect-ratio:16/8;order:0}
  .contract-scan>div,.scenario-board>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calculator-shell,.calculator-deadline,.calculator-choice,.calculator-asset,.calculator-strategy{grid-template-columns:1fr}
  .calculator-strategy .calculator-result{order:0;border-right:0;border-top:6px solid var(--copper)}
  .calculator-reserve .calculator-form{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .hero-copy,.hero-copy>p{width:100%}.hero h1{font-size:clamp(2.7rem,13vw,4.1rem)}
  .page-hero img,.tool-hero-image{order:-1;aspect-ratio:3/2}
  .article-opening,.contract-explanation,.ledger-introduction,.article-section-grid,.comparison-sections,.ledger-notes,.scenario-explanation{grid-template-columns:1fr;gap:1.8rem}
  .article-opening section:nth-child(even),.contract-explanation section:nth-child(even),.ledger-introduction section:nth-child(even),.comparison-sections section:nth-child(even){padding-top:0;margin-top:0}
  .worked-example dl,.comparison-facts,.contract-scan>div,.scenario-board>div{grid-template-columns:1fr}
  .contract-note,.timeline-explanation>section{grid-template-columns:1fr;gap:.5rem}
  .ownership-ledger{margin-inline:0}.scenario-warning{border-left-width:4px}
  .calculator-reserve .calculator-form,.calculator-reserve .calculator-result{grid-template-columns:1fr}
  .calculator-reserve .calculator-result>*{grid-column:1}
  .tool-explainer{display:block}.tool-explainer>h2{margin-top:2.5rem}
}

/* REALLY.YOU navigation instruments. Descriptive copy remains outside anchors. */
.desktop-nav>a,.nav-dropdown-trigger>a{position:relative}
.desktop-nav>a::after,.nav-dropdown-trigger>a::after{content:"";position:absolute;left:.75rem;right:.75rem;bottom:.15rem;height:2px;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
.desktop-nav>a:hover::after,.desktop-nav>a[aria-current=page]::after,.nav-dropdown:hover .nav-dropdown-trigger>a::after,.nav-dropdown.open .nav-dropdown-trigger>a::after,.nav-dropdown.active .nav-dropdown-trigger>a::after{transform:scaleX(1)}
.nav-dropdown-trigger{position:relative;height:100%}
.nav-chevron{position:relative;width:34px;height:34px;margin-right:.25rem;background:var(--ink);color:var(--cream);border:1px solid var(--ink);transition:background .18s ease,border-color .18s ease}
.nav-chevron::before{content:"";position:absolute;left:-4px;top:7px;bottom:7px;width:3px;background:var(--copper)}
.nav-chevron:hover,.nav-chevron:focus-visible{background:var(--copper-dark);border-color:var(--copper-dark);color:#fff}
.nav-chevron svg{width:24px;height:22px;stroke:currentColor;stroke-width:1.7;transform-origin:center;transition:transform .22s ease}
.nav-chevron .nav-v-right{stroke:var(--sage)}
.nav-chevron .nav-v-spine{stroke:var(--copper);stroke-width:2.2}
.nav-chevron .nav-v-base{stroke:var(--cream);stroke-width:2.2}
.nav-dropdown.open .nav-chevron{background:var(--copper-dark);border-color:var(--copper-dark)}
.nav-dropdown.open .nav-chevron svg{transform:rotate(180deg)}
.nav-dropdown-panel,.nav-dropdown-tools .nav-dropdown-panel,.nav-dropdown-learn .nav-dropdown-panel{position:fixed;top:var(--nav-height);left:50%;right:auto;width:min(940px,calc(100vw - 48px));padding:0;border:1px solid #b8c0b7;border-top:5px solid var(--copper);background:var(--paper);clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);box-shadow:0 22px 48px rgba(16,42,46,.2);transform:translate(-50%,-10px)}
.nav-dropdown-learn .nav-dropdown-panel{border-top-color:var(--sage)}
.nav-dropdown.open .nav-dropdown-panel{transform:translate(-50%,0)}
.nav-panel-lead{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:1.2rem;min-height:108px;padding:1.15rem 1.5rem;background:var(--ink)}
.nav-dropdown-learn .nav-panel-lead{background:var(--ink-2)}
.nav-lead-mark{width:76px;height:58px;fill:none;stroke:var(--sage);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.nav-lead-mark .nav-lead-accent{stroke:var(--copper);stroke-width:3}
.nav-panel-lead strong{display:block;color:var(--cream);font:700 1.45rem/1.08 var(--serif);letter-spacing:-.03em}
.nav-panel-lead p{max-width:62ch;margin:.35rem 0 0;color:#c4cfcc;font-size:.74rem}
.nav-panel-lead>a{align-self:stretch;display:flex;align-items:center;gap:.6rem;padding:0 1rem;border-left:1px solid rgba(255,255,255,.22);color:#f4b48d;font-size:.74rem;font-weight:850;text-decoration:none;white-space:nowrap}
.nav-panel-lead>a span{font-size:1.1rem;transition:transform .16s ease}.nav-panel-lead>a:hover{color:#fff}.nav-panel-lead>a:hover span{transform:translateX(4px)}
.cost-compass-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#cbd0c6}
.cost-route{position:relative;min-width:0;padding:1.2rem 1.35rem 1.35rem;background:var(--paper)}
.cost-route::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--copper)}
.cost-route-own{background:#f1f0e7}.cost-route-own::after{background:var(--sage)}
.cost-route-decide{background:#f8ede4}.cost-route-decide::after{background:var(--ink)}
.cost-route-head{display:grid;grid-template-columns:58px 1fr;gap:.8rem;align-items:center;min-height:70px;margin-bottom:.75rem}
.cost-route-head svg{width:58px;height:52px;fill:none;stroke:var(--ink);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cost-route-head .icon-accent{stroke:var(--copper);stroke-width:2.3}
.cost-route h2{font:700 1.03rem/1.12 var(--serif);letter-spacing:-.02em}
.cost-route p{margin:.25rem 0 0;color:var(--muted);font-size:.66rem;line-height:1.4}
.cost-route>a{position:relative;display:block;padding:.55rem 1.4rem .55rem 0;border-top:1px solid #d4d7cf;color:var(--text);font-size:.74rem;font-weight:800;text-decoration:none}
.cost-route>a::after{content:"";position:absolute;right:.15rem;top:50%;width:9px;height:9px;border-top:2px solid var(--sage);border-right:2px solid var(--sage);transform:translateY(-50%) rotate(45deg);transition:right .16s ease,border-color .16s ease}
.cost-route>a:hover{color:var(--copper-dark)}.cost-route>a:hover::after{right:0;border-color:var(--copper)}
.nav-method-strip{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.75rem 1.5rem;background:var(--cream);color:var(--muted);font-size:.68rem}
.nav-method-strip svg{width:54px;height:24px;fill:none;stroke:var(--copper);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-method-strip a{font-weight:850;text-decoration:none}
.topic-map-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#cbd0c6}
.topic-route{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:.75rem;align-items:center;min-height:92px;padding:.9rem 1rem;background:var(--paper)}
.topic-route:nth-child(3n+2),.topic-route:nth-child(3n+3){background:#f3f2ea}
.topic-route::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent}
.topic-route:hover::before{background:var(--copper)}
.topic-route svg{width:44px;height:44px;fill:none;stroke:var(--sage);stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.topic-route .icon-accent{stroke:var(--copper-dark);stroke-width:2.2}
.topic-route a{color:var(--ink);text-decoration:none}.topic-route a:hover{color:var(--copper-dark);text-decoration:underline;text-decoration-color:var(--copper)}
.topic-route strong,.topic-route small{display:block}.topic-route strong{font:700 .88rem/1.12 var(--serif)}.topic-route small{margin-top:.24rem;color:var(--muted);font-size:.61rem;line-height:1.35}
.nav-evidence-strip{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.8rem 1.5rem;background:var(--cream);color:var(--muted);font-size:.68rem}.nav-evidence-strip a{font-weight:850;text-decoration:none;white-space:nowrap}
.search-link{position:relative;background:var(--paper);border:1px solid #bfc7bc;border-left:4px solid var(--sage);transition:background .16s ease,color .16s ease}.search-link:hover{background:var(--ink);color:#fff}
.menu-button{border-width:2px;background:var(--paper)}
.menu-mark{border-left:4px solid var(--copper)}
.mobile-menu::before{transform:rotate(12deg)}
.hub-evidence{padding-bottom:clamp(3rem,6vw,6rem)}
.hub-evidence .section-heading{width:100%}
.hub-evidence tbody th{color:var(--ink);font-weight:850}
.hub-editorial{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,6vw,6rem);padding:0 0 clamp(4rem,8vw,7rem)}
.hub-editorial>section{padding-top:1.4rem;border-top:3px solid var(--ink)}.hub-editorial>section:nth-child(even){border-top-color:var(--copper)}
.hub-editorial h2{font-size:clamp(1.7rem,3vw,2.5rem)}.hub-editorial p{font-size:1rem}
@media(max-width:720px){.hub-editorial{grid-template-columns:1fr}}

/* Tool workbenches: each diagram explains the model before the first input. */
.tool-instrument{display:grid;grid-template-columns:minmax(0,.85fr) minmax(260px,.65fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,4rem);align-items:center;padding-block:clamp(2rem,5vw,4.5rem);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.instrument-copy h2{font-size:clamp(1.65rem,3vw,2.6rem)}.instrument-copy p{font-size:.94rem}
.instrument-graphic{align-self:stretch;display:grid;place-items:center;min-height:180px;background:var(--cream);border-left:5px solid var(--copper)}
.instrument-graphic svg{width:min(100%,360px);height:auto;padding:1rem;fill:none;stroke:var(--ink-2);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.instrument-steps{margin:0;padding:0;list-style:none}.instrument-steps li{display:flex;gap:.8rem;align-items:flex-start;padding:.8rem 0;border-top:1px solid var(--line);color:var(--text);font-size:.82rem;font-weight:750}
.instrument-steps svg{width:42px;flex:0 0 42px;fill:none;stroke:var(--copper);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.result-source{padding-top:1rem;border-top:1px solid rgba(255,255,255,.2);color:#b8c8c5;font-size:.72rem}

/* The model determines the composition. These are twenty separate workbench identities. */
.instrument-true-apr{grid-template-columns:minmax(0,1fr) minmax(320px,.85fr)}.instrument-true-apr .instrument-steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}.instrument-true-apr .instrument-steps li{border-top:3px solid var(--copper);padding-right:1rem}
.instrument-loan-total-cost{background:var(--ink);padding-inline:clamp(1.5rem,4vw,3rem);border:0}.instrument-loan-total-cost h2{color:var(--cream)}.instrument-loan-total-cost p,.instrument-loan-total-cost li{color:#c7d2cf}.instrument-loan-total-cost .instrument-graphic{background:#173d42}.instrument-loan-total-cost .instrument-steps li{border-color:rgba(255,255,255,.2)}
.instrument-loan-comparison .instrument-graphic{order:-1;border-left:0;border-bottom:5px solid var(--copper)}
.instrument-car-ownership-cost{grid-template-columns:minmax(0,.7fr) minmax(360px,1.1fr)}.instrument-car-ownership-cost .instrument-graphic{grid-row:1/3;grid-column:2}.instrument-car-ownership-cost .instrument-steps{grid-column:1}
.instrument-homeownership-cost{grid-template-columns:1fr 1fr}.instrument-homeownership-cost .instrument-copy{align-self:end}.instrument-homeownership-cost .instrument-steps{display:grid;grid-template-columns:repeat(3,1fr);grid-column:1/-1}
.instrument-refinance-break-even .instrument-graphic{border-left:0;border-top:5px solid var(--copper)}.instrument-refinance-break-even .instrument-steps li:nth-child(2){margin-left:1.4rem}.instrument-refinance-break-even .instrument-steps li:nth-child(3){margin-left:2.8rem}
.instrument-credit-card-payoff{grid-template-columns:minmax(300px,.8fr) 1fr}.instrument-credit-card-payoff .instrument-copy{grid-column:1/-1}.instrument-credit-card-payoff .instrument-graphic{border-left:0;border-right:5px solid var(--copper)}
.instrument-balance-transfer{background:linear-gradient(90deg,var(--paper) 0 49%,var(--cream) 49% 100%);padding-inline:clamp(1rem,3vw,2.5rem)}.instrument-balance-transfer .instrument-graphic{background:var(--paper);border-left:0;border-right:5px solid var(--copper)}
.instrument-lease-vs-buy .instrument-copy{grid-column:1/-1}.instrument-lease-vs-buy{grid-template-columns:1fr 1fr}.instrument-lease-vs-buy .instrument-graphic{border-left:0;border-top:5px solid var(--copper)}
.instrument-repair-vs-replace{grid-template-columns:1fr minmax(350px,1.1fr)}.instrument-repair-vs-replace .instrument-steps{grid-column:1/-1;display:flex;gap:2rem}.instrument-repair-vs-replace .instrument-steps li{flex:1}
.instrument-loan-early-payoff .instrument-graphic{order:3;border-left:0;border-bottom:5px solid var(--copper)}
.instrument-debt-avalanche-snowball{background:var(--cream);padding-inline:clamp(1rem,4vw,3rem)}.instrument-debt-avalanche-snowball .instrument-graphic{background:var(--paper);border-left:5px solid var(--sage)}
.instrument-mortgage-points{grid-template-columns:minmax(0,1fr) minmax(390px,1.2fr)}.instrument-mortgage-points .instrument-steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}
.instrument-auto-loan-equity .instrument-graphic{grid-column:2/4;grid-row:1}.instrument-auto-loan-equity .instrument-steps{grid-column:2/4}
.instrument-car-depreciation{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr)}.instrument-car-depreciation .instrument-copy{grid-column:2}.instrument-car-depreciation .instrument-graphic{grid-column:1;grid-row:1/3;border-left:0;border-right:5px solid var(--copper)}.instrument-car-depreciation .instrument-steps{grid-column:2}
.instrument-fuel-cost-comparison .instrument-copy{grid-column:1/-1}.instrument-fuel-cost-comparison{grid-template-columns:1fr 1fr}.instrument-fuel-cost-comparison .instrument-graphic{border-left:0;border-top:5px solid var(--sage)}
.instrument-home-maintenance-reserve{grid-template-columns:minmax(0,.7fr) minmax(360px,1fr)}.instrument-home-maintenance-reserve .instrument-steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}
.instrument-rent-vs-buy{background:linear-gradient(90deg,var(--cream) 0 50%,var(--paper) 50% 100%);padding-inline:clamp(1rem,4vw,3rem)}.instrument-rent-vs-buy .instrument-graphic{border-left:0;border-bottom:5px solid var(--copper)}
.instrument-appliance-energy{grid-template-columns:minmax(330px,1fr) minmax(0,.75fr)}.instrument-appliance-energy .instrument-graphic{grid-row:1/3;grid-column:1;border-left:0;border-right:5px solid var(--sage)}.instrument-appliance-energy .instrument-copy,.instrument-appliance-energy .instrument-steps{grid-column:2}
.instrument-subscription-cost .instrument-graphic{grid-column:2/4}.instrument-subscription-cost .instrument-steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}

/* Calculator-specific input and result arrangements. */
.calculator-tool-true-apr{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);border-top:6px solid var(--copper)}
.calculator-tool-loan-total-cost{grid-template-columns:1fr}.calculator-tool-loan-total-cost .calculator-form{grid-template-columns:repeat(5,minmax(0,1fr))}.calculator-tool-loan-total-cost .calculator-result{display:grid;grid-template-columns:.65fr 1.35fr;gap:0 2rem}.calculator-tool-loan-total-cost .calculator-result>h2,.calculator-tool-loan-total-cost .result-note,.calculator-tool-loan-total-cost .result-source,.calculator-tool-loan-total-cost .print-button{grid-column:1/-1}
.calculator-tool-loan-comparison .calculator-result{order:-1;border-right:6px solid var(--copper)}
.calculator-tool-car-ownership-cost{grid-template-columns:minmax(360px,.7fr) minmax(0,1.3fr)}.calculator-tool-car-ownership-cost .calculator-form{order:2}.calculator-tool-car-ownership-cost .result-grid{grid-template-columns:1fr}
.calculator-tool-homeownership-cost{grid-template-columns:1fr}.calculator-tool-homeownership-cost .calculator-form{grid-template-columns:repeat(3,minmax(0,1fr))}.calculator-tool-homeownership-cost .calculator-result{display:grid;grid-template-columns:.8fr 1.2fr;gap:0 2rem}.calculator-tool-homeownership-cost .calculator-result>h2,.calculator-tool-homeownership-cost .result-note,.calculator-tool-homeownership-cost .result-source,.calculator-tool-homeownership-cost .print-button{grid-column:1/-1}
.calculator-tool-refinance-break-even{border-top:8px solid var(--copper)}.calculator-tool-refinance-break-even .result-grid{grid-template-columns:1fr}
.calculator-tool-credit-card-payoff{grid-template-columns:minmax(300px,.7fr) minmax(0,1.3fr)}.calculator-tool-credit-card-payoff .calculator-result{border-left:8px solid var(--copper)}
.calculator-tool-balance-transfer{grid-template-columns:1fr}.calculator-tool-balance-transfer .calculator-form{grid-template-columns:repeat(4,minmax(0,1fr))}.calculator-tool-balance-transfer .calculator-result{border-top:8px solid var(--copper)}
.calculator-tool-lease-vs-buy{grid-template-columns:1fr}.calculator-tool-lease-vs-buy .calculator-result{display:grid;grid-template-columns:.8fr 1.2fr;gap:0 2rem}.calculator-tool-lease-vs-buy .calculator-result>h2,.calculator-tool-lease-vs-buy .result-note,.calculator-tool-lease-vs-buy .result-source,.calculator-tool-lease-vs-buy .print-button{grid-column:1/-1}
.calculator-tool-repair-vs-replace{grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr)}.calculator-tool-repair-vs-replace .calculator-result{background:#f0e3d5;color:var(--ink)}.calculator-tool-repair-vs-replace .calculator-result h2,.calculator-tool-repair-vs-replace .result-primary strong{color:var(--ink)}.calculator-tool-repair-vs-replace .result-grid>div{background:#f0e3d5}.calculator-tool-repair-vs-replace .result-source{color:var(--muted);border-color:#c9b5a4}
.calculator-tool-loan-early-payoff .calculator-result{order:-1}.calculator-tool-loan-early-payoff{border-left:8px solid var(--copper)}
.calculator-tool-debt-avalanche-snowball{grid-template-columns:1fr}.calculator-tool-debt-avalanche-snowball .calculator-result{display:grid;grid-template-columns:.6fr 1.4fr;gap:0 2rem}.calculator-tool-debt-avalanche-snowball .calculator-result>h2,.calculator-tool-debt-avalanche-snowball .result-note,.calculator-tool-debt-avalanche-snowball .result-source,.calculator-tool-debt-avalanche-snowball .print-button{grid-column:1/-1}
.calculator-tool-mortgage-points{grid-template-columns:minmax(0,.8fr) minmax(380px,1.2fr)}.calculator-tool-mortgage-points .calculator-result{border-top:8px solid var(--copper)}
.calculator-tool-auto-loan-equity .calculator-result{background:#173d42}.calculator-tool-auto-loan-equity{border-bottom:8px solid var(--sage)}
.calculator-tool-car-depreciation{grid-template-columns:1fr}.calculator-tool-car-depreciation .calculator-form{grid-template-columns:repeat(5,minmax(0,1fr))}.calculator-tool-car-depreciation .result-grid{grid-template-columns:repeat(4,1fr)}
.calculator-tool-fuel-cost-comparison{grid-template-columns:1fr}.calculator-tool-fuel-cost-comparison .calculator-form{grid-template-columns:repeat(5,minmax(0,1fr))}.calculator-tool-fuel-cost-comparison .calculator-result{border-left:8px solid var(--sage)}
.calculator-tool-home-maintenance-reserve{border-top:8px solid var(--sage)}.calculator-tool-home-maintenance-reserve .result-grid{grid-template-columns:1fr}
.calculator-tool-rent-vs-buy{grid-template-columns:minmax(0,1.35fr) minmax(350px,.65fr)}.calculator-tool-rent-vs-buy .result-grid{grid-template-columns:1fr}
.calculator-tool-appliance-energy{grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr)}.calculator-tool-appliance-energy .calculator-form{order:2}.calculator-tool-appliance-energy .calculator-result{border-right:8px solid var(--sage)}
.calculator-tool-subscription-cost{grid-template-columns:1fr}.calculator-tool-subscription-cost .calculator-form{grid-template-columns:repeat(3,minmax(0,1fr))}.calculator-tool-subscription-cost .calculator-result{border-top:8px solid var(--copper)}

@media(max-width:980px){
  .tool-instrument,.instrument-true-apr,.instrument-car-ownership-cost,.instrument-homeownership-cost,.instrument-credit-card-payoff,.instrument-lease-vs-buy,.instrument-repair-vs-replace,.instrument-mortgage-points,.instrument-car-depreciation,.instrument-fuel-cost-comparison,.instrument-home-maintenance-reserve,.instrument-appliance-energy{grid-template-columns:1fr 1fr}
  .tool-instrument .instrument-copy{grid-column:1/-1}.tool-instrument .instrument-graphic,.tool-instrument .instrument-steps{grid-column:auto;grid-row:auto;order:initial}
  .calculator-tool-loan-total-cost .calculator-form,.calculator-tool-homeownership-cost .calculator-form,.calculator-tool-balance-transfer .calculator-form,.calculator-tool-car-depreciation .calculator-form,.calculator-tool-fuel-cost-comparison .calculator-form,.calculator-tool-subscription-cost .calculator-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calculator-shell[class*="calculator-tool-"]{grid-template-columns:1fr}
  .calculator-shell[class*="calculator-tool-"] .calculator-form,.calculator-shell[class*="calculator-tool-"] .calculator-result{order:initial}
}
@media(max-width:720px){
  .tool-instrument,.instrument-true-apr,.instrument-car-ownership-cost,.instrument-homeownership-cost,.instrument-credit-card-payoff,.instrument-lease-vs-buy,.instrument-repair-vs-replace,.instrument-mortgage-points,.instrument-car-depreciation,.instrument-fuel-cost-comparison,.instrument-home-maintenance-reserve,.instrument-appliance-energy{grid-template-columns:1fr}
  .tool-instrument .instrument-copy,.tool-instrument .instrument-graphic,.tool-instrument .instrument-steps{grid-column:1;grid-row:auto}
  .tool-instrument .instrument-steps{display:block}.instrument-graphic{min-height:150px}
  .calculator-tool-loan-total-cost .calculator-form,.calculator-tool-homeownership-cost .calculator-form,.calculator-tool-balance-transfer .calculator-form,.calculator-tool-car-depreciation .calculator-form,.calculator-tool-fuel-cost-comparison .calculator-form,.calculator-tool-subscription-cost .calculator-form{grid-template-columns:1fr}
  .calculator-result[class]{display:block}.calculator-tool-car-depreciation .result-grid{grid-template-columns:1fr 1fr}
}

/* Full-width heading contract: heading copy matches the panel or table below it. */
.section-heading,.section-heading.split,.section-heading.split>div,.section-heading h1,.section-heading h2,.section-heading h3,.section-heading p,
.simple-hero,.simple-hero>h1,.simple-hero>p,.article-header>h1,.article-header>.standfirst,
.amortization-section>.section-heading,.hub-evidence>.section-heading,.directory-intro>h2,.directory-intro>.contextual-bridge,
.tool-explainer>h2,.tool-explainer>p,.tool-explainer>.formula,.tool-explainer>.contextual-bridge,.tool-explainer>.source-box,.glossary-term p{
  width:100%;max-width:none
}
.section-heading.split{display:block}
.section-heading.split>a{display:inline-block;margin-top:1rem}
.ownership-ledger{margin-inline:0}

/* Site-wide hero layout contract. The home hero can use the wide canvas, while
   editorial heroes stay aligned with the content they introduce. */
.hero-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  width:min(calc(100% - 64px),var(--hero-content));
  margin-inline:auto;
  padding-block:clamp(5rem,8vw,7.5rem)
}
.hero-copy{grid-column:1/span 10;min-width:0}
.hero h1{
  max-width:none;
  font-size:clamp(3.25rem,6.25vw,6.5rem);
  text-wrap:wrap;
  text-wrap:pretty;
  overflow-wrap:normal
}
.hero-copy>p{max-width:none}
.page-hero{
  grid-template-columns:minmax(0,1fr) minmax(280px,.38fr);
  gap:clamp(2rem,4vw,4rem)
}
.tool-hero{
  grid-template-columns:minmax(0,1fr) minmax(280px,.4fr);
  gap:clamp(2rem,4vw,4rem)
}
.page-hero h1,.tool-hero h1,.article-header h1,.simple-hero h1{
  max-width:none;
  text-wrap:wrap;
  text-wrap:pretty;
  overflow-wrap:normal
}
.page-hero>div,.tool-hero>div{min-width:0;width:100%}
.page-hero img,.tool-hero-image{width:100%;min-width:0}

@media(max-width:1080px){
  .hero-grid{width:min(calc(100% - 40px),var(--hero-content));grid-template-columns:1fr}
  .hero-copy{grid-column:1;width:100%}
  .hero h1{font-size:clamp(3.1rem,7.5vw,5rem)}
  .page-hero,.tool-hero{grid-template-columns:1fr;gap:2rem;padding-block:3.5rem}
  .page-hero img,.tool-hero-image{order:0;width:100%;max-width:none;max-height:440px;aspect-ratio:16/7;object-fit:cover}
}

@media(max-width:720px){
  .hero{min-height:clamp(560px,calc(100svh - var(--nav-height)),680px)}
  .hero-grid{width:min(calc(100% - 32px),var(--hero-content));padding-block:3rem}
  .hero h1{font-size:clamp(2.45rem,11.2vw,3.75rem);line-height:1}
  .hero-copy>p{font-size:1rem}
  .page-hero,.tool-hero{gap:1.5rem;padding-block:2.75rem}
  .page-hero img,.tool-hero-image{order:-1;max-height:360px;aspect-ratio:3/2}
  .page-hero h1,.tool-hero h1,.article-header h1,.simple-hero h1{
    font-size:clamp(2.25rem,10vw,3rem);
    line-height:1.02
  }
  .simple-hero{padding-block:3rem 2.25rem}
}
