/* Tokens from Teal COLOR-SYSTEM.md, scoped to these new resources. */
body.fs-sect{--green:#145F48;--green-light:#1B7A5E;--green-dark:#0F4A38;--green-darker:#0A3629;--cream:#FFF5CB;--cream-light:#FFF8DC;--cream-lighter:#FFFAEB;--cream-dark:#F0E4B0;--orange:#FF7D20;--red:#BB2040;--white:#FFFFFF;--gray-200:#EDEAE7;--gray-300:#D4D1CD;--gray-600:#555250;--black:#000000;--g:var(--green);--g2:var(--green-darker);--o:var(--orange);--ink:var(--gray-600);--mut:var(--gray-600);--line:var(--gray-200);background:var(--cream-lighter)}
body.fs-sect .fs-disp{font-family:Monigue,"Helvetica Neue",Helvetica,sans-serif}
/* Kit workbench: the existing Teal landing palette and type, scoped to new pages. */
body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink);background:var(--white);line-height:1.55}a{color:var(--g);text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--green);outline-offset:4px}h2,h3,p{margin-top:0}h2{font-size:1.65rem;line-height:1.2;color:var(--g2);letter-spacing:-.025em}h3{font-size:1rem;color:var(--g2)}[hidden]{display:none!important}.kp-wrap{max-width:1240px;padding:0 32px;margin:0 auto}.kp-nav{max-width:1304px;margin:auto;min-height:92px;padding:18px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.kp-logo{display:inline-flex;align-items:center;gap:10px;flex:none;text-decoration:none;line-height:1}.kp-logo-icon{width:40px;height:40px}.kp-logo-word{width:100px;height:auto}.kp-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:48px}.kp-hero-grid h1{font-size:clamp(2.6rem,4.8vw,4rem)}.kp-hero-figure{margin:0}.kp-hero-figure img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:16px;display:block}.kp-hero-figure figcaption{font-size:.72rem;color:var(--mut);margin-top:9px}.kp-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.kp-nav nav{display:flex;align-items:center;gap:28px}.kp-nav a{font-weight:700;text-decoration:none}.kp-button{display:inline-flex;justify-content:center;align-items:center;gap:12px;background:var(--g);color:var(--white);padding:13px 20px;border:1px solid var(--g);border-radius:8px;font-weight:700;text-decoration:none;line-height:1.3;min-height:46px}.kp-button:hover:not(:disabled){background:var(--green-dark)}.kp-quiet{display:inline-block;background:var(--white);border:1px solid var(--gray-300);color:var(--g2);padding:10px 14px;border-radius:7px;font-weight:700;min-height:44px}.kp-quiet:hover{background:var(--cream-light)}.kp-remove{align-self:center;background:transparent;color:var(--red);border:0;text-decoration:underline;font-size:.84rem;min-height:44px}.kp-hero{background:var(--cream);border-block:1px solid var(--cream-dark);padding:64px 0 54px}.kp-hero h1{font-size:clamp(2.5rem,5.6vw,4.5rem);line-height:1.05;max-width:860px;margin:16px 0 24px;color:var(--g2);letter-spacing:.01em}.kp-deck{font-size:1.15rem;max-width:760px;color:var(--gray-600);margin-bottom:20px}.kp-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;color:var(--g);margin:0 0 14px}.kp-eyebrow:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--o);margin-right:9px}.kp-meta,.kp-help{font-size:.85rem;color:var(--gray-600)}.kp-meta{margin:0}.kp-main{padding-top:48px;padding-bottom:64px}.kp-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;margin-bottom:30px}.kp-intro p{max-width:450px;color:var(--mut)}.kp-library{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.kp-card{border:1px solid var(--line);border-radius:12px;padding:26px;text-decoration:none;display:flex;flex-direction:column;color:var(--ink);min-height:290px;background:var(--white);transition:border-color .15s,transform .15s}.kp-card:hover{border-color:var(--g);transform:translateY(-2px)}.kp-card-top{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:var(--mut);margin-bottom:28px}.kp-number{font:normal 30px Monigue,"Helvetica Neue",sans-serif;color:var(--g)}.kp-card h2{font-size:1.35rem;margin-bottom:14px}.kp-card p{font-size:.93rem;color:var(--gray-600)}.kp-card-link{display:flex;justify-content:space-between;margin-top:auto;padding-top:16px;color:var(--g);font-weight:700}.kp-card:first-child{background:var(--g2);color:var(--white)}.kp-card:first-child h2,.kp-card:first-child .kp-card-link,.kp-card:first-child .kp-number{color:var(--white)}.kp-card:first-child p,.kp-card:first-child .kp-card-top{color:var(--cream)}.kp-band{margin-top:44px;padding:38px;background:var(--cream);border-radius:12px;border:1px solid var(--cream-dark)}.kp-band p{max-width:700px}.kp-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:24px;font-weight:700}.kp-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);align-items:start;gap:28px}.kp-panel{border:1px solid var(--line);border-radius:12px;padding:28px;min-width:0}.kp-section-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}.kp-section-head h2{margin:0}.kp-result{background:var(--cream-light);position:sticky;top:20px}.kp-result p{font-size:.94rem}.kp-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:24px}.kp-fields label,.kp-cost label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:.78rem;min-width:0}.kp-fields input,.kp-fields select,.kp-fields textarea,.kp-cost input,.kp-cost select{width:100%;min-width:0;border:1px solid var(--gray-300);background:var(--white);border-radius:6px;min-height:44px;padding:9px 11px;color:var(--ink);font-size:.93rem;font-weight:400}.kp-fields textarea{resize:vertical}.kp-span{grid-column:1/-1}.kp-entry{border:1px solid var(--line);padding:20px;margin:18px 0 20px;border-radius:9px;min-width:0}.kp-entry legend{font-size:.74rem;color:var(--mut);padding:0 7px}.kp-entry-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.kp-entry-head h3{margin:0}.kp-entry .kp-fields{margin-bottom:0}.kp-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:18px 0}.kp-table{max-width:100%;overflow-x:auto;margin:18px 0;border:1px solid var(--line);border-radius:8px;background:var(--white)}.kp-table table{border-collapse:collapse;width:100%;font-size:.86rem;text-align:left}.kp-table th{background:var(--cream-light);color:var(--g2);font-size:.74rem;vertical-align:bottom}.kp-table th,.kp-table td{padding:13px 15px;border-bottom:1px solid var(--line);min-width:80px}.kp-table td{vertical-align:top}.kp-table td:first-child{font-weight:700}.kp-table tr:last-child td{border-bottom:0}.kp-method{border-top:1px solid var(--line);margin-top:52px;padding-top:36px;max-width:920px}.kp-method p{max-width:84ch}.kp-method h3{margin-top:28px}.kp-notice{background:var(--cream);padding:20px 24px;border-left:3px solid var(--o);margin-bottom:30px}.kp-error{background:var(--cream-light);color:var(--red);padding:16px;border-left:3px solid var(--red)}.kp-status{padding:15px;background:var(--cream-light);font-weight:700;color:var(--g2)}.kp-output{margin-top:28px;background:var(--cream-lighter)}.kp-output section+section{margin-top:36px}.kp-quotes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:25px;align-items:start}.kp-quote{padding:24px}.kp-quote:nth-child(3){grid-column:1/-1;max-width:650px}.kp-cost{border:0;border-top:1px solid var(--line);margin:16px 0;padding:12px 0 0;min-width:0}.kp-cost legend{font-size:.9rem;font-weight:700;padding-right:10px}.kp-cost-controls{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:10px}.kp-cost label{font-size:.7rem}.kp-unit-fields{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px}.kp-check{flex-direction:row!important;align-items:flex-start;grid-column:1/-1}.kp-check input{width:18px!important;height:18px;min-height:18px!important;flex:none;margin:3px 5px 0 0}.kp-check{display:flex;gap:7px;font-size:.84rem}.kp-output h2{font-size:1.45rem}details{border-top:1px solid var(--line);padding-top:18px;margin:26px 0}summary{cursor:pointer;font-weight:700;color:var(--g2);margin-bottom:20px}.kp-footer{background:var(--g2);color:var(--cream);padding:40px 0}.kp-footer .kp-wrap{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.kp-footer a,.kp-footer .kp-logo{color:var(--white)}.kp-footer p{margin:0}.kp-footer small{flex-basis:100%;color:var(--cream-light);font-size:.75rem}.skip{position:absolute;left:-10000px;top:8px}.skip:focus{left:16px;z-index:100;background:var(--white);padding:10px}.kp-reading{max-width:900px}.kp-reading p{line-height:1.75}.kp-reading h2{margin-top:40px}.kp-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0}.kp-figures figure{margin:0;border:1px solid var(--line);border-radius:10px;padding:20px;background:var(--cream-lighter)}.kp-figures svg,.kp-figures img{width:100%;height:180px;object-fit:contain}.kp-figures figcaption{font-size:.85rem}.kp-figures strong{display:block;margin-bottom:8px;color:var(--g2)}.kp-evidence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.kp-evidence article{border:1px solid var(--line);padding:28px;border-radius:10px}.kp-big{font:normal 58px Monigue,"Helvetica Neue",sans-serif;color:var(--g);margin-bottom:18px}.kp-evidence dl{font-size:.82rem;display:grid;grid-template-columns:90px 1fr;gap:8px}.kp-evidence dt{font-weight:700}.kp-evidence dd{margin:0}.kp-evidence h2{font-size:1.2rem}.kp-footnote{font-size:.82rem;color:var(--gray-600)}.kp-downloads{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}
@media(max-width:1000px){.kp-library{grid-template-columns:repeat(2,minmax(0,1fr))}.kp-layout{grid-template-columns:1fr}.kp-result{position:static}.kp-quote{padding:18px}.kp-cost-controls{grid-template-columns:1fr 1fr}.kp-cost-controls>label:last-of-type{grid-column:1/-1}}
@media(max-width:650px){.kp-wrap{padding-inline:20px}.kp-nav{padding:16px 20px;min-height:78px}.kp-nav nav{gap:12px;font-size:.78rem}.kp-nav nav>a:nth-child(2){display:none}.kp-nav .kp-button{padding:10px;font-size:.75rem}.kp-logo{font-size:36px}.kp-hero{padding:38px 0}.kp-hero h1{font-size:2.5rem}.kp-deck{font-size:1rem}.kp-main{padding-top:28px;padding-bottom:40px}.kp-library,.kp-quotes,.kp-evidence,.kp-figures{grid-template-columns:1fr}.kp-intro,.kp-section-head{display:block}.kp-section-head h2{margin-bottom:14px}.kp-card{min-height:0;padding:24px}.kp-card-top{margin-bottom:20px}.kp-panel{padding:20px}.kp-fields{grid-template-columns:1fr;gap:15px}.kp-entry{padding:15px}.kp-band{padding:24px}.kp-links{flex-direction:column;gap:14px}.kp-method{margin-top:34px}.kp-footer .kp-wrap{gap:18px}.kp-table th,.kp-table td{padding:10px}.kp-notice{padding:16px}.kp-evidence article{padding:22px}.kp-quote:nth-child(3){max-width:none}}
@media(max-width:650px){.kp-table::before{content:'Swipe or scroll to see all columns →';display:block;position:sticky;left:0;width:100%;box-sizing:border-box;padding:10px 12px;font-size:.75rem;font-weight:700;color:var(--g2);background:var(--cream-dark);border-bottom:1px solid var(--line)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{body{font-size:10pt;color:var(--black)}.kp-nav,.kp-footer,.skip,.kp-actions,button,.kp-downloads{display:none!important}.kp-hero{padding:12px 0;background:var(--white)}.kp-hero h1{font-size:28pt}.kp-main{padding-top:15px}.kp-wrap{padding:0}.kp-layout,.kp-quotes,.kp-evidence,.kp-figures{display:block}.kp-result{position:static}.kp-panel,.kp-entry,.kp-evidence article{margin-bottom:15px;padding:12px;break-inside:avoid}.kp-table{overflow:visible}.kp-table th,.kp-table td{min-width:0;padding:5px}.kp-fields{grid-template-columns:1fr 1fr}input,textarea,select{border:0!important;background:var(--white)!important;color:var(--black)!important}textarea{min-height:90px}.kp-hero p{margin:5px 0}.kp-method{margin-top:20px}.kp-figures figure{break-inside:avoid}.kp-cost-controls{grid-template-columns:1fr 1fr 1fr}}

@media(max-width:800px){.kp-hero-grid{grid-template-columns:1fr;gap:28px}.kp-hero-figure{max-width:480px}.kp-hero-grid h1{max-width:650px}}
@media(max-width:650px){.kp-logo{gap:7px}.kp-logo-icon{width:30px;height:30px}.kp-logo-word{width:75px}.kp-nav{gap:12px}.kp-nav nav{gap:10px}.kp-hero-figure img{aspect-ratio:4/3}.kp-hero-grid h1{font-size:2.6rem}}
@media print{.kp-hero-figure,.kp-hero-actions{display:none}.kp-hero-grid{display:block}}

.kp-handoff{margin-top:28px;padding:28px;border:1px solid var(--cream-dark);border-radius:12px;background:var(--cream-light)}.kp-handoff h3{font-size:1.3rem}.kp-handoff p{max-width:780px}.kp-handoff .kp-help{margin:12px 0 0}

.kp-intro-copy{max-width:860px;margin-bottom:32px;color:var(--gray-600);font-size:1.05rem}

.kp-cost summary{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0;padding:5px 0;font-size:.9rem;min-height:36px}.kp-cost summary::before{content:'+';font-size:1.1rem}.kp-cost[open] summary::before{content:'−'}.kp-cost[open] summary{margin-bottom:14px}.kp-line-state{font-size:.72rem;color:var(--mut);font-weight:400;margin-left:auto;white-space:nowrap}

.kp-fields input,.kp-fields select,.kp-fields textarea,.kp-cost input,.kp-cost select{background:var(--cream-lighter)}
.kp-fields input:focus,.kp-fields select:focus,.kp-fields textarea:focus,.kp-cost input:focus,.kp-cost select:focus{background:var(--white)}

/* Use the existing Teal site shell with CSP-safe local menu behavior. */
body.fs-sect{padding-top:72px}
#nav .nav-inner{height:72px;padding:0;gap:12px}
#nav .logo>img{height:22px;width:auto}
#nav .logo-icon img{width:38px;height:38px}
#nav .nav-links{display:flex;gap:2px}
#nav .nav-links a,#nav .kp-menu-toggle{font-family:inherit;font-size:.88rem;font-weight:500;color:var(--gray-600);text-decoration:none;padding:8px 12px;border:0;border-radius:6px;background:transparent;min-height:44px;display:inline-flex;align-items:center;gap:6px}
#nav .kp-menu-toggle:hover,#nav .kp-menu-toggle[aria-expanded=true]{color:var(--green);background:var(--cream)}
#nav .nav-chevron{width:14px;height:14px}
#nav .hamburger{display:none!important}
#nav .nav-item:hover .mega-menu,#nav .mega-menu{display:none!important}
#nav .kp-menu-open .mega-menu{display:block!important}
#nav .mega-menu a{padding:7px 0;min-height:36px}
#nav .mega-menu .mega-cta{padding:10px 14px;color:var(--white);background:var(--green)}
#nav .mega-menu{max-width:calc(100vw - 40px)}
.kp-breadcrumb{margin-bottom:26px;font-size:.78rem}
.kp-breadcrumb ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px;color:var(--gray-600)}
.kp-breadcrumb li+li::before{content:'/';padding-right:8px}
.kp-breadcrumb a{color:var(--green)}
.kp-draft-note{padding-top:16px;padding-bottom:16px;font-size:.78rem}
body.fs-sect>footer{background:var(--green-darker);color:var(--cream);padding:64px clamp(20px,4vw,48px) 28px}
body.fs-sect>footer a{color:var(--cream);text-decoration:none}
body.fs-sect>footer .footer-brand p{color:var(--cream-light)}
body.fs-sect>footer .footer-col h4{font-size:.85rem;color:var(--cream);margin-bottom:16px}
body.fs-sect>footer ul{list-style:none;padding:0;margin:0}
body.fs-sect>footer li{margin-bottom:8px;font-size:.82rem}
body.fs-sect>footer .footer-contact-row{display:flex;flex-direction:column;gap:8px;font-size:.82rem}
body.fs-sect>footer .footer-bottom{gap:18px;flex-wrap:wrap;color:var(--cream)}
body.fs-sect>footer .footer-bottom-links{display:flex;gap:16px;flex-wrap:wrap}
body.fs-sect>footer .footer-divider{border:0;border-top:1px solid var(--green);margin:28px 0}
@media(max-width:1150px){
 #nav .hamburger{display:grid!important;flex:none}
 #nav .nav-links{display:none}
 #nav.kp-nav-open .nav-links,#nav:not(.kp-nav-ready) .nav-links{display:block;position:fixed;inset:72px 0 auto;max-height:calc(100dvh - 72px);overflow-y:auto;background:var(--cream-lighter);padding:20px;border-bottom:1px solid var(--cream-dark)}
 #nav:not(.kp-nav-ready){position:relative;margin-top:-72px}
 #nav:not(.kp-nav-ready) .nav-links{position:static;max-height:none}
 #nav:not(.kp-nav-ready) .nav-inner{height:auto;align-items:flex-start;flex-wrap:wrap}
 #nav:not(.kp-nav-ready) nav{order:3;width:100%}
 #nav:not(.kp-nav-ready) .hamburger{display:none!important}
 #nav .nav-links>li>a,#nav .kp-menu-toggle{width:100%;justify-content:space-between;font-size:1rem;padding:12px 10px}
 #nav .mega-menu{position:static;transform:none;width:auto!important;min-width:0;max-width:none;padding:16px;box-shadow:none;margin-bottom:12px}
 #nav .mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px}
 #nav .mega-col a{font-size:.85rem}
 #nav .mega-bottom{display:block}
 #nav .mega-bottom-text{display:block;margin-bottom:10px}
 #nav:not(.kp-nav-ready) .mega-menu{display:block!important}
}
@media(max-width:750px){body.fs-sect>footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.footer-brand{grid-column:1/-1}#nav .btn-orange{font-size:.78rem;padding:10px 12px}#nav .nav-inner{gap:8px}.kp-breadcrumb{margin-bottom:22px}}
@media print{body.fs-sect{padding-top:0}#nav,body.fs-sect>footer,.kp-draft-note,.kp-breadcrumb{display:none!important}}
/* Override legacy shell !important rules without changing existing site CSS. */
#nav .nav-inner{height:72px!important}
#nav .nav-links{display:flex!important}
#nav:not(.kp-nav-ready) .nav-item:hover .mega-menu,#nav:not(.kp-nav-ready) .nav-item:focus-within .mega-menu{display:block!important}
.kp-main h2,.kp-main h3{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}
.kp-result{top:92px}
[id]{scroll-margin-top:92px}
@media(max-width:1150px){#nav .nav-links{display:none!important}#nav.kp-nav-open .nav-links,#nav:not(.kp-nav-ready) .nav-links{display:block!important}#nav:not(.kp-nav-ready) .nav-inner{height:auto!important}}
#nav .nav-item.kp-menu-open .mega-menu{display:block!important}
body.fs-sect>footer .footer-bottom p{color:var(--cream-light);opacity:1}
