/* ============================================================
   DRAINIACS PLUMBING & HEATING — append to site.css
   Webware standard. Everything is scoped under .dr-block.
   Selectors are deliberately specific so the Webware theme's
   element rules (p, a, h1-h4, button, input) cannot override
   our buttons, links, headings or fonts.
   No locked wrapper is restyled — only .dr-* inside cells.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@500;600;700;800&family=Luckiest+Guy&family=Mulish:ital,wght@0,400;0,500;0,600;0,700;0,800;1,500&display=swap');

/* ---------- tokens + base ---------- */
.dr-block{
  --dr-ink:#0e1b2a; --dr-outline:#0b1018;
  --dr-blue:#1e7ae6; --dr-blue-bright:#4890f0; --dr-blue-dark:#0c4fa8; --dr-blue-deep:#0a2c5e;
  --dr-cyan:#7fe3fb; --dr-cyan-2:#b6effd; --dr-ice:#e7f7fe; --dr-ice-2:#d2f0fc;
  --dr-green:#54bd2c; --dr-green-dark:#3c9b18; --dr-lime:#8fe04a; --dr-peach:#ffb199;
  --dr-paper:#ffffff; --dr-paper-2:#f4fbfe; --dr-muted:#51647a;
  --dr-r:18px; --dr-r-sm:12px;
  --dr-shadow:6px 6px 0 var(--dr-outline);
  --dr-shadow-sm:4px 4px 0 var(--dr-outline);
  --dr-shadow-lg:10px 10px 0 var(--dr-outline);
  --dr-bw:3px;
  font-family:'Mulish',system-ui,sans-serif;
  color:var(--dr-ink); line-height:1.6; font-size:17px;
}
.dr-block *{box-sizing:border-box;}

/* defensive reset: neutralise Webware theme defaults inside the block */
.dr-block p, .dr-block ul, .dr-block li, .dr-block h1, .dr-block h2,
.dr-block h3, .dr-block h4, .dr-block figure{margin:0;padding:0;}
.dr-block img{max-width:100%;display:block;height:auto;}
.dr-block ul{list-style:none;}

/* fonts forced onto elements (beats theme element selectors) */
.dr-block, .dr-block p, .dr-block span, .dr-block a, .dr-block li,
.dr-block input, .dr-block select, .dr-block textarea, .dr-block label{
  font-family:'Mulish',system-ui,sans-serif;
}
.dr-block h1, .dr-block h2, .dr-block h3, .dr-block h4{
  font-family:'Baloo 2',cursive; line-height:1.05; letter-spacing:-.01em; font-weight:800;
}
.dr-block .dr-comic, .dr-block .dr-eyebrow, .dr-block .dr-tagline,
.dr-block .dr-burst, .dr-block .dr-num,
.dr-block .dr-av, .dr-block .dr-bigphone{
  font-family:'Luckiest Guy',cursive;
}
.dr-block .dr-btn, .dr-block .dr-card-more{font-family:'Baloo 2',cursive;}

/* links inside block: kill theme underline/color unless we set it */
.dr-block a{color:inherit;text-decoration:none;}

/* section vertical rhythm (on scoped block, not the wrapper) */
.dr-block .grid-padding-y{padding-top:64px;padding-bottom:64px;}
@media(max-width:1023.5px){.dr-block .grid-padding-y{padding-top:48px;padding-bottom:48px;}}

/* ============================================================ SECTION BACKDROPS */
/* ============================================================ SECTION BACKDROPS
   Webware applies `.is-wrapper > div { background: transparent }`, which
   blanks any background set on the outer is-section. So backgrounds are
   placed on the inner .is-boxes (a grandchild, unaffected) which is also
   full-bleed. Borders/overflow stay on the section where they're safe. */
.dr-hero-section{position:relative;overflow:hidden;border-bottom:var(--dr-bw) solid var(--dr-outline);}
.dr-hero-section > .is-boxes{
  background:radial-gradient(120% 90% at 80% -10%, var(--dr-cyan-2), transparent 60%),
             linear-gradient(180deg, var(--dr-ice) 0%, var(--dr-ice-2) 100%) !important;
  position:relative;overflow:hidden;}
