/* Service pages — steel glass design (approved: steel palette, rounded hero, Heebo heavy,
   timeline info, bento portfolio, open FAQ cards, list + peek related). */
.sl-page{--sl-prism:linear-gradient(120deg,#5f8fa6,#e8f6fb 25%,#7fb9cf 50%,#ffffff 75%,#5f8fa6);--sl-btn:linear-gradient(120deg,#e9f7fb,#a9d4e2 50%,#e9f7fb);
  --sl-acc:#a9d4e2;--sl-glow:rgba(127,200,225,.4);--sl-o1:rgba(127,200,225,.25);--sl-o2:rgba(60,110,140,.28);--sl-o3:rgba(220,240,248,.12);
  --sl-ink:#eef6f7;--sl-soft:rgba(226,240,242,.8);--sl-mute:rgba(226,240,242,.56);--sl-line:rgba(255,255,255,.12);background:#04090d}
.sl{position:relative;isolation:isolate;color:var(--sl-ink);font-family:Heebo,system-ui,sans-serif}
.sl-orbs{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.sl-orbs i{position:absolute;border-radius:50%;filter:blur(14px)}
.sl-orbs i:nth-child(1){width:48vw;aspect-ratio:1;right:-10vw;top:-8vh;background:radial-gradient(circle,var(--sl-o1),transparent 70%);animation:slO1 24s ease-in-out infinite alternate}
.sl-orbs i:nth-child(2){width:40vw;aspect-ratio:1;left:-10vw;top:38vh;background:radial-gradient(circle,var(--sl-o2),transparent 70%);animation:slO2 28s ease-in-out infinite alternate}
.sl-orbs i:nth-child(3){width:34vw;aspect-ratio:1;right:20vw;bottom:-14vh;background:radial-gradient(circle,var(--sl-o3),transparent 70%);animation:slO1 20s ease-in-out infinite alternate-reverse}
@keyframes slO1{to{transform:translate(-12%,16%) scale(1.12)}}
@keyframes slO2{to{transform:translate(16%,-12%) scale(.9)}}
@keyframes slPm{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
.sl .shell{width:min(1200px,92vw);margin:0 auto}
.sl :is(h1,h2,h3){font-family:Heebo,sans-serif;font-weight:800;letter-spacing:-.005em;color:#fff}
.sl-eyebrow{display:inline-flex;align-items:center;gap:12px;margin:0 0 14px;font:500 12px Heebo,sans-serif;letter-spacing:.3em;color:var(--sl-acc)}
.sl-eyebrow::before{content:"";width:30px;height:1px;background:var(--sl-prism)}
.sl-h2{margin:0 0 12px;font-size:clamp(30px,3.6vw,52px) !important;line-height:1.12}
.sl-h2 em{font-style:normal;background:var(--sl-prism);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:slPm 8s ease-in-out infinite}
.sl-sub{margin:0;max-width:640px;font:300 16.5px/1.85 Heebo,sans-serif;color:var(--sl-soft)}
.sl-sec{position:relative;padding:clamp(56px,7vw,100px) 0;background:transparent !important}
.sl-head{margin-bottom:34px}
.sl-center{text-align:center;display:grid;justify-items:center}

/* glass */
.sl-g{position:relative;border-radius:24px;background:linear-gradient(150deg,rgba(255,255,255,.1),rgba(255,255,255,.025) 45%,rgba(255,255,255,.06));
  backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);box-shadow:0 30px 70px -30px rgba(0,0,0,.8),inset 0 1px 0 rgba(255,255,255,.35)}
.sl-g::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.6px;pointer-events:none;background:var(--sl-prism);background-size:300% 300%;animation:slPm 8s ease-in-out infinite;opacity:.75;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}

/* buttons */
.sl-cta{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:999px;font:600 15px Heebo,sans-serif;text-decoration:none;color:#08131a !important;background:var(--sl-btn);background-size:200% 100%;animation:slPm 8s ease-in-out infinite;box-shadow:0 14px 34px -12px var(--sl-glow),inset 0 1px 0 #fff;transition:transform .3s}
.sl-cta:hover{transform:translateY(-2px)}
.sl-ghost{display:inline-flex;align-items:center;gap:8px;padding:13px 20px;border-radius:999px;font:500 14.5px Heebo,sans-serif;text-decoration:none;color:var(--sl-ink) !important;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.04)}
.sl-ghost:hover{border-color:rgba(255,255,255,.45)}
.sl a:focus-visible,.sl button:focus-visible{outline:2px solid var(--sl-acc);outline-offset:3px}

/* hero */
.sl-hero{padding:clamp(36px,5vw,72px) 0 clamp(40px,5vw,70px)}
.sl-hero .shell{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,5vw,70px);align-items:center}
.sl-crumb{font:300 13px Heebo,sans-serif;color:var(--sl-mute);margin-bottom:18px}
.sl-crumb a{text-decoration:none;color:var(--sl-soft)}
.sl-hero h1{margin:0;font-size:clamp(42px,6vw,92px) !important;line-height:1}
.sl-hero h1 span{display:block;background:var(--sl-prism);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:slPm 8s ease-in-out infinite}
.sl-lead{margin:22px 0 24px;max-width:540px;font:300 18px/1.85 Heebo,sans-serif;color:var(--sl-soft)}
.sl-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.sl-chips span{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;font:400 13.5px Heebo,sans-serif;color:var(--sl-soft);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14)}
.sl-chips span::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--sl-prism)}
.sl-acts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.sl-rate{margin:16px 0 0;font:300 14px Heebo,sans-serif;color:var(--sl-mute)}
.sl-hero-media{position:relative;margin:0;aspect-ratio:4/4.4;border-radius:28px;overflow:hidden;background:#0a1820}
.sl-hero-media img{width:100%;height:100%;object-fit:cover}
.sl-hero-media::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;padding:2px;background:var(--sl-prism);background-size:300% 300%;animation:slPm 8s ease-in-out infinite;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.sl-hero-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 55%,rgba(3,11,16,.75)),linear-gradient(115deg,transparent 30%,rgba(255,255,255,.18) 42%,transparent 54%);background-size:100% 100%,300% 100%;animation:slRef 7s ease-in-out infinite}
@keyframes slRef{0%,100%{background-position:0 0,130% 0}50%{background-position:0 0,-30% 0}}
.sl-hero-media figcaption{position:absolute;z-index:2;bottom:22px;inset-inline:22px;padding:14px 18px;border-radius:18px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.sl-hero-media figcaption b{font:700 12px Syncopate,sans-serif;letter-spacing:.2em}
.sl-hero-media figcaption span{font:300 13px Heebo,sans-serif;color:var(--sl-soft)}

/* tabs */
.sl-page .service-page-navigation.sl-tabs-wrap{position:sticky;top:var(--sl-top,74px);z-index:30;padding:10px 0;background:transparent !important;border:0 !important;box-shadow:none !important}
.sl-tabs{display:flex !important;gap:4px;padding:5px !important;border-radius:999px;width:fit-content !important;max-width:92vw;margin:0 auto;overflow-x:auto;scrollbar-width:none}
.sl-tabs a{white-space:nowrap;text-decoration:none;font:500 14px Heebo,sans-serif;color:var(--sl-soft) !important;padding:9px 16px;border-radius:999px;transition:.3s;background:none !important}
.sl-tabs a:hover{color:#fff !important;background:rgba(255,255,255,.06) !important}
.sl-tabs a.active{color:#08131a !important;background:var(--sl-btn) !important}

/* info */
.sl-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.sl-stat{padding:22px;border-radius:20px}
.sl-stat i{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;margin-bottom:14px;font-style:normal;font-size:20px;background:linear-gradient(140deg,var(--sl-o1),var(--sl-o2));border:1px solid rgba(255,255,255,.2)}
.sl-stat b{display:block;font:800 18px/1.3 Heebo,sans-serif;margin-bottom:6px}
.sl-stat span{font:300 14px/1.7 Heebo,sans-serif;color:var(--sl-soft)}
.sl-blk{padding:clamp(22px,3vw,34px);border-radius:24px}
.sl-blk h3{margin:0 0 18px;font-size:23px !important}
.sl-tl-wrap{margin-bottom:16px}
.sl-tl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:26px 14px}
.sl-step{position:relative;display:grid;justify-items:center;text-align:center;gap:6px;padding:0 4px}
.sl-step::before{content:"";position:absolute;top:30px;inset-inline-start:50%;width:calc(100% + 14px);height:2px;background:var(--sl-prism);background-size:300% 100%;opacity:.45;z-index:0}
.sl-step:last-child::before{display:none}
.sl-n{position:relative;z-index:1;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#071219;color:#fff;font:700 17px Syncopate,sans-serif;box-shadow:0 0 0 2px var(--sl-acc),0 0 30px var(--sl-glow);margin-bottom:6px}
.sl-step b{font:600 15.5px/1.4 Heebo,sans-serif}
.sl-step p{margin:0;font:300 13.5px/1.75 Heebo,sans-serif;color:var(--sl-soft)}
.sl-two{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;margin-bottom:16px}
.sl-two>.sl-blk:only-child{grid-column:1/-1}
.sl-ticks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}
.sl-ticks li{display:flex;gap:10px;font:400 15px/1.6 Heebo,sans-serif;color:var(--sl-soft)}
.sl-ticks li::before{content:"✓";flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;color:#08131a;background:var(--sl-btn)}
.sl-equip{display:flex;flex-wrap:wrap;gap:8px}
.sl-equip span{padding:9px 14px;border-radius:12px;font:400 14px Heebo,sans-serif;color:var(--sl-soft);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14)}
.sl-notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.sl-note p{margin:0 0 10px;font:300 15px/1.85 Heebo,sans-serif;color:var(--sl-soft)}
.sl-note p:last-child{margin:0}

/* pricing (reuses existing price markup) */
.sl-price{padding:clamp(22px,3vw,40px) !important;border:0 !important;border-radius:28px !important;background:linear-gradient(150deg,rgba(255,255,255,.1),rgba(255,255,255,.025) 45%,rgba(255,255,255,.06)) !important}
.sl-price .pricing-card-content{background:none !important;padding:0 !important;position:relative;z-index:1}
.sl-price :is(h3,strong){color:#fff !important}
.sl-price .pricing-card-heading p,.sl-price .pricing-badge{color:var(--sl-acc) !important}
.sl-price .pricing-badge{background:rgba(127,200,225,.1) !important;border:1px solid rgba(169,212,226,.35) !important;border-radius:999px}
.sl-price .pricing-service-icon{background:linear-gradient(140deg,var(--sl-o1),var(--sl-o2)) !important;border:1px solid rgba(255,255,255,.2) !important;color:#fff !important}
.sl-price :is(p,span,li,td,th,caption){color:var(--sl-soft) !important}
.sl-price .pricing-table{background:transparent !important;border-collapse:separate !important;border-spacing:0 6px !important}
.sl-price .pricing-table :is(th,td){background:rgba(255,255,255,.04) !important;border:0 !important;padding:13px 14px !important}
.sl-price .pricing-table thead th{background:transparent !important;font-size:12px !important;letter-spacing:.1em}
.sl-price .pricing-table caption{color:#fff !important;font-weight:600;text-align:start;padding:6px 2px}
.sl-price .pricing-table-highlight :is(td,th){background:linear-gradient(90deg,var(--sl-o1),var(--sl-o2)) !important;color:#fff !important}
.sl-price .pricing-table-wrap{background:transparent !important;border:0 !important;box-shadow:none !important}
.sl-price :is(.upholstery-feature-price,.upholstery-note,.upholstery-addons>div,.window-service-grid>section,.pricing-scope-list,.pricing-private-rate,.pricing-volume-note,[class*="-grid"]>section,[class*="-grid"]>div){background:rgba(255,255,255,.04) !important;border:1px solid rgba(255,255,255,.12) !important;border-radius:16px !important;box-shadow:none !important}
.sl-price .addon-icon{color:var(--sl-acc) !important}
.sl-price .pricing-cta{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px !important;border-radius:999px !important;font:600 15px Heebo,sans-serif !important;color:#08131a !important;background:var(--sl-btn) !important;border:0 !important;box-shadow:0 14px 34px -12px var(--sl-glow) !important}

/* portfolio — bento */
.sl-bento{display:grid;gap:12px;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:240px}
.sl-bento .sl-slot:nth-child(1){grid-row:span 2}
.sl-bento .sl-slot:nth-child(2){grid-row:span 2}
.sl-bento[data-count="2"]{grid-template-columns:1.6fr 1fr;grid-auto-rows:420px}
.sl-bento[data-count="2"] .sl-slot:nth-child(n){grid-row:auto}
.sl-bento[data-count="3"]{grid-template-columns:2fr 1fr}
.sl-bento[data-count="3"] .sl-slot:nth-child(2){grid-row:auto}
.sl-bento[data-count="4"] .sl-slot:nth-child(2){grid-row:auto}
.sl-bento[data-count="4"] .sl-slot:nth-child(4){grid-column:2/4}
.sl-slot{all:unset;box-sizing:border-box;position:relative;border-radius:22px;overflow:hidden;background:#0a1820;cursor:zoom-in;min-height:200px}
.sl-slot img,.sl-slot video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.sl-slot:hover img,.sl-slot:hover video{transform:scale(1.06)}
.sl-slot::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--sl-prism);background-size:300% 300%;animation:slPm 8s infinite;opacity:.7;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:3}
.sl-cap{position:absolute !important;z-index:2;bottom:12px;inset-inline:12px;padding:10px 14px;border-radius:14px;font:400 13px Heebo,sans-serif;display:flex;justify-content:space-between;align-items:center;gap:8px;color:#fff}
.sl-cap b{font:700 9px Syncopate,sans-serif;letter-spacing:.3em;color:var(--sl-acc)}
.sl-lb{position:fixed;inset:0;z-index:300;display:grid;place-items:center;background:rgba(2,8,12,.86);backdrop-filter:blur(10px)}
.sl-lb[hidden]{display:none}
.sl-lb-box{width:min(1000px,92vw);aspect-ratio:16/10;border-radius:24px;overflow:hidden}
.sl-lb-box :is(img,video){position:relative;z-index:1;width:100%;height:100%;object-fit:contain;background:#000}
.sl-lb-x{position:absolute;top:20px;inset-inline-end:20px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(0,0,0,.4);color:#fff;font-size:22px;cursor:pointer}

/* faq — open cards */
.sl-faq{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sl-qa{padding:26px;border-radius:22px}
.sl-qa i{display:block;font:italic 300 40px/1 "Cormorant Garamond",serif;background:var(--sl-prism);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:12px}
.sl-qa h3{margin:0 0 8px;font-size:19px !important}
.sl-qa p{margin:0;font:300 15px/1.85 Heebo,sans-serif;color:var(--sl-soft)}

/* contact */
.sl-contact-sec{padding-top:10px !important}
.sl-contact{padding:clamp(28px,4vw,54px);border-radius:32px;display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center}
.sl-contact h2{margin:0 0 10px;font-size:clamp(28px,3.2vw,44px) !important;line-height:1.15}
.sl-contact p{margin:0;font:300 16px/1.85 Heebo,sans-serif;color:var(--sl-soft)}
.sl-contact .sl-acts{justify-content:flex-end}

/* related — list + peek */
.sl-rel{border-top:1px solid var(--sl-line);margin-top:26px}
.sl-rel a{position:relative;display:grid;grid-template-columns:60px 1fr auto;gap:20px;align-items:center;padding:20px 6px;border-bottom:1px solid var(--sl-line);text-decoration:none}
.sl-rel a i{font:italic 300 22px "Cormorant Garamond",serif;color:var(--sl-mute)}
.sl-rel a b{font:800 clamp(22px,2.4vw,34px)/1.1 Heebo,sans-serif;color:rgba(238,246,247,.82);transition:.4s}
.sl-rel a span{font:300 13px Heebo,sans-serif;color:var(--sl-mute);display:flex;align-items:center;gap:12px}
.sl-rel a span::after{content:"←";width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2);transition:.4s;font-size:15px;color:#fff}
.sl-rel a:hover b{background:var(--sl-prism);-webkit-background-clip:text;background-clip:text;color:transparent}
.sl-rel a:hover span::after{background:var(--sl-btn);color:#08131a}
.sl-peek{position:fixed;width:200px;height:200px;border-radius:20px;overflow:hidden;pointer-events:none;z-index:40;opacity:0;transform:translate(-50%,-60%) scale(.9);transition:opacity .3s,transform .4s;box-shadow:0 30px 60px rgba(0,0,0,.6);left:0;top:0}
.sl-peek.on{opacity:1;transform:translate(-50%,-60%) scale(1)}
.sl-peek img{width:100%;height:100%;object-fit:cover}

@media (max-width:980px){
  .sl-hero .shell,.sl-two,.sl-contact{grid-template-columns:1fr}
  .sl-hero-media{max-width:460px;width:100%;margin:0 auto;aspect-ratio:4/3.6}
  .sl-stats{grid-template-columns:1fr 1fr}
  .sl-step::before{display:none}
  .sl-tl{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
  .sl-bento,.sl-bento[data-count]{grid-template-columns:1fr 1fr;grid-auto-rows:200px}
  .sl-bento .sl-slot:nth-child(n){grid-row:auto;grid-column:auto}
  .sl-bento .sl-slot:first-child{grid-column:1/-1;grid-row:span 1}
  .sl-faq,.sl-ticks{grid-template-columns:1fr}
  .sl-contact .sl-acts{justify-content:flex-start}
  .sl-rel a{grid-template-columns:40px 1fr auto}
  .sl-rel a span{font-size:0;gap:0}
  .sl-peek{display:none}
}
@media (max-width:560px){.sl-stats{grid-template-columns:1fr}.sl-tl{grid-template-columns:1fr 1fr}}
html[data-motion="paused"] .sl *,html[data-motion="paused"] .sl *::before,html[data-motion="paused"] .sl *::after{animation-play-state:paused !important}
@media (prefers-reduced-motion:reduce){.sl *,.sl *::before,.sl *::after,.sl-orbs i{animation:none !important}}
.sl-price .pricing-table caption{background:none !important;font-size:15px !important}
.sl-price .upholstery-addons{grid-template-columns:repeat(3,1fr) !important}
.sl-price .upholstery-addons strong{min-height:0 !important;font-size:15px !important}
.sl-price .upholstery-addons p,.sl-price .upholstery-addons span{font-size:14px !important}
.sl-price .upholstery-feature-price strong{font-size:clamp(30px,3vw,42px) !important;font-weight:800 !important}
.sl-price :is(.upholstery-feature-price,.upholstery-note,.upholstery-addons>div,.window-service-grid>section){padding:16px 18px !important}
.sl-tl{grid-template-columns:repeat(auto-fit,minmax(128px,1fr))}
@media (max-width:700px){.sl-price .upholstery-addons{grid-template-columns:1fr !important}}
.sl-sum{margin-top:10px !important;font-size:15px !important;color:var(--sl-mute) !important}
.sl-eqb p{margin:0 0 12px;font:300 15px/1.85 Heebo,sans-serif;color:var(--sl-soft)}
.sl-eqb .sl-equip{margin:0 0 12px}

/* ===== Guides (guides.html, guide-*.html) ===== */
.gd-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin:14px 0 0;font:400 14px Heebo,sans-serif;color:var(--sl-mute)}
.gd-meta span{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--sl-line)}
.gd-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:clamp(24px,4vw,56px);align-items:start;padding:clamp(20px,4vw,48px) 0 clamp(40px,5vw,72px)}
[dir="ltr"] .gd-layout{grid-template-columns:minmax(0,1fr) 280px}
.gd-toc{position:sticky;top:calc(var(--sl-top,74px) + 20px);order:2;padding:22px 22px 18px}
.gd-toc strong{display:block;margin-bottom:10px;font:600 12px Heebo,sans-serif;letter-spacing:.2em;color:var(--sl-acc)}
.gd-toc ol{margin:0;padding:0;list-style:none;counter-reset:toc;display:grid;gap:4px}
.gd-toc li{counter-increment:toc}
.gd-toc a{display:flex;gap:10px;padding:8px 6px;border-radius:10px;color:var(--sl-soft);text-decoration:none;font:400 15px/1.45 Heebo,sans-serif;transition:background .2s,color .2s}
.gd-toc a::before{content:counter(toc,decimal-leading-zero);font-size:12px;color:var(--sl-acc);padding-top:3px}
.gd-toc a:hover{background:rgba(255,255,255,.06);color:#fff}
.gd-body{order:1;max-width:760px}
.gd-sec{padding:6px 0 26px;scroll-margin-top:calc(var(--sl-top,74px) + 24px)}
.gd-sec + .gd-sec{border-top:1px solid var(--sl-line);padding-top:30px}
.gd-body h2{margin:0 0 14px;font-size:clamp(24px,2.6vw,34px) !important;line-height:1.2}
.gd-body p{margin:0 0 14px;font:300 17.5px/1.9 Heebo,sans-serif;color:var(--sl-soft)}
.gd-body :is(ul,ol){margin:4px 0 16px;padding:0;list-style:none;display:grid;gap:10px}
.gd-body li{position:relative;padding-inline-start:38px;font:300 17px/1.75 Heebo,sans-serif;color:var(--sl-soft)}
.gd-body ul li::before{content:"";position:absolute;inset-inline-start:10px;top:.72em;width:9px;height:9px;border-radius:50%;background:var(--sl-btn);box-shadow:0 0 12px var(--sl-glow)}
.gd-body ol{counter-reset:step}
.gd-body ol li{counter-increment:step}
.gd-body ol li::before{content:counter(step);position:absolute;inset-inline-start:0;top:.12em;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font:700 13px Heebo,sans-serif;color:#06131a;background:var(--sl-btn)}
.gd-tip{display:grid;gap:4px;margin:8px 0 22px !important;padding:18px 22px}
.gd-tip b{font:700 12px Heebo,sans-serif;letter-spacing:.2em;color:var(--sl-acc)}
.gd-cta{padding:clamp(22px,3vw,34px);margin-top:10px}
.gd-cta h2{margin:0 0 8px}
.gd-cta .sl-acts{margin-top:14px}
.gd-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.gd-card{display:grid;grid-template-rows:180px auto;overflow:hidden;text-decoration:none;color:var(--sl-ink);transition:transform .3s}
.gd-card:hover{transform:translateY(-4px)}
.gd-card img{width:100%;height:180px;object-fit:cover;display:block}
.gd-card-t{display:grid;gap:6px;padding:16px 18px 20px}
.gd-card-t small{font:400 12.5px Heebo,sans-serif;color:var(--sl-acc)}
.gd-card-t b{font:800 19px/1.3 Heebo,sans-serif;color:#fff}
.gd-card-t span{font:300 14.5px/1.65 Heebo,sans-serif;color:var(--sl-soft)}
.gd-card:focus-visible{outline:3px solid #8fd6ec;outline-offset:3px}
@media (max-width:900px){.gd-layout{grid-template-columns:1fr}.gd-toc{position:static;order:0}.gd-body{order:1}}
@media (prefers-reduced-motion:reduce){.gd-card{transition:none}}

/* ---------- service areas (areas.html, area-*.html) ---------- */
.ar-regions{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:18px}
.ar-region{padding:22px 22px 24px;display:grid;align-content:start;gap:10px}
.ar-region h2{margin:0;font:800 clamp(20px,2vw,24px)/1.25 Heebo,sans-serif;color:#fff}
.ar-region p{margin:0;font:300 15px/1.7 Heebo,sans-serif;color:var(--sl-soft)}
.ar-chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px}
.ar-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:999px;border:1px solid var(--sl-line);font:400 14.5px/1.3 Heebo,sans-serif;color:var(--sl-soft);text-decoration:none;background:rgba(255,255,255,.03)}
.ar-chip.is-page{color:#fff;border-color:rgba(143,214,236,.55);background:rgba(143,214,236,.12);font-weight:600;transition:background .2s,transform .2s}
.ar-chip.is-page:hover{background:rgba(143,214,236,.22);transform:translateY(-1px)}
.ar-chip.is-page span{color:var(--sl-acc)}
[dir="ltr"] .ar-chip.is-page span{display:inline-block;transform:scaleX(-1)}
.ar-missing{margin:22px 0 0;padding:18px 22px;font:400 16px/1.7 Heebo,sans-serif;color:var(--sl-soft)}
.ar-missing a{color:var(--sl-acc);font-weight:700;white-space:nowrap}
.ar-cities{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px}
.ar-city{display:grid;gap:4px;padding:18px 20px;text-decoration:none;transition:transform .25s}
.ar-city:hover{transform:translateY(-3px)}
.ar-city b{font:800 20px/1.25 Heebo,sans-serif;color:#fff}
.ar-city span{font:300 14px/1.5 Heebo,sans-serif;color:var(--sl-soft)}
.ar-city.ar-all b{color:var(--sl-acc)}
.ar-svcs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px;margin-top:6px}
.ar-svc{display:grid;gap:8px;align-content:start;padding:18px 20px;text-decoration:none;transition:transform .25s}
.ar-svc:hover{transform:translateY(-3px)}
.ar-svc b{font:800 18px/1.3 Heebo,sans-serif;color:#fff}
.ar-svc>span{font:300 15px/1.7 Heebo,sans-serif;color:var(--sl-soft)}
.ar-svc em{font:600 13.5px Heebo,sans-serif;font-style:normal;color:var(--sl-acc)}
.ar-faq{display:grid;gap:10px}
.ar-q{padding:0;overflow:hidden}
.ar-q summary{cursor:pointer;list-style:none;padding:16px 20px;font:700 16.5px/1.45 Heebo,sans-serif;color:#fff;display:flex;justify-content:space-between;gap:12px}
.ar-q summary::-webkit-details-marker{display:none}
.ar-q summary::after{content:"+";color:var(--sl-acc);font-weight:400;font-size:22px;line-height:1;transition:transform .2s}
.ar-q[open] summary::after{transform:rotate(45deg)}
.ar-q p{margin:0 !important;padding:0 20px 18px}
.ar-steps{list-style:none;margin:0 0 26px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:14px;counter-reset:st}
.ar-steps li{counter-increment:st;padding:18px 20px;font:400 15.5px/1.7 Heebo,sans-serif;color:var(--sl-soft)}
.ar-steps li::before{content:counter(st,decimal-leading-zero);display:block;margin-bottom:6px;font:800 13px Heebo,sans-serif;letter-spacing:.15em;color:var(--sl-acc)}
.ar-hubcta .gd-cta{max-width:760px}
.ar-more{padding-top:0}
@media (prefers-reduced-motion:reduce){.ar-city,.ar-svc,.ar-chip.is-page{transition:none}}

/* ---------- quote form page, thank-you page, campaign landing pages ---------- */
.qf-hero .sl-hero-copy h1 span{display:block}
.qf-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(18px,3vw,32px);align-items:start}
.qf-card,.qf-side{padding:clamp(20px,3vw,34px)}
.qf-card h2,.qf-side h2{margin:0 0 6px;font:800 clamp(22px,2.2vw,28px)/1.25 Heebo,sans-serif;color:#fff}
.qf-sub{margin:0 0 18px;font:300 15.5px/1.7 Heebo,sans-serif;color:var(--sl-soft)}
.qf-svc{margin:0 0 14px;font:400 15px Heebo,sans-serif;color:var(--sl-soft)}.qf-svc b{color:var(--sl-acc)}
.qf-draft{margin:0 0 14px;padding:10px 14px;border-radius:12px;background:rgba(216,180,104,.12);border:1px solid rgba(216,180,104,.4);font:600 14.5px/1.5 Heebo,sans-serif;color:#f1d9a3}
.lx .qf-card .quote-form{padding:0;gap:14px;background:none;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.lx .qf-card .quote-form label>span:first-child{color:rgba(230,246,248,.85);font:500 13.5px Heebo,sans-serif}
.lx .qf-card .quote-form :is(input:not([type="checkbox"]),select,textarea){border-radius:12px;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16)}
.lx .qf-card .quote-form :is(input:not([type="checkbox"]),select,textarea):focus{border-color:rgba(160,250,255,.85);outline:3px solid rgba(143,214,236,.25)}
.lx .qf-card .quote-form .quote-privacy-note,.lx .qf-card .quote-form .consent-field,.lx .qf-card .quote-form .marketing-consent-group,.lx .qf-card .quote-form .form-note{color:var(--sl-soft)}
.lx .qf-card .quote-form .quote-privacy-note a{color:var(--sl-acc)}
.qf-fixed label:has(select[name="service"]){display:none}
.qf-steps{list-style:none;margin:10px 0 18px;padding:0;display:grid;gap:12px;counter-reset:qf}
.qf-steps li{counter-increment:qf;position:relative;padding-inline-start:44px;display:grid;gap:2px}
.qf-steps li::before{content:counter(qf);position:absolute;inset-inline-start:0;top:2px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font:800 14px Heebo,sans-serif;color:#06131a;background:var(--sl-btn)}
.qf-steps b{font:700 16px/1.4 Heebo,sans-serif;color:#fff}.qf-steps span{font:300 14.5px/1.6 Heebo,sans-serif;color:var(--sl-soft)}
.qf-or{margin:6px 0 10px;font:400 14.5px Heebo,sans-serif;color:var(--sl-soft)}
.qf-direct{display:flex;flex-wrap:wrap;gap:10px}
.qf-side .sl-chips{margin:8px 0 18px}.qf-h2b{margin-top:6px!important}
.qf-side .sl-acts{margin-top:16px}
.ty-summary dl{margin:12px 0 0;display:grid;gap:10px}
.ty-summary dl>div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--sl-line)}
.ty-summary dt{font:600 14px Heebo,sans-serif;color:var(--sl-acc)}.ty-summary dd{margin:0;font:400 15.5px/1.7 Heebo,sans-serif;color:#fff;overflow-wrap:anywhere}
.ty-hero h1 #ty-name{display:inline}
.lp-page .site-nav,.lp-page .sl-tabs-wrap{display:none!important}
.lp-final .gd-cta{max-width:820px;margin-inline:auto;text-align:center}.lp-final .sl-acts{justify-content:center}
@media (max-width:900px){.qf-grid{grid-template-columns:1fr}.ty-summary dl>div{grid-template-columns:1fr;gap:2px}}

/* ---------- quote page: the living POWER WASH wordmark on top, form right below ---------- */
.qf-top{position:relative;z-index:3;isolation:isolate;padding:10px 0 4px;
  background:radial-gradient(55% 60% at 30% 40%,rgba(31,182,196,.2),transparent 70%),radial-gradient(40% 50% at 85% 70%,rgba(216,180,104,.07),transparent 70%)}
.qf-top-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:clamp(12px,3vw,40px)}
.qf-top-copy{order:1}.qf-wm{order:2}
[dir="ltr"] .qf-top-copy{order:2}[dir="ltr"] .qf-wm{order:1}
.qf-top-copy h1{margin:6px 0 8px;font:800 clamp(34px,4.6vw,62px)/1.05 Heebo,sans-serif;color:#fff}
.qf-top-copy h1 span{display:block;background:linear-gradient(90deg,#9fe7f3,#e9f8fb);-webkit-background-clip:text;background-clip:text;color:transparent}
.qf-top-copy .sl-lead{margin:0 0 12px;max-width:560px}
.qf-top-copy .sl-chips{margin:0 0 14px}
.qf-wm .pw{position:relative;width:min(560px,100%);margin:0 auto;aspect-ratio:1024/790;pointer-events:none}
.qf-wm .pw canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.qf-wm .pw img.sh{position:absolute;left:calc(-40 / 1024 * 100%);top:calc(-40 / 790 * 100%);width:calc(1104 / 1024 * 100%);height:calc(870 / 790 * 100%);max-width:none}
.qf-wm .pw-tag{display:flex;flex-direction:column;align-items:center;gap:8px;margin:2px auto 0;width:min(520px,92%)}
.qf-wm .pw-tag::before{content:"";width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent);box-shadow:0 0 14px rgba(47,208,220,.45)}
.qf-wm .pw-tag span{font:700 clamp(8px,.9vw,12px) Syncopate,sans-serif;letter-spacing:.3em;text-align:center;color:#c9d6dc}
.qf-wm-page .qf-sec{position:relative;z-index:2;padding-top:clamp(8px,1.6vw,22px)}
.qf-wm-page .qf-top .lx-seam-bot,.qf-wm-page .qf-sec .lx-seam-top{display:none}
.qf-jump{display:none}
@media (max-width:900px){
  .qf-top{padding-top:4px}
  .qf-wm .pw-tag{margin-top:0}
  .qf-top-in{grid-template-columns:1fr;gap:4px}
  .qf-wm{order:0}.qf-top-copy{order:1;text-align:center}
  .qf-wm .pw{width:min(400px,84vw)}
  .qf-top-copy .sl-crumb,.qf-top-copy .sl-lead,.qf-top-copy .sl-chips{display:none}
  .qf-top-copy h1{font-size:clamp(28px,8vw,40px);margin:4px 0 2px}
  .qf-top-copy h1 span{display:inline}
}
