/*
Theme Name: B. Keenan Studio
Theme URI: https://bkeenanplumbingandheating.com/
Author: SJL Digital Marketing
Author URI: https://www.sjldigitalmarketing.com/
Description: A complete leak-detection-led design system with responsive navigation, article layouts and editable Elementor Free templates.
Version: 3.0.0
Requires at least: 6.4
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bkeenan-leak-detection
*/
:root{--bk-navy:#102e40;--bk-deep:#092536;--bk-teal:#087e83;--bk-mint:#bdebe4;--bk-ink:#203e4d;--bk-muted:#536b77;--bk-soft:#f1f6f6;--bk-line:#dbe5e7;--bk-radius:12px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--bk-ink);background:#fff;font:16px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}a{color:var(--bk-teal);text-underline-offset:4px}a:hover{color:#075c61}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #d39125;outline-offset:5px}img{max-width:100%;height:auto;vertical-align:middle}iframe{max-width:100%}h1,h2,h3,h4{color:var(--bk-navy);font-weight:750;line-height:1.16;letter-spacing:-.035em;margin:0 0 22px}h1{font-size:clamp(36px,4.5vw,62px)}h2{font-size:clamp(28px,3.2vw,42px)}h3{font-size:25px}h4{font-size:21px}p{margin:0 0 22px}ul,ol{padding-left:24px}li{margin-bottom:8px}.bk-wrap{width:min(1160px,calc(100% - 64px));margin-inline:auto}.skip-link{position:absolute;top:-100px;left:20px;background:#fff;z-index:99999;padding:12px}.skip-link:focus{top:12px}.bk-topbar{background:var(--bk-deep);color:#d9e7eb;font-size:12px;letter-spacing:.02em}.bk-topbar .bk-wrap{display:flex;justify-content:space-between;padding:9px 0;gap:20px}.bk-topbar a{color:#fff;text-decoration:none}.bk-header{background:#fff;border-bottom:1px solid var(--bk-line);position:relative;z-index:50}.bk-header-inner{display:flex;align-items:center;gap:28px;min-height:106px}.bk-brand{flex:0 0 195px}.bk-brand img{width:195px;height:78px;object-fit:contain}.bk-menu{display:flex;align-items:center;gap:23px;list-style:none;margin:0;padding:0}.bk-menu li{margin:0;position:relative}.bk-menu a,.bk-menu summary{color:var(--bk-navy);font-size:14px;font-weight:650;white-space:nowrap;text-decoration:none;cursor:pointer}.bk-menu summary{list-style:none}.bk-menu summary:after{content:'⌄';margin-left:6px}.bk-menu details ul,.bk-menu .sub-menu{list-style:none;padding:20px;position:absolute;top:32px;left:0;background:white;border:1px solid var(--bk-line);box-shadow:0 15px 30px #102e401a;min-width:245px;border-radius:8px}.bk-menu details ul li,.bk-menu .sub-menu li{padding:5px 0}.bk-menu .sub-menu{display:none}.bk-menu li:hover>.sub-menu,.bk-menu li:focus-within>.sub-menu{display:block}.bk-header-cta{margin-left:auto;white-space:nowrap}.bk-menu-toggle{display:none}.bk-eyebrow,.bk-card-kicker{font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--bk-teal);margin-bottom:20px}.bk-lead{font-size:18px;line-height:1.65;max-width:540px}.bk-text-link{font-size:14px;font-weight:650}.bk-signs{border-top:1px solid var(--bk-line)}.bk-signs a{display:flex;align-items:center;gap:20px;padding:24px 0;text-decoration:none;border-bottom:1px solid var(--bk-line);font-size:13px}.bk-signs strong{font-size:18px;color:var(--bk-navy);flex:1}.bk-soft{background:var(--bk-soft)}.bk-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0}.bk-card{background:#fff;border:1px solid var(--bk-line);border-radius:var(--bk-radius);overflow:hidden;min-width:0;transition:transform .2s,box-shadow .2s}.bk-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px #102e400c}.bk-card-body{padding:24px}.bk-card h3{font-size:23px;line-height:1.25;margin:12px 0}.bk-card h3 a{text-decoration:none;color:var(--bk-navy)}.bk-card p{font-size:15px;color:var(--bk-muted);margin-bottom:20px}.bk-card-image{display:block;background:var(--bk-soft);height:215px;overflow:hidden}.bk-card-image img{width:100%;height:100%;object-fit:cover}.bk-image-placeholder{display:flex;align-items:center;justify-content:center;background:var(--bk-navy);color:#fff;height:100%;font-weight:700;text-align:center;line-height:1.3;letter-spacing:.1em}.bk-arrow{font-size:14px;font-weight:750;text-decoration:none}.bk-services{grid-template-columns:repeat(4,minmax(0,1fr))}.bk-services .bk-card{padding:26px;text-decoration:none;display:flex;flex-direction:column}.bk-services .bk-card:first-child{background:var(--bk-navy);color:#fff;border-color:var(--bk-navy)}.bk-services .bk-card:first-child h3{color:#fff}.bk-services .bk-card:first-child p,.bk-services .bk-card:first-child .bk-card-kicker{color:#c9e6e4}.bk-services .bk-arrow{margin-top:auto}.bk-page-hero{background:var(--bk-navy);padding:28px 0 58px;color:#cadddf}.bk-page-hero h1{color:#fff;max-width:940px;font-size:clamp(34px,4vw,54px)}.bk-page-hero .bk-eyebrow{color:var(--bk-mint);margin-top:36px}.bk-page-hero p:last-child{margin-bottom:0}.bk-breadcrumb{font-size:12px;color:#bfd0d7}.bk-breadcrumb a{color:#e3eff2}.bk-prose h2{margin-top:32px}.bk-prose h3{margin-top:30px}.bk-prose h2:first-child,.bk-prose h3:first-child{margin-top:0}.bk-prose img{border-radius:10px;max-height:600px;object-fit:contain;margin:18px 0}.bk-prose blockquote,.bk-reviews blockquote{background:var(--bk-soft);border-left:3px solid var(--bk-teal);padding:24px;margin:20px 0}.bk-prose table{border-collapse:collapse;width:100%}.bk-prose td,.bk-prose th{border:1px solid var(--bk-line);padding:12px;text-align:left}.bk-prose li{margin-bottom:14px}.bk-article-layout{display:grid;grid-template-columns:minmax(0,780px) minmax(240px,1fr);gap:64px;padding-block:64px}.bk-article .bk-prose{overflow-wrap:anywhere}.bk-article .bk-featured{margin:0 0 36px}.bk-featured img{width:100%;max-height:560px;object-fit:contain;border-radius:10px;background:var(--bk-soft)}.bk-aside>div{padding:28px;border:1px solid var(--bk-line);background:var(--bk-soft);border-radius:10px;position:sticky;top:30px}.bk-aside h2{font-size:29px}.bk-aside a{display:block;margin-top:22px;font-size:14px}.bk-listing{padding-block:65px}.bk-pagination,.navigation.pagination{display:flex;gap:12px;margin:30px 0;flex-wrap:wrap}.page-numbers{padding:7px 14px;border:1px solid var(--bk-line);border-radius:5px;text-decoration:none}.page-numbers.current{background:var(--bk-navy);color:white}.post-navigation{border-top:1px solid var(--bk-line);padding-top:25px;margin-top:40px}.nav-links{display:flex;gap:20px;justify-content:space-between}.bk-bottom-cta{background:var(--bk-teal);color:#efffff;padding:55px 0}.bk-bottom-cta>.bk-wrap{display:flex;justify-content:space-between;align-items:center;gap:32px}.bk-bottom-cta h2{color:#fff;margin-bottom:12px}.bk-bottom-cta .bk-eyebrow{color:#c4eee7;margin-bottom:12px}.bk-bottom-cta p:last-child{margin:0}.bk-bottom-cta .bk-button{background:#fff;color:var(--bk-navy)!important}.bk-cta-actions{display:flex;flex-direction:column;gap:16px;align-items:center;flex-shrink:0}.bk-cta-actions .bk-text-link{color:#fff}.bk-footer{background:var(--bk-deep);color:#b7cbd3;padding:60px 0 0;font-size:14px}.bk-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:70px}.bk-footer-name{color:#fff;font-size:28px;font-weight:850;letter-spacing:.02em;line-height:1.2}.bk-footer-name span{display:block;font-size:11px;letter-spacing:.16em;margin-top:8px}.bk-footer h2{font-size:16px;color:#fff;letter-spacing:0;margin-bottom:20px}.bk-footer ul{list-style:none;padding:0;margin:0}.bk-footer a{color:#b7cbd3;text-decoration:none;overflow-wrap:anywhere}.bk-footer a:hover{color:#fff}.bk-footer-base{margin-top:45px;padding:24px 0;border-top:1px solid #ffffff24;display:flex;justify-content:space-between;font-size:12px;gap:20px}.bk-mobile-call{display:none}.bk-comments{padding-bottom:40px}input:not([type=checkbox]):not([type=radio]),textarea,select{max-width:100%;padding:12px;border:1px solid var(--bk-line);border-radius:5px}textarea{width:100%}.screen-reader-text{clip:rect(1px,1px,1px,1px);position:absolute!important;width:1px;height:1px;overflow:hidden}.bk-page-content>p,.bk-page-content>h2{max-width:850px;margin:30px auto}.alignleft{float:left;margin-right:25px}.alignright{float:right;margin-left:25px}.wp-caption{max-width:100%}.wp-caption-text{font-size:13px}.gallery{display:flex;flex-wrap:wrap}.gallery-item{max-width:33%}.sticky{border-color:var(--bk-teal)}
@media(min-width:1025px){}
@media(max-width:1150px){.bk-menu{gap:14px}.bk-header-inner{gap:20px}.bk-brand{flex-basis:160px}.bk-brand img{width:160px}.bk-header-cta{display:none}.bk-header nav{margin-left:auto}.bk-services{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.bk-wrap{width:calc(100% - 40px)}.bk-topbar .bk-wrap>span{max-width:65%}.bk-menu-toggle{display:block;margin-left:auto;background:white;border:1px solid var(--bk-line);border-radius:5px;padding:8px 13px;color:var(--bk-navy)}.bk-header-inner{min-height:88px;flex-wrap:wrap}.bk-header nav{display:none;width:100%;margin:0;padding-bottom:20px}.bk-header nav.is-open{display:block}.bk-menu{flex-direction:column;align-items:stretch;gap:0}.bk-menu>li>a,.bk-menu summary{display:block;padding:12px;border-bottom:1px solid var(--bk-line)}.bk-menu details ul,.bk-menu .sub-menu{position:static;box-shadow:none;border:0;min-width:0}.bk-menu .sub-menu{display:block;padding:0 20px}.bk-cards{gap:18px}.bk-card-body{padding:20px}.bk-card h3{font-size:21px}.bk-article-layout{grid-template-columns:1fr;gap:32px}.bk-aside>div{position:static}.bk-footer-grid{gap:30px;grid-template-columns:1.2fr 1fr 1fr}}
@media(max-width:767px){.bk-topbar .bk-wrap{justify-content:center;text-align:center}.bk-topbar .bk-wrap>span{max-width:none}.bk-topbar a{display:none}.bk-cards,.bk-services{grid-template-columns:1fr}.bk-card-image{height:230px}.bk-services .bk-card{padding:25px}.bk-page-hero{padding-bottom:38px}.bk-page-hero h1{font-size:36px}.bk-bottom-cta>.bk-wrap{flex-direction:column;align-items:flex-start}.bk-cta-actions{align-items:flex-start}.bk-footer-grid{grid-template-columns:1fr;gap:35px}.bk-footer-base{flex-direction:column}.bk-footer{padding-bottom:66px}.bk-mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;background:var(--bk-teal);color:#fff;text-align:center;font-weight:750;text-decoration:none;padding:14px 10px calc(14px + env(safe-area-inset-bottom));z-index:40;box-shadow:0 -2px 10px #0002}.bk-mobile-call:hover{color:#fff}.bk-signs strong{font-size:16px}.bk-lead{font-size:17px}.bk-contact a{overflow-wrap:anywhere}.bk-article-layout{padding-block:40px}.nav-links{flex-direction:column}.alignleft,.alignright{float:none;margin:20px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.bk-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.bk-reviews .bk-review-grid blockquote{margin:0;background:var(--bk-soft);padding:26px;border:1px solid var(--bk-line);border-radius:10px;font-size:15px;display:flex;flex-direction:column}.bk-review-grid cite{margin-top:auto;font-style:normal;font-weight:750;color:var(--bk-navy)}.bk-faq{padding:22px 0;border-bottom:1px solid var(--bk-line)}.bk-faq summary{cursor:pointer;font-size:19px;font-weight:700;color:var(--bk-navy);line-height:1.4}.bk-faq>div{padding-top:20px}@media(max-width:767px){.bk-review-grid{grid-template-columns:1fr}.bk-faq summary{font-size:18px}}

.bk-native-content{width:100%;}.bk-legacy-content{max-width:1140px;margin:48px auto;padding:0 24px}.bk-brand img{width:180px;height:96px}.bk-header-inner{min-height:116px}
.bk-button{display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;border-radius:6px;background:#087e83;color:#fff!important;text-decoration:none;font-size:15px;font-weight:700;line-height:1.4}.bk-button:hover{background:#09646b}.bk-header-cta{white-space:nowrap}
@media(max-width:1150px){.bk-header-cta{display:none}}

/* Studio design system. Native Elementor controls remain editable. */
:root{--bk-soft:#f2f6f5;--bk-deep:#092535;--bk-radius:10px}
body{font-family:Arial,Helvetica,sans-serif;color:#526975}
.bk-header-inner{min-height:98px;gap:24px}.bk-brand{flex-basis:160px}.bk-brand img{width:150px;height:80px}.bk-header nav{margin-left:auto}.bk-menu{gap:20px}.bk-menu a{font-size:13px}.bk-header-cta{font-size:13px;padding:13px 18px}.bk-topbar{font-size:11px}
.bk3-section .elementor-column{min-width:0}.bk3-section .elementor-widget-text-editor p:last-child{margin-bottom:0}.bk3-section .elementor-widget-text-editor p{margin-top:0}.bk3-section .elementor-widget-heading h1,.bk3-section .elementor-widget-heading h2,.bk3-section .elementor-widget-heading h3{letter-spacing:-.035em}
.bk3-card-row>.elementor-container{gap:20px;align-items:stretch}.bk3-card-row>.elementor-container>.elementor-column{flex:1;width:0}.bk3-card>.elementor-widget-wrap{height:100%;align-content:flex-start}.bk3-card .elementor-widget-button{margin-top:auto;padding-top:12px}.bk3-card .elementor-widget-heading{word-break:normal}
.bk3-hero .elementor-widget-text-editor{max-width:550px}.bk3-hero .elementor-button:hover{background:#06676c}.bk3-hero .elementor-column:first-child{position:relative;z-index:1}.bk3-hero .elementor-widget-heading{max-width:760px}.bk3-photo img{display:block;width:100%;object-fit:cover}.bk3-reading>.elementor-container{max-width:940px!important}.bk3-reading .elementor-widget-text-editor{max-width:850px}.bk3-trust h3{margin-bottom:0}.bk3-trust p{font-size:14px}.bk3-trust{border-bottom:1px solid #dfe8e6}.bk3-faq{border-bottom:1px solid #dfe8e6}.bk3-section a{overflow-wrap:anywhere}.bk3-section li{margin-bottom:9px}
.bk-page-hero{background:linear-gradient(90deg,#092535ee,#092535bb),url('assets/hero.webp') center/cover;padding:65px 0}.bk-page-hero h1{font-size:clamp(36px,4vw,54px)}.bk-legacy-content{max-width:960px}.bk-prose img{max-height:420px;width:auto;max-width:100%}.bk-card-image{height:230px}.bk-footer{padding-bottom:0}.bk-footer-name{font-size:26px}.bk-footer-base{padding-bottom:28px}
@media(max-width:1100px){.bk-header nav{margin-left:0}.bk-menu-toggle{display:block;margin-left:auto;background:white;border:1px solid #dfe8e6;border-radius:5px;padding:8px 14px}.bk-header-inner{flex-wrap:wrap;gap:0}.bk-header nav{display:none;width:100%;padding-bottom:20px}.bk-header nav.is-open{display:block}.bk-header-cta{display:none}.bk-menu{flex-direction:column;align-items:stretch;gap:0}.bk-menu>li>a,.bk-menu summary{display:block;padding:12px;border-bottom:1px solid #dfe8e6}.bk-menu .sub-menu,.bk-menu details ul{position:static;display:block;box-shadow:none;border:0;padding:8px 20px;min-width:0}.bk-menu details:not([open]) ul{display:none}}
@media(max-width:767px){.bk3-card-row>.elementor-container{flex-wrap:wrap}.bk3-card-row>.elementor-container>.elementor-column{flex:auto;width:100%}.bk3-section>.elementor-container>.elementor-column{width:100%}.bk3-hero{background-position:65% center!important}.bk3-hero>.elementor-background-overlay{opacity:.82!important}.bk3-hero .elementor-column:last-child:empty{display:none}.bk3-trust>.elementor-container{gap:15px}.bk3-photo img{max-height:300px}.bk3-gallery>.elementor-container{gap:15px}.bk3-hero h1{font-size:36px!important}.bk3-section .elementor-widget-heading h2{font-size:30px}.bk-footer{padding-bottom:0}.bk-brand img{height:74px}.bk-header-inner{min-height:88px}}
.bk3-trust .elementor-widget-heading{margin-bottom:6px!important}.bk3-trust .elementor-widget-text-editor{margin-bottom:0!important}.bk3-trust .elementor-widget-wrap{gap:0}.bk3-card .elementor-widget-text-editor{margin-bottom:12px}.bk3-card .elementor-widget-heading{margin-bottom:14px}
@media(max-width:767px){.bk3-trust{padding-top:22px!important;padding-bottom:22px!important}.bk3-trust>.elementor-container{gap:4px}.bk3-trust .elementor-widget-heading h3{font-size:20px}.bk3-trust .elementor-widget-wrap{padding-top:10px!important;padding-bottom:10px!important}}

.bk-card-image img{object-fit:contain;background:#f2f6f5}.bk-card-image{background:#f2f6f5}