.dr-hero-section > .is-boxes::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;z-index:0;
  background-image:radial-gradient(var(--dr-cyan) 2px, transparent 2.5px);background-size:24px 24px;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 35%,#000 70%,transparent);
  mask-image:linear-gradient(180deg,transparent,#000 35%,#000 70%,transparent);}
.dr-hero-copy,.dr-hero-art{position:relative;z-index:1;}

.dr-area-section{
  border-top:var(--dr-bw) solid var(--dr-outline);border-bottom:var(--dr-bw) solid var(--dr-outline);}
.dr-area-section > .is-boxes{background:var(--dr-paper-2) !important;}

/* About / 25 Years — distinct soft gradient band so it separates from the ice section below */
.dr-about-section{position:relative;overflow:hidden;
  border-top:var(--dr-bw) solid var(--dr-outline);border-bottom:var(--dr-bw) solid var(--dr-outline);}
.dr-about-section > .is-boxes{position:relative;overflow:hidden;
  background:
    radial-gradient(90% 80% at 100% 0%, var(--dr-cyan-2), transparent 55%),
    linear-gradient(160deg, var(--dr-ice) 0%, var(--dr-ice-2) 55%, var(--dr-cyan-2) 130%) !important;}
.dr-about-section > .is-boxes::before{content:"";position:absolute;inset:0;pointer-events:none;
  opacity:.45;z-index:0;background-image:radial-gradient(var(--dr-cyan) 1.6px, transparent 2px);
  background-size:24px 24px;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 30%,#000 80%,transparent);
  mask-image:linear-gradient(180deg,transparent,#000 30%,#000 80%,transparent);}
.dr-about-section .cell{position:relative;z-index:1;}

/* alternate white/ice rhythm so consecutive light sections separate */
.dr-trusted-section,.dr-why-section{
  border-top:var(--dr-bw) solid var(--dr-outline);border-bottom:var(--dr-bw) solid var(--dr-outline);}
.dr-trusted-section > .is-boxes,.dr-why-section > .is-boxes{background:var(--dr-paper-2) !important;}

/* big decorative water-drop behind the blog section */
.dr-blog-section{position:relative;overflow:hidden;}
.dr-blog-section > .is-boxes{position:relative;overflow:hidden;}
.dr-blog-section > .is-boxes::before{
  content:"";position:absolute;z-index:0;pointer-events:none;
  width:460px;height:460px;right:-120px;top:-140px;
  background:radial-gradient(circle at 35% 30%, rgba(127,227,251,.55), rgba(30,122,230,.18) 55%, transparent 72%);
  border-radius:50% 50% 50% 50% / 62% 62% 38% 38%;
  transform:rotate(45deg);
  filter:blur(2px);
  animation:dr-bob 7s ease-in-out infinite;}
.dr-blog-section > .is-boxes::after{
  content:"";position:absolute;z-index:0;pointer-events:none;
  width:240px;height:240px;left:-90px;bottom:-110px;
  background:radial-gradient(circle at 40% 35%, rgba(127,227,251,.4), rgba(30,122,230,.12) 55%, transparent 72%);
  border-radius:50% 50% 50% 50% / 62% 62% 38% 38%;
  transform:rotate(45deg);
  filter:blur(2px);
  animation:dr-bob 9s ease-in-out infinite reverse;}
.dr-blog-section .cell{position:relative;z-index:1;}
@keyframes dr-bob{0%,100%{transform:rotate(45deg) translateY(0);}50%{transform:rotate(45deg) translateY(-18px);}}
@media(prefers-reduced-motion:reduce){
  .dr-blog-section > .is-boxes::before,.dr-blog-section > .is-boxes::after{animation:none;}}
@media(max-width:1023.5px){
  .dr-blog-section > .is-boxes::before{width:300px;height:300px;right:-100px;top:-90px;}
  .dr-blog-section > .is-boxes::after{display:none;}}


.dr-process-section{color:#eaf6ff;
  border-top:var(--dr-bw) solid var(--dr-outline);border-bottom:var(--dr-bw) solid var(--dr-outline);}
.dr-process-section > .is-boxes{
  background:radial-gradient(120% 80% at 15% 0%, var(--dr-blue-dark), transparent 55%), var(--dr-blue-deep) !important;}
.dr-process-section h1,.dr-process-section h2,.dr-process-section h3{color:#fff;}

/* ============================================================ TYPE */
.dr-block .dr-h1{font-size:clamp(2.6rem,5vw,4.2rem);margin:14px 0 6px;}
.dr-block .dr-h1 .dr-pop{color:var(--dr-blue);display:inline-block;}
.dr-block .dr-h2{font-size:clamp(2rem,3.6vw,3rem);margin:10px 0 12px;}
.dr-block .dr-lead{font-size:1.18rem;color:#33485e;max-width:46ch;margin:0 0 26px;}

/* prose blocks (About page story / founder copy) */
.dr-block .dr-prose p{font-size:1.04rem;line-height:1.8;color:var(--dr-muted);margin:0 0 18px;}
.dr-block .dr-prose p:last-child{margin-bottom:0;}
.dr-block .dr-prose-center{max-width:60ch;margin:0 auto;text-align:center;}
.dr-block .dr-cta-center{justify-content:center;}

/* ---- split image+text layouts (About / content pages) ---- */
.dr-block .dr-split-copy .dr-prose{margin-top:6px;}
/* framed comic image panel (reusable, static — no float) */
.dr-block .dr-media{position:relative;display:flex;justify-content:center;align-items:center;}
.dr-block .dr-media-frame{position:relative;width:100%;background:#fff;
  border:var(--dr-bw) solid var(--dr-outline);border-radius:24px;
  box-shadow:var(--dr-shadow-lg);padding:14px;overflow:hidden;}
.dr-block .dr-media-frame img{display:block;width:100%;height:100%;object-fit:cover;
  border-radius:14px;aspect-ratio:4/3;}
.dr-block .dr-media-frame.dr-media-portrait img{aspect-ratio:4/5;}
/* a little brand burst on media panels */
.dr-block .dr-media .dr-media-badge{position:absolute;z-index:2;color:#fff;background:var(--dr-green);
  border:var(--dr-bw) solid var(--dr-outline);box-shadow:var(--dr-shadow-sm);
  padding:10px 14px;border-radius:13px;font-family:'Baloo 2',cursive;font-weight:800;line-height:1.05;
  font-size:.95rem;text-align:center;transform:rotate(-6deg);bottom:8px;left:6px;}
.dr-block .dr-media .dr-media-badge.dr-badge-blue{background:var(--dr-blue);transform:rotate(6deg);top:7px;right:5px;bottom:auto;left:auto;}
@media(max-width:1023.5px){
  .dr-block .dr-media{margin-top:30px;}
  .dr-block .dr-split-copy{text-align:center;}
  .dr-block .dr-split-copy .dr-hero-cta,
  .dr-block .dr-split-copy .dr-hero-trust{justify-content:center;}
}

/* ---- checklist (process steps) ---- */
.dr-block .dr-checklist{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px;}
.dr-block .dr-checklist li{display:flex;gap:12px;align-items:flex-start;font-weight:700;
  font-size:1rem;color:#26384a;line-height:1.45;}
.dr-block .dr-checklist li svg{width:22px;height:22px;flex:none;margin-top:1px;
  padding:3px;border-radius:7px;background:var(--dr-ice);border:2px solid var(--dr-outline);
  color:var(--dr-green-dark);}
@media(max-width:1023.5px){.dr-block .dr-split-copy .dr-checklist{text-align:left;display:inline-grid;}}

/* ---- FAQ (accordion via <details>/<summary>) ---- */
.dr-block .dr-faq{max-width:820px;margin:0 auto;display:grid;gap:16px;}
.dr-block .dr-faq-item{background:#fff;border:var(--dr-bw) solid var(--dr-outline);
  border-radius:var(--dr-r);box-shadow:var(--dr-shadow-sm);overflow:hidden;}
.dr-block .dr-faq-item[open]{box-shadow:var(--dr-shadow);}
/* the clickable question row */
.dr-block .dr-faq-q{list-style:none;cursor:pointer;
  font-family:'Baloo 2',cursive;font-weight:800;font-size:1.12rem;color:var(--dr-ink);
  display:flex;gap:12px;align-items:center;padding:20px 24px;
  transition:background .15s;}
.dr-block .dr-faq-q::-webkit-details-marker{display:none;}
.dr-block .dr-faq-q:hover{background:var(--dr-ice);}
.dr-block .dr-faq-item[open] .dr-faq-q{background:var(--dr-ice);}
.dr-block .dr-faq-q .dr-faq-badge{flex:none;width:26px;height:26px;border-radius:8px;
  background:var(--dr-green);color:#fff;border:2px solid var(--dr-outline);
  display:flex;align-items:center;justify-content:center;font-size:1rem;}
.dr-block .dr-faq-q .dr-faq-text{flex:1;}
/* open/close chevron */
.dr-block .dr-faq-q .dr-faq-chev{flex:none;width:11px;height:11px;margin-right:4px;
  border-right:2.5px solid var(--dr-blue-dark);border-bottom:2.5px solid var(--dr-blue-dark);
  transform:rotate(45deg);transition:transform .25s ease;}
.dr-block .dr-faq-item[open] .dr-faq-q .dr-faq-chev{transform:rotate(-135deg);}
/* the answer */
.dr-block .dr-faq-a{margin:0;color:var(--dr-muted);font-size:1rem;line-height:1.7;
  padding:0 24px 22px 62px;}
@media(max-width:1023.5px){.dr-block .dr-faq-a{padding-left:24px;}}


/* ---- benefit cards (4-up "why choose us" row) ---- */
.dr-block .dr-bcard{height:100%;background:#fff;border:var(--dr-bw) solid var(--dr-outline);
  border-radius:var(--dr-r);box-shadow:var(--dr-shadow);padding:28px 24px 26px;
  display:flex;flex-direction:column;position:relative;
  transition:transform .12s ease, box-shadow .12s ease;}
.dr-block .dr-bcard:hover{transform:translate(-3px,-4px);box-shadow:9px 9px 0 var(--dr-outline);}
.dr-block .dr-bcard-ic{width:58px;height:58px;flex:none;border-radius:15px;
  background:var(--dr-ice);border:var(--dr-bw) solid var(--dr-outline);box-shadow:var(--dr-shadow-sm);
  display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.dr-block .dr-bcard-ic svg{width:28px;height:28px;color:var(--dr-blue-dark);}
.dr-block .dr-bcard h3{font-size:1.16rem;line-height:1.25;margin:0 0 10px;min-height:2.9rem;}
.dr-block .dr-bcard p{margin:0;color:var(--dr-muted);font-size:.97rem;line-height:1.65;}
/* accent corner number */
.dr-block .dr-bcard-no{position:absolute;top:16px;right:18px;font-family:'Luckiest Guy',cursive;
  font-size:1.5rem;color:var(--dr-ice-2);line-height:1;pointer-events:none;}
@media(max-width:1023.5px){.dr-block .dr-bcard{text-align:left;}}

/* ---- contact info rows ---- */
.dr-block .dr-info-list{display:grid;gap:16px;margin:0;padding:0;list-style:none;}
.dr-block .dr-info{display:flex;gap:16px;align-items:flex-start;background:#fff;height:100%;
  border:var(--dr-bw) solid var(--dr-outline);border-radius:var(--dr-r);
  box-shadow:var(--dr-shadow-sm);padding:18px 20px;
  transition:transform .12s ease, box-shadow .12s ease;}
.dr-block .dr-info:hover{transform:translate(-2px,-3px);box-shadow:7px 7px 0 var(--dr-outline);}
.dr-block .dr-info-ic{width:50px;height:50px;flex:none;border-radius:13px;background:var(--dr-ice);
  border:var(--dr-bw) solid var(--dr-outline);box-shadow:var(--dr-shadow-sm);
  display:flex;align-items:center;justify-content:center;}
.dr-block .dr-info-ic svg{width:24px;height:24px;color:var(--dr-blue-dark);}
.dr-block .dr-info-body b{display:block;font-family:'Baloo 2',cursive;font-weight:800;
  font-size:1.05rem;color:var(--dr-ink);margin-bottom:3px;}
.dr-block .dr-info-body a,.dr-block .dr-info-body span{color:var(--dr-muted);font-size:1rem;
  text-decoration:none;line-height:1.5;}
.dr-block .dr-info-body a:hover{color:var(--dr-blue);}

/* ---- contact form ---- */
.dr-block .dr-form{background:#fff;border:var(--dr-bw) solid var(--dr-outline);
  border-radius:var(--dr-r);box-shadow:var(--dr-shadow);padding:28px;}
.dr-block .dr-form .dr-field{margin-bottom:16px;}
.dr-block .dr-form label{display:block;font-family:'Baloo 2',cursive;font-weight:700;
  font-size:.95rem;color:var(--dr-ink);margin-bottom:6px;}
.dr-block .dr-form input,
.dr-block .dr-form textarea,
.dr-block .dr-form select{width:100%;font-family:'Mulish',sans-serif;font-size:1rem;color:var(--dr-ink);
  background:var(--dr-ice);border:2px solid var(--dr-outline);border-radius:11px;
  padding:12px 14px;transition:box-shadow .15s, background .15s;}
.dr-block .dr-form input:focus,
.dr-block .dr-form textarea:focus,
.dr-block .dr-form select:focus{outline:none;background:#fff;box-shadow:3px 3px 0 var(--dr-green);}
.dr-block .dr-form textarea{min-height:130px;resize:vertical;}
.dr-block .dr-form .dr-btn{width:100%;justify-content:center;margin-top:4px;}

/* ---- map ---- */
.dr-block .dr-map{position:relative;border:var(--dr-bw) solid var(--dr-outline);
  border-radius:var(--dr-r);box-shadow:var(--dr-shadow);overflow:hidden;background:var(--dr-ice);}
.dr-block .dr-map iframe{display:block;width:100%;height:440px;border:0;}
@media(max-width:1023.5px){.dr-block .dr-map iframe{height:340px;}}




.dr-block .dr-eyebrow{font-size:.92rem;letter-spacing:.06em;color:var(--dr-blue-dark);
  text-transform:uppercase;display:inline-flex;align-items:center;gap:8px;}
.dr-block .dr-eyebrow::before{content:"";width:26px;height:4px;border-radius:3px;background:var(--dr-green);}
.dr-block .dr-eyebrow.dr-eyebrow-cyan{color:var(--dr-cyan);}

/* ============================================================ BUTTONS
   high-specificity so Webware .btn / a styles can't win */
.dr-block a.dr-btn,
.dr-block button.dr-btn,
.dr-block .dr-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-weight:800;font-size:1.05rem;line-height:1;text-decoration:none;
  padding:15px 7px;margin-top: 7px;border-radius:14px;border:var(--dr-bw) solid var(--dr-outline);
  cursor:pointer;transition:transform .08s ease, box-shadow .08s ease;
  box-shadow:var(--dr-shadow-sm);white-space:nowrap;}
.dr-block a.dr-btn:hover,.dr-block button.dr-btn:hover,.dr-block .dr-btn:hover{
  transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--dr-outline);}
.dr-block a.dr-btn:active,.dr-block button.dr-btn:active,.dr-block .dr-btn:active{
  transform:translate(2px,2px);box-shadow:1px 1px 0 var(--dr-outline);}
.dr-block .dr-btn-green{background:var(--dr-green);color:#fff;}
.dr-block .dr-btn-blue{background:var(--dr-blue);color:#fff;}
.dr-block .dr-btn-white{background:#fff;color:var(--dr-ink);}
.dr-block .dr-btn svg{width:20px;height:20px;flex:none;}
.dr-block .dr-btn-lg{font-size:1.18rem;padding:18px 30px;}
.dr-block .dr-btn-full{width:100%;}
.dr-block .dr-btn .dr-arrow{display:inline-block;transition:transform .15s ease;}
.dr-block .dr-btn:hover .dr-arrow{transform:translateX(4px);}

/* ============================================================ CHIPS */
.dr-block .dr-chip{display:inline-flex;align-items:center;gap:9px;background:#fff;
  border:var(--dr-bw) solid var(--dr-outline);border-radius:999px;
  padding:8px 16px;font-weight:800;font-size:.95rem;box-shadow:var(--dr-shadow-sm);color:var(--dr-ink);}
.dr-block .dr-chip svg{width:18px;height:18px;color:var(--dr-green-dark);flex:none;}

/* ============================================================ HERO */
.dr-hero-grid{align-items:center;}
.dr-hero-copy{align-self:center;}
.dr-block .dr-tagline{font-size:clamp(1.5rem,3vw,2.3rem);color:var(--dr-blue-bright);
  -webkit-text-stroke:1.6px var(--dr-outline);paint-order:stroke fill;
  text-shadow:3px 3px 0 rgba(11,16,24,.18);margin:2px 0 18px;line-height:1;}
.dr-hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:26px;}
.dr-hero-trust{display:flex;flex-wrap:wrap;gap:12px;}
.dr-hero-art{position:relative;display:flex;justify-content:center;align-items:center;}
.dr-panel{position:relative;background:#fff;border:var(--dr-bw) solid var(--dr-outline);
  border-radius:26px;box-shadow:var(--dr-shadow-lg);padding:22px;transform:rotate(-1.5deg);
  animation:dr-float 5s ease-in-out infinite;}
.dr-panel img{height:clamp(340px,42vw,500px);width:auto;filter:drop-shadow(6px 8px 0 rgba(11,16,24,.18));}
.dr-burst{position:absolute;color:#fff;background:var(--dr-green);
  border:var(--dr-bw) solid var(--dr-outline);box-shadow:var(--dr-shadow-sm);
  padding:12px 16px;border-radius:14px;transform:rotate(6deg);font-size:1.05rem;line-height:1;text-align:center;z-index:2;}
.dr-burst.dr-top{top:-18px;left:-14px;transform:rotate(-7deg);background:var(--dr-blue);}
.dr-burst.dr-bot{bottom:14px;right:-18px;}
@keyframes dr-float{0%,100%{transform:translateY(0) rotate(-1.5deg);}50%{transform:translateY(-10px) rotate(-1.5deg);}}
@media(prefers-reduced-motion:reduce){.dr-panel{animation:none;}}
@media(max-width:1023.5px){
  .dr-hero-copy{text-align:center;}
  .dr-block .dr-lead{margin-left:auto;margin-right:auto;}
  .dr-hero-cta,.dr-hero-trust{justify-content:center;}
  .dr-hero-art{margin-top:30px;}
}

/* ============================================================ SECTION HEADS */
.dr-shead{text-align:center;max-width:none;margin:0 auto 36px;}
.dr-shead-p{font-size:1.12rem;color:var(--dr-muted);margin:0;}
.dr-process-section .dr-shead-p{color:#b8d6f5;}

/* ============================================================ SERVICE CARDS */
.dr-card{display:flex;flex-direction:column;background:#fff;
  border:var(--dr-bw) solid var(--dr-outline);border-radius:var(--dr-r);
  box-shadow:var(--dr-shadow);overflow:hidden;color:inherit;height:100%;
  transition:transform .12s,box-shadow .12s;}
.dr-card:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 var(--dr-outline);}
.dr-card-media{position:relative;height:200px;border-bottom:var(--dr-bw) solid var(--dr-outline);
  overflow:hidden;background:var(--dr-ice);}
.dr-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.dr-card:hover .dr-card-media img{transform:scale(1.06);}
.dr-card-body{padding:24px;display:flex;flex-direction:column;flex:1;}
.dr-card-h3{font-size:1.28rem;margin-bottom:8px;line-height:1.25;min-height:3.2rem;}
.dr-card-p{margin:0 0 16px;color:var(--dr-muted);font-size:1rem;}
.dr-block .dr-card-more{margin-top:auto;font-weight:800;font-size:.98rem;
  color:var(--dr-blue-dark);display:inline-flex;align-items:center;gap:7px;text-transform: capitalize;line-height:1.3;}
.dr-block .dr-card-more .dr-arrow{display:inline-block;transition:transform .15s ease;}
.dr-card:hover .dr-card-more{color:var(--dr-blue);}
.dr-card:hover .dr-card-more .dr-arrow{transform:translateX(4px);}
.dr-services-cta{text-align:center;margin-top:30px;}

/* ============================================================ OFFER BANNER BASE (reused by blog promo) */
.dr-offer{color:#fff;border:var(--dr-bw) solid var(--dr-outline);border-radius:24px;
  box-shadow:var(--dr-shadow-lg);padding:38px 40px;display:grid;
  grid-template-columns:auto 1fr auto;gap:28px;align-items:center;position:relative;overflow:hidden;
  background:linear-gradient(100deg,var(--dr-green) 0%, var(--dr-green-dark) 100%);}
.dr-offer .dr-offer-h3,.dr-offer .dr-offer-p{color:#fff;}
.dr-offer-h3{font-size:1.7rem;margin-bottom:6px;}
.dr-offer-p{margin:0;font-weight:600;opacity:.97;}
@media(max-width:1023.5px){.dr-offer{grid-template-columns:1fr;text-align:center;}}

/* ============================================================ WHY-US */
.dr-f{display:flex;gap:14px;align-items:flex-start;margin-bottom:28px;}
.dr-fi{width:50px;height:50px;flex:none;border-radius:13px;background:var(--dr-ice);
  border:var(--dr-bw) solid var(--dr-outline);display:flex;align-items:center;justify-content:center;box-shadow:var(--dr-shadow-sm);}
.dr-fi svg{width:26px;height:26px;color:var(--dr-blue-dark);}
.dr-f-h3{font-size:1.18rem;margin-bottom:4px;line-height:1.25;min-height:2.4rem;}
.dr-f-p{margin:0;color:var(--dr-muted);font-size:.98rem;}

/* ============================================================ PROCESS STEPS */
.dr-steps{counter-reset:dr-step;}
.dr-step{position:relative;height:100%;background:rgba(255,255,255,.06);
  border:var(--dr-bw) solid rgba(255,255,255,.25);border-radius:var(--dr-r);padding:28px 22px;}
.dr-num{counter-increment:dr-step;font-size:2.6rem;color:var(--dr-cyan);line-height:1;
  -webkit-text-stroke:1.5px var(--dr-outline);paint-order:stroke fill;}
.dr-num::before{content:counter(dr-step,decimal-leading-zero);}
.dr-step-h3{font-size:1.25rem;margin:10px 0 6px;color:#fff;}
.dr-step-p{margin:0;color:#bfe0ff;font-size:.98rem;}

/* ============================================================ SHARED REVIEW / TESTIMONIAL PRIMITIVES */
.dr-stars{display:flex;gap:3px;color:#ffb400;font-size:1.2rem;letter-spacing:2px;line-height:1;}
.dr-who{display:flex;align-items:center;gap:12px;margin-top:auto;}
.dr-av{width:46px;height:46px;flex:none;border-radius:50%;border:var(--dr-bw) solid var(--dr-outline);
  display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.1rem;}
.dr-av-blue{background:var(--dr-blue);}
.dr-av-green{background:var(--dr-green);}
.dr-av-deep{background:var(--dr-blue-deep);}
.dr-who-meta b{font-weight:800;display:block;color:var(--dr-ink);}
.dr-who-meta span{font-size:.86rem;color:var(--dr-muted);}

/* ============================================================ BLOG PROMO (offer-style banner) */
/* uses .dr-offer base; .dr-blog-kicker is the big left visual, like .dr-big */
.dr-blog-offer .dr-blog-kicker{font-family:'Luckiest Guy',cursive;
  font-size:clamp(2rem,4.5vw,3.2rem);line-height:.9;color:#fff;
  -webkit-text-stroke:2px var(--dr-outline);paint-order:stroke fill;
  text-shadow:4px 4px 0 rgba(11,16,24,.25);white-space:nowrap;}

/* falling water-drop background animation (behind banner content) */
.dr-blog-offer > .dr-blog-kicker,.dr-blog-offer > .dr-offer-body,.dr-blog-offer > .dr-btn{position:relative;z-index:1;}
.dr-drops{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
.dr-drop{position:absolute;top:-12%;width:9px;height:9px;
  background:rgba(255,255,255,.45);
  border-radius:50% 50% 50% 50% / 60% 60% 40% 40%;
  transform:rotate(45deg);opacity:0;
  box-shadow:0 0 6px rgba(255,255,255,.35);
  animation:dr-fall linear infinite;}
@keyframes dr-fall{
  0%{transform:translateY(-10%) rotate(45deg) scale(.6);opacity:0;}
  10%{opacity:.7;}
  80%{opacity:.7;}
  100%{transform:translateY(620%) rotate(45deg) scale(1);opacity:0;}
}
/* spread: position, size, speed, delay vary per drop for a natural shower */
.dr-drop:nth-child(1){left:6%;animation-duration:3.4s;animation-delay:0s;}
.dr-drop:nth-child(2){left:14%;width:6px;height:6px;animation-duration:4.2s;animation-delay:1.1s;}
.dr-drop:nth-child(3){left:23%;width:12px;height:12px;animation-duration:3s;animation-delay:.5s;}
.dr-drop:nth-child(4){left:32%;animation-duration:3.8s;animation-delay:1.8s;}
.dr-drop:nth-child(5){left:41%;width:7px;height:7px;animation-duration:4.6s;animation-delay:.3s;}
.dr-drop:nth-child(6){left:50%;width:11px;height:11px;animation-duration:3.2s;animation-delay:2.2s;}
.dr-drop:nth-child(7){left:59%;animation-duration:4s;animation-delay:.9s;}
.dr-drop:nth-child(8){left:67%;width:6px;height:6px;animation-duration:3.6s;animation-delay:1.5s;}
.dr-drop:nth-child(9){left:76%;width:13px;height:13px;animation-duration:3.1s;animation-delay:.7s;}
.dr-drop:nth-child(10){left:84%;animation-duration:4.4s;animation-delay:2s;}
.dr-drop:nth-child(11){left:91%;width:7px;height:7px;animation-duration:3.5s;animation-delay:1.3s;}
.dr-drop:nth-child(12){left:97%;width:10px;height:10px;animation-duration:4.1s;animation-delay:.2s;}
@media(prefers-reduced-motion:reduce){.dr-drop{animation:none;opacity:0;}}

/* ============================================================ TRUSTED FEATURES (premium numbered cards) */
.dr-feat-card{height:100%;background:#fff;border:var(--dr-bw) solid var(--dr-outline);border-radius:var(--dr-r);
  box-shadow:var(--dr-shadow);overflow:hidden;display:flex;flex-direction:column;
  transition:transform .14s ease, box-shadow .14s ease;}
.dr-feat-card:hover{transform:translate(-4px,-4px);box-shadow:11px 11px 0 var(--dr-outline);}

/* media with duotone wash + big outlined number */
.dr-feat-media{position:relative;height:210px;overflow:hidden;background:var(--dr-blue-deep);
  border-bottom:var(--dr-bw) solid var(--dr-outline);}
.dr-feat-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.dr-feat-card:hover .dr-feat-media img{transform:scale(1.07);}
.dr-feat-media::after{content:"";position:absolute;inset:0;mix-blend-mode:multiply;opacity:.32;
  transition:opacity .3s ease;}
.dr-feat-card:hover .dr-feat-media::after{opacity:.16;}
.dr-feat-num{position:absolute;top:10px;right:14px;z-index:2;font-family:'Luckiest Guy',cursive;
  font-size:3.4rem;line-height:1;color:#fff;-webkit-text-stroke:3px var(--dr-outline);
  paint-order:stroke fill;text-shadow:4px 4px 0 rgba(11,16,24,.35);pointer-events:none;}

/* floating icon badge straddling the media/body seam */
.dr-feat-body{position:relative;padding:38px 26px 28px;display:flex;flex-direction:column;flex:1;}
.dr-feat-icon{position:absolute;top:-30px;left:24px;width:58px;height:58px;border-radius:15px;
  display:flex;align-items:center;justify-content:center;color:#fff;
  border:var(--dr-bw) solid var(--dr-outline);box-shadow:var(--dr-shadow-sm);}
.dr-feat-icon svg{width:28px;height:28px;}
.dr-feat-h3{font-size:1.24rem;margin:6px 0 10px;line-height:1.18;min-height:2.9rem;}
.dr-feat-p{margin:0 0 18px;color:var(--dr-muted);font-size:.98rem;}
.dr-feat-list{list-style:none;margin:auto 0 0;padding:16px 0 0;border-top:2px dashed var(--dr-ice-2);
  display:flex;flex-direction:column;gap:9px;}
.dr-feat-list li{display:flex;gap:9px;align-items:flex-start;font-weight:700;font-size:.92rem;color:#26384a;}
.dr-feat-list li svg{width:18px;height:18px;flex:none;margin-top:2px;color:var(--dr-green-dark);}

/* per-card accent colors (number wash + icon bg) */
.dr-feat-blue .dr-feat-media::after{background:var(--dr-blue);}
.dr-feat-blue .dr-feat-icon{background:var(--dr-blue);}
.dr-feat-green .dr-feat-media::after{background:var(--dr-green);}
.dr-feat-green .dr-feat-icon{background:var(--dr-green);}
.dr-feat-deep .dr-feat-media::after{background:var(--dr-blue-deep);}
.dr-feat-deep .dr-feat-icon{background:var(--dr-blue-deep);}

/* ============================================================ TESTIMONIALS (dark section) */
.dr-testimonials-section{color:#eaf6ff;position:relative;overflow:hidden;
  border-top:var(--dr-bw) solid var(--dr-outline);border-bottom:var(--dr-bw) solid var(--dr-outline);}
.dr-testimonials-section > .is-boxes{position:relative;overflow:hidden;
  background:
    radial-gradient(90% 70% at 12% -10%, rgba(30,122,230,.55), transparent 55%),
    radial-gradient(80% 70% at 95% 110%, rgba(84,189,44,.22), transparent 55%),
    var(--dr-blue-deep) !important;}
.dr-testimonials-section > .is-boxes::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  opacity:.5;background-image:radial-gradient(rgba(127,227,251,.45) 1.5px, transparent 2px);
  background-size:26px 26px;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 70%);
  mask-image:linear-gradient(180deg,#000,transparent 70%);}
.dr-testimonials-section .cell{position:relative;z-index:1;}
.dr-testimonials-section h1,.dr-testimonials-section h2,.dr-testimonials-section h3{color:#fff;}
.dr-review{position:relative;height:100%;background:#fff;border:var(--dr-bw) solid var(--dr-outline);
  border-radius:var(--dr-r);box-shadow:var(--dr-shadow);padding:30px 24px 26px;
  display:flex;flex-direction:column;gap:14px;
  transition:transform .16s ease, box-shadow .16s ease;
  animation:dr-rise .6s ease both;}
.dr-review:hover{transform:translate(-4px,-5px);box-shadow:11px 11px 0 var(--dr-outline);}
.dr-quote-mark{position:absolute;top:-22px;left:20px;font-family:'Luckiest Guy',cursive;
  font-size:5rem;line-height:1;color:var(--dr-green);
  -webkit-text-stroke:3px var(--dr-outline);paint-order:stroke fill;pointer-events:none;
  transition:transform .25s ease;transform-origin:bottom left;}
.dr-review:hover .dr-quote-mark{transform:scale(1.12) rotate(-6deg);}
.dr-review:hover .dr-stars{animation:dr-star-pop .5s ease;}
.dr-review-p{margin:0;font-size:1.04rem;color:#26384a;font-weight:500;}
/* staggered entrance per card */
.dr-testimonials-section .cell:nth-child(2) .dr-review{animation-delay:.05s;}
.dr-testimonials-section .cell:nth-child(3) .dr-review{animation-delay:.18s;}
.dr-testimonials-section .cell:nth-child(4) .dr-review{animation-delay:.31s;}
@keyframes dr-rise{from{opacity:0;transform:translateY(26px);}to{opacity:1;transform:translateY(0);}}
@keyframes dr-star-pop{0%{transform:scale(1);}40%{transform:scale(1.14);}100%{transform:scale(1);}}
@media(prefers-reduced-motion:reduce){
  .dr-review{animation:none;}
  .dr-review:hover{transform:none;}
  .dr-review:hover .dr-quote-mark,.dr-review:hover .dr-stars{transform:none;animation:none;}}

/* ============================================================ NEWSLETTER */
.dr-newsletter-section{color:#eaf6ff;position:relative;overflow:hidden;
  border-top:var(--dr-bw) solid var(--dr-outline);border-bottom:var(--dr-bw) solid var(--dr-outline);}
.dr-newsletter-section > .is-boxes{position:relative;overflow:hidden;
  background:
    linear-gradient(135deg, var(--dr-blue-dark) 0%, var(--dr-blue-deep) 60%),
    var(--dr-blue-deep) !important;}
/* concentric water-ripple rings, off to one side */
.dr-newsletter-section > .is-boxes::before{content:"";position:absolute;z-index:0;pointer-events:none;
  width:620px;height:620px;right:-220px;top:50%;transform:translateY(-50%);
  border-radius:50%;
  background:
    radial-gradient(circle, transparent 0 28%, rgba(127,227,251,.10) 28% 29%, transparent 29% 44%,
      rgba(127,227,251,.08) 44% 45%, transparent 45% 62%,
      rgba(127,227,251,.06) 62% 63%, transparent 63%);
  animation:dr-ripple 8s ease-in-out infinite;}
/* soft dot texture */
.dr-newsletter-section > .is-boxes::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  opacity:.4;background-image:radial-gradient(rgba(127,227,251,.4) 1.5px, transparent 2px);
  background-size:28px 28px;
  -webkit-mask-image:radial-gradient(circle at 50% 50%, #000, transparent 75%);
  mask-image:radial-gradient(circle at 50% 50%, #000, transparent 75%);}
.dr-newsletter-section .cell{position:relative;z-index:1;}
.dr-newsletter-section h1,.dr-newsletter-section h2,.dr-newsletter-section h3{color:#fff;}
@keyframes dr-ripple{0%,100%{transform:translateY(-50%) scale(1);opacity:.8;}50%{transform:translateY(-50%) scale(1.08);opacity:1;}}
@media(prefers-reduced-motion:reduce){.dr-newsletter-section > .is-boxes::before{animation:none;}}
@media(max-width:1023.5px){.dr-newsletter-section > .is-boxes::before{width:420px;height:420px;right:-200px;}}
.dr-newsletter{text-align:center;max-width:760px;margin:0 auto;}
.dr-newsletter .dr-h2{margin:10px 0 16px;}
.dr-newsletter-p{color:#b8d6f5;font-size:1.12rem;margin:0 auto 28px;max-width:60ch;}

/* ============================================================ SERVICE AREA */
.dr-area-head .dr-h2{margin:10px 0 14px;}
.dr-area-p{color:var(--dr-muted);font-size:1.1rem;margin:0 0 22px;max-width:48ch;}
.dr-towns{display:flex;flex-wrap:wrap;gap:10px;}
.dr-town{background:#fff;border:2px solid var(--dr-outline);border-radius:999px;padding:8px 16px;
  font-weight:700;font-size:.95rem;box-shadow:3px 3px 0 var(--dr-outline);color:var(--dr-ink);}
.dr-county-card{background:#fff;border:var(--dr-bw) solid var(--dr-outline);border-radius:var(--dr-r);box-shadow:var(--dr-shadow);padding:30px;}
.dr-row{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--dr-ice-2);}
.dr-row:last-child{border-bottom:none;}
.dr-pin{width:46px;height:46px;flex:none;border-radius:12px;background:var(--dr-blue);
  border:var(--dr-bw) solid var(--dr-outline);display:flex;align-items:center;justify-content:center;color:#fff;}
.dr-pin svg{width:22px;height:22px;}
.dr-pin-green{background:var(--dr-green);}
.dr-pin-deep{background:var(--dr-blue-deep);}
.dr-row-body b{font-size:1.15rem;color:var(--dr-ink);}
.dr-row-body span{display:block;color:var(--dr-muted);font-size:.92rem;}
.dr-county-cta{margin-top:18px;}

/* ============================================================
   SITE HEADER  (#header.new-header-5) — Drainiacs comic-bold theme
   Fixes: full-bleed bg (no black sides), logo aligned to nav,
   refined active state + underline, cleaner spacing.
   Scoped to #header / its wrapper so page sections are untouched.
   ============================================================ */

/* full-bleed: kill the black section sides behind the header */
.ww-content-block.is-header{overflow:visible !important;background:#fff;}
.ww-content-block.is-header .is-boxes,
.ww-content-block.is-header .is-box-centered{background:#fff;}

#header.new-header-5{
  --h-ink:#0e1b2a; --h-outline:#0b1018;
  --h-blue:#1e7ae6; --h-blue-dark:#0c4fa8; --h-blue-deep:#0a2c5e;
  --h-cyan:#7fe3fb; --h-green:#54bd2c; --h-green-dark:#3c9b18; --h-lime:#8fe04a;
  --h-ice:#e7f7fe;
  font-family:'Mulish',system-ui,sans-serif;
  position:relative;z-index:60;width:100%;background:#fff;
}

/* ---------- TOP BAR (desktop) : full width navy ---------- */
#header.new-header-5 .header-top-bg{
  background:var(--h-ink);color:#cfe6ff;border-bottom:2px solid var(--h-outline);
}
#header.new-header-5 .header-top{min-height:44px;}
#header.new-header-5 .header-top-contact-links .menu{margin:0;gap:0;flex-wrap:wrap;justify-content:center;}
#header.new-header-5 .header-top-contact-links li{list-style:none;display:flex;align-items:center;}
#header.new-header-5 .header-top-contact-links li:not(:last-child){border-right:1px solid rgba(255,255,255,.14);}
#header.new-header-5 .header-top-contact-links a{
  color:#cfe6ff;font-weight:700;font-size:.9rem;text-decoration:none;
  display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:8px;
  transition:color .15s,background .15s;
}
#header.new-header-5 .header-top-contact-links a:hover{color:#fff;background:rgba(127,227,251,.12);}
#header.new-header-5 .header-top-contact-links a i{color:var(--h-cyan);}
#header.new-header-5 .header-top-contact-links .sitePhoneNumber{color:#fff;}
#header.new-header-5 .header-top-contact-links .sitePhoneNumber:hover{color:var(--h-lime);}

/* ---------- MAIN BAR ---------- */
#header.new-header-5 .logo-section{
  background:#fff;
  padding-top:8px;padding-bottom:8px;
}
/* align the three columns on one row, vertically centered */
#header.new-header-5 .logo-section.grid-x{align-items:center;}

/* LOGO */
#header.new-header-5 .logo-container{display:flex;align-items:center;}
#header.new-header-5 .logo-container a{text-decoration:none;display:inline-flex;align-items:center;}
#header.new-header-5 .logo-container img{max-height:160px;width:auto;
  filter:drop-shadow(2px 2px 0 rgba(11,16,24,.16));}
#header.new-header-5 .logo-container .text-logo{
  font-family:'Luckiest Guy',cursive;font-size:2rem;line-height:1;color:var(--h-blue);
  -webkit-text-stroke:1.4px var(--h-outline);paint-order:stroke fill;
  text-shadow:2px 2px 0 rgba(11,16,24,.16);letter-spacing:.5px;
}

/* right column: stack the phone/button row tight above the nav, right-aligned */
#header.new-header-5 .logo-section .cell.auto{display:flex;flex-direction:column;
  align-items:flex-end;justify-content:center;gap:25px;}

/* top-right utility row (phone + Contact button) */
#header.new-header-5 .logo-section .cell.auto > .menu{
  margin:0;display:flex;align-items:center;gap:14px;justify-content:flex-end;
}
#header.new-header-5 .logo-section .menu li{list-style:none;}
#header.new-header-5 .logo-section .menu .sitePhoneNumber{
  color:var(--h-blue-dark);font-family:'Baloo 2',cursive;font-weight:800;font-size:1.05rem;
  text-decoration:none;display:inline-flex;align-items:center;gap:8px;padding:6px 8px;border-radius:9px;
  transition:color .15s,background .15s;
}
#header.new-header-5 .logo-section .menu .sitePhoneNumber i{color:var(--h-green-dark);}
#header.new-header-5 .logo-section .menu .sitePhoneNumber:hover{color:var(--h-blue);}

/* CTA button */
#header.new-header-5 .button{
  background:var(--h-green);color:#fff;text-decoration:none;
  font-family:'Baloo 2',cursive;font-weight:800;font-size:1rem;line-height:1;text-transform:none;
  border:3px solid var(--h-outline);border-radius:13px;padding:12px 22px;
  box-shadow:4px 4px 0 var(--h-outline);
  transition:transform .08s ease, box-shadow .08s ease, background .15s;
}
#header.new-header-5 .button:hover{background:var(--h-green-dark);
  transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--h-outline);}
#header.new-header-5 .button:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--h-outline);}

/* ---------- DESKTOP NAV ---------- */
#header.new-header-5 .menu-container{margin:0;}
#header.new-header-5 nav .dropdown.menu{margin:0;background:transparent;align-items:center;gap:2px;}
#header.new-header-5 nav .dropdown.menu > li{list-style:none;display:flex;}
#header.new-header-5 nav .dropdown.menu > li > a{
  font-family:'Baloo 2',cursive;font-weight:700;font-size:1rem;color:var(--h-ink) !important;text-decoration:none;
  padding:8px 18px;border-radius:9px;transition:color .15s;position:relative;line-height:1.2;
}
/* last nav item: drop right padding so it aligns flush with the edge */
#header.new-header-5 nav .dropdown.menu > li:last-child > a{padding-right:0;}
#header.new-header-5 nav .dropdown.menu > li > a span{color:inherit !important;}
#header.new-header-5 nav .dropdown.menu > li > a:hover{color:var(--h-blue-dark) !important;}
/* active state: clean color + underline, no heavy box */
#header.new-header-5 nav .dropdown.menu > li.active > a{color:var(--h-blue-dark) !important;}
#header.new-header-5 nav .dropdown.menu > li > a::after{
  content:"";position:absolute;left:18px;right:18px;bottom:2px;height:3px;border-radius:3px;
  background:var(--h-green);transform:scaleX(0);transform-origin:center;transition:transform .2s ease;
}
#header.new-header-5 nav .dropdown.menu > li:hover > a::after,
#header.new-header-5 nav .dropdown.menu > li.active > a::after{transform:scaleX(1);}
/* last item underline flush to the right edge */
#header.new-header-5 nav .dropdown.menu > li:last-child > a::after{right:0;}

/* dropdown caret — clean small triangle, properly positioned */
#header.new-header-5 nav .is-dropdown-submenu-parent > a{padding-right:20px;}
#header.new-header-5 nav .is-dropdown-submenu-parent > a::before{
  content:"";position:absolute;right:0;top:50%;width:7px;height:7px;margin-top:-5px;
  border-right:2px solid var(--h-blue-dark);border-bottom:2px solid var(--h-blue-dark);
  transform:rotate(45deg);transition:transform .2s ease;
}
#header.new-header-5 nav .is-dropdown-submenu-parent:hover > a::before{transform:rotate(-135deg);margin-top:-1px;}
/* hide Foundation's default caret to avoid the stray blob */
#header.new-header-5 nav .is-dropdown-submenu-parent > a::after{display:none;}

/* ---------- SUBMENU PANEL ---------- */
#header.new-header-5 nav .is-dropdown-submenu{
  background:#fff;border:3px solid var(--h-outline);border-radius:14px;
  box-shadow:6px 6px 0 var(--h-outline);padding:8px;min-width:290px;margin-top:10px;
}
#header.new-header-5 nav .is-dropdown-submenu .is-submenu-item{list-style:none;}
#header.new-header-5 nav .is-dropdown-submenu .is-submenu-item > a{
  font-family:'Mulish',sans-serif;font-weight:700;font-size:.94rem;color:var(--h-ink);text-decoration:none;
  padding:10px 14px;border-radius:9px;display:block;transition:background .12s,color .12s,padding-left .12s;
}
#header.new-header-5 nav .is-dropdown-submenu .is-submenu-item > a:hover{
  background:var(--h-ice);color:var(--h-blue-dark);padding-left:18px;
}
/* active submenu page indicator */
#header.new-header-5 nav .is-dropdown-submenu .is-submenu-item.active:not(:first-child) > a{
  background:var(--h-ice) !important;color:var(--h-blue-dark) !important;font-weight:800 !important;
  box-shadow:inset 5px 0 0 var(--h-green) !important;padding-left:18px;}
#header.new-header-5 nav .is-dropdown-submenu .is-submenu-item.active:not(:first-child) > a span{color:var(--h-blue-dark) !important;}
#header.new-header-5 nav .is-dropdown-submenu .is-submenu-item.active:not(:first-child) > a span::after{
  content:"";display:inline-block;width:7px;height:7px;border-radius:50%;
  background:var(--h-green);border:1.5px solid var(--h-outline);margin-left:8px;vertical-align:middle;}
#header.new-header-5 nav .is-dropdown-submenu .is-submenu-item:first-child > a{
  font-family:'Baloo 2',cursive;font-weight:800;color:var(--h-blue-dark);
  border-bottom:2px dashed var(--h-ice);border-radius:9px 9px 0 0;margin-bottom:4px;
}

/* ---------- MOBILE ---------- */
/* center the logo, pin the hamburger to the right */
@media(max-width:1023.5px){
  #header.new-header-5 .logo-section{position:relative;justify-content:center;}
  #header.new-header-5 .logo-container{margin:0 auto;justify-content:center;}
  #header.new-header-5 .sidenav-container{position:absolute;right:16px;top:50%;transform:translateY(-50%);}
}
#header.new-header-5 .openMenu{
  background:#fff;border:3px solid var(--h-outline);border-radius:10px;
  width:48px;height:48px;display:flex;align-items:center;justify-content:center;
  box-shadow:4px 4px 0 var(--h-outline);color:var(--h-ink);cursor:pointer;
  transition:transform .08s ease, box-shadow .08s ease;
}
#header.new-header-5 .openMenu:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--h-outline);}
#header.new-header-5 .openMenu .icon{font-size:24px;}

#header.new-header-5 .mobile-contact-number-section{
  background:var(--h-ink);text-align:center;padding:12px 16px;border-bottom:2px solid var(--h-outline);
}
#header.new-header-5 .mobile-contact-number-section .sitePhoneNumber{
  color:#fff;font-family:'Baloo 2',cursive;font-weight:800;font-size:1.15rem;text-decoration:none;
  display:inline-flex;align-items:center;gap:9px;
}
#header.new-header-5 .mobile-contact-number-section .sitePhoneNumber i{color:var(--h-lime);}

