.shop-main{max-width:1180px;margin:auto;padding:35px 5% 70px}.shop-main h1{font-size:clamp(38px,4.5vw,60px)}.shop-intro{max-width:650px}.address-panel{background:#edf2f7;border:1px solid #d9e3ec;border-radius:8px;padding:28px;margin:30px 0 45px}.address-panel h2{font-size:25px;letter-spacing:-.6px}.address-fields{display:grid;grid-template-columns:1fr 160px auto;gap:16px;align-items:center}.address-fields input{margin-bottom:0}.address-fields button{margin-top:21px}.address-choice{display:block;width:100%;text-align:left;background:white;border:1px solid #cbd9e5;border-radius:5px;padding:16px;margin:10px 0;color:var(--ink)}.address-choice:hover{border-color:var(--green);background:#f5f9fd}.address-choice small{display:block;color:var(--muted);margin-top:5px}.shop-grid{display:grid;grid-template-columns:230px 1fr;gap:28px}.filters{padding:20px;background:#edf2f7;border-radius:5px;align-self:start;position:sticky;top:20px}.filters h3{margin-top:0}.filters label{margin-bottom:20px}select{width:100%;font:inherit;font-size:13px;color:var(--ink);padding:12px;margin-top:7px;border:1px solid #cad5df;border-radius:3px;background:white}.results-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.results-heading h2{font-size:28px;margin:0}.results-heading .eyebrow{margin-bottom:12px}.plan-card{border:1px solid #d5dfe7;border-radius:7px;background:white;padding:24px;margin-bottom:18px}.plan-top{display:flex;justify-content:space-between;gap:20px}.provider-name{font-weight:bold;font-size:13px;color:var(--green)}.plan-card h3{margin:6px 0 12px;font-size:23px}.plan-meta{font-size:12px}.price{text-align:right;white-space:nowrap}.price strong{font-size:29px;font-weight:500}.price small{display:block;font-size:11px;color:var(--muted)}.plan-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px;border-top:1px solid #e2e8ed;padding-top:18px}.docs{display:flex;gap:14px;font-size:12px;text-decoration:underline;flex-wrap:wrap}.plan-card details{margin-top:15px;font-size:12px}.plan-card summary{cursor:pointer}.shop-disclosure{font-size:11px;border-top:1px solid #d6e0e8;margin-top:35px;padding-top:20px}.empty{padding:25px;border:1px dashed #b6c7d6;border-radius:5px}.hold{color:#8d4300}.error{color:#a12727}@media(max-width:760px){.address-fields{grid-template-columns:1fr}.address-fields button{margin-top:0}.shop-grid{grid-template-columns:1fr}.filters{position:static}.plan-top,.plan-bottom{flex-direction:column}.price{text-align:left}.results-heading{align-items:flex-start;flex-direction:column}.shop-main{padding-top:20px}.address-panel{padding:20px}}

.address-combobox{position:relative}#address-options{position:absolute;top:100%;left:0;right:0;z-index:20;max-height:320px;overflow-y:auto;background:white;border:1px solid #b7cbdc;border-radius:5px;box-shadow:0 10px 25px #07305d26;margin-top:4px}#address-options[hidden]{display:none}#address-options .address-choice{margin:0;border:0;border-bottom:1px solid #e0e8ee;border-radius:0;cursor:pointer;font-size:13px;padding:13px 15px}#address-options .address-choice[aria-selected="true"],#address-options .address-choice:hover{background:#e5f0fa}#address-options .address-choice small{font-weight:400}.address-fields{align-items:start}#search-button:disabled{opacity:.65;cursor:wait}

.pricing-structure{margin:1rem 0;padding:1rem;border-left:4px solid #d99a28;background:#f8f5ed;border-radius:6px}.pricing-structure strong{display:block}.pricing-structure p{margin:.5rem 0;line-height:1.5}

.usage-panel{margin:30px 0 45px;padding:28px;background:#edf2f7;border:1px solid #d9e3ec;border-radius:8px}.usage-panel h2{font-size:28px}.usage-panel select{max-width:500px;margin-bottom:18px}.usage-panel input{max-width:500px}.history-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0 15px}.usage-panel [hidden]{display:none}@media(max-width:700px){.history-grid{grid-template-columns:repeat(2,1fr)}.usage-panel{padding:20px}}

.usage-choices{border:0;padding:0;margin:20px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.usage-choices legend{font-size:13px;font-weight:bold;margin-bottom:12px}.usage-choice{display:flex;gap:12px;align-items:flex-start;border:1px solid #becfdd;background:white;padding:18px;border-radius:5px;cursor:pointer}.usage-choice:has(input:checked){border:2px solid #075699;background:#e6f1fc;padding:17px}.usage-choice input{width:auto;margin:3px 0;accent-color:#075699}.usage-choice small{display:block;font-weight:normal;color:#536b7d;margin-top:6px}@media(max-width:700px){.usage-choices{grid-template-columns:1fr}}

.home-size-choices{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;border:0;padding:0;margin:20px 0}.home-size-choices legend{font-size:13px;font-weight:600;margin-bottom:12px}@media(max-width:560px){.home-size-choices{grid-template-columns:1fr}}

.plan-group-heading{font-size:20px;margin:26px 0 14px;border-bottom:2px solid #bdd0df;padding-bottom:10px}.plan-group-heading:first-child{margin-top:0}

.plan-type-group{border:1px solid #c7d7e4;background:#edf2f7;border-radius:8px;padding:22px;margin:0 0 35px}.plan-type-group .plan-group-heading{margin-top:0}.plan-type-group .plan-card:last-child{margin-bottom:0}@media(max-width:700px){.plan-type-group{padding:15px}}
.address-panel,.filters{background:#edf5fc;border-color:#c4d9ec}.usage-panel{background:#eef8ef;border-color:#c2dec7}.usage-choice:has(input:checked){background:#e4f6de;border-color:#008127}.usage-choice input{accent-color:#008127}.plan-type-group{background:#eff5fc;border-color:#bbd2e7;border-top:4px solid #0879cd}.plan-group-heading{color:#075da0;border-color:#b2cfe6}.pricing-structure{background:#edf8ed;border-left:3px solid #008127}.provider-name{color:#007323}.address-choice[aria-selected="true"]{background:#e5f6e5!important}

.current-supplier-field{margin-top:20px;max-width:540px}.current-supplier-field select{margin-top:7px}.current-supplier-field .fine{margin-top:8px}

/* Compact supplier rows */
.plan-type-group{padding:16px;margin-bottom:24px}.plan-card{padding:16px;margin-bottom:10px;border-radius:6px}.plan-top{display:grid;grid-template-columns:115px minmax(130px,1fr) 145px 145px;gap:16px;align-items:center}.supplier-mark{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}.supplier-mark img{display:block;width:110px;height:48px;object-fit:contain}.supplier-mark small{font-size:10px;color:var(--muted)}.plan-description .provider-name{font-size:11px}.plan-card h3{font-size:17px;line-height:1.3;margin:4px 0 7px}.plan-meta{font-size:11px}.plan-description p{margin:6px 0 0}.price{text-align:center;white-space:normal}.price strong{font-size:29px;color:var(--ink);font-weight:700}.price p{font-size:11px;line-height:1.4;margin:7px 0 0}.plan-action .button{display:block;text-align:center;font-size:12px;padding:12px 10px;line-height:1.4}.pricing-structure{padding:8px 12px;margin:12px 0 0;font-size:11px}.pricing-structure strong{font-size:11px}.pricing-structure p{margin:4px 0;line-height:1.4}.plan-card details{margin-top:10px}.plan-card summary{color:#075da0;font-weight:600;font-size:11px}.plan-bottom{margin-top:10px;padding-top:10px}.plan-card details>p{line-height:1.5}.plan-group-heading{font-size:22px!important}
@media(max-width:1100px){.plan-top{grid-template-columns:95px minmax(100px,1fr) 115px;gap:12px}.supplier-mark img{width:90px}.plan-action{grid-column:2 / 4}.plan-action .button{width:100%;box-sizing:border-box}}
@media(max-width:600px){.plan-card{padding:12px}.plan-top{grid-template-columns:80px minmax(0,1fr);gap:12px}.supplier-mark img{width:78px;height:40px}.price{grid-column:1;text-align:left}.price strong{font-size:25px}.plan-action{grid-column:2;grid-row:2}.plan-card h3{font-size:16px}.plan-type-group{padding:10px}.plan-bottom{align-items:flex-start}.plan-meta{line-height:1.5}}

.address-panel .address-combobox,.address-panel label[for="current-supplier"]{font-size:18px;line-height:1.4;font-weight:600}.address-combobox .address-choice{font-size:14px}

.current-supplier-field{max-width:none}.supplier-label-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.supplier-label-row label{margin:0}.supplier-label-row span{font-size:13px;font-weight:400;line-height:1.4;color:var(--muted)}.current-supplier-field select{max-width:540px}

.address-typing-hint{display:block;font-size:12px;font-weight:400;line-height:1.4;color:var(--muted);margin-top:6px}.address-fields{align-items:start}.address-fields>button{margin-top:32px}@media(max-width:760px){.address-fields>button{margin-top:0}}

.address-fields{grid-template-columns:minmax(0,1fr) 160px}.supplier-select-row{display:flex;align-items:center;gap:16px;margin-top:7px}.supplier-select-row #current-supplier{margin-top:0;flex:1;min-width:0}.supplier-select-row #search-button{margin:0;white-space:nowrap;flex-shrink:0}
@media(max-width:760px){.address-fields{grid-template-columns:1fr}.supplier-select-row{flex-direction:column;align-items:stretch}.supplier-select-row #current-supplier{flex:none;max-width:none}.supplier-select-row #search-button{width:100%}}

/* Green address prompts and combined address/ZIP entry. */
.address-panel>h2,.address-panel .address-combobox,.address-panel label[for="current-supplier"],.address-panel #supplier-hint,.address-panel .address-typing-hint{color:#007e20}.address-fields{grid-template-columns:minmax(0,1fr)}.address-combobox input,.address-combobox .address-choice{color:var(--ink)}

.address-panel label[for="current-supplier"]{font-size:22px;line-height:1.35}.address-panel #supplier-hint{font-size:16px;line-height:1.4}.address-panel #current-supplier{font-size:18px;padding:12px;line-height:1.4}.supplier-select-row #search-button{font-size:18px}

.residential-shopping-steps{margin:0 0 24px;padding-left:1.5em;font-size:16px;line-height:1.65}.residential-shopping-steps li{padding-left:5px;margin:6px 0}.residential-shopping-steps li::marker{content:counter(list-item) ") ";font-weight:600;color:#007e20}.current-supplier-field .plan-document-note{margin:10px 0 0;font-size:12px;line-height:1.5}

.address-panel #address::placeholder{font-size:14px}

.usage-panel .usage-section-title,.results-heading .service-plans-title{font-size:clamp(22px,2.5vw,30px);font-weight:700;line-height:1.3;letter-spacing:.025em}.usage-choices>legend{font-size:clamp(24px,2.8vw,32px);font-weight:600;line-height:1.3;margin-bottom:16px}.plan-recommendations-heading{margin:0 0 16px}.plan-recommendations-heading h2{font-size:clamp(25px,2.8vw,34px);margin:0 0 8px;line-height:1.2}.plan-recommendations-heading p{color:#007e20;font-size:13px;letter-spacing:.12em;font-weight:700;margin:0}#plan-list .plan-group-heading{color:#007e20}

.address-panel #address::placeholder,.address-panel #current-supplier{font-family:Arial,Helvetica,sans-serif;font-size:14px;font-weight:400}

.plan-checkbox-filter{border:0;border-top:1px solid #c7d9e6;padding:18px 0 0;margin:22px 0;min-width:0}
.plan-checkbox-filter legend{font-size:16px;font-weight:700;color:#062558;padding:0 0 4px}
.filters .filter-check{display:flex;align-items:flex-start;gap:9px;margin:0 0 12px;font-size:14px;font-weight:400;line-height:1.4;cursor:pointer;overflow-wrap:anywhere}
.filters .filter-check input{display:inline-block;flex:0 0 17px;width:17px;height:17px;margin:1px 0 0;padding:0;accent-color:#007e20;cursor:pointer}
.filter-checkbox-options{max-height:340px;overflow-y:auto;scrollbar-width:thin;padding-right:5px}
.plan-checkbox-filter>.filter-check{font-weight:600}

.plan-card summary.plan-details-toggle{display:list-item;width:fit-content;max-width:100%;padding:12px 16px;background:#007e20;color:#fff;border-radius:4px;font-size:13px;font-weight:600;line-height:1.4;cursor:pointer;list-style-position:inside}
.plan-card summary.plan-details-toggle:hover{background:#006519}
.plan-card summary.plan-details-toggle:focus-visible{outline:3px solid #0879cd;outline-offset:3px}
.residential-service-question{font-size:18px;font-weight:600;line-height:1.5;color:#062558;margin:-8px 0 24px;max-width:760px}
@media(max-width:700px){.residential-service-question{font-size:16px}}
