/*
Theme Name: Sparkly Living Cleaning Services
Theme URI: https://sparklyleaving.com/
Author: Sparkly Living
Description: Complete responsive WordPress theme for Sparkly Living Cleaning Services. No page builder required.
Version: 1.0.0
License: GPL-2.0-or-later
Text Domain: sparkly-living
*/
:root{--sl-green:#03402A;--sl-dark:#022F20;--sl-gold:#D8A644;--sl-gold-dark:#B7831F;--sl-soft:#EAF2EE;--sl-cream:#FAF9F5;--sl-text:#17231E;--sl-muted:#66736D;--sl-border:#DCE5DF;--sl-white:#fff;--sl-shadow:0 15px 45px rgba(2,47,32,.10);--sl-radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--sl-text);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}.sl-container{width:min(1180px,92%);margin:auto}.sl-section{padding:88px 0}.sl-cream{background:var(--sl-cream)}.sl-soft{background:var(--sl-soft)}.sl-green-bg{background:var(--sl-green);color:#fff}.sl-kicker{color:var(--sl-gold-dark);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:2px}.sl-title{color:var(--sl-green);font-size:44px;line-height:1.08;letter-spacing:-1.2px;margin:10px 0 18px}.sl-description{color:var(--sl-muted);font-size:17px;max-width:720px}.sl-center{text-align:center}.sl-center .sl-description{margin-left:auto;margin-right:auto}.sl-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 23px;border-radius:8px;font-weight:800;border:1px solid transparent;transition:.2s;cursor:pointer}.sl-btn:hover{transform:translateY(-2px)}.sl-btn-green{background:var(--sl-green);color:#fff}.sl-btn-gold{background:var(--sl-gold);color:var(--sl-dark)}.sl-btn-outline{background:#fff;color:var(--sl-green);border-color:var(--sl-green)}.sl-card{background:#fff;border:1px solid var(--sl-border);border-radius:var(--sl-radius);box-shadow:0 8px 30px rgba(2,47,32,.06)}
.sl-topbar{background:var(--sl-dark);color:#fff;font-size:13px;padding:8px 0}.sl-topbar-inner{display:flex;justify-content:space-between;gap:20px}.sl-header{background:#fff;border-bottom:1px solid var(--sl-border);position:sticky;top:0;z-index:1000}.sl-header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:25px}.sl-logo{display:block;max-width:210px;max-height:66px}.sl-nav{display:flex;gap:25px;align-items:center;font-weight:700;font-size:14px}.sl-nav a:hover{color:var(--sl-gold-dark)}.sl-header-actions{display:flex;gap:8px}.sl-mobile-toggle{display:none;background:none;border:0;font-size:27px;color:var(--sl-green)}
.sl-hero{background:var(--sl-cream);padding:76px 0}.sl-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.sl-hero h1{color:var(--sl-green);font-size:62px;line-height:1.02;letter-spacing:-2.5px;margin:14px 0 22px}.sl-hero h1 span{color:var(--sl-gold)}.sl-hero-text{font-size:19px;color:var(--sl-muted);max-width:620px}.sl-hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:27px 0}.sl-trust-points{display:flex;gap:20px;flex-wrap:wrap;font-size:14px;font-weight:700}.sl-trust-points span:before{content:'✓';color:var(--sl-gold-dark);margin-right:6px}.sl-hero-image{min-height:540px;border-radius:24px;overflow:hidden;background:linear-gradient(135deg,#dce9e1,#b7cfc1);box-shadow:var(--sl-shadow);display:flex;align-items:center;justify-content:center;color:var(--sl-green);font-weight:800;letter-spacing:1px;text-align:center}.sl-hero-image img{width:100%;height:540px;object-fit:cover}
.sl-process{background:var(--sl-green);color:#fff;padding:30px 0}.sl-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.sl-process-item{text-align:center}.sl-process-num{width:38px;height:38px;border-radius:50%;background:var(--sl-gold);color:var(--sl-dark);display:flex;align-items:center;justify-content:center;font-weight:900;margin:0 auto 8px}.sl-process-item span{display:block;opacity:.75;font-size:14px}
.sl-quote-box{padding:38px;background:var(--sl-cream)}.sl-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.sl-field{display:flex;flex-direction:column}.sl-field.full{grid-column:1/-1}.sl-field label{font-size:13px;font-weight:800;margin-bottom:6px}.sl-field input,.sl-field select,.sl-field textarea{width:100%;padding:13px 14px;border:1px solid var(--sl-border);border-radius:8px;background:#fff;font:inherit}.sl-field textarea{min-height:120px}.sl-form-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:22px}.sl-form-note{color:var(--sl-muted);font-size:13px}
.sl-four-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}.sl-trust-card{padding:27px 20px;text-align:center}.sl-icon{width:48px;height:48px;border-radius:12px;background:var(--sl-soft);color:var(--sl-green);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-weight:900}.sl-trust-card h3{color:var(--sl-green);font-size:18px;margin:0 0 7px}.sl-trust-card p{color:var(--sl-muted);font-size:14px;margin:0}
.sl-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.sl-image-placeholder{min-height:470px;border-radius:22px;background:linear-gradient(135deg,#d9e6de,#a8c4b5);display:flex;align-items:center;justify-content:center;color:var(--sl-green);font-weight:800}.sl-about p{color:var(--sl-muted)}.sl-checklist{list-style:none;padding:0;margin:25px 0}.sl-checklist li{margin:9px 0;font-weight:600}.sl-checklist li:before{content:'✓';color:var(--sl-gold-dark);margin-right:10px}
.sl-services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;margin-top:45px}.sl-service-image{height:245px;background:linear-gradient(135deg,#dce9e1,#b5ccbf);display:flex;align-items:center;justify-content:center;color:var(--sl-green);font-weight:800}.sl-service-image img{width:100%;height:100%;object-fit:cover}.sl-service-content{padding:28px}.sl-service-content h3{color:var(--sl-green);font-size:25px;margin:0 0 8px}.sl-service-content p{color:var(--sl-muted)}.sl-service-content h4{margin:18px 0 8px}.sl-service-content ul{list-style:none;padding:0}.sl-service-content li{color:var(--sl-muted);font-size:14px;margin:7px 0}.sl-service-content li:before{content:'✓';color:var(--sl-gold-dark);margin-right:9px}.sl-service-link{color:var(--sl-green);font-weight:800}
.sl-results{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:38px}.sl-result-image{height:380px;border-radius:20px;background:linear-gradient(135deg,#d8e3dd,#a9bdb1);display:flex;align-items:center;justify-content:center;color:var(--sl-green);font-weight:800}.sl-result-image img{width:100%;height:100%;object-fit:cover;border-radius:20px}.sl-area-tags{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:30px}.sl-area-tag{padding:9px 16px;background:#fff;border:1px solid var(--sl-border);border-radius:30px;color:var(--sl-green);font-weight:700;font-size:14px}.sl-reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}.sl-review{padding:28px}.sl-stars{color:var(--sl-gold);font-size:20px}.sl-review p{color:var(--sl-muted)}.sl-review strong{color:var(--sl-green)}.sl-faq{max-width:900px;margin:35px auto 0}.sl-faq details{background:#fff;border:1px solid var(--sl-border);border-radius:12px;padding:18px 20px;margin-bottom:12px}.sl-faq summary{cursor:pointer;font-weight:800;color:var(--sl-green)}.sl-faq p{color:var(--sl-muted)}
.sl-final{background:var(--sl-green);color:#fff;text-align:center}.sl-final h2{font-size:48px;line-height:1.08;margin:10px auto 15px}.sl-final p{max-width:650px;margin:auto;opacity:.82}.sl-final-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}.sl-footer{background:var(--sl-dark);color:#fff;padding:60px 0 25px}.sl-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px}.sl-footer h3{color:var(--sl-gold);margin:0 0 12px}.sl-footer p,.sl-footer a{color:rgba(255,255,255,.72);font-size:14px}.sl-footer ul{list-style:none;padding:0;margin:0}.sl-footer li{margin:8px 0}.sl-footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:18px;display:flex;justify-content:space-between;font-size:13px;color:rgba(255,255,255,.55)}.sl-mobile-bar{display:none}
.sl-page-hero{background:var(--sl-cream);padding:65px 0}.sl-content{max-width:900px;margin:auto}.sl-content h1{color:var(--sl-green);font-size:48px}.sl-content h2,.sl-content h3{color:var(--sl-green)}.sl-content p,.sl-content li{color:var(--sl-muted)}
@media(max-width:1000px){.sl-nav{display:none}.sl-header-actions{display:none}.sl-mobile-toggle{display:block}.sl-hero-grid,.sl-about-grid{grid-template-columns:1fr}.sl-hero h1{font-size:52px}.sl-four-grid{grid-template-columns:repeat(2,1fr)}.sl-footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.sl-section{padding:60px 0}.sl-hero{padding:55px 0}.sl-hero h1{font-size:42px}.sl-hero-image,.sl-hero-image img{min-height:350px;height:350px}.sl-process-grid,.sl-form-grid,.sl-services-grid,.sl-results,.sl-reviews-grid{grid-template-columns:1fr}.sl-field.full{grid-column:auto}.sl-form-footer{flex-direction:column;align-items:stretch}.sl-four-grid{grid-template-columns:1fr}.sl-title{font-size:35px}.sl-footer-grid{grid-template-columns:1fr}.sl-footer-bottom{flex-direction:column}.sl-mobile-bar{display:grid;grid-template-columns:1fr 1fr 1.2fr;position:fixed;left:0;right:0;bottom:0;z-index:9999;background:#fff;box-shadow:0 -5px 25px rgba(0,0,0,.15)}.sl-mobile-bar a{text-align:center;padding:13px 5px;font-size:12px;font-weight:800;border-right:1px solid var(--sl-border)}.sl-mobile-quote{background:var(--sl-gold);color:var(--sl-dark)}body{padding-bottom:54px}}

/* ===== Sparkly Living V2 visual upgrade ===== */
:root{--sl-radius:22px;--sl-shadow:0 18px 55px rgba(2,47,32,.11)}
body{overflow-x:hidden}
.sl-container{width:min(1400px,94%);margin-left:auto;margin-right:auto}
.sl-section{padding:92px 0}
.sl-btn{min-height:48px;padding:14px 24px;border-radius:999px;font-size:14px;letter-spacing:.15px;box-shadow:0 8px 20px rgba(2,47,32,.10);position:relative;overflow:hidden}
.sl-btn:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.24) 48%,transparent 70%);transform:translateX(-110%);transition:transform .5s}
.sl-btn:hover:after{transform:translateX(110%)}
.sl-btn-green{background:linear-gradient(135deg,var(--sl-green),#0a6a48);color:#fff;border-color:transparent}
.sl-btn-gold{background:linear-gradient(135deg,var(--sl-gold),#f0c45d);color:var(--sl-dark);border-color:transparent}
.sl-btn-outline{background:#fff;color:var(--sl-green);border:2px solid var(--sl-green);box-shadow:none}
.sl-btn:hover{transform:translateY(-3px);box-shadow:0 13px 28px rgba(2,47,32,.16)}
.sl-header-actions .sl-btn{min-height:42px;padding:10px 18px}
.sl-hero-buttons .sl-btn{min-width:175px}

/* full-width section backgrounds with wider readable content */
.sl-services-showcase{width:100%;background:linear-gradient(180deg,#f5f8f6 0%,#fff 100%)}
.sl-services-showcase .sl-container{max-width:1400px}

/* Home service tabs, inspired by the supplied reference */
.sl-service-tabs{display:flex;overflow-x:auto;scrollbar-width:thin;margin:42px auto 0;border-radius:16px 16px 0 0;background:#fff;box-shadow:0 8px 28px rgba(2,47,32,.10);border:1px solid var(--sl-border);scroll-snap-type:x proximity}
.sl-service-tab{flex:1 0 150px;min-height:82px;padding:14px 12px;background:#fff;color:var(--sl-text);border:0;border-right:1px solid var(--sl-border);font:inherit;font-weight:800;line-height:1.25;cursor:pointer;scroll-snap-align:start;transition:.22s;position:relative}
.sl-service-tab:first-child{border-radius:15px 0 0 0}.sl-service-tab:last-child{border-right:0;border-radius:0 15px 0 0}
.sl-service-tab:hover{background:var(--sl-soft);color:var(--sl-green)}
.sl-service-tab.is-active{background:linear-gradient(135deg,#39c25e,var(--sl-green));color:#fff;box-shadow:inset 0 -4px 0 var(--sl-gold)}
.sl-service-panels{background:#fff;border:1px solid var(--sl-border);border-top:0;border-radius:0 0 20px 20px;box-shadow:0 18px 50px rgba(2,47,32,.08)}
.sl-service-panel{display:none;grid-template-columns:1fr 1.05fr;min-height:450px}
.sl-service-panel.is-active{display:grid}
.sl-service-panel-image{padding:28px;display:flex;align-items:stretch}
.sl-service-image-placeholder{width:100%;min-height:390px;border-radius:18px;background:linear-gradient(135deg,#dce9e1,#a8c5b6);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--sl-green);text-align:center;font-weight:900;font-size:25px;padding:30px}
.sl-service-image-placeholder small{display:block;margin-top:10px;color:var(--sl-muted);font-size:12px;font-weight:600}
.sl-service-panel-content{padding:52px 52px 48px 20px;align-self:center}
.sl-service-eyebrow{display:inline-block;color:var(--sl-gold-dark);font-size:12px;text-transform:uppercase;letter-spacing:1.8px;font-weight:900;margin-bottom:8px}
.sl-service-panel-content h3{font-size:40px;line-height:1.08;color:var(--sl-green);margin:0 0 14px}
.sl-service-lead{font-size:17px;color:var(--sl-muted);max-width:720px}
.sl-service-panel-content h4{font-size:16px;color:var(--sl-green);margin:24px 0 8px}
.sl-service-includes ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:7px 20px}
.sl-service-includes li{font-size:14px;color:var(--sl-muted)}
.sl-service-includes li:before{content:'✓';color:var(--sl-gold-dark);font-weight:900;margin-right:8px}
.sl-service-panel-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:27px}
.sl-service-panel-actions .sl-btn{min-width:175px}

/* Directory + individual service pages */
.sl-service-detail-hero{background:radial-gradient(circle at 85% 20%,rgba(216,166,68,.18),transparent 32%),linear-gradient(135deg,var(--sl-cream),#eef5f0);border-bottom:1px solid var(--sl-border)}
.sl-service-detail-hero h1{font-size:58px;line-height:1.05;color:var(--sl-green);max-width:900px;margin:10px 0 15px}
.sl-service-detail-hero p{font-size:19px;color:var(--sl-muted);max-width:820px}
.sl-page-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.sl-service-detail-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:30px;align-items:start}
.sl-service-detail-content{padding:42px 46px}
.sl-service-detail-content h2{font-size:28px;color:var(--sl-green);margin-top:32px}
.sl-service-detail-content ul{padding-left:20px}.sl-service-detail-content li{margin:8px 0}
.sl-side-card{padding:28px;margin-bottom:20px;position:sticky;top:110px}.sl-side-card+.sl-side-card{position:static}
.sl-side-card h2{color:var(--sl-green);font-size:27px;line-height:1.15;margin:8px 0 12px}.sl-side-card p{color:var(--sl-muted)}
.sl-btn-wide{width:100%;margin-top:9px}
.sl-related-services{list-style:none;padding:0;margin:15px 0 0}.sl-related-services li{border-top:1px solid var(--sl-border)}
.sl-related-services a{display:flex;justify-content:space-between;gap:10px;padding:12px 0;color:var(--sl-green);font-weight:800;font-size:14px}.sl-related-services a span{color:var(--sl-gold-dark)}
.sl-services-directory{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.sl-directory-card{overflow:hidden}.sl-directory-image{height:210px;background:linear-gradient(135deg,#dce9e1,#a8c5b6);display:flex;align-items:center;justify-content:center;color:var(--sl-green);font-weight:900;text-align:center;padding:20px}.sl-directory-card .sl-service-content{padding:25px}.sl-directory-card h2{color:var(--sl-green);font-size:25px;line-height:1.15;margin:4px 0 10px}

/* More color / softer forms */
.sl-field input,.sl-field select,.sl-field textarea{border-radius:14px;padding:14px 16px;transition:.2s}
.sl-field input:focus,.sl-field select:focus,.sl-field textarea:focus{outline:0;border-color:var(--sl-gold);box-shadow:0 0 0 4px rgba(216,166,68,.14)}
.sl-quote-box{border-radius:28px;box-shadow:var(--sl-shadow);border:1px solid var(--sl-border)}
.sl-card{overflow:hidden}

/* Wider mobile / tablet layout */
@media(max-width:1000px){
  .sl-container{width:min(94%,760px)}
  .sl-service-panel{grid-template-columns:1fr}
  .sl-service-panel-content{padding:12px 30px 35px}
  .sl-service-detail-grid{grid-template-columns:1fr}
  .sl-side-card{position:static}
  .sl-services-directory{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
  .sl-container{width:calc(100% - 24px)}
  .sl-section{padding:64px 0}
  .sl-topbar-inner{flex-direction:column;gap:3px;text-align:center}
  .sl-header-inner{min-height:72px}
  .sl-logo{max-width:170px;max-height:58px}
  .sl-hero h1{font-size:42px}
  .sl-title{font-size:34px}
  .sl-service-tabs{margin-top:30px;border-radius:14px}
  .sl-service-tab{flex-basis:125px;min-height:70px;font-size:13px;padding:10px 8px}
  .sl-service-panels{border-radius:0 0 16px 16px}
  .sl-service-panel-image{padding:14px}
  .sl-service-image-placeholder{min-height:245px;font-size:21px}
  .sl-service-panel-content{padding:10px 20px 28px}
  .sl-service-panel-content h3{font-size:31px}
  .sl-service-includes ul{grid-template-columns:1fr}
  .sl-service-panel-actions .sl-btn{width:100%}
  .sl-service-detail-hero h1{font-size:39px}
  .sl-service-detail-hero p{font-size:17px}
  .sl-service-detail-content{padding:27px 22px}
  .sl-services-directory{grid-template-columns:1fr}
  .sl-page-actions .sl-btn{width:100%}
  .sl-form-footer .sl-btn{width:100%}
}
@media(max-width:1000px){
  .sl-nav.sl-mobile-open{display:flex;position:absolute;left:0;right:0;top:100%;background:#fff;padding:18px 20px;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid var(--sl-border);box-shadow:0 20px 30px rgba(0,0,0,.10)}
  .sl-nav.sl-mobile-open a{padding:11px 4px;border-bottom:1px solid var(--sl-border)}
  .sl-header{position:sticky}
}

/* V3 visual polish + AI photography */
.sl-hero-image{min-height:520px;border-radius:28px;overflow:hidden;box-shadow:0 24px 60px rgba(2,47,32,.16);background:#dfeae4}
.sl-hero-image img{width:100%;height:520px;display:block;object-fit:cover}
.sl-image-photo{overflow:hidden;padding:0;min-height:470px;box-shadow:0 20px 55px rgba(2,47,32,.12)}
.sl-image-photo img{width:100%;height:470px;object-fit:cover;display:block}
.sl-service-image-placeholder{overflow:hidden;padding:0!important;background:#eef4f0!important}
.sl-service-image-placeholder img{width:100%;height:390px;display:block;object-fit:cover}
.sl-result-image{overflow:hidden;padding:0!important;background:#eef4f0!important}
.sl-result-image img{width:100%;height:380px;display:block;object-fit:cover}
.sl-service-detail-hero{position:relative;overflow:hidden;min-height:500px;display:flex;align-items:center;color:#fff;background:var(--sl-green)}
.sl-service-detail-hero-image{position:absolute;inset:0;z-index:0}
.sl-service-detail-hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,47,32,.96) 0%,rgba(2,47,32,.78) 44%,rgba(2,47,32,.25) 100%)}
.sl-service-detail-hero-image img{width:100%;height:100%;object-fit:cover;display:block}
.sl-service-detail-hero>.sl-container{position:relative;z-index:1;padding:90px 0}
.sl-service-detail-hero h1{font-size:58px;line-height:1.02;max-width:700px;margin:12px 0 20px;color:#fff}
.sl-service-detail-hero p{font-size:19px;max-width:680px;color:rgba(255,255,255,.9)}
.sl-service-detail-hero .sl-kicker{color:#f0c45d}
.sl-service-detail-hero .sl-page-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.sl-service-detail-hero .sl-btn-outline{background:transparent;color:#fff;border-color:#fff}
.sl-form-footer .sl-btn{border-radius:999px}
@media(max-width:700px){
 .sl-hero-image,.sl-hero-image img{height:320px;min-height:320px}
 .sl-image-photo,.sl-image-photo img{min-height:330px;height:330px}
 .sl-service-image-placeholder img{height:245px}
 .sl-result-image img{height:280px}
 .sl-service-detail-hero{min-height:560px}
 .sl-service-detail-hero>.sl-container{padding:70px 0}
 .sl-service-detail-hero h1{font-size:40px}
 .sl-service-detail-hero p{font-size:16px}
}
