/*
Theme Name: Dog Poop Dudes
Theme URI: https://dogpoopdudes.com
Author: 55 Social Management
Author URI: https://55socialmanagement.com
Description: Custom theme for The Dog Poop Dudes pet waste removal company.
Version: 1.0.0
License: Private
Text Domain: dogpoopdudes
*/



/* ── Font safety reset ── */
* { font-style: normal !important; }
h1,h2,h3,h4,h5,h6 { font-family: 'Fredoka One', Arial, sans-serif; font-style: normal !important; }
body, p, a, input, select, textarea, button, label, li, span { font-family: 'Nunito', Arial, sans-serif; font-style: normal !important; }

:root{--red:#D62B2B;--rd:#B01C1C;--navy:#1A2B52;--nvl:#2A3F72;--yellow:#F5C400;--green:#4CAF50;--cream:#FFF9F0;--text:#1a1a1a}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Nunito',sans-serif;color:var(--text);background:#fff;overflow-x:hidden}
nav{background:#fff;border-bottom:3px solid var(--red);padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;height:68px;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.logo{display:flex;align-items:center;gap:.4rem;text-decoration:none}
.logo img{height:54px;width:auto}
.logo-txt{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1rem;color:var(--red);line-height:1.15}
.nav-links{display:flex;gap:.1rem;list-style:none;align-items:center}
.nav-links a{color:var(--navy);text-decoration:none;font-weight:800;font-size:.76rem;padding:.35rem .55rem;border-radius:6px;transition:background .2s,color .2s;text-transform:uppercase;letter-spacing:.04em}
.nav-links a:hover{background:rgba(214,43,43,.1);color:var(--red)}
.nav-links a.active{color:var(--red)}
.nav-cta{background:var(--red)!important;color:#fff!important;border-radius:50px!important;padding:.42rem 1rem!important}
.nav-cta:hover{background:var(--rd)!important}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:.4rem;background:none;border:none}
.hamburger span{display:block;width:24px;height:2px;background:var(--navy);border-radius:2px}
@media(max-width:860px){
  .nav-links{display:none;flex-direction:column;position:absolute;top:68px;left:0;right:0;background:#fff;border-bottom:3px solid var(--red);padding:.75rem;gap:.2rem;box-shadow:0 4px 12px rgba(0,0,0,.1);z-index:99}
  .nav-links.open{display:flex}
  .nav-links a{font-size:.88rem;padding:.5rem 1rem;border-radius:8px;width:100%}
  .hamburger{display:flex}
}
/* shared layout */
section{padding:3.5rem 2rem}
.wrap{max-width:1080px;margin:0 auto}
.tag{display:inline-block;background:var(--red);color:#fff;font-weight:900;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;padding:.2rem .8rem;border-radius:50px;margin-bottom:.65rem}
h2{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:clamp(1.7rem,3.5vw,2.65rem);color:var(--navy);margin-bottom:.75rem;line-height:1.15}
.sub{font-size:.97rem;color:#555;max-width:560px;margin-bottom:2rem;font-weight:600;line-height:1.7}
.btn{font-family:'Nunito',sans-serif;font-weight:900;font-size:.95rem;padding:.78rem 1.75rem;border-radius:50px;border:none;cursor:pointer;text-decoration:none;display:inline-block;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.18)}
.btn-red{background:var(--red);color:#fff}
.btn-navy{background:var(--navy);color:#fff}
.btn-yellow{background:var(--yellow);color:var(--navy)}
.btn-outline{background:transparent;color:var(--navy)!important;border:2.5px solid var(--navy)}
.btn-outline:hover{background:var(--navy);color:#fff!important}
.bg-cream{background:var(--cream)}
.tc{text-align:center}
.mt{margin-top:1.75rem}
/* trust bar */
.trust{background:var(--red);padding:.75rem 2rem;display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}
.trust-item{display:flex;align-items:center;gap:.4rem;font-weight:800;color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}
/* steps */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(195px,1fr));gap:1.25rem}
.step{background:var(--cream);border:3px solid transparent;border-radius:16px;padding:1.6rem 1.3rem;text-align:center;transition:border-color .2s,transform .2s}
.step:hover{border-color:var(--red);transform:translateY(-4px)}
.step-n{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:2.4rem;color:var(--red);display:block}
.step-i{font-size:1.85rem;display:block;margin:.2rem 0 .6rem}
.step h3{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1.15rem;color:var(--navy);margin-bottom:.4rem}
.step p{font-size:.87rem;color:#555;font-weight:600;line-height:1.6}
/* svc cards */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.25rem}
.svc{background:#fff;border:3px solid #EEE;border-radius:15px;padding:1.75rem;position:relative;overflow:hidden;transition:border-color .2s,transform .2s}
.svc::before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:var(--red)}
.svc:hover{border-color:var(--red);transform:translateY(-4px)}
.svc-i{font-size:1.85rem;margin-bottom:.65rem;display:block}
.svc h3{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1.2rem;color:var(--navy);margin-bottom:.5rem}
.svc p{color:#555;font-weight:600;font-size:.87rem;line-height:1.65}
/* pricing */
.price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1.25rem;align-items:start}
.pc{border-radius:18px;padding:1.75rem 1.6rem;border:3px solid #EEE;background:#fff;text-align:center;transition:transform .2s,box-shadow .2s}
.pc:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.08)}
.pc.pop{background:var(--navy);border-color:var(--red);transform:scale(1.04)}
.pc.pop:hover{transform:scale(1.04) translateY(-4px)}
.pop-badge{background:var(--red);color:#fff;font-weight:900;font-size:.64rem;text-transform:uppercase;letter-spacing:.1em;padding:.15rem .75rem;border-radius:50px;display:inline-block;margin-bottom:.7rem}
.pc h3{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1.3rem;color:var(--navy);margin-bottom:.18rem}
.pc.pop h3{color:#fff}
.pc-freq{font-size:.7rem;color:#999;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.7rem}
.pc.pop .pc-freq{color:rgba(255,255,255,.4)}
.pc-amt{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:2.75rem;color:var(--navy);line-height:1}
.pc.pop .pc-amt{color:var(--yellow)}
.pc-per{font-size:.77rem;color:#888;font-weight:700;margin-bottom:.28rem;display:block}
.pc.pop .pc-per{color:rgba(255,255,255,.5)}
.pc-mo{font-size:.72rem;color:#bbb;font-weight:700;margin-bottom:1.25rem;display:block}
.pc.pop .pc-mo{color:rgba(255,255,255,.35)}
.pc-feats{list-style:none;margin-bottom:1.35rem;text-align:left}
.pc-feats li{padding:.37rem 0;font-weight:700;font-size:.84rem;color:#444;border-bottom:1px solid #F0F0F0;display:flex;align-items:center;gap:.4rem}
.pc.pop .pc-feats li{color:rgba(255,255,255,.85);border-bottom-color:rgba(255,255,255,.1)}
.chk{color:var(--green);font-size:.88rem}
.pc.pop .chk{color:var(--yellow)}
/* one-time */
.ot{background:var(--cream);border-radius:18px;padding:1.75rem;border:3px solid #EEE;text-align:center}
.ot h3{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1.3rem;color:var(--navy);margin-bottom:.2rem}
.ot-amt{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:2.75rem;color:var(--red);line-height:1;margin:.45rem 0 .3rem}
.ot p{color:#555;font-weight:600;font-size:.84rem;line-height:1.6;margin-bottom:1.25rem}
/* reviews */
.rev-section{background:var(--navy)}
.rev-section h2{color:var(--yellow)}
.rev-section .sub{color:rgba(255,255,255,.7)}
.rev-section .tag{background:rgba(245,196,0,.18);color:var(--yellow)}
.rev-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:1.25rem}
.rev-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:15px;padding:1.5rem}
.stars{color:var(--yellow);font-size:.92rem;margin-bottom:.7rem}
.rev-card p{color:rgba(255,255,255,.85);font-weight:600;font-size:.87rem;line-height:1.7;margin-bottom:.85rem}
.reviewer{display:flex;align-items:center;gap:.65rem}
.rav{width:38px;height:38px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1rem;color:#fff;flex-shrink:0}
.rname{font-weight:900;color:#fff;font-size:.84rem}
.rloc{font-size:.73rem;color:rgba(255,255,255,.5);font-weight:600}
/* map */
.map-ph{background:var(--cream);border:3px dashed var(--red);border-radius:15px;height:260px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.55rem;font-size:2.75rem;margin-bottom:1.65rem}
.map-ph p{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1.05rem;color:var(--navy)}
.map-ph small{font-size:.79rem;font-family:'Nunito',sans-serif;font-weight:600;color:#888}
.zip-box{background:var(--red);border-radius:16px;padding:1.75rem;text-align:center;max-width:430px;margin:0 auto}
.zip-box h3{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1.45rem;color:#fff;margin-bottom:.4rem}
.zip-box p{color:rgba(255,255,255,.85);font-weight:700;margin-bottom:.95rem;font-size:.85rem}
.zip-row{display:flex;gap:.5rem}
.zip-row input{flex:1;padding:.7rem .9rem;border-radius:50px;border:3px solid var(--navy);font-size:.92rem;font-family:'Nunito',sans-serif;font-weight:700;outline:none}
.areas{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:.5rem;margin-top:1.6rem}
.apill{background:var(--cream);border-radius:8px;padding:.55rem .8rem;font-weight:700;font-size:.83rem;color:var(--navy);display:flex;align-items:center;gap:.32rem}
/* about */
.about-split{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
@media(max-width:768px){.about-split,.contact-grid{grid-template-columns:1fr}.pc.pop{transform:scale(1)}}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-top:1.6rem}
.stat{background:var(--cream);border-radius:11px;padding:1rem;text-align:center;border-left:4px solid var(--red)}
.stat-n{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1.8rem;color:var(--navy);display:block}
.stat-l{font-size:.7rem;font-weight:800;color:#666;text-transform:uppercase;letter-spacing:.06em}
/* faq */
.faq-list{max-width:660px;margin:0 auto}
.faq-item{border-bottom:2px solid #EEE;padding:1.15rem 0}
.faq-q{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1rem;color:var(--navy);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;background:none;border:none;width:100%;text-align:left}
.faq-q::after{content:'＋';font-size:1.3rem;color:var(--red);flex-shrink:0;transition:transform .2s}
.faq-item.open .faq-q::after{transform:rotate(45deg)}
.faq-a{display:none;padding-top:.55rem;color:#555;font-weight:600;font-size:.87rem;line-height:1.7}
.faq-item.open .faq-a{display:block}
/* blog */
.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(275px,1fr));gap:1.25rem}
.blog-card{border-radius:15px;overflow:hidden;border:3px solid #EEE;transition:transform .2s,border-color .2s;text-decoration:none;display:block;color:inherit}
.blog-card:hover{transform:translateY(-4px);border-color:var(--red)}
.blog-thumb{height:145px;background:var(--navy);display:flex;align-items:center;justify-content:center;font-size:3rem}
.blog-body{padding:1.2rem}
.blog-tag{background:#EEF0FF;color:var(--navy);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;padding:.15rem .5rem;border-radius:50px;margin-bottom:.5rem;display:inline-block}
.blog-card h3{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1.05rem;color:var(--navy);margin-bottom:.32rem;line-height:1.3}
.blog-card p{font-size:.83rem;color:#666;font-weight:600;line-height:1.6}
/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start}
.c-item{display:flex;gap:.85rem;align-items:flex-start;margin-bottom:1.2rem}
.c-icon{width:42px;height:42px;background:var(--red);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;color:#fff}
.c-item h4{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;color:var(--navy);margin-bottom:.14rem}
.c-item p{font-size:.85rem;color:#555;font-weight:600}
.social-links{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.2rem}
.soc{display:flex;align-items:center;gap:.4rem;padding:.52rem .95rem;border-radius:50px;font-weight:800;font-size:.8rem;text-decoration:none;transition:transform .15s;font-family:'Nunito',sans-serif}
.soc:hover{transform:translateY(-2px)}
.soc-fb{background:#1877F2;color:#fff}
.soc-ig{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);color:#fff}
.soc-gr{background:var(--green);color:#fff}
/* form */
.form-card{background:#fff;border-radius:18px;padding:1.9rem;border:3px solid #EEE;box-shadow:0 8px 26px rgba(0,0,0,.06)}
.form-card h3{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1.5rem;color:var(--navy);margin-bottom:.32rem}
.form-sub{color:#666;font-weight:600;font-size:.83rem;margin-bottom:1.15rem}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-bottom:.85rem}
@media(max-width:580px){.frow{grid-template-columns:1fr}}
.fg{margin-bottom:.78rem}
label{display:block;font-weight:900;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--navy);margin-bottom:.27rem}
label .req{color:var(--red)}
input[type="text"],input[type="email"],input[type="tel"],select,textarea{width:100%;padding:.7rem .88rem;border:2px solid #E0E0E0;border-radius:8px;font-size:.88rem;font-family:'Nunito',sans-serif;font-weight:600;color:var(--text);background:#fff;transition:border-color .2s;outline:none;-webkit-appearance:none;appearance:none}
input:focus,select:focus,textarea:focus{border-color:var(--red)}
textarea{resize:vertical;min-height:82px}
.hdiv{border:none;border-top:2px solid #EEE;margin:1.1rem 0}
.fsect{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:.95rem;color:var(--navy);margin-bottom:.72rem;display:flex;align-items:center;gap:.32rem}
.dog-row{background:var(--cream);border-radius:10px;padding:.95rem;margin-bottom:.72rem}
.dog-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:.62rem}
.dog-title{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:.88rem;color:var(--navy)}
.rm-dog{background:#fee;color:#cc0000;border:none;border-radius:6px;padding:.19rem .58rem;font-weight:900;font-size:.72rem;cursor:pointer;font-family:'Nunito',sans-serif}
.add-dog{background:var(--cream);color:var(--navy);border:2px dashed var(--navy);border-radius:8px;padding:.55rem;width:100%;font-family:'Nunito',sans-serif;font-weight:900;font-size:.83rem;cursor:pointer;margin-bottom:.72rem;transition:background .2s}
.add-dog:hover{background:var(--yellow)}
.terms-box{background:var(--cream);border-radius:8px;padding:.78rem;font-size:.74rem;color:#666;font-weight:600;line-height:1.6;margin-bottom:.78rem;max-height:98px;overflow-y:auto}
.cbrow{display:flex;align-items:flex-start;gap:.58rem;margin-bottom:.72rem}
.cbrow input[type="checkbox"]{width:16px;height:16px;flex-shrink:0;margin-top:2px;accent-color:var(--navy)}
.cbrow label{font-size:.77rem;text-transform:none;letter-spacing:0;color:#444;font-weight:700;margin-bottom:0}
.api-note{background:#FFF5F5;border-left:4px solid var(--red);border-radius:0 8px 8px 0;padding:.68rem .88rem;font-size:.77rem;font-weight:700;color:var(--navy);margin-bottom:1.1rem;display:flex;align-items:center;gap:.32rem}
.pips{display:flex;gap:.4rem;margin-bottom:1.45rem}
.pip{flex:1;height:5px;background:#EEE;border-radius:50px;transition:background .3s}
.pip.on{background:var(--red)}
.err{background:#fee;border:2px solid #c00;border-radius:8px;padding:.58rem .88rem;color:#c00;font-weight:700;font-size:.83rem;margin-bottom:.72rem;display:none}
.err.show{display:block}
.loading{display:none;text-align:center;padding:.72rem;font-weight:800;color:var(--navy)}
.loading.show{display:block}
.success{display:none;text-align:center;padding:2rem 1rem}
.success.show{display:block}
.s-icon{font-size:3.75rem;display:block;margin-bottom:.72rem}
.success h3{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:1.6rem;color:var(--navy);margin-bottom:.52rem}
.success p{color:#555;font-weight:600}
/* cta strip */
.cta-strip{background:var(--red);padding:3rem 2rem;text-align:center}
.cta-strip h2{color:#fff;margin-bottom:.52rem}
.cta-strip p{color:rgba(255,255,255,.88);font-weight:700;font-size:.98rem;margin-bottom:1.45rem}
/* footer */
footer{background:var(--navy);color:rgba(255,255,255,.7);padding:2.5rem 2rem 1.5rem}
.foot-in{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1.75rem}
@media(max-width:768px){.foot-in{grid-template-columns:1fr 1fr}}
.foot-logo{height:58px;width:auto;margin-bottom:.62rem}
.foot-brand p{font-size:.79rem;line-height:1.7;font-weight:600;max-width:190px}
.foot-soc{display:flex;gap:.48rem;margin-top:.85rem;flex-wrap:wrap}
.foot-soc a{display:flex;align-items:center;gap:.26rem;color:rgba(255,255,255,.8);text-decoration:none;font-size:.74rem;font-weight:700;padding:.26rem .62rem;border-radius:50px;border:1px solid rgba(255,255,255,.2);transition:all .2s}
.foot-soc a:hover{background:var(--red);color:#fff;border-color:var(--red)}
.foot-col h4{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;color:var(--yellow);font-size:.88rem;margin-bottom:.72rem}
.foot-col ul{list-style:none}
.foot-col li{margin-bottom:.38rem}
.foot-col a{color:rgba(255,255,255,.65);text-decoration:none;font-size:.79rem;font-weight:600;transition:color .2s}
.foot-col a:hover{color:var(--yellow)}
.foot-bottom{max-width:1080px;margin:1.45rem auto 0;padding-top:1.1rem;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;font-size:.73rem;font-weight:600;flex-wrap:wrap;gap:.32rem}
/* hero specifics */
.hero{background:#fff;padding:2.75rem 2rem 4rem;text-align:center;position:relative;overflow:hidden}
.hero-bg{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(160deg,#fff 45%,#FFF3F3 100%);z-index:0}
.hero>*{position:relative;z-index:1}
.hero-wave{position:absolute;bottom:-2px;left:0;right:0;height:52px;background:var(--red);clip-path:ellipse(55% 100% at 50% 100%);z-index:1}
.hero-badge{display:inline-block;background:var(--navy);color:#fff;font-weight:900;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;padding:.25rem .9rem;border-radius:50px;margin-bottom:.95rem}
.hero-logo img{width:clamp(175px,26vw,250px);height:auto;animation:float 4s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
.hero h1{font-family:'Fredoka One',Arial,sans-serif;font-style:normal;font-size:clamp(2rem,5vw,3.5rem);color:var(--navy);line-height:1.1;margin-bottom:.85rem}
.hero h1 em{color:var(--red);font-style:normal}
.hero p{color:#444;font-size:1.02rem;max-width:500px;margin:0 auto 1.75rem;font-weight:600;line-height:1.65}
.hero-btns{display:flex;gap:.85rem;justify-content:center;flex-wrap:wrap;padding-bottom:3.25rem}


/* ── Promo Banner ── */
.promo-banner {
  background: var(--red);
  color: #fff;
  padding: .75rem 3rem;
  text-align: center;
  font-family: 'Nunito', Arial, sans-serif;
  font-size: 1rem;
  font-weight: 900;
  position: relative;
  line-height: 1.4;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.promo-banner p {
  margin: 0;
  color: #fff;
}
.promo-link {
  color: #fff;
  font-weight: 900;
  text-decoration: none;
  border-bottom: 2px solid rgba(255,255,255,.6);
  padding-bottom: 1px;
  transition: border-color .2s, opacity .2s;
  white-space: nowrap;
}
.promo-link:hover { border-color: #fff; opacity: .85; }
.promo-close {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  font-size: 1rem;
  color: rgba(255,255,255,.7);
  cursor: pointer;
  line-height: 1;
  font-family: 'Nunito', Arial, sans-serif;
  padding: .25rem;
}
.promo-close:hover { color: #fff; }
@media(max-width:600px) {
  .promo-banner { font-size: .82rem; padding: .7rem 2.5rem; letter-spacing: .04em; }
}

/* ── Button color fixes ── */
.btn, .btn-red, .btn-navy, .btn-yellow,
.btn:visited, .btn-red:visited, .btn-navy:visited,
a.btn, a.btn-red, a.btn-navy, a.btn-yellow,
a.btn:visited, a.btn-red:visited, a.btn-navy:visited,
a.btn:hover, a.btn-red:hover, a.btn-navy:hover {
  color: #fff !important;
  text-decoration: none !important;
}
.btn-yellow, a.btn-yellow, a.btn-yellow:visited, a.btn-yellow:hover {
  color: var(--navy) !important;
}
.nav-cta, .nav-cta:visited, .nav-cta:hover {
  color: #fff !important;
}
.lf-submit, .q-submit {
  color: #fff !important;
}
/* Kill WP default link colors inside buttons */
.btn *, .btn-red *, .btn-navy * { color: inherit !important; }

/* ── Footer font color fixes ── */
footer, footer p, footer li, footer span, footer div {
  color: rgba(255,255,255,.7) !important;
}
footer h4 { color: var(--yellow) !important; }
footer a { color: rgba(255,255,255,.65) !important; }
footer a:hover { color: var(--yellow) !important; }
.foot-bottom, .foot-bottom span { color: rgba(255,255,255,.5) !important; }

/* ══ FOOTER FORCE WHITE — nuclear override ══ */
footer { color: rgba(255,255,255,.7) !important; }
footer p,
footer li,
footer span,
footer div,
footer small { color: rgba(255,255,255,.7) !important; }
footer h4 { color: #F5C400 !important; }
footer a,
footer a:link,
footer a:visited { color: rgba(255,255,255,.65) !important; text-decoration: none !important; }
footer a:hover { color: #F5C400 !important; }
.foot-bottom { color: rgba(255,255,255,.45) !important; border-top: 1px solid rgba(255,255,255,.1) !important; }
.foot-bottom span,
.foot-bottom a { color: rgba(255,255,255,.45) !important; }
.foot-brand p { color: rgba(255,255,255,.7) !important; }

/* ── Social buttons force white text ── */
.soc, .soc:link, .soc:visited, .soc:hover,
.soc-fb, .soc-ig, .soc-gr,
.soc-fb:link, .soc-ig:link, .soc-gr:link,
.soc-fb:visited, .soc-ig:visited, .soc-gr:visited,
.soc-fb:hover, .soc-ig:hover, .soc-gr:hover {
  color: #fff !important;
  text-decoration: none !important;
}

/* ── Kill WordPress default green link color globally ── */
a { color: inherit; }
a:hover { color: inherit; }
.entry-content a, .wp-block-button a { color: var(--red); }

/* Social buttons — absolute override */
a.soc, a[href*="facebook.com/dogpoopdudes"],
a[href*="instagram.com/thedogpoopdudes2"],
a[href*="g.page/r/CcTWtgMhj"] {
  color: #ffffff !important;
  text-decoration: none !important;
}
a.soc:hover,
a[href*="facebook.com/dogpoopdudes"]:hover,
a[href*="instagram.com/thedogpoopdudes2"]:hover,
a[href*="g.page/r/CcTWtgMhj"]:hover {
  color: #ffffff !important;
  opacity: .85;
}

/* ══ BUTTON COLOR NUCLEAR ══ */
a.btn,a.btn-red,a.btn-navy,
a.btn:link,a.btn:visited,a.btn:hover,a.btn:active,
a.btn-red:link,a.btn-red:visited,a.btn-red:hover,
a.btn-navy:link,a.btn-navy:visited,a.btn-navy:hover,
.pc a,a.btn-navy,a.btn-red,
section a.btn,section a.btn-red,section a.btn-navy,
.pc a.btn,.pc a.btn-navy,.pc a.btn-red,
.cta-strip a,.sp-hero a.btn,.ot a.btn {
    color: #ffffff !important;
    text-decoration: none !important;
}
a.btn-yellow,a.btn-yellow:link,a.btn-yellow:visited,a.btn-yellow:hover {
    color: #1A2B52 !important;
}

/* ══ NUCLEAR BUTTON WHITE TEXT ══ */
a[class*="btn"] { color: #ffffff !important; text-decoration: none !important; }
a[class*="btn"]:link,a[class*="btn"]:visited,
a[class*="btn"]:hover,a[class*="btn"]:active { color: #ffffff !important; }
a.btn-yellow, a.btn-yellow:link, a.btn-yellow:visited,
a.btn-yellow:hover { color: #1A2B52 !important; }

/* ══ NUCLEAR BUTTON COLOR — FINAL ══ */
a[class*="btn-navy"],
a[class*="btn-navy"]:link,
a[class*="btn-navy"]:visited,
a[class*="btn-navy"]:hover,
a[class*="btn-navy"]:active,
a[class*="btn-red"],
a[class*="btn-red"]:link,
a[class*="btn-red"]:visited,
a[class*="btn-red"]:hover,
a[class*="btn-red"]:active {
    color: #ffffff !important;
    text-decoration: none !important;
}
a[class*="btn-yellow"],
a[class*="btn-yellow"]:link,
a[class*="btn-yellow"]:visited,
a[class*="btn-yellow"]:hover {
    color: #1A2B52 !important;
    text-decoration: none !important;
}

/* ── Hero outline button fix ── */
.hero-btns .btn-outline,
a.btn-outline,
a.btn-outline:link,
a.btn-outline:visited {
    background: transparent !important;
    color: var(--navy) !important;
    border: 2.5px solid var(--navy) !important;
    text-decoration: none !important;
}
a.btn-outline:hover {
    background: var(--navy) !important;
    color: #ffffff !important;
}


/* ══ MOBILE OPTIMIZATION ══ */
@media(max-width:768px) {

  /* Nav */
  nav { padding: 0 1rem; height: 60px; }
  .logo img { height: 44px; }
  .logo-txt { font-size: .88rem; }

  /* Hero */
  .hero { padding: 2rem 1.25rem 3.5rem; }
  .hero h1 { font-size: clamp(1.75rem, 8vw, 2.5rem); }
  .hero p { font-size: .95rem; }
  .hero-btns { flex-direction: column; align-items: center; gap: .65rem; }
  .hero-btns .btn { width: 100%; max-width: 280px; text-align: center; }

  /* Trust bar */
  .trust { padding: .65rem 1rem; gap: .75rem; }
  .trust-item { font-size: .72rem; }

  /* Sections */
  section { padding: 2.5rem 1.25rem; }
  h2 { font-size: clamp(1.5rem, 6vw, 2.2rem); }

  /* Steps */
  .steps { grid-template-columns: 1fr; gap: 1rem; }

  /* Services grid */
  .svc-grid { grid-template-columns: 1fr; }

  /* Pricing */
  .pricing-grid, .price-grid { grid-template-columns: 1fr; gap: 1rem; }
  .pc.pop { transform: scale(1); }
  .pc.pop:hover { transform: translateY(-4px); }

  /* Reviews */
  .rev-grid, .reviews-grid { grid-template-columns: 1fr; }

  /* About split */
  .about-split { grid-template-columns: 1fr; gap: 1.75rem; }
  .about-logo-wrap img { max-width: 220px; margin: 0 auto; display: block; }

  /* Contact page */
  .contact-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .social-links { flex-direction: column; }
  .soc { width: 100%; justify-content: center; }
  .form-card { padding: 1.4rem; }

  /* FAQ */
  .faq-list { padding: 0; }

  /* Blog */
  .blog-grid { grid-template-columns: 1fr; }

  /* Footer */
  .foot-in { grid-template-columns: 1fr 1fr; gap: 1.25rem; }
  .foot-brand { grid-column: 1 / -1; }
  .foot-bottom { flex-direction: column; text-align: center; gap: .5rem; }

  /* Service pages */
  .feat-grid { grid-template-columns: 1fr; }
  .sp-hero { padding: 2rem 1.25rem 2.5rem; }
  .sp-icon { font-size: 2.5rem; }
  .sp-hero h1 { font-size: clamp(1.65rem, 7vw, 2.5rem); }

  /* Signup form */
  .lead-wrap { padding: 1.75rem 1.25rem 3rem; }
  .lead-card { padding: 1.5rem 1.25rem; }
  .lf-row { grid-template-columns: 1fr; }
  .freq-options { gap: .4rem; }
  .freq-opt label { font-size: .78rem; padding: .38rem .75rem; }

  /* Pricing table */
  table { font-size: .82rem; }
  table td, table th { padding: .6rem .65rem; }

  /* One-time + addons grid */
  div[style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; }

  /* CTA strip */
  .cta-strip { padding: 2rem 1.25rem; }
  .cta-strip h2 { font-size: clamp(1.5rem, 6vw, 2rem); }

  /* Areas grid */
  .areas { grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); }

  /* Buttons */
  .btn { padding: .72rem 1.4rem; font-size: .9rem; }
}

@media(max-width:480px) {
  .foot-in { grid-template-columns: 1fr; }
  .hero-badge { font-size: .62rem; }
  .trust { display: none; } /* hide on very small screens */
}

/* Remove dropdown bullets */
.dropdown li { list-style: none !important; }
.dropdown ul { padding: 0 !important; margin: 0 !important; }
nav ul li { list-style: none !important; }

/* ══ DROPDOWN NO BULLETS ══ */
.dropdown,
.dropdown li,
nav ul,
nav ul li,
.nav-links,
.nav-links li {
    list-style: none !important;
    list-style-type: none !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}
.dropdown li::before,
.dropdown li::marker,
nav li::before,
nav li::marker {
    display: none !important;
    content: none !important;
}
