/* Elite Sprinkler Services — blog styles. Generated by blog_build.py.
   Loads AFTER site.css; uses the site's design tokens (--navy/--blue/--cyan…). */
.bwrap{max-width:1180px;margin:0 auto;padding:0 28px;}
/* --- article header band --- */
.bhead{position:relative;overflow:hidden;background:linear-gradient(120deg,#0A1B3A,#123163 60%,#1B4C99);color:#fff;padding:clamp(40px,6vw,72px) 0 clamp(80px,9vw,120px);}
.bhead::after{content:"";position:absolute;right:-160px;top:-140px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(56,189,248,.18),transparent 65%);}
.bhead .wave{position:absolute;left:0;right:0;bottom:-1px;line-height:0;}
.bhead .wave svg{width:100%;height:56px;display:block;}
.bhead__in{position:relative;z-index:3;max-width:820px;}
.bcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:12.5px;font-weight:600;color:#8FA6CB;margin-bottom:22px;}
.bcrumbs a{color:#C9D6EC;}.bcrumbs a:hover{color:#fff;}.bcrumbs .sep{opacity:.55;}.bcrumbs .cur{color:var(--sky);}
.bcat{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);}
.bcat span{width:26px;height:2px;background:var(--cyan);border-radius:2px;}
.bhead h1{font-family:'Sora',sans-serif;font-weight:800;font-size:clamp(30px,4.4vw,50px);line-height:1.06;letter-spacing:-.02em;margin-top:15px;text-wrap:balance;}
.bdek{margin-top:18px;font-size:clamp(16px,1.8vw,19px);line-height:1.6;color:#C5D4EC;text-wrap:pretty;}
.bmeta{margin-top:22px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;color:#9FB4D6;}
.bmeta .dot{opacity:.5;}
/* --- hero image, pulled up over the band --- */
.bhero{max-width:1180px;margin:calc(-1 * clamp(56px,7vw,86px)) auto 0;padding:0 28px;position:relative;z-index:5;}
.bhero img{width:100%;height:auto;aspect-ratio:16/8;object-fit:cover;border-radius:18px;box-shadow:0 26px 60px rgba(10,27,58,.24);background:#0A1B3A;}
/* --- article body --- */
.bbody{padding:clamp(34px,5vw,56px) 0 8px;}
.prose{max-width:760px;margin:0 auto;}
.prose p{font-size:17px;line-height:1.75;color:#25334A;margin:0 0 20px;text-wrap:pretty;}
.prose h2{font-family:'Sora',sans-serif;font-weight:700;font-size:clamp(22px,2.6vw,29px);line-height:1.2;color:var(--navy);letter-spacing:-.01em;margin:38px 0 14px;}
.prose h2:first-child{margin-top:0;}
.prose a{color:var(--blue);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(30,111,224,.3);}
.prose a:hover{border-bottom-color:var(--blue);}
.prose strong{color:var(--navy);font-weight:700;}
.prose ul,.prose ol{margin:0 0 22px;padding-left:22px;}
.prose li{font-size:17px;line-height:1.7;color:#25334A;margin:0 0 10px;}
.prose li::marker{color:var(--blue);}
/* pricing table */
.ptable{width:100%;border-collapse:collapse;margin:6px 0 24px;font-size:15.5px;border:1px solid var(--line);border-radius:12px;overflow:hidden;}
.ptable thead th{background:#0A1B3A;color:#fff;font-family:'Sora',sans-serif;font-weight:600;font-size:13px;letter-spacing:.02em;text-align:left;padding:12px 16px;}
.ptable td{padding:12px 16px;border-top:1px solid var(--line);color:#25334A;}
.ptable td:last-child{font-family:'Sora',sans-serif;font-weight:700;color:var(--navy);white-space:nowrap;text-align:right;}
.ptable tbody tr:nth-child(even){background:#F5F9FE;}
/* inline mid-article CTA */
.bcta{max-width:760px;margin:30px auto;background:linear-gradient(160deg,#0A1B3A,#123163);border-radius:18px;padding:26px 28px;color:#fff;position:relative;overflow:hidden;}
.bcta::after{content:"";position:absolute;right:-70px;bottom:-70px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(56,189,248,.24),transparent 65%);}
.bcta h3{font-family:'Sora',sans-serif;font-weight:700;font-size:20px;position:relative;z-index:2;}
.bcta p{font-size:15px;line-height:1.6;color:#C5D4EC;margin:8px 0 18px;position:relative;z-index:2;}
.bcta__btns{display:flex;flex-wrap:wrap;gap:12px;position:relative;z-index:2;}
/* related / keep reading */
.brelated{max-width:760px;margin:6px auto 0;padding:26px 0 0;border-top:1px solid var(--line);}
.brelated h2{font-family:'Sora',sans-serif;font-weight:700;font-size:19px;color:var(--navy);margin-bottom:14px;}
.brelated__list{display:flex;flex-direction:column;gap:2px;}
.brelated__list a{display:inline-flex;align-items:center;gap:9px;font-size:15.5px;font-weight:600;color:var(--blue);padding:8px 0;}
.brelated__list a svg{flex:none;}
/* --- blog index --- */
.bidx{padding:clamp(40px,5vw,64px) 0;}
.bidx__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:26px;}
.bcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease;}
.bcard:hover{transform:translateY(-3px);box-shadow:0 22px 48px rgba(10,27,58,.13);}
.bcard__img{aspect-ratio:16/9;object-fit:cover;width:100%;background:#0A1B3A;}
.bcard__b{padding:20px 22px 24px;display:flex;flex-direction:column;flex:1;}
.bcard__cat{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);}
.bcard__t{font-family:'Sora',sans-serif;font-weight:700;font-size:19px;line-height:1.28;color:var(--navy);margin:9px 0 8px;}
.bcard__t a{color:inherit;}.bcard__t a:hover{color:var(--blue);}
.bcard__d{font-size:14.5px;line-height:1.6;color:var(--muted);margin-bottom:16px;flex:1;}
.bcard__m{font-size:12.5px;color:var(--muted);display:flex;gap:8px;align-items:center;}
.bcard__m .dot{opacity:.5;}
@media(max-width:680px){.bhero img{aspect-ratio:16/10;border-radius:12px;}.prose p,.prose li{font-size:16px;}}
