/* r4 (Oct 30): style guide colors. Gold #AF946A, Rosy Coral #BA6D72, robin's egg #5DB1CA, headings #2F6F82, Inter. No navy. */
:root{--r4-gold:#AF946A;--r4-coral:#BA6D72;--r4-egg:#5DB1CA;--r4-head:#2F6F82;--r4-ink:#343E44;--r4-mist:#EEF7FA;--r4-cream:#FBF8F3}
/* watercolor cloud wash (Illustrator export from the $249 hanger) behind key sections */
.services,.final,.r4sol,.r4promise,.est.wiz,#estimate.est{background-image:url(img/r4-clouds.webp);background-repeat:no-repeat;background-position:center top;background-size:100% auto}
/* gold accent rule under section headings */
.services>h2::after,.bzplans>h2::after,.r4promise h2::after,.r4sol h2::after,.est.wiz>h2::after,.faq>h2::after{content:"";display:block;width:64px;height:3px;border-radius:3px;background:var(--r4-gold);margin:.45em 0 0}
.r4sol h2::after{margin:.45em auto 0!important}
/* icons from Press's Illustrator icon library */
.r4ic{display:block;width:44px;height:44px;object-fit:contain;margin:0 0 8px}
.card .r4ic{width:40px;height:40px}
.trust .r4ic,.trustrow .r4ic{display:inline-block;width:28px;height:28px;margin:0 6px 0 0;vertical-align:middle}
/* 1. storefront card art */
.card img.r4store{object-position:center 60%}
/* 2. price tier cards and pane counting in style guide colors */
.wz-tier,.bo-tier,.bztier,.tier{border:1.5px solid #D9ECF2!important;background:#fff!important;box-shadow:0 12px 28px -20px rgba(47,111,130,.45)!important}
.wz-tier{border-top:4px solid var(--r4-egg)!important}
.wz-tier:hover{border-color:var(--r4-egg)!important}
.wz-tier.on{background:var(--r4-mist)!important;border-color:var(--r4-coral)!important;box-shadow:inset 0 0 0 1px var(--r4-coral)!important}
.wz-tier b,.bo-tier .bt-p,.tier .range{color:var(--r4-head)!important}
.wz-tier .wz-tbk,html .wz-tier:hover .wz-tbk,.bo-tier .bt-btn,html .boc .bt-btn{background:var(--r4-head)!important;color:#fff!important;box-shadow:inset 0 -3px 0 var(--r4-gold)!important}
.wz-tier .wz-tbk:hover,.bo-tier .bt-btn:hover,html .boc .bt-btn:hover,.bt-btn:hover{background:#255A6A!important}
.wz-guide{background:var(--r4-cream)!important;border:1.5px solid #E7DCCB!important}
.wz-guide>summary,.wz-guide summary{color:var(--r4-head)!important}
.wz-guide>summary::before{background:var(--r4-gold)!important;color:#fff!important}
.wz-guide figure{background:#fff;border:1px solid #E7DCCB;border-radius:12px;padding:6px}
.wz-total,.wz-price{color:var(--r4-head)}
.wz-tier.wz-dhopen .wz-dhic{width:40px;height:104px;object-fit:contain;border-radius:4px;box-shadow:0 3px 10px -4px rgba(52,62,68,.35);filter:none}
/* 3. door hanger button with the real hanger */
a.r4dh{display:inline-flex;align-items:center;gap:10px;vertical-align:middle}
a.r4dh img{width:28px;height:72px;object-fit:contain;border-radius:3px;box-shadow:0 3px 8px -3px rgba(52,62,68,.4);background:#fff}
.dl-art.r4hang{width:200px;height:auto;aspect-ratio:auto;border-radius:10px;box-shadow:0 14px 30px -16px rgba(52,62,68,.5);margin:0 auto 18px;display:block;object-fit:contain}
/* 10. storefront prices are booking buttons */
.bzprice dd{margin:0}
a.r4pbtn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 8px 6px 14px;border-radius:99px;background:var(--r4-head);color:#fff!important;text-decoration:none;font-weight:800;box-shadow:inset 0 -3px 0 var(--r4-gold);white-space:nowrap}
a.r4pbtn b{font-size:1.08rem;letter-spacing:-.01em}
a.r4pbtn span{font-size:.78rem;font-weight:700;background:#fff;color:var(--r4-head);border-radius:99px;padding:4px 9px}
a.r4pbtn:hover{background:#255A6A}
a.r4pbtn:focus-visible{outline:3px solid var(--r4-coral);outline-offset:2px}
/* 8. route offer sits above the tiers */
.bzplans #route-offer{margin:0 auto 26px;max-width:860px}
/* 9. My promise block */
.r4promise{padding:64px 20px 56px}
.r4pr-card{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:300px 1fr;gap:36px;align-items:center;background:rgba(255,255,255,.94);border:1.5px solid var(--r4-gold);border-radius:20px;padding:34px;box-shadow:0 22px 50px -30px rgba(47,111,130,.55),inset 0 0 0 6px #fff,inset 0 0 0 7px #E7DCCB}
.r4pr-art img{width:100%;height:auto;border-radius:14px;display:block}
.r4pr-body .eyebrow{color:var(--r4-coral)!important;letter-spacing:.12em}
.r4pr-body h2{color:var(--r4-head);text-align:left;margin:.2em 0 .7em}
.r4pr-body h2::after{margin-left:0!important}
.r4pr-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.r4pr-list li{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:center;font-size:1.06rem;color:var(--r4-ink);padding:10px 12px;border-radius:12px;background:var(--r4-mist)}
.r4num{width:40px;height:40px;border-radius:50%;background:#fff;border:2px solid var(--r4-gold);color:var(--r4-head);display:flex;align-items:center;justify-content:center;font-weight:800}
.r4sign{margin:16px 0 0;color:var(--r4-head);font-weight:700}
@media (max-width:820px){.r4pr-card{grid-template-columns:1fr;padding:22px;gap:20px}.r4pr-art{max-width:220px;margin:0 auto}.r4pr-body h2{text-align:center}.r4pr-body h2::after{margin-left:auto!important}.r4pr-body .eyebrow{text-align:center}}
/* 13. simple solar booking */
.r4sol{padding:64px 20px}
.r4sol-card{max-width:720px;margin:0 auto;text-align:center;background:rgba(255,255,255,.95);border:1.5px solid #D9ECF2;border-top:4px solid var(--r4-egg);border-radius:20px;padding:34px 26px;box-shadow:0 22px 50px -30px rgba(47,111,130,.5)}
.r4sol-ic{margin:0 auto 10px!important;width:64px!important;height:64px!important}
.r4sol h2{color:var(--r4-head)}
.r4sol-lead{font-size:1.12rem;font-weight:700;color:var(--r4-ink);margin:.4em 0}
.r4sol-fine{color:#505C63;max-width:560px;margin:.6em auto 1.2em;font-size:.98rem}
.r4sol-btn{background:var(--r4-head)!important;color:#fff!important;box-shadow:inset 0 -3px 0 var(--r4-gold)!important}
/* 15. spot illustration */
.r4spot{max-width:760px;margin:10px auto 40px;padding:0 20px;text-align:center}
.r4spot img{width:100%;height:auto;border-radius:16px;box-shadow:0 18px 40px -26px rgba(52,62,68,.5)}
.r4spot figcaption{margin-top:10px;font-weight:700;color:var(--r4-head)}
/* guard: icons inside cards are not card photos */
.card img.r4ic{width:40px!important;height:40px!important;aspect-ratio:auto!important;object-fit:contain!important;transform:none!important;margin:0 0 8px}
.bo-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}
.r4promise .r4pr-art img{max-width:300px}
.dl-deal a.btn{background:var(--r4-head)!important;color:#fff!important;box-shadow:inset 0 -3px 0 var(--r4-gold)!important}
