/* ============================================================
   ENERSTACK - Battery Energy Storage
   能源科技风:深墨绿黑与浅灰绿交替 / 能源绿 / bento / 数据感
   ============================================================ */

:root{
    --c-ink:#0A1210;          /* 深墨绿黑 */
    --c-ink-2:#0F1A16;        /* 深段落卡片 */
    --c-ink-3:#16241E;        /* 深色描边底 */
    --c-green:#2FD575;        /* 能源绿(亮) */
    --c-green-deep:#149E52;   /* 能源绿(深,浅底上用) */
    --c-blue:#0891B2;         /* 电蓝辅助 */
    --c-paper:#FFFFFF;
    --c-wash:#F2F6F3;         /* 浅灰绿洗底 */
    --c-line:#E1E8E3;         /* 浅底分隔线 */
    --c-line-d:rgba(255,255,255,.1);
    --c-txt:#3D4A44;          /* 浅底正文 */
    --c-txt-d:rgba(233,242,236,.72); /* 深底正文 */
    --f-sans:'HarmonyOS Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    --f-mono:ui-monospace,'SF Mono','JetBrains Mono',Menlo,Consolas,monospace;
    --r-lg:2rem;
    --r-md:1.4rem;
    --shell:152rem;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{font-size:clamp(9px,0.6945vw,11px);scroll-behavior:smooth;scroll-padding-top:8.5rem;}
body{font-family:var(--f-sans);font-size:1.6rem;line-height:1.7;color:var(--c-txt);background:var(--c-paper);-webkit-font-smoothing:antialiased;}
img{display:block;max-width:100%;}
a{text-decoration:none;color:inherit;}
ul,ol{list-style:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
input,textarea{font-family:inherit;}

.index_shell{max-width:var(--shell);margin:0 auto;padding:0 4rem;}
.index_section{padding:10rem 0;}

/* ---------- 按钮:全圆角 pill ---------- */
.index_btn{display:inline-flex;align-items:center;justify-content:center;gap:.9rem;padding:1.5rem 3rem;border-radius:99rem;font-size:1.45rem;font-weight:700;letter-spacing:.02em;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease;}
.index_btn--green{background:var(--c-green);color:#052213;}
.index_btn--green:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(47,213,117,.35);}
.index_btn--solid{background:#fff;color:var(--c-ink);padding:1.1rem 2.4rem;}
.index_btn--solid:hover{background:var(--c-green);color:#052213;}
.index_btn--ghost{border:1px solid rgba(255,255,255,.28);color:#fff;background:transparent;}
.index_btn--ghost:hover{border-color:var(--c-green);color:var(--c-green);}
.index_btn--wide{width:100%;}

/* ---------- SOC 电量条 ---------- */
.index_soc{display:inline-flex;gap:.4rem;}
.index_soc i{width:1.15rem;height:1.8rem;border-radius:.35rem;background:rgba(255,255,255,.12);}
.index_soc i.on{background:var(--c-green);box-shadow:0 0 8px rgba(47,213,117,.55);}
.index_soc--lg i{width:2.6rem;height:3.4rem;border-radius:.6rem;}

/* ---------- Header ---------- */
.index_header{position:fixed;inset:0 0 auto;z-index:100;background:rgba(10,18,16,.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--c-line-d);}
.index_header-in{display:flex;align-items:center;justify-content:space-between;height:7.6rem;}
.index_brand{display:inline-flex;align-items:center;gap:1.1rem;font-size:2rem;font-weight:900;letter-spacing:.14em;color:#fff;}
.index_brand-cell{display:inline-flex;align-items:flex-end;gap:.3rem;padding:.45rem .5rem;border:1.5px solid var(--c-green);border-radius:.6rem;position:relative;}
.index_brand-cell::after{content:"";position:absolute;right:-.45rem;top:50%;transform:translateY(-50%);width:.3rem;height:.8rem;background:var(--c-green);border-radius:0 .2rem .2rem 0;}
.index_brand-cell i{width:.42rem;background:var(--c-green);border-radius:.12rem;}
.index_brand-cell i:nth-child(1){height:.55rem;}
.index_brand-cell i:nth-child(2){height:.9rem;}
.index_brand-cell i:nth-child(3){height:1.25rem;}
.index_nav{display:flex;gap:3.4rem;}
.index_nav a{font-size:1.4rem;font-weight:500;color:var(--c-txt-d);transition:color .2s;}
.index_nav a:hover{color:var(--c-green);}
.index_header-cta{display:flex;align-items:center;gap:1.6rem;}
.index_burger{display:none;flex-direction:column;gap:.7rem;padding:.8rem;}
.index_burger span{width:2.6rem;height:2px;background:#fff;border-radius:2px;transition:transform .3s,opacity .3s;}
.index_burger[aria-expanded="true"] span:nth-child(1){transform:translateY(.45rem) rotate(45deg);}
.index_burger[aria-expanded="true"] span:nth-child(2){transform:translateY(-.45rem) rotate(-45deg);}

.index_drawer{position:fixed;inset:7.6rem 0 auto;z-index:99;background:var(--c-ink);border-bottom:1px solid var(--c-line-d);}
.index_drawer nav{display:flex;flex-direction:column;padding:2rem 4rem 3rem;gap:.4rem;}
.index_drawer a{padding:1.3rem 0;color:#fff;font-size:1.7rem;font-weight:500;border-bottom:1px solid var(--c-line-d);}
.index_drawer .index_btn{margin-top:2rem;border-bottom:none;justify-content:center;}

/* ---------- Hero ---------- */
.index_hero{background:radial-gradient(120rem 80rem at 85% -20%,#12241B 0%,var(--c-ink) 55%);color:#fff;padding:15.6rem 0 7rem;}
.index_hero-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:6rem;align-items:center;}
.index_hero h1{font-size:5.4rem;line-height:1.12;font-weight:900;letter-spacing:-.015em;}
.index_hero-sub{margin-top:2.6rem;font-size:1.7rem;color:var(--c-txt-d);max-width:54rem;}
.index_hero-actions{display:flex;gap:1.8rem;margin-top:3.6rem;flex-wrap:wrap;}
.index_hero-facts{display:flex;gap:4.6rem;margin-top:5rem;padding-top:3rem;border-top:1px solid var(--c-line-d);}
.index_hero-facts dt{font-family:var(--f-mono);font-size:2.6rem;font-weight:700;color:#fff;}
.index_hero-facts dd{font-size:1.3rem;color:var(--c-txt-d);margin-top:.4rem;}
.index_hero-visual{position:relative;}
.index_hero-visual img{border-radius:var(--r-lg);aspect-ratio:4/3;object-fit:cover;width:100%;}
.index_hero-chip{position:absolute;left:2.4rem;bottom:2.4rem;display:flex;align-items:center;gap:1.4rem;padding:1.2rem 1.8rem;background:rgba(10,18,16,.78);backdrop-filter:blur(10px);border:1px solid rgba(47,213,117,.35);border-radius:var(--r-md);}
.index_chip-label{font-size:1.2rem;color:var(--c-txt-d);}
.index_chip-num{font-family:var(--f-mono);font-size:1.25rem;color:var(--c-green);}

/* ---------- Metrics ---------- */
.index_metrics{background:var(--c-ink);color:#fff;padding:0 0 8.5rem;}
.index_metrics-row{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--c-line-d);border-radius:var(--r-lg);overflow:hidden;}
.index_metrics-row li{padding:3.2rem 3rem;border-right:1px solid var(--c-line-d);background:linear-gradient(180deg,rgba(47,213,117,.05),transparent 60%);}
.index_metrics-row li:last-child{border-right:none;}
.index_metrics-row strong{display:block;font-family:var(--f-mono);font-size:3.4rem;font-weight:700;color:var(--c-green);letter-spacing:-.02em;}
.index_metrics-row span{display:block;margin-top:.8rem;font-size:1.35rem;color:var(--c-txt-d);}

/* ---------- 章节头 ---------- */
.index_head{max-width:72rem;margin-bottom:5.6rem;}
.index_head h2{font-size:4rem;line-height:1.15;font-weight:900;color:var(--c-ink);letter-spacing:-.01em;}
.index_head p{margin-top:1.8rem;font-size:1.6rem;}
.index_head--dark h2{color:#fff;}
.index_head--dark p{color:var(--c-txt-d);}

/* ---------- Systems bento ---------- */
.index_systems{background:var(--c-wash);}
.index_bento{display:grid;grid-template-columns:repeat(3,1fr);gap:2.4rem;}
.index_card{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;}
.index_card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(10,18,16,.1);border-color:var(--c-green);}
.index_card--l{grid-column:span 2;grid-row:span 1;}
.index_card img{aspect-ratio:3/2;object-fit:cover;width:100%;}
.index_card--l img{aspect-ratio:auto;height:32rem;}
.index_card-body{padding:2.4rem 2.6rem 2.8rem;display:flex;flex-direction:column;gap:.9rem;flex:1;}
.index_card-body h3{font-size:2rem;font-weight:700;color:var(--c-ink);}
.index_card-body p{font-size:1.42rem;flex:1;}
.index_card-spec{font-family:var(--f-mono);font-size:1.2rem;color:var(--c-green-deep);letter-spacing:.06em;padding-top:1.2rem;border-top:1px dashed var(--c-line);}

/* ---------- Solutions ---------- */
.index_scale{display:grid;grid-template-columns:repeat(2,1fr);gap:2.4rem;}
.index_scale-item{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);overflow:hidden;transition:border-color .3s,box-shadow .3s;}
.index_scale-item:hover{border-color:var(--c-green);box-shadow:0 14px 34px rgba(10,18,16,.08);}
.index_scale-item figure{height:100%;}
.index_scale-item img{width:100%;height:100%;object-fit:cover;min-height:24rem;}
.index_scale-body{padding:2.8rem 2.6rem;display:flex;flex-direction:column;}
.index_scale-body h3{font-size:1.9rem;font-weight:700;color:var(--c-ink);}
.index_scale-body p{margin-top:1rem;font-size:1.4rem;flex:1;}
.index_scale-range{display:inline-flex;align-items:center;gap:1rem;margin-top:1.8rem;font-family:var(--f-mono);font-size:1.25rem;color:var(--c-green-deep);}
.index_scale-range i{width:3.4rem;height:.5rem;border-radius:.3rem;background:linear-gradient(90deg,var(--c-green),var(--c-blue));}

/* ---------- Why (深色) ---------- */
.index_why{background:var(--c-ink);}
.index_why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.4rem;}
.index_why-card{background:var(--c-ink-2);border:1px solid var(--c-line-d);border-radius:var(--r-lg);padding:3rem 2.8rem;transition:border-color .3s,transform .3s;}
.index_why-card:hover{border-color:rgba(47,213,117,.5);transform:translateY(-3px);}
.index_why-card h3{font-size:1.9rem;font-weight:700;color:#fff;}
.index_why-card p{margin-top:1.1rem;font-size:1.42rem;color:var(--c-txt-d);}
.index_why-soc{display:flex;align-items:center;gap:2.4rem;margin-top:4.6rem;padding:2.4rem 3rem;border:1px solid var(--c-line-d);border-radius:var(--r-lg);background:linear-gradient(90deg,rgba(47,213,117,.07),transparent 65%);}
.index_why-soc-note{font-family:var(--f-mono);font-size:1.3rem;color:var(--c-txt-d);letter-spacing:.04em;}

/* ---------- Process ---------- */
.index_process{background:var(--c-wash);}
.index_steps{display:grid;grid-template-columns:repeat(5,1fr);gap:2rem;counter-reset:step;}
.index_steps li{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);padding:2.6rem 2.2rem;position:relative;}
.index_steps-no{font-family:var(--f-mono);font-size:1.3rem;color:#fff;background:var(--c-green-deep);width:3.6rem;height:3.6rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;}
.index_steps h3{margin-top:1.8rem;font-size:1.7rem;font-weight:700;color:var(--c-ink);}
.index_steps p{margin-top:.9rem;font-size:1.34rem;}

/* ---------- CTA ---------- */
.index_cta{position:relative;background:var(--c-ink);color:#fff;overflow:hidden;}
.index_cta-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55;}
.index_cta-in{position:relative;display:flex;align-items:center;justify-content:space-between;gap:4rem;padding-top:7.5rem;padding-bottom:7.5rem;flex-wrap:wrap;}
.index_cta h2{font-size:3.2rem;font-weight:900;max-width:56rem;line-height:1.2;}
.index_cta p{margin-top:1.4rem;color:var(--c-txt-d);font-size:1.55rem;}

/* ---------- Projects ---------- */
.index_proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.4rem;}
.index_proj{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);overflow:hidden;transition:box-shadow .3s,border-color .3s;}
.index_proj:hover{border-color:var(--c-green);box-shadow:0 16px 36px rgba(10,18,16,.09);}
.index_proj img{aspect-ratio:3/2;object-fit:cover;width:100%;}
.index_proj-body{padding:2.4rem 2.6rem 3rem;}
.index_proj-meta{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:1.2rem;color:var(--c-green-deep);letter-spacing:.05em;margin-bottom:1.4rem;}
.index_proj h3{font-size:2rem;font-weight:700;color:var(--c-ink);}
.index_proj p{margin-top:1rem;font-size:1.42rem;}

/* ---------- Factory (深色) ---------- */
.index_factory{background:var(--c-ink);}
.index_factory-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center;}
.index_factory-copy .index_head{margin-bottom:3.6rem;}
.index_factory-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;}
.index_factory-facts li{padding:2rem 2.2rem;background:var(--c-ink-2);border:1px solid var(--c-line-d);border-radius:var(--r-md);}
.index_factory-facts strong{display:block;font-family:var(--f-mono);font-size:2.4rem;color:var(--c-green);}
.index_factory-facts span{font-size:1.3rem;color:var(--c-txt-d);margin-top:.4rem;display:block;}
.index_certs{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.8rem;}
.index_certs span{font-family:var(--f-mono);font-size:1.2rem;letter-spacing:.08em;color:#D7E5DC;padding:.8rem 1.5rem;border:1px solid var(--c-line-d);border-radius:99rem;}
.index_factory-media{display:grid;gap:2.4rem;}
.index_factory-media img{border-radius:var(--r-lg);width:100%;object-fit:cover;}
.index_factory-media figure:first-child img{aspect-ratio:16/10;}
.index_factory-media figure:last-child img{aspect-ratio:16/8;}

/* ---------- Notes ---------- */
.index_notes{background:var(--c-wash);}
.index_notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.4rem;}
.index_note{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-lg);overflow:hidden;padding-bottom:2.8rem;transition:border-color .3s,box-shadow .3s;}
.index_note:hover{border-color:var(--c-green);box-shadow:0 14px 32px rgba(10,18,16,.08);}
.index_note img{aspect-ratio:3/2;object-fit:cover;width:100%;}
.index_note h3{padding:2.2rem 2.6rem 0;font-size:1.8rem;font-weight:700;color:var(--c-ink);line-height:1.4;}
.index_note p{padding:1rem 2.6rem 0;font-size:1.4rem;}

/* ---------- FAQ ---------- */
.index_faq-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:6rem;align-items:start;}
.index_faq .index_head{margin-bottom:0;position:sticky;top:10rem;}
.index_faq-item{border:1px solid var(--c-line);border-radius:var(--r-md);margin-bottom:1.6rem;background:#fff;overflow:hidden;}
.index_faq-item summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2.2rem 2.6rem;font-size:1.7rem;font-weight:700;color:var(--c-ink);cursor:pointer;}
.index_faq-item summary::-webkit-details-marker{display:none;}
.index_faq-item summary::after{content:"+";font-family:var(--f-mono);font-size:2.2rem;color:var(--c-green-deep);flex-shrink:0;transition:transform .3s;}
.index_faq-item[open] summary::after{transform:rotate(45deg);}
.index_faq-item[open]{border-color:var(--c-green);}
.index_faq-item p{padding:0 2.6rem 2.4rem;font-size:1.45rem;}

/* ---------- Proposal (深色表单) ---------- */
.index_proposal{background:radial-gradient(100rem 60rem at 15% 0%,#12241B 0%,var(--c-ink) 60%);color:#fff;padding:10rem 0;}
.index_proposal-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:7rem;align-items:start;}
.index_proposal-copy h2{font-size:3.8rem;font-weight:900;line-height:1.15;}
.index_proposal-copy>p{margin-top:1.8rem;color:var(--c-txt-d);}
.index_proposal-list{margin-top:3.6rem;display:flex;flex-direction:column;gap:1.8rem;}
.index_proposal-list li{display:flex;flex-direction:column;gap:.3rem;font-size:1.55rem;color:#fff;}
.index_proposal-list span{font-family:var(--f-mono);font-size:1.15rem;letter-spacing:.18em;color:var(--c-green);text-transform:uppercase;}
.index_proposal-list a:hover{color:var(--c-green);}
.index_proposal-soc{display:flex;align-items:center;gap:1.6rem;margin-top:4rem;font-family:var(--f-mono);font-size:1.2rem;color:var(--c-txt-d);}
.index_form{background:var(--c-ink-2);border:1px solid var(--c-line-d);border-radius:var(--r-lg);padding:3.6rem;}
.index_form-row{display:grid;grid-template-columns:1fr 1fr;gap:2rem;}
.index_form label{display:flex;flex-direction:column;gap:.8rem;font-size:1.3rem;font-weight:500;color:var(--c-txt-d);margin-bottom:2rem;}
.index_form input,.index_form textarea{background:var(--c-ink);border:1px solid var(--c-line-d);border-radius:var(--r-md);padding:1.4rem 1.6rem;font-size:1.5rem;color:#fff;transition:border-color .2s;resize:vertical;}
.index_form input::placeholder,.index_form textarea::placeholder{color:rgba(233,242,236,.35);}
.index_form input:focus,.index_form textarea:focus{outline:none;border-color:var(--c-green);}
.index_form-note{margin-top:1.8rem;font-size:1.4rem;color:var(--c-green);text-align:center;}

/* ---------- Footer ---------- */
.index_footer{background:#060B09;color:var(--c-txt-d);}
.index_footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:4.5rem;padding-top:7rem;padding-bottom:5rem;}
.index_footer-brand p{margin-top:2rem;font-size:1.4rem;max-width:34rem;}
.index_footer-col{display:flex;flex-direction:column;gap:1.2rem;}
.index_footer-col h4{color:#fff;font-size:1.45rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.6rem;}
.index_footer-col a,.index_footer-col span{font-size:1.4rem;color:var(--c-txt-d);}
.index_footer-col a:hover{color:var(--c-green);}
.index_footer-base{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;padding-top:2.6rem;padding-bottom:3rem;border-top:1px solid var(--c-line-d);font-size:1.3rem;}

/* ---------- Reveal 动画 ---------- */
.index_reveal{opacity:0;transform:translateY(2.6rem);transition:opacity .7s ease,transform .7s ease;}
.index_reveal.is-visible{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){
    .index_reveal{opacity:1;transform:none;transition:none;}
    html{scroll-behavior:auto;}
}

/* ---------- 响应式 ---------- */
@media (max-width:1180px){
    .index_hero h1{font-size:4.6rem;}
    .index_bento{grid-template-columns:repeat(2,1fr);}
    .index_card--l{grid-column:span 2;}
    .index_why-grid{grid-template-columns:repeat(2,1fr);}
    .index_steps{grid-template-columns:repeat(3,1fr);}
    .index_proj-grid,.index_notes-grid{grid-template-columns:repeat(2,1fr);}
    .index_metrics-row{grid-template-columns:repeat(2,1fr);}
    .index_metrics-row li:nth-child(2){border-right:none;}
    .index_metrics-row li:nth-child(-n+2){border-bottom:1px solid var(--c-line-d);}
}
@media (max-width:960px){
    .index_nav{display:none;}
    .index_burger{display:flex;}
    .index_header-cta .index_btn{display:none;}
    .index_hero{padding-top:12rem;}
    .index_hero-grid{grid-template-columns:1fr;gap:4.5rem;}
    .index_hero-facts{gap:3rem;flex-wrap:wrap;}
    .index_scale{grid-template-columns:1fr;}
    .index_factory-grid{grid-template-columns:1fr;gap:4.5rem;}
    .index_faq-grid{grid-template-columns:1fr;gap:4rem;}
    .index_faq .index_head{position:static;}
    .index_proposal-grid{grid-template-columns:1fr;gap:5rem;}
    .index_footer-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:640px){
    .index_shell{padding:0 2.2rem;}
    .index_section{padding:7rem 0;}
    .index_hero h1{font-size:3.6rem;}
    .index_head h2{font-size:3rem;}
    .index_bento{grid-template-columns:1fr;}
    .index_card--l{grid-column:span 1;}
    .index_card--l img{height:auto;aspect-ratio:3/2;}
    .index_scale-item{grid-template-columns:1fr;}
    .index_scale-item img{min-height:0;aspect-ratio:16/9;}
    .index_why-grid{grid-template-columns:1fr;}
    .index_why-soc{flex-direction:column;align-items:flex-start;gap:1.6rem;}
    .index_steps{grid-template-columns:1fr;}
    .index_proj-grid,.index_notes-grid{grid-template-columns:1fr;}
    .index_metrics-row{grid-template-columns:1fr;}
    .index_metrics-row li{border-right:none;border-bottom:1px solid var(--c-line-d);}
    .index_metrics-row li:last-child{border-bottom:none;}
    .index_form{padding:2.6rem 2.2rem;}
    .index_form-row{grid-template-columns:1fr;gap:0;}
    .index_cta-in{flex-direction:column;align-items:flex-start;}
    .index_footer-grid{grid-template-columns:1fr;gap:3.2rem;}
    .index_hero-chip{left:1.2rem;bottom:1.2rem;padding:1rem 1.3rem;gap:1rem;}
    .index_chip-label{display:none;}
}