#header.new-header-5 .mobile-contact-button-section{
  background:var(--h-ice);text-align:center;padding:14px 16px;border-bottom:3px solid var(--h-outline);
}
#header.new-header-5 .mobile-contact-button-section .button{width:100%;max-width:max-content;}

/* ============================================================
   MOBILE SIDENAV DRAWER (#sidenav off-canvas) — matches desktop nav
   Comic-bold brand: Baloo 2 links, ice hover, green active accent,
   accordion submenus styled like the desktop dropdown card.
   ============================================================ */
#sidenav.sidenav{
  --h-ink:#0e1b2a; --h-outline:#0b1018;
  --h-blue:#1e7ae6; --h-blue-dark:#0c4fa8; --h-blue-deep:#0a2c5e;
  --h-cyan:#7fe3fb; --h-green:#54bd2c; --h-green-dark:#3c9b18; --h-lime:#8fe04a;
  --h-ice:#e7f7fe;
  background:#fff;
  border-left:3px solid var(--h-outline);
  font-family:'Mulish',system-ui,sans-serif;padding:0;
}

/* the accordion list */
#sidenav.sidenav .accordion-menu{margin:0;padding:0;list-style:none;background:#fff;}
#sidenav.sidenav .accordion-menu li{list-style:none;background:transparent !important;}
#sidenav.sidenav .accordion-menu a{background:transparent !important;}

