/* Atlasant Energy — sections added to the ChatGPT visual system (same tokens, type and rhythm). */
html:not([data-ready]) body{opacity:0;animation:ep-show 0s linear 1.2s forwards}
@keyframes ep-show{to{opacity:1}}
[hidden]{display:none!important}

/* shared headings for light sections */
.ep-h2{margin:0;font-size:clamp(3rem,5.2vw,6rem);line-height:1.08;letter-spacing:-.065em;font-weight:700;color:#0b2545}
.ep-h2 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.06em;color:#1a75c0}
.ep-light{padding:clamp(88px,10vw,150px) 0;background:#fff;color:#0b2545}
.ep-ice{padding:clamp(88px,10vw,150px) 0;background:#f2f6fa;color:#0b2545}
.ep-light .energy-promise-heading>p,.ep-ice .energy-promise-heading>p{max-width:340px;margin:0 0 8px;color:#526b83;font-size:15px;line-height:1.8}

/* segmented control */
.ep-seg{display:inline-flex;border:1px solid #c9dbeb;background:#fff;margin:0 0 26px}
.ep-seg button{font:700 13px Montserrat,Arial,sans-serif;letter-spacing:.02em;color:#35587a;background:transparent;border:0;padding:14px 22px;cursor:pointer;transition:background .2s,color .2s}
.ep-seg button[aria-selected="true"]{background:#0a3d91;color:#fff}
.ep-seg button:focus-visible{outline:2px solid #2b9bef;outline-offset:2px}

/* moments */
.ep-moments article{min-height:330px}
.ep-ok{margin-top:auto;padding-top:18px;display:inline-flex;align-items:center;gap:8px;color:#0f8a78;font-size:11px;font-weight:700;letter-spacing:.14em}
.ep-ok::before{content:"";width:7px;height:7px;border-radius:50%;background:#1fc7ae}

/* simulation */
.ep-sim .scene{position:relative;overflow:hidden;border:1px solid #ffffff33;background:#0A1530}
.scene svg{display:block;width:100%;height:auto}
.scene .sky2,.scene .stars,.scene .alert{opacity:0;transition:opacity 1.1s ease}
.scene.falla .sky2,.scene.falla .stars,.scene.falla .alert{opacity:1}
.scene .nwin{fill:#F6C969;transition:fill .8s ease .3s}
.scene.falla .nwin{fill:#18233F}
.scene .glow{transition:opacity .8s ease .15s}
.scene.falla .glow{opacity:0}
.scene .lamp{fill:#FFE3A3;transition:fill .8s ease .15s}
.scene.falla .lamp{fill:#2A3656}
.scene .house-glow{opacity:.35;transition:opacity 1.2s ease}
.scene.falla .house-glow{opacity:1}
.scene .flow{stroke:#1fc7ae;stroke-width:3;stroke-dasharray:6 8;fill:none;opacity:.25;transition:opacity .6s}
.scene.falla .flow{opacity:1;animation:ep-dash 1s linear infinite}
.scene .bled{fill:#2A3656;transition:fill .6s}
.scene.falla .bled{fill:#1fc7ae}
@keyframes ep-dash{to{stroke-dashoffset:-28}}
@keyframes ep-spin{to{transform:rotate(360deg)}}
@keyframes ep-wave{0%,100%{opacity:.25}50%{opacity:1}}
.fan{transform-box:view-box;transform-origin:398px 290px;animation:ep-spin .9s linear infinite}
.wifi path{animation:ep-wave 1.6s ease-in-out infinite}
.wifi path:nth-child(2){animation-delay:.2s}.wifi path:nth-child(3){animation-delay:.4s}
.snow{animation:ep-wave 2.4s ease-in-out infinite}
.sbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:18px 22px;border-top:1px solid #ffffff2a;background:#ffffff08}
.switch{display:inline-flex;align-items:center;gap:14px;background:none;border:0;color:#fff;font:700 14px Montserrat,Arial,sans-serif;cursor:pointer;padding:4px}
.switch i{width:50px;height:28px;border-radius:999px;background:#26324F;position:relative;transition:background .3s;flex:none}
.switch i::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .3s}
.switch[aria-pressed="true"] i{background:#5db9f5}
.switch[aria-pressed="true"] i::after{transform:translateX(22px)}
.stat{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;font-weight:700;letter-spacing:.06em;color:#8aa8c2}
.stat span{display:inline-flex;align-items:center;gap:8px;transition:color .4s}
.stat span::before{content:"";width:8px;height:8px;border-radius:50%;background:#3A4868;transition:background .4s,box-shadow .4s}
.falla .stat span{color:#fff}
.falla .stat span::before{background:#1fc7ae;box-shadow:0 0 10px #1fc7ae}

/* need + chips */
.ep-need{padding:clamp(88px,10vw,150px) 0;background:#f6faff;color:#0b2545}
.ep-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:center}
.ep-lead{max-width:520px;margin:30px 0 0;color:#526b83;font-size:16px;line-height:1.8}
.ep-steps{list-style:none;margin:36px 0 0;padding:0;border-top:1px solid #d5e3f0}
.ep-steps li{display:grid;grid-template-columns:56px 1fr;align-items:center;min-height:76px;border-bottom:1px solid #d5e3f0;font-size:15px;font-weight:600;color:#1b3a5c}
.ep-steps b{color:#1e88e5;font-size:14px}
.ep-pick{background:#fff;border:1px solid #d5e3f0;padding:clamp(26px,3.4vw,46px);box-shadow:22px 22px 0 #e1eefa}
.ep-q{color:#256ea8;font-size:11px;font-weight:700;letter-spacing:.16em}
.ep-pick h3{margin:14px 0 0;font-size:clamp(1.7rem,2.4vw,2.5rem);line-height:1.15;letter-spacing:-.05em}
.ep-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d5e3f0;border:1px solid #d5e3f0;margin:28px 0}
.ep-chips button{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 8px;border:0;background:#fff;font:700 13px Montserrat,Arial,sans-serif;color:#0b2545;cursor:pointer;transition:background .2s,color .2s}
.ep-chips button:hover{background:#e9f6ff}
.ep-chips svg{width:28px;height:28px;fill:none;stroke:#0d71bd;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ep-chips button[aria-pressed="true"]{background:#0a3d91;color:#fff}
.ep-chips button[aria-pressed="true"] svg{stroke:#9fd7ff}
.ep-row{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.ep-count{color:#577087;font-size:14px;font-weight:600}

/* savings */
.ep-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px;background:#d5e3f0;border:1px solid #d5e3f0}
.ep-box{background:#fff;padding:clamp(26px,3.4vw,46px);display:flex;flex-direction:column;align-items:flex-start}
.ep-box h3{margin:0;font-size:clamp(1.6rem,2.3vw,2.4rem);letter-spacing:-.05em;line-height:1.15}
.ep-box>p{margin:14px 0 0;color:#577087;font-size:15px;line-height:1.75}
.ep-vs{display:grid;grid-template-columns:1fr 1fr;margin-top:26px;border:1px solid #d5e3f0;width:100%}
.ep-vs>div{padding:20px}
.ep-vs>div+div{border-left:1px solid #d5e3f0}
.ep-vs b{display:block;margin-bottom:12px;color:#256ea8;font-size:11px;letter-spacing:.14em}
.ep-vs .good{background:#effaf8}
.ep-vs .good b{color:#0f8a78}
.ep-vs ul{margin:0;padding-left:18px;color:#3e5a75;font-size:14px;line-height:1.8}
.ep-note{margin-top:16px!important;font-size:13px!important;color:#6a8199!important}

/* gear */
.ep-gear article{min-height:280px}

/* country */
.ep-cgrid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:1px;background:#d5e3f0;border:1px solid #d5e3f0}
.ep-cgrid.ep-one{grid-template-columns:minmax(0,1fr)}
.ep-stack{display:grid;gap:1px;background:#d5e3f0}
.ep-cc{background:#fff;padding:clamp(24px,3vw,40px);display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.ep-cc h3{margin:0;font-size:clamp(1.5rem,2.2vw,2.3rem);letter-spacing:-.05em;line-height:1.15}
.ep-cc p{margin:0;color:#577087;font-size:15px;line-height:1.75}
.ep-pill{color:#256ea8;font-size:11px;font-weight:700;letter-spacing:.16em}
.ep-kpi{display:flex;gap:40px;flex-wrap:wrap}
.ep-kpi b{display:block;font-size:clamp(2.8rem,4vw,4rem);font-weight:700;letter-spacing:-.06em;line-height:1;color:#0a3d91}
.ep-kpi span{font-size:13px;color:#577087}
.ep-states{display:flex;flex-wrap:wrap;gap:6px}
.ep-states span{font-size:13px;font-weight:600;padding:7px 12px;border:1px solid #c9dbeb;color:#1b3a5c;background:#f6faff}
.ep-day{display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:3px;width:100%}
.ep-day i{height:24px;background:#e1ecf6}
.ep-day i.off{background:#0a3d91}
.ep-dayl{display:flex;justify-content:space-between;gap:8px;width:100%;font-size:12px;color:#6a8199}
.ep-src{font-size:12.5px!important;color:#6a8199!important;border-top:1px solid #e1ecf6;padding-top:12px;width:100%}
.ep-tips{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ep-tips li{position:relative;padding-left:22px;color:#3e5a75;font-size:15px;line-height:1.7}
.ep-tips li::before{content:"";position:absolute;left:0;top:10px;width:8px;height:8px;background:#5db9f5}

@media (max-width:1050px){.ep-chips{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:900px){.ep-split,.ep-two,.ep-cgrid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){
  .ep-moments{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;background:transparent;border:0;gap:12px;scrollbar-width:none}
  .ep-moments::-webkit-scrollbar{display:none}
  .ep-moments article{flex:0 0 82%;scroll-snap-align:start;border:1px solid #d5e3f0;min-height:290px}
  .ep-chips{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ep-vs{grid-template-columns:1fr}.ep-vs>div+div{border-left:0;border-top:1px solid #d5e3f0}
  .energy-header nav{display:none}
}
@media (prefers-reduced-motion:reduce){.fan,.wifi path,.snow,.scene.falla .flow{animation:none}}

.ep-split .ep-h2{font-size:clamp(2.6rem,4.3vw,4.9rem)}

/* country selector (v3) */
.ep-ctyrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 18px;font-size:14px;font-weight:600;color:#35587a}
.ep-ctyrow select{font:600 14px Montserrat,Arial,sans-serif;color:#0b2545;border:1px solid #c9dbeb;background:#fff;padding:10px 12px;min-height:44px}
.ep-ctyrow small{font-size:13px;color:#6a8199;font-weight:500}
.ep-cc a:not(.text-link){color:#1a75c0}
.ep-chips{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:560px){.ep-seg{display:flex;flex-wrap:wrap;max-width:100%}.ep-seg button{flex:1 1 auto;padding:12px 14px}}
