/* Bharat Robotics — base theme. Moved unchanged from the original index.html (both <style> blocks). Do not edit; add new rules to br-ext.css. */
:root{
  --carbon:#0a0a0c;
  --panel:#16161d;
  --steel:#b0b0bc;
  --dim:#7b7b88;
  --bone:#f2f0ea;
  --ember:#ff6a00;
  --ember-hi:#ffc46b;
  --neon:#46ffd4;
  --line:rgba(242,240,234,.12);
  --disp:'Chakra Petch', sans-serif;
  --body:'Space Grotesk', sans-serif;
  --mono:'IBM Plex Mono', monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{font-size:16px}
body{background:var(--carbon);color:var(--bone);font-family:var(--body);font-weight:400;overflow-x:hidden;cursor:none}
@media (pointer:coarse){ body{cursor:auto} }
::selection{background:var(--ember);color:var(--carbon)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

#gl{position:fixed;inset:0;width:100%;height:100%;z-index:0;display:block}
.veil{position:fixed;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse at center, transparent 58%, rgba(0,0,0,.5) 100%)}
.scan{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.035;
  background:repeating-linear-gradient(0deg, transparent 0 3px, rgba(242,240,234,.5) 3px 4px);mix-blend-mode:overlay}

/* ---------- HUD ---------- */
.hud{position:fixed;z-index:6;pointer-events:none;font-family:var(--mono);font-size:13px;letter-spacing:.12em;color:var(--dim);text-transform:uppercase;line-height:1.9}
.hud b{color:var(--ember);font-weight:500}
.hud-corner{position:fixed;width:30px;height:30px;z-index:6;pointer-events:none;opacity:.6}
.hud-corner::before,.hud-corner::after{content:"";position:absolute;background:var(--dim)}
.hud-corner::before{width:100%;height:1px}
.hud-corner::after{width:1px;height:100%}
.c-tl{top:14px;left:14px}.c-tr{top:14px;right:14px;transform:scaleX(-1)}
.c-bl{bottom:14px;left:14px;transform:scaleY(-1)}.c-br{bottom:14px;right:14px;transform:scale(-1)}
.hud-bl{bottom:24px;left:56px}
.hud-br{bottom:24px;right:56px;text-align:right}
@media(max-width:760px){.hud-bl{left:20px;bottom:12px;font-size:11px}.hud-br{display:none}.hud-corner{display:none}}

#tcp{position:fixed;z-index:2;pointer-events:none;width:58px;height:58px;transform:translate(-50%,-50%);opacity:0;transition:opacity .6s}
body.loaded #tcp{opacity:.95}
#tcp .box{position:absolute;inset:0;border:1px solid rgba(255,106,0,.6)}
#tcp .box::before,#tcp .box::after{content:"";position:absolute;background:var(--ember)}
#tcp .box::before{top:50%;left:-9px;width:7px;height:1px}
#tcp .box::after{top:50%;right:-9px;width:7px;height:1px}
#tcp .lbl{position:absolute;top:-22px;left:0;font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--ember)}
@media(max-width:760px){#tcp{display:none}}

/* ---------- header: brand hierarchy fixed ---------- */
header{position:fixed;top:0;left:0;right:0;z-index:8;display:flex;align-items:center;justify-content:space-between;padding:10px 56px;
  background:rgba(10,10,12,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
@media(max-width:760px){header{padding:14px 20px}}
.brand{display:flex;flex-direction:row;align-items:center;gap:15px;text-decoration:none;color:var(--bone)}
.brand-logo{height:72px;width:auto;flex:none;display:block;filter:drop-shadow(0 2px 7px rgba(0,0,0,.5))}
.brand-text{display:flex;flex-direction:column;gap:3px}
@media(max-width:760px){.brand-logo{height:54px}.brand{gap:11px}}
.brand .en{font-family:var(--disp);font-weight:700;font-size:clamp(22px,2.9vw,31px);letter-spacing:.14em;line-height:1.15}
.brand .en b{color:var(--ember);font-weight:700}
.brand .sub{font-family:var(--disp);font-weight:600;font-size:clamp(12px,1.35vw,14.5px);letter-spacing:.3em;color:var(--steel);text-transform:uppercase;margin-top:2px}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.25}}
.nav{display:flex;gap:4px;flex-wrap:nowrap;pointer-events:auto}
.nav a{font-family:var(--mono);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;
  color:var(--steel);padding:10px 14px;border:1px solid transparent;white-space:nowrap;
  transition:color .25s,text-shadow .25s,border-color .25s,background .25s}
.nav a:hover{color:var(--neon);text-shadow:0 0 14px rgba(70,255,212,.9),0 0 30px rgba(70,255,212,.4)}
.nav a.act{color:var(--neon);border-color:rgba(70,255,212,.45);background:rgba(70,255,212,.07);
  text-shadow:0 0 12px rgba(70,255,212,.85)}
@media(max-width:960px){
  header{flex-direction:column;align-items:flex-start;gap:8px;padding:12px 20px}
  .nav{width:100%;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .nav::-webkit-scrollbar{display:none}
  .nav a{flex:0 0 auto;font-size:11.5px;padding:8px 10px}
}

/* ---------- layout ---------- */
main{position:relative;z-index:3}
section{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:130px 56px;position:relative}
@media(max-width:760px){section{min-height:auto;padding:88px 20px}}
.eyebrow{font-family:var(--mono);font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:var(--ember);margin-bottom:26px;display:flex;align-items:center;gap:14px}
.eyebrow::before{content:"";width:36px;height:1px;background:var(--ember)}
@media(max-width:760px){.eyebrow{font-size:11.5px;letter-spacing:.22em}}

/* ---------- hero: rebalanced hierarchy ---------- */
#hero{min-height:100vh;justify-content:flex-end;padding-bottom:12vh}
@media(max-width:760px){#hero{padding-bottom:9vh}}
.h1{font-family:var(--disp);font-weight:700;font-size:clamp(25px,4.4vw,56px);line-height:1.16;letter-spacing:.01em;text-transform:uppercase;max-width:26ch}
.h1 .line{display:block;overflow:hidden}
.h1 .line span{display:inline-block;transform:translateY(112%);transition:transform 1.1s cubic-bezier(.19,1,.22,1)}
body.loaded .h1 .line:nth-child(1) span{transition-delay:.18s}
body.loaded .h1 .line:nth-child(2) span{transition-delay:.32s}
body.loaded .h1 .line span{transform:translateY(0)}
.h1 .amber{color:var(--ember);text-shadow:0 0 32px rgba(255,106,0,.4)}
.hero-fields{margin-top:22px;font-family:var(--mono);font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--dim);
  opacity:0;transition:opacity 1s .55s}
body.loaded .hero-fields{opacity:1}
.hero-fields b{color:var(--neon);font-weight:400}
.hero-sub{margin-top:26px;max-width:620px;color:var(--steel);font-size:clamp(15.5px,1.4vw,18px);line-height:1.85;
  opacity:0;transform:translateY(18px);transition:opacity 1s .72s, transform 1s .72s}
body.loaded .hero-sub{opacity:1;transform:none}
.hero-cta-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:38px;
  opacity:0;transform:translateY(18px);transition:opacity 1s .9s, transform 1s .9s}
body.loaded .hero-cta-row{opacity:1;transform:none}
.btn{display:inline-flex;align-items:center;gap:14px;text-decoration:none;
  font-family:var(--mono);font-size:13px;letter-spacing:.24em;text-transform:uppercase;padding:18px 34px;font-weight:500;
  transition:background .3s,color .3s,border-color .3s}
@media(max-width:760px){.btn{padding:16px 26px;font-size:12px}}
.btn.solid{color:var(--carbon);background:var(--ember)}
.btn.solid:hover{background:var(--ember-hi)}
.btn.ghost{color:var(--bone);border:1px solid rgba(242,240,234,.3)}
.btn.ghost:hover{border-color:var(--neon);color:var(--neon)}
.hint{position:absolute;bottom:44px;right:56px;font-family:var(--mono);font-size:12px;letter-spacing:.24em;color:var(--dim);text-transform:uppercase;
  opacity:0;transition:opacity 1s 1.3s}
body.loaded .hint{opacity:.9}
.hint b{color:var(--neon);font-weight:500}
@media(max-width:760px){.hint{display:none}}

.h2{font-family:var(--disp);font-weight:700;font-size:clamp(21px,3.9vw,46px);line-height:1.24;text-transform:uppercase;letter-spacing:.02em;max-width:22ch}
.lede{margin-top:26px;max-width:660px;color:var(--steel);font-size:clamp(15.5px,1.4vw,18px);line-height:1.9}
.lede strong{color:var(--bone);font-weight:600}

.rv{opacity:0;transition:opacity 1s cubic-bezier(.19,1,.22,1), transform 1s cubic-bezier(.19,1,.22,1)}
.rv-up{transform:translateY(38px)}
.rv-left{transform:translateX(-46px)}
.rv-right{transform:translateX(46px)}
.rv-scale{transform:scale(.92)}
.rv.in{opacity:1;transform:none}

/* ---------- fluorescent ticker ---------- */
.ticker{position:relative;z-index:3;border-top:1px solid rgba(70,255,212,.25);border-bottom:1px solid rgba(70,255,212,.25);
  background:rgba(10,10,12,.88);overflow:hidden;padding:22px 0;white-space:nowrap}
.ticker .track{display:inline-block;animation:tick 32s linear infinite}
.ticker:hover .track{animation-play-state:paused}
.ticker span{display:inline-block;font-family:var(--disp);font-weight:600;font-size:16px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--bone);padding:0 30px;transition:color .3s, transform .3s, text-shadow .3s}
.ticker span:hover{color:var(--neon);transform:translateY(-4px);text-shadow:0 0 22px rgba(70,255,212,.8)}
.ticker b{color:var(--neon);font-weight:600;text-shadow:0 0 14px rgba(70,255,212,.6)}
@media(max-width:760px){.ticker span{font-size:13.5px;padding:0 20px}}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion: reduce){.ticker .track{animation:none}}

