@font-face{font-family:NF Figtree;src:url('assets/figtree-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:NF Figtree;src:url('assets/figtree-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:NF Playfair;src:url('assets/playfair-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:NF Mono;src:url('assets/dm-mono-400.woff2') format('woff2');font-weight:400;font-display:swap}
.pathways button.destination{width:100%;font:inherit;text-align:left;color:inherit;cursor:pointer}
body.calculator-open{overflow:hidden}
.calc-dialog{--calc-dark:#292c40;--calc-cream:#f6f2ec;--calc-green:#c2d22e;--calc-mid:#626778;--calc-line:#292c4026;width:min(1120px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 48px);padding:0;border:0;border-radius:20px;background:#fff;color:var(--calc-dark);font:400 16px/1.5 'NF Figtree',Arial,sans-serif;box-shadow:0 24px 120px #0006;overscroll-behavior:contain;scroll-padding-top:120px}
.calc-dialog::backdrop{background:#030603cc;backdrop-filter:blur(8px)}
.calc-dialog [hidden]{display:none!important}
.calc-dialog button,.calc-dialog select,.calc-dialog input{font:inherit}
.calc-dialog button{cursor:pointer}
.calc-dialog :is(button,a,input,select,summary):focus-visible{outline:2px solid #738216;outline-offset:3px}
.calc-toolbar{position:sticky;top:0;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:25px 32px 18px;background:#fff;box-shadow:0 1px 0 #292c4012}
.calc-dialog h2{font:400 30px/1.2 'NF Playfair',Georgia,serif;letter-spacing:-.7px;margin:0;color:var(--calc-dark)}
.calc-toolbar p{font-size:15px;color:var(--calc-mid);margin:8px 0 0}
.calc-close{display:grid;place-items:center;flex:none;width:44px;height:44px;border:1px solid var(--calc-line);background:var(--calc-cream);color:var(--calc-dark);border-radius:50%}
.calc-close svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.calc-close:hover{background:#ede8df}
.calc-content{padding:24px 32px 22px}
.calc-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:24px}
.calc-tabs button{padding:11px 17px;min-height:44px;border:1px solid var(--calc-line);border-radius:7px;background:white;color:var(--calc-mid);font-size:14px;transition:background .18s,color .18s}
.calc-tabs button[aria-selected=true]{background:var(--calc-dark);border-color:var(--calc-dark);color:white}
.calc-tabs button:hover{border-color:var(--calc-dark)}
.calc-panel{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.calc-form,.calc-result{min-width:0;padding:28px;border-radius:12px}
.calc-form{background:var(--calc-cream);border:1px solid var(--calc-line)}
.calc-form-heading{display:flex;align-items:baseline;gap:12px;justify-content:space-between;padding-bottom:17px;margin-bottom:23px;border-bottom:1px solid var(--calc-line)}
.calc-dialog h3{font:400 20px/1.35 'NF Playfair',Georgia,serif;color:var(--calc-dark);margin:0}
.calc-example{min-height:40px;padding:4px 0;background:none;border:0;color:#4b5620;font-size:13px!important;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.calc-field{margin-bottom:18px}
.calc-field label{display:block;font-size:14px;line-height:1.4;margin-bottom:8px;font-weight:600}
.calc-field :is(input,select){width:100%;min-width:0;min-height:48px;padding:11px 13px;background:#fff;border:1px solid #c9c9ce;border-radius:8px;color:var(--calc-dark);font-size:16px}
.calc-field input{font-family:'NF Mono',monospace}
.calc-field input::placeholder{color:#767a86;font-family:'NF Figtree',Arial,sans-serif;font-size:15px}
.calc-field input[readonly]{background:#eae7df;color:#4d5631}
.calc-field [aria-invalid=true]{border-color:#ae3d28}
.calc-field small{display:block;margin-top:7px;color:var(--calc-mid);font-size:13px;line-height:1.5}
.calc-note{font-size:13px;line-height:1.65;color:var(--calc-mid);margin:16px 0}
.calc-type{padding:0;border:0;margin:0 0 21px;display:flex;gap:8px;flex-wrap:wrap}
.calc-type legend{font-size:14px;font-weight:600;margin-bottom:9px}
.calc-type label{position:relative;cursor:pointer}
.calc-type input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.calc-type span{display:block;min-height:44px;padding:10px 22px;background:#ede8df;border:1px solid var(--calc-line);border-radius:7px;font-size:14px}
.calc-type input:checked+span{background:var(--calc-dark);color:#fff}
.calc-type input:focus-visible+span{outline:2px solid #738216;outline-offset:3px}
.calc-checkbox{display:flex;align-items:center;gap:9px;min-height:44px;font-size:14px;cursor:pointer;margin:0 0 8px}
.calc-checkbox input{accent-color:#78851c;width:19px;height:19px;margin:0}
.calc-form-actions{display:flex;align-items:center;gap:14px;margin-top:23px}
.calc-submit{min-height:46px;padding:11px 21px;border:0;border-radius:8px;background:var(--calc-dark);color:#fff;font-weight:600!important;font-size:14px!important}
.calc-submit:hover{background:#41455f}
.calc-clear{min-height:44px;padding:10px;background:none;border:0;color:var(--calc-mid);font-size:14px!important;text-decoration:underline;text-underline-offset:3px}
.calc-error{font-size:14px;line-height:1.5;color:#9b3020;margin:16px 0 0}
.calc-result{position:sticky;top:120px;background:var(--calc-dark);color:#fff}
.calc-result h3{color:white;padding-bottom:17px;margin-bottom:23px;border-bottom:1px solid #ffffff26}
.calc-result-label{font-size:14px;color:#e2e4ee;margin:0 0 7px}
.calc-value{display:block;font:400 clamp(28px,3.2vw,42px)/1.2 'NF Playfair',Georgia,serif;color:var(--calc-green);letter-spacing:-1px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.calc-result[data-tone=warning] .calc-value{color:#ffaf95}
.calc-result-sub{font-size:14px;color:#d0d3e0;line-height:1.6;margin:12px 0 21px}
.calc-breakdown{padding-top:18px;border-top:1px solid #ffffff26;margin:0 0 21px}
.calc-breakdown:empty{display:none}
.calc-breakdown>div{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:13px}
.calc-breakdown dt{font-size:14px;color:#d0d3e0}
.calc-breakdown dd{margin:0;text-align:right;font:400 14px/1.6 'NF Mono',monospace;overflow-wrap:anywhere;max-width:65%}
.calc-breakdown [data-tone=warning] dd{color:#ffaf95}
.calc-insight{padding:14px 16px;border-left:3px solid var(--calc-green);border-radius:0 8px 8px 0;background:#c2d22e0f;font-size:14px;line-height:1.7;color:#e0e3ee;margin:0 0 18px}
.calc-result[data-tone=warning] .calc-insight{border-color:#ffaf95}
.calc-formula{color:#dee1ed;font-size:14px;margin:20px 0}
.calc-formula summary{cursor:pointer;min-height:32px;text-underline-offset:3px}
.calc-formula p{font-size:14px;line-height:1.7;color:#d0d3e0;margin:10px 0}
.calc-contact{display:flex;justify-content:center;align-items:center;min-height:48px;padding:12px 15px;border-radius:8px;background:var(--calc-green);color:#272e0f;font-size:14px;font-weight:600;text-align:center}
.calc-contact:hover{background:#d4e13f}
.calc-source{margin:21px 0 0;font-size:13px;line-height:1.6;color:var(--calc-mid)}
.calc-source a{text-decoration:underline;text-underline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.calc-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:15px;scroll-padding-top:125px}.calc-toolbar{padding:20px 18px 16px;gap:12px}.calc-dialog h2{font-size:25px;max-width:230px}.calc-toolbar p{font-size:14px;line-height:1.5;max-width:245px}.calc-content{padding:20px 15px}.calc-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}.calc-tabs button{padding:10px 9px;font-size:13px;min-height:48px;line-height:1.4}.calc-panel{grid-template-columns:minmax(0,1fr);gap:17px}.calc-form,.calc-result{padding:21px 18px}.calc-form-heading{gap:8px;flex-wrap:wrap;margin-bottom:19px;padding-bottom:12px}.calc-dialog h3{font-size:20px}.calc-result{position:static}.calc-value{font-size:36px}.calc-breakdown>div{gap:16px}.calc-source{font-size:12px}}
@media(prefers-reduced-motion:reduce){.calc-dialog *{scroll-behavior:auto;transition:none}}
