/* Lightweight motion: CSS only, finite on entry, content always visible. */
.guided-home{background:radial-gradient(ellipse at 85% 6%,#e3f1e7 0,transparent 35%),#f6faf7}
.guided-home .guide-hero{max-width:1120px;padding-top:44px;padding-bottom:38px}
.hero-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);align-items:center;gap:24px;text-align:left}
.hero-copy{position:relative;z-index:1}
.hero-copy .eyebrow{background:#fff9;border-color:#cfdfd2}
.hero-copy h1{font-size:clamp(32px,4vw,46px);line-height:1.55;margin:20px 0 15px}
.hero-copy .hero-lead{font-size:16px;line-height:1.9;color:#526b5e;margin:0}
.hero-copy .shine{color:#187c59}
.charging-scene{position:relative;min-width:0}
.charging-scene svg{display:block;width:100%;height:auto;overflow:visible}
.scene-caption{display:flex;align-items:center;justify-content:center;gap:9px;color:#38644d;font-size:12px;letter-spacing:.08em;margin:-8px 0 0}
.scene-caption:before,.scene-caption:after{content:"";width:25px;height:1px;background:#94b59c}
.entry-actions{max-width:900px;gap:18px;margin-top:28px}
.entry-card{position:relative;isolation:isolate;overflow:hidden;box-shadow:0 7px 24px #123a2e05;transition:transform .2s,box-shadow .2s,border-color .2s}
.entry-card .route-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#e7f2e8;margin-bottom:12px;color:#187c59}
.route-icon svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.entry-card.entry-contact{background:linear-gradient(125deg,#196e51,#10513d);border-color:#19694f}
.entry-contact .route-icon{background:#ffffff16;color:#d5efab}
.entry-card strong>span{display:inline-block;transition:transform .2s}
.entry-card:after{content:"";position:absolute;z-index:-1;right:-28px;bottom:-43px;width:125px;height:125px;border-radius:50%;border:1px solid #187c5910;box-shadow:0 0 0 20px #187c5904}
.entry-contact:after{border-color:#ffffff12;box-shadow:0 0 0 20px #ffffff03}
.guide-shell{border-color:#dce8de;box-shadow:0 20px 55px #1a493b08}
.guide-panel:not([hidden]){animation:panel-enter .24s ease-out both}
.guide-shell progress::-webkit-progress-value{transition:width .25s ease-out}
.place-symbol svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.choice{transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
.choice:active{transform:scale(.985)}
.choice[aria-pressed="true"]{box-shadow:0 0 0 2px #187c5910}
.primary-btn,.send-btn,.navcta{transition:background .18s,box-shadow .18s,transform .18s}
.primary-btn:active,.send-btn:active,.navcta:active{transform:translateY(1px);box-shadow:none}
.send-btn:disabled{transform:none;opacity:.75;cursor:wait}
.field input,.field select,.field textarea{transition:border-color .18s,box-shadow .18s,background .18s}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#4b9974;background:#fff;box-shadow:0 0 0 3px #187c590b}
#flow .guide-flow{gap:14px}
#flow .guide-flow>div{padding:20px 17px;background:#fff;border:1px solid #dce8de;border-radius:18px;grid-template-columns:32px 1fr;column-gap:12px;align-items:start}
#flow .guide-flow span{width:32px;height:32px;background:#e6f1d7;font-size:13px;margin-top:3px}
#flow .guide-flow small{margin-top:6px;font-size:13px}
.facility-guide-links>div{transition:transform .2s,box-shadow .2s,border-color .2s}
#partners{margin-top:36px;padding:32px;border-radius:24px;background:radial-gradient(ellipse at 100% 0,#2f6b51 0,transparent 70%),#123c30;color:#edf7ee;box-shadow:0 18px 42px #123a2e0c}
#partners h2{font-size:clamp(21px,2.5vw,26px);color:#f1f8ef}
#partners h3{color:#e5f1d4}
#partners .partner-grid p,#partners .hero-scope{color:#c8ddd1}
#partners .primary-btn{color:#173e2d;background:#dbedb9;box-shadow:none}
#partners .primary-btn:hover{background:#e7f5cd}
.guide-faq .faq-list details{border-color:#dce6dd}
.guide-faq .faq-list summary:after{transition:transform .2s}
.guide-faq .faq-list details[open]>p,.guide-faq .faq-list details[open]>ol{animation:panel-enter .2s ease-out}
.scene-car{animation:car-arrive .7s cubic-bezier(.2,.7,.2,1) both}
.scene-power{stroke-dasharray:5 13;animation:energy-flow 1.35s linear 3}
.scene-halo{transform-box:fill-box;transform-origin:center;animation:charge-halo 1.8s ease-out 2}
.scene-bars{animation:charge-light 1.2s ease-in-out 3}
.hero-copy{animation:hero-enter .55s ease-out both}
.charging-scene{animation:hero-enter .65s .08s ease-out both}
.entry-actions{animation:hero-enter .55s .12s ease-out both}
@keyframes hero-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes panel-enter{from{opacity:.55;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes car-arrive{from{opacity:.35;transform:translateX(22px)}to{opacity:1;transform:translateX(0)}}
@keyframes energy-flow{to{stroke-dashoffset:-54}}
@keyframes charge-halo{0%{opacity:0;transform:scale(.8)}30%{opacity:.35}100%{opacity:0;transform:scale(1.6)}}
@keyframes charge-light{0%,100%{opacity:.65}50%{opacity:1}}
@media(hover:hover) and (pointer:fine){
 .entry-card:hover{transform:translateY(-4px);box-shadow:0 16px 32px #123a2e12;border-color:#7ba58b}
 .entry-card:hover strong>span{transform:translateX(4px)}
 .choice:hover{transform:translateY(-1px);box-shadow:0 5px 14px #123a2e08}
 .primary-btn:hover,.send-btn:not(:disabled):hover,.navcta:hover{transform:translateY(-2px);box-shadow:0 9px 20px #123a2e19}
 .facility-guide-links>div:hover{transform:translateY(-3px);border-color:#a9c7b1;box-shadow:0 9px 20px #123a2e08}
}
@media(max-width:760px){
 .guided-home .guide-hero{padding-top:25px;padding-bottom:28px}
 .hero-intro{display:flex;flex-direction:column;gap:0;text-align:center}
 .hero-copy{width:100%}
 .hero-copy h1{font-size:30px;margin:16px 0 10px}
 .hero-copy .hero-lead{font-size:14px}
 .charging-scene{width:220px;margin:-2px auto -10px}
 .charging-scene svg{height:125px}
 .scene-caption{display:none}
 .entry-actions{margin-top:16px;gap:11px}
 .entry-card{padding:15px 17px}
 .entry-card .route-icon{position:absolute;top:17px;right:17px;width:29px;height:29px;border-radius:9px;margin:0}
 .route-icon svg{width:18px;height:18px}
 .entry-card .entry-tag{padding-right:36px;font-size:12px}
 .entry-card strong{font-size:18px;margin-top:6px}
 #flow .guide-flow{gap:10px}
 #flow .guide-flow>div{padding:17px}
 #partners{margin-left:14px;margin-right:14px;padding:24px 21px;border-radius:20px}
 #partners .partner-grid{gap:22px}
}
@media(max-width:360px){.hero-copy h1{font-size:27px}.hero-copy .eyebrow{font-size:11px}.entry-card strong{font-size:17px}}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .hero-copy,.charging-scene,.entry-actions,.scene-car,.scene-power,.scene-halo,.scene-bars,.guide-panel:not([hidden]),.guide-faq .faq-list details[open]>p,.guide-faq .faq-list details[open]>ol{animation:none!important}
 .entry-card,.entry-card strong>span,.choice,.primary-btn,.send-btn,.navcta,.field input,.field select,.field textarea,.facility-guide-links>div,.guide-faq .faq-list summary:after,.guide-shell progress::-webkit-progress-value{transition:none!important}
 .entry-card:hover,.choice:hover,.choice:active,.primary-btn:hover,.primary-btn:active,.send-btn:hover,.send-btn:active,.navcta:hover,.navcta:active,.facility-guide-links>div:hover,.entry-card:hover strong>span{transform:none!important}
 .scene-halo{opacity:0}
}

/* Purpose-based navigation and a shorter home page. */
.purpose-nav{max-width:1120px;display:flex;justify-content:flex-end;align-items:center;gap:8px 24px;padding-top:9px;padding-bottom:9px}
.purpose-nav a{min-height:40px;display:inline-flex;align-items:center;text-decoration:none;color:#416454;font-size:14px;font-weight:600;text-underline-offset:5px}
.purpose-nav a:hover{text-decoration:underline;color:#10352f}
.purpose-nav a:first-child{color:#187c59}
.guided-home .guide-hero{padding-top:22px}
#facility-guides{scroll-margin-top:92px}
.facility-guide-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.evu-tools{width:calc(100% - 56px);max-width:844px;margin:34px auto;padding:24px;background:#eef6f0}
.evu-tools h2{font-size:24px;line-height:1.55;letter-spacing:-.03em}
.evu-tools__grid{margin:18px 0 12px;gap:10px}
.evu-tools__item{padding:15px 13px;min-height:96px;justify-content:center}
.evu-tools__item strong{font-size:15px;font-weight:600}
.evu-tools__note{font-size:12px!important;line-height:1.7!important}
#ev-tools{scroll-margin-top:92px}
#partners{max-width:844px;margin:0 auto 40px;padding:26px}
#partners h2{font-size:22px}
#partners .partner-grid p{font-size:14px;line-height:1.8}
@media(max-width:760px){
 .purpose-nav{justify-content:center;gap:6px 17px;padding:7px 12px;flex-wrap:wrap}
 .purpose-nav a{font-size:12px;min-height:38px;white-space:nowrap}
 .guided-home .guide-hero{padding-top:17px}
 .facility-guide-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .facility-guide-links>div{padding:12px}
 .facility-guide-links strong{font-size:15px}
 .facility-guide-links small{font-size:12px;line-height:1.65}
 .evu-tools{width:auto;margin:28px 14px;padding:20px 16px}
 .evu-tools h2{font-size:22px}
 .evu-tools__grid{grid-template-columns:1fr;gap:8px}
 .evu-tools__item{min-height:72px;padding:12px 14px;gap:3px}
 #partners{margin:0 14px 30px;padding:23px 20px}
}
@media(max-width:340px){.purpose-nav{gap:5px 11px}.purpose-nav a{font-size:11px}.facility-guide-links{grid-template-columns:1fr}}
