/*
 Theme Name:   Astra Child Zura
 Theme URI:    https://example.com
 Description:  Child theme for Astra
 Author:       Your Name
 Template:     astra
 Version:      1.0.0
*/




@font-face {
  font-family: "Promethean";
  src: url('./prometheanbold.ttf') format('truetype');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@tailwind base;
@tailwind components;
@tailwind utilities;

:root {
  font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  color: #f4f7f5;
  background: #030504;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  --green: #01e763;
  --ink: #030504;
  --muted: #8c9690;
  --line: rgba(255,255,255,.11);
  --max: 1240px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); overflow-x: clip; }
body { margin: 0; min-width: 320px; max-width: 100%; overflow-x: clip; background: var(--ink); }
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
em { color: var(--green); font-style: normal; }
.energy-canvas { position: fixed; inset: 0; z-index: 0; pointer-events: none; }
main { position: relative; z-index: 1; }
.section-shell { width: min(var(--max), calc(100% - 96px)); margin-inline: auto; position: relative; }

.logo-actor {
  position: fixed; z-index: 3; left: 50%; top: 14.5vh; width: clamp(270px, 31vw, 465px); height: clamp(195px, 26vw, 370px);
  margin-left: clamp(-232px, -15.5vw, -135px); pointer-events: none; transition: opacity .12s linear; transform-origin: center;
  filter: drop-shadow(0 0 28px rgba(1,231,99,.32)) drop-shadow(0 0 80px rgba(1,231,99,.15));
}
.logo-layer { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; transition: opacity .08s linear; }
.logo-solid { padding: 8%; }
.logo-particles { transform-origin: center; }

.story-section { position: relative; }
.section-zura {
  position: absolute; z-index: 2; right: 2%; top: 8vh; width: clamp(88px, 9vw, 142px); height: auto;
  opacity: .78; transform: translate3d(0,0,0) scale(.9); filter: drop-shadow(0 0 28px rgba(1,231,99,.38));
  mix-blend-mode: screen; transition: opacity .7s ease, transform 1s cubic-bezier(.2,.8,.2,1), filter .7s ease; pointer-events: none;
}
.story-section.is-active .section-zura { opacity: .98; transform: translate3d(0,0,0) scale(1); animation: sectionLogoBreathe 3.8s ease-in-out infinite; }
.story-section:nth-of-type(even) .section-zura { right: auto; left: 2%; transform: translate3d(0,0,0) scale(.9); }
.story-section:nth-of-type(even).is-active .section-zura { transform: translate3d(0,0,0) scale(1); }
@keyframes sectionLogoBreathe { 50% { opacity: .62; filter: drop-shadow(0 0 34px rgba(1,231,99,.48)); } }

