@import url('/assets/print.css') print;
:root{--ink:#172c35;--navy:#0d232c;--dark:#102b35;--teal:#7de0c5;--green:#006954;--paper:#f5f5ef;--white:#fff;--muted:#51676e;--line:#d5ded8;--orange:#b45127;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}a{color:inherit;text-underline-offset:4px}a,button,input,select,summary{-webkit-tap-highlight-color:transparent}a:hover{color:var(--green)}button,input,select{font:inherit}button,summary{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #d78039;outline-offset:5px}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:650;line-height:1.1;letter-spacing:-.045em}h1{font-size:clamp(2.8rem,5.1vw,5.1rem)}h2{font-size:clamp(2rem,3.4vw,3rem)}h3{font-size:1.45rem;line-height:1.22}p{margin-bottom:1.2rem}img,svg{max-width:100%}.wrap{max-width:1224px;margin:auto;padding:0 40px}.skip{position:absolute;left:20px;top:-100px;z-index:100;background:var(--teal);padding:12px}.skip:focus{top:10px}
.header{position:sticky;top:0;z-index:30;background:#f5f5eff5;border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.header-row{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;line-height:1.15;flex-shrink:0}.brand-mark{width:40px;height:40px;display:grid;place-items:center;background:var(--green);color:#fff;font:600 14px var(--mono);border-radius:50% 50% 4px 50%;letter-spacing:-1px}.brand-name{font-size:15px;font-weight:800;letter-spacing:.01em}.brand-name small{display:block;font:11px/1.4 var(--mono);letter-spacing:.12em;font-weight:400;color:var(--muted)}nav{display:flex;align-items:center;gap:27px}nav a{font-size:13px;font-weight:600;text-decoration:none;padding:9px 0}nav a[aria-current=page]{color:var(--green);box-shadow:0 2px var(--green)}nav a.nav-tool{background:var(--navy);color:#fff;padding:10px 15px;border-radius:4px}nav a.nav-tool:hover{background:var(--green)}.menu-button{display:none;background:transparent;border:1px solid var(--line);padding:8px 12px;border-radius:3px}.eyebrow{font:500 11px/1.5 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--green);margin-bottom:20px}.dark .eyebrow{color:var(--teal)}.hero{background:var(--navy);color:var(--paper);padding:72px 0 0;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:66px;align-items:center}.hero h1{margin-bottom:25px;max-width:650px}.hero h1 em{font-style:normal;color:var(--teal)}.hero .lead{color:#bbccce;max-width:570px;font-size:17px;line-height:1.8}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:29px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:47px;padding:12px 19px;border:1px solid var(--green);border-radius:3px;font-size:13px;font-weight:700;text-decoration:none;background:var(--green);color:#fff}.button:hover{background:#005441;color:#fff}.button:after{content:'';width:11px;height:11px;background:currentColor;clip-path:polygon(0 0,100% 0,100% 100%,84% 100%,84% 28%,12% 100%,0 88%,72% 16%,0 16%)}.button.secondary{background:transparent;color:var(--ink);border-color:#bac9c1}.dark .button{background:var(--teal);color:var(--navy);border-color:var(--teal)}.dark .button.secondary{background:transparent;color:var(--paper);border-color:#4b626a}.button.download:after{clip-path:polygon(42% 0,58% 0,58% 70%,87% 42%,100% 55%,50% 100%,0 55%,13% 42%,42% 70%)}.inline-link{font-size:13px;font-weight:700;color:var(--green)}.hero-caption{font:11px var(--mono);color:#a9bec2;margin:24px 0 0}.drafting{padding:22px 22px 17px;background:#122e38;border:1px solid #36505a;border-radius:5px;position:relative}.drawing-label{display:flex;justify-content:space-between;color:#a7bdc2;font:10px var(--mono);letter-spacing:.1em}.drafting svg{display:block;width:100%;margin:8px 0 12px}.drawing-foot{border-top:1px solid #36505a;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;font:10px var(--mono);color:#b9cccd}.drawing-foot span:first-child{color:var(--teal)}.hero-strip{margin-top:68px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #36505a}.hero-strip div{padding:23px 0;font:11px var(--mono);letter-spacing:.02em;color:#c4d0d0}.hero-strip div+div{border-left:1px solid #36505a;padding-left:35px}.hero-strip strong{font:600 17px var(--sans);display:block;color:var(--paper);margin-bottom:3px}.section{padding:80px 0}.section.tight{padding-top:0}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-bottom:35px}.section-heading h2{max-width:570px;margin-bottom:0}.section-heading p{max-width:330px;color:var(--muted);font-size:14px;margin-bottom:2px}.section-heading .eyebrow{margin-bottom:13px}.route-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:#fff}.route{position:relative;padding:32px 28px;display:flex;flex-direction:column;align-items:start}.route+.route{border-left:1px solid var(--line)}.route-num{font:11px var(--mono);color:var(--orange);margin-bottom:39px}.route h3{margin-bottom:13px}.route p{color:var(--muted);font-size:14px;flex:1}.route a{margin-top:11px}.route a:after{content:' ↗'}.feature{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.feature-copy{max-width:500px}.feature-copy p{color:var(--muted)}.tool-preview{background:var(--dark);color:var(--paper);padding:32px;border-radius:4px}.tool-preview .eyebrow{color:var(--teal);margin-bottom:23px}.preview-params{display:grid;grid-template-columns:1fr 1fr;gap:16px;border-bottom:1px solid #45616a;padding-bottom:23px;font:11px var(--mono);color:#c1d3d7}.preview-params strong{display:block;font:500 18px var(--sans);color:var(--paper);margin-top:3px}.preview-number{font:500 56px/1 var(--mono);letter-spacing:-.07em;color:var(--teal);margin:26px 0 9px}.preview-sub{font:11px var(--mono);color:#bbccce}.mini-note{font-size:12px;color:var(--muted);margin-top:17px}.band{background:#e4ebe3;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.band-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.band p{color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.tag{border:1px solid #bacbc0;padding:5px 10px;font:10px var(--mono);color:var(--green);border-radius:3px}.footer{padding:43px 0 28px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:flex-start}.footer-links{display:flex;flex-wrap:wrap;gap:21px}.footer-top p{max-width:360px;margin-top:14px}.footer-bottom{border-top:1px solid var(--line);padding-top:19px;margin-top:26px;display:flex;justify-content:space-between;gap:20px;font:10px/1.8 var(--mono)}.page-head{padding:60px 0 43px;border-bottom:1px solid var(--line)}.page-head h1{font-size:clamp(2.7rem,5vw,4.5rem);margin-bottom:19px;max-width:950px}.page-head .lead{color:var(--muted);font-size:17px;max-width:730px}.breadcrumbs{font:11px var(--mono);color:var(--muted);margin-bottom:28px}.breadcrumbs a{text-decoration:none}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:55px}.profile-summary{font-size:21px;line-height:1.7;max-width:620px;letter-spacing:-.02em}.aside-note{background:#e5ece5;border-left:3px solid var(--green);padding:25px}.aside-note p{font-size:14px;color:var(--muted)}.aside-note h3{font-size:18px;letter-spacing:-.02em}.experience-list{border-top:1px solid var(--line)}.experience-row{display:grid;grid-template-columns:1fr 2fr;gap:45px;padding:29px 0;border-bottom:1px solid var(--line)}.experience-row h3{font-size:20px}.experience-row p{font-size:14px;color:var(--muted);margin-bottom:5px}.experience-row .eyebrow{color:var(--orange)}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.work{border-top:3px solid var(--green);padding-top:24px}.work .eyebrow{color:var(--orange)}.work p{font-size:14px;color:var(--muted)}.work h3{font-size:23px}.resume-box{display:flex;justify-content:space-between;gap:35px;align-items:center;background:var(--dark);color:var(--paper);padding:35px;border-radius:4px}.resume-box p{max-width:680px;font-size:13px;color:#bfd0d2;margin-bottom:0}.resume-box h3{margin-bottom:10px}.resume-box .button{flex-shrink:0}.notice{font-size:12px;color:var(--muted);margin:15px 0 0}.calculator-jump{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.calculator-jump a{font:12px var(--mono);padding:8px 13px;border:1px solid var(--line);border-radius:3px;text-decoration:none}.calc-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:35px;align-items:start}.calc-heading{margin-bottom:25px}.calc-heading h2{font-size:32px;margin-bottom:12px}.calc-heading p{color:var(--muted);font-size:14px;max-width:730px}.calc-form{background:#fff;padding:29px;border:1px solid var(--line);border-radius:4px}.form-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:25px}.form-top h3{font-size:16px;letter-spacing:0;margin:0}.form-top select{max-width:190px}.fields>div{min-width:0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:23px 20px}label{display:block;font-size:12px;font-weight:650;margin-bottom:7px}label span{font-weight:400;color:var(--muted)}input,select{min-width:0;padding:11px 13px;width:100%;border:1px solid #b7c9bf;border-radius:3px;background:#fcfdf9;color:var(--ink);font-size:15px;min-height:46px}input:focus,select:focus{border-color:var(--green)}.field-help{font-size:11px;color:var(--muted);margin:6px 0 0}.wide{grid-column:1/-1}.form-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:25px;font-size:11px;color:var(--muted)}.reset{background:transparent;border:0;font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:4px;padding:10px 0}.results{background:var(--dark);color:var(--paper);padding:30px;border-radius:4px}.results .eyebrow{color:var(--teal)}.result-main{border-bottom:1px solid #405b64;padding-bottom:22px;margin-bottom:19px}.result-main output{display:block;font:500 clamp(36px,4vw,55px)/1.3 var(--mono);color:var(--teal);letter-spacing:-.06em}.result-main .result-unit{color:#bdd0d1;font:11px var(--mono);margin-top:3px}.result-main small{color:#a9c0c4;font:10px var(--mono);display:block;margin-top:10px}.result-row{display:flex;justify-content:space-between;gap:20px;margin-bottom:15px;align-items:baseline;font-size:12px;color:#bfced1}.result-row output{font:500 22px var(--mono);color:var(--paper)}.result-row .unit{font:10px var(--mono);color:#bfd0d2}.result-note{border-top:1px solid #405b64;padding-top:17px;margin:22px 0 0;color:#bfd0d2;font-size:12px;line-height:1.7}.result-note.limited{color:#ffd292}.error{color:#a72d18;font-size:13px;margin:20px 0 0;min-height:0}.error:empty{display:none}details{border-bottom:1px solid var(--line);padding:18px 0;font-size:13px}details summary{font-weight:650}details p{color:var(--muted);margin:15px 0 5px}.formula{font:12px/1.9 var(--mono);background:#e8eee7;padding:17px;margin-top:15px}.calc-assumptions{font-size:12px;color:var(--muted);margin-top:22px}.searchbar{display:grid;grid-template-columns:2fr 1fr;gap:22px;margin-bottom:30px;max-width:750px}.resource-meta{display:flex;justify-content:space-between;gap:20px;font:11px var(--mono);color:var(--muted);margin-bottom:15px}.resource-list{border-top:1px solid var(--line)}.resource-row{display:grid;grid-template-columns:160px 1fr 110px;gap:25px;padding:27px 0;border-bottom:1px solid var(--line);align-items:center}.resource-row h3{font-size:21px;margin-bottom:8px}.resource-row p{font-size:13px;color:var(--muted);margin:0}.resource-row .eyebrow{margin-bottom:0;color:var(--orange)}.resource-row a{font-size:12px;font-weight:700;color:var(--green)}[hidden]{display:none!important}.empty{padding:30px;background:#e5ece5}.article-layout{display:grid;grid-template-columns:210px 1fr;gap:65px;align-items:start}.article-nav{position:sticky;top:120px;font-size:12px;border-left:1px solid var(--line);padding-left:18px}.article-nav a{display:block;margin-bottom:13px;color:var(--muted);text-decoration:none}.article-nav a:hover{color:var(--green)}.article-body{max-width:770px}.article-body h2{font-size:29px;margin-top:47px}.article-body h2:first-child{margin-top:0}.article-body h3{font-size:20px;margin-top:30px}.article-body p,.article-body li{font-size:15px;color:var(--muted)}.article-body li{margin-bottom:12px}.article-body ul,.article-body ol{padding-left:22px}.table-wrap{overflow-x:auto;margin:25px 0}table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}td,th{padding:13px 15px;border:1px solid var(--line)}th{background:#e7ede5;font-weight:650}.article-callout{padding:25px;background:#e4ebe3;border-left:3px solid var(--green);margin:28px 0}.article-callout p{margin-bottom:0}.checklist{padding:0!important;list-style:none}.checklist li{padding:12px 0;border-bottom:1px solid var(--line)}.checklist label{font-size:14px;font-weight:400;display:flex;align-items:flex-start;gap:13px;margin:0}.checklist input{min-height:0;width:18px;height:18px;flex-shrink:0;margin:4px 0 0;accent-color:var(--green)}.source-line{margin-top:36px;border-top:1px solid var(--line);padding-top:20px;font-size:12px!important}.article-end{margin-top:45px}.progression{margin-top:30px;font:11px var(--mono);color:var(--muted)}
@media(min-width:1400px){.wrap{max-width:1300px}.hero{padding-top:88px}.hero-grid{gap:85px}}
@media(max-width:1000px){.wrap{padding:0 28px}nav{gap:17px}.hero-grid{gap:30px}.hero h1{font-size:3.7rem}.feature{gap:35px}.section{padding:65px 0}.resource-row{grid-template-columns:120px 1fr 90px}.article-layout{gap:35px;grid-template-columns:165px 1fr}}
@media(max-width:760px){.header-row{min-height:74px}.menu-button{display:block}nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:20px 28px 26px;box-shadow:0 10px 10px #102b3512;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:5px}nav.open{display:flex}nav a{padding:10px 0}nav a[aria-current=page]{box-shadow:none;font-weight:800}.hero{padding-top:45px}.hero-grid{grid-template-columns:1fr;gap:38px}.hero h1{font-size:clamp(2.9rem,10vw,4rem)}.drafting{max-width:500px}.hero-strip{margin-top:40px}.hero-strip div{font-size:10px}.hero-strip div+div{padding-left:15px}.hero-strip strong{font-size:14px}.section-heading{display:block}.section-heading p{max-width:520px;margin-top:20px}.route-grid{grid-template-columns:1fr}.route{padding:25px}.route+.route{border-left:0;border-top:1px solid var(--line)}.route-num{margin-bottom:20px}.feature,.band-inner,.two-col,.calc-layout{grid-template-columns:1fr;gap:30px}.work-grid{grid-template-columns:1fr}.work{padding-top:18px}.experience-row{grid-template-columns:1fr;gap:12px}.resume-box{display:block;padding:26px}.resume-box .button{margin-top:25px}.footer-top{display:block}.footer-links{margin-top:20px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:8px}.page-head{padding:35px 0}.page-head h1{font-size:2.9rem}.page-head .lead{font-size:16px}.resource-row{grid-template-columns:1fr 90px;gap:10px}.resource-row>.eyebrow{grid-column:1/-1}.resource-row h3{font-size:20px}.article-layout{grid-template-columns:1fr;gap:30px}.article-nav{position:static;display:flex;gap:15px;flex-wrap:wrap}.article-nav a{margin-bottom:0}.article-nav .eyebrow{width:100%;margin:0}.searchbar{grid-template-columns:1fr}.calc-form,.results{padding:24px}.section.tight{padding-top:0}.form-top{gap:15px}.form-top select{max-width:155px}.profile-summary{font-size:18px}.hero .lead{font-size:16px}}
@media(max-width:420px){.wrap{padding:0 20px}.header-row{gap:12px}.brand{gap:8px}.brand-mark{width:34px;height:34px;font-size:12px}.menu-button{font-size:13px;padding:8px 10px}.brand-name{font-size:11.5px}.brand-name small{font-size:8px}.hero h1{font-size:2.85rem}.fields{gap:20px 14px}.form-top{display:block}.form-top select{max-width:100%;margin-top:14px}.hero-strip{grid-template-columns:1fr}.hero-strip div+div{border-left:0;padding-left:0;border-top:1px solid #36505a}.hero-strip div{padding:14px 0}.drafting{padding:17px}.preview-number{font-size:47px}.form-bottom{gap:15px}.actions .button{flex:1;min-width:180px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