/* top-level links */
#sidenav.sidenav .accordion-menu > li > a{
  font-family:'Baloo 2',cursive;font-weight:700;font-size:1.05rem;color:var(--h-ink) !important;
  text-decoration:none;display:block;padding:15px 20px;
  transition:background .15s,color .15s;position:relative;background:transparent !important;
}
#sidenav.sidenav .accordion-menu > li > a span{color:inherit !important;}
#sidenav.sidenav .accordion-menu > li > a:hover{background:var(--h-ice) !important;color:var(--h-blue-dark) !important;}

/* active top-level item: ice fill + green left bar */
#sidenav.sidenav .accordion-menu > li.active > a{
  background:var(--h-ice) !important;color:var(--h-blue-dark) !important;
  box-shadow:inset 4px 0 0 var(--h-green);
}

/* divider between top-level items */
#sidenav.sidenav .accordion-menu > li + li{border-top:1px solid var(--h-ice);}

/* accordion parent caret (Services / Service Areas) */
#sidenav.sidenav .is-accordion-submenu-parent > a{padding-right:46px;}
/* kill Foundation's default arrow, draw a clean chevron */
#sidenav.sidenav .is-accordion-submenu-parent > a::after{
  content:"" !important;position:absolute !important;
  right:20px;top:50%;left:auto;bottom:auto;
  width:9px !important;height:9px !important;margin:0 !important;padding:0 !important;
  border-top:0 !important;border-left:0 !important;
  border-right:2.5px solid var(--h-blue-dark) !important;
  border-bottom:2.5px solid var(--h-blue-dark) !important;
  border-radius:0 !important;background:none !important;
  transform:translateY(-70%) rotate(45deg);transform-origin:center;
  transition:transform .25s ease;
}
#sidenav.sidenav .is-accordion-submenu-parent.is-active > a::after,
#sidenav.sidenav .is-accordion-submenu-parent[aria-expanded="true"] > a::after,
#sidenav.sidenav .is-accordion-submenu-parent > a[aria-expanded="true"]::after{
  transform:translateY(-30%) rotate(-135deg);
}

