:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#102333;background:#f3f5f4;font-synthesis:none;line-height:1.65}
*{box-sizing:border-box}body{margin:0}a{color:#126b79;text-underline-offset:3px}a:hover{color:#034950}button,input{font:inherit}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:.6rem;z-index:10}.skip:focus{left:1rem}
.top{background:#0a2635;color:#fff}.bar{max-width:1120px;margin:auto;padding:1.1rem 1.4rem;display:flex;gap:1.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.brand{font-weight:900;font-size:1.15rem;letter-spacing:-.025em;color:#fff;text-decoration:none}.nav{display:flex;flex-wrap:wrap;gap:1.15rem}.nav a{color:#dff1ed;text-decoration:none;font-weight:600;font-size:.88rem}.nav a:hover{text-decoration:underline;color:#fff}
.wrap{max-width:1120px;margin:auto;padding:0 1.4rem}.hero{padding:5.5rem 0 4.6rem;background:#0a2635;color:#fff}.hero-inner{max-width:820px}.tag{font-size:.72rem;letter-spacing:.15em;font-weight:800;text-transform:uppercase;color:#36cab1}
h1,h2,h3{line-height:1.13;letter-spacing:-.04em}h1{font-size:clamp(2.55rem,6vw,4.5rem);margin:1rem 0}h2{font-size:clamp(1.7rem,3.8vw,2.55rem);margin:0 0 1.1rem}h3{font-size:1.2rem;margin:.3rem 0 .7rem}.hero p{font-size:1.15rem;color:#bed5d7;max-width:720px}
.section{padding:4rem 0}.panel{background:#fff;border:1px solid #dce4e1;border-radius:19px;padding:2rem;box-shadow:0 4px 25px rgba(5,27,32,.035)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.card{background:#fff;border:1px solid #dce4e1;border-radius:16px;padding:1.6rem;display:flex;flex-direction:column;gap:.5rem}.card p{color:#485d64;margin:.3rem 0 1rem}.card a{margin-top:auto;font-weight:750}.eyebrow{font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em;color:#168c82}.lead{font-size:1.18rem;color:#42606a;max-width:750px}.prose{max-width:790px}.prose p,.prose li{color:#39515b;font-size:1.03rem}.prose li{margin:.55rem 0}.prose h2{margin-top:2.3rem}.prose h3{margin-top:1.6rem}.prose strong{color:#123341}
.btn{display:inline-block;background:#1bd2a7;color:#092a32;border:0;padding:.84rem 1.25rem;border-radius:10px;font-weight:800;text-decoration:none}.btn:hover{background:#aff9e3;color:#092a32}.btn.secondary{background:transparent;color:#fff;border:1px solid #6f9c9d}.stack{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.8rem}.note{border-left:4px solid #18b5a3;padding:1rem 1.3rem;background:#eaf8f4;border-radius:0 12px 12px 0;color:#27505a;margin:1.6rem 0}
.tool-layout{display:grid;grid-template-columns:1fr .95fr;gap:1rem;margin:1.8rem 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}label{display:block;font-size:.9rem;font-weight:700;color:#14333c}input{width:100%;display:block;padding:.8rem;border:1px solid #a5b7ba;border-radius:9px;margin-top:.35rem;background:#fff;color:#102333}input:focus{outline:3px solid #9defdc;outline-offset:2px}.result{background:#092c36;border-radius:16px;color:#fff;padding:2rem}.result dl{margin:0}.result dl div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #315660;padding:.9rem 0}.result dt{color:#c6e5e3}.result dd{font-size:1.12rem;font-weight:900;margin:0;text-align:right;color:#bcffea}.legal{color:#57717a;font-size:.86rem}.next-step{border:1px solid #aed9c9;background:#e5f7f1;border-radius:16px;padding:1.5rem;margin:1rem 0 2rem;max-width:790px}.next-step p{font-size:1.05rem;color:#153740}.next-step small{display:block;color:#4b6970;margin-top:.85rem}.footer{background:#102c39;color:#cbdfde;margin-top:3rem;padding:2.4rem 0}.footer a{color:#bbf1df}.footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem}.footer small{max-width:650px}
.espresso{--accent:#eead4d;background:#faf6ee}.espresso .hero,.espresso .top{background:#352820}.espresso .tag{color:#f0bf73}.espresso .btn{background:#e7ac5a}.espresso .btn:hover{background:#fad7a6}.espresso .result{background:#392c27}.espresso .note{background:#fff2d8;border-color:#c88429}.espresso .eyebrow{color:#b66a16}.espresso .footer{background:#302824}
@media(max-width:850px){.grid{grid-template-columns:1fr 1fr}.tool-layout{grid-template-columns:1fr}.hero{padding:3.5rem 0}.section{padding:2.7rem 0}}
@media(max-width:590px){.grid,.grid2,.form-grid{grid-template-columns:1fr}.bar{align-items:flex-start}.nav{gap:.9rem}.panel{padding:1.2rem}h1{font-size:2.45rem}.result dl div{align-items:flex-start;flex-direction:column;gap:.2rem}.result dd{text-align:left}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
/* Estate-inspired information architecture and conversion hierarchy; no cosmetic animation tax. */
.breadcrumbs{padding-top:.9rem;padding-bottom:.9rem;font-size:.84rem;color:#536e78;display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}
.breadcrumbs a{font-weight:700;color:#1c6872}
.editorial .article-section{padding-top:.15rem;border-top:1px solid #dbe7e5;margin-top:2rem}
.editorial .article-section h2{font-size:clamp(1.45rem,2.8vw,2rem);margin-top:1.7rem}
.editorial .article-section p{max-width:75ch}
.editorial .next-step ul{padding-left:1.3rem}.editorial .next-step li{margin:.4rem 0}
.handoff{padding:1.8rem 0;background:#e8f2ef}.handoff-inner{display:flex;align-items:center;gap:2rem;justify-content:space-between}
.handoff-inner h2{font-size:clamp(1.45rem,3vw,2.3rem);margin:.4rem 0}.handoff-inner p{max-width:640px;margin:0;color:#48646d}
.handoff .btn{flex-shrink:0}.espresso .handoff{background:#f3e9d7}
.consent{position:fixed;z-index:50;bottom:1rem;left:1rem;right:1rem;max-width:900px;margin:auto;background:#fff;border:2px solid #3f666c;border-radius:16px;box-shadow:0 8px 35px #172b3260;padding:1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.consent[hidden]{display:none}.consent span{flex:1 1 350px}.consent button{cursor:pointer;border-radius:8px;border:1px solid #48656f;padding:.65rem 1rem;background:#123743;color:#fff}.consent button:last-child{background:#fff;color:#123743}
.footer button{background:none;border:0;padding:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}
:focus-visible{outline:3px solid #eb9438;outline-offset:3px}
@media(max-width:700px){.handoff-inner{flex-direction:column;align-items:flex-start}.handoff .btn{white-space:normal}}
/* Licensed editorial photos are local and responsive, with credits kept next to the work. */
.site-photo{margin:0;max-width:820px}.site-photo img{display:block;width:100%;height:auto;max-height:450px;object-fit:contain;border-radius:16px;background:#eef1f0;box-shadow:0 5px 24px #00000012}
.site-photo figcaption{margin:.7rem 0 0;color:#50666e;font-size:.9rem;line-height:1.45}.site-photo figcaption small{display:block;font-size:.75rem;margin-top:.3rem}
.site-photo figcaption a{color:inherit}.hero-photo{margin-top:2.3rem}.hero-photo figcaption{color:#c3dedd}.espresso .hero-photo figcaption{color:#e1cdb8}
.photo-band{padding:1.6rem 0 0}.photo-band .site-photo{max-width:780px}.photo-band img{max-height:340px;object-position:center}
@media(max-width:590px){.hero-photo{margin-top:1.6rem}.photo-band{padding:1rem 0 0}.site-photo img{max-height:380px}}
/* Flagship planning workspaces: usable, source-honest tools rather than articles alone. */
.flagship-hero-card{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;background:#e3f5ef;border:1px solid #99d9c4;border-radius:20px;padding:1.5rem 2rem;margin:1.6rem 0 2rem}
.flagship-hero-card h3{font-size:clamp(1.45rem,3vw,2rem);margin:.35rem 0}.flagship-hero-card p{margin:.25rem 0;color:#385861;max-width:60ch}.flagship-hero-card .btn{white-space:nowrap}
.espresso .flagship-hero-card{background:#fff0d6;border-color:#e5bf77}
.flagship-section .wrap{max-width:1080px}.planner{display:grid;gap:1.4rem;margin:2.5rem 0}.planner>.panel{min-width:0}
.planner h2{font-size:clamp(1.45rem,3vw,2rem);margin:.45rem 0 1.2rem}.planner h3{letter-spacing:-.025em}.planner p{color:#3f5d63;max-width:76ch}
.planner-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.2rem;margin:1rem 0 1.4rem}
.planner-field{min-width:0;overflow-wrap:anywhere}.planner input,.planner select{min-width:0;max-width:100%;width:100%;padding:.7rem .75rem;border:1px solid #859ba1;border-radius:9px;margin-top:.4rem;background:#fff;color:#142f36}
.planner select{font:inherit;cursor:pointer}.planner button{font:inherit;cursor:pointer}
.planner-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #517b7c;border-radius:10px;background:#f8fffc;color:#0d4149;padding:.55rem .9rem;font-weight:700}.planner-action:hover{background:#d6f4ec}.planner-remove{border:1px solid #caa4a4;background:#fff0ef;color:#8c2c25;border-radius:7px;padding:.45rem .7rem;font-weight:800;min-height:42px;min-width:42px}
.planner-buttons{display:flex;gap:.7rem;flex-wrap:wrap}.planner-buttons .btn,.planner-buttons .planner-action{min-height:44px}
.scroll-table{overflow-x:auto;max-width:100%}.planner-table{border-collapse:collapse;width:100%;min-width:680px;text-align:left}.planner-table th{font-size:.78rem;color:#415a61;text-transform:uppercase;letter-spacing:.04em;padding:.55rem .35rem}.planner-table td{padding:.4rem .35rem;border-top:1px solid #dfeae6}.planner-table td:first-child{min-width:175px}.planner-table td input{margin:0;width:100%;max-width:160px}.planner-table td:first-child input{max-width:100%}
.planner-products{display:grid;gap:1rem}.planner-product{min-width:0;border:1px solid #c8dcd4;border-radius:14px;padding:1.1rem 1.3rem;background:#f8fcfa}.planner-product legend{font-weight:800;color:#1b5052;padding:0 .4rem}
.espresso .planner-product{background:#fffaf1;border-color:#e6d6b9}.planner-product>.planner-action{margin-top:.5rem}
.planner-output{background:#112f39;border:1px solid #234958;color:#ecf8f5;border-radius:18px;padding:1.4rem 1.8rem;min-width:0;overflow-wrap:anywhere}.planner-output h2,.planner-output h3{color:#f6fffc}.planner-output p,.planner-output li{color:#d7eae8}.planner-output p.planner-error,.planner-output li.planner-error{color:#ffc4b1}
.espresso .planner-output{background:#3a2a23;border-color:#6b4c31}.planner-metrics{margin:1rem 0}.planner-metrics>div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #4b6470;padding:.64rem 0}.planner-metrics dt{color:#ccdfde}.planner-metrics dd{color:#bbffe4;text-align:right;font-weight:850;margin:0}.espresso .planner-metrics dd{color:#ffe6b7}
.planner-verdict{border-top:1px solid #70878c;padding:1rem 0}.planner-verdict:first-of-type{margin-top:.6rem}.planner-verdict h3{margin:0 0 .5rem}.planner-verdict li{margin:.5rem 0}.planner-warnings{padding-left:1.2rem}.planner-status{font-weight:750;min-height:1.4rem}.planner-shot-log{padding-left:1.5rem}.planner-shot-log li{border-bottom:1px solid #547077;margin:.7rem 0;padding-bottom:.7rem}.planner-shot-log p{margin:.3rem 0}
@media(max-width:760px){.flagship-hero-card{flex-direction:column;align-items:flex-start;padding:1.35rem}.flagship-hero-card .btn{white-space:normal}.planner-fields{grid-template-columns:1fr}.planner-output{padding:1.1rem}.planner-metrics>div{flex-direction:column;gap:.15rem}.planner-metrics dd{text-align:left}}
@media print{.top,.footer,.consent,.nav,.planner-buttons,.planner-action,.planner-remove,.handoff,.skip{display:none!important}.hero{padding:1rem;color:#111;background:#fff}.hero p{color:#333}body{background:#fff}.planner{display:block}.planner .panel,.planner-output{break-inside:avoid;box-shadow:none;background:#fff;color:#111;border:1px solid #999;margin:1rem 0}.planner-output h2,.planner-output h3,.planner-output p,.planner-output li,.planner-output dt,.planner-output dd{color:#111}}

/* Show the real utility sooner: flagship landing pages are workspaces, not long-form article hero banners. */
.flagship-page .hero{padding:2.1rem 0 2rem}.flagship-page .hero h1{font-size:clamp(2rem,4vw,3.15rem);max-width:950px;margin:.6rem 0}.flagship-page .hero p{font-size:1.03rem;max-width:890px}.flagship-page .section{padding-top:2.2rem}.flagship-page .breadcrumbs{font-size:.79rem}.flagship-page .planner{margin-top:1.3rem}
