
/* Torrance Drain Pros — site shell v4: deliberately high specificity to beat legacy page CSS */
body .tdp-site-header{display:block!important;position:relative!important;z-index:99999!important;background:#fff!important;color:#071d2b!important;border-bottom:1px solid rgba(7,29,43,.09)!important;box-shadow:0 4px 18px rgba(7,29,43,.06)!important;margin:0!important;padding:0!important;width:100%!important}
body .tdp-site-header .tdp-header-top{display:block!important;background:#fff!important;margin:0!important;padding:0!important}
body .tdp-site-header .tdp-header-inner{max-width:1180px!important;width:calc(100% - 40px)!important;margin:0 auto!important;padding:10px 0!important;min-height:70px!important;display:flex!important;align-items:center!important;gap:22px!important;position:relative!important}
body .tdp-site-header .tdp-brand{display:flex!important;flex-direction:column!important;gap:1px!important;min-width:205px!important;text-decoration:none!important;line-height:1.08!important;margin:0!important;padding:0!important;background:none!important;border:0!important}
body .tdp-site-header .tdp-brand-main{font:800 18px/1.08 Arial,Helvetica,sans-serif!important;color:#071d2b!important}
body .tdp-site-header .tdp-brand-sub{font:800 13px/1.08 Arial,Helvetica,sans-serif!important;color:#1268ed!important;letter-spacing:.01em!important}
body .tdp-site-header .tdp-desktop-nav{display:flex!important;align-items:center!important;gap:20px!important;margin:0 0 0 auto!important;padding:0!important;position:static!important;background:none!important;width:auto!important;height:auto!important}
body .tdp-site-header .tdp-desktop-nav>a,
body .tdp-site-header .tdp-nav-trigger{display:inline-flex!important;align-items:center!important;width:auto!important;height:auto!important;margin:0!important;padding:10px 0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:#183647!important;text-decoration:none!important;font:700 14px/1 Arial,Helvetica,sans-serif!important;white-space:nowrap!important;cursor:pointer!important}
body .tdp-site-header .tdp-desktop-nav>a:hover,
body .tdp-site-header .tdp-nav-trigger:hover{color:#1268ed!important}
body .tdp-site-header .tdp-nav-dropdown{display:flex!important;align-items:center!important;position:relative!important;margin:0!important;padding:0!important;width:auto!important;height:auto!important;background:none!important}
body .tdp-site-header .tdp-nav-trigger span{font-size:10px!important;margin-left:4px!important}

/* Critical dropdown reset: hidden until hover/focus */
body .tdp-site-header .tdp-dropdown-menu{
 display:none!important;position:absolute!important;left:50%!important;top:100%!important;
 transform:translateX(-50%)!important;min-width:285px!important;width:max-content!important;max-width:330px!important;
 margin:0!important;padding:9px!important;background:#fff!important;border:1px solid #dce5eb!important;
 border-radius:13px!important;box-shadow:0 18px 45px rgba(7,29,43,.16)!important;z-index:100000!important;
 opacity:1!important;visibility:visible!important
}
body .tdp-site-header .tdp-nav-dropdown:hover>.tdp-dropdown-menu,
body .tdp-site-header .tdp-nav-dropdown:focus-within>.tdp-dropdown-menu{display:block!important}
body .tdp-site-header .tdp-dropdown-menu:before{content:""!important;position:absolute!important;left:0!important;right:0!important;top:-12px!important;height:12px!important}
body .tdp-site-header .tdp-dropdown-menu>a{
 display:block!important;width:100%!important;margin:0!important;padding:10px 11px!important;
 background:#fff!important;border:0!important;border-radius:8px!important;box-shadow:none!important;
 color:#17394a!important;text-decoration:none!important;font:700 13px/1.25 Arial,Helvetica,sans-serif!important;
 text-align:left!important;white-space:nowrap!important
}
body .tdp-site-header .tdp-dropdown-menu>a:hover,
body .tdp-site-header .tdp-dropdown-menu>a:focus{background:#eef6ff!important;color:#1268ed!important}

body .tdp-site-header .tdp-header-actions{display:flex!important;align-items:center!important;gap:9px!important;margin:0!important;padding:0!important}
body .tdp-site-header .tdp-call-btn{display:flex!important;flex-direction:column!important;width:auto!important;margin:0!important;padding:8px 12px!important;background:#eef6ff!important;color:#0c58b8!important;border:1px solid #cfe4ff!important;border-radius:10px!important;box-shadow:none!important;text-decoration:none!important;font:800 14px/1.12 Arial,Helvetica,sans-serif!important;white-space:nowrap!important}
body .tdp-site-header .tdp-call-small{font:800 10px/1.1 Arial,Helvetica,sans-serif!important;text-transform:uppercase!important;letter-spacing:.07em!important;color:#587183!important;margin:0 0 2px!important}
body .tdp-site-header .tdp-request-btn{display:inline-flex!important;align-items:center!important;width:auto!important;margin:0!important;padding:12px 15px!important;background:linear-gradient(90deg,#1268ed,#17a8d8)!important;color:#fff!important;border:0!important;border-radius:10px!important;box-shadow:0 7px 18px rgba(18,104,237,.18)!important;text-decoration:none!important;font:800 14px/1.12 Arial,Helvetica,sans-serif!important;white-space:nowrap!important}
body .tdp-site-header .tdp-mobile-menu{display:none!important}

/* Footer hard reset against legacy page styles */
body .tdp-site-footer{display:block!important;background:#071d2b!important;color:#c6d4dc!important;margin:0!important;padding:0!important;width:100%!important;font-family:Arial,Helvetica,sans-serif!important}
body .tdp-site-footer .tdp-footer-main{padding:46px 20px 34px!important}
body .tdp-site-footer .tdp-footer-grid{max-width:1180px!important;margin:0 auto!important;display:grid!important;grid-template-columns:1.45fr 1fr 1fr 1fr!important;gap:34px!important}
body .tdp-site-footer .tdp-footer-col{display:flex!important;flex-direction:column!important;gap:9px!important}
body .tdp-site-footer .tdp-footer-col h2{font:800 14px/1.3 Arial,Helvetica,sans-serif!important;color:#fff!important;margin:0 0 13px!important;padding:0!important;text-transform:uppercase!important;letter-spacing:.06em!important}
body .tdp-site-footer .tdp-footer-col a{display:block!important;color:#c6d4dc!important;background:none!important;text-decoration:none!important;font:400 13px/1.35 Arial,Helvetica,sans-serif!important;margin:0!important;padding:0!important}
body .tdp-site-footer .tdp-footer-logo{display:inline-block!important;color:#fff!important;text-decoration:none!important;font:800 19px/1.2 Arial,Helvetica,sans-serif!important;margin:0 0 12px!important}
body .tdp-site-footer .tdp-footer-logo span{display:block!important;color:#5ec8ee!important;font-size:14px!important;margin-top:2px!important}
body .tdp-site-footer .tdp-footer-brand p{margin:0 0 15px!important;max-width:390px!important;color:#c6d4dc!important;font:400 14px/1.65 Arial,Helvetica,sans-serif!important}
body .tdp-site-footer .tdp-footer-contact{display:grid!important;gap:6px!important;font-size:14px!important}
body .tdp-site-footer .tdp-footer-contact>a{color:#fff!important;text-decoration:none!important;font-size:18px!important;font-weight:800!important}
body .tdp-site-footer .tdp-footer-contact>span{display:inline-block!important;width:max-content!important;background:rgba(94,200,238,.12)!important;border:1px solid rgba(94,200,238,.28)!important;color:#8cddf5!important;border-radius:999px!important;padding:4px 9px!important;font-size:11px!important;font-weight:800!important}
body .tdp-site-footer address{font-style:normal!important;line-height:1.55!important;color:#c6d4dc!important;margin-top:3px!important}
body .tdp-site-footer .tdp-footer-bottom{border-top:1px solid rgba(255,255,255,.09)!important;background:#051722!important}
body .tdp-site-footer .tdp-footer-bottom-inner{max-width:1180px!important;margin:0 auto!important;padding:16px 20px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important}
body .tdp-site-footer .tdp-footer-bottom p{margin:0!important;color:#94a9b5!important;font-size:12px!important}
body .tdp-site-footer .tdp-footer-bottom nav{display:flex!important;gap:16px!important}
body .tdp-site-footer .tdp-footer-bottom nav a{color:#b7c8d0!important;text-decoration:none!important;font-size:12px!important}

/* Mobile */
@media(max-width:1020px){
 body .tdp-site-header .tdp-desktop-nav{display:none!important}
 body .tdp-site-header .tdp-header-actions{margin-left:auto!important}
 body .tdp-site-footer .tdp-footer-grid{grid-template-columns:1.25fr 1fr 1fr!important}
 body .tdp-site-footer .tdp-footer-col:last-child{grid-column:2/4!important}
}
@media(max-width:760px){
 body .tdp-site-header .tdp-header-inner{width:calc(100% - 28px)!important;min-height:64px!important;padding:9px 0!important;gap:10px!important}
 body .tdp-site-header .tdp-brand{min-width:0!important}
 body .tdp-site-header .tdp-brand-main{font-size:16px!important}
 body .tdp-site-header .tdp-brand-sub{font-size:12px!important}
 body .tdp-site-header .tdp-header-actions{display:none!important}
 body .tdp-site-header .tdp-mobile-menu{display:block!important;margin-left:auto!important;position:relative!important}
 body .tdp-site-header .tdp-mobile-menu>summary{display:block!important;list-style:none!important;cursor:pointer!important;border:1px solid #cfdae3!important;border-radius:9px!important;padding:9px 12px!important;background:#fff!important;color:#071d2b!important;font:800 14px/1 Arial,Helvetica,sans-serif!important}
 body .tdp-site-header .tdp-mobile-menu>summary::-webkit-details-marker{display:none!important}
 body .tdp-site-header .tdp-mobile-panel{position:absolute!important;right:0!important;top:48px!important;width:min(310px,calc(100vw - 28px))!important;background:#fff!important;border:1px solid #dce5eb!important;border-radius:14px!important;padding:12px!important;box-shadow:0 18px 45px rgba(7,29,43,.17)!important;z-index:100000!important}
 body .tdp-site-header .tdp-mobile-panel nav{display:grid!important}
 body .tdp-site-header .tdp-mobile-panel nav>a{display:block!important;padding:11px 8px!important;border:0!important;border-bottom:1px solid #edf1f4!important;background:#fff!important;color:#17394a!important;text-decoration:none!important;font:700 14px/1.25 Arial,Helvetica,sans-serif!important}
 body .tdp-site-header .tdp-mobile-submenu{display:block!important;border-bottom:1px solid #edf1f4!important}
 body .tdp-site-header .tdp-mobile-submenu>summary{display:block!important;list-style:none!important;cursor:pointer!important;padding:11px 8px!important;background:#fff!important;color:#17394a!important;font:800 14px/1.25 Arial,Helvetica,sans-serif!important;position:relative!important}
 body .tdp-site-header .tdp-mobile-submenu>summary:after{content:"+"!important;position:absolute!important;right:8px!important}
 body .tdp-site-header .tdp-mobile-submenu[open]>summary:after{content:"−"!important}
 body .tdp-site-header .tdp-mobile-submenu>div{padding:0 0 8px 10px!important}
 body .tdp-site-header .tdp-mobile-submenu>div a{display:block!important;padding:8px!important;border:0!important;background:#fff!important;color:#486171!important;text-decoration:none!important;font:650 13px/1.25 Arial,Helvetica,sans-serif!important}
 body .tdp-site-header .tdp-mobile-call,
 body .tdp-site-header .tdp-mobile-request{display:block!important;text-align:center!important;text-decoration:none!important;border-radius:9px!important;padding:11px!important;margin-top:9px!important;font-weight:800!important}
 body .tdp-site-header .tdp-mobile-call{background:#eef6ff!important;color:#0c58b8!important}
 body .tdp-site-header .tdp-mobile-request{background:#1268ed!important;color:#fff!important}
 body .tdp-site-footer .tdp-footer-main{padding:34px 18px 26px!important}
 body .tdp-site-footer .tdp-footer-grid{grid-template-columns:1fr 1fr!important;gap:28px 24px!important}
 body .tdp-site-footer .tdp-footer-brand{grid-column:1/-1!important}
 body .tdp-site-footer .tdp-footer-col:last-child{grid-column:auto!important}
 body .tdp-site-footer .tdp-footer-bottom-inner{align-items:flex-start!important;flex-direction:column!important}
}
@media(max-width:500px){
 body .tdp-site-footer .tdp-footer-grid{grid-template-columns:1fr!important}
 body .tdp-site-footer .tdp-footer-brand,
 body .tdp-site-footer .tdp-footer-col:last-child{grid-column:auto!important}
}


/* ===== H1 visibility safeguard =====
   Keeps the approved page H1 visible on every page without altering hero layout. */
body .hero h1,
body .hero-copy h1,
body main h1,
body h1{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  filter:none!important;
  text-indent:0!important;
  clip:auto!important;
  clip-path:none!important;
  width:auto!important;
  height:auto!important;
  overflow:visible!important;
}
body .hero h1,
body .hero-copy h1{
  position:relative!important;
  z-index:3!important;
}


/* Do not let entrance-animation CSS hide critical above-the-fold hero copy. */
body .hero .reveal,
body .hero .reveal-left,
body .hero .reveal-right,
body .hero-copy.reveal,
body .hero-copy .reveal,
body .hero-copy .reveal-left,
body .hero-copy .reveal-right{
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
}


/* ===== Mobile sticky call CTA ===== */
.tdp-mobile-sticky-call{
  display:none!important;
}
@media(max-width:760px){
  body{
    padding-bottom:78px!important;
  }

  body .tdp-mobile-sticky-call{
    position:fixed!important;
    left:14px!important;
    right:14px!important;
    bottom:max(12px, env(safe-area-inset-bottom))!important;
    z-index:100500!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    min-height:54px!important;
    padding:13px 18px!important;
    border:1px solid rgba(255,255,255,.34)!important;
    border-radius:16px!important;
    background:linear-gradient(90deg,#1268ed,#17a8d8)!important;
    color:#fff!important;
    text-decoration:none!important;
    font:800 16px/1.1 Arial,Helvetica,sans-serif!important;
    letter-spacing:.01em!important;
    text-align:center!important;
    box-shadow:0 12px 30px rgba(0,54,120,.32),0 0 0 0 rgba(18,104,237,.45)!important;
    -webkit-tap-highlight-color:transparent!important;
    animation:tdpStickyPulse 2.2s ease-in-out infinite!important;
  }

  body .tdp-mobile-sticky-call:hover,
  body .tdp-mobile-sticky-call:focus,
  body .tdp-mobile-sticky-call:active{
    color:#fff!important;
    text-decoration:none!important;
  }

  body .tdp-mobile-sticky-call:active{
    transform:translateY(1px) scale(.99)!important;
  }

  body .tdp-mobile-sticky-call .tdp-sticky-icon{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:29px!important;
    height:29px!important;
    flex:0 0 29px!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.16)!important;
    font-size:17px!important;
    line-height:1!important;
    animation:tdpPhoneNudge 1.8s ease-in-out infinite!important;
  }

  body .tdp-mobile-sticky-call .tdp-sticky-text{
    color:#fff!important;
    font:800 16px/1.1 Arial,Helvetica,sans-serif!important;
  }
}

@keyframes tdpStickyPulse{
  0%,100%{
    box-shadow:0 12px 30px rgba(0,54,120,.32),0 0 0 0 rgba(18,104,237,.42)
  }
  50%{
    box-shadow:0 14px 34px rgba(0,54,120,.38),0 0 0 8px rgba(18,104,237,0)
  }
}
@keyframes tdpPhoneNudge{
  0%,100%{transform:rotate(0deg)}
  20%{transform:rotate(-8deg)}
  40%{transform:rotate(8deg)}
  60%{transform:rotate(-5deg)}
  80%{transform:rotate(5deg)}
}

@media(prefers-reduced-motion:reduce){
  body .tdp-mobile-sticky-call,
  body .tdp-mobile-sticky-call .tdp-sticky-icon{
    animation:none!important;
  }
}
/* ===== End mobile sticky call CTA ===== */
