
:root{
  --red:#d7193f;
  --red-dark:#aa0d2b;
  --ink:#101217;
  --ink-2:#181b22;
  --surface:#f5f6f8;
  --white:#ffffff;
  --muted:#68707d;
  --line:#e3e6eb;
  --teal:#007160;
  --blue:#0898d8;
  --shadow:0 20px 60px rgba(16,18,23,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Segoe UI,Arial,sans-serif;
  color:var(--ink);
  background:var(--white);
  line-height:1.55;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--red)}
.section{padding:92px 0}
.section.alt{background:var(--surface)}
.section.dark{background:linear-gradient(135deg,#0d1015,#1d2129 60%,#301019);color:#fff}
h1,h2,h3{line-height:1.08;margin:0 0 18px}
h1{font-size:clamp(2.7rem,6vw,5.6rem);max-width:980px}
h2{font-size:clamp(2rem,4vw,3.8rem);max-width:900px}
h3{font-size:1.2rem}
p{margin:0 0 18px;color:#3d4551}
.dark p{color:#cfd4dc}
.lead{font-size:clamp(1.05rem,2vw,1.35rem);max-width:780px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:48px;padding:0 22px;border-radius:999px;
  font-weight:800;border:1px solid transparent;transition:.22s ease;
}
.btn.primary{background:var(--red);color:#fff;box-shadow:0 14px 28px rgba(215,25,63,.24)}
.btn.primary:hover{transform:translateY(-2px);background:var(--red-dark)}
.btn.secondary{border-color:#cfd4db;background:#fff;color:var(--ink)}
.btn.secondary:hover{border-color:var(--red);color:var(--red)}
header{
  position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);
  backdrop-filter:blur(14px);border-bottom:1px solid rgba(227,230,235,.8)
}
.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:14px}
.brand img{height:48px;width:auto}
.brand-copy strong{display:block;font-size:1.05rem}
.brand-copy span{display:block;font-size:.72rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.nav-links{display:flex;align-items:center;gap:24px;font-size:.95rem;font-weight:700}
.nav-toggle{display:none;background:none;border:0;font-size:1.5rem}
.hero{
  min-height:760px;color:#fff;display:grid;place-items:center;
  background:
    linear-gradient(110deg,rgba(11,13,18,.96),rgba(21,24,31,.87) 55%,rgba(215,25,63,.46)),
    radial-gradient(circle at 80% 30%,rgba(215,25,63,.55),transparent 28%);
  position:relative;overflow:hidden
}
.hero:after{
  content:"";position:absolute;inset:auto -12% -42% auto;width:760px;height:760px;
  border-radius:50%;background:radial-gradient(circle,rgba(215,25,63,.28),transparent 66%)
}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;position:relative;z-index:2}
.hero p{color:#d8dde5}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-card{
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);
  border-radius:28px;padding:18px;box-shadow:0 30px 80px rgba(0,0,0,.28)
}
.hero-card img{border-radius:18px}
.logo-row{display:flex;align-items:center;gap:24px;margin-bottom:26px}
.logo-row img{height:54px;width:auto;background:#fff;border-radius:10px;padding:8px 12px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:-48px;position:relative;z-index:4}
.stat{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:var(--shadow)}
.stat strong{display:block;font-size:1.65rem;color:var(--red)}
.stat span{font-size:.9rem;color:var(--muted)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 12px 30px rgba(16,18,23,.06)}
.card .icon{font-size:1.7rem;margin-bottom:14px}
.card p{font-size:.96rem}
.flow{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:34px}
.flow .node{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;font-weight:800;box-shadow:0 8px 20px rgba(16,18,23,.06)}
.flow .node.active{background:var(--red);color:#fff;border-color:var(--red)}
.flow .arrow{color:var(--red);font-weight:900}
.module{
  display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;
  padding:34px 0;border-bottom:1px solid var(--line)
}
.module:last-child{border-bottom:0}
.module.reverse .visual{order:2}
.module .visual{background:#0f151d;border-radius:24px;padding:10px;box-shadow:var(--shadow)}
.module .visual img{border-radius:16px}
.module ul{padding-left:20px;color:#3d4551}
.pill{display:inline-flex;padding:7px 11px;border-radius:999px;background:#ffe8ee;color:#9d0f2c;font-weight:800;font-size:.8rem;margin:0 8px 8px 0}
.market{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}
.market-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.market-item{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);padding:18px;border-radius:18px}
.demo-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:18px}
.demo-grid figure{margin:0;background:#111722;border-radius:20px;padding:8px;overflow:hidden}
.demo-grid img{border-radius:14px;height:100%;object-fit:cover}
.contact{
  display:grid;grid-template-columns:1fr .8fr;gap:44px;align-items:center;
  background:linear-gradient(135deg,#111318,#2b1118);border-radius:30px;padding:44px;color:#fff
}
.contact p{color:#d4d8de}
.contact-box{background:#fff;color:var(--ink);border-radius:22px;padding:28px}
.contact-box a{display:block;margin:12px 0;font-weight:800;color:var(--red)}
footer{background:#0c0e12;color:#cdd2db;padding:34px 0}
.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}
.footer-grid img{height:40px;background:#fff;border-radius:8px;padding:6px}
.reveal{opacity:0;transform:translateY(20px);transition:.6s ease}
.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){
  .nav-links{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;border-bottom:1px solid var(--line)}
  .nav-links.open{display:flex}.nav-toggle{display:block}
  .hero{min-height:auto;padding:88px 0}.hero-grid,.module,.market,.contact{grid-template-columns:1fr}
  .module.reverse .visual{order:initial}
  .stats,.grid-3,.grid-4{grid-template-columns:1fr 1fr}
  .demo-grid{grid-template-columns:1fr}
}
@media(max-width:580px){
  .container{width:min(100% - 26px,1180px)}.section{padding:66px 0}
  .stats,.grid-3,.grid-4,.market-list{grid-template-columns:1fr}
  .brand-copy{display:none}.hero-card{padding:8px}
}


/* Animated Digital Twin hero */
.digital-twin{padding:10px;overflow:hidden;background:#07131d;border:1px solid rgba(255,255,255,.15)}
.dt-stage{position:relative;aspect-ratio:16/10;border-radius:20px;overflow:hidden;background:#07131d}
.dt-plant{width:100%;height:100%;object-fit:cover;filter:saturate(.8) brightness(.68) contrast(1.08);transform:scale(1.02)}
.dt-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,194,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(0,194,255,.06) 1px,transparent 1px);background-size:34px 34px;animation:gridDrift 12s linear infinite}
.dt-zone{position:absolute;padding:7px 10px;border:1px solid rgba(0,190,255,.8);background:rgba(4,21,32,.78);backdrop-filter:blur(6px);border-radius:8px;color:#fff;box-shadow:0 0 18px rgba(0,179,255,.28);animation:zoneFloat 4s ease-in-out infinite}
.dt-zone span{display:block;font-size:.55rem;letter-spacing:.12em;color:#76d7ff}.dt-zone strong{font-size:.88rem}
.zone-1{left:18%;top:32%}.zone-2{left:48%;top:58%;animation-delay:.8s}.zone-3{right:14%;top:23%;animation-delay:1.4s}
.dt-alarm{position:absolute;left:9%;bottom:12%;display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid rgba(255,71,96,.85);border-radius:10px;background:rgba(49,8,18,.88);color:#fff;animation:alarmIn 9s ease-in-out infinite}
.dt-alarm small{display:block;color:#ff8192;font-weight:900;letter-spacing:.1em}.dt-alarm strong{font-size:.82rem}
.pulse{width:13px;height:13px;border-radius:50%;background:#ff2949;box-shadow:0 0 0 0 rgba(255,41,73,.7);animation:pulseAlarm 1.4s infinite}
.dt-data-path{position:absolute;height:2px;transform-origin:left;background:linear-gradient(90deg,#00c6ff,rgba(0,198,255,0));box-shadow:0 0 10px #00c6ff;opacity:0;animation:dataTravel 9s ease-in-out infinite}
.path-1{left:29%;bottom:20%;width:38%;transform:rotate(-11deg);animation-delay:1.1s}.path-2{left:58%;bottom:28%;width:25%;transform:rotate(18deg);animation-delay:1.5s}
.dt-specialist{position:absolute;right:4%;bottom:5%;width:29%;opacity:0;transform:translateX(30px);animation:specialistIn 9s ease-in-out infinite}
.dt-phone{background:#0a1722;border:1px solid #1c9bd1;border-radius:16px;padding:10px;box-shadow:0 18px 36px rgba(0,0,0,.4)}
.dt-phone-head{font-size:.55rem;letter-spacing:.12em;color:#6fd8ff;font-weight:900;margin-bottom:7px}
.dt-phone-alert{font-size:.67rem;color:#ff6f83;border:1px solid rgba(255,91,113,.45);background:rgba(255,42,76,.12);padding:6px;border-radius:7px;margin-bottom:6px}
.dt-chat{font-size:.56rem;line-height:1.25;padding:6px 7px;border-radius:7px;margin:5px 0}
.dt-chat.ai{background:#112b3c;color:#d8efff}.dt-chat.user{background:#6b1731;color:#fff;margin-left:24%}
.dt-chat.recommendation{animation:recommendationGlow 2s ease-in-out infinite}
.dt-energy{position:absolute;left:4%;top:5%;width:34%;padding:12px 14px;border-radius:12px;background:rgba(6,28,25,.88);border:1px solid rgba(57,225,170,.65);color:#fff;opacity:0;transform:translateY(-20px);animation:energyIn 9s ease-in-out infinite}
.dt-energy small{display:block;color:#6ff0c0;letter-spacing:.1em;font-weight:900}.dt-energy strong{display:block;font-size:1rem;margin:4px 0}.dt-energy span{font-size:.58rem;color:#bde8db}
.energy-bars{display:flex;align-items:flex-end;gap:4px;height:24px;margin-top:8px}.energy-bars i{display:block;width:12%;background:linear-gradient(#64f0bd,#087864);border-radius:2px;animation:barWave 1.4s ease-in-out infinite}.energy-bars i:nth-child(1){height:35%}.energy-bars i:nth-child(2){height:75%;animation-delay:.15s}.energy-bars i:nth-child(3){height:48%;animation-delay:.3s}.energy-bars i:nth-child(4){height:92%;animation-delay:.45s}.energy-bars i:nth-child(5){height:62%;animation-delay:.6s}
.dt-caption{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(5,10,15,.88);color:#dce7ef;font-size:.55rem;text-transform:uppercase;letter-spacing:.06em}
.dt-caption span{padding:8px;text-align:center;border-right:1px solid rgba(255,255,255,.08)}.dt-caption span:last-child{border:0}
@keyframes gridDrift{to{background-position:34px 34px}}
@keyframes zoneFloat{50%{transform:translateY(-5px);box-shadow:0 0 28px rgba(0,179,255,.45)}}
@keyframes pulseAlarm{70%{box-shadow:0 0 0 13px rgba(255,41,73,0)}100%{box-shadow:0 0 0 0 rgba(255,41,73,0)}}
@keyframes alarmIn{0%,8%,100%{opacity:0;transform:translateY(14px)}15%,54%{opacity:1;transform:none}62%,100%{opacity:0}}
@keyframes dataTravel{0%,17%,100%{opacity:0;clip-path:inset(0 100% 0 0)}25%,45%{opacity:1;clip-path:inset(0 0 0 0)}55%,100%{opacity:0}}
@keyframes specialistIn{0%,28%,100%{opacity:0;transform:translateX(30px)}38%,75%{opacity:1;transform:none}85%,100%{opacity:0}}
@keyframes energyIn{0%,58%,100%{opacity:0;transform:translateY(-20px)}68%,92%{opacity:1;transform:none}}
@keyframes recommendationGlow{50%{box-shadow:0 0 16px rgba(0,198,255,.35)}}
@keyframes barWave{50%{transform:scaleY(.72)}}

/* Energy section */
.energy-highlight{background:linear-gradient(135deg,#071d1a,#0b2c26 62%,#0d1822);color:#fff}
.energy-highlight p{color:#c7ddd7}.energy-highlight-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:44px;align-items:center}
.energy-benefits{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:28px 0}
.energy-benefits div{padding:16px;border:1px solid rgba(106,240,190,.18);background:rgba(255,255,255,.05);border-radius:16px}
.energy-benefits strong{display:block;color:#6ff0c0;margin-bottom:4px}.energy-benefits span{font-size:.87rem;color:#c7ddd7}
.energy-visual{position:relative;background:#08131b;border-radius:26px;padding:10px;box-shadow:0 25px 70px rgba(0,0,0,.35)}
.energy-visual img{border-radius:18px;filter:brightness(.88)}
.energy-kpi{position:absolute;padding:10px 12px;border-radius:12px;background:rgba(7,21,29,.9);border:1px solid rgba(100,240,190,.55);color:#fff;box-shadow:0 10px 25px rgba(0,0,0,.3)}
.energy-kpi small{display:block;color:#9be8cc}.energy-kpi strong{font-size:1.1rem}
.kpi-a{left:4%;top:6%}.kpi-b{right:4%;top:12%}.kpi-c{right:7%;bottom:7%}

@media(max-width:900px){
  .energy-highlight-grid{grid-template-columns:1fr}
  .digital-twin{margin-top:20px}
}
@media(max-width:580px){
  .energy-benefits{grid-template-columns:1fr}
  .dt-zone{display:none}.dt-specialist{width:42%}.dt-energy{width:48%}
  .dt-caption{grid-template-columns:1fr 1fr}
}


/* 3D animated media presentation */
.visual-3d{
  position:relative;
  perspective:1400px;
  transform-style:preserve-3d;
  animation:visualFloat 7s ease-in-out infinite;
  isolation:isolate;
}
.visual-3d:before,
.visual-3d:after{
  content:"";
  position:absolute;
  border-radius:inherit;
  pointer-events:none;
  z-index:-1;
}
.visual-3d:before{
  inset:8% -2% -5% 5%;
  background:linear-gradient(135deg,rgba(8,152,216,.28),rgba(215,25,63,.22));
  filter:blur(22px);
  transform:translateZ(-80px);
  opacity:.72;
}
.visual-3d:after{
  inset:0;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:inset 0 0 40px rgba(255,255,255,.04);
  transform:translateZ(18px);
}
.visual-3d img{
  transform:rotateY(-4deg) rotateX(1.6deg) translateZ(22px);
  transform-origin:center;
  transition:transform .55s ease, filter .55s ease;
  filter:saturate(.96) contrast(1.02);
  box-shadow:0 28px 50px rgba(0,0,0,.22);
}
.visual-3d:hover{
  animation-play-state:paused;
  z-index:5;
}
.visual-3d:hover img{
  transform:rotateY(0deg) rotateX(0deg) translateZ(46px) scale(1.015);
  filter:saturate(1.08) contrast(1.05);
}
.module.reverse .visual-3d img{
  transform:rotateY(4deg) rotateX(1.6deg) translateZ(22px);
}
.module.reverse .visual-3d:hover img{
  transform:rotateY(0deg) rotateX(0deg) translateZ(46px) scale(1.015);
}
.demo-grid .visual-3d:nth-child(2){animation-delay:.8s}
.demo-grid .visual-3d:nth-child(3){animation-delay:1.6s}
@keyframes visualFloat{
  0%,100%{transform:translateY(0) rotateZ(0deg)}
  50%{transform:translateY(-10px) rotateZ(.25deg)}
}

/* Clean app mockup: no browser URL/navigation bars */
.module.reverse .visual img[src*="mobile-specialist-clean"],
.demo-grid img[src*="mobile-specialist-clean"]{
  background:#fff;
  object-fit:contain;
  object-position:top center;
}
.module.reverse .visual:has(img[src*="mobile-specialist-clean"]){
  max-width:430px;
  margin-inline:auto;
  padding:16px;
  border-radius:34px;
  background:
    linear-gradient(#111827,#111827) padding-box,
    linear-gradient(145deg,#31a7ff,#7461ff,#d7193f) border-box;
  border:5px solid transparent;
}
.module.reverse .visual:has(img[src*="mobile-specialist-clean"]) img{
  border-radius:22px;
  max-height:560px;
  width:100%;
}

/* Optional reduced motion accessibility */
@media (prefers-reduced-motion: reduce){
  .visual-3d{animation:none}
  .visual-3d img,.module.reverse .visual-3d img{transform:none}
}

/* Appliance / Edge Computing section */
.appliance-section{background:radial-gradient(circle at 82% 18%,rgba(0,166,255,.13),transparent 28%),linear-gradient(180deg,#fff 0%,#f7f9fb 100%)}
.appliance-hero{margin:34px 0 30px;background:#07121d;border-radius:28px;padding:10px;box-shadow:0 28px 70px rgba(8,18,29,.22);overflow:hidden}
.appliance-hero img{width:100%;border-radius:20px}
.appliance-grid{margin-top:26px}
.appliance-specs{margin-top:28px;padding:24px;border-radius:22px;background:#0c1620;color:#fff;box-shadow:0 18px 40px rgba(8,18,29,.18)}
.appliance-specs p{margin:14px 0 0;color:#c8d2dc;font-size:.93rem}
.appliance-specs .pill{background:rgba(8,152,216,.14);color:#7ed9ff;border:1px solid rgba(8,152,216,.28)}


/* Visible live animation for appliance digital twin */
.appliance-live{
  position:relative;
  overflow:hidden;
  transform:translateZ(0);
  isolation:isolate;
}
.appliance-live img{
  position:relative;
  z-index:1;
  transform:none !important;
  animation:applianceBreath 6s ease-in-out infinite;
}
.live-scan{
  position:absolute;
  z-index:3;
  left:0;right:0;top:-18%;
  height:18%;
  background:linear-gradient(180deg,transparent,rgba(0,196,255,.20),rgba(0,196,255,.72),rgba(0,196,255,.18),transparent);
  filter:blur(1px);
  animation:scanPlant 5.5s linear infinite;
  pointer-events:none;
}
.live-pulse{
  position:absolute;
  z-index:4;
  width:16px;height:16px;border-radius:50%;
  background:#13d98a;
  box-shadow:0 0 0 0 rgba(19,217,138,.75),0 0 18px rgba(19,217,138,.9);
  animation:livePulse 1.7s infinite;
}
.pulse-plc{left:28%;top:58%}
.pulse-edge computing{left:58%;top:58%;animation-delay:.45s}
.pulse-cloud{left:72%;top:20%;animation-delay:.9s;background:#27b7ff;box-shadow:0 0 0 0 rgba(39,183,255,.75),0 0 18px rgba(39,183,255,.9)}
.data-stream{
  position:absolute;
  z-index:4;
  height:3px;
  transform-origin:left center;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(0,194,255,0),#00c2ff,#72e8ff,rgba(0,194,255,0));
  box-shadow:0 0 12px #00c2ff;
  opacity:0;
  animation:streamFlow 3.2s ease-in-out infinite;
}
.stream-a{left:30%;top:57%;width:27%;transform:rotate(-1deg)}
.stream-b{left:58%;top:55%;width:19%;transform:rotate(-42deg);animation-delay:.55s}
.stream-c{left:60%;top:50%;width:31%;transform:rotate(14deg);animation-delay:1.05s}
.live-label{
  position:absolute;
  z-index:5;
  padding:7px 10px;
  border-radius:8px;
  color:#eaf8ff;
  font-size:.72rem;
  font-weight:800;
  background:rgba(3,15,24,.84);
  border:1px solid rgba(0,194,255,.62);
  backdrop-filter:blur(7px);
  box-shadow:0 8px 20px rgba(0,0,0,.28);
  animation:labelFloat 4s ease-in-out infinite;
}
.label-plc{left:17%;top:67%}
.label-edge{left:52%;top:68%;animation-delay:.7s}
.label-cloud{right:7%;top:28%;animation-delay:1.4s}
.live-alarm{
  position:absolute;
  z-index:6;
  left:18%;top:31%;
  padding:8px 11px;
  border-radius:9px;
  background:rgba(74,6,18,.92);
  border:1px solid rgba(255,57,87,.85);
  color:#fff;
  font-size:.76rem;
  font-weight:900;
  box-shadow:0 0 22px rgba(255,42,73,.34);
  animation:alarmCycle 8s ease-in-out infinite;
}
.live-alarm span{
  display:inline-block;
  width:9px;height:9px;border-radius:50%;
  margin-right:7px;
  background:#ff2949;
  animation:alarmDot 1s infinite;
}
@keyframes applianceBreath{
  0%,100%{filter:brightness(.92) saturate(.96);transform:scale(1)}
  50%{filter:brightness(1.03) saturate(1.08);transform:scale(1.006)}
}
@keyframes scanPlant{
  0%{top:-18%;opacity:0}
  8%{opacity:1}
  92%{opacity:1}
  100%{top:100%;opacity:0}
}
@keyframes livePulse{
  0%{transform:scale(.85);box-shadow:0 0 0 0 currentColor}
  70%{transform:scale(1);box-shadow:0 0 0 18px rgba(19,217,138,0)}
  100%{transform:scale(.85);box-shadow:0 0 0 0 rgba(19,217,138,0)}
}
@keyframes streamFlow{
  0%,18%{opacity:0;clip-path:inset(0 100% 0 0)}
  35%,72%{opacity:1;clip-path:inset(0 0 0 0)}
  100%{opacity:0;clip-path:inset(0 0 0 100%)}
}
@keyframes labelFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}
@keyframes alarmCycle{
  0%,8%,100%{opacity:0;transform:translateY(10px) scale(.96)}
  16%,58%{opacity:1;transform:none}
  70%,100%{opacity:0}
}
@keyframes alarmDot{
  50%{box-shadow:0 0 0 8px rgba(255,41,73,0)}
}
@media (max-width:700px){
  .live-label{font-size:.58rem;padding:5px 7px}
  .live-alarm{font-size:.6rem}
}
@media (prefers-reduced-motion: reduce){
  .live-scan,.live-pulse,.data-stream,.live-label,.live-alarm,.appliance-live img{animation:none}
}


/* Mycom-Smart.ai primary branding */
.mycom-brand{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
}
.mycom-wordmark,
.hero-wordmark,
.footer-wordmark{
  display:inline-flex;
  align-items:baseline;
  gap:0;
  font-weight:900;
  letter-spacing:-.03em;
  color:#111318;
}
.mycom-wordmark{font-size:1.45rem}
.mycom-wordmark strong,
.hero-wordmark strong,
.footer-wordmark strong{color:#d7193f}
.mycom-wordmark em,
.hero-wordmark em,
.footer-wordmark em{
  font-style:normal;
  color:#111318;
}
.mycom-tagline{
  font-size:.62rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#68707d;
  font-weight:800;
}
.hero-wordmark{
  font-size:clamp(2.7rem,6vw,5.7rem);
  color:#fff;
  margin-bottom:14px;
  text-shadow:0 8px 28px rgba(0,0,0,.3);
}
.hero-wordmark em{color:#fff}
.footer-wordmark{
  color:#fff;
  font-size:1.35rem;
}
.footer-wordmark em{color:#fff}

/* Make edge computing digital twin the main visual focus */
.appliance-featured{
  width:100%;
  margin:40px 0 38px;
  border-radius:32px;
  padding:12px;
  min-height:620px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 70% 30%,rgba(0,194,255,.16),transparent 36%),
    #06101a;
  box-shadow:0 38px 100px rgba(6,16,26,.32);
}
.appliance-featured img{
  width:100%;
  height:auto;
  max-height:720px;
  object-fit:contain;
  border-radius:24px;
}
.appliance-featured:before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:34px;
  padding:2px;
  background:linear-gradient(120deg,#00c2ff,#d7193f,#00c2ff);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:.7;
  animation:borderGlow 4s linear infinite;
  pointer-events:none;
}
@keyframes borderGlow{
  0%{filter:hue-rotate(0deg);opacity:.48}
  50%{filter:hue-rotate(22deg);opacity:.9}
  100%{filter:hue-rotate(0deg);opacity:.48}
}

/* Energy AI digital twin emphasis */
.energy-highlight{
  position:relative;
  overflow:hidden;
}
.energy-highlight:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 78% 35%,rgba(0,255,170,.10),transparent 28%),
    radial-gradient(circle at 60% 70%,rgba(0,194,255,.08),transparent 30%);
  pointer-events:none;
}
.energy-visual{
  min-height:620px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#06111a;
  border:1px solid rgba(91,241,191,.25);
}
.energy-visual img{
  width:100%;
  max-height:720px;
  object-fit:contain;
  filter:saturate(1.05) contrast(1.04);
}
.energy-visual:after{
  content:"IA analizando datos · simulando escenarios · recomendando ajustes";
  position:absolute;
  left:24px;
  right:24px;
  bottom:18px;
  z-index:4;
  padding:10px 14px;
  border-radius:12px;
  background:rgba(5,20,27,.86);
  border:1px solid rgba(90,239,190,.38);
  color:#8ef0cb;
  text-align:center;
  font-size:.8rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  animation:energyCaption 3s ease-in-out infinite;
}
@keyframes energyCaption{
  50%{box-shadow:0 0 24px rgba(90,239,190,.22)}
}

@media(max-width:900px){
  .appliance-featured{min-height:auto}
  .energy-visual{min-height:auto}
}


/* Full-width digital twin hero */
.hero-digital-twin{
  position:relative;
  min-height:880px;
  display:block;
  overflow:hidden;
  background:#05090f;
  color:#fff;
}
.hero-digital-twin .hero-bg{
  position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden;
}
.hero-digital-twin .hero-bg img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:brightness(.72) saturate(1.05) contrast(1.06);
  transform:scale(1.025);
  animation:heroKenBurns 18s ease-in-out infinite alternate;
}
.hero-digital-twin .hero-overlay{
  position:absolute;
  inset:0;
  z-index:2;
  background:
    linear-gradient(90deg,rgba(3,7,12,.96) 0%,rgba(3,7,12,.86) 30%,rgba(3,7,12,.48) 58%,rgba(3,7,12,.16) 100%),
    linear-gradient(0deg,rgba(3,7,12,.88),transparent 35%);
}
.hero-digital-twin .hero-content{
  position:relative;
  z-index:5;
  padding-top:130px;
  padding-bottom:170px;
}
.hero-digital-twin .hero-content h1{
  max-width:760px;
  font-size:clamp(3.4rem,6vw,6.4rem);
  margin-top:18px;
  text-shadow:0 14px 36px rgba(0,0,0,.45);
}
.hero-digital-twin .hero-content .lead{
  max-width:720px;
  color:#dce3eb;
}
.hero-digital-twin .hero-wordmark{
  font-size:clamp(3rem,6.5vw,6.8rem);
  margin-bottom:12px;
}
.hero-secondary{
  background:rgba(255,255,255,.07) !important;
  border-color:rgba(255,255,255,.38) !important;
  color:#fff !important;
  backdrop-filter:blur(8px);
}
.hero-story{
  position:absolute;
  z-index:6;
  left:50%;
  bottom:22px;
  transform:translateX(-50%);
  display:grid;
  grid-template-columns:repeat(4,1fr);
  width:min(980px,calc(100% - 40px));
  background:rgba(5,11,17,.82);
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  overflow:hidden;
  backdrop-filter:blur(12px);
}
.hero-story span{
  padding:14px 16px;
  color:#e8edf3;
  text-align:center;
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  border-right:1px solid rgba(255,255,255,.08);
}
.hero-story span:last-child{border-right:0;color:#72e9bd}
.hero-scan{
  position:absolute;
  z-index:3;
  left:0;right:0;top:-12%;
  height:12%;
  background:linear-gradient(180deg,transparent,rgba(0,190,255,.15),rgba(0,190,255,.55),rgba(0,190,255,.10),transparent);
  animation:heroScan 6s linear infinite;
}
.hero-pulse{
  position:absolute;
  z-index:4;
  width:18px;height:18px;border-radius:50%;
  background:#22d98d;
  box-shadow:0 0 0 0 rgba(34,217,141,.72),0 0 20px rgba(34,217,141,.92);
  animation:heroPulse 1.7s infinite;
}
.pulse-a{left:50%;top:47%}
.pulse-b{left:66%;top:37%;animation-delay:.45s;background:#00bfff}
.pulse-c{left:77%;top:25%;animation-delay:.9s;background:#00bfff}
.hero-flow{
  position:absolute;
  z-index:4;
  height:3px;
  transform-origin:left center;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(0,194,255,0),#00c2ff,#77e7ff,rgba(0,194,255,0));
  box-shadow:0 0 12px #00c2ff;
  animation:heroData 3s ease-in-out infinite;
}
.flow-a{left:49%;top:46%;width:18%;transform:rotate(-8deg)}
.flow-b{left:63%;top:38%;width:16%;transform:rotate(-20deg);animation-delay:.5s}
.flow-c{left:72%;top:29%;width:13%;transform:rotate(-10deg);animation-delay:1s}
.stats{
  margin-top:-18px !important;
}
@keyframes heroKenBurns{
  from{transform:scale(1.025) translate3d(0,0,0)}
  to{transform:scale(1.07) translate3d(-1.2%,.6%,0)}
}
@keyframes heroScan{
  0%{top:-12%;opacity:0}
  8%{opacity:1}
  92%{opacity:1}
  100%{top:100%;opacity:0}
}
@keyframes heroPulse{
  70%{box-shadow:0 0 0 18px rgba(34,217,141,0),0 0 22px rgba(34,217,141,.95)}
  100%{box-shadow:0 0 0 0 rgba(34,217,141,0)}
}
@keyframes heroData{
  0%,18%{opacity:0;clip-path:inset(0 100% 0 0)}
  34%,72%{opacity:1;clip-path:inset(0 0 0 0)}
  100%{opacity:0;clip-path:inset(0 0 0 100%)}
}
@media(max-width:900px){
  .hero-digital-twin{min-height:760px}
  .hero-digital-twin .hero-content{padding-top:105px;padding-bottom:150px}
  .hero-digital-twin .hero-overlay{
    background:linear-gradient(90deg,rgba(3,7,12,.94),rgba(3,7,12,.72)),linear-gradient(0deg,rgba(3,7,12,.9),transparent 35%);
  }
}
@media(max-width:650px){
  .hero-digital-twin{min-height:820px}
  .hero-digital-twin .hero-content h1{font-size:3.2rem}
  .hero-digital-twin .hero-wordmark{font-size:3rem}
  .hero-story{grid-template-columns:1fr 1fr}
  .hero-story span:nth-child(2){border-right:0}
  .hero-pulse,.hero-flow{display:none}
}


/* Interactive energy digital twin */
.energy-twin-live{
  position:relative;
  overflow:hidden;
  min-height:620px;
  background:#061018;
  border:1px solid rgba(80,235,170,.35);
  box-shadow:0 30px 80px rgba(0,0,0,.35);
}
.energy-twin-live > img{
  width:100%;
  height:100%;
  min-height:620px;
  object-fit:cover;
  object-position:center;
  filter:brightness(.82) saturate(1.08) contrast(1.05);
  transform:scale(1.01);
  animation:energyCamera 16s ease-in-out infinite alternate;
}
.energy-hotspot{
  position:absolute;
  z-index:8;
  width:22px;
  height:22px;
  border-radius:50%;
  border:2px solid #7affc7;
  background:rgba(20,255,160,.18);
  box-shadow:0 0 0 0 rgba(20,255,160,.65),0 0 18px rgba(20,255,160,.85);
  cursor:pointer;
  animation:energyHotspot 1.7s infinite;
}
.energy-hotspot:hover{transform:scale(1.18)}
.hs-fp{left:17%;top:18%}
.hs-consumption{left:22%;bottom:20%;animation-delay:.35s}
.hs-ai{right:22%;top:28%;animation-delay:.7s}
.hs-savings{right:10%;bottom:21%;animation-delay:1.05s}
.energy-stream{
  position:absolute;
  z-index:5;
  height:3px;
  border-radius:999px;
  transform-origin:left center;
  background:linear-gradient(90deg,rgba(55,255,168,0),#37ffa8,#a4ffda,rgba(55,255,168,0));
  box-shadow:0 0 12px #37ffa8;
  opacity:0;
  animation:energyDataFlow 3.2s ease-in-out infinite;
}
.es-a{left:23%;top:53%;width:27%;transform:rotate(-8deg)}
.es-b{left:48%;top:46%;width:24%;transform:rotate(-18deg);animation-delay:.6s}
.es-c{left:56%;top:54%;width:28%;transform:rotate(12deg);animation-delay:1.2s}
.energy-panel{
  position:absolute;
  z-index:9;
  right:24px;
  top:24px;
  width:min(310px,42%);
  padding:16px;
  border-radius:16px;
  background:rgba(5,20,27,.9);
  border:1px solid rgba(95,242,188,.5);
  color:#fff;
  box-shadow:0 18px 36px rgba(0,0,0,.35);
  backdrop-filter:blur(12px);
  opacity:0;
  transform:translateY(-10px);
  pointer-events:none;
  transition:.35s ease;
}
.energy-panel.active{
  opacity:1;
  transform:none;
}
.energy-panel small{
  display:block;
  color:#7affc7;
  letter-spacing:.1em;
  font-weight:900;
  margin-bottom:6px;
}
.energy-panel strong{
  display:block;
  font-size:1.3rem;
  margin-bottom:6px;
}
.energy-panel span{
  display:block;
  color:#d7eee5;
  font-size:.85rem;
}
.energy-live-status{
  position:absolute;
  z-index:9;
  left:24px;
  bottom:20px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 13px;
  border-radius:999px;
  background:rgba(5,20,27,.88);
  border:1px solid rgba(95,242,188,.38);
  color:#b8f4dd;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.status-dot{
  width:10px;height:10px;border-radius:50%;
  background:#37ffa8;
  box-shadow:0 0 0 0 rgba(55,255,168,.6);
  animation:statusPulse 1.4s infinite;
}
@keyframes energyCamera{
  from{transform:scale(1.01) translate3d(0,0,0)}
  to{transform:scale(1.055) translate3d(-1%,.5%,0)}
}
@keyframes energyHotspot{
  70%{box-shadow:0 0 0 16px rgba(20,255,160,0),0 0 18px rgba(20,255,160,.85)}
  100%{box-shadow:0 0 0 0 rgba(20,255,160,0)}
}
@keyframes energyDataFlow{
  0%,18%{opacity:0;clip-path:inset(0 100% 0 0)}
  35%,72%{opacity:1;clip-path:inset(0 0 0 0)}
  100%{opacity:0;clip-path:inset(0 0 0 100%)}
}
@keyframes statusPulse{
  70%{box-shadow:0 0 0 10px rgba(55,255,168,0)}
  100%{box-shadow:0 0 0 0 rgba(55,255,168,0)}
}
@media(max-width:900px){
  .energy-twin-live,.energy-twin-live > img{min-height:480px}
  .energy-panel{width:calc(100% - 36px);right:18px;left:18px;top:18px}
}
@media(max-width:580px){
  .energy-twin-live,.energy-twin-live > img{min-height:420px}
  .energy-hotspot{width:18px;height:18px}
  .energy-live-status{left:12px;bottom:12px;font-size:.62rem}
}
@media(prefers-reduced-motion:reduce){
  .energy-twin-live > img,.energy-hotspot,.energy-stream,.status-dot{animation:none}
}

/* Iniciar experiencia CTA */
.experience-launch{
  display:inline-flex!important;
  align-items:center;
  gap:10px;
  padding:8px 16px 8px 8px!important;
  border-radius:999px!important;
  border:1px solid rgba(72,226,168,.45)!important;
  background:linear-gradient(90deg,#179865,#4be0a4)!important;
  color:#04110c!important;
  font-weight:900!important;
  text-decoration:none!important;
  box-shadow:0 12px 28px rgba(72,226,168,.2)!important;
  transition:.25s ease!important
}
.experience-launch:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(72,226,168,.3)!important}
.experience-icon{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:#062e20;
  color:#8effd0;
  font-size:1rem;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)
}


/* Premium Experience CTA */
.experience-launch{
  position:relative;
  display:inline-grid!important;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:12px;
  min-width:245px;
  padding:10px 13px!important;
  border-radius:18px!important;
  border:1px solid rgba(109,255,194,.48)!important;
  background:
    linear-gradient(135deg,rgba(29,191,125,.98),rgba(75,224,164,.95))!important;
  color:#04110c!important;
  text-decoration:none!important;
  font-weight:900!important;
  box-shadow:
    0 20px 45px rgba(42,208,144,.28),
    inset 0 1px 0 rgba(255,255,255,.3)!important;
  overflow:hidden;
  isolation:isolate;
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease!important
}
.experience-launch:before{
  content:"";
  position:absolute;
  inset:-120% auto -120% -30%;
  width:45%;
  transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent);
  animation:experienceShine 4.2s ease-in-out infinite;
  z-index:-1
}
.experience-launch:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(circle at 18% 50%,rgba(255,255,255,.2),transparent 34%);
  pointer-events:none;
  z-index:-1
}
.experience-launch:hover{
  transform:translateY(-4px) scale(1.015)!important;
  box-shadow:
    0 28px 58px rgba(42,208,144,.36),
    0 0 0 5px rgba(75,224,164,.08)!important;
  border-color:#a5ffdb!important
}
.experience-pulse{
  position:relative;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:15px;
  background:#062f21;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)
}
.experience-pulse i{
  width:12px;
  height:12px;
  border-radius:50%;
  background:#7fffc9;
  box-shadow:0 0 0 0 rgba(127,255,201,.7),0 0 18px rgba(127,255,201,.9);
  animation:experiencePulse 1.8s infinite
}
.experience-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:1.05
}
.experience-copy small{
  font-size:.57rem;
  letter-spacing:.16em;
  color:#0a513a;
  margin-bottom:4px
}
.experience-copy strong{
  font-size:.92rem;
  color:#04110c
}
.experience-arrow{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:rgba(4,17,12,.12);
  font-size:1rem;
  transition:transform .25s ease
}
.experience-launch:hover .experience-arrow{transform:translate(3px,-3px)}
@keyframes experiencePulse{
  70%{box-shadow:0 0 0 13px rgba(127,255,201,0),0 0 18px rgba(127,255,201,.9)}
  100%{box-shadow:0 0 0 0 rgba(127,255,201,0)}
}
@keyframes experienceShine{
  0%,58%{left:-45%;opacity:0}
  68%{opacity:1}
  85%,100%{left:125%;opacity:0}
}
@media(max-width:720px){
  .experience-launch{min-width:220px}
}


/* =========================================================
   HOME V3 — Industrial Operations Command Center
   Public hero only. Header, CTA and authenticated experience unchanged.
   ========================================================= */
.hero-v3{
  position:relative;
  min-height:920px;
  overflow:hidden;
  background:#030910;
  color:#fff;
  isolation:isolate
}
.hv3-media,.hv3-media img,.hv3-vignette,.hv3-grid{position:absolute;inset:0}
.hv3-media img{
  width:100%;height:100%;object-fit:cover;object-position:center;
  filter:brightness(.72) contrast(1.08) saturate(1.08);
  transform:scale(1.015);
  animation:hv3Camera 18s ease-in-out infinite alternate
}
.hv3-vignette{
  background:
    linear-gradient(90deg,rgba(2,7,12,.97) 0%,rgba(2,7,12,.88) 24%,rgba(2,7,12,.28) 52%,rgba(2,7,12,.28) 78%,rgba(2,7,12,.72) 100%),
    linear-gradient(180deg,rgba(2,7,12,.35),transparent 26%,transparent 70%,rgba(2,7,12,.94));
  z-index:1
}
.hv3-grid{
  z-index:2;
  opacity:.28;
  background-image:
    linear-gradient(rgba(0,194,255,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,194,255,.08) 1px,transparent 1px);
  background-size:58px 58px;
  mask-image:linear-gradient(to bottom,transparent 0,#000 18%,#000 78%,transparent 100%);
  animation:hv3Grid 18s linear infinite
}
.hv3-stage{
  position:relative;z-index:5;min-height:760px;padding-top:110px
}
.hv3-copy{width:min(520px,45vw)}
.hv3-copy h1{font-size:clamp(3rem,5vw,6.2rem);line-height:.94;margin:14px 0 20px;letter-spacing:-.055em}
.hv3-copy p{font-size:1.05rem;line-height:1.62;color:#c5d3dc;max-width:500px}
.hv3-copy .eyebrow{color:#ff365c}
.hv3-copy .hero-secondary{background:rgba(5,12,19,.62);color:#fff;border-color:rgba(255,255,255,.4)}
.hv3-trust{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px}
.hv3-trust span{display:flex;align-items:center;gap:8px;font-size:.68rem;letter-spacing:.08em;font-weight:900;color:#b7cad4}
.hv3-trust i{width:9px;height:9px;border-radius:50%;background:#49e1a5;box-shadow:0 0 13px #49e1a5;animation:hv3Pulse 1.5s infinite}

.hv3-card{
  position:absolute;z-index:7;padding:14px 16px;border-radius:15px;
  background:rgba(5,16,26,.86);border:1px solid rgba(76,196,239,.34);
  box-shadow:0 18px 42px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(12px);animation:hv3Float 5s ease-in-out infinite
}
.hv3-card small,.hv3-card strong,.hv3-card span{display:block}
.hv3-card small{font-size:.62rem;letter-spacing:.1em;color:#7adfff;font-weight:900}
.hv3-card strong{font-size:1.05rem;margin:5px 0}
.hv3-card span{font-size:.67rem;color:#99afbc}
.hv3-temp{left:37%;top:68px}
.hv3-alarm{left:53%;top:85px;border-color:rgba(255,64,91,.62);background:rgba(45,8,17,.88);animation-delay:.6s}
.hv3-alarm small,.hv3-alarm span{color:#ff8798}
.hv3-energy{right:2%;top:80px;width:185px;animation-delay:1s}
.hv3-edge{left:61%;bottom:112px;animation-delay:1.4s}
.hv3-agent{right:4%;bottom:160px;width:240px;animation-delay:1.8s}
.hv3-spark{display:flex!important;align-items:flex-end;gap:4px;height:28px;margin-top:8px}
.hv3-spark i{display:block;width:13%;background:linear-gradient(#00c2ff,#3ce2a7);border-radius:2px;animation:hv3Bars 1.5s ease-in-out infinite}
.hv3-spark i:nth-child(1){height:25%}.hv3-spark i:nth-child(2){height:48%;animation-delay:.12s}.hv3-spark i:nth-child(3){height:36%;animation-delay:.24s}.hv3-spark i:nth-child(4){height:70%;animation-delay:.36s}.hv3-spark i:nth-child(5){height:58%;animation-delay:.48s}.hv3-spark i:nth-child(6){height:92%;animation-delay:.6s}

.hv3-impact{
  position:absolute;z-index:8;right:3%;bottom:30px;display:flex;gap:10px
}
.hv3-impact div{min-width:155px;padding:12px 14px;border:1px solid rgba(73,225,165,.3);border-radius:13px;background:rgba(5,22,20,.87);backdrop-filter:blur(10px)}
.hv3-impact strong,.hv3-impact span{display:block}
.hv3-impact strong{color:#62eab5;font-size:1.3rem}.hv3-impact span{font-size:.62rem;color:#a9c5bb}

.hv3-data-line{position:absolute;z-index:4;height:2px;transform-origin:left;background:linear-gradient(90deg,transparent,#00c2ff,#4be0a4,transparent);box-shadow:0 0 12px #00c2ff;animation:hv3Data 4.8s linear infinite}
.line-one{left:47%;top:43%;width:32%;transform:rotate(-8deg)}
.line-two{left:59%;top:56%;width:26%;transform:rotate(15deg);animation-delay:1.2s}
.line-three{left:35%;top:64%;width:38%;transform:rotate(-2deg);animation-delay:2.3s}

.hv3-flow-wrap{
  position:relative;z-index:10;margin-top:-130px;padding-bottom:28px
}
.hv3-flow-title{display:block;color:#55d9ff;font-size:.62rem;font-weight:900;letter-spacing:.13em;margin-bottom:10px}
.hv3-flow{
  display:flex;align-items:center;justify-content:space-between;gap:8px;padding:15px;
  border:1px solid rgba(81,153,190,.28);border-radius:18px;background:rgba(3,11,17,.85);
  backdrop-filter:blur(14px);box-shadow:0 20px 45px rgba(0,0,0,.32)
}
.hv3-flow-node{display:flex;align-items:center;gap:8px;min-width:0}
.hv3-flow-node i{width:10px;height:10px;border-radius:50%;background:#48e2a8;box-shadow:0 0 12px rgba(72,226,168,.8);animation:hv3Pulse 1.6s infinite}
.hv3-flow-node span{font-size:.7rem;color:#d6e4eb;font-weight:800;white-space:nowrap}
.hv3-flow b{color:#36c6ef;font-size:1.1rem;animation:hv3Arrow 1.6s ease-in-out infinite}

@keyframes hv3Camera{to{transform:scale(1.045) translateX(-.8%)}}
@keyframes hv3Grid{to{background-position:58px 58px}}
@keyframes hv3Float{50%{transform:translateY(-7px)}}
@keyframes hv3Pulse{70%{box-shadow:0 0 0 12px rgba(73,225,165,0)}}
@keyframes hv3Bars{50%{transform:scaleY(.68)}}
@keyframes hv3Data{0%{opacity:0;clip-path:inset(0 100% 0 0)}20%,75%{opacity:1;clip-path:inset(0 0 0 0)}100%{opacity:0;clip-path:inset(0 0 0 100%)}}
@keyframes hv3Arrow{50%{transform:translateX(4px);opacity:.55}}

@media(max-width:1100px){
  .hero-v3{min-height:900px}
  .hv3-copy{width:min(520px,54vw)}
  .hv3-temp{left:55%;top:80px}.hv3-alarm{left:57%;top:190px}
  .hv3-edge{left:48%;bottom:155px}.hv3-agent{right:2%;bottom:200px}
  .hv3-flow{overflow-x:auto;justify-content:flex-start}
}
@media(max-width:820px){
  .hero-v3{min-height:980px}
  .hv3-stage{padding-top:84px;min-height:840px}
  .hv3-copy{width:100%;max-width:620px}
  .hv3-copy h1{font-size:3.6rem}
  .hv3-media img{object-position:62% center}
  .hv3-vignette{background:linear-gradient(180deg,rgba(2,7,12,.93) 0,rgba(2,7,12,.7) 48%,rgba(2,7,12,.92) 100%)}
  .hv3-card{position:absolute;transform:scale(.88)}
  .hv3-temp{left:4%;top:490px}.hv3-alarm{left:36%;top:510px}.hv3-energy{right:2%;top:485px}
  .hv3-edge{left:6%;bottom:70px}.hv3-agent{right:2%;bottom:70px}
  .hv3-impact{display:none}
  .hv3-flow-wrap{margin-top:-85px}
}
@media(max-width:580px){
  .hero-v3{min-height:1080px}
  .hv3-stage{min-height:930px;padding-top:66px}
  .hv3-copy h1{font-size:2.8rem}
  .hv3-copy p{font-size:.94rem}
  .hv3-card{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;margin:10px 0;width:100%!important}
  .hv3-stage{display:flex;flex-direction:column}
  .hv3-copy{margin-bottom:12px}
  .hv3-impact{display:grid;position:relative;right:auto;bottom:auto;grid-template-columns:1fr 1fr;margin-top:8px}
  .hv3-flow-wrap{margin-top:-112px}
  .hv3-flow-node span{font-size:.64rem}
}