/* nested submenu panel — ice inset like desktop dropdown */
#sidenav.sidenav .is-accordion-submenu{
  margin:0;padding:6px 10px 10px;background:var(--h-ice) !important;
  border:0;border-radius:0;list-style:none;
  box-shadow:inset 0 3px 0 rgba(11,16,24,.06);
}
#sidenav.sidenav .is-accordion-submenu .is-submenu-item{background:transparent !important;}
#sidenav.sidenav .is-accordion-submenu .is-submenu-item > a{
  font-family:'Mulish',sans-serif;font-weight:700;font-size:.95rem;color:var(--h-ink) !important;
  text-decoration:none;display:block;padding:11px 14px;border-radius:9px;background:transparent !important;
  transition:background .12s,color .12s,padding-left .12s;
}
#sidenav.sidenav .is-accordion-submenu .is-submenu-item > a span{color:inherit !important;padding-left:0 !important;}
#sidenav.sidenav .is-accordion-submenu .is-submenu-item > a:hover{
  background:#fff !important;color:var(--h-blue-dark) !important;padding-left:18px;
}
/* active submenu page indicator (mobile) */
#sidenav.sidenav .is-accordion-submenu .is-submenu-item.active:not(:first-child) > a{
  background:#fff !important;color:var(--h-blue-dark) !important;font-weight:800 !important;
  box-shadow:inset 5px 0 0 var(--h-green) !important;padding-left:18px;}
#sidenav.sidenav .is-accordion-submenu .is-submenu-item.active:not(:first-child) > a span{color:var(--h-blue-dark) !important;}
#sidenav.sidenav .is-accordion-submenu .is-submenu-item.active:not(:first-child) > a span::after{
  content:"";display:inline-block;width:7px;height:7px;border-radius:50%;
  background:var(--h-green);border:1.5px solid var(--h-outline);margin-left:8px;vertical-align:middle;}
/* first submenu item (the parent's own page link) = bold header */
#sidenav.sidenav .is-accordion-submenu .is-submenu-item:first-child > a{
  font-family:'Baloo 2',cursive;font-weight:800;color:var(--h-blue-dark) !important;
}

/* Blog external link */
#sidenav.sidenav .accordion-menu > li.is-link > a{color:var(--h-blue-dark) !important;}

/* ============================================================
   SITE FOOTER (#footer.new-footer-3) — Drainiacs comic-bold theme
   4 columns: Brand+Social | Quick Links | Contact | Newsletter CTA
   CSS only; all Liquid vars preserved in markup.
   ============================================================ */
#footer.new-footer-3{
  --f-ink:#0e1b2a; --f-outline:#0b1018;
  --f-blue:#1e7ae6; --f-blue-dark:#0c4fa8; --f-blue-deep:#0a2c5e;
  --f-cyan:#7fe3fb; --f-green:#54bd2c; --f-green-dark:#3c9b18; --f-lime:#8fe04a;
  --f-ice:#e7f7fe;
  position:relative;color:#9fb8d4;font-family:'Mulish',system-ui,sans-serif;
  background:radial-gradient(120% 80% at 85% 0%, var(--f-blue-dark), transparent 55%), var(--f-ink);
  border-top:4px solid var(--f-outline);padding-top:26px;
}
#footer.new-footer-3::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;z-index:0;
  background-image:radial-gradient(rgba(127,227,251,.4) 1.5px, transparent 2px);background-size:28px 28px;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 55%);mask-image:linear-gradient(180deg,#000,transparent 55%);
}
#footer.new-footer-3 > *{position:relative;z-index:1;}

/* headings */
#footer.new-footer-3 h4{
  font-family:'Luckiest Guy',cursive;font-size:1.05rem;letter-spacing:.04em;color:#fff;
  margin:0 0 18px;display:inline-flex;align-items:center;
}
#footer.new-footer-3 h4::after{content:"";display:block;width:26px;height:4px;border-radius:3px;background:var(--f-green);margin-left:10px;}

#footer.new-footer-3 a{color:#9fb8d4;text-decoration:none;transition:color .15s;}
#footer.new-footer-3 a:hover{color:var(--f-cyan);}

/* ---- BRAND column ---- */
#footer.new-footer-3 .footer-brand{display:inline-flex;align-items:center;text-decoration:none;}
#footer.new-footer-3 .footer-brand-name{
  font-family:'Luckiest Guy',cursive;font-size:1.9rem;line-height:1;color:var(--f-cyan);
  -webkit-text-stroke:1.4px var(--f-outline);paint-order:stroke fill;text-shadow:2px 2px 0 rgba(0,0,0,.35);
}
#footer.new-footer-3 .footer-tagline{
  font-family:'Luckiest Guy',cursive;color:var(--f-lime);font-size:1.05rem;margin:8px 0 14px;letter-spacing:.02em;
}
#footer.new-footer-3 .footer-blurb{color:#c3d8f0;font-size:.98rem;line-height:1.7;margin-bottom:22px;max-width:38ch;}

/* social icons */
/* auto-hide the whole Follow Us block when the include renders no icons */
#footer.new-footer-3 .footer-social-media:not(:has(li)){display:none !important;}
#footer.new-footer-3 .footer-social-media ul{margin:0;padding:0;list-style:none;display:flex;gap:10px;flex-wrap:wrap;}
#footer.new-footer-3 .footer-social-media li{list-style:none;}
#footer.new-footer-3 .footer-social-media a{
  width:44px;height:44px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.08);border:2px solid rgba(255,255,255,.25);color:#fff;font-size:1.1rem;
  transition:transform .1s ease, background .15s, border-color .15s;
}
#footer.new-footer-3 .footer-social-media a:hover{
  background:var(--f-green);border-color:var(--f-outline);color:#fff;
  transform:translateY(-3px);box-shadow:3px 3px 0 var(--f-outline);
}

/* ---- QUICK LINKS ---- */
#footer.new-footer-3 .footer-links ul{margin:0;padding:0;list-style:none;}
#footer.new-footer-3 .footer-links li{list-style:none;}
#footer.new-footer-3 .footer-links li > a{
  display:inline-block;font-weight:700;font-size:.96rem;padding:6px 0 6px 0;position:relative;
  transition:color .15s,padding-left .15s;
}
#footer.new-footer-3 .footer-links li > a:hover{color:var(--f-cyan);padding-left:10px;}
#footer.new-footer-3 .footer-links li > a::before{
  content:"";position:absolute;left:0;top:50%;width:0;height:2px;background:var(--f-green);
  transform:translateY(-50%);transition:width .15s;
}
#footer.new-footer-3 .footer-links li > a:hover::before{width:6px;}
/* hide submenus from the shared header-menu include */
#footer.new-footer-3 .footer-links .submenu,
#footer.new-footer-3 .footer-links .is-dropdown-submenu{display:none !important;}

