:root{--brand-0: #eef5ff;--brand-100: #e0edff;--brand-200: #c7dcfe;--brand-600: #4659e5;--brand-700: #3847ca;--brand-800: #303ea3;--brand-900: #27316d;--grey-0: #f4f6f8;--grey-100: #eaeef1;--grey-200: #dae2e6;--grey-300: #c9d5db;--grey-500: #a3b6c1;--grey-700: #6f8d9e;--grey-800: #4b7186;--grey-900: #1a2930;--c-template: #ef4444;--c-verifier: #ec4899;--c-epd: #10b981;--c-variant: #06b6d4;--c-constraint: #f59e0b;--c-spec: #8b5cf6;--c-destructive: #ed1915;--header-bg: #3b4a7a;--font-body: "Mulish", "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--radius: .5rem;--shadow-300: 0px 4px 8px rgba(55, 68, 115, .06);--shadow-500: 0px 10px 24px rgba(55, 68, 115, .1);--page-max: 1080px}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased}body{margin:0;font-family:var(--font-body);background:var(--grey-0);color:var(--grey-900);font-size:16px;line-height:1.55}h1,h2,h3,h4{font-family:var(--font-body);line-height:1.15;margin:0 0 .5rem;letter-spacing:-.01em}h1{font-size:clamp(2rem,5vw,3.1rem);font-weight:900}h2{font-size:1.75rem;font-weight:800}h3{font-size:1.2rem;font-weight:800}p{margin:0 0 1rem}a{color:var(--brand-600)}.site-header{background:var(--header-bg);color:#fff;position:sticky;top:0;z-index:50}.site-header .inner{max-width:var(--page-max);margin:0 auto;padding:.7rem 1.25rem;display:flex;align-items:center;gap:1.5rem}.wordmark{display:flex;align-items:center;gap:.5rem;color:#fff;text-decoration:none}.wordmark img{display:block;height:32px;width:auto}.wordmark-suffix{font-weight:400;font-size:.82rem;opacity:.8;white-space:nowrap}.site-nav{display:flex;gap:1.1rem;margin-left:auto;align-items:center}.site-nav a{color:#ffffffd1;text-decoration:none;font-size:.9rem;font-weight:600}.site-nav a.active,.site-nav a:hover{color:#fff}.page{max-width:var(--page-max);margin:0 auto;padding:2.5rem 1.25rem 5rem}.site-footer{border-top:1px solid var(--grey-200);padding:2rem 1.25rem 3rem;text-align:center;color:var(--grey-700);font-size:.85rem}.eyebrow{font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-600);margin-bottom:.6rem}.mono{font-family:var(--font-mono)}.card{background:#fff;border:1px solid var(--grey-200);border-radius:var(--radius);box-shadow:var(--shadow-300);padding:1.5rem}.hairline{border:0;border-top:1px dashed var(--grey-300);margin:1.5rem 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-body);font-weight:700;font-size:.95rem;border-radius:var(--radius);padding:.65rem 1.25rem;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:background .15s ease,transform .1s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--brand-600);color:#fff}.btn-primary:hover{background:var(--brand-700)}.btn-primary:disabled{background:var(--grey-300);cursor:not-allowed}.btn-ghost{background:transparent;color:var(--brand-700);border-color:var(--grey-300)}.btn-ghost:hover{background:var(--brand-0)}.btn-lg{padding:.85rem 1.6rem;font-size:1.05rem}.input,.select,.textarea{font-family:var(--font-body);font-size:.95rem;color:var(--grey-900);background:#fff;border:1px solid var(--grey-200);border-radius:var(--radius);padding:.6rem .8rem;width:100%}.input:focus,.select:focus,.textarea:focus{outline:2px solid var(--brand-600);outline-offset:1px;border-color:var(--brand-600)}.field{margin-bottom:1.1rem}.field>label{display:block;font-weight:700;font-size:.9rem;margin-bottom:.35rem}.field .hint{font-size:.82rem;color:var(--grey-700);margin:.3rem 0 0}.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chip{display:inline-flex;align-items:center;gap:.4rem;background:var(--brand-0);border:1px solid var(--brand-200);color:var(--brand-800);border-radius:999px;padding:.3rem .8rem;font-size:.86rem;font-weight:600}.chip button{border:0;background:none;color:var(--brand-700);font-weight:800;cursor:pointer;padding:0;line-height:1}.chip-suggest{background:#fff;border:1px dashed var(--grey-300);color:var(--grey-800);cursor:pointer}.chip-suggest:hover{border-color:var(--brand-600);color:var(--brand-700)}.stepper{display:flex;gap:.35rem;margin-bottom:1.75rem;flex-wrap:wrap}.stepper .step-dot{font-family:var(--font-mono);font-size:.7rem;font-weight:600;padding:.25rem .6rem;border-radius:3px;background:var(--grey-100);color:var(--grey-700);border:1px solid transparent}.stepper .step-dot.done{background:var(--brand-0);color:var(--brand-700)}.stepper .step-dot.current{background:var(--brand-600);color:#fff}.step-head{display:flex;align-items:baseline;gap:.85rem;margin-bottom:.35rem}.step-num{font-family:var(--font-mono);font-weight:600;font-size:1.4rem;color:var(--grey-300)}.step-why{color:var(--grey-700);font-size:.92rem;max-width:60ch}.counters{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem;margin:1.5rem 0}.counter{background:#fff;border:1px solid var(--grey-200);border-radius:var(--radius);padding:1.1rem 1.2rem;border-top:3px solid var(--accent, var(--brand-600))}.counter .n{font-family:var(--font-mono);font-size:2.4rem;font-weight:600;line-height:1}.counter .label{font-size:.8rem;font-weight:700;color:var(--grey-700);margin-top:.4rem;text-transform:uppercase;letter-spacing:.05em}.walk-step{display:grid;grid-template-columns:3.2rem 1fr;gap:1rem;padding:1.4rem 0;border-bottom:1px dashed var(--grey-200)}.walk-step:last-child{border-bottom:0}.walk-num{font-family:var(--font-mono);font-weight:600;font-size:1rem;width:2.6rem;height:2.6rem;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:var(--accent, var(--brand-600))}.hero{padding:3.5rem 0 2.5rem}.hero .lede{font-size:1.15rem;color:var(--grey-800);max-width:62ch}.hero-actions{display:flex;gap:.8rem;margin-top:1.6rem;flex-wrap:wrap}.spin{display:inline-block;width:1em;height:1em;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.notice{background:var(--brand-0);border:1px solid var(--brand-200);border-radius:var(--radius);padding:.8rem 1rem;font-size:.9rem;color:var(--brand-900)}.page-narrow{max-width:860px}.term{display:inline;background:none;border:0;padding:0;font:inherit;color:inherit;cursor:help;border-bottom:1px dashed var(--brand-600);text-align:left}.term-mark{display:inline-block;font-family:var(--font-mono);font-size:.62em;font-weight:800;font-style:normal;text-transform:lowercase;color:#fff;background:var(--brand-600);border-radius:50%;width:1.35em;height:1.35em;line-height:1.35em;text-align:center;margin-left:.3em;vertical-align:super}.term-panel{display:block;margin:.6rem 0;padding:.7rem .9rem;background:var(--brand-0);border-left:3px solid var(--brand-600);border-radius:0 var(--radius) var(--radius) 0;font-size:.88rem;font-weight:400;line-height:1.5;color:var(--grey-900)}.term-examples{display:block;margin-top:.4rem;color:var(--grey-800);font-style:italic}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.optional{display:inline-block;margin-left:.45rem;font-family:var(--font-mono);font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--grey-700);background:var(--grey-100);border-radius:3px;padding:.05rem .35rem;vertical-align:middle}.empty-note{color:var(--grey-500);font-size:.85rem}.radio-cards{display:grid;gap:.5rem}.radio-card{display:flex;gap:.65rem;align-items:flex-start;padding:.7rem .85rem;border:1px solid var(--grey-200);border-radius:var(--radius);background:#fff;cursor:pointer;font-weight:400;transition:border-color .12s ease,background .12s ease}.radio-card:hover{border-color:var(--brand-200)}.radio-card.on{border-color:var(--brand-600);background:var(--brand-0)}.radio-card input{margin-top:.25rem;flex-shrink:0}.rc-label{display:block;font-weight:700}.rc-desc{display:block;font-size:.85rem;color:var(--grey-800);margin-top:.1rem}.checkline{display:flex;gap:.55rem;align-items:flex-start;font-weight:400;padding:.3rem 0}.checkline-standout{margin-top:1rem;padding:.75rem .9rem;border:1px dashed var(--grey-300);border-radius:var(--radius);background:var(--grey-0)}.notice-flag{border-left:3px solid var(--c-constraint);background:#fffbeb}.upload-kinds{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.6rem}.upload-kind{text-align:left;padding:.75rem .9rem;border:1px dashed var(--grey-300);border-radius:var(--radius);background:#fff;cursor:pointer;transition:border-color .12s ease,background .12s ease}.upload-kind:hover:not(:disabled){border-color:var(--brand-600);background:var(--brand-0)}.upload-kind:disabled{opacity:.6;cursor:progress}.uk-label{display:block;font-weight:700;font-size:.92rem}.uk-blurb{display:block;font-size:.8rem;color:var(--grey-700);margin-top:.2rem}.upload-list{list-style:none;margin:.8rem 0 0;padding:0}.upload-list li{display:flex;align-items:center;gap:.6rem;padding:.4rem .6rem;border:1px solid var(--grey-200);border-radius:var(--radius);background:#fff;margin-bottom:.35rem;font-size:.86rem}.upload-list li .mono{flex:1;min-width:0;overflow-wrap:anywhere}.uk-meta{color:var(--grey-500);font-size:.76rem;white-space:nowrap}.upload-list li button{border:0;background:none;color:var(--grey-700);font-size:1.1rem;line-height:1;cursor:pointer;padding:0 .2rem}.pcr-results{list-style:none;margin:.5rem 0 0;padding:0;border:1px solid var(--grey-200);border-radius:var(--radius);overflow:hidden;background:#fff}.pcr-results li+li{border-top:1px solid var(--grey-100)}.pcr-results button{display:flex;gap:.7rem;align-items:baseline;width:100%;text-align:left;border:0;background:none;padding:.55rem .75rem;cursor:pointer;font:inherit}.pcr-results button:hover{background:var(--brand-0)}.pcr-program{font-family:var(--font-mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--brand-700);background:var(--brand-0);border-radius:3px;padding:.1rem .35rem;flex-shrink:0}.pcr-name{font-size:.86rem}.pcr-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-top:.8rem;font-size:.88rem}.pcr-suggestions{margin-top:1rem}.pcr-suggestion{display:flex;gap:1rem;align-items:flex-start;justify-content:space-between;padding:.8rem 0;border-top:1px solid var(--grey-100);flex-wrap:wrap}.pcr-suggestion strong{display:block;font-size:.95rem;margin-top:.25rem}.pcr-suggestion p{margin:.25rem 0 0;font-size:.87rem;color:var(--grey-800)}.conf{display:inline-block;font-family:var(--font-mono);font-size:.64rem;text-transform:uppercase;letter-spacing:.06em;border-radius:3px;padding:.1rem .35rem}.conf-high{background:#d1fae5;color:#065f46}.conf-medium{background:#fef3c7;color:#92400e}.conf-low{background:var(--grey-100);color:var(--grey-800)}.example-picker{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;margin-bottom:.8rem}.example-label{font-size:.85rem;color:var(--grey-700);margin-right:.2rem}.example-panel{background:var(--brand-0);border-left:3px solid var(--brand-600);border-radius:0 var(--radius) var(--radius) 0;padding:.8rem 1rem;margin-bottom:1.2rem;font-size:.88rem}.example-panel p{margin-bottom:.4rem}.sites-diagram{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem;margin-top:1.5rem}.site-card{background:#fff;border:1px solid var(--grey-200);border-radius:var(--radius);padding:.9rem 1rem}.site-name{font-family:var(--font-mono);font-weight:700;font-size:.85rem}.site-card ul{margin:.45rem 0;padding-left:1.1rem;font-size:.88rem}.site-route{display:inline-block;font-size:.76rem;font-weight:700;border-radius:3px;padding:.15rem .45rem;background:#cffafe;color:#155e75}.site-route.alt{background:#fee2e2;color:#991b1b}.sites-caption{grid-column:1 / -1;font-size:.86rem;color:var(--grey-800);margin:0;max-width:68ch}.epd-type{display:inline-flex;align-items:center;gap:.15rem}.date-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0 1rem}.step-nav{display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.step-nav-right{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.form-help{margin-top:1.2rem;font-size:.88rem;color:var(--grey-700)}.cta-block{display:flex;gap:1.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:1.5rem;background:#fff;border:1px solid var(--grey-200);border-top:3px solid var(--brand-600);border-radius:var(--radius);padding:1.4rem 1.5rem;box-shadow:var(--shadow-300)}.cta-block h3{margin-bottom:.3rem}.cta-block p{margin:0;color:var(--grey-800);font-size:.92rem;max-width:52ch}.cta-actions{display:flex;flex-direction:column;gap:.6rem;align-items:flex-start}.cta-alt{font-size:.85rem;color:var(--grey-700);line-height:1.5}.footer-contact{margin-top:.4rem}.footer-contact a{color:var(--brand-200)}@media(max-width:700px){.page{padding:1.5rem 1rem 4rem}.site-header .inner{padding:.6rem 1rem;gap:.75rem;flex-wrap:wrap}.site-nav{gap:.75rem;width:100%;margin-left:0}.site-nav a{font-size:.78rem;white-space:nowrap}.wordmark img{height:26px}.wordmark-suffix{font-size:.75rem}h1{font-size:1.75rem}.stepper{gap:.25rem}.stepper .step-dot{font-size:.65rem;padding:.2rem .4rem}.counter .n{font-size:1.9rem}.cta-actions{align-items:stretch;width:100%}.cta-actions .btn{text-align:center}}.estimate-banner{margin:1rem 0 1.25rem}.estimate-banner a{color:inherit;font-weight:700}.estimate-summary{font-size:1.05rem;color:var(--grey-800);max-width:62ch;margin:0 0 1.5rem}.summary-card{margin-bottom:1.25rem}.summary-card h2{margin:0 0 .4rem;font-size:1.25rem}.summary-num{font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-700);margin-bottom:.5rem}.pcr-list{margin-top:.5rem}.pcr-list .pcr-program{margin-right:.4rem}.verdict{display:inline-block;font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-radius:3px;padding:.25rem .55rem}.verdict-recommended{background:#d1fae5;color:#065f46}.verdict-worth_discussing{background:#fef3c7;color:#92400e}.verdict-not_needed{background:var(--grey-100);color:var(--grey-800)}.counter p{margin:.55rem 0 0;font-size:.84rem;line-height:1.45;color:var(--grey-800)}.assumptions{margin-top:1rem}.assumptions summary{cursor:pointer;font-size:.88rem;font-weight:700;color:var(--grey-800)}.assumptions ul{margin:.5rem 0 0 1.1rem;padding:0;font-size:.88rem;color:var(--grey-800)}.assumptions li+li{margin-top:.3rem}.cta-reach{flex-basis:100%;border-top:1px dashed var(--grey-300);padding-top:1rem}.contact-form{display:grid;grid-template-columns:1fr 1fr auto;gap:.75rem;align-items:end}.contact-form .field{margin:0}.contact-form .contact-error,.contact-form .contact-note{grid-column:1 / -1;margin:0}@media(max-width:700px){.contact-form{grid-template-columns:1fr}.contact-form .btn{width:100%}}
