/* EDGEMODE · industrial-modern design system · navy base + single teal accent */
:root{
  --navy-950:#060D18; --navy-900:#0A1626; --navy-800:#0E2036;
  --bg:var(--navy-900); --panel:var(--navy-800);
  --text:#E8EEF5; --muted:#9FB0C3; --line:rgba(232,238,245,.14);
  --accent:#19E3C2; --accent-ink:#04241E; --red:#D64545; /* red: sovereign section only */
  --font-head:'Space Grotesk',sans-serif; --font-body:'Inter',sans-serif;
  --container:1180px; --radius:14px;
}
[data-theme="light"]{--bg:#F4F6F9; --panel:#FFFFFF; --text:#0B1B2B; --muted:#4A5A6C;
  --line:rgba(11,27,43,.14); --accent:#0AA88E; --accent-ink:#FFFFFF;}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block} a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--font-head);line-height:1.12;letter-spacing:-.015em;font-weight:700}
h1{font-size:clamp(2.4rem,5.4vw,4.2rem)} h2{font-size:clamp(1.9rem,3.6vw,2.9rem)} h3{font-size:1.2rem}
.container{max-width:var(--container);margin:0 auto;padding:0 24px}
.section{padding:96px 0} .alt{background:var(--panel)}
.eyebrow{font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:14px}
.sovereign .eyebrow{color:var(--red)}
.lead{font-size:1.12rem;color:var(--muted);max-width:66ch;margin-top:18px}
.strong{font-weight:600;margin-top:16px} .fine{color:var(--muted);font-size:.8rem;margin-top:14px}
.skip{position:absolute;left:-9999px;top:0;background:var(--accent);color:var(--accent-ink);padding:10px 16px;z-index:100;border-radius:8px}
.skip:focus{left:12px;top:12px}
/* NAV */
.nav{position:fixed;inset:0 0 auto 0;z-index:60;backdrop-filter:blur(14px);
  background:color-mix(in srgb,var(--bg) 82%,transparent);border-bottom:1px solid var(--line)}
.nav-inner{display:flex;align-items:center;gap:26px;height:68px}
.brand{font-family:var(--font-head);font-weight:700;letter-spacing:.06em}
.brand-mark{display:inline-block;width:10px;height:10px;background:var(--accent);margin-right:8px;transform:rotate(45deg)}
.brand-tld{color:var(--accent)}
.nav-links{display:flex;gap:20px;margin-left:auto;font-size:.92rem;font-weight:500}
.nav-links a{color:var(--muted);padding:6px 2px;border-bottom:2px solid transparent}
.nav-links a:hover,.nav-links a.active{color:var(--text);border-color:var(--accent)}
.nav-actions{display:flex;align-items:center;gap:12px}
.lang-toggle{background:none;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.78rem;padding:6px 12px;cursor:pointer}
.lang-toggle b{color:var(--accent)}
.icon-btn{background:none;border:1px solid var(--line);border-radius:999px;width:36px;height:36px;color:var(--muted);cursor:pointer}
.burger{display:none}
/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:999px;font-weight:600;font-size:.95rem;transition:transform .2s,box-shadow .2s,border-color .2s,color .2s}
.btn-primary{background:var(--accent);color:var(--accent-ink)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px color-mix(in srgb,var(--accent) 35%,transparent)}
.btn-ghost{border:1px solid var(--line);color:var(--text)}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
.btn-sm{padding:9px 16px;font-size:.85rem}
/* HERO */
.hero{min-height:94vh;display:flex;align-items:center;background-size:cover;background-position:center;position:relative}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,13,24,.88),rgba(6,13,24,.55) 45%,rgba(6,13,24,.94))}
.hero-inner{position:relative;padding:150px 24px 80px}
.hero h1{color:#E8EEF5} .hero .lead{color:#B9C7D6}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 44px}
.hero-metrics{display:flex;gap:44px;flex-wrap:wrap;border-top:1px solid rgba(232,238,245,.2);padding-top:26px}
.hm-num{font-family:var(--font-head);font-size:clamp(1.6rem,3vw,2.4rem);font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}
.hm-label{display:block;color:#B9C7D6;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}
/* ERA DIAGRAM */
.eras{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:44px 0}
.era{border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:12px;min-height:250px;position:relative;background:var(--panel)}
.era .bar-wrap{flex:1;display:flex;align-items:flex-end}
.era .bar{width:100%;height:var(--h);background:linear-gradient(180deg,var(--accent),transparent 150%);opacity:.45;border-radius:6px 6px 0 0}
.era.active{border-color:var(--accent)} .era.active .bar{opacity:1}
.era-tag{position:absolute;top:-12px;right:14px;background:var(--accent);color:var(--accent-ink);font-size:.68rem;font-weight:700;padding:4px 10px;border-radius:999px;letter-spacing:.08em;text-transform:uppercase}
.era p{font-size:.86rem;color:var(--muted)}
/* LAYER STACK */
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.layers{display:flex;flex-direction:column;gap:10px}
.layer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border:1px solid var(--line);border-radius:12px;background:var(--panel);font-family:var(--font-head);font-weight:600;transition:transform .25s,border-color .25s}
.layer:hover{transform:translateX(8px);border-color:var(--accent)} .layer .arr{color:var(--accent)}
/* KPI TILES */
.kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin:36px 0 10px}
.kpi{border:1px solid var(--line);border-radius:var(--radius);padding:22px 18px;background:var(--panel)}
.kpi .num{font-family:var(--font-head);font-weight:700;font-size:clamp(1.7rem,3vw,2.5rem);color:var(--accent);font-variant-numeric:tabular-nums}
.kpi .lbl{color:var(--muted);font-size:.85rem;margin-top:6px}
/* SOVEREIGN MAP + PILLARS */
.java-map{width:100%;height:auto}
.java-map .island{fill:var(--panel);stroke:var(--line);stroke-width:1.5}
.pin circle{fill:var(--red)} .pin text{fill:var(--text);font-size:13px;font-family:var(--font-head)}
.pillars{list-style:none;display:flex;flex-direction:column;gap:16px;margin-top:26px}
.pillars li{display:flex;gap:14px} .pillars p{color:var(--muted);font-size:.92rem}
.pill-ic{font-family:var(--font-head);color:var(--red);font-weight:700}
/* LOCATION + GENERIC CARDS */
.loc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}
.loc-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--panel)}
.loc-card img{height:170px;object-fit:cover;width:100%}
.loc-card .body{padding:18px} .loc-card .body p{color:var(--muted);font-size:.9rem;margin-top:6px}
.loc-card.next{display:flex;flex-direction:column;justify-content:space-between;padding:18px;border-style:dashed}
.loc-card.next .arr{color:var(--accent);font-size:1.4rem}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{border:1px solid var(--line);border-radius:var(--radius);padding:24px;background:var(--panel)}
.card h3{margin-bottom:8px} .card p{color:var(--muted);font-size:.94rem}
/* PAGE HERO (sub-pages) */
.page-hero{padding:150px 0 60px;border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(2rem,4.4vw,3.4rem)}
/* TABLES + FORMS (used by later pages) */
.table{width:100%;border-collapse:collapse;margin:26px 0;font-size:.94rem}
.table th,.table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.table th{color:var(--muted);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:760px}
.field{display:flex;flex-direction:column;gap:6px} .field.full{grid-column:1/-1}
.field label{font-size:.85rem;color:var(--muted)}
.field input,.field select,.field textarea{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px;color:var(--text);font:inherit}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);border-color:transparent}
/* FOOTER */
.footer{border-top:1px solid var(--line);background:var(--panel);margin-top:40px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;padding:56px 24px 30px}
.footer h4{font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.footer-col a{display:block;color:var(--muted);padding:4px 0;font-size:.92rem}
.footer-col a:hover{color:var(--accent)}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:22px;padding-bottom:34px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}
/* MOTION (restrained: reveals + counters only) */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
/* RESPONSIVE */
@media(max-width:1080px){.nav-links{position:fixed;top:68px;right:0;left:0;background:var(--bg);flex-direction:column;padding:20px 24px;display:none;border-bottom:1px solid var(--line)}
.nav-links.open{display:flex}.burger{display:block}.nav-actions .btn{display:none}}
@media(max-width:960px){.split{grid-template-columns:1fr}.kpis,.eras,.loc-grid{grid-template-columns:repeat(2,1fr)}
.cards{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.eras,.loc-grid,.kpis,.form-grid{grid-template-columns:1fr}}
/* ---- PART 2 ADDENDUM ---- */
.prose{max-width:78ch}
.prose p{color:var(--muted);margin-bottom:18px}
.prose p strong{color:var(--text)}
.pullquote{border-left:3px solid var(--accent);padding:6px 0 6px 26px;margin:38px 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.25rem,2.6vw,1.75rem);line-height:1.4;color:var(--text)}
.pullquote cite{display:block;font-style:normal;font-family:var(--font-body);font-weight:400;font-size:.85rem;color:var(--muted);margin-top:12px}
.cards.four{grid-template-columns:repeat(4,1fr)}
.card ul{list-style:none;margin-top:10px}
.card li{padding:7px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:.92rem}
.card li:last-child{border-bottom:0}
.steps{display:flex;gap:14px;margin:34px 0}
.step{flex:1;border-top:2px solid var(--line);padding-top:16px;position:relative}
.step::before{content:"";position:absolute;top:-6px;left:0;width:10px;height:10px;background:var(--accent);transform:rotate(45deg)}
.step h4{font-size:.95rem;margin-bottom:6px}
.step p{font-size:.82rem;color:var(--muted)}
.gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:26px 0}
.gallery img,.wide{border-radius:var(--radius);width:100%;height:340px;object-fit:cover}
.hub-core{border:1px solid var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--panel));border-radius:var(--radius);padding:20px;text-align:center;font-family:var(--font-head);font-weight:700;margin-bottom:26px}
.spokes{display:grid;grid-template-columns:repeat(7,1fr);gap:12px;margin-bottom:8px}
.spoke{border-top:2px solid var(--line);padding-top:12px;text-align:center;font-size:.8rem;color:var(--muted)}
.spoke b{display:block;color:var(--text);font-family:var(--font-head);font-size:.85rem;margin-bottom:4px}
.layer-d{color:var(--muted);font-size:.84rem;font-family:var(--font-body);font-weight:400;text-align:right}
.statline{display:flex;flex-wrap:wrap;gap:10px 26px;margin:22px 0;font-family:var(--font-head);font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums}
@media(max-width:960px){.cards.four{grid-template-columns:repeat(2,1fr)}.spokes{grid-template-columns:repeat(4,1fr)}.steps{flex-direction:column}.gallery{grid-template-columns:1fr}}
@media(max-width:560px){.cards.four{grid-template-columns:1fr}.spokes{grid-template-columns:repeat(2,1fr)}}
/* ---- PART 3 ADDENDUM ---- */
.commitments{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:36px}
.commit{border:1px solid var(--line);border-radius:var(--radius);padding:28px;background:var(--panel);position:relative;overflow:hidden}
.commit::before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--red)}
.commit h3{font-size:1.1rem;margin-bottom:10px} .commit p{color:var(--muted);font-size:.94rem}
.pillars-map{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:40px 0}
.pillar-map-col{border-top:3px solid var(--red);padding-top:20px}
.pillar-map-col h3{font-size:1rem;color:var(--red);margin-bottom:12px}
.pillar-map-col p{color:var(--muted);font-size:.9rem;margin-bottom:8px}
.funnel{display:flex;flex-direction:column;gap:12px;margin:30px 0;max-width:600px}
.funnel-step{padding:18px 24px;border-radius:10px;background:var(--panel);border:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-family:var(--font-head);font-weight:600}
.funnel-step span:first-child{color:var(--accent)}
.funnel-step span:last-child{color:var(--muted);font-family:var(--font-body);font-weight:400;font-size:.9rem}
.funnel-step.s1{width:100%} .funnel-step.s2{width:85%;margin:0 auto} .funnel-step.s3{width:70%;margin:0 auto} .funnel-step.s4{width:55%;margin:0 auto} .funnel-step.s5{width:40%;margin:0 auto;background:var(--accent);color:var(--accent-ink);border-color:var(--accent)} .funnel-step.s5 span:last-child{color:var(--accent-ink)}
.stack-diagram{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}
.stack-block{border:1px solid var(--line);border-radius:var(--radius);padding:24px;background:var(--panel)}
.stack-block h3{color:var(--accent);font-size:1rem;margin-bottom:12px} .stack-block p{color:var(--muted);font-size:.9rem}
.timeline{position:relative;padding-left:30px;margin:40px 0}
.timeline::before{content:"";position:absolute;left:10px;top:0;bottom:0;width:2px;background:var(--line)}
.t-item{position:relative;padding-bottom:30px}
.t-item::before{content:"";position:absolute;left:-25px;top:4px;width:12px;height:12px;background:var(--accent);border-radius:50%;border:2px solid var(--bg)}
.t-item h3{font-size:1.05rem;margin-bottom:6px} .t-item p{color:var(--muted);font-size:.92rem}
.t-item.active h3{color:var(--accent)}
.dashboard-mock{background:var(--navy-950);border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-top:30px;color:var(--text)}
.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.dash-stat{text-align:center}
.dash-stat .val{font-family:var(--font-head);font-size:2rem;color:var(--accent);font-weight:700}
.dash-stat .lbl{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-top:4px}
@media(max-width:960px){.commitments,.pillars-map,.stack-diagram{grid-template-columns:1fr}.dash-grid{grid-template-columns:repeat(2,1fr)}}
/* ---- PART 4 ADDENDUM ---- */
.loc-block{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;padding:56px 0;border-bottom:1px solid var(--line)}
.loc-block:last-of-type{border-bottom:0}
.loc-block img{border-radius:var(--radius);width:100%;height:340px;object-fit:cover}
.loc-block .addr{color:var(--muted);font-size:.9rem;margin-top:14px;border-left:2px solid var(--accent);padding-left:14px}
.loc-block.flip img{order:2}
.people{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:30px}
.person .ph,.consent-tile{aspect-ratio:1;border:1px dashed var(--line);border-radius:var(--radius);background:var(--panel);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.8rem;text-align:center;padding:10px}
.consent-tile{aspect-ratio:auto;height:90px}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:20px}
.person h3{font-size:1rem;margin-top:12px} .person p{color:var(--muted);font-size:.85rem;margin-top:4px}
.news-list{margin-top:30px}
.news-item{display:flex;gap:24px;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line)}
.news-item .date{font-family:var(--font-head);color:var(--accent);font-size:.85rem;min-width:110px}
.news-item h3{font-size:1.05rem} .news-item p{color:var(--muted);font-size:.9rem;margin-top:4px}
.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:start}
.contact-aside .card{margin-bottom:16px}
@media(max-width:960px){.loc-block,.loc-block.flip,.contact-grid{grid-template-columns:1fr}.loc-block.flip img{order:0}.people,.tiles{grid-template-columns:repeat(2,1fr)}}
/* ---- REVISION ADDENDUM: futuristic nav + factory CSS art ---- */
.nav::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);background-size:200% 100%;animation:scan 6s linear infinite;opacity:.75}
@keyframes scan{0%{background-position:200% 0}100%{background-position:-200% 0}}
.nav-links a{position:relative;text-transform:uppercase;font-size:.78rem;letter-spacing:.14em;padding:8px 2px}
.nav-links a::before{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.nav-links a::after{content:"";position:absolute;left:-10px;top:50%;width:5px;height:5px;background:var(--accent);transform:translateY(-50%) rotate(45deg);opacity:0;transition:opacity .3s}
.nav-links a:hover::before,.nav-links a.active::before{transform:scaleX(1)}
.nav-links a:hover::after,.nav-links a.active::after{opacity:1}
.nav-links a:hover{color:var(--text);text-shadow:0 0 14px color-mix(in srgb,var(--accent) 55%,transparent)}
.nav-links a.active{color:var(--accent)}
.status-chip{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.status-chip .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:pulse 1.8s infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 55%,transparent)}50%{box-shadow:0 0 0 7px transparent}}
.gridfloor{position:absolute;left:0;right:0;bottom:0;height:46%;overflow:hidden;pointer-events:none;opacity:.45;-webkit-mask-image:linear-gradient(180deg,transparent,#000 35%);mask-image:linear-gradient(180deg,transparent,#000 35%)}
.gridfloor::before{content:"";position:absolute;inset:-60% -60% 0;background:repeating-linear-gradient(90deg,color-mix(in srgb,var(--accent) 40%,transparent) 0 1px,transparent 1px 80px),repeating-linear-gradient(0deg,color-mix(in srgb,var(--accent) 40%,transparent) 0 1px,transparent 1px 80px);transform:perspective(600px) rotateX(60deg);transform-origin:bottom;animation:floor 3s linear infinite}
@keyframes floor{to{background-position:0 80px,0 80px}}
.sparks i{position:absolute;bottom:0;width:3px;height:3px;border-radius:50%;background:var(--accent);opacity:0;animation:rise 9s linear infinite}
.sparks i:nth-child(1){left:10%}.sparks i:nth-child(2){left:26%;animation-delay:2s}.sparks i:nth-child(3){left:44%;animation-delay:4s}.sparks i:nth-child(4){left:63%;animation-delay:1s}.sparks i:nth-child(5){left:78%;animation-delay:5.5s}.sparks i:nth-child(6){left:90%;animation-delay:3s}
@keyframes rise{0%{transform:translateY(0);opacity:0}12%{opacity:.9}100%{transform:translateY(-72vh);opacity:0}}
.rack-art{display:flex;gap:14px;justify-content:center;padding:6px 0 18px}
.rack{width:72px;height:200px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(180deg,var(--panel),var(--navy-950));padding:10px 8px;display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden}
.rack::after{content:"";position:absolute;left:0;right:0;top:-40%;height:40%;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--accent) 16%,transparent),transparent);animation:scanline 3.6s linear infinite}
@keyframes scanline{to{top:130%}}
.ru{flex:1;border:1px solid var(--line);border-radius:4px;display:flex;align-items:center;gap:5px;padding:0 6px}
.led{width:4px;height:4px;border-radius:50%;background:var(--accent);animation:blink 1.4s infinite}
.ru:nth-child(2) .led{animation-delay:.25s}.ru:nth-child(3) .led{animation-delay:.5s}.ru:nth-child(4) .led{animation-delay:.75s}.ru:nth-child(5) .led{animation-delay:1s}
.rack:nth-child(2) .led{animation-delay:.6s}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.15}}
.conveyor{position:relative;height:56px;margin:30px 0;border-top:1px dashed var(--line);border-bottom:1px dashed var(--line)}
.conveyor .tk{position:absolute;top:50%;width:10px;height:10px;margin-top:-5px;background:var(--accent);transform:rotate(45deg);box-shadow:0 0 12px var(--accent);animation:ride 5s linear infinite}
.tk:nth-child(2){animation-delay:1.25s}.tk:nth-child(3){animation-delay:2.5s}.tk:nth-child(4){animation-delay:3.75s}
@keyframes ride{from{left:-2%}to{left:102%}}
.conveyor .end{position:absolute;top:-20px;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.end.l{left:0}.end.r{right:0}
.art-row{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;margin:34px 0}
.loop-wrap{position:relative;width:150px;height:150px;margin:0 auto}
.loop{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,var(--accent) 0 12%,transparent 12% 50%,var(--accent) 50% 62%,transparent 62%);animation:spin 4s linear infinite;-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 10px),#000 calc(100% - 9px));mask:radial-gradient(farthest-side,transparent calc(100% - 10px),#000 calc(100% - 9px))}
@keyframes spin{to{transform:rotate(360deg)}}
.loop-label{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-head);font-size:.78rem;color:var(--accent);text-align:center}
.chip-wrap{width:150px;margin:0 auto;padding:12px;background:repeating-linear-gradient(90deg,var(--accent) 0 2px,transparent 2px 14px) top center/62% 5px no-repeat,repeating-linear-gradient(90deg,var(--accent) 0 2px,transparent 2px 14px) bottom center/62% 5px no-repeat,repeating-linear-gradient(0deg,var(--accent) 0 2px,transparent 2px 14px) left center/5px 62% no-repeat,repeating-linear-gradient(0deg,var(--accent) 0 2px,transparent 2px 14px) right center/5px 62% no-repeat}
.chip{position:relative;width:100%;aspect-ratio:1;border:1px solid var(--accent);border-radius:12px;background:var(--panel);box-shadow:0 0 30px color-mix(in srgb,var(--accent) 22%,transparent)}
.chip::before{content:"";position:absolute;inset:20%;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--accent) 10%,transparent);animation:corepulse 2.4s ease-in-out infinite}
.chip::after{content:"GB300";position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-head);font-size:.8rem;color:var(--accent)}
@keyframes corepulse{50%{box-shadow:inset 0 0 26px color-mix(in srgb,var(--accent) 45%,transparent)}}
@media(max-width:960px){.art-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.nav::after,.gridfloor::before,.sparks i,.rack::after,.led,.tk,.loop,.chip::before,.status-chip .dot{animation:none!important}}
/* ---- NAV PILL REVISION: rounded-rect links + animated EN/ID switch ---- */
.nav-links{gap:8px;align-items:center}
.nav-links a{padding:7px 12px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel) 55%,transparent);transition:border-color .25s,background .25s,color .25s,transform .2s,box-shadow .25s}
.nav-links a::before,.nav-links a::after{content:none}
.nav-links a:hover{transform:translateY(-1px);border-color:var(--accent);color:var(--text);text-shadow:none;box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 18%,transparent)}
.nav-links a.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}
.nav-actions .btn-sm{border-radius:10px}
.lang-switch{position:relative;display:inline-flex;align-items:center;width:68px;height:28px;margin-left:6px;padding:0;border:1px solid var(--line);border-radius:999px;background:var(--navy-950);cursor:pointer;flex:0 0 auto}
[data-theme="light"] .lang-switch{background:#E8EDF3}
.ls-knob{position:absolute;top:3px;left:3px;width:30px;height:20px;border-radius:999px;background:var(--accent);box-shadow:0 0 10px color-mix(in srgb,var(--accent) 45%,transparent);transition:transform .35s cubic-bezier(.45,0,.2,1)}
.lang-switch.is-id .ls-knob{transform:translateX(30px)}
.ls-opt{position:relative;z-index:1;flex:1;display:flex;align-items:center;justify-content:center;height:100%;font-size:.66rem;font-weight:700;letter-spacing:.1em;color:var(--muted);transition:color .3s}
.lang-switch:not(.is-id) .ls-en,.lang-switch.is-id .ls-id{color:var(--accent-ink)}
@media(max-width:1080px){.nav-links a{padding:10px 14px}.lang-switch{margin:10px 0 0}}
@media(prefers-reduced-motion:reduce){.ls-knob{transition:none}}
/* ---- MOBILE POLISH ADDENDUM ---- */
body{overflow-x:clip;-webkit-tap-highlight-color:transparent}
@supports(padding:env(safe-area-inset-left)){
.nav-inner{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}}
@media(max-width:1080px){
.nav-actions .btn{display:inline-flex}
.icon-btn{width:36px;height:36px}
.nav-links{padding:16px 24px 28px;max-height:calc(100vh - 52px);max-height:calc(100dvh - 52px);overflow-y:auto}
.nav-links a{display:block;text-align:left}}
@media(max-width:960px){
.section{padding:64px 0}
.page-hero{padding:110px 0 48px}
.hero-inner{padding:110px 20px 64px}
.hero-metrics{gap:26px}
.split{gap:28px}
.loc-block{padding:32px 0;gap:24px}
.loc-block img,.gallery img,.wide{height:240px}
.dashboard-mock{padding:16px}}
@media(max-width:640px){
.table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
.funnel-step{width:100%!important;margin:0}
.lead{font-size:1.02rem}}
@media(max-width:560px){
.people{grid-template-columns:1fr}
.hero-metrics{gap:18px}
.hm-num{font-size:1.5rem}
.steps{gap:18px}
.step{border-top:0;border-left:2px solid var(--line);padding:0 0 0 16px}
.step::before{left:-6px;top:4px}}
@media(max-width:400px){
.nav-actions .btn-sm{padding:7px 10px;font-size:.72rem}
.brand{font-size:.82rem}}
/* ---- FOOTER 3-COLUMN OVERRIDE ---- */
.footer-grid{grid-template-columns:1.6fr 1fr 1fr}
@media(max-width:960px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr}}

