.scroll-progress{position:fixed;left:0;right:0;top:0;height:4px;background:transparent;z-index:100}.scroll-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--lime),var(--aqua),var(--teal));transition:width .08s linear}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
.service-finder{padding:85px clamp(20px,7vw,110px);display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center;background:linear-gradient(135deg,#032f50,#056f88);color:#fff;position:relative;overflow:hidden}.service-finder:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:#27bfd015;right:-170px;bottom:-310px;border:70px solid #b9e53712}.finder-intro,.finder-panel{position:relative;z-index:1}.feature-tag{display:inline-flex;padding:8px 12px;border-radius:50px;background:#b9e537;color:#063d69;font:800 11px Montserrat;letter-spacing:.12em}.finder-intro h2{font:800 clamp(38px,4.5vw,62px) Montserrat;letter-spacing:-.05em;line-height:1.03;margin:22px 0 18px}.finder-intro>p{font-size:18px}.finder-points{display:flex;flex-wrap:wrap;gap:9px}.finder-points span{padding:8px 11px;border:1px solid #ffffff35;border-radius:50px;font-size:12px;font-weight:700}.finder-panel{background:#fff;color:var(--ink);padding:30px;border-radius:24px;box-shadow:0 28px 65px #001d325c;display:grid;gap:18px}.finder-step{display:grid;grid-template-columns:46px 1fr;gap:15px;align-items:center}.finder-step>b{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#e8f8fb;color:var(--teal);font:800 18px Montserrat}.finder-step label{font-weight:800;font-size:14px}.finder-step select{display:block;width:100%;margin-top:6px;padding:14px;border:1px solid #b8d4dd;border-radius:10px;background:#fff;font:600 15px Manrope;color:var(--ink)}.finder-result{display:none;background:#edf9f4;border:1px solid #b6e4ce;border-radius:14px;padding:20px}.finder-result.show{display:block;animation:pop .25s ease}.finder-result span{font:800 10px Montserrat;letter-spacing:.14em;color:#087640}.finder-result h3{margin:7px 0;color:var(--navy)}.finder-result p{margin:0 0 8px;font-size:14px}.finder-result a{font-weight:900;color:#087640}
.standards{margin:0 clamp(20px,7vw,110px) 85px;display:grid;grid-template-columns:repeat(3,1fr);background:#f0f8fa;border:1px solid var(--line);border-radius:22px;overflow:hidden}.standards>div{padding:31px;border-right:1px solid var(--line)}.standards>div:last-child{border:0}.standards span{font:800 12px Montserrat;color:var(--teal);letter-spacing:.15em}.standards h3{font:800 20px Montserrat;color:var(--navy);margin:12px 0 8px}.standards p{font-size:14px;margin:0}
.faq{padding:90px clamp(20px,7vw,110px);display:grid;grid-template-columns:.75fr 1.25fr;gap:75px;background:#f8fcfd}.faq-intro h2{font:800 clamp(36px,4.2vw,54px) Montserrat;color:var(--navy);letter-spacing:-.045em}.faq-intro .secondary{display:inline-block;margin-top:15px}.faq-list{display:grid;gap:10px}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:15px;padding:0 21px;transition:.2s}.faq-list details[open]{border-color:var(--aqua);box-shadow:0 12px 30px #063d690c}.faq-list summary{list-style:none;cursor:pointer;padding:20px 0;font-weight:800;color:var(--navy);display:flex;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:22px;color:var(--teal);transition:.2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{margin:0;padding:0 30px 20px 0;font-size:15px}
@keyframes pop{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}*{scroll-behavior:auto!important}}
@media(max-width:900px){.service-finder,.faq{grid-template-columns:1fr}.standards{grid-template-columns:1fr}.standards>div{border-right:0;border-bottom:1px solid var(--line)}}
@media(max-width:560px){.service-finder{padding:65px 16px;gap:32px}.finder-intro h2{font-size:40px}.finder-panel{padding:20px;border-radius:19px}.finder-step{grid-template-columns:38px 1fr}.finder-step>b{width:38px;height:38px}.standards{margin:0 16px 65px}.standards>div{padding:24px}.faq{padding:70px 16px;gap:35px}.faq-intro h2{font-size:38px}.faq-list summary{font-size:15px}.reveal{opacity:1;transform:none}}