/* ---------- why chips ---------- */
.why{margin-top:52px;display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:920px}
@media(max-width:700px){.why{grid-template-columns:1fr}}
.chip{border:1px solid var(--line);background:rgba(22,22,29,.92);padding:28px 26px;transition:border-color .35s, transform .35s}
.chip:hover{border-color:rgba(255,106,0,.55);transform:translateY(-4px)}
.chip h3{font-family:var(--disp);font-weight:600;font-size:16px;letter-spacing:.05em;text-transform:uppercase;line-height:1.55;color:var(--bone)}
.chip p{margin-top:12px;color:var(--steel);font-size:15.5px;line-height:1.8}

/* ---------- expertise three-pillar overview ---------- */
.pillars{margin-top:48px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:900px){.pillars{grid-template-columns:1fr}}
.pillar{border:1px solid var(--line);background:rgba(22,22,29,.92);padding:34px 30px 38px;position:relative;overflow:hidden;
  transition:transform .4s,border-color .4s}
.pillar::after{content:"";position:absolute;left:0;top:0;width:100%;height:2px;
  background:linear-gradient(90deg,var(--ember),var(--neon));transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.19,1,.22,1)}
.pillar:hover{transform:translateY(-6px);border-color:rgba(255,106,0,.55)}
.pillar:hover::after{transform:scaleX(1)}
.pillar .p-ico{font-size:24px;color:var(--ember);text-shadow:0 0 18px rgba(255,106,0,.6)}
.pillar h3{font-family:var(--disp);font-weight:700;font-size:clamp(17px,1.8vw,21px);letter-spacing:.04em;text-transform:uppercase;line-height:1.4;margin:18px 0 14px;color:var(--bone)}
.pillar p{color:var(--steel);font-size:15.5px;line-height:1.85}
.sub-h{margin-top:60px;font-family:var(--mono);font-size:13px;letter-spacing:.28em;text-transform:uppercase;color:var(--neon);
  text-shadow:0 0 12px rgba(70,255,212,.5)}

