/*
Theme Name: MH Septic
Theme URI: https://www.mhseptic.co.uk/
Author: MH Septic
Description: A standalone classic theme for MH Septic with bundled branding, rural service sections and a native enquiry form. No parent theme or plugins required.
Version: 1.1.2
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mh-septic
Tags: custom-logo, custom-menu, featured-images, one-column
*/
:root{--blue:#084888;--navy:#092d4b;--aqua:#067b86;--ink:#193047;--muted:#546575;--pale:#f1f5f6;--line:#d9e2e8;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:var(--blue);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{touch-action:manipulation}:focus-visible{outline:3px solid #159fb6;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.1;letter-spacing:-.035em}h1{font-size:clamp(40px,4.9vw,70px)}h2{font-size:clamp(34px,3.45vw,49px);font-weight:700;margin-bottom:24px}h3{font-size:25px}p{margin-bottom:22px}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.topbar{background:var(--navy);color:#dce7f0;font-size:12px;padding:9px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:20px}.topbar a{color:#fff;text-decoration:none}.site-header{background:#fff;position:relative;z-index:5}.header-inner{min-height:106px;display:flex;gap:24px;align-items:center}.brand{flex-shrink:0}.brand>a{display:flex;align-items:center;text-decoration:none;gap:10px}.logo-crop{position:relative;display:block;width:100px;height:48px;overflow:hidden}.logo-crop img{position:absolute;width:100px;max-width:none;top:-50px;left:0}.brand-name{font-size:25px;font-weight:800;line-height:1.2;color:var(--blue);letter-spacing:.04em}.brand-name small{display:block;font-size:7px;letter-spacing:.09em}.custom-logo{max-width:220px;max-height:80px;width:auto;object-fit:contain}.header-inner nav{margin-left:auto}.menu{display:flex;gap:24px;list-style:none;padding:0;margin:0}.menu a{text-decoration:none;font-size:13px;font-weight:700;color:var(--ink)}.menu li{position:relative}.sub-menu{display:none;position:absolute;background:#fff;min-width:180px;padding:15px;list-style:none;box-shadow:0 8px 20px #0002}.menu li:hover>.sub-menu,.menu li:focus-within>.sub-menu{display:block}.header-phone{font-size:14px;font-weight:700;white-space:nowrap;text-decoration:none}.button{display:inline-flex;gap:22px;justify-content:space-between;align-items:center;background:var(--blue);color:#fff;padding:15px 23px;border:1px solid transparent;border-radius:3px;text-decoration:none;line-height:1.4;font-size:14px;font-weight:700;cursor:pointer}.button:hover{background:#063767;color:#fff}.header-quote{padding:13px 17px;font-size:12px;white-space:nowrap}.hero{position:relative;isolation:isolate;background:var(--navy);color:#fff;overflow:hidden;min-height:665px}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,25,42,.88),rgba(4,25,42,.60) 43%,rgba(4,25,42,.10) 78%);z-index:-1}.no-image:after{background:radial-gradient(ellipse at 95% 90%,#17658a 0,transparent 62%),linear-gradient(125deg,#082e50,#063e62)}.hero-inner{padding-block:82px 78px}.hero-copy{max-width:670px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:800;color:var(--aqua);margin-bottom:23px}.eyebrow.light{color:#c1ebec}.hero h1{margin-bottom:26px}.hero-lead{font-size:17px;line-height:1.7;max-width:490px;color:#e5edf2}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}.button-white{background:#fff;color:var(--navy)}.button-outline{background:transparent;border-color:#c2d2df;color:#fff}.hero-area{font-size:12px;color:#e0ebf2;line-height:1.9;margin:0}.hero-caption{position:absolute;bottom:24px;right:40px;font-size:9px;letter-spacing:.16em}.trust-strip{border-bottom:1px solid var(--line)}.trust-strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);padding-block:24px;gap:24px;font-size:13px;font-weight:700}.trust-strip b{color:var(--aqua);margin-right:12px}.section{padding-block:94px}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end;margin-bottom:44px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:485px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{border:1px solid var(--line);border-top:4px solid var(--blue);padding:32px;display:flex;flex-direction:column;scroll-margin-top:30px}.card-number{font-size:10px;letter-spacing:.15em;font-weight:700;color:var(--aqua);margin-bottom:34px}.service-card h3{max-width:250px}.service-card p{font-size:14px;color:var(--muted)}.service-card .card-detail{font-size:12px;border-top:1px solid var(--line);padding-top:20px;margin-top:auto}.service-card>a{font-size:13px;font-weight:700;text-decoration:none;display:flex;justify-content:space-between;gap:12px}.pale{background:var(--pale)}.process-grid{counter-reset:step;display:grid;grid-template-columns:repeat(3,1fr);gap:40px 45px;list-style:none;padding:0;margin:52px 0 0}.process-grid li{counter-increment:step;border-top:1px solid #cbd8df;padding-top:25px}.process-grid li:before{content:'0' counter(step);display:block;font-size:13px;font-weight:800;color:var(--aqua);margin-bottom:20px}.process-grid h3{font-size:21px;margin-bottom:13px}.process-grid p{font-size:14px;color:var(--muted);margin:0;max-width:300px}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px}.large-copy{font-size:24px;line-height:1.45}.split>div>p:not(.eyebrow):not(.large-copy){color:var(--muted)}.check-list{list-style:none;padding:0;margin:26px 0}.check-list li{padding:10px 0 10px 29px;border-bottom:1px solid var(--line);position:relative;font-size:14px}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--aqua)}.text-link{font-size:14px;font-weight:700;text-decoration:none}.compliance{padding-block:73px;background:var(--blue);color:#fff}.compliance .split>div>p:not(.eyebrow){color:#e5eff8;font-size:14px}.compliance a{color:#fff;font-size:13px;font-weight:700}.compliance h2{font-size:37px}.county-list>div{padding:21px 0 19px 43px;border-bottom:1px solid var(--line);position:relative}.county-list>div:first-child{padding-top:0}.county-list span{position:absolute;left:0;color:var(--aqua);font-size:12px;font-weight:800}.county-list h3{font-size:23px;margin-bottom:10px}.county-list p{font-size:13px;color:var(--muted);margin:0}.faqs details{border-bottom:1px solid #cbd8df;padding:20px 0}.faqs details:first-child{padding-top:0}.faqs summary{font-size:16px;font-weight:700;cursor:pointer;padding-right:22px}.faqs details p{font-size:14px;color:var(--muted);padding-top:18px;margin:0}.contact-phone{display:block;font-size:32px;font-weight:700;text-decoration:none;margin-top:34px}.contact-email{display:block;text-decoration:none;margin:8px 0 26px;overflow-wrap:anywhere}.small{font-size:12px;color:var(--muted)}.form-panel{padding:34px;background:var(--pale);border:1px solid var(--line);border-radius:4px}.form-panel h3{font-size:25px;margin-bottom:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}label{display:block;font-size:12px;font-weight:700;margin-bottom:18px}input:not([type=checkbox]):not([type=hidden]),textarea,select{display:block;width:100%;min-width:0;border:1px solid #bccbd5;background:#fff;padding:11px 12px;border-radius:2px;margin-top:7px;color:var(--ink);font-size:15px}textarea{resize:vertical}.consent{display:flex;align-items:flex-start;gap:10px;font-weight:400;line-height:1.5}.consent input{margin-top:3px;min-width:17px;min-height:17px}.form-panel .small{margin:13px 0 0}.honeypot{position:absolute;left:-10000px;overflow:hidden;width:1px;height:1px}.form-notice{padding:15px;border-left:4px solid var(--aqua);background:#fff;font-size:14px}.site-footer{background:var(--navy);color:#fff;padding:56px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:65px;padding-bottom:40px}.footer-brand{font-weight:800;font-size:36px;letter-spacing:-.06em;margin-bottom:8px}.footer-brand span{font-size:22px;letter-spacing:.05em}.site-footer p{font-size:14px;color:#d0dde7}.site-footer .footer-brand{font-size:36px;color:#fff}.site-footer h2{font-size:14px;letter-spacing:0;margin:13px 0 19px}.site-footer a{font-size:13px;color:#d0dde7;text-decoration:none;overflow-wrap:anywhere}.footer-bottom{border-top:1px solid #ffffff26;padding-top:22px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:10px;color:#bfd0de}.footer-bottom a{font-size:10px}.skip-link{position:absolute;top:-100px;left:16px;background:#fff;padding:12px;z-index:100}.skip-link:focus{top:8px}.menu-toggle{border:1px solid var(--line);background:#fff;color:var(--blue);padding:10px 14px;border-radius:3px;cursor:pointer}.menu-toggle[hidden]{display:none}.content-area{min-height:55vh;max-width:1000px;overflow-wrap:anywhere}.content-area article{margin-bottom:45px}.content-area h1{font-size:45px}.content-area h2{font-size:32px}.alignleft{float:left;margin:0 24px 18px 0}.alignright{float:right;margin:0 0 18px 24px}.aligncenter{margin-inline:auto;display:block}.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{font-size:13px}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.bypostauthor{border-left:2px solid var(--blue)}
@media(min-width:1051px) and (max-width:1250px){.header-phone{display:none}.menu{gap:18px}.header-inner{gap:18px}.wrap{width:calc(100% - 64px)}}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.header-inner{flex-wrap:wrap;min-height:92px;gap:16px;padding-block:17px}.menu-toggle{margin-left:auto}.header-phone{margin-left:auto}.header-quote{display:none}.header-inner nav{width:100%;order:4;margin:0}.mobile-nav{display:none}.mobile-nav.is-open{display:block}.menu{flex-wrap:wrap;gap:18px;padding:15px 0}.sub-menu{position:static;display:block;box-shadow:none}.hero{min-height:620px}.hero-inner{padding-block:65px}.hero h1{font-size:58px}.section{padding-block:70px}.split,.section-heading{gap:45px}.service-card{padding:24px}.trust-strip .wrap{gap:16px;font-size:11px}.service-card h3{font-size:23px}.form-panel{padding:25px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.topbar{font-size:10px}.topbar a{display:none}.header-inner{min-height:83px;gap:10px}.header-phone{display:none}.logo-crop{width:83px;height:40px}.logo-crop img{width:83px;top:-42px}.brand-name{font-size:22px}.brand-name small{font-size:6px}.menu{display:block}.menu li>a{display:block;padding:10px 0}.hero{min-height:650px}.hero-image{object-position:65% center}.hero:after{background:linear-gradient(90deg,#061d32e8,#061d32a6)}.hero-inner{padding-top:60px;padding-bottom:60px}.hero h1{font-size:43px}.hero-lead{font-size:16px;max-width:440px}.eyebrow{font-size:10px}.actions{gap:12px}.hero .button{padding:14px 17px;font-size:12px;gap:13px}.hero-caption{left:20px;right:auto;font-size:8px}.trust-strip .wrap{grid-template-columns:1fr 1fr;font-size:11px;gap:17px 10px;padding-block:23px}.trust-strip b{margin-right:5px}.section{padding-block:58px}.section-heading,.split{grid-template-columns:1fr;gap:30px}.section-heading{margin-bottom:30px}.service-grid{grid-template-columns:1fr;gap:18px}.service-card{padding:27px}.card-number{margin-bottom:25px}.service-card h3{max-width:none;font-size:27px}.process-grid{grid-template-columns:1fr 1fr;gap:30px 23px;margin-top:35px}.process-grid h3{font-size:20px}.process-grid p{font-size:13px}.compliance{padding-block:55px}.compliance h2{font-size:32px}.county-list{margin-top:5px}.contact-phone{font-size:30px;margin-top:20px}.form-panel{padding:23px}.form-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span,.footer-bottom a{display:block;margin-bottom:8px}.content-area h1{font-size:36px}h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Compact stacked MH Septic brand. */
.brand > a.brand-stacked{display:flex;flex-direction:column;align-items:center;gap:2px;width:132px;padding:7px 0;text-decoration:none}
.brand-stacked .logo-crop{width:132px;height:54px}
.brand-stacked .logo-crop img{width:132px;top:-67px;left:0}
.brand-stacked .brand-name{font-size:20px;line-height:1.15;font-weight:800;letter-spacing:.22em;padding-left:.22em;color:var(--blue)}
@media(max-width:700px){.brand > a.brand-stacked{width:110px;padding:0;gap:2px}.brand-stacked .logo-crop{width:110px;height:45px}.brand-stacked .logo-crop img{width:110px;top:-56px}.brand-stacked .brand-name{font-size:17px}}

/* Dedicated pages and keyboard-accessible service navigation. */
.menu{gap:19px}.menu a[aria-current="page"]{color:var(--blue);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}
.services-menu summary{cursor:pointer;font-size:13px;font-weight:700;white-space:nowrap;color:var(--ink)}
.service-submenu{position:absolute;top:35px;left:-18px;width:240px;background:#fff;border:1px solid var(--line);border-radius:4px;padding:12px 18px;list-style:none;box-shadow:0 10px 24px #092d4b20}
.service-submenu li a{display:block;padding:10px 0}.services-menu[open]>summary{color:var(--blue)}
.page-masthead{background:var(--pale);border-bottom:1px solid var(--line);padding:32px 0 65px}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:38px}.breadcrumbs a{color:var(--muted)}.page-masthead h1{max-width:940px;font-size:clamp(38px,4.5vw,62px);margin-bottom:23px}.page-intro{font-size:19px;max-width:760px;color:var(--muted)}
.page-body{padding-block:62px;max-width:1100px}.page-body>p{max-width:820px}.page-section{margin-bottom:52px}.page-section:last-child{margin-bottom:0}.page-section h2{font-size:34px;max-width:900px}.page-section>p{max-width:840px}.page-section .check-list{max-width:850px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:36px 0 52px}.detail-card{padding:28px;border:1px solid var(--line);border-top:3px solid var(--blue)}.detail-card h3{font-size:22px}.detail-card p{font-size:14px;color:var(--muted);margin:0}.page-body .process-grid{margin:0 0 52px}.page-body .county-list{margin-bottom:52px}.quote-banner .wrap{display:flex;justify-content:space-between;gap:30px;align-items:center}.quote-banner h2{margin-bottom:14px}.quote-banner p:last-child{margin:0}.quote-banner .button{flex-shrink:0}.page-body+.contact{padding-top:0}
@media(min-width:1051px) and (max-width:1400px){.header-phone{display:none}}
@media(max-width:1050px){.service-submenu{position:static;box-shadow:none;margin-top:12px;width:100%}.services-menu summary{padding:10px 0}.menu{gap:15px}}
@media(max-width:700px){.page-masthead{padding:24px 0 42px}.page-masthead h1{font-size:38px}.page-intro{font-size:17px}.breadcrumbs{font-size:11px;margin-bottom:28px}.page-body{padding-block:42px}.detail-grid{grid-template-columns:1fr;gap:18px}.page-section h2{font-size:29px}.quote-banner .wrap{display:block}.quote-banner .button{margin-top:25px}.service-submenu{padding:8px 18px}.page-section{margin-bottom:38px}}

/* Direct service links, with a consistent vertical alignment. */
@media(min-width:1051px){
 .header-inner{gap:18px}
 #primary-navigation>.menu{align-items:center;gap:17px;flex-wrap:nowrap}
 #primary-navigation>.menu>li{display:flex;align-items:center}
 #primary-navigation>.menu>li>a{display:flex;align-items:center;min-height:44px;line-height:1.3;white-space:nowrap}
 .header-phone{display:none}
}
@media(min-width:1051px) and (max-width:1200px){
 #primary-navigation>.menu{gap:12px}
 #primary-navigation>.menu>li>a{font-size:12px}
 .header-quote{padding:12px}
 .brand>a.brand-stacked{width:110px}
 .brand-stacked .logo-crop{width:110px;height:45px}
 .brand-stacked .logo-crop img{width:110px;top:-56px}
}
@media(max-width:1050px){#primary-navigation>.menu{display:block}#primary-navigation>.menu>li>a{display:block;padding:11px 0;line-height:1.4}}

/* Keep the original blue Swoosh legible against the dark footer. */
.site-footer .footer-logo{display:inline-block;background:#fff;border-radius:4px;padding:10px 15px;margin-bottom:22px}
.site-footer .footer-logo .brand-name{color:var(--blue);font-size:20px}
/* Override the compliance section's general white-link rule. */
.compliance a.button-white,.compliance a.button-white:visited{background:#fff;color:var(--navy);font-size:14px}
.compliance a.button-white:hover,.compliance a.button-white:focus-visible{background:#e5eff8;color:var(--navy)}