.floating-nav {
  position: fixed; z-index: 20; left: 32px; right: 32px; top: 24px; display: flex; justify-content: space-between; align-items: center;
  padding: 14px 18px; border: 1px solid rgba(255,255,255,.1); border-radius: 999px; background: rgba(3,5,4,.72);
  backdrop-filter: blur(18px); opacity: 0; transform: translateY(-14px); pointer-events: none; transition: .4s ease;
}
.floating-nav.is-visible { opacity: 1; transform: none; pointer-events: auto; }
.mini-brand { color: var(--green); font-size: 12px; font-weight: 700; letter-spacing: .22em; }
.mini-brand span { color: #fff; font-weight: 400; }
.mini-brand { display: block; width: 168px; height: 38px; background: url('./zura-official-wordmark.png') center / contain no-repeat; font-size: 0; letter-spacing: 0; }
.mini-brand span { display: none; }
.floating-nav nav { display: flex; gap: 28px; }
.floating-nav nav a { color: #aeb6b1; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; transition: color .2s; }
.floating-nav nav a:hover, .floating-nav nav a:focus-visible { color: var(--green); }

.hero { height: 165vh; }
.hero-sticky { position: sticky; top: 0; min-height: 100vh; display: grid; place-items: center; overflow: hidden; }
.hero-sticky::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 50% 33%, rgba(1,231,99,.09), transparent 39%); }
.hero-copy { position: absolute; z-index: 4; top: 48vh; width: 100%; text-align: center; }
.hero h1 { margin: 0; font-size: clamp(22px, 2.5vw, 39px); line-height: 1.45; font-weight: 400; letter-spacing: .22em; }
.hero h1 span { display: block; }
.hero h1 span::after { content: "."; color: var(--green); }
.scroll-cue { display: inline-flex; flex-direction: column; align-items: center; gap: 16px; margin-top: 66px; color: #d5dad7; font-size: 9px; text-transform: uppercase; letter-spacing: .38em; }
.scroll-line { display: block; width: 1px; height: 112px; background: linear-gradient(var(--green), transparent); position: relative; }
.scroll-line::after { content: ""; position: absolute; width: 5px; height: 5px; left: -2px; top: 0; border-radius: 50%; background: var(--green); box-shadow: 0 0 12px var(--green); animation: pulseDown 2s ease-in-out infinite; }
@keyframes pulseDown { 0%,100% { transform: translateY(0); opacity: 1; } 65% { transform: translateY(96px); opacity: .2; } }
.horizon { position: absolute; z-index: 1; bottom: -9vw; width: 115vw; height: 24vw; border-radius: 50%; border-top: 1px solid rgba(1,231,99,.6); box-shadow: 0 -10px 55px rgba(1,231,99,.12); background: radial-gradient(ellipse at 50% 0%, rgba(1,231,99,.12), transparent 60%); }

.hero-v2 { height: 225vh; cursor: none; }
.hero-spotlight-stage { isolation: isolate; background: #020403; }
.hero-spotlight-stage::before { display: none; }
.hero-terrain { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; pointer-events: none; user-select: none; }
.hero-terrain-base { filter: brightness(.72) saturate(.9); transform: scale(1.015); }
.hero-terrain-reveal {
  z-index: 1; transform: scale(1.015); filter: saturate(1.08) contrast(1.03);
  -webkit-mask-image: radial-gradient(circle 195px at var(--spot-x) var(--spot-y), #000 0%, rgba(0,0,0,.98) 42%, transparent 76%);
  mask-image: radial-gradient(circle 195px at var(--spot-x) var(--spot-y), #000 0%, rgba(0,0,0,.98) 42%, transparent 76%);
}
.hero-vignette { position: absolute; inset: 0; z-index: 2; background: radial-gradient(circle at 50% 40%, transparent 20%, rgba(1,3,2,.18) 54%, rgba(1,3,2,.82) 100%), linear-gradient(180deg, rgba(1,3,2,.2), transparent 42%, rgba(1,3,2,.72)); pointer-events: none; }
.spotlight-ring { position: absolute; z-index: 7; width: 390px; height: 390px; border-radius: 50%; transform: translate(-50%,-50%); border: 1px solid rgba(1,231,99,.16); box-shadow: inset 0 0 55px rgba(1,231,99,.04), 0 0 45px rgba(1,231,99,.08); pointer-events: none; transition: left .06s linear, top .06s linear; }
.spotlight-ring::before { content: ""; position: absolute; left: 50%; top: 50%; width: 5px; height: 5px; border-radius: 50%; background: var(--green); box-shadow: 0 0 18px var(--green); transform: translate(-50%,-50%); }
.hero-brand-stage { position: absolute; inset: 0; z-index: 4; pointer-events: none; }
.hero-icon-stack { position: absolute; left: 50%; top: 36%; width: clamp(180px, 18vw, 300px); aspect-ratio: 1.4; filter: drop-shadow(0 0 34px rgba(1,231,99,.3)) drop-shadow(0 0 100px rgba(1,231,99,.12)); transform-origin: center; }
.hero-icon-stack img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; transition: opacity .08s linear; }
.hero-wordmark { position: absolute; left: 50%; top: 36%; width: clamp(390px, 45vw, 760px); height: auto; filter: drop-shadow(0 0 25px rgba(1,231,99,.22)); transform-origin: center; transition: opacity .08s linear; }
.hero-message { position: absolute; z-index: 5; left: 50%; top: 61%; width: min(900px, calc(100% - 48px)); transform: translateX(-50%); text-align: center; }
.hero-message h1 { margin: 0; font-size: clamp(18px, 2.15vw, 34px); line-height: 1.55; font-weight: 400; letter-spacing: .25em; text-shadow: 0 2px 22px rgba(0,0,0,.75); }
.hero-message h1 span { display: block; }
.hero-message h1 span::first-letter { color: inherit; }
.hero-message h1 { font-family: "Promethean", "Bank Gothic Medium BT", sans-serif; font-size: clamp(28px, 3.7vw, 56px); font-weight: 700; letter-spacing: .07em; line-height: 1.28; }
.hero-message h1 span:first-child { color: #f4f7f5; }
.hero-message h1 span:nth-child(2) { color: var(--green); }
.hero-message h1 span::after { content: none; }
.hero-message .scroll-cue { margin-top: 48px; display: inline-flex; flex-direction: row; gap: 12px; align-items: center; color: #dce2de; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; padding: 13px 18px; background: rgba(2,5,3,.28); backdrop-filter: blur(12px); }
.spotlight-hint { position: absolute; z-index: 5; left: 28px; bottom: 24px; display: flex; align-items: center; gap: 10px; color: rgba(232,239,235,.58); font-size: 9px; letter-spacing: .22em; text-transform: uppercase; }

.intro { min-height: 85vh; margin-top: -88vh; padding: 5vh 0 18vh; }
.intro-panel { min-height: 580px; position: relative; padding: 70px 68px; border: 1px solid rgba(1,231,99,.16); border-radius: 28px; background: linear-gradient(135deg, rgba(9,19,14,.9), rgba(3,8,5,.74)); box-shadow: 0 26px 100px rgba(0,0,0,.48); backdrop-filter: blur(15px); }
.intro .section-zura { top: 38px; right: 42px; left: auto; width: clamp(82px, 8vw, 122px); }
.eyebrow { display: flex; align-items: center; gap: 18px; margin: 0 0 54px; color: var(--green); font-size: 10px; text-transform: uppercase; letter-spacing: .27em; }
.eyebrow::after { content: ""; width: 44px; height: 1px; background: rgba(1,231,99,.45); }
.eyebrow span { font-weight: 700; }
.intro-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 100px; align-items: center; }
h2 { margin: 0; font-size: clamp(50px, 7vw, 102px); line-height: .94; letter-spacing: -.055em; font-weight: 600; }
.intro h2 { font-size: clamp(54px, 6.6vw, 92px); text-transform: uppercase; letter-spacing: -.025em; }
.intro-grid > div > p { max-width: 480px; margin-top: 32px; color: #98a19c; font-size: 17px; line-height: 1.75; }
.network-orbit { min-height: 340px; display: grid; place-items: center; position: relative; border-radius: 50%; border: 1px solid rgba(1,231,99,.18); box-shadow: inset 0 0 70px rgba(1,231,99,.04); }
.network-orbit::before, .network-orbit::after { content: ""; position: absolute; inset: 12%; border: 1px dashed rgba(1,231,99,.2); border-radius: 50%; animation: spin 25s linear infinite; }
.network-orbit::after { inset: 28%; animation-direction: reverse; animation-duration: 16s; }
@keyframes spin { to { transform: rotate(360deg); } }
.orbit-core { display: grid; place-items: center; width: 66px; height: 66px; border-radius: 50%; color: #04120a; background: var(--green); font-size: 20px; box-shadow: 0 0 45px rgba(1,231,99,.48); }
.network-orbit > p { position: absolute; top: 60%; color: #abb3af; font-size: 11px; text-transform: uppercase; letter-spacing: .2em; }
.network-stat { position: absolute; right: 0; bottom: 18px; display: flex; flex-direction: column; }
.network-stat strong { color: var(--green); font-size: 55px; font-weight: 300; line-height: 1; }
.network-stat span { color: #89938d; font-size: 10px; text-transform: uppercase; letter-spacing: .2em; }

.about { padding: 20vh 0; }
.about-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 11vw; align-items: start; }
.about-grid h2 { max-width: 680px; }
.about-copy { padding-top: 8px; }
.lead { margin: 0 0 80px; color: #c5cbc7; font-size: clamp(22px, 2.2vw, 32px); line-height: 1.45; letter-spacing: -.02em; }
.principles article { padding: 25px 0; border-top: 1px solid var(--line); display: grid; grid-template-columns: 100px 1fr; gap: 20px; }
.principles article span { color: var(--green); font-size: 10px; text-transform: uppercase; letter-spacing: .2em; }
.principles article p { margin: 0; color: #8f9993; line-height: 1.65; }

.services { padding: 18vh 0; }
.section-heading { display: flex; flex-direction: column; align-items: flex-start; margin-bottom: 90px; }
.section-heading h2 { max-width: 900px; }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.service-card { position: relative; min-height: 290px; padding: 34px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(5,9,7,.5); overflow: hidden; transition: .35s ease; outline: none; }
.service-card::before { content: ""; position: absolute; inset: 0; z-index: 0; background-position: center; background-size: cover; background-repeat: no-repeat; opacity: 0; transform: scale(1.06); transition: opacity .48s ease, transform .75s cubic-bezier(.2,.8,.2,1); pointer-events: none; }
.service-card::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg,rgba(2,5,3,.18),rgba(2,5,3,.92) 86%); opacity: 0; transition: opacity .4s ease; pointer-events: none; }
.service-card:nth-child(1)::before { background-image: url('./service-ac-charging.png'); background-size: contain; background-color: #020403; }
.service-card:nth-child(2)::before { background-image: url('./service-dc-charging.png'); background-size: contain; background-color: #020403; }
.service-card:nth-child(3)::before { background-image: url('./service-public-charging.png'); }
.service-card:nth-child(4)::before { background-image: url('./service-commercial-charging.png'); }
.service-card:nth-child(5)::before { background-image: url('./service-fleet-solutions.png'); }
.service-card:nth-child(6)::before { background-image: url('./service-zero-capex.png'); }
.service-card:nth-child(7)::before { background-image: url('./service-software-platform.png'); }
.service-card:nth-child(8)::before { background-image: url('./service-smart-payment.png'); background-size: contain; background-color: #020403; }
.service-card:nth-child(9)::before { background-image: url('./service-mobile-app.png'); background-size: contain; background-color: #020403; }
.service-card > span { position: relative; z-index: 2; color: var(--green); font-size: 10px; letter-spacing: .2em; }
.service-card h3 { position: relative; z-index: 2; margin: 75px 0 15px; max-width: 240px; font-size: 23px; font-weight: 500; }
.service-card p { position: relative; z-index: 2; margin: 0; color: #818b85; font-size: 14px; line-height: 1.65; max-width: 270px; opacity: .75; transition: opacity .3s,color .3s; }
.service-card i { position: absolute; z-index: 3; width: 7px; height: 7px; right: 30px; top: 30px; border-radius: 50%; background: rgba(1,231,99,.3); transition: .35s; }
.service-card:hover, .service-card:focus, .service-card:focus-visible { background: rgba(1,231,99,.055); transform: translateY(-6px); z-index: 2; box-shadow: 0 24px 70px rgba(0,0,0,.35); }
.service-card:hover::before, .service-card:focus::before, .service-card:focus-visible::before { opacity: .6; transform: scale(1); }
.service-card:hover::after, .service-card:focus::after, .service-card:focus-visible::after { opacity: 1; }
.service-card:hover p, .service-card:focus p, .service-card:focus-visible p { color: rgba(255,255,255,.78); opacity: 1; }
.service-card:hover i, .service-card:focus i, .service-card:focus-visible i { background: var(--green); box-shadow: 0 0 20px var(--green); }

.process { padding: 20vh 0; }
.process-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; }
.process-heading p { max-width: 330px; color: #8d9791; font-size: 18px; line-height: 1.6; }
.steps { margin-top: 100px; display: grid; grid-template-columns: repeat(6, 1fr); position: relative; }
.steps::before { content: ""; position: absolute; left: 2%; right: 2%; top: 21px; height: 1px; background: linear-gradient(90deg, var(--green), rgba(1,231,99,.08)); }
.step { position: relative; padding: 0 18px; min-height: 150px; }
.step span { position: relative; z-index: 1; display: grid; place-items: center; width: 43px; height: 43px; margin-bottom: 32px; border: 1px solid rgba(1,231,99,.5); border-radius: 50%; background: #050907; color: var(--green); font-size: 10px; }
.step strong { display: block; max-width: 130px; font-size: 14px; line-height: 1.35; font-weight: 500; }

.ecosystem { padding: 20vh 0; }
.ecosystem-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 13vw; }
.ecosystem-heading { position: sticky; top: 145px; align-self: start; }
.ecosystem-heading h2 { font-size: clamp(48px, 6vw, 90px); }
.ecosystem-heading p { color: #8b958f; max-width: 420px; font-size: 17px; line-height: 1.75; }
.stakeholder-list { border-top: 1px solid var(--line); }
.stakeholder-list div { display: grid; grid-template-columns: 60px 1fr; align-items: center; min-height: 82px; border-bottom: 1px solid var(--line); transition: padding .3s, color .3s; }
.stakeholder-list div:hover { padding-left: 16px; color: var(--green); }
.stakeholder-list span { color: #5c655f; font-size: 10px; letter-spacing: .15em; }
.stakeholder-list strong { font-size: clamp(20px, 2.2vw, 31px); font-weight: 400; letter-spacing: -.02em; }

.projects { padding: 18vh 0 15vh; }
.projects-heading p { color: #89938d; font-size: 18px; }
.map-stage { position: relative; min-height: 720px; border: 1px solid rgba(1,231,99,.18); border-radius: 28px; overflow: hidden; background: #020403; }
.map-stage::before { content: ""; position: absolute; inset: 0; z-index: 1; background: url('./zura-network-texture.png') center / cover no-repeat; opacity: .075; mix-blend-mode: screen; pointer-events: none; }
.map-stage > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: center bottom; opacity: .85; filter: saturate(1.15) contrast(1.08); }
.map-stage::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(2,4,3,.96) 0%, rgba(2,4,3,.55) 42%, rgba(2,4,3,.08)); pointer-events: none; }
.map-pin-layer { position: absolute; inset: 0; z-index: 3; pointer-events: none; }
.zura-map-pin { position: absolute; width: 68px; height: 62px; padding: 0; border: 0; background: transparent; cursor: pointer; opacity: .38; transform: translate(-50%,-50%) scale(.68); filter: drop-shadow(0 0 12px rgba(1,231,99,.25)); transition: .35s ease; pointer-events: auto; }
.zura-map-pin::after { content: ""; position: absolute; left: 50%; bottom: -10px; width: 5px; height: 5px; border-radius: 50%; background: var(--green); box-shadow: 0 0 18px 5px rgba(1,231,99,.5); transform: translateX(-50%); }
.zura-map-pin img { width: 100%; height: 100%; object-fit: contain; }
.zura-map-pin:hover, .zura-map-pin:focus-visible, .zura-map-pin.is-active { opacity: 1; transform: translate(-50%,-50%) scale(1); filter: drop-shadow(0 0 25px rgba(1,231,99,.7)); }
.zura-map-pin.is-active::after { animation: pinPulse 1.8s ease-out infinite; }
.zura-map-pin:nth-child(1) { left: 62%; top: 61%; }
.zura-map-pin:nth-child(2) { left: 68%; top: 55%; }
.zura-map-pin:nth-child(3) { left: 57%; top: 43%; }
.zura-map-pin:nth-child(4) { left: 52%; top: 31%; }
.zura-map-pin:nth-child(5) { left: 73%; top: 64%; }
.zura-map-pin:nth-child(6) { left: 84%; top: 42%; }
.zura-map-pin:nth-child(7) { left: 50%; top: 25%; }
.zura-map-pin:nth-child(8) { left: 66%; top: 58%; }
.zura-map-pin:nth-child(9) { left: 55%; top: 38%; }
.zura-map-pin:nth-child(10) { left: 63%; top: 54%; }
.zura-map-pin:nth-child(11) { left: 70%; top: 60%; }
@keyframes pinPulse { 0% { box-shadow: 0 0 0 0 rgba(1,231,99,.72); } 100% { box-shadow: 0 0 0 24px rgba(1,231,99,0); } }
.project-list { position: relative; z-index: 4; width: min(440px, 44%); padding: 48px; }
.project-list button { width: 100%; display: grid; grid-template-columns: 40px 1fr; gap: 3px 16px; padding: 21px 0; border: 0; border-bottom: 1px solid rgba(255,255,255,.13); color: #fff; background: transparent; text-align: left; cursor: pointer; }
.project-list button span { grid-row: span 2; color: var(--green); font-size: 9px; letter-spacing: .15em; padding-top: 5px; }
.project-list button strong { font-size: 15px; font-weight: 500; transition: color .2s; }
.project-list button small { color: #77817b; font-size: 11px; }
.project-list button:hover strong, .project-list button:focus-visible strong { color: var(--green); }

.finale { min-height: 132vh; position: relative; display: grid; place-items: end center; padding-bottom: 8vh; overflow: hidden; }
.finale::before { content: ""; position: absolute; inset: 30% 0 0; background: radial-gradient(circle at 50% 50%, rgba(1,231,99,.13), transparent 45%); }
.final-mark { position: absolute; z-index: 3; left: 50%; top: auto; bottom: 60vh; width: min(520px, 82vw); height: 390px; transform: translateX(-50%); display: grid; place-items: center; }
.final-mark::before { content: ""; position: absolute; width: 72%; aspect-ratio: 1; border: 1px solid rgba(1,231,99,.13); border-radius: 50%; box-shadow: 0 0 100px rgba(1,231,99,.08); }
.final-dot-orbit { position: absolute; inset: 0; transition: opacity .08s linear; }
.final-dot-orbit img { position: absolute; left: 50%; top: 48%; width: 112px; height: 84px; object-fit: contain; margin: -42px 0 0 -56px; filter: drop-shadow(0 0 18px rgba(1,231,99,.45)); will-change: transform; }
.final-solid-logo { width: min(360px, 66vw); height: auto; opacity: 0; mix-blend-mode: screen; filter: drop-shadow(0 0 40px rgba(1,231,99,.58)) drop-shadow(0 0 110px rgba(1,231,99,.22)); will-change: transform,opacity; }
.finale-inner { width: min(920px, calc(100% - 48px)); position: relative; z-index: 4; text-align: center; }
.finale .eyebrow { justify-content: center; }
.finale .eyebrow::after { display: none; }
.finale h2 { font-size: clamp(44px, 7vw, 92px); letter-spacing: -.02em; }
.finale h2 { font-family: "Promethean", "Bank Gothic Medium BT", sans-serif; font-weight: 700; letter-spacing: .015em; line-height: 1.08; }
.finale h2 em { font-family: inherit; font-style: normal; }
.finale > div > p { color: #9ca59f; margin: 32px auto 0; font-size: 20px; }
.cta-row { display: flex; justify-content: center; gap: 12px; margin-top: 48px; }
.button { min-height: 52px; padding: 0 26px; border-radius: 999px; border: 1px solid rgba(255,255,255,.18); cursor: pointer; transition: .25s ease; font-size: 12px; text-transform: uppercase; letter-spacing: .12em; }
.button-primary { background: var(--green); border-color: var(--green); color: #001b0b; font-weight: 700; }
.button-secondary { background: rgba(255,255,255,.04); color: #fff; }
.button:hover { transform: translateY(-2px); box-shadow: 0 12px 35px rgba(1,231,99,.14); }
.contact-row { display: flex; justify-content: center; flex-wrap: wrap; gap: 26px; margin-top: 70px; color: #68716c; font-size: 11px; text-transform: uppercase; letter-spacing: .14em; }
.contact-row a:hover { color: var(--green); }

.modal-backdrop { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; padding: 20px; background: rgba(0,0,0,.72); backdrop-filter: blur(16px); }
.modal { width: min(620px, 100%); max-height: calc(100vh - 40px); overflow: auto; position: relative; padding: 52px; border: 1px solid rgba(1,231,99,.25); border-radius: 24px; background: #08100c; box-shadow: 0 35px 120px rgba(0,0,0,.65); }
.modal h2 { font-size: clamp(42px, 6vw, 70px); }
.modal-close { position: absolute; top: 20px; right: 20px; border: 0; background: transparent; color: #89938d; text-transform: uppercase; font-size: 10px; letter-spacing: .15em; cursor: pointer; }
.modal form { margin-top: 38px; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.modal label { display: grid; gap: 8px; color: #7f8983; font-size: 10px; text-transform: uppercase; letter-spacing: .14em; }
.modal label:last-of-type { grid-column: 1 / -1; }
.modal input, .modal textarea { width: 100%; border: 1px solid rgba(255,255,255,.12); border-radius: 10px; background: rgba(255,255,255,.035); color: #fff; padding: 14px; outline: none; resize: vertical; }
.modal input:focus, .modal textarea:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(1,231,99,.09); }
.modal form .button { justify-self: start; margin-top: 8px; }
.modal-success { min-height: 310px; display: grid; align-content: center; }
.modal-success p { color: #909a94; }
:focus-visible { outline: 2px solid var(--green); outline-offset: 4px; }

@media (max-width: 900px) {
  .section-shell { width: min(100% - 40px, 720px); }
  .floating-nav { left: 16px; right: 16px; }
  .floating-nav nav { gap: 14px; }
  .floating-nav nav a:nth-child(2), .floating-nav nav a:nth-child(3) { display: none; }
  .logo-actor { top: 19vh; width: 320px; height: 250px; margin-left: -160px; }
  .hero-copy { top: 50vh; }
  .hero h1 { font-size: 23px; }
  .intro-panel { padding: 48px 28px; }
  .intro-grid, .about-grid, .ecosystem-grid { grid-template-columns: 1fr; gap: 70px; }
  .network-orbit { width: min(100%, 380px); justify-self: center; }
  .service-grid { grid-template-columns: repeat(2, 1fr); }
  .steps { grid-template-columns: repeat(3, 1fr); row-gap: 50px; }
  .steps::before { display: none; }
  .ecosystem-heading { position: static; }
  .project-list { width: 60%; padding: 34px; }
  .section-zura { width: 92px; top: 7vh; }
}

@media (max-width: 600px) {
  .section-shell { width: calc(100% - 32px); }
  .floating-nav { top: 12px; padding: 12px 14px; }
  .floating-nav nav a:not(:last-child) { display: none; }
  .logo-actor { top: 19vh; width: 240px; height: 200px; margin-left: -120px; }
  .hero-v2 { height: 205vh; cursor: auto; }
  .hero-icon-stack { top: 34%; width: 132px; }
  .hero-wordmark { top: 34%; width: 224px; }
  .hero-message { top: 57%; width: calc(100% - 32px); }
  .hero-message h1 { font-size: clamp(18px, 5.4vw, 24px); letter-spacing: .07em; line-height: 1.45; }
  .hero-message .scroll-cue { margin-top: 34px; padding: 11px 15px; }
  .hero-terrain { object-position: 54% center; }
  .hero-terrain-reveal { -webkit-mask-image: radial-gradient(circle 130px at 50% 46%, #000 0%, rgba(0,0,0,.98) 42%, transparent 78%); mask-image: radial-gradient(circle 130px at 50% 46%, #000 0%, rgba(0,0,0,.98) 42%, transparent 78%); }
  .spotlight-ring, .spotlight-hint { display: none; }
  .hero-copy { top: 47vh; padding: 0 20px; }
  .hero h1 { font-size: 17px; letter-spacing: .17em; line-height: 1.65; }
  .scroll-cue { margin-top: 44px; }
  .intro-panel { min-height: auto; padding: 38px 22px; border-radius: 20px; }
  .intro-grid { gap: 48px; }
  .network-orbit { min-height: 280px; }
  h2 { font-size: 48px; }
  .eyebrow { margin-bottom: 35px; }
  .about, .services, .process, .ecosystem, .projects { padding: 14vh 0; }
  .lead { font-size: 21px; margin-bottom: 55px; }
  .principles article { grid-template-columns: 75px 1fr; }
  .service-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 240px; }
  .service-card h3 { margin-top: 55px; }
  .process-heading { display: block; }
  .process-heading p { margin-top: 25px; }
  .steps { grid-template-columns: repeat(2, 1fr); margin-top: 60px; }
  .project-list { width: 100%; padding: 28px 24px; }
  .map-stage { min-height: 730px; }
  .map-stage::after { background: linear-gradient(rgba(2,4,3,.9) 0%, rgba(2,4,3,.4) 62%, rgba(2,4,3,.1)); }
  .map-stage > img { object-position: 65% center; opacity: .6; }
  .zura-map-pin { width: 48px; height: 44px; }
  .zura-map-pin:nth-child(1) { left: 57%; top: 68%; }
  .zura-map-pin:nth-child(2) { left: 69%; top: 60%; }
  .zura-map-pin:nth-child(3) { left: 53%; top: 48%; }
  .zura-map-pin:nth-child(4) { left: 49%; top: 37%; }
  .zura-map-pin:nth-child(5) { left: 78%; top: 68%; }
  .zura-map-pin:nth-child(6) { left: 84%; top: 47%; }
  .zura-map-pin:nth-child(7) { left: 48%; top: 33%; }
  .zura-map-pin:nth-child(8) { left: 66%; top: 63%; }
  .zura-map-pin:nth-child(9) { left: 54%; top: 44%; }
  .zura-map-pin:nth-child(10) { left: 62%; top: 59%; }
  .zura-map-pin:nth-child(11) { left: 72%; top: 65%; }
  .section-zura { width: 72px; top: 6vh; right: 8px; }
  .story-section:nth-of-type(even) .section-zura { left: 8px; }
  .intro .section-zura { top: 28px; right: 24px; width: 68px; }
  .finale { min-height: 122vh; }
  .final-mark { top: auto; bottom: 56vh; height: 320px; }
  .final-dot-orbit img { width: 82px; height: 64px; margin: -32px 0 0 -41px; }
  .finale h2 { font-size: 42px; }
  .cta-row { flex-direction: column; }
  .modal { padding: 48px 24px 28px; }
  .modal form { grid-template-columns: 1fr; }
  .modal label:last-of-type { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .energy-canvas { display: none; }
  .hero-terrain-reveal { opacity: .28; -webkit-mask-image: none; mask-image: none; }
  .spotlight-ring { display: none; }
}

[hidden]{display:none !important}.project-list button.is-active strong{color:var(--green)}

@media(max-width:600px){.intro{margin-top:-78vh}.scroll-line{height:64px}@keyframes pulseDown{0%,100%{transform:translateY(0);opacity:1}65%{transform:translateY(52px);opacity:.2}}}

.intro-panel > .eyebrow{margin-bottom:30px}

/* Cinematic Section 01: Malaysia to Asia energy network */
.vision-intro {
  position: relative;
  min-height: 112vh;
  display: grid;
  grid-template-columns: minmax(340px, .82fr) minmax(520px, 1.18fr);
  gap: clamp(34px, 5vw, 78px);
  align-items: center;
  padding: 15vh 0 16vh;
  overflow: hidden;
}
.vision-intro::before {
  content: "";
  position: absolute;
  inset: 4vh -8vw;
  z-index: 0;
  border-radius: 46px;
  background:
    radial-gradient(circle at 74% 46%, rgba(1,231,99,.16), transparent 34%),
    radial-gradient(circle at 26% 24%, rgba(1,231,99,.08), transparent 26%),
    linear-gradient(135deg, rgba(2,12,7,.96), rgba(3,5,4,.72));
  border: 1px solid rgba(1,231,99,.12);
  box-shadow: inset 0 0 80px rgba(1,231,99,.04), 0 40px 140px rgba(0,0,0,.48);
}
.vision-intro::after {
  content: "";
  position: absolute;
  inset: 0 -5vw;
  z-index: 0;
  opacity: .34;
  background-image:
    radial-gradient(circle, rgba(1,231,99,.72) 0 1px, transparent 1.8px),
    radial-gradient(circle, rgba(255,255,255,.22) 0 .8px, transparent 1.6px);
  background-size: 78px 78px, 132px 132px;
  animation: visionDrift 22s linear infinite;
  pointer-events: none;
}
.vision-bg-logo {
  position: absolute;
  z-index: 1;
  left: -8vw;
  top: 14vh;
  width: min(520px, 52vw);
  opacity: .045;
  filter: drop-shadow(0 0 40px rgba(1,231,99,.45));
  pointer-events: none;
}
.vision-bg-logo img { width: 100%; height: auto; display: block; }
.vision-copy, .vision-map-card { position: relative; z-index: 2; }
.vision-copy .eyebrow { margin-bottom: 34px; }
.vision-copy h2 {
  max-width: 660px;
  margin: 0;
  font-size: clamp(52px, 7vw, 108px);
  line-height: .92;
  letter-spacing: -.065em;
}
.vision-copy h2 em {
  display: block;
  color: var(--green);
  font-style: normal;
  text-shadow: 0 0 28px rgba(1,231,99,.24);
}
.vision-copy > p {
  max-width: 610px;
  margin: 30px 0 0;
  color: #a9b3ad;
  font-size: clamp(17px, 1.5vw, 22px);
  line-height: 1.72;
}
.vision-proof {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 42px 0 0;
  max-width: 640px;
}
.vision-proof article {
  min-height: 112px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 20px;
  background: rgba(255,255,255,.035);
  backdrop-filter: blur(14px);
}
.vision-proof strong {
  display: block;
  color: #fff;
  font-size: clamp(24px, 3vw, 42px);
  letter-spacing: -.04em;
}
.vision-proof span {
  display: block;
  margin-top: 8px;
  color: #75807a;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .14em;
  line-height: 1.4;
}
.vision-cta-row {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 38px;
}
.vision-scroll-hint {
  margin-top: 38px;
  color: rgba(255,255,255,.5);
  font-size: 11px;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.vision-scroll-hint::before {
  content: "";
  display: inline-block;
  width: 56px;
  height: 1px;
  margin-right: 14px;
  vertical-align: middle;
  background: linear-gradient(90deg, var(--green), transparent);
  box-shadow: 0 0 14px rgba(1,231,99,.38);
}
.vision-map-card {
  min-height: clamp(580px, 62vw, 760px);
  border: 1px solid rgba(1,231,99,.2);
  border-radius: 38px;
  overflow: hidden;
  background:
    radial-gradient(circle at 54% 45%, rgba(1,231,99,.13), transparent 35%),
    linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.012)),
    #020504;
  box-shadow: 0 50px 150px rgba(0,0,0,.52), inset 0 0 80px rgba(1,231,99,.035);
  transform-style: preserve-3d;
  animation: visionFloat 7s ease-in-out infinite;
}
.vision-map-card::before {
  content: "";
  position: absolute;
  inset: -2px;
  background: linear-gradient(120deg, transparent 0 22%, rgba(1,231,99,.16) 34%, transparent 45% 100%);
  animation: scanSweep 6.5s ease-in-out infinite;
  opacity: .58;
  pointer-events: none;
}
.vision-map-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 54%, transparent 0 44%, rgba(0,0,0,.48) 79%);
  pointer-events: none;
}
.vision-orbit-rings {
  position: absolute;
  inset: 11%;
  border: 1px solid rgba(1,231,99,.13);
  border-radius: 50%;
  box-shadow: 0 0 0 72px rgba(1,231,99,.035), 0 0 0 150px rgba(1,231,99,.018);
  animation: orbitPulse 4.8s ease-in-out infinite;
}
.vision-logo-core {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(160px, 22vw);
  transform: translate(-50%,-50%);
  opacity: .16;
  filter: drop-shadow(0 0 30px rgba(1,231,99,.55));
  animation: logoBreathe 3.6s ease-in-out infinite;
}
.vision-logo-core img { width: 100%; display: block; }
.vision-map-svg {
  position: absolute;
  inset: 5% 4%;
  z-index: 1;
  width: 92%;
  height: 90%;
  overflow: visible;
}
.vision-asia-outline, .vision-malaysia-outline {
  fill: rgba(1,231,99,.025);
  stroke: rgba(1,231,99,.24);
  stroke-width: 1.4;
  stroke-dasharray: 6 9;
}
.vision-malaysia-outline {
  fill: rgba(1,231,99,.055);
  stroke: rgba(1,231,99,.52);
  stroke-width: 2;
  filter: drop-shadow(0 0 16px rgba(1,231,99,.28));
  animation: mapDraw 5s ease-in-out infinite alternate;
}
.vision-route, .vision-route-flow {
  fill: none;
  stroke-linecap: round;
}
.vision-route {
  stroke: rgba(1,231,99,.18);
  stroke-width: 1.5;
}
.vision-route-flow {
  stroke: var(--green);
  stroke-width: 2.8;
  stroke-dasharray: 42 230;
  stroke-dashoffset: 0;
  opacity: .72;
  animation: routeFlow 4.4s linear infinite;
}
.flow-2 { animation-delay: -.6s; }
.flow-3 { animation-delay: -1.2s; }
.flow-4 { animation-delay: -1.8s; }
.flow-5 { animation-delay: -2.4s; }
.flow-6 { animation-delay: -3s; }
.vision-node-layer { position: absolute; inset: 0; z-index: 3; }
.city-node {
  position: absolute;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(1,231,99,.35);
  border-radius: 50%;
  background: rgba(1,231,99,.14);
  color: #fff;
  cursor: pointer;
  transform: translate(-50%,-50%);
  box-shadow: 0 0 22px rgba(1,231,99,.28), inset 0 0 18px rgba(1,231,99,.12);
  animation: nodeLand .75s cubic-bezier(.2,.8,.2,1) both, nodePulse 2.8s ease-in-out infinite;
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
.city-node img {
  width: 27px;
  height: 25px;
  object-fit: contain;
  filter: drop-shadow(0 0 10px rgba(1,231,99,.5));
}
.city-node > span {
  position: absolute;
  left: 50%;
  top: calc(100% + 8px);
  transform: translateX(-50%);
  white-space: nowrap;
  color: rgba(255,255,255,.78);
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.city-node::before {
  content: "";
  position: absolute;
  inset: -10px;
  border: 1px solid rgba(1,231,99,.2);
  border-radius: inherit;
  animation: rippleNode 2.6s ease-out infinite;
}
.city-node:hover, .city-node:focus-visible {
  z-index: 8;
  transform: translate(-50%,-50%) scale(1.22);
  background: rgba(1,231,99,.24);
  border-color: rgba(1,231,99,.88);
}
.city-tooltip {
  position: absolute;
  left: 50%;
  bottom: calc(100% + 14px);
  width: 164px;
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid rgba(1,231,99,.24);
  border-radius: 14px;
  background: rgba(3,8,5,.9);
  box-shadow: 0 20px 50px rgba(0,0,0,.45);
  transform: translate(-50%, 8px);
  opacity: 0;
  pointer-events: none;
  transition: .25s ease;
  text-align: left;
}
.city-tooltip b { font-size: 12px; color: #fff; }
.city-tooltip em, .city-tooltip i { font-style: normal; color: #8f9993; font-size: 10px; }
.city-tooltip i { color: var(--green); text-transform: uppercase; letter-spacing: .12em; }
.city-node:hover .city-tooltip, .city-node:focus-visible .city-tooltip { opacity: 1; transform: translate(-50%, 0); }
.node-2 { animation-delay: .2s; }
.node-3 { animation-delay: .35s; }
.node-4 { animation-delay: .5s; }
.node-5 { animation-delay: .65s; }
.node-6 { animation-delay: .8s; }
.node-7 { animation-delay: .95s; }
.node-8 { animation-delay: 1.1s; }
.asia-label {
  position: absolute;
  z-index: 2;
  color: rgba(255,255,255,.42);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .18em;
}
.label-singapore { left: 55%; top: 77%; }
.label-thailand { left: 44%; top: 17%; }
.label-indonesia { left: 17%; top: 88%; }
.label-vietnam { right: 10%; top: 33%; }
.vision-transport {
  position: absolute;
  z-index: 4;
  height: 24px;
  padding: 0 10px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(1,231,99,.3);
  border-radius: 999px;
  background: rgba(1,231,99,.09);
  color: var(--green);
  font-size: 9px;
  letter-spacing: .14em;
  box-shadow: 0 0 18px rgba(1,231,99,.22);
}
.transport-car { left: 28%; top: 31%; animation: vehicleOne 8s ease-in-out infinite; }
.transport-bus { left: 55%; top: 54%; animation: vehicleTwo 9s ease-in-out infinite; }
.transport-fleet { right: 9%; top: 71%; animation: vehicleThree 10s ease-in-out infinite; }
.vision-caption {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 24px;
  z-index: 4;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  color: rgba(255,255,255,.72);
  font-size: 12px;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.vision-caption span { color: var(--green); }
@keyframes visionDrift { from { transform: translate3d(0,0,0); } to { transform: translate3d(-78px,-78px,0); } }
@keyframes visionFloat { 0%,100% { transform: translateY(0) rotateX(0) rotateY(0); } 50% { transform: translateY(-12px) rotateX(1.5deg) rotateY(-1deg); } }
@keyframes scanSweep { 0%,100% { transform: translateX(-72%); opacity: .2; } 45%,55% { opacity: .68; } 100% { transform: translateX(72%); } }
@keyframes orbitPulse { 0%,100% { opacity: .48; transform: scale(.96); } 50% { opacity: .86; transform: scale(1.04); } }
@keyframes logoBreathe { 0%,100% { transform: translate(-50%,-50%) scale(.92); opacity: .12; } 50% { transform: translate(-50%,-50%) scale(1.04); opacity: .22; } }
@keyframes mapDraw { from { stroke-dashoffset: 40; } to { stroke-dashoffset: 0; } }
@keyframes routeFlow { to { stroke-dashoffset: -272; } }
@keyframes nodeLand { from { opacity: 0; transform: translate(-50%,-90%) scale(.35); } to { opacity: 1; transform: translate(-50%,-50%) scale(1); } }
@keyframes nodePulse { 0%,100% { box-shadow: 0 0 18px rgba(1,231,99,.22), inset 0 0 18px rgba(1,231,99,.1); } 50% { box-shadow: 0 0 34px rgba(1,231,99,.46), inset 0 0 24px rgba(1,231,99,.18); } }
@keyframes rippleNode { from { transform: scale(.72); opacity: .72; } to { transform: scale(1.9); opacity: 0; } }
@keyframes vehicleOne { 0%,100% { transform: translate(0,0); } 50% { transform: translate(190px, 125px); } }
@keyframes vehicleTwo { 0%,100% { transform: translate(0,0); } 50% { transform: translate(-160px, 112px); } }
@keyframes vehicleThree { 0%,100% { transform: translate(0,0); } 50% { transform: translate(-214px, -178px); } }

/* Customer content expansion for the real Second Version */
.floating-nav nav { flex-wrap: wrap; }
.services-intro { max-width: 560px; margin: 28px 0 0; color: #8b958f; font-size: 14px; line-height: 1.7; }
.service-card { cursor: pointer; }
.service-card.is-selected { background: rgba(1,231,99,.08); border-color: rgba(1,231,99,.35); box-shadow: inset 0 0 0 1px rgba(1,231,99,.18), 0 28px 90px rgba(0,0,0,.42); transform: translateY(-6px); }
.service-card.is-selected::before { opacity: .6; transform: scale(1); }
.service-card.is-selected::after { opacity: 1; }
.service-card b { position: relative; z-index: 2; display: inline-flex; margin-top: 18px; padding: 7px 10px; border: 1px solid rgba(1,231,99,.35); border-radius: 999px; color: var(--green); font-size: 9px; letter-spacing: .16em; text-transform: uppercase; background: rgba(1,231,99,.08); }
.service-detail-panel { margin-top: 34px; display: grid; grid-template-columns: minmax(280px, .82fr) minmax(0, 1.18fr); overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 30px; background: linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.018)); box-shadow: 0 40px 120px rgba(0,0,0,.38); backdrop-filter: blur(18px); }
.service-detail-visual { position: relative; min-height: 520px; display: grid; place-items: center; overflow: hidden; background: radial-gradient(circle at 50% 35%, rgba(1,231,99,.18), transparent 36%), #030604; }
.service-detail-visual::before { content: ""; position: absolute; inset: -30%; background: conic-gradient(from 90deg, transparent, rgba(1,231,99,.22), transparent 32%); animation: slowRotate 10s linear infinite; opacity: .55; }
.service-detail-visual img { position: relative; z-index: 2; width: min(78%, 430px); max-height: 82%; object-fit: contain; filter: drop-shadow(0 36px 70px rgba(0,0,0,.7)) drop-shadow(0 0 34px rgba(1,231,99,.2)); animation: floatCharger 6s ease-in-out infinite; }
.service-detail-visual img[src*="service-zero-capex"],
.service-detail-visual img[src*="service-software-platform"],
.service-detail-visual img[src*="service-smart-payment"],
.service-detail-visual img[src*="service-mobile-app"] {
  width: min(86%, 520px);
  max-height: 78%;
  border-radius: 22px;
  object-fit: contain;
  background: rgba(1,231,99,.035);
  box-shadow: 0 32px 90px rgba(0,0,0,.46), 0 0 0 1px rgba(1,231,99,.08);
}
.energy-ring { position: absolute; width: 260px; height: 260px; border: 1px solid rgba(1,231,99,.32); border-radius: 50%; box-shadow: 0 0 45px rgba(1,231,99,.14), inset 0 0 32px rgba(1,231,99,.08); animation: breatheRing 3.8s ease-in-out infinite; }
.service-badge { position: absolute; z-index: 4; top: 28px; left: 28px; padding: 9px 12px; border-radius: 999px; background: rgba(1,231,99,.13); color: var(--green); border: 1px solid rgba(1,231,99,.35); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; }
.service-detail-copy { padding: clamp(28px,5vw,66px); align-self: center; }
.detail-number { color: var(--green); font-size: 11px; letter-spacing: .22em; }
.service-detail-copy h3 { margin: 18px 0 18px; font-size: clamp(34px,4.8vw,64px); line-height: .98; letter-spacing: -.05em; max-width: 720px; }
.service-detail-copy > p { color: #a7b0aa; font-size: 17px; line-height: 1.75; max-width: 760px; }
.service-question {
  margin: 0 0 20px !important;
  color: var(--green) !important;
  font-size: clamp(18px,2vw,25px) !important;
  line-height: 1.35 !important;
  letter-spacing: -.015em;
}
.service-highlight {
  margin: 18px 0 22px;
  padding: 22px 24px;
  border: 1px solid rgba(1,231,99,.3);
  border-radius: 18px;
  color: #001b0b;
  background: linear-gradient(135deg, var(--green), #7cffae);
  box-shadow: 0 20px 70px rgba(1,231,99,.16);
  font-size: clamp(22px,3.2vw,42px);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -.045em;
}
.service-footnote {
  margin-top: 8px !important;
  color: #6f7973 !important;
  font-size: 12px !important;
}
.service-benefit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 30px 0;
}
.service-benefit-grid div {
  min-height: 72px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 17px;
  background: rgba(0,0,0,.22);
  color: #eef7f2;
  font-size: 14px;
  line-height: 1.35;
}
.service-benefit-grid div::before {
  content: "✓";
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  color: #001b0b;
  background: var(--green);
  box-shadow: 0 0 20px rgba(1,231,99,.25);
  font-size: 12px;
  font-weight: 800;
}
.service-detail-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  text-decoration: none;
}
.micro-cta { margin: 28px 0; padding: 15px 17px; border-left: 2px solid var(--green); background: rgba(1,231,99,.055); color: rgba(255,255,255,.82); font-size: 13px; line-height: 1.65; }
.service-info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.service-info-grid article, .mini-timeline article { padding: 22px; border: 1px solid rgba(255,255,255,.09); border-radius: 18px; background: rgba(0,0,0,.22); }
.service-info-grid h4 { margin: 0 0 10px; color: #fff; font-size: 18px; }
.service-info-grid p, .mini-timeline p { margin: 0 0 14px; color: #8c9690; line-height: 1.55; font-size: 13px; }
.service-info-grid ul { margin: 0; padding: 0; display: grid; gap: 8px; list-style: none; color: #dce5df; font-size: 13px; }
.service-info-grid li::before { content: "✦"; color: var(--green); margin-right: 8px; }
.mini-timeline { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 26px 0 14px; }
.mini-timeline span { color: var(--green); font-size: 10px; letter-spacing: .18em; }
.mini-timeline strong { display: block; margin: 8px 0; color: #fff; }
.track-record-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin-bottom: 40px; }
.track-card { position: relative; overflow: hidden; min-height: 520px; border: 1px solid rgba(255,255,255,.1); border-radius: 30px; background: #040604; box-shadow: 0 30px 90px rgba(0,0,0,.35); }
.track-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .72; transition: transform .7s ease, opacity .35s ease; }
.track-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.82) 72%); }
.track-card div { position: absolute; z-index: 2; left: 28px; right: 28px; bottom: 28px; }
.track-card span { color: var(--green); font-size: 10px; letter-spacing: .18em; text-transform: uppercase; }
.track-card h3 { margin: 12px 0; font-size: clamp(28px,3.6vw,52px); letter-spacing: -.04em; }
.track-card p { color: #cbd3ce; line-height: 1.6; max-width: 540px; }
.track-card small { color: #7d8781; text-transform: uppercase; letter-spacing: .12em; }
.track-card:hover img { transform: scale(1.04); opacity: .86; }
.invest { position: relative; padding: 18vh 0; }
.invest::before { content: ""; position: absolute; inset: 0 -8vw; background: radial-gradient(circle at 18% 16%, rgba(1,231,99,.12), transparent 26%), radial-gradient(circle at 80% 65%, rgba(1,231,99,.08), transparent 28%); pointer-events: none; }
.invest > * { position: relative; z-index: 1; }
.invest-hero { width: min(1040px,100%); margin-bottom: 58px; }
.invest-hero h2 { max-width: 1000px; margin-bottom: 28px; }
.invest-hero p { max-width: 900px; color: #a5aea8; font-size: 17px; line-height: 1.75; }
.invest-card-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 54px 0; }
.invest-card-grid article, .investment-models article, .opportunity-grid article, .strength-grid div, .investment-journey div { border: 1px solid rgba(255,255,255,.1); background: linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.018)); border-radius: 22px; }
.invest-card-grid article { padding: 26px; min-height: 250px; transition: .3s ease; }
.invest-card-grid span { color: var(--green); font-size: 24px; filter: drop-shadow(0 0 12px rgba(1,231,99,.55)); }
.invest-card-grid h3, .investment-models h3 { font-size: 22px; line-height: 1.1; }
.invest-card-grid p, .investment-models p { color: #8f9993; line-height: 1.6; font-size: 14px; }
.invest-card-grid article:hover, .investment-models article:hover, .opportunity-grid article:hover, .strength-grid div:hover { border-color: rgba(1,231,99,.36); transform: translateY(-4px); box-shadow: 0 24px 70px rgba(1,231,99,.08); }
.investment-models { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 16px; margin: 42px 0; }
.investment-models article { padding: 24px; }
.investment-models span, .investment-journey span { color: var(--green); font-size: 10px; letter-spacing: .18em; }
.strength-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 54px 0; }
.strength-grid div { padding: 18px; color: #f0f5f2; font-size: 13px; min-height: 76px; display: grid; place-items: center start; transition: .28s ease; }
.investment-journey { display: grid; grid-template-columns: repeat(8, minmax(110px, 1fr)); gap: 10px; margin: 50px 0; overflow-x: auto; padding-bottom: 8px; }
.investment-journey div { position: relative; min-height: 110px; padding: 18px; }
.investment-journey div:not(:last-child)::after { content: ""; position: absolute; top: 52px; right: -11px; width: 12px; height: 2px; background: var(--green); box-shadow: 0 0 16px var(--green); }
.investment-journey strong { display: block; margin-top: 18px; font-size: 13px; }
.opportunity-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; margin: 54px 0; }
.opportunity-grid article { min-height: 120px; padding: 22px; display: grid; align-content: end; font-size: 18px; color: #fff; transition: .28s ease; }
.growth-statement { margin: 70px 0; padding: clamp(34px,6vw,76px); border-radius: 34px; border: 1px solid rgba(1,231,99,.18); background: linear-gradient(135deg, rgba(1,231,99,.12), rgba(255,255,255,.025)); }
.growth-statement h3 { margin: 0; max-width: 1000px; font-size: clamp(34px,5.4vw,76px); line-height: .98; letter-spacing: -.05em; }
.growth-statement p { max-width: 900px; margin-top: 28px; color: #b2bbb5; font-size: 17px; line-height: 1.75; }
.invest-final { position: relative; overflow: hidden; text-align: center; padding: clamp(48px,8vw,100px) 24px; border: 1px solid rgba(255,255,255,.1); border-radius: 36px; background: radial-gradient(circle at 50% 25%, rgba(1,231,99,.15), transparent 38%), rgba(0,0,0,.28); }
.invest-final::before { content: ""; position: absolute; inset: 0; z-index: 0; background: url('./zura-section-logo.png') center 43% / min(760px, 82vw) auto no-repeat; opacity: .2; mix-blend-mode: screen; filter: drop-shadow(0 0 44px rgba(1,231,99,.34)); pointer-events: none; }
.invest-final > img { position: absolute; left: 50%; top: 50%; z-index: 0; width: 620px; max-width: 78vw; transform: translate(-50%,-50%); opacity: .1; mix-blend-mode: screen; filter: blur(.15px) drop-shadow(0 0 34px rgba(1,231,99,.28)); }
.invest-final h3, .invest-final p, .invest-final .cta-row { position: relative; z-index: 1; }
.invest-final h3 { font-size: clamp(38px,6vw,82px); margin: 0 auto 24px; max-width: 900px; line-height: .98; letter-spacing: -.05em; }
.invest-final p { color: #d8e2dc; line-height: 1.75; font-size: 18px; }
.invest-final .cta-row { justify-content: center; }
.invest-experience { overflow: hidden; }
.invest-dashboard-hero { display: grid; grid-template-columns: minmax(0,.82fr) minmax(420px,1fr); gap: 26px; align-items: stretch; margin: 40px 0 28px; }
.invest-story-copy, .malaysia-dashboard, .metric-tile, .capex-comparison, .software-live-panel, .charging-hub-sim, .investment-calculator { position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 32px; background: linear-gradient(145deg, rgba(255,255,255,.065), rgba(1,231,99,.025)); box-shadow: 0 34px 90px rgba(0,0,0,.34); }
.invest-story-copy { padding: clamp(30px,4vw,56px); display: grid; align-content: center; }
.invest-story-copy h2 { margin: 22px 0 18px; font-size: clamp(42px,5.4vw,78px); line-height: .95; letter-spacing: -.06em; max-width: 820px; }
.invest-story-copy > p { color: #a8b2ac; font-size: 17px; line-height: 1.72; max-width: 740px; }
.invest-live-stats { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin-top: 32px; }
.invest-live-stats div { padding: 18px; border: 1px solid rgba(1,231,99,.16); border-radius: 18px; background: rgba(0,0,0,.22); }
.invest-live-stats strong { display: block; color: var(--green); font-size: clamp(22px,2.3vw,34px); letter-spacing: -.04em; text-shadow: 0 0 22px rgba(1,231,99,.36); }
.invest-live-stats span { display: block; margin-top: 7px; color: #93a09a; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.malaysia-dashboard { min-height: 610px; padding: 28px; background: radial-gradient(circle at 54% 52%, rgba(1,231,99,.17), transparent 28%), linear-gradient(145deg, rgba(0,14,8,.9), rgba(0,0,0,.78)); }
.malaysia-dashboard::before { content: ""; position: absolute; inset: 44px; border-radius: 45% 55% 50% 42%; border: 1px solid rgba(1,231,99,.18); filter: drop-shadow(0 0 30px rgba(1,231,99,.16)); transform: rotate(-8deg); }
.map-glow { position: absolute; inset: 16%; border-radius: 50%; background: radial-gradient(circle, rgba(1,231,99,.16), transparent 62%); animation: breatheRing 4s ease-in-out infinite; }
.map-title { position: absolute; left: 30px; top: 28px; color: var(--green); letter-spacing: .32em; font-size: 11px; }
.route-svg { position: absolute; inset: 10% 6%; width: 88%; height: 78%; overflow: visible; }
.route-line { fill: none; stroke: rgba(1,231,99,.72); stroke-width: 2; stroke-linecap: round; stroke-dasharray: 8 12; filter: drop-shadow(0 0 10px rgba(1,231,99,.65)); animation: routeFlow 3.8s linear infinite; }
.route-alt { stroke-width: 1.35; opacity: .56; animation-duration: 5.4s; }
.route-delay { animation-delay: 1.1s; }
.deploy-node { position: absolute; z-index: 2; width: 72px; height: 72px; transform: translate(-50%,-50%); border: 0; border-radius: 50%; color: #fff; background: radial-gradient(circle, var(--green) 0 23%, rgba(1,231,99,.18) 24% 47%, transparent 48%); cursor: pointer; filter: drop-shadow(0 0 20px rgba(1,231,99,.48)); animation: nodeArrive 5s ease-in-out infinite; }
.deploy-node i { position: absolute; inset: 16px; border-radius: 50%; background: var(--green); box-shadow: 0 0 24px rgba(1,231,99,.9); }
.deploy-node span { position: absolute; left: 50%; top: calc(100% + 8px); transform: translateX(-50%); color: #fff; font-weight: 800; font-size: 12px; letter-spacing: .14em; }
.deploy-node small { position: absolute; left: 50%; top: calc(100% + 26px); transform: translateX(-50%); color: var(--green); font-size: 10px; white-space: nowrap; opacity: 0; transition: .25s ease; }
.deploy-node:hover small { opacity: 1; }
.deploy-2 { animation-delay: .5s; }
.deploy-3 { animation-delay: 1s; }
.deploy-4 { animation-delay: 1.5s; }
.deploy-5 { animation-delay: 2s; }
.network-vehicle { position: absolute; z-index: 3; padding: 5px 9px; border-radius: 999px; background: var(--green); color: #001b0c; font-size: 10px; font-weight: 900; letter-spacing: .08em; box-shadow: 0 0 20px rgba(1,231,99,.7); }
.vehicle-1 { left: 31%; top: 49%; animation: vehicleA 7s linear infinite; }
.vehicle-2 { left: 55%; top: 67%; animation: vehicleB 8s linear infinite; }
.vehicle-3 { left: 69%; top: 41%; animation: vehicleC 9s linear infinite; }
.floating-stat-strip { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin: 28px 0 16px; }
.floating-stat-strip article { padding: 22px; border: 1px solid rgba(1,231,99,.16); border-radius: 22px; background: rgba(1,231,99,.055); }
.floating-stat-strip strong { display: block; color: #fff; font-size: clamp(26px,3vw,44px); letter-spacing: -.05em; }
.floating-stat-strip span { color: #8c9892; font-size: 12px; text-transform: uppercase; letter-spacing: .1em; }
.metric-tile-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; margin: 18px 0 28px; }
.metric-tile { min-height: 250px; padding: 24px; transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease; }
.metric-tile:hover { transform: translateY(-6px); border-color: rgba(1,231,99,.42); box-shadow: 0 30px 80px rgba(1,231,99,.09); }
.metric-tile span { color: #9ba7a1; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }
.metric-tile strong { display: block; margin: 20px 0 6px; color: var(--green); font-size: clamp(40px,4vw,64px); letter-spacing: -.06em; text-shadow: 0 0 24px rgba(1,231,99,.35); }
.metric-tile p { color: #e9f2ed; margin: 0 0 18px; }
.metric-tile small { display: block; color: #8c9892; margin-top: 8px; }
.metric-bars { display: grid; gap: 7px; margin: 12px 0 18px; }
.metric-bars i { display: block; height: 7px; border-radius: 999px; background: linear-gradient(90deg, var(--green), rgba(1,231,99,.1)); transform-origin: left; animation: barGrow 3s ease-in-out infinite; }
.metric-bars i:nth-child(2) { width: 78%; animation-delay: .25s; }
.metric-bars i:nth-child(3) { width: 54%; animation-delay: .5s; }
.invest-split-showcase, .hub-and-calculator { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 18px; margin: 28px 0; }
.capex-comparison, .software-live-panel, .charging-hub-sim, .investment-calculator { padding: clamp(24px,3.2vw,42px); min-height: 420px; }
.capex-comparison h3, .software-live-panel h3, .charging-hub-sim h3, .investment-calculator h3 { margin: 0 0 22px; font-size: clamp(28px,3.3vw,48px); line-height: 1; letter-spacing: -.05em; }
.comparison-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.comparison-grid article { min-height: 270px; padding: 22px; border-radius: 22px; border: 1px solid rgba(255,255,255,.11); background: rgba(0,0,0,.22); }
.comparison-grid span { color: #909b95; text-transform: uppercase; letter-spacing: .12em; font-size: 10px; }
.comparison-grid strong { display: block; margin: 22px 0 6px; font-size: clamp(32px,4vw,54px); letter-spacing: -.06em; }
.traditional-panel strong { color: #818a85; text-decoration: line-through; }
.zura-panel { border-color: rgba(1,231,99,.38) !important; background: radial-gradient(circle at 50% 0%, rgba(1,231,99,.18), rgba(0,0,0,.18)) !important; }
.zura-panel strong { color: var(--green); text-shadow: 0 0 22px rgba(1,231,99,.45); }
.comparison-grid ul { display: grid; gap: 10px; padding: 0; margin: 22px 0 0; list-style: none; color: #c8d2cc; }
.comparison-grid li::before { content: "×"; color: #7b8580; margin-right: 8px; }
.zura-panel li::before { content: "✓"; color: var(--green); }
.live-dashboard { display: grid; gap: 12px; }
.dashboard-step { display: grid; grid-template-columns: 1fr auto; align-items: center; padding: 16px 18px; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: rgba(0,0,0,.22); opacity: .48; animation: dashboardPulse 5s ease-in-out infinite; }
.dashboard-step span { color: #fff; font-weight: 800; }
.dashboard-step b { color: var(--green); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; }
.step-2 { animation-delay: 1s; }
.step-3 { animation-delay: 2s; }
.step-4 { animation-delay: 3s; }
.step-5 { animation-delay: 4s; }
.dashboard-graph { display: flex; align-items: end; gap: 10px; height: 105px; margin-top: 14px; padding: 18px; border-radius: 18px; background: linear-gradient(180deg, rgba(1,231,99,.08), rgba(0,0,0,.18)); }
.dashboard-graph i { flex: 1; border-radius: 999px 999px 0 0; background: linear-gradient(180deg, var(--green), rgba(1,231,99,.16)); animation: graphPulse 3.8s ease-in-out infinite; }
.dashboard-graph i:nth-child(1) { height: 36%; }
.dashboard-graph i:nth-child(2) { height: 52%; animation-delay: .2s; }
.dashboard-graph i:nth-child(3) { height: 44%; animation-delay: .4s; }
.dashboard-graph i:nth-child(4) { height: 72%; animation-delay: .6s; }
.dashboard-graph i:nth-child(5) { height: 92%; animation-delay: .8s; }
.hub-stage { position: relative; min-height: 290px; border-radius: 26px; background: radial-gradient(circle at 50% 45%, rgba(1,231,99,.18), transparent 38%), linear-gradient(180deg, rgba(255,255,255,.045), rgba(0,0,0,.18)); overflow: hidden; }
.hub-building { position: absolute; left: 50%; top: 52%; width: 210px; height: 128px; transform: translate(-50%,-50%); border: 1px solid rgba(1,231,99,.36); border-radius: 18px; background: linear-gradient(145deg, #07120d, #020302); box-shadow: 0 0 40px rgba(1,231,99,.15); }
.hub-building span { position: absolute; left: 18px; top: 16px; color: var(--green); font-size: 12px; letter-spacing: .18em; }
.hub-building i { position: absolute; bottom: 18px; width: 36px; height: 58px; border-radius: 10px; border: 1px solid rgba(1,231,99,.4); background: rgba(1,231,99,.08); }
.hub-building i:nth-child(2) { left: 22px; }
.hub-building i:nth-child(3) { left: 86px; }
.hub-building i:nth-child(4) { left: 150px; }
.hub-energy { position: absolute; left: 18%; right: 18%; top: 68%; height: 2px; background: linear-gradient(90deg, transparent, var(--green), transparent); box-shadow: 0 0 22px rgba(1,231,99,.9); animation: routeFlow 2.8s linear infinite; }
.hub-vehicle { position: absolute; width: 38px; height: 20px; border-radius: 8px 14px 7px 7px; background: #eef6f1; box-shadow: 0 0 20px rgba(1,231,99,.45); }
.hub-vehicle::after { content: ""; position: absolute; inset: auto 7px -4px; height: 5px; border-radius: 999px; background: var(--green); }
.car-a { left: 12%; top: 74%; animation: carLoopA 7s linear infinite; }
.car-b { right: 16%; top: 34%; animation: carLoopB 8s linear infinite; }
.car-c { left: 18%; top: 25%; animation: carLoopC 9s linear infinite; }
.bus-a { width: 54px; right: 12%; top: 74%; animation: carLoopD 10s linear infinite; }
.hub-counter { position: absolute; left: 18px; right: 18px; bottom: 18px; display: flex; justify-content: space-between; gap: 14px; padding: 14px 16px; border-radius: 16px; background: rgba(0,0,0,.45); border: 1px solid rgba(1,231,99,.2); }
.hub-counter strong { color: var(--green); }
.hub-counter span { color: #9ba7a1; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.investment-calculator p { color: #a2aca6; line-height: 1.6; }
.investment-calculator label { display: grid; grid-template-columns: 1fr auto; gap: 16px; align-items: center; margin-top: 28px; color: #9ba7a1; text-transform: uppercase; letter-spacing: .12em; font-size: 11px; }
.investment-calculator label strong { color: var(--green); font-size: 42px; letter-spacing: -.05em; }
.investment-calculator input { grid-column: 1 / -1; accent-color: var(--green); width: 100%; }
.calculator-output { margin-top: 24px; padding: 22px; border-radius: 22px; background: rgba(1,231,99,.09); border: 1px solid rgba(1,231,99,.22); }
.calculator-output span, .calculator-output small { display: block; color: #9ba7a1; }
.calculator-output strong { display: block; margin: 8px 0; color: var(--green); font-size: clamp(36px,4.8vw,68px); letter-spacing: -.06em; }
.investment-estimator { min-height: 620px; }
.estimator-controls { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 24px 0 20px; }
.investment-calculator .estimator-select { display: grid; grid-template-columns: 1fr; gap: 9px; margin: 0; padding: 16px; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; background: rgba(0,0,0,.22); letter-spacing: .12em; }
.estimator-select select { width: 100%; border: 1px solid rgba(1,231,99,.2); border-radius: 12px; background: rgba(2,8,5,.92); color: #fff; padding: 12px 13px; outline: none; font: inherit; letter-spacing: 0; text-transform: none; }
.estimator-select select:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(1,231,99,.1); }
.estimator-select small { color: #7f8a84; font-size: 11px; line-height: 1.35; letter-spacing: 0; text-transform: none; }
.estimator-sliders { display: grid; gap: 8px; }
.investment-calculator .estimator-sliders label { margin-top: 8px; padding: 14px 16px; border: 1px solid rgba(255,255,255,.09); border-radius: 18px; background: rgba(255,255,255,.025); }
.investment-calculator .estimator-sliders label strong { font-size: 28px; }
.investment-calculator input[type="range"] { height: 6px; border-radius: 999px; cursor: pointer; }
.estimator-results { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 18px; }
.estimator-results article { padding: 18px; border-radius: 18px; border: 1px solid rgba(1,231,99,.16); background: linear-gradient(145deg, rgba(1,231,99,.08), rgba(255,255,255,.018)); }
.estimator-results span, .estimator-results small { display: block; color: #8f9993; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; line-height: 1.35; }
.estimator-results strong { display: block; margin: 8px 0; color: var(--green); font-size: clamp(24px,2.8vw,40px); line-height: 1; letter-spacing: -.05em; text-shadow: 0 0 20px rgba(1,231,99,.28); }
.estimator-note { display: flex; gap: 10px; align-items: flex-start; margin-top: 14px; padding: 14px 16px; border-radius: 16px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); }
.estimator-note strong { flex: 0 0 auto; color: var(--green); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.estimator-note span { color: #99a39d; font-size: 12px; line-height: 1.55; }
.charging-investment-dashboard { position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(300px,.72fr) minmax(0,1fr); gap: 20px; margin: 32px 0; padding: clamp(24px,3.3vw,42px); border: 1px solid rgba(255,255,255,.1); border-radius: 34px; background: radial-gradient(circle at 22% 18%, rgba(1,231,99,.16), transparent 32%), radial-gradient(circle at 80% 88%, rgba(1,231,99,.09), transparent 38%), linear-gradient(145deg, rgba(255,255,255,.06), rgba(1,231,99,.025)); box-shadow: 0 36px 110px rgba(0,0,0,.38); }
.charging-investment-dashboard::before { content: ""; position: absolute; inset: -25%; background-image: radial-gradient(circle, rgba(1,231,99,.55) 0 1px, transparent 1.8px); background-size: 46px 46px; opacity: .18; animation: fleetParticleDrift 16s linear infinite; pointer-events: none; }
.charging-investment-dashboard > * { position: relative; z-index: 1; }
.charging-investment-copy, .charging-model-card { border: 1px solid rgba(255,255,255,.1); border-radius: 28px; background: linear-gradient(145deg, rgba(2,18,11,.9), rgba(3,5,4,.78)); box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 26px 74px rgba(0,0,0,.3); }
.charging-investment-copy { padding: clamp(24px,3vw,38px); display: grid; align-content: center; }
.charging-investment-copy > span { color: var(--green); font-size: 11px; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }
.charging-investment-copy h3 { margin: 14px 0 14px; color: #f4fbf6; font-size: clamp(34px,4.3vw,66px); line-height: .96; letter-spacing: -.06em; }
.charging-investment-copy p { margin: 0 0 24px; color: #b2bdb7; font-size: 16px; line-height: 1.7; }
.charging-model-select { display: grid; gap: 10px; margin: 0 0 14px; }
.charging-model-select span { color: #86928c; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; }
.charging-model-select select { width: 100%; border: 1px solid rgba(1,231,99,.24); border-radius: 16px; background: rgba(0,0,0,.38); color: #fff; padding: 15px 16px; outline: none; font: inherit; font-weight: 800; }
.charging-model-select select:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(1,231,99,.1); }
.charging-model-note { padding: 18px; border: 1px solid rgba(1,231,99,.18); border-radius: 18px; background: rgba(1,231,99,.07); }
.charging-model-note strong, .charging-model-note small { display: block; }
.charging-model-note strong { color: var(--green); font-size: 18px; letter-spacing: -.02em; }
.charging-model-note small { margin-top: 7px; color: #9da8a2; line-height: 1.55; }
.charging-model-card { padding: clamp(22px,2.8vw,34px); }
.charger-slider-stack { display: grid; gap: 14px; }
.charger-input-row { display: grid; gap: 12px; padding: 17px; border: 1px solid rgba(255,255,255,.08); border-radius: 18px; background: rgba(255,255,255,.026); }
.charger-input-head { display: flex; justify-content: space-between; align-items: end; gap: 18px; }
.charger-input-head span { color: #aab5af; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.charger-input-head strong { color: var(--green); font-size: clamp(26px,3.3vw,48px); line-height: .9; letter-spacing: -.06em; text-shadow: 0 0 24px rgba(1,231,99,.32); white-space: nowrap; }
.charger-input-row input[type="range"] { width: 100%; height: 7px; border: 0; border-radius: 999px; outline: none; appearance: none; cursor: pointer; background: linear-gradient(90deg, var(--green) 0 var(--range-progress), rgba(255,255,255,.16) var(--range-progress) 100%); }
.charger-input-row input[type="range"]::-webkit-slider-thumb { appearance: none; width: 19px; height: 19px; border-radius: 50%; background: var(--green); border: 3px solid #dfffee; box-shadow: 0 0 24px rgba(1,231,99,.75); }
.charger-input-row input[type="range"]::-moz-range-thumb { width: 19px; height: 19px; border: 3px solid #dfffee; border-radius: 50%; background: var(--green); box-shadow: 0 0 24px rgba(1,231,99,.75); }
.charging-results-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-top: 18px; }
.charging-results-grid article { padding: 18px; min-height: 136px; border: 1px solid rgba(1,231,99,.16); border-radius: 20px; background: linear-gradient(145deg, rgba(1,231,99,.09), rgba(255,255,255,.018)); }
.charging-results-grid span, .charging-results-grid small { display: block; color: #8d9992; font-size: 10px; letter-spacing: .12em; line-height: 1.35; text-transform: uppercase; }
.charging-results-grid strong { display: block; margin: 14px 0 8px; color: #fff; font-size: clamp(22px,2.4vw,36px); line-height: .98; letter-spacing: -.05em; }
.charging-results-grid article:first-child strong, .charging-results-grid article:nth-child(3) strong { color: var(--green); text-shadow: 0 0 24px rgba(1,231,99,.28); }
.charging-calculator-note { display: flex; gap: 12px; align-items: flex-start; margin-top: 14px; padding: 15px 16px; border-radius: 16px; border: 1px solid rgba(255,255,255,.08); background: rgba(255,255,255,.035); }
.charging-calculator-note strong { flex: 0 0 auto; color: var(--green); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.charging-calculator-note span { color: #99a39d; font-size: 12px; line-height: 1.55; }
.fleet-savings-calculator { position: relative; overflow: hidden; margin: 32px 0; padding: clamp(24px,3.5vw,46px); border: 1px solid rgba(255,255,255,.1); border-radius: 34px; background: radial-gradient(circle at 78% 0%, rgba(1,231,99,.16), transparent 34%), radial-gradient(circle at 18% 92%, rgba(1,231,99,.1), transparent 42%), linear-gradient(145deg, rgba(255,255,255,.055), rgba(1,231,99,.022)); box-shadow: 0 36px 110px rgba(0,0,0,.38); }
.fleet-savings-calculator::before { content: ""; position: absolute; inset: -30%; background-image: radial-gradient(circle, rgba(1,231,99,.58) 0 1px, transparent 1.7px); background-size: 54px 54px; opacity: .18; animation: fleetParticleDrift 18s linear infinite; pointer-events: none; }
.fleet-savings-calculator::after { content: ""; position: absolute; left: -18%; right: -18%; top: 42%; height: 1px; background: linear-gradient(90deg, transparent, rgba(1,231,99,.65), transparent); box-shadow: 0 0 32px rgba(1,231,99,.45); animation: fleetEnergySweep 4.8s ease-in-out infinite; pointer-events: none; }
.fleet-savings-calculator > * { position: relative; z-index: 1; }
.fleet-calculator-head { max-width: 980px; margin-bottom: 30px; }
.fleet-calculator-head > span, .panel-kicker { display: inline-flex; color: var(--green); font-size: 11px; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }
.fleet-calculator-head h3 { margin: 14px 0 16px; max-width: 900px; color: #f4fbf6; font-size: clamp(38px,5.2vw,78px); line-height: .96; letter-spacing: -.06em; }
.fleet-calculator-head p { margin: 0; max-width: 920px; color: #b7c2bc; font-size: clamp(16px,1.4vw,20px); line-height: 1.68; }
.fleet-dashboard-grid { display: grid; grid-template-columns: minmax(320px,.78fr) minmax(0,1fr); gap: 20px; align-items: start; }
.fleet-input-panel, .fleet-result-panel { position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 28px; background: linear-gradient(145deg, rgba(2,20,12,.88), rgba(4,6,5,.82)); box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 28px 80px rgba(0,0,0,.32); }
.fleet-input-panel { padding: clamp(20px,2.5vw,30px); display: grid; gap: 16px; }
.fleet-result-panel { padding: clamp(20px,2.8vw,34px); }
.fleet-type-selector { display: grid; gap: 10px; padding: 18px; border: 1px solid rgba(1,231,99,.2); border-radius: 20px; background: radial-gradient(circle at 100% 0%, rgba(1,231,99,.14), transparent 48%), rgba(1,231,99,.055); }
.fleet-type-selector span { color: #dce6e0; font-size: 13px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.fleet-type-selector select { width: 100%; border: 1px solid rgba(1,231,99,.28); border-radius: 14px; background: rgba(0,0,0,.34); color: #fff; padding: 14px 15px; outline: none; font: inherit; font-weight: 900; }
.fleet-type-selector select:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(1,231,99,.1); }
.fleet-type-selector small { color: #91a099; font-size: 12px; line-height: 1.55; }
.fleet-input-row { display: grid; gap: 12px; padding: 15px; border: 1px solid rgba(255,255,255,.08); border-radius: 18px; background: rgba(255,255,255,.026); }
.fleet-input-topline { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 14px; align-items: center; }
.fleet-input-topline > span { color: #dce6e0; font-size: 13px; font-weight: 800; line-height: 1.25; }
.fleet-value-edit { display: inline-grid; grid-template-columns: minmax(74px,96px) auto; align-items: center; gap: 8px; }
.fleet-value-edit input { width: 100%; border: 1px solid rgba(1,231,99,.2); border-radius: 12px; background: rgba(0,0,0,.32); color: #fff; padding: 10px 11px; outline: none; font: inherit; font-weight: 800; text-align: right; }
.fleet-value-edit input:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(1,231,99,.1); }
.fleet-value-edit small { color: #8f9c95; font-size: 10px; white-space: nowrap; }
.fleet-input-row input[type="range"] { width: 100%; height: 7px; border: 0; border-radius: 999px; outline: none; appearance: none; cursor: pointer; background: linear-gradient(90deg, var(--green) 0 var(--range-progress), rgba(255,255,255,.1) var(--range-progress) 100%); box-shadow: inset 0 0 0 1px rgba(255,255,255,.06); }
.fleet-input-row input[type="range"]::-webkit-slider-thumb { appearance: none; width: 18px; height: 18px; border-radius: 50%; background: #f2fff8; border: 4px solid var(--green); box-shadow: 0 0 22px rgba(1,231,99,.75); }
.fleet-input-row input[type="range"]::-moz-range-thumb { width: 18px; height: 18px; border: 4px solid var(--green); border-radius: 50%; background: #f2fff8; box-shadow: 0 0 22px rgba(1,231,99,.75); }
.fleet-result-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 18px; }
.fleet-result-card { min-height: 118px; display: grid; align-content: space-between; gap: 18px; padding: 18px; border: 1px solid rgba(1,231,99,.16); border-radius: 20px; background: linear-gradient(145deg, rgba(1,231,99,.09), rgba(255,255,255,.02)); animation: fleetResultPulse .55s ease; }
.fleet-result-card span { color: #8f9c95; font-size: 10px; letter-spacing: .12em; line-height: 1.35; text-transform: uppercase; }
.fleet-result-card strong { color: #fff; font-size: clamp(23px,2.5vw,38px); line-height: .98; letter-spacing: -.05em; text-shadow: 0 0 22px rgba(1,231,99,.12); }
.result-1, .result-2, .result-3, .result-4 { border-color: rgba(1,231,99,.25); background: radial-gradient(circle at 20% 0%, rgba(1,231,99,.15), transparent 50%), rgba(1,231,99,.045); }
.result-1 strong, .result-2 strong { color: var(--green); text-shadow: 0 0 24px rgba(1,231,99,.32); }
.fleet-cost-chart { margin-top: 18px; padding: 20px; border: 1px solid rgba(255,255,255,.09); border-radius: 22px; background: rgba(0,0,0,.28); }
.fleet-chart-row { display: grid; gap: 10px; margin-bottom: 18px; }
.fleet-chart-row div { display: flex; justify-content: space-between; gap: 16px; color: #dce6e0; font-size: 13px; }
.fleet-chart-row span { color: #a9b4ae; }
.fleet-chart-row b { white-space: nowrap; }
.fleet-chart-row i { display: block; max-width: 100%; height: 13px; border-radius: 999px; transition: width .55s cubic-bezier(.2,.8,.2,1); }
.fleet-chart-row.current i { background: linear-gradient(90deg, rgba(255,255,255,.7), rgba(255,255,255,.22)); }
.fleet-chart-row.electric i { background: linear-gradient(90deg, var(--green), rgba(1,231,99,.18)); box-shadow: 0 0 20px rgba(1,231,99,.32); }
.fleet-saving-callout { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-top: 8px; padding: 18px; border: 1px solid rgba(1,231,99,.26); border-radius: 18px; background: rgba(1,231,99,.09); }
.fleet-saving-callout span { color: #9aa7a0; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.fleet-saving-callout strong { color: var(--green); font-size: clamp(26px,3.1vw,46px); letter-spacing: -.05em; text-shadow: 0 0 28px rgba(1,231,99,.38); }
.fleet-disclaimer { margin: 18px 0 0; color: #87928c; font-size: 12px; line-height: 1.65; }
.fleet-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
@keyframes fleetParticleDrift { to { transform: translate3d(54px,54px,0); } }
@keyframes fleetEnergySweep { 0%,100% { opacity: .2; transform: translateX(-6%); } 50% { opacity: .78; transform: translateX(6%); } }
@keyframes fleetResultPulse { 0% { transform: translateY(6px); opacity: .75; } 100% { transform: translateY(0); opacity: 1; } }
.interactive-models article { min-height: 230px; transition: .35s ease; }
.interactive-models b { display: inline-block; margin-top: 18px; color: var(--green); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.animated-journey { position: relative; overflow: visible; }
.animated-journey::before { content: ""; position: absolute; left: 24px; right: 24px; top: 54px; height: 2px; background: linear-gradient(90deg, transparent, var(--green), transparent); box-shadow: 0 0 18px rgba(1,231,99,.8); animation: routeFlow 3.8s linear infinite; }
.animated-journey div { z-index: 1; background: rgba(5,13,9,.92); }
.animated-journey div::before { content: ""; position: absolute; width: 13px; height: 13px; left: 18px; top: 48px; border-radius: 50%; background: var(--green); box-shadow: 0 0 20px rgba(1,231,99,.9); }
.growth-dashboard { background: radial-gradient(circle at 12% 0%, rgba(1,231,99,.15), transparent 34%), linear-gradient(135deg, rgba(1,231,99,.1), rgba(255,255,255,.02)); }
.invest-final-dashboard::before { opacity: .11; }
@keyframes routeFlow { to { stroke-dashoffset: -80px; background-position: 120px 0; } }
@keyframes nodeArrive { 0%,100% { transform: translate(-50%,-50%) scale(.9); opacity: .72; } 45%,60% { transform: translate(-50%,-50%) scale(1.08); opacity: 1; } }
@keyframes vehicleA { 0% { transform: translate(-70px,-10px); } 100% { transform: translate(260px,126px); } }
@keyframes vehicleB { 0% { transform: translate(120px,20px); } 100% { transform: translate(-190px,-122px); } }
@keyframes vehicleC { 0% { transform: translate(-20px,-60px); } 100% { transform: translate(-190px,128px); } }
@keyframes barGrow { 0%,100% { transform: scaleX(.36); opacity: .5; } 50% { transform: scaleX(1); opacity: 1; } }
@keyframes dashboardPulse { 0%,18%,100% { opacity: .46; border-color: rgba(255,255,255,.1); } 8% { opacity: 1; border-color: rgba(1,231,99,.46); box-shadow: 0 0 30px rgba(1,231,99,.08); } }
@keyframes graphPulse { 0%,100% { transform: scaleY(.72); opacity: .62; } 50% { transform: scaleY(1); opacity: 1; } }
@keyframes carLoopA { 0% { transform: translateX(-90px); } 100% { transform: translateX(420px); } }
@keyframes carLoopB { 0% { transform: translateX(140px); } 100% { transform: translateX(-380px); } }
@keyframes carLoopC { 0% { transform: translate(0,0); } 100% { transform: translate(260px,130px); } }
@keyframes carLoopD { 0% { transform: translateX(120px); } 100% { transform: translateX(-420px); } }
.contact-section { position: relative; min-height: 125vh; padding-top: 18vh; padding-bottom: 10vh; overflow: hidden; }
.contact-section .final-mark { opacity: .42; pointer-events: none; }
.contact-layout { position: relative; z-index: 5; display: grid; grid-template-columns: minmax(0, .95fr) minmax(320px, .72fr); gap: 28px; align-items: stretch; margin-top: 42vh; }
.contact-copy, .contact-form { position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 30px; background: rgba(5,9,7,.72); backdrop-filter: blur(18px); box-shadow: 0 34px 100px rgba(0,0,0,.38); }
.contact-copy::before, .contact-form::before { content: ""; position: absolute; inset: 0; z-index: 0; background: url('./zura-section-logo.png') center / min(520px, 70%) auto no-repeat; opacity: .08; mix-blend-mode: screen; filter: drop-shadow(0 0 32px rgba(1,231,99,.26)); pointer-events: none; }
.contact-copy > *, .contact-form > * { position: relative; z-index: 1; }
.contact-copy { padding: clamp(30px,5vw,64px); }
.contact-copy h2 { max-width: 800px; }
.contact-copy > p { color: #a5aea8; font-size: 17px; line-height: 1.7; max-width: 820px; }
.contact-info { display: grid; gap: 12px; margin-top: 36px; }
.contact-info a { display: grid; gap: 8px; padding: 18px; border: 1px solid rgba(255,255,255,.08); border-radius: 16px; color: #fff; background: rgba(255,255,255,.025); line-height: 1.45; }
.contact-info a:hover { border-color: rgba(1,231,99,.35); color: var(--green); }
.contact-info span { color: #7f8983; font-size: 10px; text-transform: uppercase; letter-spacing: .17em; }
.contact-form { padding: clamp(28px,4vw,44px); display: grid; gap: 18px; align-content: start; }
.contact-form h3 { margin: 0 0 12px; font-size: 30px; letter-spacing: -.03em; }
.contact-form label { display: grid; gap: 9px; color: #7f8983; font-size: 10px; text-transform: uppercase; letter-spacing: .14em; }
.contact-form input, .contact-form textarea { width: 100%; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; background: rgba(255,255,255,.04); color: #fff; padding: 15px; outline: none; resize: vertical; }
.contact-form input:focus, .contact-form textarea:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(1,231,99,.09); }
.contact-form .button { justify-self: start; margin-top: 6px; }
@keyframes slowRotate { to { transform: rotate(360deg); } }
@keyframes floatCharger { 0%,100% { transform: translateY(0) rotate(-1deg); } 50% { transform: translateY(-16px) rotate(1deg); } }
@keyframes breatheRing { 0%,100% { transform: scale(.92); opacity: .55; } 50% { transform: scale(1.06); opacity: .95; } }

@media (max-width: 1100px) {
  .service-detail-panel, .contact-layout { grid-template-columns: 1fr; }
  .vision-intro { grid-template-columns: 1fr; min-height: auto; padding: 12vh 0; }
  .vision-map-card { min-height: 640px; }
  .invest-card-grid, .investment-models, .strength-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .opportunity-grid, .track-record-grid, .mini-timeline { grid-template-columns: 1fr; }
  .invest-dashboard-hero, .invest-split-showcase, .hub-and-calculator, .fleet-dashboard-grid, .charging-investment-dashboard { grid-template-columns: 1fr; }
  .metric-tile-grid, .floating-stat-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .malaysia-dashboard { min-height: 560px; }
}

@media (max-width: 600px) {
  .vision-intro { padding: 10vh 0; gap: 34px; }
  .vision-intro::before { inset: 2vh -2vw; border-radius: 26px; }
  .vision-copy h2 { font-size: 48px; }
  .vision-copy > p { font-size: 16px; }
  .vision-proof { grid-template-columns: 1fr; }
  .vision-map-card { min-height: 560px; border-radius: 26px; }
  .vision-logo-core { width: 120px; }
  .city-node { width: 36px; height: 36px; }
  .city-node img { width: 22px; height: 20px; }
  .city-node > span { display: none; }
  .asia-label { font-size: 8px; }
  .vision-caption { display: grid; gap: 5px; justify-content: start; font-size: 10px; }
  .vision-transport { transform: scale(.82); transform-origin: center; }
  .service-detail-panel { border-radius: 22px; }
  .service-detail-visual { min-height: 360px; }
  .service-info-grid, .service-benefit-grid, .invest-card-grid, .investment-models, .strength-grid, .opportunity-grid { grid-template-columns: 1fr; }
  .service-highlight { font-size: 24px; }
  .service-detail-cta { width: 100%; }
  .track-card { min-height: 420px; }
  .invest { padding: 12vh 0; }
  .invest-story-copy, .malaysia-dashboard, .metric-tile, .capex-comparison, .software-live-panel, .charging-hub-sim, .investment-calculator, .fleet-savings-calculator, .fleet-input-panel, .fleet-result-panel, .charging-investment-dashboard, .charging-investment-copy, .charging-model-card { border-radius: 24px; }
  .invest-live-stats, .metric-tile-grid, .floating-stat-strip, .comparison-grid { grid-template-columns: 1fr; }
  .estimator-controls, .estimator-results, .fleet-result-grid, .charging-results-grid { grid-template-columns: 1fr; }
  .estimator-note { display: grid; }
  .malaysia-dashboard { min-height: 480px; padding: 20px; }
  .deploy-node { width: 54px; height: 54px; }
  .deploy-node i { inset: 13px; }
  .deploy-node span { font-size: 10px; }
  .network-vehicle { transform: scale(.8); }
  .floating-stat-strip strong, .metric-tile strong, .calculator-output strong { font-size: 36px; }
  .hub-stage { min-height: 240px; }
  .hub-building { width: 170px; height: 110px; }
  .hub-counter { display: grid; }
  .fleet-input-topline, .fleet-saving-callout { grid-template-columns: 1fr; display: grid; }
  .charger-input-head, .charging-calculator-note { display: grid; }
  .fleet-value-edit { grid-template-columns: minmax(0,1fr) auto; }
  .fleet-actions .button { width: 100%; }
  .investment-journey { grid-template-columns: repeat(8, 128px); }
  .contact-section { padding-top: 12vh; }
  .contact-layout { margin-top: 30vh; }
  .contact-copy, .contact-form { border-radius: 22px; }
}