*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
        :root{--dark-bg:#06111f;--red:#c8251d;--red-dark:#a81e17;--gold:#e8920a;--gold-lt:#fcd34d;--teal:#0891b2;--orange:#f97316;--green:#10b981;--light:#f4f6f9;--border:#e8ecf2;--muted:#8a96a8;--body-text:#3a4558;--heading:#0d1f3c;--white:#fff;--shadow:0 4px 8px rgba(0,0,0,.09);--shadow-lg:0 12px 30px rgba(0,0,0,.14)}
        html{scroll-behavior:smooth}
        body{font-family:'Poppins',-apple-system,sans-serif;color:var(--body-text);font-size:16px;line-height:1.7;overflow-x:hidden}
        main{width:100%;overflow-x:hidden}
        a{text-decoration:none;color:inherit}ul{list-style:none;padding:0}
        @keyframes bP{0%{background-color:rgba(180,28,22,.92)}50%{background-color:rgba(20,80,160,.92)}100%{background-color:rgba(180,28,22,.92)}}
        .top-banner{width:100%;animation:bP 8s ease-in-out infinite;padding:11px 20px;text-align:center}
        .tbi{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
        .tbt{font-size:.82rem;font-weight:600;color:rgba(255,255,255,.93);line-height:1.5}.tbt strong{color:#fff}
        .tbc{font-size:.76rem;font-weight:700;color:#fff;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.35);border-radius:4px;padding:4px 12px;white-space:nowrap}
        .breadcrumb{background:var(--dark-bg);border-bottom:1px solid rgba(255,255,255,.07);padding:10px 20px}
        .bc-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.75rem;font-weight:500;color:rgba(255,255,255,.38)}
        .bc-inner a{color:rgba(255,255,255,.5)}.bc-inner a:hover{color:var(--gold)}.bc-sep{color:rgba(255,255,255,.2)}.bc-cur{color:var(--gold-lt)}
        .article-hero{background:var(--dark-bg);padding:52px 20px 56px;position:relative;overflow:hidden}
        .article-hero::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(-45deg,transparent,transparent 42px,rgba(255,255,255,.01) 42px,rgba(255,255,255,.01) 43px)}
        .hero-bar{position:absolute;top:0;left:0;width:6px;height:100%;background:linear-gradient(180deg,var(--green),var(--teal))}
        .hero-inner{max-width:800px;margin:0 auto;position:relative;z-index:1}
        .art-cat{display:inline-flex;align-items:center;gap:7px;background:rgba(16,185,129,.14);border:1px solid rgba(16,185,129,.3);border-radius:4px;padding:5px 13px;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#6ee7b7;margin-bottom:14px}
        .art-title{font-size:clamp(1.55rem,4vw,2.5rem);font-weight:800;line-height:1.12;color:var(--white);margin-bottom:16px}
        .art-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px}
        .art-meta span{font-size:.78rem;font-weight:600;color:rgba(255,255,255,.38);text-transform:uppercase;letter-spacing:.07em}
        .art-meta strong{color:rgba(255,255,255,.6)}
        .art-intro{font-size:1.05rem;color:rgba(255,255,255,.6);line-height:1.82;max-width:720px}
        .toc{background:var(--light);border:1px solid var(--border);border-radius:10px;padding:22px 24px;margin-bottom:36px}
        .toc h4{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:12px}
        .toc ol{list-style:none;counter-reset:toc;display:flex;flex-direction:column;gap:6px}
        .toc ol li{counter-increment:toc;display:flex;align-items:baseline;gap:8px;font-size:.88rem}
        .toc ol li::before{content:counter(toc) ".";font-weight:700;color:var(--green);flex-shrink:0;min-width:18px}
        .toc ol li a{color:var(--heading);font-weight:500}.toc ol li a:hover{color:var(--green)}
        .article-wrap{max-width:1200px;margin:0 auto;padding:52px 20px;display:grid;grid-template-columns:1fr;gap:48px}
        .article-body h2{font-size:clamp(1.3rem,3vw,1.85rem);font-weight:800;color:var(--heading);margin:44px 0 14px;line-height:1.2;padding-top:8px;border-top:3px solid var(--green)}
        .article-body h2:first-of-type{margin-top:0;border-top:none}
        .article-body h3{font-size:clamp(1rem,2.2vw,1.2rem);font-weight:700;color:var(--heading);margin:26px 0 10px}
        .article-body p{font-size:.97rem;line-height:1.88;margin-bottom:18px;color:var(--body-text)}
        .article-body a{color:var(--teal);font-weight:600}
        .article-body ul{margin:14px 0 18px;display:flex;flex-direction:column;gap:8px}
        .article-body ul li{display:flex;align-items:flex-start;gap:10px;font-size:.95rem;line-height:1.7}
        .article-body ul li::before{content:'✓';color:var(--green);font-weight:700;flex-shrink:0;margin-top:2px}
        .article-body strong{color:var(--heading);font-weight:700}

        /* Service interval cards */
        .interval-grid{display:grid;grid-template-columns:1fr;gap:16px;margin:20px 0 28px}
        .interval-card{background:var(--white);border-radius:12px;border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden}
        .ic-head{padding:13px 18px;display:flex;align-items:center;gap:12px}
        .ic-icon{font-size:1.7rem;flex-shrink:0}
        .ic-title{font-weight:800;color:var(--white);font-size:.97rem;margin:0;flex:1}
        .ic-freq{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;background:rgba(255,255,255,.18);padding:3px 10px;border-radius:3px;color:var(--white);white-space:nowrap}
        .ic-head.furnace{background:linear-gradient(135deg,#7c2d12,#c8251d)}
        .ic-head.ac{background:linear-gradient(135deg,#0c4a6e,#0891b2)}
        .ic-head.hp{background:linear-gradient(135deg,#064e3b,#10b981)}
        .ic-head.boiler{background:linear-gradient(135deg,#1e1b4b,#4338ca)}
        .ic-head.minisplit{background:linear-gradient(135deg,#701a75,#a21caf)}
        .ic-body{padding:16px 18px}
        .ic-body p{font-size:.88rem;line-height:1.72;color:var(--body-text);margin-bottom:12px}
        .ic-tasks h5{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;font-weight:700;color:var(--muted);margin-bottom:8px}
        .ic-tasks ul{display:flex;flex-direction:column;gap:5px;margin:0}
        .ic-tasks ul li{font-size:.84rem;display:flex;gap:7px;line-height:1.5;color:var(--body-text)}
        .ic-tasks ul li::before{content:'→';color:var(--green);font-weight:700;flex-shrink:0}
        .ic-diy{margin-top:12px;padding:10px 14px;background:var(--light);border-radius:6px;font-size:.82rem;color:var(--body-text);line-height:1.6}
        .ic-diy strong{color:var(--heading)}

        /* Quick ref table */
        .comp-table{width:100%;border-collapse:collapse;margin:20px 0 28px;font-size:.86rem;border-radius:8px;overflow:hidden;box-shadow:var(--shadow)}
        .comp-table th{background:var(--dark-bg);color:var(--white);padding:11px 14px;text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
        .comp-table td{padding:11px 14px;border-bottom:1px solid var(--border);vertical-align:middle;line-height:1.5}
        .comp-table tr:last-child td{border-bottom:none}
        .comp-table tr:nth-child(even) td{background:var(--light)}
        .comp-table td:first-child{font-weight:700;color:var(--heading)}
        .freq-badge{display:inline-block;padding:3px 10px;border-radius:4px;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
        .freq-annual{background:#dcfce7;color:#166534}
        .freq-biannual{background:#dbeafe;color:#1d4ed8}
        .freq-monthly{background:#fef9c3;color:#854d0e}
        .freq-diy{background:#f3f4f6;color:var(--muted)}

        /* Cost vs savings box */
        .savings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0 26px}
        .savings-box{border-radius:10px;padding:18px 16px;text-align:center}
        .savings-box.cost{background:#fff5f5;border:1px solid #fecaca}
        .savings-box.save{background:#f0fdf4;border:1px solid #bbf7d0}
        .savings-box .num{display:block;font-size:1.7rem;font-weight:800;line-height:1;margin-bottom:5px}
        .savings-box.cost .num{color:var(--red)}
        .savings-box.save .num{color:var(--green)}
        .savings-box .lbl{font-size:.76rem;font-weight:600;line-height:1.4;color:var(--heading)}

        /* Callouts */
        .callout{border-radius:0 10px 10px 0;padding:18px 20px;margin:22px 0}
        .callout-green{background:#f0fdf4;border-left:4px solid var(--green)}
        .callout-gold{background:#fffbeb;border-left:4px solid var(--gold)}
        .callout-red{background:#fff5f5;border-left:4px solid var(--red)}
        .callout-teal{background:#ecfeff;border-left:4px solid var(--teal)}
        .callout p{font-size:.93rem;color:var(--heading);margin-bottom:0;line-height:1.72;font-weight:500}

        /* Seasonal calendar */
        .season-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 24px}
        .season-box{border-radius:10px;padding:16px 16px;border:1px solid var(--border)}
        .season-box h4{font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px;display:flex;align-items:center;gap:7px}
        .season-box ul{display:flex;flex-direction:column;gap:6px}
        .season-box ul li{font-size:.83rem;color:var(--body-text);display:flex;gap:7px;line-height:1.5}
        .season-box ul li::before{content:'•';font-weight:700;flex-shrink:0}
        .season-box.spring{background:#ecfdf5;border-color:#a7f3d0}.season-box.spring h4{color:#065f46}
        .season-box.summer{background:#fff7ed;border-color:#fed7aa}.season-box.summer h4{color:#9a3412}
        .season-box.fall{background:#fffbeb;border-color:#fde68a}.season-box.fall h4{color:#92400e}
        .season-box.winter{background:#eff6ff;border-color:#bfdbfe}.season-box.winter h4{color:#1e40af}

        /* FAQ */
        .faq-item{border:1px solid var(--border);border-radius:10px;margin-bottom:12px;overflow:hidden}
        .faq-q{padding:16px 20px;font-weight:700;font-size:.96rem;color:var(--heading);background:var(--white);display:flex;align-items:flex-start;gap:10px}
        .faq-q::before{content:'Q';background:var(--green);color:#fff;border-radius:4px;padding:1px 7px;font-size:.72rem;font-weight:800;flex-shrink:0;margin-top:2px}
        .faq-a{padding:0 20px 16px;font-size:.92rem;line-height:1.78;color:var(--body-text);background:var(--light)}

        /* Sidebar */
        .article-sidebar{display:flex;flex-direction:column;gap:16px}
        .sb-box{background:var(--white);border-radius:10px;border:1px solid var(--border);padding:20px 18px;box-shadow:var(--shadow)}
        .sb-box.dark{background:var(--dark-bg);border:none;position:relative;overflow:hidden}
        .sb-box.dark::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--green),var(--teal))}
        .sb-box.gold-border{border:2px solid rgba(232,146,10,.3)}
        .sb-box h4{font-size:.73rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:11px}
        .sb-box.dark h4{color:rgba(255,255,255,.38)}.sb-box.dark h3{color:var(--white);font-size:1rem;margin-bottom:7px}.sb-box.dark p{font-size:.83rem;color:rgba(255,255,255,.5);margin-bottom:14px}
        .sb-phone{display:flex;align-items:center;gap:8px;background:var(--red);color:var(--white);padding:11px 16px;border-radius:6px;font-size:1rem;font-weight:800;margin-bottom:7px;transition:background .2s}
        .sb-phone:hover{background:var(--red-dark);color:var(--white)}
        .sb-hrs{font-size:.69rem;color:rgba(255,255,255,.33);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
        .samuel-card{text-align:center}
        .samuel-card img{width:96px;height:96px;border-radius:50%;object-fit:cover;border:3px solid var(--gold);margin-bottom:10px}
        .samuel-card .sn{font-size:.9rem;font-weight:700;color:var(--heading);margin-bottom:2px}
        .samuel-card .st{font-size:.73rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px}
        .samuel-card .sb-text{font-size:.81rem;color:var(--body-text);line-height:1.6}
        .related-list{display:flex;flex-direction:column;gap:8px}
        .related-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:var(--light);border-radius:7px;font-size:.84rem;font-weight:600;color:var(--heading);transition:all .2s;line-height:1.35}
        .related-item:hover{background:var(--dark-bg);color:var(--white)}
        .related-item span{font-size:1.1rem;flex-shrink:0}
        .cta-band{background:var(--dark-bg);padding:60px 20px;position:relative;overflow:hidden}
        .cta-band::before{content:'';position:absolute;top:0;left:0;width:6px;height:100%;background:linear-gradient(180deg,var(--green),var(--teal))}
        .cta-row{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;position:relative;z-index:1}
        .cta-text h2{color:var(--white);margin-bottom:6px;font-size:clamp(1.2rem,2.8vw,1.9rem)}.cta-text h2 span{color:var(--gold-lt)}
        .cta-text p{color:rgba(255,255,255,.48);font-size:.92rem;margin-bottom:0}
        .cta-phone{display:flex;align-items:center;gap:10px;background:var(--red);color:var(--white);padding:14px 24px;border-radius:6px;transition:background .2s}
        .cta-phone:hover{background:var(--red-dark);color:var(--white)}
        .cta-phone-lbl{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;opacity:.73;display:block;line-height:1;margin-bottom:2px;color:var(--white)}
        .cta-phone-num{font-size:1.5rem;font-weight:800;line-height:1;color:var(--white)}
        .cta-row{flex-direction:column;align-items:flex-start}.cta-phone{width:100%;justify-content:center}
        @media(min-width:640px){
            .article-wrap{padding:52px 24px}
            .interval-grid{grid-template-columns:1fr}
            .savings-grid{grid-template-columns:repeat(4,1fr)}
            .season-grid{grid-template-columns:repeat(4,1fr)}
            .cta-row{flex-direction:row;align-items:center;justify-content:space-between}.cta-phone{width:auto}
        }
        @media(min-width:1024px){
            .article-wrap{grid-template-columns:1fr 300px;align-items:start;gap:56px}
            .article-hero{padding:64px 20px 72px}
        }