.stack-mapper{scroll-margin-top:8rem}.stack-mapper fieldset{border:1px solid #66787a;padding:1rem;margin:1.2rem 0;min-width:0}.stack-mapper legend{padding:0 .5rem;font-weight:700}.stack-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.stack-mapper label{display:block;line-height:1.6}.stack-mapper input[type=email]{display:block;width:min(100%,32rem);box-sizing:border-box;padding:.8rem;background:#fff;color:#102c30;border:2px solid #66787a;border-radius:.3rem}.stack-mapper input[type=checkbox],.stack-mapper input[type=radio]{accent-color:#008575;min-width:18px;min-height:18px;vertical-align:middle}.stack-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:1rem 0}.stack-mapper .button{white-space:normal;height:auto;min-height:48px;padding:.8rem 1.2rem;line-height:1.4}.stack-mapper [role=status]{min-height:1.6em;font-weight:600}.stack-mapper article{border-top:1px solid #66787a;padding:.9rem 0}.stack-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.stack-mapper :focus-visible,.services-menu :focus-visible{outline:3px solid #009e87;outline-offset:4px}.services-menu{position:relative}.services-menu summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.services-menu>div{position:absolute;z-index:60;top:100%;left:0;background:#f1f4f1;color:#143337;border:1px solid #697d79;min-width:230px;padding:.7rem;box-shadow:0 8px 20px #0003}.services-menu>div a{display:block;padding:.65rem;color:inherit}.primary-nav{gap:clamp(.65rem,1vw,1.3rem)}@media(max-width:1000px){.stack-proof{grid-template-columns:1fr}.services-menu>div{position:static}.stack-options{grid-template-columns:1fr}.stack-actions .button{width:100%}}@media(prefers-reduced-motion:reduce){.stack-mapper *{scroll-behavior:auto;transition:none;animation:none}}
.services-menu summary::after{content:' ▾';margin-left:.35rem}.services-menu>div a{opacity:1;font-size:.78rem;letter-spacing:0;text-transform:none}@media(min-width:841px) and (max-width:1100px){.full-header .header-controls{gap:.8rem}.full-header .primary-nav{font-size:.6rem;gap:.7rem}.full-header .brand-tagline{display:none}.full-header .header-cta{font-size:.65rem}}