/* ---- CONTACT ---- */
#footer.new-footer-3 .contact-us-column .shop-address,
#footer.new-footer-3 .contact-us-column .email-id{
  display:flex;gap:10px;align-items:flex-start;color:#9fb8d4;font-size:.98rem;line-height:1.6;margin-bottom:14px;
}
#footer.new-footer-3 .contact-us-column .shop-address i,
#footer.new-footer-3 .contact-us-column .email-id i{color:var(--f-green);margin-top:3px;flex:none;}
#footer.new-footer-3 .contact-us-column .shop-address:hover,
#footer.new-footer-3 .contact-us-column .email-id:hover{color:var(--f-cyan);}
#footer.new-footer-3 .contact-us-column .contact-number{margin-bottom:14px;}
#footer.new-footer-3 .contact-us-column .contact-number a{
  font-family:'Mulish',system-ui,sans-serif;font-weight:700;font-size:.98rem;color:#9fb8d4;
  display:inline-flex;align-items:center;gap:10px;
}
#footer.new-footer-3 .contact-us-column .contact-number a i{color:var(--f-green);margin-top:0;flex:none;}
#footer.new-footer-3 .contact-us-column .contact-number a:hover{color:var(--f-cyan);}

/* ---- NEWSLETTER CTA ---- */
#footer.new-footer-3 .footer-cta-text{color:#c3d8f0;font-size:.98rem;line-height:1.6;margin:0 0 16px;max-width:30ch;}
#footer.new-footer-3 .mailing-list-button .button{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--f-green);color:#fff;text-decoration:none;
  font-family:'Baloo 2',cursive;font-weight:800;font-size:1rem;line-height:1;text-transform:none;
  border:3px solid var(--f-outline);border-radius:13px;padding:13px 24px;box-shadow:4px 4px 0 var(--f-outline);
  transition:transform .08s ease, box-shadow .08s ease, background .15s;
}
#footer.new-footer-3 .mailing-list-button .button:hover{
  background:var(--f-green-dark);transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--f-outline);color:#fff;
}
#footer.new-footer-3 .mailing-list-button .button:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--f-outline);}

/* soften any divider borders on stacked columns */
#footer.new-footer-3 .border-top-small{border-color:rgba(255,255,255,.12) !important;}

/* ---- COPYRIGHT BAR ---- */
#footer.new-footer-3 .copyright-container{
  background:rgba(0,0,0,.28);border-top:2px solid rgba(255,255,255,.1);
  margin-top:24px;padding:18px 0;position:relative;z-index:1;
}
#footer.new-footer-3 .copyright-container .copyright{color:#8aa6c6;font-size:.9rem;font-weight:600;margin:0;}
#footer.new-footer-3 .copyright-container .copyright a{color:#c3d8f0;font-weight:700;}
#footer.new-footer-3 .copyright-container .copyright a:hover{color:var(--f-cyan);}

/* ---- MOBILE / TABLET: clean centered stacked layout ---- */
@media(max-width:1023.5px){
  #footer.new-footer-3 .new-footer-2{
    padding-left:22px;padding-right:22px;justify-content:center;
  }
  #footer.new-footer-3 .footer-brand-col,
  #footer.new-footer-3 .footer-links,
  #footer.new-footer-3 .contact-us-column,
  #footer.new-footer-3 .footer-cta-column{
    width:100%;flex:0 0 100%;max-width:100%;
    text-align:center;margin-bottom:28px;padding-top:24px;
    border-top:1px solid rgba(255,255,255,.12);
  }
  #footer.new-footer-3 .footer-brand-col{border-top:0;padding-top:4px;}

  /* center every inner element */
  #footer.new-footer-3 h4{display:flex;justify-content:center;}
  #footer.new-footer-3 .footer-brand{justify-content:center;}
  #footer.new-footer-3 .footer-blurb,
  #footer.new-footer-3 .footer-cta-text{max-width:none;margin-left:auto;margin-right:auto;}

  /* social icons centered */
  #footer.new-footer-3 .footer-social-media ul{justify-content:center;}

  /* quick links centered, kill the slide-right hover offset */
  #footer.new-footer-3 .footer-links li > a{padding-left:0;}
  #footer.new-footer-3 .footer-links li > a:hover{padding-left:0;}
  #footer.new-footer-3 .footer-links li > a::before{display:none;}

  /* contact rows centered (icon + text inline, centered) */
  #footer.new-footer-3 .contact-us-column .shop-address,
  #footer.new-footer-3 .contact-us-column .email-id{
    justify-content:center;align-items:center;text-align:center;
  }
  #footer.new-footer-3 .contact-us-column .shop-address i,
  #footer.new-footer-3 .contact-us-column .email-id i{margin-top:0;}
  #footer.new-footer-3 .contact-us-column .contact-number{display:flex;justify-content:center;}

  /* newsletter button centered */
  #footer.new-footer-3 .mailing-list-button{display:flex;justify-content:center;}

  #footer.new-footer-3 .copyright-container{margin-top:0;}
}

/* ============================================================
   BLOG LISTING PAGE (.new-blog-page-type) — Drainiacs comic-bold theme
   Search, article cards, categories sidebar, pagination.
   Scoped to the blog page so other pages are untouched.
   ============================================================ */
.new-blog-page-type{
  --b-ink:#0e1b2a; --b-outline:#0b1018;
  --b-blue:#1e7ae6; --b-blue-dark:#0c4fa8; --b-cyan:#7fe3fb;
  --b-green:#54bd2c; --b-green-dark:#3c9b18; --b-ice:#e7f7fe; --b-muted:#5b6b7c;
  --b-bw:3px; --b-r:18px; --b-shadow:6px 6px 0 var(--b-outline); --b-shadow-sm:4px 4px 0 var(--b-outline);
  font-family:'Mulish',system-ui,sans-serif;color:var(--b-ink);
  background:var(--b-ice);padding-top:46px;
}
.new-blog-page-type .grid-container{max-width:1200px;}

/* ---- search bar ---- */
.new-blog-page-type .blog-search-container{margin-bottom:34px;}
.new-blog-page-type .blog-search-container .position-relative{position:relative;max-width:560px;margin:0 auto;}
.new-blog-page-type .search-input-blog{width:100%;font-family:'Mulish',sans-serif;font-size:1.02rem;
  color:var(--b-ink);background:#fff;border:var(--b-bw) solid var(--b-outline);border-radius:14px;
  padding:15px 54px 15px 20px;box-shadow:var(--b-shadow-sm);transition:box-shadow .15s;}
.new-blog-page-type .search-input-blog::placeholder{color:#9fb1c2;}
.new-blog-page-type .search-input-blog:focus{outline:none;box-shadow:5px 5px 0 var(--b-green);}
.blog-search-container #search-input-blog{padding:8px 16px 8px 67px;}
.new-blog-page-type .blog-search-button{position:absolute;right:8px;top:50%;transform:translateY(-50%);
  width:40px;height:40px;border:0;border-radius:10px;background:var(--b-green);color:#fff;cursor:pointer;
  display:flex;align-items:center;justify-content:center;transition:background .15s, transform .08s;}
.new-blog-page-type .blog-search-button:hover{background:var(--b-green-dark);}
.new-blog-page-type .blog-search-button svg path{fill:#fff;}

/* ---- article cards ---- */
.new-blog-page-type .blog-ul{margin:0;padding:0;list-style:none;display:grid;gap:26px;}
.new-blog-page-type .blog-li{list-style:none;}
.new-blog-page-type .blog-li .row{margin:0;}
.new-blog-page-type .blog-article{background:#fff;border:var(--b-bw) solid var(--b-outline);
  border-radius:var(--b-r);box-shadow:var(--b-shadow);padding:28px 30px;
  transition:transform .12s ease, box-shadow .12s ease;}
.new-blog-page-type .blog-article:hover{transform:translate(-3px,-4px);box-shadow:9px 9px 0 var(--b-outline);}

/* category tags above title */
.new-blog-page-type .article-category{display:flex;flex-wrap:wrap;gap:8px;align-items:center;
  margin:0 0 14px;font-size:0;}
.new-blog-page-type .article-category .categories_text{font-family:'Baloo 2',cursive;font-weight:800;
  font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--b-muted);margin-right:4px;}
/* render category tags as pills */
.new-blog-page-type .article-category > span{font-size:.85rem;}
.new-blog-page-type .article-category a{display:inline-block;font-family:'Baloo 2',cursive;font-weight:700;
  font-size:.82rem;color:var(--b-blue-dark);background:var(--b-ice);border:2px solid var(--b-outline);
  border-radius:50px;padding:4px 12px;text-decoration:none;text-transform:capitalize;
  transition:background .15s, color .15s;}
.new-blog-page-type .article-category a:hover{background:var(--b-green);color:#fff;}

/* title */
.new-blog-page-type .article-title{margin:0 0 12px;line-height:1.2;}
.new-blog-page-type .article-title a{font-family:'Baloo 2',cursive;font-weight:800;
  font-size:1.28rem;line-height:1.25;color:var(--b-ink);text-decoration:none;transition:color .15s;}
.new-blog-page-type .article-title a:hover{color:var(--b-blue);}

/* excerpt */
.new-blog-page-type .article-body{margin-bottom:18px;}
.new-blog-page-type .article-body p{margin:0;color:var(--b-muted);font-size:1.02rem;line-height:1.7;}

/* read more */
.new-blog-page-type .blog-read-more{display:inline-flex;align-items:center;gap:8px;
  font-family:'Baloo 2',cursive;font-weight:800;font-size:1rem;color:#fff;background:var(--b-green);
  border:var(--b-bw) solid var(--b-outline);border-radius:12px;padding:10px 20px;text-decoration:none;
  box-shadow:var(--b-shadow-sm);transition:transform .08s ease, box-shadow .08s ease, background .15s;}
.new-blog-page-type .blog-read-more::after{content:"\2192";font-size:1.05em;}
.new-blog-page-type .blog-read-more:hover{background:var(--b-green-dark);
  transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--b-outline);}
.new-blog-page-type .blog-read-more:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--b-outline);}

/* ---- sidebar / categories ---- */
.new-blog-page-type .articles-filter-container{background:#fff;border:var(--b-bw) solid var(--b-outline);
  border-radius:var(--b-r);box-shadow:var(--b-shadow);padding:24px;}
.new-blog-page-type .filter-h2{font-family:'Luckiest Guy',cursive;font-size:1.15rem;letter-spacing:.03em;
  color:var(--b-ink);margin:0 0 16px;display:inline-flex;align-items:center;}
.new-blog-page-type .filter-h2::after{content:"";display:block;width:26px;height:4px;border-radius:3px;
  background:var(--b-green);margin-left:10px;}
.new-blog-page-type .ps-blog-category{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;}
.new-blog-page-type .ps-blog-category li{list-style:none;}
/* divider between category links (not above the All button or the first link after it) */
.new-blog-page-type .ps-blog-category li.cta-link + li.cta-link{
  border-top:2px dashed var(--b-ice);padding-top:6px;margin-top:2px;}
/* extra gap below the All button to separate it from the tag list */
.new-blog-page-type .ps-blog-category li.active{margin-bottom:10px;}
.new-blog-page-type .ps-blog-category li a{display:block;font-family:'Baloo 2',cursive;font-weight:700;
  font-size:.98rem;color:var(--b-ink);text-decoration:none;text-transform:capitalize;
  padding:10px 14px;border-radius:10px;border:2px solid transparent;transition:background .15s, color .15s, border-color .15s, padding-left .15s;}
.new-blog-page-type .ps-blog-category li a:hover{background:var(--b-ice);color:var(--b-blue-dark);padding-left:18px;}
.new-blog-page-type .ps-blog-category li.active a,
.new-blog-page-type .ps-blog-category li a.all-blogs{background:var(--b-green);color:#fff;
  border:2px solid var(--b-outline);box-shadow:var(--b-shadow-sm);text-align:center;}
.new-blog-page-type .ps-blog-category li.active a:hover,
.new-blog-page-type .ps-blog-category li a.all-blogs:hover{background:var(--b-green-dark);padding-left:14px;}

/* ---- pagination ---- */
.new-blog-page-type .ps-pagination-bar{margin-top:30px;display:flex;justify-content:center;}
.new-blog-page-type .ps-pagination-bar a,
.new-blog-page-type .ps-pagination-bar span{font-family:'Baloo 2',cursive;font-weight:800;
  min-width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;
  border:2px solid var(--b-outline);border-radius:10px;background:#fff;color:var(--b-ink);
  text-decoration:none;margin:0 4px;transition:background .15s, color .15s;}
