/* A softer coastal palette, with gentle sunlight and sage washes. */
:root{--cream:#eee9da}
body{background-color:#e5e9dd;background-image:radial-gradient(ellipse at 8% 24%,rgba(230,205,131,.24),transparent 36%),radial-gradient(ellipse at 95% 58%,rgba(128,165,137,.2),transparent 38%),linear-gradient(180deg,#eae5d5 0%,#e5e9dd 45%,#e8e1cf 100%)}
header,footer{background:#e0e5d7}
.page-guide{background:rgba(214,225,206,.65);border-bottom-color:#bacbb5}
.quote{background:#eee9da}
input,textarea,select{background:#f4f1e7;border-color:#bdcbbd}
.item-card{background:#eee9da;border-color:#bdcbb7}
.refused{background:#ede5d7;border-color:#d2c3ac}
.restriction-note{background:#e5d9c5}
.promise-grid article{background:#d5dfcd;border:1px solid #bdcbb7}
.about-section{background:#d4dfce;border:1px solid #bacbb5}
.faq{background:rgba(214,225,206,.7);border:1px solid #bdcbb7;border-radius:14px;padding-top:38px;margin-top:24px;margin-bottom:50px}
.faq details,.county-grid details{border-bottom-color:#b9c8b2}
.service-list article{border-top-color:#aabda4}
.review-invite{border-top-color:#b9c8b2}
footer{border-top-color:#b9c8b2}
@media(max-width:750px){.faq{margin:20px 20px 35px;padding:28px 20px 15px}.page-guide{background:rgba(214,225,206,.8)}}

/* Centered brand masthead and evenly spaced navigation. */
header{flex-direction:column;justify-content:center;gap:22px;padding:24px 24px 20px;background:linear-gradient(120deg,#e1e7d9,#eee7d3,#e1e7d9);border-bottom:1px solid #b9c8b2}
header .brand{justify-content:center}
header .brand img{width:330px;max-width:80vw;height:auto;filter:drop-shadow(0 5px 7px #04392b15)}
header nav{width:100%;max-width:1040px;display:grid;grid-template-columns:repeat(4,1fr) 1.4fr;gap:18px;align-items:center;text-align:center;padding-top:18px;border-top:1px solid #b9c8b2}
header nav a{display:block;font-family:Manrope,'DM Sans',sans-serif;font-size:15px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;line-height:1.5;padding:10px 8px;border-radius:6px;transition:background-color .2s,color .2s}
header nav a:hover{background:#d0ddc8;color:#04392b}
header nav .phone{background:#04392b;color:#eee9da;letter-spacing:.4px;white-space:nowrap;padding:13px 16px}
header nav .phone:hover{background:#175844;color:#ffe044}
@media(max-width:750px){header{padding:20px 20px 18px;gap:16px}header .brand img{width:270px}header nav{grid-template-columns:repeat(4,1fr);gap:8px;padding-top:14px;max-width:560px}header nav a:not(.phone){display:block}header nav a{font-size:12px;letter-spacing:.35px;padding:10px 3px}header nav .phone{grid-column:1/-1;justify-self:center;font-size:14px;width:220px;margin-top:4px}}
@media(max-width:380px){header nav{grid-template-columns:repeat(2,1fr)}header nav a{font-size:13px}}
@media(prefers-reduced-motion:reduce){header nav a{transition:none}}

/* Sunshine City: evening waterfront, deep greens, and sun-yellow accents. */
body{color:#f2efdf;background:#082f25;background-image:linear-gradient(rgba(3,30,23,.94),rgba(4,40,29,.97)),url('assets/waterfront.png');background-size:cover;background-position:center;background-attachment:fixed}
header{color:#f2efdf;background:radial-gradient(ellipse at 50% 0%,#355537 0%,#0d392b 55%,#062b22 100%);border-bottom-color:#ffe04455}
header .brand img{filter:drop-shadow(0 6px 14px #0005)}
header nav{border-top-color:#ffe04438}
header nav a:hover{background:#234d38;color:#ffe044}
header nav .phone{background:#ffe044;color:#04392b}
header nav .phone:hover{background:#efcc36;color:#04392b}
.hero{border-bottom:1px solid #ffe04444}
.quote{background:#123c2e;color:#f2efdf;border:1px solid #d2b65388;box-shadow:0 18px 60px #001a2299}
.quote .eyebrow{color:#ffe044}
.quote>p:not(.eyebrow),.quote .note,.quote .form-alt,.quote label span{color:#cfd9c8}
.quote .form-alt{border-top-color:#54735c}
input,textarea,select{background:#dce2d2;color:#04392b;border-color:#9eb59e}
input::placeholder,textarea::placeholder{color:#476151;opacity:1}
.page-guide{background:#143e2e;border-bottom-color:#65734a}
.page-guide>span{color:#ffe044}
.page-guide a{color:#f2efdf}
.info-section .eyebrow,.item-section .eyebrow,.faq .eyebrow,.about-section .eyebrow{color:#ffe044}
.info-section .section-heading>p:last-child,.item-section .section-heading>p:last-child,.service-list p,.item-caption p,.promise-grid p,.review-invite p,.county-grid p,.faq-intro,.faq details p,.about-section p,.map-legend,.map-fallback,footer p{color:#d4dece}
.service-list article{border-top-color:#ac9954}
.service-list article>span,.promise-mark,.item-caption .status{color:#ffe044}
.item-card{background:#173f30;border-color:#486449}
.refused{background:#263d2d;border-color:#8a7756}
.refused .status{color:#ffce99}
.restriction-note{background:#33432d;color:#f2efdf;border-left:3px solid #e2bb53}
.promise-grid article{background:#174230;border-color:#486449}
.review-invite{border-top-color:#486449}
.how,.coverage-aside{background:#174230;border:1px solid #526c47;box-shadow:0 12px 35px #001b1622}
.faq{background:#123b2c;border-color:#526c47;box-shadow:0 12px 40px #001b1633}
.faq details,.county-grid details{border-bottom-color:#486449}
.faq summary::marker,.county-grid summary::marker{color:#ffe044}
.about-section{background:#173f30;border-color:#526c47}
footer{color:#f2efdf;background:#06291f;border-top-color:#ac9954}
.contact-card>a:not(.button),.faq-help a,.item-cta a,.review-invite a:not(.button){color:#ffe044}
.benefits,.mobile-quote{color:#04392b}
.leaflet-popup-content,.leaflet-control-attribution{color:#04392b}
.page-guide{text-align:center}
.page-guide>div{justify-content:center;align-items:center}
@media(max-width:750px){body{background-attachment:scroll}.page-guide{background:#143e2e}}