/* ---------- expertise tabs (mobile: horizontal scroll) ---------- */
.tabs{margin-top:28px;display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:760px){
  .tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:8px;scrollbar-width:none}
  .tabs::-webkit-scrollbar{display:none}
}
.tab{flex:0 0 auto;background:rgba(22,22,29,.85);border:1px solid var(--line);color:var(--steel);
  font-family:var(--mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;
  padding:15px 22px;cursor:none;transition:all .3s;display:flex;align-items:center;gap:10px}
@media(pointer:coarse){.tab{cursor:pointer}}
.tab i{width:6px;height:6px;background:var(--dim);border-radius:50%;transition:background .3s}
.tab:hover{color:var(--bone);border-color:rgba(242,240,234,.3)}
.tab.act{background:var(--ember);border-color:var(--ember);color:var(--carbon);font-weight:500}
.tab.act i{background:var(--carbon)}
.panels{margin-top:32px;position:relative}
.panel{display:none;grid-template-columns:repeat(2,1fr);gap:16px}
.panel.act{display:grid}
@media(max-width:820px){.panel{grid-template-columns:1fr}}
.svc{border:1px solid var(--line);background:rgba(22,22,29,.92);
  padding:30px 28px;position:relative}
/* svc entrance is handled by the assembly rig system below */
.svc::after{content:"";position:absolute;left:0;top:0;width:2px;height:100%;
  background:linear-gradient(var(--ember),var(--ember-hi));transform:scaleY(0);transform-origin:top;transition:transform .45s}
.svc:hover::after{transform:scaleY(1)}
.svc .id{font-family:var(--mono);font-size:12px;color:var(--dim);letter-spacing:.2em}
.svc h4{font-family:var(--disp);font-weight:600;font-size:17px;letter-spacing:.03em;margin:16px 0 12px;text-transform:uppercase;line-height:1.5;color:var(--bone)}
.svc p{color:var(--steel);font-size:15.5px;line-height:1.85}

/* ---------- end-to-end services ---------- */
.serv{margin-top:52px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:1020px){.serv{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.serv{grid-template-columns:1fr}}
.sv{border:1px solid var(--line);background:rgba(22,22,29,.92);padding:32px 26px;transition:transform .35s,border-color .35s}
.sv:hover{transform:translateY(-5px);border-color:rgba(70,255,212,.5)}
.sv .glyph{font-family:var(--mono);font-size:13px;color:var(--neon);letter-spacing:.2em}
.sv h3{font-family:var(--disp);font-weight:600;font-size:16.5px;letter-spacing:.04em;text-transform:uppercase;line-height:1.5;margin:18px 0 12px}
.sv p{color:var(--steel);font-size:15px;line-height:1.8}

/* ---------- IoT solutions: solid, readable ---------- */
#iot::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(10,10,12,.35), rgba(10,10,12,.75));pointer-events:none;z-index:-1}
.sols{margin-top:52px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:900px){.sols{grid-template-columns:1fr}}
.sol{border:1px solid var(--line);background:#16161d;padding:38px 32px 44px;position:relative;transition:transform .4s,border-color .4s}
.sol:hover{transform:translateY(-6px);border-color:rgba(255,106,0,.6)}
.sol .num{font-family:var(--mono);font-size:12.5px;color:var(--ember);letter-spacing:.22em}
.sol h3{font-family:var(--disp);font-weight:700;font-size:clamp(17px,1.7vw,20px);letter-spacing:.03em;text-transform:uppercase;line-height:1.5;margin:20px 0 14px;color:var(--bone)}
.sol p{color:var(--steel);font-size:16px;line-height:1.85}
.sol ul{margin-top:18px;list-style:none}
.sol li{color:var(--steel);font-size:15px;line-height:2.15;padding-left:20px;position:relative}
.sol li::before{content:"▸";position:absolute;left:0;color:var(--neon);font-size:12px}

/* ---------- stats ---------- */
.stats{margin-top:52px;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}
@media(max-width:900px){.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.stats{grid-template-columns:1fr}}
.stat{background:#101015;padding:44px 30px}
.stat .val{font-family:var(--disp);font-weight:700;font-size:clamp(36px,4.4vw,56px);color:var(--bone)}
.stat .val em{font-style:normal;color:var(--ember)}
.stat .lbl{margin-top:14px;font-family:var(--mono);font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);line-height:1.8}

/* ---------- contact: compact heading + boxed cards ---------- */
#contact{align-items:flex-start}
.mega{font-family:var(--disp);font-weight:700;font-size:clamp(28px,5.6vw,72px);line-height:1.15;text-transform:uppercase;text-decoration:none;color:var(--bone);transition:color .35s;display:inline-block}
.mega .amber{color:var(--ember)}
.mega:hover{color:var(--ember)}
.ccards{margin-top:48px;width:100%;max-width:1180px;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media(max-width:760px){.ccards{grid-template-columns:1fr;gap:18px}}
.ccard{display:block;background:#16161d;border:1px solid var(--line);border-left:3px solid var(--ember);
  padding:30px 30px;text-decoration:none;position:relative;transition:transform .35s,border-color .35s,background .35s}
.ccard:hover{transform:translateY(-4px);border-color:rgba(255,106,0,.6);background:#1b1b23}
.ccard .k{font-family:var(--mono);font-size:14px;letter-spacing:.24em;color:var(--ember);text-transform:uppercase}
.ccard .v{display:block;margin-top:14px;color:var(--bone);font-family:var(--body);font-weight:500;font-size:clamp(15px,1.35vw,18px);line-height:1.65;white-space:nowrap}
.ccard .v.wrap{white-space:normal}
@media(max-width:760px){.ccard .v{white-space:normal}}

/* ---------- footer ---------- */
footer{position:relative;z-index:3;border-top:1px solid var(--line);background:rgba(10,10,12,.94);padding:70px 56px 40px}
@media(max-width:760px){footer{padding:56px 20px 32px}}
.fgrid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:44px}
@media(max-width:980px){.fgrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.fgrid{grid-template-columns:1fr}}
.fcol h5{font-family:var(--disp);font-weight:600;font-size:17px;letter-spacing:.16em;text-transform:uppercase;color:var(--ember);margin-bottom:24px}
.fcol ul{list-style:none}
.fcol li{color:var(--steel);font-size:16px;line-height:2.2}
.fcol a{color:var(--steel);text-decoration:none;transition:color .3s}
.fcol a:hover{color:var(--neon)}
.fcol .fb{font-family:var(--disp);font-weight:700;font-size:20px;letter-spacing:.14em;color:var(--bone);margin-bottom:6px}
.fcol .fb2{font-family:var(--disp);font-weight:500;font-size:12px;letter-spacing:.3em;color:var(--dim);text-transform:uppercase;margin-bottom:16px}
.fcol .ftxt{color:var(--steel);font-size:16.5px;line-height:1.9;max-width:34ch}
.fbase{margin-top:56px;padding-top:26px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--dim);text-transform:uppercase}

/* ---------- assembly rig system ---------- */
.pl{opacity:0;position:relative}
.go .pl-l,.panels.in .panel.act .pl-l{animation:placeL 1.05s cubic-bezier(.22,1.15,.34,1) forwards;animation-delay:var(--d,0s)}
.go .pl-r,.panels.in .panel.act .pl-r{animation:placeR 1.05s cubic-bezier(.22,1.15,.34,1) forwards;animation-delay:var(--d,0s)}
.go .pl-t,.panels.in .panel.act .pl-t{animation:placeT 1.1s cubic-bezier(.22,1.15,.34,1) forwards;animation-delay:var(--d,0s)}
@keyframes placeL{
  0%{opacity:0;transform:translate(-72vw,42px) rotate(-5deg)}
  15%{opacity:1}
  55%{transform:translate(14px,-14px) rotate(1.8deg)}
  78%{transform:translate(-5px,6px) rotate(-.7deg)}
  100%{opacity:1;transform:none}}
@keyframes placeR{
  0%{opacity:0;transform:translate(72vw,42px) rotate(5deg)}
  15%{opacity:1}
  55%{transform:translate(-14px,-14px) rotate(-1.8deg)}
  78%{transform:translate(5px,6px) rotate(.7deg)}
  100%{opacity:1;transform:none}}
@keyframes placeT{
  0%{opacity:0;transform:translateY(-90vh) rotate(2.5deg)}
  15%{opacity:1}
  60%{transform:translateY(16px) rotate(-1.2deg)}
  82%{transform:translateY(-7px)}
  100%{opacity:1;transform:none}}
.pl.locked::before{content:"";position:absolute;inset:0;pointer-events:none;
  animation:lockFlash .55s ease-out forwards}
@keyframes lockFlash{
  0%{box-shadow:0 0 0 2px var(--ember), 0 0 46px 6px rgba(255,106,0,.55), inset 0 0 34px rgba(255,106,0,.3)}
  100%{box-shadow:0 0 0 0 rgba(255,106,0,0), 0 0 0 0 rgba(255,106,0,0), inset 0 0 0 rgba(255,106,0,0)}}

/* gripper arms */
.rig{position:absolute;pointer-events:none;z-index:4}
.r-l,.r-r{top:50%;display:flex;align-items:center}
.r-l{right:100%;transform:translateY(-50%)}
.r-r{left:100%;transform:translateY(-50%);flex-direction:row-reverse}
.r-l .bar,.r-r .bar{width:120vw;height:9px;background:linear-gradient(180deg,#3c3c48,#5c5c6e,#26262f);flex:none}
.r-l .pist,.r-r .pist{width:44px;height:17px;background:linear-gradient(180deg,#4c4c5a,#70707f,#34343e);border:1px solid #1a1a22;flex:none}
.claw{position:relative;width:15px;height:46px;flex:none}
.claw i{position:absolute;width:16px;height:13px;background:#5c5c6e;border:1px solid #20202a;transition:transform .35s}
.claw i::after{content:"";position:absolute;top:2px;width:4px;height:9px;background:var(--ember)}
.r-l .claw i::after{right:-3px}
.r-r .claw i::after{left:-3px}
.claw i:first-child{top:0}
.claw i:last-child{bottom:0}
.locked .r-l .claw i:first-child{transform:translateY(-9px) rotate(-22deg)}
.locked .r-l .claw i:last-child{transform:translateY(9px) rotate(22deg)}
.locked .r-r .claw i:first-child{transform:translateY(-9px) rotate(22deg)}
.locked .r-r .claw i:last-child{transform:translateY(9px) rotate(-22deg)}
.locked .r-l{animation:rigOutL .7s ease-in .3s forwards}
.locked .r-r{animation:rigOutR .7s ease-in .3s forwards}
@keyframes rigOutL{to{transform:translate(-55vw,-50%);opacity:0}}
@keyframes rigOutR{to{transform:translate(55vw,-50%);opacity:0}}
/* overhead crane variant */
.r-t{left:50%;bottom:100%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center}
.r-t .bar{width:9px;height:120vh;background:linear-gradient(90deg,#3c3c48,#5c5c6e,#26262f);flex:none}
.r-t .pist{width:17px;height:40px;background:linear-gradient(90deg,#4c4c5a,#70707f,#34343e);border:1px solid #1a1a22;flex:none}
.r-t .claw{width:46px;height:15px}
.r-t .claw i{width:13px;height:16px;top:0;bottom:auto}
.r-t .claw i:first-child{left:0}
.r-t .claw i:last-child{left:auto;right:0}
.r-t .claw i::after{top:auto;bottom:-3px;left:2px;width:9px;height:4px;right:auto}
.locked .r-t .claw i:first-child{transform:translateX(-9px) rotate(-22deg)}
.locked .r-t .claw i:last-child{transform:translateX(9px) rotate(22deg)}
.locked .r-t{animation:rigOutT .7s ease-in .3s forwards}
@keyframes rigOutT{to{transform:translate(-50%,-80vh);opacity:0}}

/* ---------- universal hover glow ---------- */
main p,main li,.stat .lbl,.ccard .v,footer li,footer .ftxt,.hero-fields{transition:color .25s,text-shadow .25s}
main p:hover,main li:hover,.stat .lbl:hover,.ccard .v:hover,footer li:hover,footer .ftxt:hover,.hero-fields:hover{
  color:#ffffff;text-shadow:0 0 12px rgba(70,255,212,.7),0 0 28px rgba(70,255,212,.35)}
.h2,.svc h4,.sol h3,.sv h3,.chip h3,.stat .val,.fcol h5,.svc .id,.sol .num,.sv .glyph,.brand .en{transition:color .25s,text-shadow .25s}
.h2:hover,.svc h4:hover,.sol h3:hover,.sv h3:hover,.chip h3:hover,.stat .val:hover,.fcol h5:hover,.brand:hover .en{
  color:var(--ember-hi);text-shadow:0 0 18px rgba(255,140,40,.85),0 0 40px rgba(255,106,0,.4)}
.svc .id:hover,.sol .num:hover,.sv .glyph:hover{color:var(--neon);text-shadow:0 0 14px rgba(70,255,212,.8)}
.eyebrow{transition:text-shadow .3s}
.eyebrow:hover{text-shadow:0 0 14px rgba(255,106,0,.9)}
.h1 .line span:hover{color:var(--ember-hi);text-shadow:0 0 30px rgba(255,140,40,.7)}
.mega:hover{text-shadow:0 0 34px rgba(255,106,0,.55)}
.ccard:hover .k{text-shadow:0 0 12px rgba(255,106,0,.8)}

/* ---------- micro telemetry (follows the arm) ---------- */
#tcp .tel{position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);
  font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;white-space:nowrap;
  color:var(--neon);text-shadow:0 0 8px rgba(70,255,212,.6);opacity:.9}

/* ---------- contact section effects ---------- */
.status{display:inline-flex;align-items:center;gap:12px;margin:0 0 28px;
  font-family:var(--mono);font-size:13px;letter-spacing:.22em;color:var(--neon);text-transform:uppercase;
  border:1px solid rgba(70,255,212,.4);background:rgba(70,255,212,.06);padding:13px 24px;
  box-shadow:0 0 26px rgba(70,255,212,.14), inset 0 0 18px rgba(70,255,212,.05)}
.status i{width:9px;height:9px;border-radius:50%;background:var(--neon);box-shadow:0 0 14px var(--neon);animation:blink 1.6s infinite}
.mega .amber{animation:amberPulse 3.2s ease-in-out infinite}
@keyframes amberPulse{
  0%,100%{text-shadow:0 0 16px rgba(255,106,0,.3)}
  50%{text-shadow:0 0 44px rgba(255,106,0,.85),0 0 84px rgba(255,106,0,.35)}}
.mega::after{content:"";display:block;height:3px;margin-top:20px;width:min(420px,60%);
  background:linear-gradient(90deg,var(--ember),var(--neon));transform:scaleX(0);transform-origin:left;
  transition:transform 1.2s cubic-bezier(.19,1,.22,1) .5s;box-shadow:0 0 16px rgba(255,106,0,.5)}
.mega.in::after{transform:scaleX(1)}
.circuit{position:absolute;right:2%;top:8%;width:min(430px,38vw);height:78%;z-index:-1;pointer-events:none}
@media(max-width:900px){.circuit{display:none}}
.circuit .trace{fill:none;stroke:rgba(70,255,212,.16);stroke-width:1.5}
.circuit .node{fill:rgba(70,255,212,.4)}
.circuit .pulse{fill:none;stroke:var(--neon);stroke-width:2;stroke-linecap:round;
  stroke-dasharray:14 340;animation:pulseTravel 4.5s linear infinite;
  filter:drop-shadow(0 0 6px rgba(70,255,212,.9))}
.circuit .pulse.p2{animation-duration:6s;animation-delay:1.2s;stroke:var(--ember);
  filter:drop-shadow(0 0 6px rgba(255,106,0,.9))}
.circuit .pulse.p3{animation-duration:5.2s;animation-delay:2.1s}
@keyframes pulseTravel{to{stroke-dashoffset:-354}}
.ccard .sweep{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.ccard .sweep::after{content:"";position:absolute;top:0;left:-45%;width:22%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(70,255,212,.22),transparent);
  transform:skewX(-18deg);transition:left .65s ease}
.ccard:hover .sweep::after{left:125%}

/* ---------- social icon rail (fluorescent brand colors) ---------- */
.socials{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
.soc{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;
  border:1px solid var(--soc-c);background:rgba(22,22,29,.92);text-decoration:none;
  color:var(--soc-c);box-shadow:0 0 16px var(--soc-glow), inset 0 0 12px rgba(0,0,0,.4);
  transition:transform .3s,box-shadow .3s,background .3s}
.soc svg{width:26px;height:26px;fill:currentColor;filter:drop-shadow(0 0 6px var(--soc-glow))}
.soc:hover{transform:translateY(-6px) scale(1.07);background:rgba(22,22,29,1);
  box-shadow:0 0 26px var(--soc-glow),0 0 60px var(--soc-glow), inset 0 0 12px rgba(0,0,0,.4)}
.soc.soon{opacity:.85}

/* ---------- toast ---------- */
#toast{position:fixed;left:50%;bottom:110px;transform:translate(-50%,20px);z-index:70;
  font-family:var(--mono);font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--carbon);background:var(--ember);padding:13px 24px;pointer-events:none;
  opacity:0;transition:opacity .35s,transform .35s}
#toast.show{opacity:1;transform:translate(-50%,0)}

/* ---------- whatsapp widget ---------- */
#waBtn{position:fixed;right:24px;bottom:74px;z-index:32;width:60px;height:60px;border-radius:50%;
  border:none;background:#25d366;color:#08140b;display:flex;align-items:center;justify-content:center;
  cursor:none;box-shadow:0 6px 26px rgba(37,211,102,.45);
  transition:transform .3s,box-shadow .3s;animation:waPulse 2.6s ease-in-out infinite}
@media(pointer:coarse){#waBtn{cursor:pointer}}
#waBtn:hover{transform:scale(1.08);box-shadow:0 8px 34px rgba(37,211,102,.65)}
@keyframes waPulse{0%,100%{box-shadow:0 6px 26px rgba(37,211,102,.45)}50%{box-shadow:0 6px 26px rgba(37,211,102,.45),0 0 0 12px rgba(37,211,102,.12)}}
@media(min-width:761px){#waBtn{right:40px;bottom:140px}}
#waPanel{position:fixed;right:24px;bottom:146px;z-index:33;width:min(340px,calc(100vw - 40px));
  background:#101015;border:1px solid rgba(37,211,102,.35);box-shadow:0 20px 60px rgba(0,0,0,.6);
  display:flex;flex-direction:column;overflow:hidden;
  opacity:0;visibility:hidden;transform:translateY(18px) scale(.97);
  transition:opacity .35s,visibility .35s,transform .35s cubic-bezier(.19,1,.22,1)}
@media(min-width:761px){#waPanel{right:40px;bottom:214px}}
#waPanel.open{opacity:1;visibility:visible;transform:none}
.wa-head{display:flex;align-items:center;gap:12px;padding:16px 18px;background:#152a1c;border-bottom:1px solid rgba(37,211,102,.25)}
.wa-dot{width:10px;height:10px;border-radius:50%;background:#25d366;box-shadow:0 0 12px #25d366;animation:blink 1.8s infinite;flex:none}
.wa-who{flex:1;min-width:0}
.wa-who b{display:block;font-family:var(--disp);font-weight:600;font-size:14px;letter-spacing:.06em;color:var(--bone)}
.wa-who small{font-family:var(--mono);font-size:10.5px;color:#7fd6a0;letter-spacing:.06em}
#waClose{background:none;border:none;color:var(--steel);font-size:24px;line-height:1;cursor:none;padding:2px 6px;transition:color .25s}
@media(pointer:coarse){#waClose{cursor:pointer}}
#waClose:hover{color:var(--ember)}
.wa-body{padding:18px;display:flex;flex-direction:column;gap:14px;max-height:320px;overflow-y:auto}
.wa-msg{background:#1a1a22;border:1px solid var(--line);border-left:3px solid #25d366;
  padding:14px 16px;font-size:14.5px;line-height:1.7;color:var(--bone);max-width:95%}
.wa-topics{display:flex;flex-direction:column;gap:8px}
.wa-topics button{text-align:left;background:rgba(37,211,102,.07);border:1px solid rgba(37,211,102,.3);
  color:var(--bone);font-family:var(--body);font-size:14px;padding:12px 15px;cursor:none;
  transition:background .25s,border-color .25s,transform .25s}
@media(pointer:coarse){.wa-topics button{cursor:pointer}}
.wa-topics button:hover{background:rgba(37,211,102,.16);border-color:#25d366;transform:translateX(4px)}
.wa-foot{display:flex;gap:8px;padding:14px;border-top:1px solid var(--line);background:#0c0c10}
#waInput{flex:1;min-width:0;background:#1a1a22;border:1px solid var(--line);color:var(--bone);
  font-family:var(--body);font-size:14px;padding:12px 14px;outline:none;transition:border-color .25s}
#waInput:focus{border-color:#25d366}
#waSend{width:46px;background:#25d366;border:none;color:#08140b;font-size:17px;cursor:none;transition:background .25s}
@media(pointer:coarse){#waSend{cursor:pointer}}
#waSend:hover{background:#3ce27c}

/* ---------- preloader ---------- */
#loader{position:fixed;inset:0;z-index:50;background:var(--carbon);
  display:flex;flex-direction:column;justify-content:center;align-items:center;gap:24px;padding:0 20px;text-align:center;
  transition:opacity .8s, visibility .8s}
#loader.done{opacity:0;visibility:hidden}
#loader .lwel{font-family:var(--mono);font-size:clamp(13px,1.8vw,16px);letter-spacing:.42em;color:var(--ember);text-transform:uppercase;margin-bottom:-14px}
#loader .lname{font-family:var(--disp);font-weight:700;font-size:clamp(30px,6vw,56px);letter-spacing:.18em;color:var(--bone);text-transform:uppercase}
#loader .lname b{color:var(--ember)}
#loader .ltag{font-family:var(--mono);font-size:11px;letter-spacing:.26em;color:var(--dim);text-transform:uppercase}
#loader .pct{font-family:var(--disp);font-weight:700;font-size:clamp(54px,10vw,100px);color:var(--bone)}
#loader .pct b{color:var(--ember)}
#loader .log{font-family:var(--mono);font-size:12px;letter-spacing:.18em;color:var(--dim);text-transform:uppercase;height:16px}
#loader .bar{width:min(360px,72vw);height:2px;background:var(--line);position:relative;overflow:hidden}
#loader .bar i{position:absolute;inset:0;background:var(--ember);transform:scaleX(0);transform-origin:left}

/* ---------- cursor ---------- */
.cur-dot,.cur-ring{position:fixed;top:0;left:0;z-index:60;pointer-events:none;border-radius:50%}
.cur-dot{width:5px;height:5px;background:var(--ember);transform:translate(-50%,-50%)}
.cur-ring{width:36px;height:36px;border:1px solid rgba(255,106,0,.55);transform:translate(-50%,-50%);transition:width .25s,height .25s,border-color .25s}
body.cur-hover .cur-ring{width:58px;height:58px;border-color:var(--neon)}
@media(pointer:coarse){.cur-dot,.cur-ring{display:none}}

@media (prefers-reduced-motion: reduce){
  .h1 .line span,.hero-sub,.hero-cta-row,.hero-fields,.rv{transition:none!important;transform:none!important;opacity:1!important}
  .pl{opacity:1!important;animation:none!important}
  .rig{display:none}
  .circuit .pulse,.mega .amber,.status i{animation:none!important}
}

/* ---- second <style> block from the original page ---- */
/* ---------- ambient tech sound ---------- */
#sndBtn{position:fixed;right:51px;bottom:88px;z-index:34;width:38px;height:38px;display:flex;align-items:center;justify-content:center;
  color:var(--dim);background:rgba(10,10,12,.72);border:1px solid var(--line);border-radius:50%;
  backdrop-filter:blur(6px);transition:color .25s,border-color .25s}
#sndBtn:hover{color:var(--neon);border-color:rgba(70,255,212,.45)}
#sndBtn.on{color:var(--ember);border-color:rgba(255,106,0,.5)}
#sndBtn svg{width:17px;height:17px;display:block}
#sndBtn .w{display:none}
#sndBtn.on .w{display:block}
#sndBtn .x{display:block}
#sndBtn.on .x{display:none}
@media(pointer:coarse){#sndBtn{cursor:pointer}}
@media(max-width:760px){#sndBtn{right:37px;bottom:28px;width:34px;height:34px}}
