/*
Theme Name: Peak District Drain Jetting — Concept
Theme URI: https://drainage.wejustrank.com/
Author: We Just Rank
Description: Bespoke one-page preview for Peak District Drain Jetting. Responsive, Gutenberg/Elementor-compatible page templates and Customizer content controls.
Version: 1.4.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: pd-drain
*/
:root{--orange:#FD6603;--red:#F24F03;--amber:#FD9303;--ink:#101112;--dark:#17191b;--cream:#f6f5f1;--muted:#65686a;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;color:#16191b;background:#fff;font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,input,textarea{font:inherit}.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}.kicker{font-weight:800;text-transform:uppercase;font-size:.77rem;letter-spacing:.18em;color:var(--red)}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em;line-height:1.12}h1{font-size:clamp(3.1rem,6.25vw,6rem);max-width:770px;font-weight:900}h2{font-size:clamp(2.2rem,4vw,3.7rem);font-weight:850}h3{font-size:1.4rem}p{color:#4d5053}.section{padding:105px 0}.section-heading{max-width:760px;margin-bottom:45px}.section-heading p:last-child{font-size:1.09rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;border-radius:7px;padding:15px 22px;background:var(--orange);color:#111;font-weight:850;transition:transform .2s,background .2s;line-height:1.2}.btn:hover{transform:translateY(-2px);background:var(--amber)}.btn-outline{border:1px solid #ffffff70;background:transparent;color:#fff}.btn-outline:hover{background:#ffffff15;color:#fff}.btn-dark{background:#151617;color:white}.icon{width:20px;height:20px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.topline{background:#080909;color:#f6f6f6;padding:8px 0;font-size:.78rem}.topline .wrap{display:flex;justify-content:space-between;gap:14px}.topline strong{color:var(--amber)}.header{background:#101112;color:white;position:sticky;top:0;z-index:30;border-bottom:1px solid #ffffff1d}.nav{min-height:85px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;min-width:245px}.brand img{width:175px;height:55px;object-fit:contain}.links{display:flex;align-items:center;gap:25px;font-size:.9rem;font-weight:700}.links a:not(.btn):hover{color:var(--amber)}.links .btn{font-size:.88rem}.menu-toggle{display:none;background:none;border:1px solid #777;color:white;border-radius:6px;padding:9px}.hero{background:#111;position:relative;color:white;min-height:640px;overflow:hidden}.hero-img{position:absolute;inset:0 0 0 auto;width:58%;height:100%;object-fit:cover;object-position:center 44%;filter:saturate(1.05)}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0c0d0efc 0%,#0c0d0ef7 34%,#0c0d0ec8 54%,#0c0d0e00 90%)}.hero-content{position:relative;z-index:1;padding:95px 0 112px}.hero .kicker{color:var(--amber)}.hero h1{margin:15px 0 20px}.hero h1 em{color:var(--orange);font-style:normal}.hero p{color:#ddd;font-size:1.12rem;max-width:540px;margin-bottom:28px}.hero-actions{display:flex;gap:13px;flex-wrap:wrap}.hero-note{display:flex;gap:20px;flex-wrap:wrap;margin-top:35px;font-size:.89rem;font-weight:750;color:#f7f7f7}.hero-note span:before{content:'✓';color:var(--amber);margin-right:8px}.trust{background:var(--orange);color:#111}.trust .wrap{display:flex;gap:22px;justify-content:space-between;align-items:center;padding:25px 0;flex-wrap:wrap}.trust p{margin:0;color:#1b1b1b;font-weight:650}.trust strong{font-size:1.25rem}.stars{letter-spacing:.15em}.services{background:var(--cream)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{background:#fff;border:1px solid #e6e3dd;border-radius:12px;padding:29px;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #00000010}.service-card .number{font-size:.75rem;letter-spacing:.14em;color:var(--red);font-weight:850;margin-bottom:20px}.service-card h3{margin-bottom:13px}.service-card p{margin:0;font-size:.94rem}.more{margin-top:18px;color:#c94600;font-weight:800;font-size:.86rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.split img{width:100%;height:510px;object-fit:cover;border-radius:14px}.ticks{padding:0;margin:22px 0;list-style:none}.ticks li{margin-bottom:11px;font-weight:700}.ticks li:before{content:'✓';margin-right:12px;color:var(--red)}.dark{background:#111314;color:#fff}.dark p{color:#c5c6c7}.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.work-photo{position:relative;border-radius:10px;overflow:hidden;min-height:230px;background:#292929}.work-photo img{width:100%;height:260px;object-fit:cover;transition:transform .3s}.work-photo:hover img{transform:scale(1.04)}.work-photo figcaption{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,#000d);color:#fff;padding:35px 15px 14px;font-weight:780;font-size:.88rem}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review{background:#fff;border:1px solid #e6e3dd;border-radius:11px;padding:30px;display:flex;flex-direction:column;gap:14px;box-shadow:0 8px 24px #00000005}.review p{font-size:.96rem;color:#323537;flex:1;margin:0}.review .starline{color:#e55b08;letter-spacing:2px}.review b{font-size:.92rem}.review small{color:var(--muted)}.areas{background:#181a1b;color:white}.areas p{color:#c9ccce}.area-tags{display:flex;gap:11px;flex-wrap:wrap;margin-top:30px}.area-tags span{border:1px solid #454647;border-radius:100px;padding:10px 18px;font-size:.9rem;font-weight:750}.faq-list{max-width:830px}.faq-list details{border-bottom:1px solid #ddd;padding:19px 0}.faq-list summary{cursor:pointer;font-weight:800;font-size:1.04rem;list-style:none;display:flex;justify-content:space-between;gap:14px}.faq-list summary:after{content:'+';color:var(--red);font-size:1.5rem;line-height:1}.faq-list details[open] summary:after{content:'−'}.faq-list p{margin:16px 0 0}.contact{background:var(--cream)}.contact-panel{background:#151718;color:#fff;border-radius:15px;padding:52px;display:grid;grid-template-columns:1.2fr .8fr;gap:45px}.contact-panel p{color:#c9c9c9}.contact-panel h2{margin-bottom:18px}.contact-details{align-self:center}.contact-details a{display:block;margin:8px 0 20px;font-size:clamp(1.15rem,2vw,1.5rem);font-weight:800}.footer{background:#0d0f10;color:#aeb1b2;padding:32px 0;font-size:.85rem}.footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.footer p{color:#aeb1b2;margin:0}.mobile-call{display:none}.page-content{padding:80px 0;min-height:60vh}.page-content h1{font-size:3.2rem}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px)}.screen-reader-text:focus{clip:auto;background:white;color:black;padding:10px;z-index:9999}
@media(max-width:980px){.links{gap:14px}.nav .btn{display:none}.cards{grid-template-columns:repeat(2,1fr)}.split{gap:35px}.work-grid{grid-template-columns:repeat(2,1fr)}.review-grid{grid-template-columns:repeat(2,1fr)}.hero-img{width:75%}.hero:after{background:linear-gradient(90deg,#0c0d0efa,#0c0d0ee6 48%,#0c0d0e55)}}
@media(max-width:720px){.wrap{width:min(var(--max),calc(100% - 36px))}.topline .wrap span:nth-child(2){display:none}.nav{min-height:72px}.brand{min-width:0}.brand img{width:158px;height:48px}.menu-toggle{display:block}.links{display:none;position:absolute;left:0;right:0;top:100%;background:#101112;padding:25px 20px;flex-direction:column;align-items:flex-start;box-shadow:0 14px 24px #0006}.links.open{display:flex}.hero{min-height:665px}.hero-img{width:100%;height:100%;object-position:center center;opacity:.48}.hero:after{background:linear-gradient(90deg,#0b0b0cf2,#0b0b0c83),linear-gradient(0deg,#0b0b0cbb,transparent 60%)}.hero-content{padding:75px 0 80px}.hero h1{font-size:clamp(2.85rem,12vw,4.5rem)}.hero p{font-size:1rem}.section{padding:70px 0}.cards,.split,.review-grid,.contact-panel{grid-template-columns:1fr}.split img{height:320px}.work-grid{grid-template-columns:repeat(2,1fr);gap:9px}.work-photo{min-height:0}.work-photo img{height:185px}.work-photo figcaption{font-size:.78rem;padding:30px 9px 9px}.contact-panel{padding:30px;gap:15px}.footer{padding-bottom:85px}.mobile-call{display:flex;align-items:center;justify-content:center;position:fixed;bottom:0;left:0;right:0;z-index:40;background:var(--orange);color:#111;min-height:64px;font-weight:900;box-shadow:0 -3px 15px #0004}.trust .wrap{gap:8px}.trust strong{font-size:1rem}.trust p{font-size:.9rem}}
@media(max-width:400px){.work-grid{grid-template-columns:1fr}.work-photo img{height:240px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* v1.1 refinements */
.brand{min-width:260px}.brand img{width:205px;height:62px}.nav{min-height:79px}
.hero{min-height:625px}.hero-img{inset:0;width:100%;height:100%;object-fit:cover;object-position:center 49%;filter:saturate(1.08)}
.hero:after{background:linear-gradient(90deg,#0c0d0efc 0%,#0c0d0ef5 23%,#0c0d0edd 39%,#0c0d0e8e 57%,#0c0d0e19 83%),linear-gradient(0deg,#0b0b0b6b,transparent 40%)}
.hero-content{padding:91px 0 86px}.hero h1{font-size:clamp(3.15rem,4.9vw,5.3rem);max-width:675px;line-height:1.045;letter-spacing:-.052em;margin:21px 0 22px}
.hero h1 span{display:block;font-size:.77em;line-height:1.13;margin-top:11px;letter-spacing:-.045em}.hero h1 em{color:var(--amber)}
.hero p{max-width:515px;font-size:1.08rem}.hero-note{margin-top:28px}
.section-heading{margin-bottom:36px}.services .section-heading h2{max-width:900px}
.service-card{padding:0;overflow:hidden;display:flex;flex-direction:column;border-radius:14px}.service-image{height:165px;position:relative;overflow:hidden;background:#202020}
.service-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent 65%);pointer-events:none}
.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-card:hover .service-image img{transform:scale(1.045)}
.service-image span{position:absolute;bottom:13px;left:19px;z-index:1;color:#fff;font-weight:850;font-size:.7rem;letter-spacing:.1em}
.service-body{padding:24px 25px 27px;display:flex;flex-direction:column;flex:1}.service-body h3{font-size:1.28rem;letter-spacing:-.035em}.service-body .number{margin-bottom:12px}.service-body p{flex:1;line-height:1.55}.more{display:inline-flex;justify-content:space-between;align-items:center;margin-top:23px;color:#b43e00}.more span{font-size:1.3rem}
.work-photo a{display:block;position:relative}.zoom{position:absolute;right:12px;top:12px;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#ffffffec;color:#151515;font-weight:900;z-index:2;opacity:0;transition:opacity .2s}.work-photo:hover .zoom,.work-photo:focus-within .zoom{opacity:1}
.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:99999;background:#050505ed;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:55px 22px 30px}.lightbox img{max-width:min(1100px,95vw);max-height:79vh;object-fit:contain;border-radius:6px}.lightbox-caption{color:white;font-size:1rem;margin:15px 0}.lightbox-close{position:absolute;top:12px;right:26px;background:none;border:0;color:white;font-size:44px;line-height:1;cursor:pointer}
.review-grid{gap:22px}.review{padding:32px;border-top:4px solid var(--orange);position:relative;box-shadow:0 12px 35px #0000000a;gap:14px}.review-mark{position:absolute;top:12px;right:22px;font-size:5rem;color:#ffe7d8;font-family:Georgia,serif;line-height:1}.review p{position:relative;font-size:1rem;line-height:1.75}.review-type{color:var(--red);font-weight:850;letter-spacing:.12em;font-size:.7rem}.review b{margin-top:12px}
.areas{background:radial-gradient(ellipse at 95% 0%,#3f261a 0%,#181a1b 53%)}.area-tags span:hover{border-color:var(--amber);color:var(--amber)}
@media(max-width:980px){.brand{min-width:0}.brand img{width:180px}.hero-img{width:100%}.hero:after{background:linear-gradient(90deg,#0c0d0efa 0%,#0c0d0ee8 36%,#0c0d0e7d 70%,#0c0d0e2d 100%)}.hero h1{max-width:620px;font-size:clamp(3rem,6vw,4.9rem)}}
@media(max-width:720px){.brand img{width:171px;height:52px}.hero{min-height:640px}.hero-img{opacity:1;object-position:58% center}.hero:after{background:linear-gradient(90deg,#0c0d0ef2,#0c0d0eaa),linear-gradient(0deg,#0c0d0edc,transparent 75%)}.hero-content{padding:65px 0 69px}.hero h1{font-size:clamp(2.75rem,10.5vw,4rem);max-width:100%}.hero h1 span{font-size:.81em}.hero p{font-size:1rem}.service-image{height:190px}.zoom{opacity:1}.review{padding:25px}}

/* v1.2: remove baked-in source-photo box; make header branding readable */
@media(min-width:981px){
  .brand{min-width:305px}
  .brand img{width:250px;height:auto;max-height:78px;object-fit:contain}
  .nav{min-height:88px}
  .hero h1{font-size:clamp(3.35rem,4.2vw,4.65rem);max-width:640px;line-height:1.07}
  .hero h1 span{font-size:.85em;line-height:1.17}
  .hero-content{padding:79px 0 83px}
}
.hero-img{object-position:center 40%}
.hero:after{background:linear-gradient(90deg,#0c0d0eff 0%,#0c0d0efc 22%,#0c0d0eed 38%,#0c0d0e99 59%,#0c0d0e12 94%)}
@media(max-width:980px){.brand img{width:200px;height:auto;max-height:63px}.hero:after{background:linear-gradient(90deg,#0c0d0afa 0%,#0c0d0eea 36%,#0c0d0e82 70%,#0c0d0e24 100%)}}
@media(max-width:720px){.brand img{width:175px;max-height:52px}.hero:after{background:linear-gradient(90deg,#0c0d0ef2,#0c0d0eaa),linear-gradient(0deg,#0c0d0edc,transparent 75%)}}

/* v1.3 transparent brand mark blends with the charcoal navigation */
.brand img{background:transparent;object-fit:contain}

/* v1.4 scenic hero refinements */
.hero{min-height:625px}
.hero-img{inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:saturate(1.04) contrast(1.03) brightness(.9)}
.hero:after{background:linear-gradient(90deg,#0b0c0dfc 0%,#0b0c0df9 21%,#0b0c0def 34%,#0b0c0ddd 47%,#0b0c0d9d 59%,#0b0c0d45 72%,#0b0c0d08 88%),linear-gradient(0deg,#0b0c0d66 0%,transparent 44%)}
.hero-content{padding:79px 0 83px}
.hero h1{font-size:clamp(3.35rem,4.2vw,4.65rem);max-width:640px;line-height:1.07}
.hero h1 span{font-size:.85em;line-height:1.17}
@media(max-width:980px){
.brand img{width:200px;height:auto;max-height:63px}
.hero-img{object-position:60% center}
.hero:after{background:linear-gradient(90deg,#0b0c0dfa 0%,#0b0c0de9 34%,#0b0c0d83 67%,#0b0c0d22 100%)}
}
@media(max-width:720px){
.brand img{width:175px;max-height:52px}
.hero{min-height:640px}
.hero-img{object-position:68% center;filter:saturate(1.02) brightness(.82)}
.hero:after{background:linear-gradient(90deg,#0b0c0df0 0%,#0b0c0dc6 46%,#0b0c0d7a 100%),linear-gradient(0deg,#0b0c0de0 0%,transparent 74%)}
}
