/*
Theme Name: SureFlow
Author: SureFlow Heating & Plumbing
Description: Lightweight domestic heating and plumbing theme with editable block content and a draft-only content installer.
Version: 1.3.2
Requires at least: 6.6
Requires PHP: 8.2
License: GPL-2.0-or-later
Text Domain: sureflow
*/
:root{--navy:#102b46;--blue:#145cce;--sky:#eaf2fc;--ink:#223b50;--muted:#53687a;--line:#d9e2eb;--paper:#f5f7f9;--white:#fff;--radius:12px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font:17px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:white}a{color:var(--blue);text-underline-offset:4px}a:hover{text-decoration:underline}img{max-width:100%;height:auto;display:block}h1,h2,h3{color:var(--navy);line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.7rem,5vw,4.9rem);margin:.3em 0}h2{font-size:clamp(2rem,3vw,3rem);margin:0 0 .6em}h3{font-size:1.4rem}p{margin:0 0 1.2em}.wrap{width:min(1200px,calc(100% - 48px));margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:750;color:var(--blue)}.topbar{background:var(--navy);color:#fff;font-size:.77rem;padding:8px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:20px}.topbar a{color:white}.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.header-row{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:93px}.brand{text-decoration:none;display:flex;align-items:center;gap:10px;color:var(--navy);font-size:1.8rem;font-weight:800;line-height:1}.brand small{display:block;font-size:.62rem;letter-spacing:.16em;margin-top:9px;text-transform:uppercase}.brand-mark{background:var(--blue);color:#fff;border-radius:50% 50% 50% 8%;width:42px;height:48px;display:grid;place-items:center;font-size:25px}.menu{display:flex;align-items:center;gap:22px;list-style:none;margin:0;padding:0}.menu a{font-size:.86rem;text-decoration:none;color:var(--navy);font-weight:650}.menu a:hover,.menu .current-menu-item a{color:var(--blue)}.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:6px;padding:14px 22px;text-decoration:none;font:700 .93rem/1.4 system-ui;cursor:pointer}.button:hover{background:#104ca9;color:white;text-decoration:none}.button.secondary{background:white;color:var(--navy);border-color:var(--line)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.hero{background:var(--paper);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:58px;align-items:center;padding:76px 0}.hero p{max-width:540px;font-size:1.12rem;color:var(--muted)}.hero-art{position:relative}.hero-art img{width:100%;aspect-ratio:4/4.4;object-fit:cover;border-radius:140px 12px 12px 12px}.photo-note{position:absolute;bottom:24px;left:-20px;background:white;padding:22px 26px;box-shadow:0 12px 36px #102b4620;border-radius:8px;max-width:85%;line-height:1.4}.photo-note strong{display:block;font-size:1.2rem;color:var(--navy)}.photo-note span{font-size:.82rem;color:var(--muted)}.hero .small{font-size:.83rem}.trust-strip{border-bottom:1px solid var(--line);padding:24px 0}.trust-strip .wrap{display:flex;justify-content:space-between;gap:20px;font-weight:650;font-size:.9rem}.trust-strip span:before{content:'✓';color:var(--blue);margin-right:10px}.section{padding:84px 0}.section.light{background:var(--paper)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:32px}.section-head p{max-width:430px;color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;text-decoration:none;color:var(--ink);display:block}.card:hover{border-color:var(--blue);text-decoration:none}.card-number{color:var(--blue);font-size:.8rem;letter-spacing:.12em}.card p{font-size:.94rem;color:var(--muted)}.card .more{font-size:.9rem;font-weight:700;color:var(--blue)}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.steps{counter-reset:step}.step{border-top:1px solid var(--line);padding:20px 0 10px}.step h3:before{counter-increment:step;content:'0' counter(step) ' / ';font-size:.8rem;color:var(--blue);letter-spacing:.1em}.area-panel{background:var(--navy);color:#dbe7f0;border-radius:var(--radius);padding:42px}.area-panel h2,.area-panel h3,.area-panel a{color:white}.area-panel ul{list-style:none;padding:0}.area-panel li{border-bottom:1px solid #ffffff25;padding:14px 0}.cta{background:var(--sky);padding:55px 0}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:35px}.cta h2{font-size:2.2rem;margin-bottom:12px}.cta p{margin:0}.site-footer{background:var(--navy);color:#c6d5e3;padding:60px 0 30px}.site-footer h3,.site-footer a{color:white}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-grid ul{list-style:none;padding:0}.footer-grid li{margin:10px 0}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff25;margin-top:40px;padding-top:25px;font-size:.8rem;gap:25px}.breadcrumbs{font-size:.8rem;padding:24px 0;color:var(--muted)}.page-hero{padding:30px 0 55px;background:var(--paper)}.page-hero h1{font-size:clamp(2.4rem,4vw,3.8rem);max-width:950px}.page-hero p{max-width:760px;font-size:1.1rem;color:var(--muted)}.content-layout{display:grid;grid-template-columns:minmax(0,2.2fr) 1fr;gap:65px;padding:60px 0 80px}.prose h2{font-size:2rem;margin-top:1.7em}.prose h3{margin-top:1.6em}.prose ul{padding-left:24px}.prose li{margin-bottom:9px}.prose p{max-width:75ch}.sidebar{align-self:start;position:sticky;top:125px;background:var(--sky);padding:28px;border-radius:12px}.sidebar h2{font-size:1.7rem}.sidebar p{font-size:.92rem}.sidebar .button{width:100%;margin-top:10px}.related{margin-top:40px}.related ul{padding-left:22px}details{border-top:1px solid var(--line);padding:20px 0}summary{font-weight:700;cursor:pointer;color:var(--navy)}details p{margin-top:14px}.skip{position:absolute;left:12px;top:-100px;background:white;padding:15px;z-index:100}.skip:focus{top:10px}:focus-visible{outline:3px solid #d78b16;outline-offset:4px}.menu-toggle{display:none}.mobile-call{display:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:.9rem;font-weight:650}input,select,textarea{display:block;width:100%;font:inherit;border:1px solid #7d8e9c;border-radius:5px;padding:12px;background:white;color:var(--ink);margin-top:7px}textarea{min-height:150px;resize:vertical}.full{grid-column:1/-1}.trap{position:absolute;left:-9999px}.notice{padding:20px;background:var(--sky);border-left:4px solid var(--blue);margin-bottom:25px}.error{background:#fff0ed;border-color:#ae2f20}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.preview-label{background:#fff0ca;color:#493500;text-align:center;padding:8px;font-size:.8rem}.custom-logo{max-width:190px;max-height:65px;object-fit:contain}.wp-block-image img{border-radius:10px}
@media(max-width:1050px){.header-row{gap:15px}.menu{gap:13px}.header-call{display:none}.hero-grid{gap:30px}.hero h1{font-size:3.5rem}.cards{gap:15px}.card{padding:23px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.topbar .wrap{justify-content:center}.topbar .extra{display:none}.header-row{min-height:80px;flex-wrap:wrap;padding:14px 0}.brand{font-size:1.55rem}.menu-toggle{display:block;background:white;border:1px solid var(--line);border-radius:6px;padding:10px 14px;color:var(--navy);font-weight:700}.nav{width:100%}.js .nav{display:none}.js .nav.open{display:block}.menu{align-items:stretch;flex-direction:column;gap:0}.menu a{display:block;padding:12px;border-top:1px solid var(--line)}.hero-grid{grid-template-columns:1fr;padding:40px 0;gap:28px}.hero h1{font-size:3rem}.hero-art img{aspect-ratio:1.4;border-radius:70px 8px 8px 8px}.photo-note{left:12px;bottom:12px;padding:14px 18px}.trust-strip .wrap{flex-wrap:wrap;font-size:.82rem;gap:12px}.section{padding:55px 0}.section-head{display:block}.section-head p{margin-top:20px}.cards,.split,.content-layout,.footer-grid{grid-template-columns:1fr}.split{gap:30px}.cards{gap:16px}.content-layout{gap:30px;padding:35px 0 50px}.sidebar{position:static}.cta .wrap,.footer-bottom{display:block}.cta .button{margin-top:24px}.footer-bottom p{margin-bottom:15px}.site-footer{padding-bottom:105px}.mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;text-align:center;padding:14px;background:var(--blue);color:white;z-index:40;font-weight:750;text-decoration:none;box-shadow:0 -2px 12px #0002}.form-grid{grid-template-columns:1fr}.area-panel{padding:28px}.page-hero{padding-bottom:35px}.actions .button{flex:1;white-space:nowrap}.hero p{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.area-panel .eyebrow{color:#9dc5ff}.home .wp-block-group.section{margin:0}.home .wp-block-group.wrap{margin-left:auto;margin-right:auto}
.review-section{border-top:1px solid var(--line)}.review-empty{display:grid;grid-template-columns:auto 1fr 220px;gap:28px;align-items:center;border:1px dashed #9eafbe;background:#f9fbfd;border-radius:12px;padding:32px}.review-empty h3{margin:14px 0}.review-empty p{margin:0}.review-symbol{font-size:6rem;line-height:1;color:var(--blue)}.placeholder-tag{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;border-radius:4px;background:#e5edf6;padding:7px 10px;font-weight:750}.review-empty-note{font-size:.85rem;color:var(--muted);border-left:1px solid var(--line);padding-left:24px}.review-card{margin:0;border:1px solid var(--line);padding:30px;border-radius:12px}.quote-mark{font-size:3.5rem;line-height:1;color:var(--blue)}.review-card blockquote{margin:0 0 24px}.review-card figcaption{display:grid;gap:5px;font-size:.88rem}.review-card a{overflow-wrap:anywhere}.area-chips{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.area-chips span{padding:7px 12px;border:1px solid var(--line);background:white;border-radius:5px;font-size:.85rem}.map-panel{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white;min-width:0}.map-consent{min-height:360px;text-align:center;padding:36px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(ellipse at top left,#dcecf5,transparent 70%),#eef3f8}.map-consent[hidden],iframe[hidden],#sf-unload-map[hidden]{display:none}.map-pin{font-size:3rem;color:var(--blue);line-height:1}.map-consent h3{margin:16px 0}.map-consent p{font-size:.85rem;color:var(--muted);max-width:350px}.map-panel iframe{border:0;width:100%;height:360px;display:block}.map-footer{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:.8rem}.map-footer button{font:inherit;border:0;background:transparent;text-decoration:underline;color:var(--blue);cursor:pointer;padding:5px}.review-cards:has(> :only-child){grid-template-columns:minmax(0,780px)}
@media(max-width:760px){.review-empty{grid-template-columns:1fr;padding:24px;gap:12px}.review-symbol{display:none}.review-empty-note{border:0;padding:12px 0 0}.map-consent{padding:28px 20px;min-height:340px}.map-footer{flex-wrap:wrap}.review-card{padding:24px}}
#sf-map-frame[hidden]{display:none}

/* Final design refinement */
.hero-grid{padding:52px 0;gap:44px}.hero h1{font-size:clamp(2.5rem,4.2vw,4rem);letter-spacing:-.045em}.hero-art img{border-radius:18px;aspect-ratio:1}.section{padding:64px 0}.card{box-shadow:0 4px 18px #102b4606;transition:border-color .15s,box-shadow .15s}.card:hover{box-shadow:0 8px 24px #102b4612}.page-hero{padding-top:48px}.menu a{padding:10px 0}.map-consent{background:linear-gradient(135deg,#e5eff8,#f7fafc);border-bottom:1px solid var(--line)}@media(max-width:760px){.hero-grid{padding:32px 0}.hero h1{font-size:2.55rem}.section{padding:44px 0}.hero-art img{aspect-ratio:1.6}.page-hero{padding-top:32px}.card{padding:24px}}

.official-symbol{width:44px;height:55px;object-fit:contain;flex-shrink:0;background:white;border-radius:5px}.footer-brand{color:white;margin-bottom:24px}.footer-brand .official-symbol{padding:4px;width:50px;height:62px}@media(max-width:760px){.official-symbol{width:36px;height:45px}}

/* Supplied transparent replacement logo */
.official-symbol,.footer-brand .official-symbol{background:transparent;border-radius:0;padding:0}

@media(max-width:360px){.actions{flex-direction:column}.actions .button{white-space:normal}.brand{font-size:1.35rem}.hero h1{font-size:2.1rem}}

