/* ACRS Waste Solutions: accessible, mobile-first CSS without a framework. */
:root {
    --acrs-navy:#0B2545;
    --acrs-teal:#13A89E;
    --acrs-red:#D7263D;
    --ink:#17304b;
    --muted:#536779;
    --soft:#F4F8FB;
    --white:#fff;
    --line:#dce7ee;
    --shadow:0 18px 55px rgba(11,37,69,.075);
    --radius:20px;
    --radius-sm:12px;
    --container:1200px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{margin:0;background:#fff;color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
img,svg,video,iframe{max-width:100%}
img{display:block;height:auto}
svg.icon{width:1.1em;height:1.1em;vertical-align:-.16em;flex:none}
a{color:#12645e;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:#086b67}
a,button,input,select,textarea{transition:background-color .2s,border-color .2s,color .2s,box-shadow .2s,transform .2s}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid #e09524;outline-offset:3px;box-shadow:0 0 0 5px #fff}
[hidden]{display:none!important}
::selection{background:#b2e9e5;color:#0b2545}
h1,h2,h3,h4,h5,h6{font-family:"Plus Jakarta Sans",Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:-.028em;color:var(--acrs-navy);line-height:1.2;margin:0 0 .65em}
h1{font-size:clamp(2.3rem,5vw,4.9rem);font-weight:800;letter-spacing:-.05em}
h2{font-size:clamp(1.95rem,3.4vw,3rem);font-weight:800}
h3{font-size:1.15rem;line-height:1.35;font-weight:750}
p{margin:.1em 0 1.25em}
ul,ol{margin-top:0}
.container{width:min(calc(100% - 36px),var(--container));margin-inline:auto}
.section{padding:78px 0;position:relative}
.section-muted{background:var(--soft)}
.section-intro{max-width:815px;margin:0 auto 38px;text-align:center}
.section-intro p{color:var(--muted);font-size:1.045rem}
.section-intro h2{margin-bottom:.36em}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#087e76;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}
.eyebrow-light{color:#9de7e2}
.btn{border:2px solid transparent;border-radius:12px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:11px 21px;text-decoration:none;font-size:.9rem;font-weight:800;line-height:1.3;white-space:normal;text-align:center;box-shadow:none}
.btn .icon,.text-link .icon{transition:transform .2s}
.btn:hover .icon,.text-link:hover .icon{transform:translateX(3px)}
.btn-primary{background:var(--acrs-red);color:#fff;box-shadow:0 10px 26px rgba(215,38,61,.15)}
.btn-primary:hover{background:#ad122b;color:#fff;transform:translateY(-2px)}
.btn-secondary{background:var(--acrs-navy);color:#fff}
.btn-secondary:hover{background:#143d65;color:#fff;transform:translateY(-2px)}
.btn-outline-light{color:#fff;border-color:rgba(255,255,255,.62);background:transparent}
.btn-outline-light:hover{background:#fff;color:var(--acrs-navy)}
.btn-white{background:#fff;color:var(--acrs-navy)}
.btn-white:hover{background:#d6f7f2;color:var(--acrs-navy)}
.btn-ghost-light{color:#fff;border-color:rgba(255,255,255,.5)}
.btn-ghost-light:hover{background:rgba(255,255,255,.15);color:#fff}
.text-link{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:#077c73;text-decoration:none}
.text-link:hover{color:#075b57}
.section-foot{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;text-align:center;margin-top:34px}
.section-foot p{margin:0;color:var(--muted)}
.section-note{font-size:.9rem;color:#627486;margin-top:22px}
.skip-link{position:fixed;left:14px;top:-100px;z-index:99999;background:#fff;color:var(--acrs-navy);border:3px solid var(--acrs-teal);padding:12px 18px;border-radius:8px;font-weight:700}
.skip-link:focus{top:12px}
/* Sticky header and desktop navigation */
.site-header{position:sticky;top:0;z-index:120;background:#fff;box-shadow:0 3px 22px rgba(11,37,69,.08)}
.topbar{background:var(--acrs-navy);color:#dbeaf4;font-size:.76rem;font-weight:700}
.topbar-inner,.topbar-contact,.topbar-right{display:flex;align-items:center;gap:12px}
.topbar-inner{min-height:37px;justify-content:space-between}
.topbar a{color:#e9f7fa;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.topbar a:hover{color:#fff}
.topbar .icon{color:#94e4df}
.topbar-right{gap:10px}
.social-icon{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.22);border-radius:8px;width:29px;height:29px;text-decoration:none;color:inherit}
.social-svg{width:17px;height:17px;display:block}
.topbar-quote{background:var(--acrs-red);border-radius:0;padding:8px 13px;align-self:stretch}
.topbar-quote .icon{color:#fff}
.topbar-quote:hover{background:#a90b28}
.nav-container{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.site-brand{display:flex;align-items:center;min-width:140px;max-width:205px;text-decoration:none}
.brand-image{max-height:66px;width:auto;max-width:205px;object-fit:contain}
.desktop-nav{display:none;flex:1;justify-content:flex-end}
.nav-list,.drawer-list,.footer-links{margin:0;padding:0;list-style:none}
.nav-list{display:flex;align-items:center;justify-content:flex-end;gap:clamp(7px,1.3vw,23px)}
.nav-list a{font-size:.795rem;font-weight:750;color:var(--acrs-navy);text-decoration:none;display:block;padding:11px 0;white-space:nowrap}
.nav-list a:hover,.nav-list .current-menu-item:not(.menu-contact-cta) a{color:#087f76}
.nav-list .menu-contact-cta a{background:var(--acrs-red);color:#fff;padding:12px 15px;border-radius:10px}
.nav-list .menu-contact-cta a:hover{background:#ac1029;color:#fff}
.menu-toggle{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;color:var(--acrs-navy);border-radius:10px;padding:9px 13px;font-size:.83rem;font-weight:800}
.menu-toggle .icon{font-size:1.4rem}
.drawer-backdrop{position:fixed;inset:0;background:rgba(9,29,49,.55);z-index:124}
.mobile-drawer{position:fixed;top:0;right:0;height:100dvh;width:min(88vw,380px);background:#fff;z-index:125;box-shadow:-10px 0 40px rgba(0,0,0,.14);transform:translateX(110%);visibility:hidden;transition:transform .25s ease,visibility .25s ease;overflow-y:auto;padding:24px;overscroll-behavior:contain}
body.menu-open{overflow:hidden}
body.menu-open .mobile-drawer{transform:translateX(0);visibility:visible}
.drawer-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid var(--line)}
.drawer-title{font-size:1.2rem;font-weight:800;color:var(--acrs-navy)}
.drawer-close{width:44px;height:44px;background:var(--soft);border:0;border-radius:10px;font-size:1.5rem;color:var(--acrs-navy)}
.drawer-list li{border-bottom:1px solid var(--line)}
.drawer-list a{padding:16px 5px;display:block;text-decoration:none;font-weight:750;color:var(--acrs-navy)}
.drawer-list .menu-contact-cta a{background:var(--acrs-red);color:#fff;text-align:center;border-radius:10px;margin-top:16px}
.drawer-bottom{margin-top:40px}.drawer-bottom a{color:var(--acrs-navy);font-weight:800;text-decoration:none}
/* Hero */
.hero-section{background:linear-gradient(133deg,#0b2545 0%,#0c3452 52%,#0c5158 100%);color:#fff;position:relative;overflow:hidden}
.hero-orb{position:absolute;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(40,182,173,.25),transparent 68%);right:-200px;top:-240px;pointer-events:none}
.hero-section::after{content:"";position:absolute;left:-8%;right:-8%;bottom:-45px;height:80px;border-radius:50% 50% 0 0;background:#fff;transform:rotate(-1.2deg)}
.hero-layout{position:relative;z-index:1;display:grid;gap:45px;align-items:center;padding-top:70px;padding-bottom:112px}
.hero-copy h1{color:#fff;font-size:clamp(2.3rem,5.25vw,4.45rem);max-width:800px;margin:0 0 23px}
.hero-copy h1 em{font-style:normal;color:#9de7df}
.hero-lead{font-size:.98rem;line-height:1.86;color:#e1edf5;max-width:750px}
.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin:28px 0 30px}
.hero-chips{display:flex;gap:12px;flex-wrap:wrap}
.hero-chips span{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.19);padding:9px 12px;border-radius:999px;font-size:.76rem;font-weight:700}
.hero-chips .icon{color:#a6f3e5}
.hero-permits{font-size:.75rem;color:#c0d8de;margin-top:12px}
.hero-visual{position:relative;max-width:650px;margin-inline:auto;width:100%}
.hero-photo-frame{position:relative;border:9px solid rgba(255,255,255,.16);border-radius:27px;box-shadow:0 30px 65px rgba(0,0,0,.23);overflow:hidden;background:#205a6e}
.hero-photo{aspect-ratio:5/4;object-fit:cover;width:100%;height:auto}
.hero-visual-card{display:flex;align-items:center;gap:12px;position:absolute;bottom:-20px;left:6%;right:6%;padding:14px 18px;background:#fff;color:var(--ink);border-radius:14px;box-shadow:var(--shadow)}
.hero-visual-card>.icon{font-size:2.4rem;color:var(--acrs-teal)}
.hero-visual-card strong,.hero-visual-card small{display:block}.hero-visual-card strong{font-size:.9rem}.hero-visual-card small{font-size:.78rem;color:var(--muted);line-height:1.3}
/* Intro, trust and image splits */
.trust-section{padding:32px 0;border-bottom:1px solid var(--line);background:#fff}
.trust-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.trust-grid>div{display:flex;align-items:center;gap:12px}
.trust-grid .icon{font-size:1.8rem;color:#058a80}
.trust-grid strong{font-size:.8rem;line-height:1.3;color:var(--acrs-navy);display:block}
.trust-grid span{font-size:.74rem;color:var(--muted);line-height:1.4;display:block}
.split-section{display:grid;gap:44px;align-items:center}
.split-visual{position:relative;min-width:0}
.section-image{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:25px;background:#e6f1f3;box-shadow:var(--shadow)}
.split-copy p{color:var(--muted)}
.image-label{position:relative;margin:-30px 24px 0 auto;max-width:260px;display:flex;gap:9px;align-items:center;padding:13px 16px;background:#fff;border-radius:12px;box-shadow:var(--shadow);font-size:.83rem;font-weight:800;line-height:1.3;color:var(--acrs-navy)}
.image-label .icon{font-size:1.6rem;color:var(--acrs-teal)}
/* Cards and feature grids */
.service-grid{display:grid;gap:23px;grid-template-columns:1fr}
.service-card,.feature-card,.course-card,.waste-card,.step-card,.mini-course-card,.post-card{border:1px solid #e1e9ee;background:#fff;border-radius:var(--radius);box-shadow:0 12px 37px rgba(11,37,69,.045)}
.service-card{overflow:hidden;transition:transform .2s,box-shadow .2s}
.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.service-image-wrap{aspect-ratio:16/10;overflow:hidden;background:#e1eff0}
.service-image{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.service-card:hover .service-image{transform:scale(1.035)}
.service-card-body{padding:23px}
.service-card-body h3{margin-bottom:8px}.service-card-body p{min-height:75px;font-size:.89rem;color:var(--muted)}
.service-card .text-link{font-size:.85rem}
.feature-grid,.steps-grid,.waste-grid,.course-grid,.testimonial-grid,.post-grid{display:grid;gap:20px}
.feature-card{padding:28px}.feature-card h3,.waste-card h3{margin:13px 0 8px}.feature-card p,.waste-card p,.step-card p{font-size:.92rem;color:var(--muted);margin:0}
.feature-icon,.waste-icon,.benefit-icon{width:52px;height:52px;background:#e6f8f5;color:#087f75;display:flex;align-items:center;justify-content:center;border-radius:15px;font-size:1.7rem}
.waste-card{padding:25px}.waste-icon{width:44px;height:44px;font-size:1.4rem}
/* Video */
.video-layout{display:grid;gap:35px;align-items:center}
.video-copy p{color:var(--muted)}
.video-frame{background:#102e4f;border-radius:23px;overflow:hidden;box-shadow:var(--shadow)}
.video-frame video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#08213c}
.video-caption{color:#d9eef2;padding:7px 17px;margin:0;font-size:.75rem}
/* Stats */
.stats-section{background:linear-gradient(110deg,#0b2545,#0b5659);color:#fff;padding:56px 0}
.stats-heading{text-align:center;max-width:780px;margin:0 auto 30px}
.stats-heading h2{color:#fff}.stats-heading p{color:#d0e5ec}
.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.stat{padding:13px 8px;text-align:center;border-right:1px solid rgba(255,255,255,.14)}
.stat-number{font-size:clamp(2rem,4vw,3.45rem);letter-spacing:-.045em;font-weight:850;line-height:1.2;display:block;color:#a4f4e9}
.stat span{font-weight:700;color:#e4eff3;font-size:.83rem}
/* Generators and process */
.industry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.industry-item{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);padding:12px;border-radius:11px;font-size:.84rem;font-weight:700;line-height:1.4}
.industry-item .icon{color:#0a9c8e}
.step-card{padding:28px;position:relative}
.step-number{width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:#dcf5f1;color:#0e766e;border-radius:14px;font-size:1.25rem;font-weight:850;margin-bottom:20px}
.step-card h3{margin-bottom:10px}
.notice-strip{margin-top:32px;border:1px solid #cbe3e3;border-radius:14px;background:#e8f7f5;display:flex;gap:14px;padding:19px 23px;align-items:center;color:#16434a}
.notice-strip>.icon{font-size:1.8rem;color:#088a7c}
.notice-strip p{margin:0;font-size:.94rem}
/* Why choose, training and regulators */
.why-section .split-section{align-items:start}
.benefit-grid{display:grid;gap:13px}
.benefit-card{display:flex;align-items:flex-start;gap:14px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:13px}
.benefit-icon{width:43px;height:43px;flex:none;font-size:1.35rem}
.benefit-card h3{margin:0 0 5px;font-size:1rem}.benefit-card p{margin:0;color:var(--muted);font-size:.86rem}
.training-layout{display:grid;gap:35px;align-items:center}.training-layout p{color:var(--muted)}
.mini-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.mini-course-card,.course-card{text-align:center;padding:24px 15px}
.course-icon{max-width:95px;width:auto;height:90px;object-fit:contain;margin:0 auto 15px}
.mini-course-card h3{font-size:.92rem;margin:0}.course-card h3{margin:9px 0}.course-card p{font-size:.87rem;color:var(--muted);margin:0}
.regulation-layout{display:grid;gap:35px;align-items:center}
.regulation-layout p{color:var(--muted)}
.regulation-logos{display:flex;gap:22px;align-items:center;justify-content:center;background:#fff;border-radius:23px;padding:30px;box-shadow:var(--shadow)}
.agency-teaser-logo{width:43%;height:160px;object-fit:contain}
/* Service areas */
.area-columns{display:grid;gap:20px}
.area-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.area-card h3{font-size:1.35rem;margin-bottom:16px}
.check-list{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.check-list li{display:flex;align-items:flex-start;gap:9px;color:#3f576a;font-size:.9rem}
.check-list .icon{color:#078b81;margin-top:4px}
.area-actions{margin-top:30px;text-align:center}
/* Testimonials */
.testimonial-card{padding:26px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 12px 35px rgba(11,37,69,.045);margin:0}
.quote-mark{font-family:Georgia,serif;font-size:4.2rem;line-height:.8;color:#13a89e;display:block;margin-bottom:7px}
.testimonial-card blockquote{margin:0 0 21px;font-size:.91rem;line-height:1.85;color:#415970}
.testimonial-card figcaption{display:flex;align-items:center;gap:11px;border-top:1px solid var(--line);padding-top:15px;font-size:.86rem;color:var(--acrs-navy)}
.review-avatar{width:40px;height:40px;overflow:hidden;border-radius:50%;background:#e6f3f5;display:flex;align-items:center;justify-content:center}
.avatar-image{width:100%;height:100%;object-fit:cover}
/* FAQ */
.faq-layout{display:grid;gap:35px}.faq-intro p{color:var(--muted)}
.faq-list{display:grid;align-content:start;gap:10px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.faq-item[open]{border-color:#9bcdc7;box-shadow:0 10px 25px rgba(9,103,98,.07)}
.faq-item summary{list-style:none;display:flex;gap:14px;align-items:center;justify-content:space-between;padding:18px 20px;font-weight:750;color:var(--acrs-navy);cursor:pointer}
.faq-item summary::-webkit-details-marker{display:none}
.faq-plus{font-size:1.5rem;color:#087e76;flex:none;transition:transform .2s}
.faq-item[open] .faq-plus{transform:rotate(45deg)}
.faq-answer{padding:0 20px 16px;color:var(--muted);font-size:.9rem}.faq-answer p{margin:0}
/* CTA and footer */
.cta-band{padding:50px 0;background:linear-gradient(110deg,#0b2545,#0b5e5d);color:#fff}
.cta-band-inner{display:flex;flex-direction:column;gap:22px;align-items:start;justify-content:space-between}
.cta-band h2{color:#fff;font-size:clamp(1.65rem,2.9vw,2.35rem);margin:0 0 12px}.cta-band p{color:#dbebf0;max-width:680px;margin:0}
.cta-band-actions{display:flex;flex-wrap:wrap;gap:12px}
.site-footer{background:#071a30;color:#d3e1e9;padding:55px 0 0}
.site-footer h2,.site-footer h3{color:#fff;font-size:1.1rem;margin:0 0 18px}
.newsletter-panel{background:linear-gradient(125deg,#113c57,#0f605f);border:1px solid rgba(255,255,255,.13);border-radius:21px;padding:26px;display:grid;gap:22px;margin-bottom:48px}
.newsletter-panel h2{font-size:clamp(1.5rem,2.5vw,2.05rem);margin:0 0 8px}.newsletter-panel p{color:#cce3e8;margin:0}
.newsletter-panel .eyebrow{color:#acece6}
.newsletter-form label{display:block;font-size:.82rem;font-weight:800;margin-bottom:10px;color:#fff}
.newsletter-fields{display:flex;gap:8px;flex-wrap:wrap}
.newsletter-fields input{flex:1;min-width:170px;background:#fff;color:#12334c}
.newsletter-fields button{background:var(--acrs-red);border:0;border-radius:9px;color:#fff;font-size:.83rem;font-weight:800;padding:12px 16px}
.newsletter-fields button:hover{background:#a90c27}
.newsletter-form .newsletter-note{font-size:.73rem;margin-top:8px}
.footer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px;padding-bottom:46px}
.footer-about{grid-column:1/-1;max-width:470px}
.footer-about p{font-size:.86rem;color:#c1d5df}
.footer-logo{display:block;width:190px;margin-bottom:18px;background:#fff;border-radius:12px;padding:9px}
.footer-brand-image{width:100%;max-height:94px;object-fit:contain}
.footer-socials{display:flex;gap:8px;margin-top:13px}
.footer-socials a{color:#fff}
.footer-col .footer-links{display:grid;gap:9px}.footer-links li{line-height:1.4}
.site-footer a{color:#d8e8ed;text-decoration:none;font-size:.84rem}.site-footer a:hover{color:#92efe3}
.site-footer address{font-style:normal;display:grid;gap:12px}.site-footer address span,.site-footer address a{display:flex;gap:9px;align-items:flex-start;font-size:.83rem}
.site-footer address .icon{color:#9de7df;font-size:1.1rem;margin-top:2px}
.permit-line{font-size:.81rem;color:#c2d7df;margin-top:17px}
.footer-bottom{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;border-top:1px solid rgba(255,255,255,.14);padding:21px 0;color:#a9c1cd;font-size:.77rem}
.footer-bottom p{margin:0}.footer-bottom a{font-size:.77rem}
/* Inner templates */
.inner-hero{background:linear-gradient(120deg,#0b2545,#0c5158);color:#ddecf0;padding:59px 0 64px;overflow:hidden}
.inner-hero h1{font-size:clamp(2.3rem,4vw,3.9rem);color:#fff;margin:14px 0 12px}
.inner-subtitle{font-size:1.05rem;color:#d4e8ed;max-width:740px;margin:0}
.breadcrumbs{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:.78rem;font-weight:750}
.breadcrumbs a{color:#a7e9e3}.breadcrumbs span[aria-current]{color:#fff}
.content-prose{max-width:860px;min-height:220px}.content-prose p{font-size:1.05rem}.content-prose h2{margin-top:34px}
.fact-callout{display:flex;gap:22px;background:#fff;border-radius:21px;padding:30px;border:1px solid var(--line);box-shadow:var(--shadow)}
.fact-icon{color:#087d76;font-size:2rem;flex:none}
.fact-callout p{color:#52687b}
.course-grid{grid-template-columns:1fr}
.course-card .course-icon{height:100px}
.language-band{display:flex;align-items:center;gap:12px;margin-top:35px;padding:23px;background:var(--acrs-navy);color:#fff;border-radius:13px;font-weight:850;letter-spacing:.05em}
.language-band .icon{font-size:2rem;color:#a1ebe3}.language-band p{margin:0}
.supplies-highlight{padding:35px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}
.supplies-highlight .check-list{gap:18px}.supplies-highlight .check-list li{font-size:1rem;font-weight:700}
.spec-card{background:#fff;border-radius:16px;border:1px solid var(--line);overflow:hidden;box-shadow:var(--shadow)}
.table-scroll{overflow:auto}
.spec-table{width:100%;border-collapse:collapse;text-align:left;min-width:460px}
.spec-table th,.spec-table td{padding:17px 22px;border-bottom:1px solid var(--line)}
.spec-table thead th{background:var(--acrs-navy);color:#fff}.spec-table tbody th{color:var(--acrs-navy)}
.spec-table tr:last-child>*{border-bottom:0}.spec-table tbody tr:nth-child(even){background:#f6fafb}
.size-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.size-card{display:flex;align-items:center;gap:12px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:13px;min-height:78px}
.size-card .icon{font-size:1.7rem;color:#098c81}.size-card strong{font-size:.92rem;color:var(--acrs-navy)}
.regulation-card{display:grid;gap:22px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;margin:22px 0;box-shadow:var(--shadow)}
.regulation-card p{color:#54697a}.regulation-card h3{font-size:1.4rem}
.regulation-logo{display:flex;justify-content:center;align-items:flex-start;background:#f2f8fa;border-radius:14px;padding:20px}
.agency-logo{width:170px;height:170px;object-fit:contain}.two-logos{gap:10px;flex-wrap:wrap}.two-logos .agency-logo{width:100px;height:110px}
.source-note{font-size:.82rem;background:#f2f7fa;padding:12px;border-radius:8px}
.fine-notice{border-left:5px solid var(--acrs-red);padding:18px;background:#fff3f4;border-radius:0 9px 9px 0;margin:21px 0}
.fine-notice strong{display:block;color:#9d1328;font-size:1.25rem}.fine-notice p{font-size:.86rem;color:#743843;margin:8px 0 0}
/* Contact and forms */
.contact-layout{display:grid;gap:38px;align-items:start}
.contact-side>p{color:var(--muted)}
.contact-fact{display:flex;gap:16px;margin-top:24px;align-items:start}
.contact-fact>.icon{font-size:1.7rem;color:#087f76}
.contact-fact h3{margin:0 0 4px}.contact-fact p{font-size:.9rem;margin:0;color:var(--muted)}
.permit-box{padding:23px;background:var(--soft);border:1px solid var(--line);border-radius:13px;margin-top:33px}.permit-box h3{font-size:1rem}.permit-box p{font-size:.86rem;margin:5px 0}
.quote-panel{background:#fff;border:1px solid var(--line);padding:25px;border-radius:22px;box-shadow:var(--shadow)}
.quote-panel h2{font-size:clamp(1.7rem,2.5vw,2.2rem)}.quote-panel>p{color:var(--muted);font-size:.9rem}
.form-grid{display:grid;gap:16px}.field{min-width:0}.field label{display:block;color:#243e55;font-size:.84rem;font-weight:800;margin-bottom:5px}
.field input,.field select,.field textarea,.newsletter-fields input,.search-fields input{display:block;width:100%;padding:12px 13px;border:1px solid #acbfcb;border-radius:9px;background:#fff;color:#1a344c;font-size:.9rem;outline-offset:3px}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#05867d;box-shadow:0 0 0 3px rgba(19,168,158,.14)}
.field textarea{resize:vertical;min-height:120px}
.form-note{font-size:.75rem;color:#667b8b;margin-top:16px}
.form-feedback{font-size:.87rem;font-weight:700;min-height:20px;margin:12px 0 0}.form-feedback[data-state=error]{color:#b21e34}.form-feedback[data-state=success]{color:#7cfae8}.quote-panel .form-feedback[data-state=success]{color:#066a5e}
.form-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.map-wrap{overflow:hidden;border-radius:18px;box-shadow:var(--shadow);background:#dae8ed}
.map-wrap iframe{display:block;width:100%;height:390px;border:0}
/* Index, 404, search and blog */
.post-card{padding:25px}.post-card h2{font-size:1.35rem}.post-card h2 a{color:var(--acrs-navy);text-decoration:none}
.post-meta{color:var(--muted);font-size:.8rem}.post-card p{color:var(--muted)}
.post-featured-image{width:100%;height:auto;border-radius:18px;margin-bottom:30px}
.not-found{text-align:center;min-height:60vh}.not-found h1{font-size:clamp(2.1rem,5vw,3.8rem)}.not-found p{color:var(--muted);max-width:610px;margin:0 auto 24px}
.not-found-links{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.search-form{max-width:560px;margin:22px auto}.search-form label{display:block;text-align:left;font-weight:800;font-size:.82rem;margin-bottom:6px}
.search-fields{display:flex;gap:8px}.search-fields button{padding:10px 19px;border:0;border-radius:9px;background:var(--acrs-navy);color:#fff;font-weight:800}
.search-result{padding:23px 0;border-bottom:1px solid var(--line)}.search-result h2{font-size:1.45rem}
/* Reveal, only hidden after JS explicitly opts in. */
@media (prefers-reduced-motion:no-preference){.js .reveal{opacity:0;transform:translateY(17px);transition:opacity .65s,transform .65s}.js .reveal.visible{opacity:1;transform:none}}
@media(min-width:570px){
    .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .feature-grid,.steps-grid,.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .waste-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .size-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field.full{grid-column:1/-1}
    .regulation-card{grid-template-columns:160px 1fr}.agency-logo{width:130px;height:145px}
}
@media(min-width:768px){
    .container{width:min(calc(100% - 64px),var(--container))}
    .section{padding:92px 0}
    .hero-layout{grid-template-columns:1.16fr .84fr;padding-top:95px;padding-bottom:140px;gap:45px}
    .hero-lead{font-size:.99rem}
    .hero-photo{aspect-ratio:4/5}
    .hero-visual-card{left:-25px;right:5%}
    .trust-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
    .split-section{grid-template-columns:1fr 1fr;gap:65px}
    .feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .video-layout,.regulation-layout,.training-layout{grid-template-columns:.9fr 1.1fr;gap:55px}
    .regulation-layout{grid-template-columns:.72fr 1.28fr}
    .industry-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .steps-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
    .stats-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
    .area-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
    .testimonial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .faq-layout{grid-template-columns:.8fr 1.2fr;gap:60px}
    .cta-band-inner{flex-direction:row;align-items:center}
    .newsletter-panel{grid-template-columns:1fr 1fr;align-items:center;padding:32px 36px}
    .footer-grid{grid-template-columns:1.4fr 1fr 1fr;gap:40px}
    .footer-about{grid-column:auto}
    .contact-layout{grid-template-columns:.75fr 1.25fr;gap:55px}
    .quote-panel{padding:34px}
    .post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:1024px){
    .desktop-nav{display:flex}.menu-toggle{display:none}
    .nav-container{min-height:90px}
    .industry-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
    .waste-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .footer-grid{grid-template-columns:1.35fr .78fr 1fr 1.15fr;gap:37px}
    .size-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(min-width:1190px){
    .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .hero-layout{grid-template-columns:1.13fr .87fr;gap:75px}
    .hero-copy h1{font-size:clamp(3rem,4.1vw,4.4rem)}
}
@media(max-width:569px){
    .topbar-email{display:none!important}.topbar-right .social-icon{display:none}
    .topbar-inner{width:min(calc(100% - 24px),var(--container))}
    .topbar-quote{font-size:.75rem}
    .site-brand{max-width:150px}.brand-image{max-width:150px;max-height:54px}
    .nav-container{min-height:70px}
    .hero-layout{padding-top:53px;padding-bottom:105px}
    .hero-copy h1{font-size:2.45rem}.hero-actions .btn{flex:1 1 100%}
    .hero-photo{aspect-ratio:16/10}
    .trust-grid{grid-template-columns:1fr;gap:13px}
    .trust-grid>div{padding-bottom:10px;border-bottom:1px solid var(--line)}
    .stat:last-child{grid-column:1/-1}
    .newsletter-fields button{width:100%}
    .footer-grid{grid-template-columns:1fr 1fr}
    .footer-contact{grid-column:1/-1}
    .fact-callout{padding:20px;gap:13px}.fact-icon{font-size:1.5rem}
}
@media(max-width:360px){
    .container{width:calc(100% - 28px)}
    .hero-copy h1{font-size:2.15rem}
    .industry-grid{grid-template-columns:1fr}
    .nav-container{min-height:65px}
    .footer-grid{grid-template-columns:1fr}
    .hero-chips{gap:6px}
}
@media(prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
    .reveal{opacity:1!important;transform:none!important}
}

/* Original-site image unavailable: readable, brand-only alternative (not stock imagery). */
.acrs-image-fallback{display:flex;min-height:155px;width:100%;height:100%;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:25px;text-align:center;background:linear-gradient(135deg,#194669,#0b6666);color:#fff}
.acrs-image-fallback strong{font-size:clamp(1.5rem,3vw,2.3rem);letter-spacing:.045em;line-height:1.2}
.acrs-image-fallback small{max-width:280px;font-size:.78rem;font-weight:700;line-height:1.5;opacity:.88}
.acrs-logo-fallback{background:none;color:var(--acrs-navy);height:64px;min-height:0;padding:5px;gap:0;white-space:nowrap}
.acrs-logo-fallback strong{font-size:2rem;letter-spacing:.045em}
.acrs-logo-fallback small{font-size:.51rem;letter-spacing:.16em}
.site-brand .acrs-logo-fallback,.footer-logo .acrs-logo-fallback{width:190px}
.footer-logo .acrs-logo-fallback{color:#0b2545}
.hero-photo-frame .acrs-image-fallback,.service-image-wrap .acrs-image-fallback{min-height:100%;aspect-ratio:16 / 10}
.hero-photo-frame .acrs-image-fallback{aspect-ratio:5 / 4}
.review-avatar .acrs-image-fallback{padding:0;min-height:0;background:#e6f3f5;color:#0b2545}
.review-avatar .acrs-image-fallback strong{font-size:.68rem}.review-avatar .acrs-image-fallback small{display:none}
.regulation-logo .acrs-image-fallback{height:145px;min-height:145px;border-radius:8px}
.course-card .acrs-image-fallback{height:100px;min-height:100px;border-radius:10px}

.social-disabled{opacity:.55;cursor:default}.topbar-right .social-disabled{color:#e9f7fa}.footer-socials .social-disabled{color:#d8e8ed}