/* ==== MOBILE NAV FIX ONLY - desktop tidak diubah ==== */
@media(max-width:1080px){
  .nav-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    height:64px;
    flex-wrap:nowrap;
  }
  .brand{ order:1; flex:0 0 auto; }

  /* Semua kontrol header tetap di atas, bersama logo */
  .nav-actions{
    order:2;
    display:flex !important;
    align-items:center;
    gap:10px;
    margin-left:auto;
    flex:0 0 auto;
    position:static !important;
  }
  .nav-actions .icon-btn,
  .nav-actions .lang-switch{
    display:inline-flex !important;
  }

  /* Drawer - hidden by default, tampil saat .open */
  .nav-links{
    position:fixed !important;
    top:64px;
    left:0;
    right:0;
    bottom:0;
    background:var(--bg);
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:14px !important;
    padding:32px 20px 40px !important;
    overflow-y:auto;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    z-index:59;
    display:none !important; /* default hidden */
  }
  .nav-links.open{
    display:flex !important; /* tampil saat burger diklik */
  }

  /* Kotak per link SAMA BESAR */
  .nav-links a{
    display:flex !important;
    align-items:center;
    justify-content:center;
    text-align:center;
    width:100% !important;
    max-width:340px !important;
    min-width:260px;
    min-height:52px;
    padding:14px 22px !important;
    font-size:.88rem !important;
    letter-spacing:.12em;
    box-sizing:border-box;
  }
}

@media(max-width:400px){
  .nav-links a{
    max-width:92vw !important;
    min-width:0 !important;
    width:92vw !important;
  }
}

