/* ACS Mold Care — coordinated release, 26 October 2026.
   One authored override stylesheet. All images are illustrative.
   Preserve the original looping water-video hero and the original ACS logo. */
:root { --gold:#CFA968; --acs-blue:#087fb8; --acs-blue-light:#49b5e9; --acs-navy:#071f30; --acs-ink:#0d2b3c; --acs-border:#dce5e9; }
html { scroll-padding-top:108px; }
body { overflow-x:clip; }
.container { width:min(1200px,calc(100% - 64px)); }
/* Legitimate corporate header, original logo colors, no filter or fake SVG. */
.site-header { position:relative; z-index:100; background:#fff; color:var(--acs-ink); border-bottom:1px solid #dce6ea; box-shadow:0 7px 22px rgba(8,38,54,.055); }
.site-header:before { content:none; }
.site-header .header-inner { min-height:94px; height:auto; display:flex; gap:20px; align-items:center; }
.site-header .brand { display:block; flex:0 0 auto; width:276px; max-width:29%; padding:0; background:transparent; border:0; }
.site-header .official-logo { display:block; width:100%; height:auto; max-height:77px; object-fit:contain; filter:none!important; }
.site-header .desktop-nav { margin:auto; gap:clamp(10px,1.55vw,25px); }
.site-header .desktop-nav a { font-size:12px; color:#294657; font-weight:800; letter-spacing:-.01em; transition:color .2s; }
.site-header .desktop-nav a:hover,.site-header .desktop-nav a.selected { color:var(--acs-blue); }
.site-header .header-actions { gap:13px; }
.site-header .header-phone { color:#17394c; }
.site-header .header-phone b { font-size:13px; white-space:nowrap; }
.site-header .header-phone small { color:#526b7b; font-size:10px; }
.site-header .header-phone .ico { color:var(--acs-blue); }
.site-header .head-action { display:inline-flex; justify-content:center; padding:14px 16px; border-radius:5px; background:#087fb8; color:white; border:1px solid #087fb8; font-size:11px; white-space:nowrap; }
.site-header .head-action:hover { background:#036a9d; }
/* Approved water hero: moving water over a still-water poster, readable overlay, no flooding photo. */
.hero { position:relative; isolation:isolate; overflow:hidden; background:#071d2a; color:#fff; }
.hero .hero-photo { position:absolute!important; inset:0; z-index:0!important; background-color:#0c3349; background-image:url('/assets/moldcare/water-motion-poster.jpg')!important; background-position:center; background-size:cover; pointer-events:none; }
.hero .hero-photo::after { display:none!important; }
.hero .acs-hero-video { position:absolute!important; inset:0!important; display:block!important; z-index:1!important; width:100%!important; height:100%!important; object-fit:cover!important; opacity:1!important; filter:none!important; pointer-events:none; }
.hero:before { content:''; position:absolute; inset:0; z-index:2; pointer-events:none; background:linear-gradient(90deg,rgba(3,19,31,.84) 0%,rgba(4,24,37,.70) 48%,rgba(4,26,42,.38) 100%),linear-gradient(0deg,rgba(2,17,29,.48),transparent 52%); }
.hero .hero-grid,.hero .detail-hero-inner,.hero .hero-bottom { position:relative; z-index:3!important; }
.hero .hero-grid { min-height:660px; align-items:center; padding:90px 0; gap:clamp(30px,4vw,64px); }
.hero .hero-copy h1 { font-size:clamp(3.6rem,5.9vw,6rem); line-height:1.025; letter-spacing:-.065em; margin:22px 0 24px; }
.hero .hero-copy h1 em { color:#fff; }
.hero .hero-copy h1 em:after { content:''; display:block; width:76px; height:4px; background:var(--acs-blue-light); margin-top:20px; }
.hero .hero-sub { font-size:clamp(16px,1.5vw,19px); line-height:1.7; color:#e2ebee; }
.hero .eyebrow { color:#aeddf4; }
.hero .eyebrow-dash { background:#4eb4e5; }
.hero .btn-primary { background:var(--acs-blue); color:#fff; border-color:var(--acs-blue); }
.hero .btn-primary:hover { background:#056da1; }
.hero .btn-outline { background:rgba(0,0,0,.12); color:white; border-color:rgba(255,255,255,.75); }
.hero .btn-outline:hover { background:rgba(255,255,255,.13); }
.hero .hero-feature { margin-bottom:0; background:rgba(5,29,43,.78); border:1px solid rgba(255,255,255,.25); border-top:3px solid var(--acs-blue-light); border-radius:7px; backdrop-filter:blur(9px); padding:30px 29px; }
.hero .glass-topline { color:#95d6f0; }
.hero .hero-feature strong { color:white; }
.hero .hero-feature p { color:#d1e0e8; }
.hero .feature-list svg,.hero .hero-micro svg { color:#65c7ec; }
.hero .hero-bottom { background:#082c42; border-top:1px solid rgba(255,255,255,.13); }
.hero .hero-bottom b { color:#e5eff5; }
/* Image-led service cards, high-resolution photography with accessible text contrast. */
.intro-section { background:#f6f8f9; }
.section-top { gap:clamp(30px,5vw,80px); }
.section-top h2 { color:#0e2a39; }
.intro-section .service-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.service-card { position:relative; isolation:isolate; display:flex; flex-direction:column; align-items:flex-start; min-height:365px; padding:29px; overflow:hidden; border:0; border-radius:8px; background:#0a2b3e!important; color:white; box-shadow:0 13px 25px rgba(6,31,47,.09); transition:transform .25s,box-shadow .25s; }
.service-card:before { content:''; position:absolute; inset:0; z-index:-2; opacity:1!important; background-image:var(--acs-service-image)!important; background-position:center; background-size:cover; transform:scale(1.001); transition:transform .5s; }
.service-card:after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg,rgba(3,17,29,.95) 0%,rgba(2,25,41,.70) 54%,rgba(0,29,46,.18) 100%)!important; }
.service-card:hover { transform:translateY(-4px); box-shadow:0 23px 44px rgba(6,31,47,.18); }
.service-card:hover:before { transform:scale(1.045); }
.service-card .service-index { display:inline-block; font-size:10px; color:#d3edf9!important; letter-spacing:.15em; text-shadow:0 1px 4px rgba(0,0,0,.35); }
.service-card .service-icon { width:46px; height:46px; margin:auto 0 18px; color:#fff; background:rgba(5,108,157,.79); border:1px solid rgba(255,255,255,.35); }
.service-card h3 { font-size:clamp(21px,2vw,26px); color:#fff!important; margin:0 0 11px; line-height:1.14; letter-spacing:-.035em; }
.service-card p { color:#e4f0f4!important; font-size:13px; line-height:1.64; flex:0 0 auto; text-shadow:0 1px 4px rgba(0,0,0,.3); }
.service-card .service-go { margin-top:20px; padding-top:15px; border-top:1px solid rgba(255,255,255,.25); color:#fff!important; letter-spacing:.02em; }
.service-card:nth-child(1) { --acs-service-image:url('/assets/moldcare/water-extraction.jpg'); }
.service-card:nth-child(2) { --acs-service-image:url('/assets/moldcare/mold-treatment.jpg'); }
.service-card:nth-child(3) { --acs-service-image:url('/assets/moldcare/hurricane-damage.jpg'); }
.service-card:nth-child(4) { --acs-service-image:url('/assets/moldcare/commercial-restoration.jpg'); }
/* Each service page gets its own subject-specific imagery; home retains the original water video. */
.hero-detail.water-hero .hero-photo { background-image:url('/assets/moldcare/flood-cleanup.jpg')!important; }
.hero-detail.mold-hero .hero-photo { background-image:url('/assets/moldcare/mold-remediation.jpg')!important; }
.hero-detail.hurricane-hero .hero-photo { background-image:url('/assets/moldcare/hurricane-damage.jpg')!important; }
.hero-detail .acs-hero-video { opacity:.32!important; }
.acs-page-water .service-detail-grid .service-card:nth-child(1) { --acs-service-image:url('/assets/moldcare/flood-cleanup.jpg'); }
.acs-page-water .service-detail-grid .service-card:nth-child(2) { --acs-service-image:url('/assets/moldcare/water-extraction.jpg'); }
.acs-page-water .service-detail-grid .service-card:nth-child(3) { --acs-service-image:url('/assets/moldcare/commercial-restoration.jpg'); }
.acs-page-mold .service-detail-grid .service-card:nth-child(1) { --acs-service-image:url('/assets/moldcare/mold-treatment.jpg'); }
.acs-page-mold .service-detail-grid .service-card:nth-child(2) { --acs-service-image:url('/assets/moldcare/mold-remediation.jpg'); }
.acs-page-mold .service-detail-grid .service-card:nth-child(3) { --acs-service-image:url('/assets/moldcare/restored-interior.jpg'); }
.acs-page-hurricane .service-detail-grid .service-card:nth-child(1) { --acs-service-image:url('/assets/moldcare/storm-recovery.jpg'); }
/* Service detail cards remain readable: keep the same photography logic, without a random gradient. */
.service-detail-grid .service-grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.service-detail-grid .service-card { min-height:300px; }
.service-detail-grid .service-card>.ico { color:#fff; position:relative; margin:auto 0 20px; }
/* Branded spotlight uses actual subject photography and well-spaced copy. */
.spotlight { background:#071f30; }
.spotlight-grid { gap:clamp(40px,6vw,90px); }
.spotlight-visual { height:490px; border-radius:9px; overflow:hidden; }
.spotlight-photo { position:absolute; inset:0; background:url('/assets/moldcare/storm-recovery.jpg') center/cover no-repeat!important; }
.spotlight-visual:after { content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 56%,rgba(0,21,34,.45)); }
.spotlight-chip,.spotlight-stamp { z-index:2; }
.spotlight-chip { border-radius:3px; background:rgba(2,29,47,.78); }
.spotlight-copy h2 { color:white; }
.spotlight-copy h2 em { color:#79c8e7; }
.spotlight-copy p { color:#cbdae0; }
.spotlight-copy .btn-outline { background:transparent; color:white; border-color:#c2dce7; }
/* Process and lead-capture sections with legible hierarchy. */
.process-section { background:#eff3f4; }
.process-section .steps { border-color:#cad8df; }
.process-section .steps>div { border-color:#cad8df; }
.process-section .steps h3 { color:#123648; margin-top:25px; }
.process-section .steps b { color:var(--acs-blue); font-size:16px; }
.process-section .steps p { color:#4c6572; }
.lead-section { background:#071e2d; }
.lead-section .massive-phone { color:#8ed5f6; }
.request-card { border-radius:9px; box-shadow:0 25px 60px rgba(0,0,0,.2); }
.request-card input,.request-card select,.request-card textarea { max-width:100%; }
.request-card .btn-primary { background:#087fb8; color:white; }
.faq-section { background:#f6f8f9; }
/* The original logo must remain full-color in both header and footer. */
.acs-premium-footer { background:#071f30; color:#e4eef4; border-top:1px solid #264658; padding-top:0; }
.acs-premium-footer .footer-top { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.9fr) minmax(0,1fr); align-items:start; gap:clamp(30px,4vw,65px); padding-top:68px; padding-bottom:60px; }
.acs-premium-footer .acs-footer-logo { display:block; width:min(100%,295px); border-radius:5px; padding:12px 14px; background:white; }
.acs-premium-footer .acs-footer-logo img { display:block; width:100%; height:auto; }
.acs-premium-footer .acs-footer-about p { max-width:350px; margin:23px 0 18px; font-size:14px; line-height:1.75; color:#c2d5de; }
.acs-premium-footer .acs-footer-location { color:#9dbecd; font-size:12px; }
.acs-premium-footer .footer-links,.acs-premium-footer .footer-right { display:flex; align-items:flex-start; flex-direction:column; gap:16px; }
.acs-premium-footer .footer-links b,.acs-premium-footer .footer-right>b { color:#85b4ce; letter-spacing:.12em; font-size:11px; margin-bottom:9px; }
.acs-premium-footer .footer-links a { font-size:14px; color:#e9f0f5; line-height:1.5; }
.acs-premium-footer .footer-links a:hover { color:#8ddafa; }
.acs-premium-footer .footer-number { font-size:clamp(22px,2vw,29px); letter-spacing:-.04em; color:white; white-space:nowrap; font-weight:800; }
.acs-premium-footer .acs-footer-call { display:inline-flex; background:#087fb8; color:white; border-radius:5px; padding:15px 19px; font-size:11px; font-weight:800; }
.acs-premium-footer .acs-footer-request { font-size:13px; color:#c5e2f2; text-decoration:underline; text-underline-offset:4px; }
.acs-premium-footer .footer-base { border-top:1px solid #355466; padding-top:23px; padding-bottom:15px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; font-size:11px; color:#9db1c0; }
.acs-premium-footer .footer-base a { color:#c0d9e8; }
.acs-video-credit { display:block; text-align:center; font-size:10px; line-height:1.5; padding:12px 22px 24px; color:#9bafbb; opacity:.9; }
.acs-sticky-call { display:none; }
/* Make keyboard navigation clearly visible everywhere. */
.hero a:focus-visible,.site-header a:focus-visible,.menu-btn:focus-visible,.service-card:focus-visible,.acs-premium-footer a:focus-visible,.request-card input:focus-visible,.request-card select:focus-visible,.request-card textarea:focus-visible,.request-card button:focus-visible { outline:3px solid #4bbbf0; outline-offset:4px; }
/* Desktop shell switches to touch-friendly navigation before links collide. */
@media(max-width:1160px) {
 .site-header .desktop-nav,.site-header .head-action { display:none; }
 .site-header .header-phone { display:flex; }
 .site-header .menu-btn { display:flex; width:44px; height:42px; padding:10px; flex-direction:column; justify-content:center; gap:5px; border:1px solid #b6cad6; border-radius:4px; background:#fff; }
 .site-header .menu-btn span { display:block; height:2px; width:100%; background:#123b52; }
 .site-header .header-actions { margin-left:auto; }
 .site-header .mobile-menu { background:#09293c; }
 .site-header .mobile-menu a { color:#fff; }
 .site-header .mobile-menu a:hover { color:#85d8fb; }
}
@media(max-width:860px) {
 .container { width:calc(100% - 42px); }
 .site-header .header-inner { min-height:79px; }
 .site-header .brand { width:252px; max-width:57%; }
 .site-header .header-phone { display:none; }
 .hero .hero-grid { grid-template-columns:1fr; padding:65px 0 58px; gap:30px; min-height:unset; }
 .hero .hero-copy h1 { font-size:clamp(2.8rem,8.6vw,4.7rem); }
 .hero .hero-feature { max-width:620px; }
 .hero:before { background:linear-gradient(90deg,rgba(3,19,31,.84),rgba(3,19,31,.53)),linear-gradient(0deg,rgba(3,19,31,.35),transparent); }
 .intro-section .service-grid,.service-detail-grid .service-grid.three { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .spotlight-grid,.lead-grid { gap:36px; }
 .spotlight-visual { height:420px; }
 .acs-premium-footer .footer-top { grid-template-columns:1fr 1fr; gap:34px; padding:50px 0; }
 .acs-premium-footer .acs-footer-about { grid-column:1/-1; }
 .acs-sticky-call { display:block; position:fixed; bottom:0; left:0; right:0; z-index:150; padding:15px 16px calc(15px + env(safe-area-inset-bottom)); text-align:center; color:white; font-size:14px; font-weight:800; background:#087fb8; box-shadow:0 -5px 25px rgba(0,0,0,.25); }
 body { padding-bottom:calc(54px + env(safe-area-inset-bottom)); }
}
@media(max-width:600px) {
 .container { width:calc(100% - 36px); }
 .site-header .header-inner { min-height:73px; }
 .site-header .brand { width:230px; max-width:calc(100% - 70px); }
 .hero .hero-grid { padding:49px 0 45px; gap:26px; }
 .hero .hero-copy h1 { font-size:clamp(2.65rem,10.3vw,3.7rem); }
 .hero .hero-sub { font-size:15px; }
 .hero .hero-cta { flex-direction:column; align-items:stretch; }
 .hero .hero-cta .btn { min-height:55px; width:100%; justify-content:space-between; }
 .hero .hero-feature { padding:22px; }
 .hero .hero-bottom .container { gap:9px; }
 .intro-section .service-grid,.service-detail-grid .service-grid.three { grid-template-columns:1fr; gap:15px; }
 .service-card { min-height:325px; padding:26px; }
 .service-detail-grid .service-card { min-height:295px; }
 .service-card h3 { font-size:23px; }
 .spotlight-visual { height:320px; }
 .spotlight-grid { gap:28px; }
 .process-section .steps { grid-template-columns:1fr 1fr; }
 .process-section .steps h3 { margin-top:12px; }
 .request-card { padding:24px 18px; }
 .acs-premium-footer .footer-top { grid-template-columns:1fr; gap:36px; padding:43px 0; }
 .acs-premium-footer .acs-footer-about { grid-column:auto; }
 .acs-premium-footer .acs-footer-logo { width:min(100%,265px); }
 .acs-premium-footer .footer-base { display:flex; flex-direction:column; gap:12px; }
 .acs-premium-footer .footer-number { font-size:26px; }
 .acs-premium-footer .footer-right { gap:14px; }
}
@media(max-width:390px) { .site-header .brand { width:215px; } .hero .hero-copy h1 { font-size:clamp(2.45rem,10vw,3.15rem); } }
@media(prefers-reduced-motion:reduce) { .hero .acs-hero-video { display:none!important; } .service-card:before,.service-card { transition:none; } }

/* ACS production quality layer: affiliation, informed-choice terms, mobile CTA */
.acs-brand-bridge{background:#062334;color:#bed5df;font:700 10px/1.3 Inter,Arial,sans-serif;letter-spacing:.12em;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.acs-brand-bridge .container{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.acs-brand-bridge span{color:#36a9d5}.acs-brand-bridge a{color:#fff;text-decoration:underline;text-underline-offset:3px}.acs-brand-bridge a:hover{color:#83d5f7}
.acs-local-section{background:#f1f6f7;padding:70px 0;border-top:1px solid #dbe9eb}.acs-local-content{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:60px;align-items:center}
.acs-local-content h2,.acs-provider-inner h2{font-size:clamp(28px,3.4vw,44px);letter-spacing:-.035em;line-height:1.15;color:#0c3547;margin:12px 0 20px}.acs-local-content h2 em,.acs-provider-inner h2 em{font-style:normal;color:#087d9f}.acs-local-content p,.acs-provider-inner p{color:#3d5866;line-height:1.75;font-size:16px}
.acs-local-cta{background:#fff;padding:32px;border:1px solid #d0e0e4;border-radius:16px;box-shadow:0 12px 38px rgba(4,39,55,.08);display:flex;flex-direction:column;gap:14px}.acs-local-cta strong{font-size:21px;color:#10394c}.acs-local-cta p{margin:0}.acs-local-cta .btn{display:flex;justify-content:center}.acs-local-phone{color:#086f93;font-weight:800;text-align:center}
.acs-provider-section{padding:58px 0;background:#f9fbfb;border-top:1px solid #e2ecee}.acs-provider-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:35px;align-items:center}.acs-provider-inner p{max-width:830px}.acs-provider-inner a,.acs-provider-notice a{color:#08799e;text-underline-offset:3px}.acs-provider-actions{display:flex;flex-direction:column;gap:12px;align-items:flex-start;font-weight:700}.acs-provider-notice{margin:15px 0 0;font-size:12px;line-height:1.65;color:#4d6370}.acs-premium-footer .footer-base{flex-wrap:wrap}.acs-premium-footer .footer-base a{color:#d6eff9;text-decoration:underline;text-underline-offset:3px}
.acs-mobile-ctas{display:none}.acs-sticky-call{display:none!important}
@media(max-width:860px){.acs-local-content,.acs-provider-inner{grid-template-columns:1fr;gap:22px}.acs-local-section{padding:48px 0}.acs-provider-section{padding:42px 0}.acs-mobile-ctas{position:fixed;bottom:0;left:0;right:0;z-index:160;display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#062334;box-shadow:0 -6px 30px rgba(0,0,0,.3)}.acs-mobile-ctas a{display:flex;justify-content:center;align-items:center;min-height:49px;border-radius:9px;font-size:13px;font-weight:800;text-decoration:none;letter-spacing:.015em}.acs-mobile-call{background:#f1f6f8;color:#0b3348}.acs-mobile-estimate{background:#148abd;color:#fff}body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.acs-provider-actions{flex-direction:row;flex-wrap:wrap}}
@media(max-width:420px){.acs-brand-bridge{font-size:9px;letter-spacing:.06em}.acs-local-cta{padding:23px}.acs-mobile-ctas a{font-size:12px}}
