/* Bright nationwide theme with six clear category colors. */
:root{--ink:#20334e;--muted:#536780;--line:#dbe6f1;--cloud:#f3f8ff;--radius:14px;--accent:#245eea;--soft:#eff5ff;--tone-ink:#1746b3;--blue-gradient:linear-gradient(115deg,#225de5,#7250d7)}
[data-tone="place"]{--accent:#245eea;--soft:#eff5ff;--tone-ink:#1746b3}
[data-tone="signal"]{--accent:#7a42da;--soft:#f5f0ff;--tone-ink:#6331b6}
[data-tone="purpose"]{--accent:#d64b27;--soft:#fff3eb;--tone-ink:#9f3318}
[data-tone="power"]{--accent:#087e75;--soft:#eafaf5;--tone-ink:#06635c}
[data-tone="mount"]{--accent:#b33685;--soft:#fff1f8;--tone-ink:#942069}
[data-tone="care"]{--accent:#076ba6;--soft:#eaf7ff;--tone-ink:#06577f}
body{background:#fff;color:var(--ink)}
a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#2862d8}
.site-header{background:#ffffffed;border-bottom-color:#dce8f5;box-shadow:0 3px 18px #3b69b008}
.desktop-nav a:hover,.service-nav a:hover{color:#245eea}
.header-phone{color:#294b7a}
.button-navy,.button-lime{background:var(--blue-gradient);color:#fff;border-color:transparent;box-shadow:0 7px 19px #315bd526}
.button-navy:hover,.button-lime:hover{background:linear-gradient(115deg,#164dc6,#6237c9);color:#fff}
.button-outline-light{border-color:#b4c9ee;background:#fff;color:#2454b6}
.button-outline-light:hover{background:#eaf2ff;border-color:#7fa5e7;color:#194ab1}
.text-link{color:#245ac4}
.section .eyebrow{color:#4567bd}
.section h2{color:#243c61}
.section h2 em{color:#4c59cb}

/* Daylight hero: light blue, mint and lavender, with readable dark headlines. */
.hero{color:#243c61;background:radial-gradient(ellipse at 8% 10%,#e6deff 0%,transparent 46%),radial-gradient(ellipse at 95% 12%,#d5f5f0 0%,transparent 45%),linear-gradient(125deg,#edf5ff,#fbfaff)}
.hero .hero-image{opacity:.32;filter:saturate(.9)}
.hero .hero-visual::after{background:linear-gradient(90deg,#eff4ff 0%,#f1f7ffe6 40%,#f9f8ffb8 100%),linear-gradient(0deg,#eef6ff,transparent 80%)}
.hero .hero-eyebrow{color:#415c80}
.hero .hero-eyebrow span{color:#4d51bb;border-left-color:#b8cae5}
.hero h1{color:#203b61}
.hero h1 em{color:#5b48cf}
.hero .hero-description{color:#466080}
.hero .hero-secondary,.hero .hero-secondary>span{color:#506783}
.hero .hero-secondary a{color:#2454b6}
.hero .hero-secondary>span{border-left-color:#b7cbe6}
.hero .hero-bottom{background:#ffffffab;border-color:#cddff3}
.hero .hero-bottom-inner>p{color:#345981}
.hero .hero-bottom ul,.hero .hero-bottom-inner>a{color:#4d6581}
.hero a:focus-visible{outline-color:#245eea}
.service-nav-wrap{background:#fff;border-bottom-color:#dfebf7}
.service-nav .icon{color:#4963ca}

.services-section{background:#fff}
.services-grid .service-card{background:linear-gradient(155deg,#fff 30%,var(--soft));border:1px solid #dce5f0;border-top:4px solid var(--accent);border-radius:15px;box-shadow:0 7px 25px #5376a809}
.services-grid .service-card:hover{border-color:var(--accent);box-shadow:0 10px 30px #5376a81a}
.services-grid .service-card .service-icon{color:var(--accent);background:#fff;width:42px;height:42px;padding:7px;border-radius:12px}
.services-grid .service-card .service-top>span{color:var(--tone-ink)}
.services-grid .service-card h3{color:#233a59}
.services-grid .service-card>p{color:#566980}
.services-grid .service-card>.text-link{color:var(--tone-ink);border-top-color:#dbe5ef}
.selection-section{background:linear-gradient(135deg,#f0f7ff,#f8f4ff 55%,#f0fcf9);border-color:#e0ebf8}
.guide-combination{background:linear-gradient(115deg,#fff,#f4f7ff);border-color:#d6e3f7;border-top-color:#7e87e9;box-shadow:0 5px 24px #6b82b409}
.guide-combination b{color:#3e5abb}
.guide-photo-grid{gap:24px}
.guide-photo-card{border-color:#dce5f0;border-top:4px solid var(--accent);border-radius:16px;box-shadow:0 9px 24px #5677a410}
.guide-photo-card:hover,.guide-photo-card.is-current{border-color:var(--accent);box-shadow:0 14px 34px #5677a428}
.guide-photo-number{background:var(--accent);color:#fff;border-color:#ffffffa3;box-shadow:0 3px 14px #24466d26}
.guide-photo-title{color:#243b5a}
.guide-photo-question{color:#415b78}
.guide-photo-types{color:#5a6f87}
.guide-photo-footer{background:var(--soft);border-top-color:#dce5ef;color:var(--tone-ink)}
.guide-photo-count{color:var(--tone-ink)}
.guide-overview-disclosure,.guide-reading-toolbar>button{border-color:#d3e2f5}
.guide-overview-disclosure>summary{color:#3657a2;background:linear-gradient(100deg,#fff,#f5f1ff)}
.guide-reading-toolbar>button{color:#3e57b2;box-shadow:0 4px 15px #4870ae09}
.guide-reading-toolbar>button:hover,.guide-reading-toolbar>button[aria-expanded="true"]{background:#eaf0ff;border-color:#a6bde9}
.overview-title{background:linear-gradient(110deg,#dff2ff,#eee7ff);color:#243f69}
.overview-title p{color:#405ea2}
.overview-category>span{background:#e8efff;color:#365bb4}
.overview-choice,.overview-choice strong{color:#315492}
.overview-choice{background:#f1f7ff}
.guide-category{border-color:#d9e5f2}
.guide-category[open]{border-color:var(--accent)}
.guide-category>summary{background:var(--soft)}
.guide-category>summary:hover{background:#f7faff}
.guide-category .guide-index,.guide-category[open] .guide-index{background:#fff;color:var(--accent);border:1px solid #dce4f1}
.guide-summary-text>strong{color:var(--tone-ink)}
.guide-summary-text>span{color:#586c84}
.guide-category-intro{color:#4b6480;border-color:#dae7f4}
.guide-tip,.guide-fit{background:#f2f7ff}
.guide-fit>span,.guide-tip>strong{color:#365694}
.guide-source-note{background:#f4f7ff;border-color:#8ea7ea;color:#435d83}
.guide-power-flow{background:#f4f8ff;border-color:#d9e5f4}
.guide-power-flow li>span{color:#425ab1}
.monthly-check{background:#eff9f6;border-color:#bcdfd4}
.monthly-check-heading p,.monthly-check-footer>span{color:#416b61}
.monthly-check-heading>span,.monthly-check-footer>button{color:#236a5b;border-color:#bfddd3}
.monthly-check-items label{border-color:#cce2db}
.monthly-check-items label.is-checked{background:#daf4eb;border-color:#6ab89f}
.monthly-check-items input{accent-color:#087e75}
.guide-phone-band{background:linear-gradient(115deg,#3469d6,#7460cc);box-shadow:0 12px 35px #4657b326}
.guide-phone-band>div:first-child>p{color:#e3faff}
.guide-phone-band h3,.guide-phone-actions>a>strong{color:#fff}
.guide-phone-actions>a>span{color:#eef1ff}
.guide-phone-actions>a+a{border-color:#ffffff59}
.guide-phone-actions>a:hover>strong{color:#d9fff3}

/* Every original explanation keeps its text and gains a relevant image. */
.guide-item,.guide-image-dialog .guide-item{padding:0;overflow:hidden;border:1px solid #d8e4f0;background:#fff;border-radius:13px;box-shadow:0 5px 16px #3964a108}
.guide-item-media{width:100%;aspect-ratio:4/3;overflow:hidden;background:#edf4fa}
.guide-item-media img{display:block;width:100%;height:100%;object-fit:cover}
.guide-item-copy{display:flex;flex-direction:column;flex:1;min-width:0;padding:24px}
.guide-item-copy h4{color:#294869;font-size:1.5rem;line-height:1.5;margin:0 0 12px}
.guide-item-copy>p{font-size:1.25rem;line-height:1.8;color:#51677f;margin:0 0 18px}
.guide-item-copy .guide-bullets{color:#4e6680;line-height:1.8}
.guide-item-copy .guide-bullets>li::before{background:var(--accent)}
.guide-choice,.guide-item-callout .guide-choice{background:var(--soft)}
.guide-choice>span,.guide-choice>p{color:var(--tone-ink)}
.guide-item-enquire{margin-top:18px;padding:12px 14px;min-height:54px;border:1px solid var(--accent);border-radius:7px;background:#fff;color:var(--tone-ink);font-size:1.25rem;font-weight:750;line-height:1.5}
.guide-item-enquire:hover{background:var(--soft)}
.guide-category-footer .text-link{color:var(--tone-ink)}

.beginner-section{background:linear-gradient(180deg,#fff,#f8fcff)}
.beginner-number{background:#e6efff;color:#3760b8}
.beginner-example{color:#3d68a3}
.beginner-finish{background:linear-gradient(110deg,#e7f6ff,#f0eaff);border:1px solid #d6e3f6}
.beginner-finish p{color:#546c86}
.pricing-section{background:linear-gradient(120deg,#f2f7ff,#fff8f0)}
.price-card,.price-card-featured{background:#fff;color:#233b5a;border-color:#d6e4f2;box-shadow:0 8px 30px #657faf10;border-top:4px solid #71a5ed}
.price-card-featured{border-top-color:#9870dc;background:linear-gradient(155deg,#fff,#f7f2ff)}
.price-card h3 strong{color:#3465c3}
.price-card-featured h3 strong{color:#7750ba}
.price-card .price-purpose,.price-card-featured .price-purpose{color:#47678f}
.price-card .price-description,.price-card-featured .price-description{color:#556c86}
.price-card .check-list,.price-card-featured .check-list{color:#425a76}
.price-card .check-list .icon,.price-card-featured .check-list .icon{color:#396bc2}
.price-card .price-footer,.price-card-featured .price-footer{border-color:#d9e3ef;color:#3e5678}
.price-card .price-footer>a{background:#e9f1ff;color:#3261b0}
.price-card-featured .price-footer>a{background:#7853bd;color:#fff}
.price-card-featured .price-footer>a:hover{background:#6540a9}
.cost-factors{border-color:#d5e3f0}
.diagnosis-section{background:linear-gradient(120deg,#eaf5ff,#f2edff);color:#243c61}
.diagnosis-copy .eyebrow{color:#4b66b5}
.diagnosis-copy h2 em{color:#5b50be}
#diagnosis .diagnosis-copy>p:not(.eyebrow){color:#4c6380}
.diagnosis-list{border-top-color:#bfcee6}
.diagnosis-list details{border-bottom-color:#c9d8ed}
.diagnosis-list summary{color:#2e4b74}
.diagnosis-list summary b{color:#5f75a1}
.diagnosis-list summary>.icon,.diagnosis-list details[open] summary>.icon{color:#536ec2}
.diagnosis-list details[open] summary{color:#3058b2}
.diagnosis-answer p{color:#4e6480}
.diagnosis-answer .text-link{color:#305db8}
#diagnosis .diagnosis-contact{background:#ffffffd9;border-color:#cbdcf2;box-shadow:0 7px 25px #4b70ae0d}
#diagnosis .diagnosis-phone>span{color:#4d6485}
#diagnosis .diagnosis-phone>strong{color:#254d96}
#diagnosis .diagnosis-phone>.icon{color:#536cc7}
#diagnosis .diagnosis-contact .diagnosis-note{color:#5d7089}
.diagnosis-section a:focus-visible,.diagnosis-section summary:focus-visible{outline-color:#4269c3}
.areas-section{background:linear-gradient(180deg,#fff,#f8fcff)}
#areas .area-panel{background:#fff;border-color:#d4e3f4;box-shadow:0 10px 38px #4874b40f}
.area-options button{border-color:#cdddf1;color:#3a5b8b}
.area-options button:hover{border-color:#688de0}
.area-options button[aria-pressed="true"]{background:var(--blue-gradient);border-color:#4166ca;color:#fff}
.area-detail{background:linear-gradient(110deg,#eff7ff,#f6f0ff)}
.area-kicker{color:#5167ac}
.area-seal>.icon{color:#586fc8;background:#edf0ff}
.quote-section{background:radial-gradient(ellipse at 10% 20%,#e7e0ff,transparent 55%),linear-gradient(115deg,#e9f7ff,#f3f0ff);border-color:#d3e2f5}
.quote-copy .eyebrow{color:#5868b2}
.quote-copy h2 em{color:#6a50bc}
#quote .quote-copy>p:not(.eyebrow){color:#526784}
#quote .quote-form-wrap{border:1px solid #d3e2f7;box-shadow:0 15px 48px #5474b115;background:#fff}
.form-number,.field label>span{color:#536bc1}
.field select,.field textarea{border-color:#c9d9f0;background:#fff;color:#263e60}
.field select:focus,.field textarea:focus{border-color:#7396df}
.selected-guide{background:#f1edff;border-color:#d9ccf2;color:#684799}
.selected-symptom{background:#e8f7f1;border-color:#bbded2;color:#256752}
.quote-status{color:#245da1}
#quote .contact-block{background:#ffffffc9;border-color:#ccdff3}
#quote .contact-block>a+a{border-color:#cfddf1}
#quote .contact-block>a>span{color:#5c7091}
#quote .contact-block>a>strong{color:#315797}
#quote .quote-contact>.quote-note{color:#596e8c}
.site-footer{background:linear-gradient(110deg,#edf6ff,#f4efff);border-top:1px solid #d3e2f4;color:#29405f}
.brand-footer .brand-word>span{color:#4f741a}
.brand-footer .brand-word small{color:#4a607e}
.footer-main>p,.footer-scope-note,.footer-bottom p{color:#526b88}
.footer-contacts a{color:#34568c}
.footer-bottom{border-color:#cbddef}
.mobile-contact-bar{background:#ffffffed;border-color:#d2e1f2;box-shadow:0 -5px 22px #40659c15}
.mobile-contact-bar a:first-child{background:var(--blue-gradient);color:#fff}
.mobile-contact-bar a:last-child{background:linear-gradient(110deg,#d74f32,#bd3c67);color:#fff}

/* The shared form is visible immediately inside the detail dialog. */
.guide-image-dialog{width:min(1480px,calc(100% - 48px));max-height:92vh;max-height:92dvh;background:#f8fbff;border:1px solid #d7e5f7;box-shadow:0 24px 110px #3658844d}
.guide-image-dialog::backdrop{background:#1d365580;backdrop-filter:blur(3px)}
.guide-dialog-top{background:#fff;border-bottom-color:#dae6f5;padding:12px 26px}
.guide-dialog-top>span{color:var(--tone-ink)}
.guide-dialog-top>button{background:var(--accent);color:#fff}
.guide-dialog-heading{padding:22px 28px 20px;background:linear-gradient(110deg,#fff,var(--soft));border-bottom:1px solid #e1eaf5}
.guide-dialog-heading h2{color:var(--tone-ink)}
.guide-dialog-heading>p{color:#56708b}
.guide-dialog-layout{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:24px;align-items:start;padding:26px}
.guide-dialog-reading{min-width:0}
.guide-image-dialog .guide-category-body{padding:0}
.guide-image-dialog .guide-category-intro{max-width:none;text-align:center;padding:0 8px;margin:0 auto 22px;line-height:1.8}
.guide-image-dialog .guide-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.guide-image-dialog .guide-item{padding:0}
.guide-image-dialog .guide-item-copy{padding:22px}
.guide-image-dialog .guide-item h4{font-size:1.375rem;line-height:1.5}
.guide-image-dialog .guide-category-footer .text-link{background:var(--accent);color:#fff}
.guide-dialog-form{position:sticky;top:90px;min-width:0;max-height:calc(92vh - 112px);max-height:calc(92dvh - 112px);overflow:auto;overscroll-behavior:contain;border:1px solid #ccdcf3;border-top:4px solid var(--accent);border-radius:12px;background:#fff;box-shadow:0 8px 30px #456bb616;scrollbar-gutter:stable}
.guide-dialog-form .quote-form-wrap{padding:22px 20px;box-shadow:none;border-radius:0;background:#fff}
.guide-dialog-form .quote-form-heading{margin-bottom:18px;text-align:center}
.guide-dialog-form .form-number{display:none}
.guide-dialog-form .quote-form-heading h3{font-size:1.5rem;line-height:1.5;color:#34568e}
.guide-dialog-form .quote-form-heading p{font-size:1.25rem;line-height:1.7;margin-top:7px}
.guide-dialog-form .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.guide-dialog-form .field{margin-bottom:14px}
.guide-dialog-form .field label{gap:5px;margin-bottom:6px;font-size:1.25rem;line-height:1.5}
.guide-dialog-form .field select{min-height:54px;padding:11px 26px 11px 10px;font-size:1.25rem}
.guide-dialog-form .field textarea{min-height:104px;line-height:1.6;padding:12px;font-size:1.25rem}
.guide-dialog-form .field-hint{display:none}
.guide-dialog-form .selected-guide,.guide-dialog-form .selected-symptom{padding:8px 10px;gap:8px;align-items:center;flex-wrap:nowrap;line-height:1.6}
.guide-dialog-form .selected-guide>span,.guide-dialog-form .selected-symptom>span{min-width:0}
.guide-dialog-form .selected-guide button,.guide-dialog-form .selected-symptom button{padding:6px 9px}
.guide-dialog-form .button-full{min-height:58px;padding:13px 10px;font-size:1.25rem}
.guide-dialog-form .copy-button{min-height:50px;margin-top:3px;padding:9px 0;font-size:1.25rem}
.guide-dialog-form .form-help{font-size:1.25rem;line-height:1.6;margin-top:6px;color:#60738b;text-align:left}
.guide-dialog-actions{padding:0 26px 28px;max-width:780px;margin:auto}
.guide-dialog-back{background:#fff;border-color:#c6d8f1;color:#4566a1}
.guide-dialog-nav{display:none}
#guide-dialog-form,#guide-dialog-content{scroll-margin-top:90px}
@media(min-width:1600px){
 .guide-dialog-layout{grid-template-columns:minmax(0,1fr) 460px;gap:28px}
 .guide-dialog-form .quote-form-wrap{padding:24px}
}
@media(max-width:1179px){
 .guide-image-dialog{width:calc(100% - 32px)}
 .guide-dialog-layout{display:flex;flex-direction:column;gap:26px;padding:24px}
 .guide-dialog-reading,.guide-dialog-form{width:100%}
 .guide-dialog-form{order:-1;position:static;max-height:none;overflow:visible;scrollbar-gutter:auto}
 .guide-dialog-form .quote-form-wrap{max-width:880px;margin:auto;padding:26px}
 .guide-dialog-form .form-row{gap:18px}
 .guide-dialog-form .field{margin-bottom:20px}
 .guide-dialog-form .field textarea{min-height:116px}
 .guide-dialog-nav{display:flex;justify-content:center;gap:12px;padding:16px 24px;background:#fff;border-bottom:1px solid #dce8f5}
 .guide-dialog-nav>button{min-height:52px;padding:11px 20px;border:1px solid #c7d9f2;border-radius:7px;background:#f3f7ff;color:#345eac;font-size:1.25rem;font-weight:750;line-height:1.5}
 .guide-dialog-actions{width:100%;max-width:880px}
}
@media(max-width:760px){
 .guide-image-dialog{width:calc(100% - 20px);max-height:94vh;max-height:94dvh}
 .guide-dialog-top{padding:12px 16px}
 .guide-dialog-heading{padding:20px 18px}
 .guide-dialog-layout{padding:18px;gap:24px}
 .guide-image-dialog .guide-items{grid-template-columns:1fr;gap:20px}
 .guide-dialog-form .quote-form-wrap{padding:24px 20px}
 .guide-image-dialog .guide-item-copy{padding:24px}
 .guide-dialog-actions{padding:0 18px 24px}
 .guide-phone-actions>a+a{border-left-color:#ffffff59}
}
@media(max-width:640px){
 .hero .hero-visual::after{background:linear-gradient(180deg,#eef5ffe0,#f6f2fff5 85%)}
 .guide-photo-grid{gap:20px}
 .guide-phone-actions>a{border-top-color:#ffffff59}
 #quote .contact-block>a+a{border-top-color:#cfddf1}
 .guide-dialog-form .form-row{grid-template-columns:1fr;gap:0}
 .guide-dialog-form .quote-form-wrap{padding:22px 18px}
 .guide-dialog-form .quote-form-heading h3{font-size:1.375rem}
 .guide-dialog-form .field select{min-height:58px;padding:12px 30px 12px 12px}
 .guide-dialog-form .selected-guide,.guide-dialog-form .selected-symptom{flex-wrap:wrap}
 .guide-dialog-form .field textarea{min-height:130px}
 .guide-dialog-nav{padding:14px;gap:10px}
 .guide-dialog-nav>button{padding:11px 14px;flex:1}
 .guide-item-copy{padding:22px}
 .guide-dialog-top>span{font-size:1.25rem}
 .guide-dialog-form .button-full{min-height:60px}
}
@media(max-width:360px){
 .guide-dialog-layout{padding:12px}
 .guide-dialog-form .quote-form-wrap{padding:20px 14px}
 .guide-image-dialog .guide-item-copy{padding:20px 18px}
 .guide-dialog-nav>button{padding-inline:8px}
}
@media(prefers-reduced-motion:reduce){
 .guide-image-dialog::backdrop{backdrop-filter:none}
}
@media print{
 .hero,.diagnosis-section,.quote-section,.site-footer{background:#fff;color:#111}
 .guide-item{box-shadow:none}
 .guide-item-enquire{display:none}
}