.new-blog-page-type .ps-pagination-bar a:hover{background:var(--b-ice);color:var(--b-blue-dark);}
.new-blog-page-type .ps-pagination-bar .active,
.new-blog-page-type .ps-pagination-bar .current{background:var(--b-green);color:#fff;}

/* ---- featured strip (when populated) ---- */
.new-blog-page-type .featured-articles h5{font-family:'Luckiest Guy',cursive;font-size:1.1rem;
  color:var(--b-ink);margin:0 0 14px;}

/* spacing between main + sidebar handled by Foundation cells; add gap on mobile */
@media(max-width:1023.5px){
  .new-blog-page-type .blog-sidebar{margin-top:30px;}
}

/* ============================================================
   BLOG ARTICLE DETAIL (.article-page-type) — Drainiacs theme
   Big title, author meta bar, rich article body, recent-posts sidebar.
   Inherits blog tokens from .new-blog-page-type.
   ============================================================ */
.article-page-type{padding-top:46px;}
.article-page-type .blog-article-content{background:#fff;border:var(--b-bw) solid var(--b-outline);
  border-radius:24px;box-shadow:var(--b-shadow);padding:clamp(26px,4vw,56px);margin-bottom:34px;}

/* big article title (h1) — override the small card-title size */
.article-page-type .article-title{margin:0 0 18px;line-height:1.12;}
.article-page-type h1.article-title{font-family:'Luckiest Guy',cursive;font-weight:400;
  font-size:clamp(1.9rem,4vw,2.9rem);color:var(--b-ink);letter-spacing:.005em;}

/* author / date / categories meta bar */
.article-page-type .blog-author{background:var(--b-ice);border:2px solid var(--b-outline);
  border-radius:14px;padding:16px 20px;margin:0 0 8px;}
.article-page-type .blog-author .lab-ul{margin:0;padding:0;list-style:none;
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:.95rem;color:var(--b-muted);}
.article-page-type .blog-author .lab-ul li{list-style:none;display:inline-flex;align-items:center;gap:8px;}
.article-page-type .blog-author .author_name{font-family:'Baloo 2',cursive;font-weight:800;color:var(--b-ink);}
.article-page-type .blog-author .author_name::before{content:"\270E";margin-right:6px;color:var(--b-green-dark);}
.article-page-type .blog-author .pubdate{font-weight:700;color:var(--b-blue-dark);}
.article-page-type .blog-author .pubdate::before{content:"\1F4C5";margin-right:6px;}
/* category links inside the meta become small pills */
.article-page-type .blog-author span > a{display:inline-block;font-family:'Baloo 2',cursive;font-weight:700;
  font-size:.8rem;color:var(--b-blue-dark);background:#fff;border:2px solid var(--b-outline);
  border-radius:50px;padding:3px 11px;text-decoration:none;text-transform:capitalize;transition:background .15s,color .15s;}
.article-page-type .blog-author span > a:hover{background:var(--b-green);color:#fff;}
.article-page-type .blog-author span:not(:has(a)){font-size:0;}  /* hide stray comma separators */

/* ---- rich article body ---- */
.article-page-type .article-body{margin-top:26px;}
.article-page-type .article-body p{margin:0 0 18px;color:#2a3a4a;font-size:1.08rem;line-height:1.8;}
.article-page-type .article-body h2{font-family:'Baloo 2',cursive;font-weight:800;
  font-size:clamp(1.45rem,2.6vw,1.9rem);color:var(--b-ink);line-height:1.25;
  margin:38px 0 14px;padding-left:16px;border-left:5px solid var(--b-green);}
.article-page-type .article-body h3{font-family:'Baloo 2',cursive;font-weight:800;
  font-size:1.25rem;color:var(--b-blue-dark);margin:28px 0 10px;}
.article-page-type .article-body ul{margin:0 0 20px;padding:0;list-style:none;display:grid;gap:11px;}
.article-page-type .article-body ul li{position:relative;padding-left:32px;color:#2a3a4a;
  font-size:1.05rem;line-height:1.65;}
.article-page-type .article-body ul li::before{content:"";position:absolute;left:0;top:4px;
  width:20px;height:20px;border-radius:6px;background:var(--b-ice);border:2px solid var(--b-outline);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233c9b18' stroke-width='3.5'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");
  background-size:14px;background-repeat:no-repeat;background-position:center;}
.article-page-type .article-body strong{color:var(--b-ink);font-weight:800;}
.article-page-type .article-body a{color:var(--b-blue);font-weight:700;text-decoration:underline;
  text-decoration-color:var(--b-cyan);text-underline-offset:3px;}
.article-page-type .article-body a:hover{color:var(--b-blue-dark);}

/* ---- recent posts sidebar ---- */
.article-page-type .blog-sidebar-widget{background:var(--b-ice);border:var(--b-bw) solid var(--b-outline);
  border-radius:24px;padding:clamp(22px,3vw,32px);}
.article-page-type .blog-sidebar-h2{font-family:'Luckiest Guy',cursive;font-size:1.3rem;
  color:var(--b-ink);margin:0 0 20px;display:inline-flex;align-items:center;}
.article-page-type .blog-sidebar-h2::after{content:"";display:block;width:30px;height:4px;border-radius:3px;
  background:var(--b-green);margin-left:12px;}
.article-page-type .ps-blog-recent-posts{margin:0;padding:0;list-style:none;display:grid;gap:20px;}
.article-page-type .ps-blog-recent-posts li{list-style:none;}
.article-page-type .ps-blog-recent-posts .article-title{margin:0 0 10px;}
.article-page-type .ps-blog-recent-posts .article-title a{font-family:'Baloo 2',cursive;font-weight:800;
  font-size:1.18rem;line-height:1.25;color:var(--b-ink);text-decoration:none;}
.article-page-type .ps-blog-recent-posts .article-title a:hover{color:var(--b-blue);}
.article-page-type .ps-blog-recent-posts .item-body p{margin:0 0 14px;color:var(--b-muted);font-size:1rem;line-height:1.65;}

/* ============================================================
   LOGIN / REGISTER PAGE (.ps-login-page) — Drainiacs comic-bold theme
   Centered comic-outline card, branded inputs, password toggle.
   Scoped to .ps-login-page so other pages are untouched.
   ============================================================ */
.ps-login-page{
  --l-ink:#0e1b2a; --l-outline:#0b1018;
  --l-blue:#1e7ae6; --l-blue-dark:#0c4fa8; --l-cyan:#7fe3fb;
  --l-green:#54bd2c; --l-green-dark:#3c9b18; --l-ice:#e7f7fe; --l-muted:#5b6b7c;
  --l-bw:3px; --l-shadow:6px 6px 0 var(--l-outline); --l-shadow-sm:4px 4px 0 var(--l-outline);
  font-family:'Mulish',system-ui,sans-serif;color:var(--l-ink);
  background:
    radial-gradient(120% 70% at 50% 0%, var(--l-cyan), transparent 60%),
    var(--l-ice);
  min-height:60vh;padding-top:56px;padding-bottom:56px;position:relative;overflow:hidden;
}
/* subtle dot texture */
.ps-login-page::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.4;z-index:0;
  background-image:radial-gradient(rgba(30,122,230,.18) 1.5px, transparent 2px);background-size:26px 26px;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 70%);mask-image:linear-gradient(180deg,#000,transparent 70%);}
.ps-login-page > *{position:relative;z-index:1;}

/* ---- card ---- */
.ps-login-page .ps-login-form-wrap{background:#fff;border:var(--l-bw) solid var(--l-outline);
  border-radius:22px;box-shadow:var(--l-shadow);padding:clamp(28px,4vw,44px);}
.ps-login-page .ps-login-form-wrap h4{font-family:'Luckiest Guy',cursive;font-weight:400;
  font-size:1.6rem;color:var(--l-ink);margin:0 0 6px;text-align:center;}
.ps-login-page .ps-login-form-wrap h4::after{content:"";display:block;width:48px;height:4px;border-radius:3px;
  background:var(--l-green);margin:12px auto 22px;}

/* ---- form fields ---- */
.ps-login-page label{display:block;font-family:'Baloo 2',cursive;font-weight:700;font-size:.96rem;
  color:var(--l-ink);margin-bottom:7px;}
.ps-login-page label .error{color:#e0392b;}
.ps-login-page .ps-text{width:100%;font-family:'Mulish',sans-serif;font-size:1rem;color:var(--l-ink);
  background:var(--l-ice);border:2px solid var(--l-outline);border-radius:11px;
  padding:13px 15px;transition:box-shadow .15s, background .15s;box-sizing:border-box;}
.ps-login-page .ps-text:focus{outline:none;background:#fff;box-shadow:3px 3px 0 var(--l-green);}
.ps-login-page .password-container{position:relative;}
.ps-login-page .password-container .ps-text{padding-right:46px;}
.ps-login-page .toggle-password{position:absolute;top:50%;transform:translateY(-50%);right:14px;
  color:var(--l-blue-dark);cursor:pointer;font-size:1.05rem;transition:color .15s;}
.ps-login-page .toggle-password:hover{color:var(--l-blue);}
.ps-login-page .password-container + p{margin:7px 0 0;font-size:.85rem;color:var(--l-muted);}

/* ---- buttons ---- */
.ps-login-page .button{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;
  font-family:'Baloo 2',cursive;font-weight:800;font-size:1rem;line-height:1;text-transform:none;
  border:var(--l-bw) solid var(--l-outline);border-radius:13px;padding:13px 26px;
  box-shadow:var(--l-shadow-sm);transition:transform .08s ease, box-shadow .08s ease, background .15s;}
.ps-login-page .button:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--l-outline);}
.ps-login-page .button:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--l-outline);}
/* login = green, full width */
.ps-login-page .ps-login-button{background:var(--l-green);color:#fff;width:100%;}
.ps-login-page .ps-login-button:hover{background:var(--l-green-dark);color:#fff;}
/* register = blue, full width */
.ps-login-page .ps-register-button{background:var(--l-blue);color:#fff;width:100%;}
.ps-login-page .ps-register-button:hover{background:var(--l-blue-dark);color:#fff;}

/* ---- links + helpers ---- */
.ps-login-page p{font-size:.96rem;color:var(--l-muted);}
.ps-login-page a{color:var(--l-blue);font-weight:700;text-decoration:none;}
.ps-login-page a:hover{color:var(--l-blue-dark);text-decoration:underline;}
.ps-login-page .ps-login-form-wrap > p{text-align:center;margin:18px 0 0;}

/* ---- separator + signup ---- */
.ps-login-page .ps-separator{height:2px;background:var(--l-ice);margin:24px 0;border-radius:2px;}
.ps-login-page .signup-container{text-align:center;}
.ps-login-page .signup-container p{font-family:'Baloo 2',cursive;font-weight:700;color:var(--l-ink);margin:0 0 12px;}

/* ============================================================
   LEAD MAGNET / WW FORM (#lead-magnet-form .ww-form-container)
   Drainiacs comic-bold theme. Scoped so other forms are untouched.
   ============================================================ */
#lead-magnet-form{position:relative;font-family:'Mulish',system-ui,sans-serif;color:var(--dr-ink);}
#lead-magnet-form .spacer{height:24px;}

/* form card */
#lead-magnet-form .ww-form-container{
  --lf-outline:#0b1018;--lf-ice:#e7f7fe;--lf-green:#54bd2c;--lf-green-dark:#3c9b18;
  --lf-blue:#1e7ae6;--lf-blue-dark:#0c4fa8;--lf-ink:#0e1b2a;--lf-muted:#5b6b7c;
  max-width:560px;margin:0 auto;background:#fff;
  border:3px solid var(--lf-outline);border-radius:22px;box-shadow:6px 6px 0 var(--lf-outline);
  padding:clamp(26px,4vw,40px);position:relative;overflow:hidden;}
/* little brand accent bar on top */
#lead-magnet-form .ww-form-container::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;
  background:linear-gradient(90deg,var(--lf-green),var(--lf-blue));}
#lead-magnet-form form{width:100%;margin:0 auto;}

/* intro heading + subtext (uses .dr-h2 / .dr-shead-p classes; restyled here since the form is outside .dr-block) */
#lead-magnet-form .ww-form-container .dr-h2{font-family:'Baloo 2',cursive;font-weight:800;
  font-size:clamp(1.5rem,3vw,2rem);line-height:1.15;color:var(--lf-ink);text-align:center;margin:2px 0 12px;}
#lead-magnet-form .ww-form-container .dr-shead-p{font-family:'Mulish',sans-serif;font-weight:500;
  font-size:1rem;line-height:1.65;color:var(--lf-muted);text-align:center;margin:0 auto 24px;max-width:46ch;}
/* legacy plain-<p> intro (when no heading markup is present) */
#lead-magnet-form .ww-form-container > form > p:first-of-type:not(.dr-shead-p){font-family:'Baloo 2',cursive;font-weight:800;
  font-size:1.35rem;color:var(--lf-ink);text-align:center;margin:4px 0 22px;line-height:1.25;}

/* fields */
#lead-magnet-form .first_name_wrap,
#lead-magnet-form .email_wrap{margin-bottom:16px;}
#lead-magnet-form label{display:block;font-family:'Baloo 2',cursive;font-weight:700;font-size:.95rem;
  color:var(--lf-ink);margin-bottom:7px;}
#lead-magnet-form label .required{color:#e0392b;margin-left:3px;}
#lead-magnet-form input.input[type="text"],
#lead-magnet-form input.input[type="email"]{width:100%;font-family:'Mulish',sans-serif;font-size:1rem;
  color:var(--lf-ink);background:var(--lf-ice);border:2px solid var(--lf-outline);border-radius:11px;
  padding:13px 15px;box-sizing:border-box;transition:box-shadow .15s, background .15s;}
#lead-magnet-form input.input:focus{outline:none;background:#fff;box-shadow:3px 3px 0 var(--lf-green);}

/* validation errors */
#lead-magnet-form .error{display:block;color:#e0392b;font-size:.85rem;font-weight:700;margin-top:5px;}

/* recaptcha */
#lead-magnet-form .captcha_wrap{margin:6px 0 4px;}
#lead-magnet-form .recaptcha-block{display:flex;justify-content:center;}

/* submit button */
#lead-magnet-form .submit_wrap{text-align:center;}
#lead-magnet-form input.button[type="submit"]{display:inline-flex;align-items:center;justify-content:center;
  cursor:pointer;font-family:'Baloo 2',cursive;font-weight:800;font-size:1.05rem;line-height:1;text-transform:none;
  background:var(--lf-green);color:#fff;border:3px solid var(--lf-outline);border-radius:13px;
  padding:14px 30px;box-shadow:4px 4px 0 var(--lf-outline);width:100%;
  transition:transform .08s ease, box-shadow .08s ease, background .15s;}
#lead-magnet-form input.button[type="submit"]:hover{background:var(--lf-green-dark);
  transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--lf-outline);}
#lead-magnet-form input.button[type="submit"]:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--lf-outline);}

/* ============================================================
   POPUP CLOSE BUTTON (.mfp-close) — Drainiacs comic-bold theme
   Styles the × close control on modals / lightboxes.
   ============================================================ */
.mfp-close{
  position:absolute;top:-16px;right:-16px;z-index:1100;
  width:44px;height:44px;display:flex;align-items:center;justify-content:center;
  background:#54bd2c !important;color:#fff !important;
  font-family:'Baloo 2',cursive;font-size:26px;line-height:1;font-weight:400;
  text-decoration:none;cursor:pointer;opacity:1;padding:0;
  border:3px solid #0b1018;border-radius:50%;box-shadow:4px 4px 0 #0b1018;
  transition:transform .1s ease, box-shadow .1s ease, background .15s;
}
/* beat the more-specific iframe-scaler override (white bg / black text) */
/* iframe popups clip an outside-positioned close (overflow:hidden) — keep it inside, on top */
.mfp-iframe-scaler{overflow:visible !important;}
.mfp-iframe-scaler .mfp-close{
  background:#54bd2c !important;color:#000000 !important;
  top:6px !important;right:6px !important;
  width:44px;height:44px;line-height:1;font-weight:400;
  opacity:1 !important;z-index:1200;}
.mfp-close:hover{background:#3c9b18 !important;color:#fff !important;
  transform:translate(-2px,-2px) rotate(90deg);box-shadow:6px 6px 0 #0b1018;}
.mfp-close:active{transform:translate(1px,1px);box-shadow:1px 1px 0 #0b1018;}
/* keep it inside on small screens */
@media(max-width:1023.5px){.mfp-close,.mfp-iframe-scaler .mfp-close{top:8px;right:8px;}}

/* ============================================================
   BACK TO TOP BUTTON (.back-to-top-button) — Drainiacs comic theme
   Fixed scroll-to-top control, bottom-right.
   ============================================================ */
.back-to-top-button{
  position:fixed;right:24px;bottom:24px;z-index:900;
  width:54px;height:54px;display:flex;align-items:center;justify-content:center;
  background:#54bd2c;color:#fff !important;text-decoration:none;
  border:3px solid #0b1018;border-radius:15px;box-shadow:4px 4px 0 #0b1018;
  transition:transform .1s ease, box-shadow .1s ease, background .15s, opacity .25s ease, visibility .25s ease;
}
.back-to-top-button:hover{background:#3c9b18;color:#fff !important;
  transform:translateY(-4px);box-shadow:6px 6px 0 #0b1018;}
.back-to-top-button:active{transform:translateY(1px);box-shadow:1px 1px 0 #0b1018;}
/* normalise the FontAwesome icon: point it straight up, drop FA's border/pull/size quirks */
.back-to-top-button i{color:#fff;font-size:1.35rem;line-height:1;
  border:0 !important;padding:0 !important;margin:0 !important;float:none !important;
  transform:rotate(-90deg);}
.back-to-top-button:hover i{transform:rotate(-90deg) translateX(3px);transition:transform .15s ease;}
@media(max-width:1023.5px){
  .back-to-top-button{right:16px;bottom:16px;width:48px;height:48px;}
  .back-to-top-button i{font-size:1.2rem;}
}

/* ============================================================
   CONTACT FORM (.form-template-3 .ww-form-container-3) — Drainiacs comic-bold theme
   First/Last/Email/Phone(intl-tel-input)/Message + reCAPTCHA + submit.
   Scoped to the contact form so other forms are untouched.
   ============================================================ */
.form-template-3{
  --cf-ink:#0e1b2a; --cf-outline:#0b1018; --cf-blue:#1e7ae6; --cf-blue-dark:#0c4fa8;
  --cf-cyan:#7fe3fb; --cf-green:#54bd2c; --cf-green-dark:#3c9b18; --cf-ice:#e7f7fe; --cf-muted:#5b6b7c;
  --cf-bw:3px;
  font-family:'Mulish',system-ui,sans-serif;color:var(--cf-ink);
  padding-bottom:64px;
}
@media(max-width:1023.5px){.form-template-3{padding-bottom:48px;}}
.form-template-3 .spacer{height:24px;}
.form-template-3 .hide{display:none !important;}

/* ---- card ---- */
.form-template-3 .ww-form-container-3{
  max-width:720px;margin:20px auto 36px;background:#fff;
  border:var(--cf-bw) solid var(--cf-outline);border-radius:22px;box-shadow:6px 6px 0 var(--cf-outline);
  padding:44px;position:relative;overflow:hidden;}
/* brand accent bar on top */
.form-template-3 .ww-form-container-3::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;
  background:linear-gradient(90deg,var(--cf-green),var(--cf-blue));}
.form-template-3 .ww-form-container-3 form{width:100%;margin:0 auto;}

/* ---- fieldset → responsive 2-column grid ---- */
.form-template-3 .fieldset{border:0;margin:0;padding:0;
  display:grid;grid-template-columns:1fr 1fr;gap:18px;}
/* email, phone, message span full width */
.form-template-3 .email_wrap,
.form-template-3 .phone_wrap,
.form-template-3 .field_33492_wrap{grid-column:1 / -1;}
@media(max-width:639.5px){.form-template-3 .fieldset{grid-template-columns:1fr;}}

/* ---- labels ---- */
.form-template-3 label{display:block;font-family:'Baloo 2',cursive;font-weight:700;font-size:.95rem;
  color:var(--cf-ink);margin-bottom:7px;}
.form-template-3 label .required{color:#e0392b;margin-left:3px;}

/* ---- inputs / textarea ---- */
.form-template-3 input.input[type="text"],
.form-template-3 input.input[type="email"],
.form-template-3 textarea.input,
.form-template-3 input.phone_number,
.form-template-3 input[type="tel"]{width:100%;font-family:'Mulish',sans-serif;font-size:1rem;
  color:var(--cf-ink);background:var(--cf-ice);border:2px solid var(--cf-outline);border-radius:11px;
  padding:13px 15px;box-sizing:border-box;transition:box-shadow .15s, background .15s;}
.form-template-3 input.input:focus,
.form-template-3 textarea.input:focus,
.form-template-3 input[type="tel"]:focus{outline:none;background:#fff;box-shadow:3px 3px 0 var(--cf-green);}
.form-template-3 textarea.input{min-height:130px;resize:vertical;}

/* ---- intl-tel-input phone widget ---- */
.form-template-3 .iti{display:block;width:100%;position:relative;}
.form-template-3 .iti input[type="tel"]{padding-left:52px;}
/* flag container / selected flag button */
.form-template-3 .iti .iti__flag-container{padding:2px;}
.form-template-3 .iti .iti__selected-flag{border-radius:9px 0 0 9px;padding:0 8px 0 12px;
  background:transparent;transition:background .15s;}
.form-template-3 .iti .iti__selected-flag:hover,
.form-template-3 .iti .iti__selected-flag:focus{background:rgba(30,122,230,.08);}
.form-template-3 .iti .iti__arrow{border-top-color:var(--cf-blue-dark);margin-left:6px;}
.form-template-3 .iti .iti__arrow--up{border-bottom-color:var(--cf-blue-dark);}
/* country dropdown list */
.form-template-3 .iti .iti__country-list{background:#fff;border:var(--cf-bw) solid var(--cf-outline);
  border-radius:12px;box-shadow:6px 6px 0 var(--cf-outline);margin-top:6px;
  max-height:240px;font-family:'Mulish',sans-serif;}
.form-template-3 .iti .iti__country{padding:9px 12px;font-size:.95rem;color:var(--cf-ink);}
.form-template-3 .iti .iti__country.iti__highlight,
.form-template-3 .iti .iti__country:hover{background:var(--cf-ice);}
.form-template-3 .iti .iti__dial-code{color:var(--cf-muted);}
.form-template-3 .iti .iti__divider{border-bottom:2px dashed var(--cf-ice);}
/* valid checkmark */
.form-template-3 #mob_phone_phone_number_valid{font-family:'Baloo 2',cursive;font-weight:700;
  font-size:.85rem;color:var(--cf-green-dark) !important;display:inline-block;margin-top:6px;}
.form-template-3 #mob_phone_phone_number_valid.hide{display:none !important;}

/* ---- validation errors ---- */
.form-template-3 .error{display:block;color:#e0392b;font-size:.85rem;font-weight:700;margin-top:5px;}

/* ---- bottom container (captcha + submit) ---- */
.form-template-3 .form-container{margin-top:20px;}
.form-template-3 .captcha_wrap{margin:6px 0 16px;}
.form-template-3 .recaptcha-block{display:flex;justify-content:center;}
.form-template-3 .submit_wrap{text-align:center;}
.form-template-3 .submit_wrap.padding-top-1{padding-top:8px;}

/* ---- submit button ---- */
.form-template-3 input.button[type="submit"]{display:inline-flex;align-items:center;justify-content:center;
  cursor:pointer;font-family:'Baloo 2',cursive;font-weight:800;font-size:1.05rem;line-height:1;text-transform:none;
  background:var(--cf-green);color:#fff;border:var(--cf-bw) solid var(--cf-outline);border-radius:13px;
  padding:15px 40px;box-shadow:4px 4px 0 var(--cf-outline);
  transition:transform .08s ease, box-shadow .08s ease, background .15s;}
.form-template-3 input.button[type="submit"]:hover{background:var(--cf-green-dark);
  transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--cf-outline);}
.form-template-3 input.button[type="submit"]:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--cf-outline);}
@media(max-width:639.5px){.form-template-3 input.button[type="submit"]{width:100%;}}