:root{
 --bg:#050914;--paper:#eef2f8;--ink:#111827;--white:#fff;
 --cyan:#3cf2ff;--violet:#8b5cf6;--pink:#ff3cac;--lime:#a7ff4f;--orange:#ff9b4a;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--paper);color:var(--ink)}
a{text-decoration:none;color:inherit}.topbar{position:fixed;z-index:80;left:0;right:0;top:0;height:82px;display:flex;justify-content:space-between;align-items:center;padding:0 4vw;color:#fff}
.brand{display:flex;gap:12px;align-items:center}.brand-symbol{font-size:34px;color:var(--cyan);text-shadow:0 0 24px var(--cyan)}.brand b{display:block;letter-spacing:.08em}.brand small{font-size:.58rem;letter-spacing:.24em;color:#aeb9cc}
.menu-trigger{border:1px solid rgba(255,255,255,.3);color:white;background:rgba(5,9,20,.38);backdrop-filter:blur(14px);border-radius:999px;padding:11px 17px;display:flex;align-items:center;gap:10px;cursor:pointer;letter-spacing:.16em}
.orb-mini{width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,var(--cyan),var(--pink));box-shadow:0 0 22px var(--cyan)}
.hero{position:relative;min-height:100vh;overflow:hidden;background:#050914;color:white}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.45) contrast(1.08)}
.hero-colorwash{position:absolute;inset:0;background:
radial-gradient(circle at 14% 26%,rgba(60,242,255,.30),transparent 28%),
radial-gradient(circle at 79% 28%,rgba(255,60,172,.24),transparent 25%),
radial-gradient(circle at 65% 79%,rgba(139,92,246,.28),transparent 30%),
linear-gradient(125deg,rgba(4,7,16,.72),rgba(8,11,24,.28) 45%,rgba(5,8,18,.78))}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to bottom,transparent,black 25%,black)}
.hero-vignette{position:absolute;inset:0;box-shadow:inset 0 0 180px 60px rgba(0,0,0,.7)}
.hero-copy{position:absolute;left:5vw;top:18vh;z-index:4;max-width:660px}.kicker{font-size:.73rem;letter-spacing:.28em;font-weight:800;color:var(--cyan);margin:0 0 14px}.kicker.dark{color:#4c3ed8}
.hero-copy h1{font-size:clamp(3rem,6.7vw,7rem);line-height:.88;margin:0;letter-spacing:-.055em}.hero-copy h1 span{background:linear-gradient(90deg,var(--cyan),#fff,var(--pink));-webkit-background-clip:text;color:transparent}
.hero-lead{max-width:570px;font-size:1.03rem;line-height:1.65;color:#d7dbea;margin-top:24px}
.service-orbit{position:absolute;z-index:6;right:4vw;bottom:7vh;width:min(620px,53vw);aspect-ratio:1;border-radius:50%}
.orbit-ring{position:absolute;border:1px solid rgba(255,255,255,.15);border-radius:50%;inset:8%}.ring2{inset:24%;border-style:dashed;animation:spin 28s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.center-emblem{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:126px;height:126px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;background:rgba(6,10,22,.74);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(14px);z-index:8}
.center-emblem b{font-size:52px;color:var(--cyan);text-shadow:0 0 28px var(--cyan)}.center-emblem small{font-size:.58rem;letter-spacing:.2em;color:#fff}.pulse{position:absolute;inset:-14px;border:1px solid rgba(60,242,255,.35);border-radius:50%;animation:pulse 2.2s infinite}@keyframes pulse{50%{transform:scale(1.08);opacity:.4}}
.service-node{position:absolute;width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:rgba(6,10,22,.76);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.24);z-index:10;transition:.3s cubic-bezier(.2,.8,.2,1)}
.service-node:hover{transform:scale(1.12);z-index:15}.node-core{font-weight:900;font-size:1.35rem}.node-title{font-size:.58rem;letter-spacing:.14em;margin-top:4px;color:#d9dfed}
.teleco{left:50%;top:-1%;transform:translateX(-50%);box-shadow:0 0 40px rgba(60,242,255,.13)}.teleco:hover{transform:translateX(-50%) scale(1.12);box-shadow:0 0 55px rgba(60,242,255,.32)}.teleco .node-core{color:var(--cyan)}
.diseno{left:-1%;top:50%;transform:translateY(-50%);box-shadow:0 0 40px rgba(139,92,246,.18)}.diseno:hover{transform:translateY(-50%) scale(1.12);box-shadow:0 0 55px rgba(139,92,246,.35)}.diseno .node-core{color:#a985ff}
.electronica{right:-1%;top:50%;transform:translateY(-50%);box-shadow:0 0 40px rgba(255,60,172,.16)}.electronica:hover{transform:translateY(-50%) scale(1.12);box-shadow:0 0 55px rgba(255,60,172,.35)}.electronica .node-core{color:var(--pink)}
.futuro{left:50%;bottom:-1%;transform:translateX(-50%);box-shadow:0 0 40px rgba(167,255,79,.14)}.futuro:hover{transform:translateX(-50%) scale(1.12);box-shadow:0 0 55px rgba(167,255,79,.34)}.futuro .node-core{color:var(--lime)}
.sat{position:absolute;width:68px;height:68px;border-radius:50%;display:grid;place-items:center;text-align:center;padding:5px;font-size:.48rem;font-weight:800;letter-spacing:.08em;color:#fff;border:1px solid rgba(255,255,255,.22);background:rgba(8,12,25,.9);opacity:0;transform:scale(.4);pointer-events:none;transition:.34s cubic-bezier(.18,.89,.32,1.28)}
.service-node:hover .sat{opacity:1;transform:scale(1)}
.sat1{left:50%;top:50%;margin:-34px;transform:translate(-90px,-90px) scale(.4)}.service-node:hover .sat1{transform:translate(-90px,-90px) scale(1)}
.sat2{left:50%;top:50%;margin:-34px;transform:translate(90px,-90px) scale(.4)}.service-node:hover .sat2{transform:translate(90px,-90px) scale(1)}
.sat3{left:50%;top:50%;margin:-34px;transform:translate(-90px,90px) scale(.4)}.service-node:hover .sat3{transform:translate(-90px,90px) scale(1)}
.sat4{left:50%;top:50%;margin:-34px;transform:translate(90px,90px) scale(.4)}.service-node:hover .sat4{transform:translate(90px,90px) scale(1)}
.teleco .sat{border-color:rgba(60,242,255,.55)}.diseno .sat{border-color:rgba(139,92,246,.6)}.electronica .sat{border-color:rgba(255,60,172,.55)}.futuro .sat{border-color:rgba(167,255,79,.55)}
.scroll-cue{position:absolute;z-index:7;left:5vw;bottom:5vh;font-size:.62rem;letter-spacing:.22em;color:#cfd6e5}.scroll-cue span{display:inline-block;width:52px;height:1px;background:linear-gradient(90deg,var(--cyan),transparent);vertical-align:middle;margin-right:10px}
.services-panel{padding:110px 5vw 130px;background:linear-gradient(180deg,#eef2f8,#f8f9fc)}.panel-intro{max-width:850px}.panel-intro h2{font-size:clamp(2.4rem,5vw,5.6rem);line-height:.98;margin:.15em 0 .7em;letter-spacing:-.04em}
.graphic-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.gcard{position:relative;min-height:360px;padding:28px;border-radius:32px;color:white;overflow:hidden;box-shadow:0 22px 50px rgba(15,23,42,.14);transition:.3s}
.gcard:before{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-70px;bottom:-70px;background:rgba(255,255,255,.12);box-shadow:0 0 0 35px rgba(255,255,255,.05),0 0 0 70px rgba(255,255,255,.03)}
.gcard:hover{transform:translateY(-10px) rotate(-.5deg)}.gcard .big-id{font-size:.72rem;letter-spacing:.22em}.gcard h3{font-size:1.55rem;margin-top:90px}.gcard p{line-height:1.6;color:rgba(255,255,255,.82)}.gcard i{position:absolute;right:28px;bottom:24px;font-size:2rem}
.c1{background:linear-gradient(145deg,#087f9c,#00bed3)}.c2{background:linear-gradient(145deg,#5d36d8,#9c62ff)}.c3{background:linear-gradient(145deg,#c72c7f,#ff5a9f)}.c4{background:linear-gradient(145deg,#486b18,#8cbf38)}
.statement{display:grid;grid-template-columns:.7fr 1.4fr;gap:60px;align-items:center;background:#080d18;color:white;padding:100px 7vw}.statement-number{font-size:clamp(6rem,14vw,14rem);font-weight:900;line-height:.8;background:linear-gradient(135deg,var(--cyan),var(--violet),var(--pink));-webkit-background-clip:text;color:transparent;letter-spacing:-.08em}.statement h2{font-size:clamp(2rem,4vw,4.5rem);line-height:1;margin:.2em 0 .6em}.statement a{color:var(--cyan);font-weight:800}
.cta{position:relative;overflow:hidden;text-align:center;background:#fbfbfd;padding:120px 20px}.cta h2{font-size:clamp(2.4rem,5vw,5rem);margin:.2em auto .8em;max-width:900px}.cta a{display:inline-block;padding:15px 24px;border-radius:999px;background:#111827;color:white;font-weight:800;letter-spacing:.12em;font-size:.75rem}.cta-orb{position:absolute;width:420px;height:420px;border-radius:50%;right:-150px;top:-160px;background:radial-gradient(circle at 35% 35%,#fff,var(--cyan) 24%,var(--violet) 55%,var(--pink));filter:blur(4px);opacity:.16}
footer{display:flex;justify-content:space-between;gap:20px;padding:30px 5vw;background:#03060c;color:#8490a5;font-size:.75rem;letter-spacing:.08em}
.menu-layer{position:fixed;inset:0;z-index:110;opacity:0;pointer-events:none;transition:.3s}.menu-layer.open{opacity:1;pointer-events:auto}.menu-bg{position:absolute;inset:0;background:rgba(3,5,12,.88);backdrop-filter:blur(18px)}
.menu-graphic{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(720px,92vw);aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:radial-gradient(circle,rgba(60,242,255,.08),transparent 35%)}
.menu-graphic:before,.menu-graphic:after{content:"";position:absolute;inset:18%;border:1px dashed rgba(255,255,255,.12);border-radius:50%}.menu-graphic:after{inset:34%}.menu-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:76px;color:var(--cyan);text-shadow:0 0 35px var(--cyan)}
.menu-graphic button{position:absolute;right:8%;top:10%;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;font-size:28px;z-index:6}
.mi{position:absolute;width:150px;height:150px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;border:1px solid rgba(255,255,255,.24);background:rgba(10,15,28,.7);color:#fff;transition:.25s}.mi:hover{transform:scale(1.1);box-shadow:0 0 45px rgba(60,242,255,.22)}.mi b{color:var(--cyan);font-size:.72rem}.mi span{font-size:.68rem;letter-spacing:.12em;margin-top:6px}.mi1{left:50%;top:3%;transform:translateX(-50%)}.mi1:hover{transform:translateX(-50%) scale(1.1)}.mi2{right:3%;top:50%;transform:translateY(-50%)}.mi2:hover{transform:translateY(-50%) scale(1.1)}.mi3{left:50%;bottom:3%;transform:translateX(-50%)}.mi3:hover{transform:translateX(-50%) scale(1.1)}.mi4{left:3%;top:50%;transform:translateY(-50%)}.mi4:hover{transform:translateY(-50%) scale(1.1)}
.chat-widget{position:fixed;right:22px;bottom:22px;z-index:90}.chat-launcher{width:62px;height:62px;border:0;border-radius:50%;background:linear-gradient(135deg,#12b75d,#44e88b);color:#fff;font-weight:900;box-shadow:0 16px 38px rgba(0,0,0,.28);cursor:pointer}.chat-box{position:absolute;right:0;bottom:75px;width:min(360px,calc(100vw - 28px));background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.35);opacity:0;transform:translateY(15px) scale(.95);pointer-events:none;transition:.22s}.chat-box.open{opacity:1;transform:none;pointer-events:auto}.chat-box header{display:flex;justify-content:space-between;align-items:center;background:#0e1a14;color:#fff;padding:16px 18px}.chat-box header small{display:block;color:#6df0a4;margin-top:4px}.chat-box header button{border:0;background:transparent;color:#fff;font-size:24px}.chat-messages{min-height:180px;background:#eef4f0;padding:16px}.bubble{max-width:82%;padding:11px 13px;border-radius:14px;font-size:.86rem}.agent{background:#fff}.user{background:#d9f9e4;margin:10px 0 0 auto}.chat-box form{display:flex;gap:8px;padding:10px}.chat-box input{flex:1;padding:12px;border:1px solid #d5ddd8;border-radius:999px}.chat-box form button{border:0;border-radius:999px;padding:0 16px;background:#187b4a;color:#fff;font-weight:800}.chat-box>p{font-size:.62rem;color:#7c8780;padding:0 13px 12px;margin:0}
@media(max-width:1100px){.hero-copy{top:16vh}.service-orbit{width:58vw;opacity:.98}.graphic-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){
 .topbar{height:68px;padding:0 16px}.brand small{display:none}.hero{min-height:1120px}.hero-copy{left:22px;right:22px;top:110px}.hero-copy h1{font-size:3.7rem}
 .service-orbit{width:88vw;right:6vw;bottom:110px}.service-node{width:98px;height:98px}.node-title{font-size:.48rem}.sat{width:58px;height:58px;font-size:.42rem}
 .sat1{transform:translate(-72px,-72px) scale(.4)}.service-node:hover .sat1{transform:translate(-72px,-72px) scale(1)}
 .sat2{transform:translate(72px,-72px) scale(.4)}.service-node:hover .sat2{transform:translate(72px,-72px) scale(1)}
 .sat3{transform:translate(-72px,72px) scale(.4)}.service-node:hover .sat3{transform:translate(-72px,72px) scale(1)}
 .sat4{transform:translate(72px,72px) scale(.4)}.service-node:hover .sat4{transform:translate(72px,72px) scale(1)}
 .center-emblem{width:105px;height:105px}.graphic-cards{grid-template-columns:1fr}.statement{grid-template-columns:1fr}.menu-graphic{width:96vw}.mi{width:112px;height:112px}
}


/* V3: despliegue de subopciones siempre hacia el interior de la pantalla */

/* TELECO (arriba): subopciones hacia abajo y laterales */
.teleco .sat1{transform:translate(-82px,74px) scale(.4)}
.teleco .sat2{transform:translate(82px,74px) scale(.4)}
.teleco .sat3{transform:translate(-42px,142px) scale(.4)}
.teleco .sat4{transform:translate(42px,142px) scale(.4)}
.teleco:hover .sat1{transform:translate(-82px,74px) scale(1)}
.teleco:hover .sat2{transform:translate(82px,74px) scale(1)}
.teleco:hover .sat3{transform:translate(-42px,142px) scale(1)}
.teleco:hover .sat4{transform:translate(42px,142px) scale(1)}

/* DISEÑO 3D (izquierda): subopciones hacia la derecha */
.diseno .sat1{transform:translate(92px,-76px) scale(.4)}
.diseno .sat2{transform:translate(150px,-24px) scale(.4)}
.diseno .sat3{transform:translate(150px,48px) scale(.4)}
.diseno .sat4{transform:translate(92px,100px) scale(.4)}
.diseno:hover .sat1{transform:translate(92px,-76px) scale(1)}
.diseno:hover .sat2{transform:translate(150px,-24px) scale(1)}
.diseno:hover .sat3{transform:translate(150px,48px) scale(1)}
.diseno:hover .sat4{transform:translate(92px,100px) scale(1)}

/* ELECTRÓNICA (derecha): subopciones hacia la izquierda */
.electronica .sat1{transform:translate(-92px,-76px) scale(.4)}
.electronica .sat2{transform:translate(-150px,-24px) scale(.4)}
.electronica .sat3{transform:translate(-150px,48px) scale(.4)}
.electronica .sat4{transform:translate(-92px,100px) scale(.4)}
.electronica:hover .sat1{transform:translate(-92px,-76px) scale(1)}
.electronica:hover .sat2{transform:translate(-150px,-24px) scale(1)}
.electronica:hover .sat3{transform:translate(-150px,48px) scale(1)}
.electronica:hover .sat4{transform:translate(-92px,100px) scale(1)}

/* PRÓXIMAMENTE (abajo): subopciones hacia arriba */
.futuro .sat1{transform:translate(-82px,-74px) scale(.4)}
.futuro .sat2{transform:translate(82px,-74px) scale(.4)}
.futuro .sat3{transform:translate(-42px,-142px) scale(.4)}
.futuro .sat4{transform:translate(42px,-142px) scale(.4)}
.futuro:hover .sat1{transform:translate(-82px,-74px) scale(1)}
.futuro:hover .sat2{transform:translate(82px,-74px) scale(1)}
.futuro:hover .sat3{transform:translate(-42px,-142px) scale(1)}
.futuro:hover .sat4{transform:translate(42px,-142px) scale(1)}

/* Más margen de seguridad en pantallas medianas */
@media(max-width:1100px){
  .service-orbit{right:7vw;bottom:8vh;width:54vw}
}

/* En móvil, las subopciones se compactan todavía más */
@media(max-width:760px){
  .teleco .sat1,.teleco:hover .sat1{transform:translate(-62px,58px) scale(1)}
  .teleco .sat2,.teleco:hover .sat2{transform:translate(62px,58px) scale(1)}
  .teleco .sat3,.teleco:hover .sat3{transform:translate(-30px,112px) scale(1)}
  .teleco .sat4,.teleco:hover .sat4{transform:translate(30px,112px) scale(1)}

  .diseno .sat1,.diseno:hover .sat1{transform:translate(76px,-56px) scale(1)}
  .diseno .sat2,.diseno:hover .sat2{transform:translate(112px,-10px) scale(1)}
  .diseno .sat3,.diseno:hover .sat3{transform:translate(112px,44px) scale(1)}
  .diseno .sat4,.diseno:hover .sat4{transform:translate(76px,88px) scale(1)}

  .electronica .sat1,.electronica:hover .sat1{transform:translate(-76px,-56px) scale(1)}
  .electronica .sat2,.electronica:hover .sat2{transform:translate(-112px,-10px) scale(1)}
  .electronica .sat3,.electronica:hover .sat3{transform:translate(-112px,44px) scale(1)}
  .electronica .sat4,.electronica:hover .sat4{transform:translate(-76px,88px) scale(1)}

  .futuro .sat1,.futuro:hover .sat1{transform:translate(-62px,-58px) scale(1)}
  .futuro .sat2,.futuro:hover .sat2{transform:translate(62px,-58px) scale(1)}
  .futuro .sat3,.futuro:hover .sat3{transform:translate(-30px,-112px) scale(1)}
  .futuro .sat4,.futuro:hover .sat4{transform:translate(30px,-112px) scale(1)}

  .service-node .sat{opacity:0;transform-origin:center}
  .service-node:hover .sat{opacity:1}
}


/* V4 — fotografías integradas en los servicios */
.photo-card{
  padding-top:210px;
  background:#09101d !important;
}
.photo-card .service-photo{
  position:absolute;
  left:0;right:0;top:0;
  height:195px;
  overflow:hidden;
  border-radius:32px 32px 0 0;
  background-size:cover;
  background-position:center;
  transition:transform .45s ease, filter .45s ease;
  z-index:0;
}
.photo-card .service-photo:after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(4,8,18,.02),rgba(4,8,18,.72));
}
.photo-card:hover .service-photo{transform:scale(1.045);filter:saturate(1.18) contrast(1.05)}
.photo-card .big-id,.photo-card h3,.photo-card p,.photo-card>i{position:relative;z-index:2}
.photo-card h3{margin-top:20px}
.photo-card p{color:#cbd5e1}
.photo-card:before{
  width:260px;height:260px;
  background:rgba(255,255,255,.06);
}

/* Telecomunicaciones: mosaico de dos imágenes */
.teleco-photo{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:3px;
  background:#08131a !important;
}
.teleco-photo>i{
  display:block;
  background-size:cover;
  background-position:center;
}
.teleco-photo>i:first-child{
  background-image:
    linear-gradient(rgba(0,155,190,.10),rgba(0,155,190,.10)),
    url("https://images.unsplash.com/photo-1594915440248-1e419eba6611?auto=format&fit=crop&fm=jpg&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&ixlib=rb-4.1.0&q=60&w=3000");
}
.teleco-photo>i:last-child{
  background-image:
    linear-gradient(rgba(0,80,180,.08),rgba(0,80,180,.08)),
    url("https://images.unsplash.com/photo-1767608547945-49bf69195709?auto=format&fit=crop&fm=jpg&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&ixlib=rb-4.1.0&q=60&w=3000");
}
.teleco-photo:after{
  background:linear-gradient(180deg,transparent 35%,rgba(4,15,24,.82));
}

/* Diseño e impresión 3D */
.diseno-photo{
  background-image:
    linear-gradient(rgba(98,50,200,.05),rgba(98,50,200,.14)),
    url("https://images.unsplash.com/photo-1743056586194-837401d75e0a?auto=format&fit=crop&fm=jpg&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&ixlib=rb-4.1.0&q=60&w=3000");
  background-position:center 42% !important;
}

/* Electrónica */
.electronica-photo{
  background-image:
    linear-gradient(rgba(230,20,120,.03),rgba(230,20,120,.10)),
    url("https://images.unsplash.com/photo-1675602488512-bdd631490fcb?auto=format&fit=crop&fm=jpg&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&ixlib=rb-4.1.0&q=60&w=3000");
}

/* Futuro: visual abstracto local hasta definir el servicio */
.future-photo{
  background-image:
    radial-gradient(circle at 25% 30%,rgba(167,255,79,.42),transparent 25%),
    radial-gradient(circle at 70% 60%,rgba(60,242,255,.28),transparent 30%),
    linear-gradient(135deg,#0a1510,#17231b 55%,#09101b);
}
.future-photo:before{
  content:"+";
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  font-size:100px;font-weight:200;color:rgba(255,255,255,.55);z-index:2;
}

/* Línea cromática inferior para reforzar cada categoría */
.c1{border-bottom:4px solid var(--cyan)}
.c2{border-bottom:4px solid var(--violet)}
.c3{border-bottom:4px solid var(--pink)}
.c4{border-bottom:4px solid var(--lime)}

/* Fotografías circulares sutiles en los nodos principales */
.teleco .node-core,.diseno .node-core,.electronica .node-core{
  width:54px;height:54px;border-radius:50%;
  display:grid;place-items:center;
  background-size:cover;background-position:center;
  color:#fff !important;
  text-shadow:0 2px 8px rgba(0,0,0,.9);
  border:2px solid rgba(255,255,255,.62);
}
.teleco .node-core{
 background-image:linear-gradient(rgba(0,120,160,.32),rgba(0,120,160,.32)),
 url("https://images.unsplash.com/photo-1594915440248-1e419eba6611?auto=format&fit=crop&fm=jpg&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&ixlib=rb-4.1.0&q=60&w=3000");
}
.diseno .node-core{
 background-image:linear-gradient(rgba(70,30,150,.32),rgba(70,30,150,.32)),
 url("https://images.unsplash.com/photo-1743056586194-837401d75e0a?auto=format&fit=crop&fm=jpg&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&ixlib=rb-4.1.0&q=60&w=3000");
}
.electronica .node-core{
 background-image:linear-gradient(rgba(150,20,90,.30),rgba(150,20,90,.30)),
 url("https://images.unsplash.com/photo-1675602488512-bdd631490fcb?auto=format&fit=crop&fm=jpg&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&ixlib=rb-4.1.0&q=60&w=3000");
}

@media(max-width:760px){
  .photo-card{padding-top:220px}
  .photo-card .service-photo{height:205px}
}


/* V5 — imágenes 100% locales, sin dependencia de Internet */
.teleco-photo>i:first-child,
.teleco-photo>i:last-child{
  background-image:
    linear-gradient(rgba(0,120,170,.10),rgba(0,120,170,.10)),
    url("assets/img/teleco.jpg") !important;
}
.teleco-photo>i:first-child{background-position:28% center}
.teleco-photo>i:last-child{background-position:82% center}

.diseno-photo{
  background-image:
    linear-gradient(rgba(98,50,200,.05),rgba(98,50,200,.14)),
    url("assets/img/diseno3d.jpg") !important;
  background-position:center 52% !important;
}

.electronica-photo{
  background-image:
    linear-gradient(rgba(230,20,120,.03),rgba(230,20,120,.10)),
    url("assets/img/electronica.jpg") !important;
  background-position:center !important;
}

.teleco .node-core{
  background-image:
    linear-gradient(rgba(0,120,160,.32),rgba(0,120,160,.32)),
    url("assets/img/teleco.jpg") !important;
}
.diseno .node-core{
  background-image:
    linear-gradient(rgba(70,30,150,.32),rgba(70,30,150,.32)),
    url("assets/img/diseno3d.jpg") !important;
}
.electronica .node-core{
  background-image:
    linear-gradient(rgba(150,20,90,.30),rgba(150,20,90,.30)),
    url("assets/img/electronica.jpg") !important;
}


/* V6 — fotos también en los círculos secundarios */
.service-node .sat{
  background-color:#08101c;
  background-size:cover;
  background-repeat:no-repeat;
  background-position:center;
  color:#fff;
  text-shadow:0 2px 6px rgba(0,0,0,.95), 0 0 8px rgba(0,0,0,.85);
  font-size:.50rem;
  font-weight:900;
  letter-spacing:.07em;
  overflow:hidden;
  isolation:isolate;
}
.service-node .sat::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:linear-gradient(180deg,rgba(3,7,14,.12),rgba(3,7,14,.67));
  z-index:-1;
}
.service-node .sat::after{
  content:"";
  position:absolute;
  inset:4px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
  pointer-events:none;
}

/* TELECO — cuatro encuadres de la misma imagen local */
.teleco .sat1{
  background-image:url("assets/img/teleco.jpg");
  background-position:18% 45%;
}
.teleco .sat2{
  background-image:url("assets/img/teleco.jpg");
  background-position:42% 55%;
}
.teleco .sat3{
  background-image:url("assets/img/teleco.jpg");
  background-position:68% 48%;
}
.teleco .sat4{
  background-image:url("assets/img/teleco.jpg");
  background-position:88% 52%;
}

/* DISEÑO 3D — distintos encuadres de la impresora/pieza */
.diseno .sat1{
  background-image:url("assets/img/diseno3d.jpg");
  background-position:18% 48%;
}
.diseno .sat2{
  background-image:url("assets/img/diseno3d.jpg");
  background-position:42% 42%;
}
.diseno .sat3{
  background-image:url("assets/img/diseno3d.jpg");
  background-position:70% 54%;
}
.diseno .sat4{
  background-image:url("assets/img/diseno3d.jpg");
  background-position:88% 48%;
}

/* ELECTRÓNICA — diferentes zonas de la placa */
.electronica .sat1{
  background-image:url("assets/img/electronica.jpg");
  background-position:18% 42%;
}
.electronica .sat2{
  background-image:url("assets/img/electronica.jpg");
  background-position:42% 54%;
}
.electronica .sat3{
  background-image:url("assets/img/electronica.jpg");
  background-position:70% 45%;
}
.electronica .sat4{
  background-image:url("assets/img/electronica.jpg");
  background-position:88% 56%;
}

/* CUARTO SERVICIO — composición gráfica temporal */
.futuro .sat1,
.futuro .sat2,
.futuro .sat3,
.futuro .sat4{
  background-image:
    radial-gradient(circle at 28% 30%,rgba(167,255,79,.58),transparent 30%),
    radial-gradient(circle at 72% 66%,rgba(60,242,255,.40),transparent 34%),
    linear-gradient(135deg,#0b1710,#12192b);
}

/* Refuerzo de color específico por familia */
.teleco .sat{box-shadow:0 0 0 2px rgba(60,242,255,.26),0 0 26px rgba(60,242,255,.25)}
.diseno .sat{box-shadow:0 0 0 2px rgba(139,92,246,.27),0 0 26px rgba(139,92,246,.25)}
.electronica .sat{box-shadow:0 0 0 2px rgba(255,60,172,.25),0 0 26px rgba(255,60,172,.23)}
.futuro .sat{box-shadow:0 0 0 2px rgba(167,255,79,.24),0 0 26px rgba(167,255,79,.22)}

@media(max-width:760px){
  .service-node .sat{
    font-size:.44rem;
  }
}


/* V7 — redistribución gráfica de los círculos secundarios laterales
   Dos círculos en columna vertical paralela al nodo principal,
   más dos círculos en diagonal, repartidos de forma equilibrada. */

/* DISEÑO 3D — nodo lateral izquierdo: apertura hacia el interior (derecha) */
.diseno .sat1{transform:translate(112px,-70px) scale(.4)}
.diseno .sat2{transform:translate(112px,70px) scale(.4)}
.diseno .sat3{transform:translate(184px,-118px) scale(.4)}
.diseno .sat4{transform:translate(184px,118px) scale(.4)}

.diseno:hover .sat1{transform:translate(112px,-70px) scale(1)}
.diseno:hover .sat2{transform:translate(112px,70px) scale(1)}
.diseno:hover .sat3{transform:translate(184px,-118px) scale(1)}
.diseno:hover .sat4{transform:translate(184px,118px) scale(1)}

/* ELECTRÓNICA — nodo lateral derecho: apertura hacia el interior (izquierda) */
.electronica .sat1{transform:translate(-112px,-70px) scale(.4)}
.electronica .sat2{transform:translate(-112px,70px) scale(.4)}
.electronica .sat3{transform:translate(-184px,-118px) scale(.4)}
.electronica .sat4{transform:translate(-184px,118px) scale(.4)}

.electronica:hover .sat1{transform:translate(-112px,-70px) scale(1)}
.electronica:hover .sat2{transform:translate(-112px,70px) scale(1)}
.electronica:hover .sat3{transform:translate(-184px,-118px) scale(1)}
.electronica:hover .sat4{transform:translate(-184px,118px) scale(1)}

/* Ajuste fino en pantallas medianas */
@media(max-width:1100px){
  .diseno .sat1,.diseno:hover .sat1{transform:translate(96px,-62px) scale(1)}
  .diseno .sat2,.diseno:hover .sat2{transform:translate(96px,62px) scale(1)}
  .diseno .sat3,.diseno:hover .sat3{transform:translate(154px,-102px) scale(1)}
  .diseno .sat4,.diseno:hover .sat4{transform:translate(154px,102px) scale(1)}

  .electronica .sat1,.electronica:hover .sat1{transform:translate(-96px,-62px) scale(1)}
  .electronica .sat2,.electronica:hover .sat2{transform:translate(-96px,62px) scale(1)}
  .electronica .sat3,.electronica:hover .sat3{transform:translate(-154px,-102px) scale(1)}
  .electronica .sat4,.electronica:hover .sat4{transform:translate(-154px,102px) scale(1)}
}

/* En móvil se compacta para evitar que las subopciones salgan de pantalla */
@media(max-width:760px){
  .diseno .sat1,.diseno:hover .sat1{transform:translate(72px,-48px) scale(1)}
  .diseno .sat2,.diseno:hover .sat2{transform:translate(72px,48px) scale(1)}
  .diseno .sat3,.diseno:hover .sat3{transform:translate(118px,-84px) scale(1)}
  .diseno .sat4,.diseno:hover .sat4{transform:translate(118px,84px) scale(1)}

  .electronica .sat1,.electronica:hover .sat1{transform:translate(-72px,-48px) scale(1)}
  .electronica .sat2,.electronica:hover .sat2{transform:translate(-72px,48px) scale(1)}
  .electronica .sat3,.electronica:hover .sat3{transform:translate(-118px,-84px) scale(1)}
  .electronica .sat4,.electronica:hover .sat4{transform:translate(-118px,84px) scale(1)}
}


/* V8 — cierre de secundarios hacia su propio círculo principal.
   Conserva la nueva distribución abierta de V7, pero al cerrarse
   todos parten/regresan al centro del nodo padre, como en versiones anteriores. */

/* Estado cerrado común: el centro de cada satélite coincide con el centro del nodo principal */
.diseno .sat1,.diseno .sat2,.diseno .sat3,.diseno .sat4,
.electronica .sat1,.electronica .sat2,.electronica .sat3,.electronica .sat4{
  transform:translate(0,0) scale(.18);
  opacity:0;
}

/* Estado abierto DISEÑO 3D */
.diseno:hover .sat1{transform:translate(112px,-70px) scale(1);opacity:1}
.diseno:hover .sat2{transform:translate(112px,70px) scale(1);opacity:1}
.diseno:hover .sat3{transform:translate(184px,-118px) scale(1);opacity:1}
.diseno:hover .sat4{transform:translate(184px,118px) scale(1);opacity:1}

/* Estado abierto ELECTRÓNICA */
.electronica:hover .sat1{transform:translate(-112px,-70px) scale(1);opacity:1}
.electronica:hover .sat2{transform:translate(-112px,70px) scale(1);opacity:1}
.electronica:hover .sat3{transform:translate(-184px,-118px) scale(1);opacity:1}
.electronica:hover .sat4{transform:translate(-184px,118px) scale(1);opacity:1}

/* Mantener el cierre centrado también en pantallas medianas */
@media(max-width:1100px){
 .diseno .sat1,.diseno .sat2,.diseno .sat3,.diseno .sat4,
 .electronica .sat1,.electronica .sat2,.electronica .sat3,.electronica .sat4{
   transform:translate(0,0) scale(.18);
   opacity:0;
 }
 .diseno:hover .sat1{transform:translate(96px,-62px) scale(1);opacity:1}
 .diseno:hover .sat2{transform:translate(96px,62px) scale(1);opacity:1}
 .diseno:hover .sat3{transform:translate(154px,-102px) scale(1);opacity:1}
 .diseno:hover .sat4{transform:translate(154px,102px) scale(1);opacity:1}
 .electronica:hover .sat1{transform:translate(-96px,-62px) scale(1);opacity:1}
 .electronica:hover .sat2{transform:translate(-96px,62px) scale(1);opacity:1}
 .electronica:hover .sat3{transform:translate(-154px,-102px) scale(1);opacity:1}
 .electronica:hover .sat4{transform:translate(-154px,102px) scale(1);opacity:1}
}

/* Y en móvil */
@media(max-width:760px){
 .diseno .sat1,.diseno .sat2,.diseno .sat3,.diseno .sat4,
 .electronica .sat1,.electronica .sat2,.electronica .sat3,.electronica .sat4{
   transform:translate(0,0) scale(.18);
   opacity:0;
 }
 .diseno:hover .sat1{transform:translate(72px,-48px) scale(1);opacity:1}
 .diseno:hover .sat2{transform:translate(72px,48px) scale(1);opacity:1}
 .diseno:hover .sat3{transform:translate(118px,-84px) scale(1);opacity:1}
 .diseno:hover .sat4{transform:translate(118px,84px) scale(1);opacity:1}
 .electronica:hover .sat1{transform:translate(-72px,-48px) scale(1);opacity:1}
 .electronica:hover .sat2{transform:translate(-72px,48px) scale(1);opacity:1}
 .electronica:hover .sat3{transform:translate(-118px,-84px) scale(1);opacity:1}
 .electronica:hover .sat4{transform:translate(-118px,84px) scale(1);opacity:1}
}


/* V9 — ELECTRÓNICA:
   dos secundarios extremos alineados verticalmente con el nodo principal,
   y los otros dos abiertos hacia el interior. */

/* Cerrados en el centro del nodo principal */
.electronica .sat1,
.electronica .sat2,
.electronica .sat3,
.electronica .sat4{
  transform:translate(0,0) scale(.18);
  opacity:0;
}

/* Abiertos:
   sat1 = extremo superior, misma vertical
   sat4 = extremo inferior, misma vertical
   sat2/sat3 = desplazados hacia la izquierda, equilibrados */
.electronica:hover .sat1{
  transform:translate(0,-142px) scale(1);
  opacity:1;
}
.electronica:hover .sat2{
  transform:translate(-128px,-60px) scale(1);
  opacity:1;
}
.electronica:hover .sat3{
  transform:translate(-128px,60px) scale(1);
  opacity:1;
}
.electronica:hover .sat4{
  transform:translate(0,142px) scale(1);
  opacity:1;
}

/* Pantallas medianas */
@media(max-width:1100px){
  .electronica .sat1,
  .electronica .sat2,
  .electronica .sat3,
  .electronica .sat4{
    transform:translate(0,0) scale(.18);
    opacity:0;
  }
  .electronica:hover .sat1{transform:translate(0,-122px) scale(1);opacity:1}
  .electronica:hover .sat2{transform:translate(-108px,-52px) scale(1);opacity:1}
  .electronica:hover .sat3{transform:translate(-108px,52px) scale(1);opacity:1}
  .electronica:hover .sat4{transform:translate(0,122px) scale(1);opacity:1}
}

/* Móvil */
@media(max-width:760px){
  .electronica .sat1,
  .electronica .sat2,
  .electronica .sat3,
  .electronica .sat4{
    transform:translate(0,0) scale(.18);
    opacity:0;
  }
  .electronica:hover .sat1{transform:translate(0,-96px) scale(1);opacity:1}
  .electronica:hover .sat2{transform:translate(-82px,-40px) scale(1);opacity:1}
  .electronica:hover .sat3{transform:translate(-82px,40px) scale(1);opacity:1}
  .electronica:hover .sat4{transform:translate(0,96px) scale(1);opacity:1}
}


/* V10 — criterio de paralelismo global para todos los nodos principales */

/* TELECO (arriba):
   extremos alineados horizontalmente con TELECO;
   los otros dos se abren hacia el interior (abajo). */
.teleco .sat1,
.teleco .sat2,
.teleco .sat3,
.teleco .sat4{
  transform:translate(0,0) scale(.18);
  opacity:0;
}
.teleco:hover .sat1{
  transform:translate(-142px,0) scale(1);
  opacity:1;
}
.teleco:hover .sat2{
  transform:translate(142px,0) scale(1);
  opacity:1;
}
.teleco:hover .sat3{
  transform:translate(-60px,128px) scale(1);
  opacity:1;
}
.teleco:hover .sat4{
  transform:translate(60px,128px) scale(1);
  opacity:1;
}

/* DISEÑO 3D (izquierda):
   extremos alineados verticalmente con el nodo;
   los otros dos se abren hacia el interior (derecha). */
.diseno .sat1,
.diseno .sat2,
.diseno .sat3,
.diseno .sat4{
  transform:translate(0,0) scale(.18);
  opacity:0;
}
.diseno:hover .sat1{
  transform:translate(0,-142px) scale(1);
  opacity:1;
}
.diseno:hover .sat2{
  transform:translate(128px,-60px) scale(1);
  opacity:1;
}
.diseno:hover .sat3{
  transform:translate(128px,60px) scale(1);
  opacity:1;
}
.diseno:hover .sat4{
  transform:translate(0,142px) scale(1);
  opacity:1;
}

/* ELECTRÓNICA (derecha):
   se conserva la geometría aprobada de V9. */
.electronica .sat1,
.electronica .sat2,
.electronica .sat3,
.electronica .sat4{
  transform:translate(0,0) scale(.18);
  opacity:0;
}
.electronica:hover .sat1{
  transform:translate(0,-142px) scale(1);
  opacity:1;
}
.electronica:hover .sat2{
  transform:translate(-128px,-60px) scale(1);
  opacity:1;
}
.electronica:hover .sat3{
  transform:translate(-128px,60px) scale(1);
  opacity:1;
}
.electronica:hover .sat4{
  transform:translate(0,142px) scale(1);
  opacity:1;
}

/* PRÓXIMAMENTE (abajo):
   extremos alineados horizontalmente con el nodo;
   los otros dos se abren hacia el interior (arriba). */
.futuro .sat1,
.futuro .sat2,
.futuro .sat3,
.futuro .sat4{
  transform:translate(0,0) scale(.18);
  opacity:0;
}
.futuro:hover .sat1{
  transform:translate(-142px,0) scale(1);
  opacity:1;
}
.futuro:hover .sat2{
  transform:translate(142px,0) scale(1);
  opacity:1;
}
.futuro:hover .sat3{
  transform:translate(-60px,-128px) scale(1);
  opacity:1;
}
.futuro:hover .sat4{
  transform:translate(60px,-128px) scale(1);
  opacity:1;
}

/* Pantallas medianas */
@media(max-width:1100px){
  .teleco:hover .sat1{transform:translate(-122px,0) scale(1)}
  .teleco:hover .sat2{transform:translate(122px,0) scale(1)}
  .teleco:hover .sat3{transform:translate(-52px,108px) scale(1)}
  .teleco:hover .sat4{transform:translate(52px,108px) scale(1)}

  .diseno:hover .sat1{transform:translate(0,-122px) scale(1)}
  .diseno:hover .sat2{transform:translate(108px,-52px) scale(1)}
  .diseno:hover .sat3{transform:translate(108px,52px) scale(1)}
  .diseno:hover .sat4{transform:translate(0,122px) scale(1)}

  .electronica:hover .sat1{transform:translate(0,-122px) scale(1)}
  .electronica:hover .sat2{transform:translate(-108px,-52px) scale(1)}
  .electronica:hover .sat3{transform:translate(-108px,52px) scale(1)}
  .electronica:hover .sat4{transform:translate(0,122px) scale(1)}

  .futuro:hover .sat1{transform:translate(-122px,0) scale(1)}
  .futuro:hover .sat2{transform:translate(122px,0) scale(1)}
  .futuro:hover .sat3{transform:translate(-52px,-108px) scale(1)}
  .futuro:hover .sat4{transform:translate(52px,-108px) scale(1)}
}

/* Móvil */
@media(max-width:760px){
  .teleco:hover .sat1{transform:translate(-96px,0) scale(1)}
  .teleco:hover .sat2{transform:translate(96px,0) scale(1)}
  .teleco:hover .sat3{transform:translate(-40px,82px) scale(1)}
  .teleco:hover .sat4{transform:translate(40px,82px) scale(1)}

  .diseno:hover .sat1{transform:translate(0,-96px) scale(1)}
  .diseno:hover .sat2{transform:translate(82px,-40px) scale(1)}
  .diseno:hover .sat3{transform:translate(82px,40px) scale(1)}
  .diseno:hover .sat4{transform:translate(0,96px) scale(1)}

  .electronica:hover .sat1{transform:translate(0,-96px) scale(1)}
  .electronica:hover .sat2{transform:translate(-82px,-40px) scale(1)}
  .electronica:hover .sat3{transform:translate(-82px,40px) scale(1)}
  .electronica:hover .sat4{transform:translate(0,96px) scale(1)}

  .futuro:hover .sat1{transform:translate(-96px,0) scale(1)}
  .futuro:hover .sat2{transform:translate(96px,0) scale(1)}
  .futuro:hover .sat3{transform:translate(-40px,-82px) scale(1)}
  .futuro:hover .sat4{transform:translate(40px,-82px) scale(1)}
}


/* V11 — círculos del menú principal visibles permanentemente en Inicio */
.home-main-menu{
  position:absolute;
  z-index:12;
  left:5vw;
  bottom:7vh;
  display:flex;
  align-items:center;
  gap:14px;
}
.home-menu-circle{
  position:relative;
  width:92px;
  height:92px;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#fff;
  border:1px solid rgba(255,255,255,.30);
  background:rgba(7,12,25,.58);
  backdrop-filter:blur(13px);
  box-shadow:0 12px 35px rgba(0,0,0,.24);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease;
}
.home-menu-circle::before{
  content:"";
  position:absolute;
  inset:7px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.08);
}
.home-menu-circle b{
  position:relative;
  z-index:2;
  font-size:.58rem;
  color:var(--cyan);
  letter-spacing:.14em;
  margin-bottom:5px;
}
.home-menu-circle span{
  position:relative;
  z-index:2;
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.10em;
  line-height:1.25;
}
.home-menu-circle:hover{
  transform:translateY(-8px) scale(1.07);
  border-color:rgba(60,242,255,.75);
  box-shadow:0 0 32px rgba(60,242,255,.23),0 18px 42px rgba(0,0,0,.30);
  background:rgba(8,18,31,.78);
}
.home-menu-circle.active{
  background:linear-gradient(145deg,rgba(20,82,100,.78),rgba(16,23,49,.74));
  border-color:rgba(60,242,255,.58);
}
.hm-quienes:hover{border-color:rgba(139,92,246,.85);box-shadow:0 0 32px rgba(139,92,246,.28)}
.hm-servicios:hover{border-color:rgba(255,60,172,.80);box-shadow:0 0 32px rgba(255,60,172,.25)}
.hm-contactar:hover{border-color:rgba(167,255,79,.80);box-shadow:0 0 32px rgba(167,255,79,.22)}

/* El indicador Descubrir se desplaza para no interferir con el nuevo menú */
.scroll-cue{
  left:auto;
  right:5vw;
  bottom:3vh;
}

@media(max-width:1100px){
  .home-main-menu{
    left:4vw;
    bottom:4vh;
    gap:10px;
  }
  .home-menu-circle{
    width:78px;
    height:78px;
  }
  .home-menu-circle span{font-size:.51rem}
}

@media(max-width:760px){
  .home-main-menu{
    position:absolute;
    left:50%;
    bottom:18px;
    transform:translateX(-50%);
    width:calc(100% - 28px);
    justify-content:center;
    gap:7px;
  }
  .home-menu-circle{
    width:72px;
    height:72px;
    flex:0 0 72px;
  }
  .home-menu-circle b{font-size:.50rem;margin-bottom:3px}
  .home-menu-circle span{font-size:.45rem}
  .scroll-cue{display:none}
}


/* V12 — identidad ArEsIT */
.brand > span:last-child{
  display:flex;
  flex-direction:column;
  align-items:center;
}
.brand b{
  font-size:1.32rem;
  line-height:1;
  letter-spacing:.075em;
  text-align:center;
}
.brand small{
  display:block;
  margin-top:6px;
  width:100%;
  text-align:center;
  font-size:.57rem;
  line-height:1;
  letter-spacing:.10em;
  color:#c0cad9;
  text-transform:none;
}
@media(max-width:760px){
  .brand small{
    display:block;
    font-size:.49rem;
    margin-top:5px;
  }
  .brand b{font-size:1.16rem}
}


/* V13 — ArEsIT aproximadamente 4 veces mayor */
.brand{
  align-items:center;
}
.brand-symbol{
  font-size:54px;
}
.brand b{
  font-size:5.25rem;
  line-height:.78;
  letter-spacing:.025em;
  font-weight:800;
  text-align:center;
}
.brand small{
  margin-top:14px;
  font-size:.88rem;
  letter-spacing:.18em;
  text-align:center;
  width:100%;
}

/* La cabecera gana altura visual sin crear una franja sólida */
.topbar{
  height:128px;
  align-items:center;
}

@media(max-width:1100px){
  .brand b{font-size:4.2rem}
  .brand small{font-size:.75rem;margin-top:11px}
  .brand-symbol{font-size:46px}
  .topbar{height:112px}
}

@media(max-width:760px){
  .brand b{font-size:2.65rem}
  .brand small{
    display:block;
    font-size:.52rem;
    margin-top:8px;
    letter-spacing:.10em;
  }
  .brand-symbol{font-size:34px}
  .topbar{height:88px}
}


/* V14 — ArEs Infocom Telecom ocupa visualmente el ancho de ArEsIT */
.brand > span:last-child{
  width:max-content;
}
.brand small{
  width:100%;
  box-sizing:border-box;
  font-size:1.12rem;
  font-weight:600;
  letter-spacing:.235em;
  white-space:nowrap;
  text-align:center;
  margin-top:15px;
}

/* Ajustes proporcionales responsive */
@media(max-width:1100px){
  .brand small{
    font-size:.91rem;
    letter-spacing:.225em;
    margin-top:12px;
  }
}
@media(max-width:760px){
  .brand small{
    font-size:.56rem;
    letter-spacing:.17em;
    margin-top:8px;
  }
}


/* V15 — identidad gráfica tecnológica ArEsIT */
.brand > span:last-child{
  position:relative;
  width:max-content;
  padding:8px 4px 5px;
}

/* Nombre principal: tratamiento tipo logotipo tecnológico */
.brand b{
  position:relative;
  display:block;
  font-family:"Arial Black","Bahnschrift SemiBold","Segoe UI",sans-serif;
  font-size:5.25rem;
  font-weight:900;
  font-stretch:expanded;
  font-style:italic;
  line-height:.76;
  letter-spacing:.035em;
  text-transform:none;
  background:linear-gradient(102deg,#f7ffff 0%,#79f6ff 22%,#3cf2ff 39%,#9a7cff 66%,#ff4ab8 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  filter:drop-shadow(0 0 8px rgba(60,242,255,.22)) drop-shadow(0 0 18px rgba(139,92,246,.16));
  transform:skewX(-4deg);
}

/* Línea gráfica inferior tipo circuito */
.brand b::after{
  content:"";
  position:absolute;
  left:2%;
  right:0;
  bottom:-13px;
  height:3px;
  background:linear-gradient(90deg,
    transparent 0%,
    #3cf2ff 8%,
    #3cf2ff 36%,
    transparent 36%,
    transparent 40%,
    #9a7cff 40%,
    #9a7cff 72%,
    #ff4ab8 91%,
    transparent 100%);
  box-shadow:0 0 12px rgba(60,242,255,.45);
  clip-path:polygon(0 35%,30% 35%,32% 0,34% 70%,58% 70%,60% 25%,78% 25%,80% 55%,100% 55%,100% 100%,80% 100%,78% 75%,60% 75%,58% 100%,34% 100%,32% 45%,30% 100%,0 100%);
}

/* Pequeño detalle técnico a la derecha del logotipo */
.brand > span:last-child::after{
  content:"";
  position:absolute;
  right:-16px;
  top:9px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#ff4ab8;
  box-shadow:
    0 0 9px #ff4ab8,
    0 17px 0 -2px #8b5cf6,
    0 17px 9px -1px rgba(139,92,246,.7);
}

/* Segundo renglón: misma identidad, más fino y técnico */
.brand small{
  position:relative;
  display:block;
  width:100%;
  margin-top:23px;
  font-family:"Bahnschrift","Segoe UI",sans-serif;
  font-size:1.08rem;
  font-weight:600;
  font-style:normal;
  letter-spacing:.235em;
  white-space:nowrap;
  text-align:center;
  text-transform:uppercase;
  background:linear-gradient(90deg,#b9faff,#e9ecff 48%,#d8caff 72%,#ffb7dd);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  text-shadow:none;
}

/* Símbolo de marca también recibe el tratamiento cromático */
.brand-symbol{
  color:#7df8ff;
  text-shadow:
    0 0 12px rgba(60,242,255,.75),
    0 0 30px rgba(139,92,246,.45);
  transform:rotate(-12deg);
}

/* Hover muy discreto para dar sensación electrónica */
.brand:hover b{
  filter:drop-shadow(0 0 10px rgba(60,242,255,.38)) drop-shadow(0 0 24px rgba(139,92,246,.24));
}
.brand:hover > span:last-child::after{
  background:#3cf2ff;
  box-shadow:0 0 14px #3cf2ff,0 17px 0 -2px #ff4ab8,0 17px 10px -1px rgba(255,60,172,.7);
}

/* Responsive */
@media(max-width:1100px){
  .brand b{font-size:4.15rem}
  .brand small{
    font-size:.86rem;
    letter-spacing:.225em;
    margin-top:20px;
  }
}
@media(max-width:760px){
  .brand b{
    font-size:2.55rem;
    letter-spacing:.025em;
  }
  .brand b::after{
    bottom:-9px;
    height:2px;
  }
  .brand small{
    display:block;
    font-size:.51rem;
    letter-spacing:.16em;
    margin-top:15px;
  }
  .brand > span:last-child::after{
    right:-9px;
    top:6px;
    width:5px;
    height:5px;
  }
}


/* V16 — ArEsIT recto: se elimina únicamente la inclinación */
.brand b{
  font-style:normal;
  transform:none;
}


/* V17 — páginas secundarias compactas, sin scroll en escritorio estándar */
@media(min-width:900px){
  body:has(.subhero){
    min-height:100vh;
    display:grid;
    grid-template-rows:auto auto 1fr auto;
    overflow:hidden;
  }

  .subhero{
    min-height:24vh !important;
    padding:112px 6vw 26px !important;
    align-items:end !important;
  }

  .subhero h1{
    font-size:clamp(2.15rem,4vw,3.8rem) !important;
    line-height:.95 !important;
    margin:0 !important;
  }

  .subhero .kicker{
    margin-bottom:8px !important;
    font-size:.64rem !important;
  }

  .pagebody{
    padding:26px 6vw 20px !important;
    max-width:1180px !important;
    width:100%;
    line-height:1.45 !important;
    font-size:.92rem !important;
    overflow:hidden;
  }

  .pagebody p{
    margin:.35rem 0 .7rem !important;
  }

  .pagebody h2{
    font-size:1.28rem !important;
    line-height:1.15 !important;
    margin:1.05rem 0 .35rem !important;
  }

  .pagebody .back{
    margin-top:12px !important;
    font-size:.85rem !important;
  }

  body:has(.subhero) footer{
    padding:14px 5vw !important;
    font-size:.66rem !important;
  }

  body:has(.subhero) .topbar{
    height:96px !important;
  }

  body:has(.subhero) .brand b{
    font-size:3.15rem !important;
  }

  body:has(.subhero) .brand small{
    font-size:.64rem !important;
    margin-top:12px !important;
  }

  body:has(.subhero) .brand-symbol{
    font-size:38px !important;
  }

  /* Formulario compacto en Contactar */
  .pagebody form{
    gap:8px !important;
    max-width:760px !important;
    grid-template-columns:1fr 1fr;
  }

  .pagebody form input,
  .pagebody form select,
  .pagebody form textarea{
    padding:9px 11px !important;
    font-size:.86rem !important;
  }

  .pagebody form textarea{
    min-height:90px !important;
    height:90px !important;
    grid-column:1 / -1;
  }

  .pagebody form button{
    padding:10px 14px !important;
    font-size:.78rem !important;
    grid-column:1 / -1;
    justify-self:start;
  }

  /* Servicios en dos columnas para evitar scroll */
  body:has(.pagebody h2#teleco) .pagebody{
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:42px;
    align-content:start;
  }

  body:has(.pagebody h2#teleco) .pagebody h2,
  body:has(.pagebody h2#teleco) .pagebody p{
    break-inside:avoid;
  }

  body:has(.pagebody h2#teleco) .pagebody .back{
    grid-column:1 / -1;
  }
}

@media(max-width:899px){
  .subhero{
    min-height:32vh !important;
    padding:105px 6vw 38px !important;
  }
  .subhero h1{
    font-size:clamp(2.3rem,9vw,4rem) !important;
  }
  .pagebody{
    padding:42px 6vw !important;
    font-size:.95rem !important;
    line-height:1.55 !important;
  }
  .pagebody h2{
    font-size:1.55rem !important;
    margin-top:1.6rem !important;
  }
}


/* V18 — TELECO: despliegue secundario perfectamente centrado respecto al nodo principal.
   Los dos extremos quedan simétricos en horizontal y los dos interiores,
   simétricos respecto al eje vertical exacto de TELECO. */

.teleco .sat1,
.teleco .sat2,
.teleco .sat3,
.teleco .sat4{
  transform:translate(0,0) scale(.18);
  opacity:0;
}

/* Escritorio */
.teleco:hover .sat1{
  transform:translate(-145px,0) scale(1);
  opacity:1;
}
.teleco:hover .sat2{
  transform:translate(145px,0) scale(1);
  opacity:1;
}
.teleco:hover .sat3{
  transform:translate(-64px,126px) scale(1);
  opacity:1;
}
.teleco:hover .sat4{
  transform:translate(64px,126px) scale(1);
  opacity:1;
}

/* Pantallas medianas */
@media(max-width:1100px){
  .teleco:hover .sat1{transform:translate(-124px,0) scale(1);opacity:1}
  .teleco:hover .sat2{transform:translate(124px,0) scale(1);opacity:1}
  .teleco:hover .sat3{transform:translate(-54px,108px) scale(1);opacity:1}
  .teleco:hover .sat4{transform:translate(54px,108px) scale(1);opacity:1}
}

/* Móvil */
@media(max-width:760px){
  .teleco:hover .sat1{transform:translate(-96px,0) scale(1);opacity:1}
  .teleco:hover .sat2{transform:translate(96px,0) scale(1);opacity:1}
  .teleco:hover .sat3{transform:translate(-42px,82px) scale(1);opacity:1}
  .teleco:hover .sat4{transform:translate(42px,82px) scale(1);opacity:1}
}


/* V19 — TELECO: toda la superficie del círculo principal activa el despliegue */
.teleco{
  position:absolute;
  width:120px;
  height:120px;
  border-radius:50%;
  pointer-events:auto;
  z-index:30;
  cursor:pointer;
}

/* Capa invisible que garantiza un área hover circular completa */
.teleco::before{
  content:"";
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border-radius:50%;
  background:transparent;
  pointer-events:auto;
  z-index:0;
}

/* El contenido visible queda por encima de la capa sensible */
.teleco .node-core,
.teleco .node-title{
  position:relative;
  z-index:2;
  pointer-events:none;
}

/* Los círculos secundarios no interfieren con la detección del principal */
.teleco .sat{
  pointer-events:none;
  z-index:3;
}

/* Mantener TELECO por encima de anillos y elementos decorativos */
.teleco:hover{
  z-index:40;
}

/* Ajuste responsive coherente con el tamaño de los nodos */
@media(max-width:760px){
  .teleco{
    width:98px;
    height:98px;
  }
}


/* V20 — solución robusta: hitbox independiente para TELECO */
.teleco-hitbox{
  position:absolute;
  left:50%;
  top:-1%;
  transform:translateX(-50%);
  width:120px;
  height:120px;
  border:0;
  border-radius:50%;
  padding:0;
  margin:0;
  background:transparent;
  cursor:pointer;
  z-index:60;
  pointer-events:auto;
}

/* El nodo visual queda justo debajo de la hitbox */
.teleco{
  z-index:50;
}

/* La clase .is-open sustituye el hover para TELECO */
.teleco.is-open{
  transform:translateX(-50%) scale(1.12);
  box-shadow:0 0 55px rgba(60,242,255,.32);
  z-index:55;
}
.teleco.is-open .sat1{
  transform:translate(-145px,0) scale(1);
  opacity:1;
}
.teleco.is-open .sat2{
  transform:translate(145px,0) scale(1);
  opacity:1;
}
.teleco.is-open .sat3{
  transform:translate(-64px,126px) scale(1);
  opacity:1;
}
.teleco.is-open .sat4{
  transform:translate(64px,126px) scale(1);
  opacity:1;
}

/* Para evitar dobles comportamientos, el hover CSS de TELECO deja de gobernar la apertura */
.teleco:hover .sat1,
.teleco:hover .sat2,
.teleco:hover .sat3,
.teleco:hover .sat4{
  opacity:0;
  transform:translate(0,0) scale(.18);
}

/* Cuando JS mantiene abierto, tiene prioridad */
.teleco.is-open .sat1{transform:translate(-145px,0) scale(1) !important;opacity:1 !important}
.teleco.is-open .sat2{transform:translate(145px,0) scale(1) !important;opacity:1 !important}
.teleco.is-open .sat3{transform:translate(-64px,126px) scale(1) !important;opacity:1 !important}
.teleco.is-open .sat4{transform:translate(64px,126px) scale(1) !important;opacity:1 !important}

/* Hitbox extendida para permitir pasar desde principal a secundarios sin cierre brusco */
.teleco-hitbox::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:390px;
  height:290px;
  transform:translate(-50%,-18%);
  border-radius:48%;
  background:transparent;
}

@media(max-width:1100px){
  .teleco.is-open .sat1{transform:translate(-124px,0) scale(1) !important}
  .teleco.is-open .sat2{transform:translate(124px,0) scale(1) !important}
  .teleco.is-open .sat3{transform:translate(-54px,108px) scale(1) !important}
  .teleco.is-open .sat4{transform:translate(54px,108px) scale(1) !important}
  .teleco-hitbox::after{width:340px;height:250px}
}

@media(max-width:760px){
  .teleco-hitbox{
    width:98px;
    height:98px;
  }
  .teleco.is-open .sat1{transform:translate(-96px,0) scale(1) !important}
  .teleco.is-open .sat2{transform:translate(96px,0) scale(1) !important}
  .teleco.is-open .sat3{transform:translate(-42px,82px) scale(1) !important}
  .teleco.is-open .sat4{transform:translate(42px,82px) scale(1) !important}
  .teleco-hitbox::after{width:270px;height:205px}
}


/* V21 CORREGIDA
   TELECO: zona sensible exactamente igual al círculo visible.
   No se altera ninguna otra parte del diseño. */

.teleco-hitbox{
  left:50% !important;
  top:-1% !important;
  transform:translateX(-50%) !important;
  width:120px !important;
  height:120px !important;
  border-radius:50% !important;
  overflow:hidden !important;
}

/* Eliminar completamente la antigua prolongación invisible hacia EXPLORAR */
.teleco-hitbox::after{
  content:none !important;
  display:none !important;
  width:0 !important;
  height:0 !important;
}

/* Mismo centro y diámetro para círculo visible y zona sensible */
.teleco{
  left:50% !important;
  top:-1% !important;
  width:120px !important;
  height:120px !important;
}

@media(max-width:760px){
  .teleco-hitbox,
  .teleco{
    width:98px !important;
    height:98px !important;
  }
}


/* V22 — corrección real del hover de TELECO
   La cabecera transparente estaba interceptando el puntero sobre
   la zona superior del círculo TELECO. */

/* La superficie vacía/transparente de la cabecera deja pasar el puntero */
.topbar{
  pointer-events:none !important;
}

/* Solo los controles reales de la cabecera siguen siendo interactivos */
.topbar .brand,
.topbar .brand *,
.topbar .menu-trigger,
.topbar .menu-trigger *{
  pointer-events:auto !important;
}

/* TELECO mantiene exactamente el mismo centro, diámetro y geometría */
.teleco-hitbox{
  z-index:70 !important;
}
.teleco{
  z-index:65 !important;
}
.teleco.is-open{
  z-index:75 !important;
}


/* =============================================================
   V25 — PORTADA CENTRADA REAL
   Estructura nueva inspirada en el concepto gráfico aprobado.
   ============================================================= */

body.home-centered{
  background:#040817;
  overflow:hidden;
}

.home-centered .hero-centered{
  height:100vh;
  min-height:720px;
  position:relative;
  overflow:hidden;
  background:#050914;
}

.home-centered .centered-topbar{
  height:118px;
  padding:20px 3vw 0;
  align-items:flex-start;
  pointer-events:none;
}
.home-centered .centered-topbar .brand,
.home-centered .centered-topbar .brand *,
.home-centered .centered-topbar .menu-trigger,
.home-centered .centered-topbar .menu-trigger *{
  pointer-events:auto;
}

.home-centered .brand b{
  font-size:4.8rem;
  line-height:.72;
}
.home-centered .brand small{
  font-size:.92rem;
  margin-top:19px;
}
.home-centered .brand-symbol{
  font-size:50px;
  margin-top:7px;
}

.home-centered .centered-wash{
  background:
    radial-gradient(circle at 24% 28%,rgba(60,242,255,.18),transparent 31%),
    radial-gradient(circle at 70% 46%,rgba(109,76,255,.24),transparent 34%),
    radial-gradient(circle at 79% 69%,rgba(255,60,172,.16),transparent 30%),
    linear-gradient(180deg,rgba(3,7,18,.58),rgba(3,7,18,.80));
}

.home-centered .centered-stage{
  position:relative;
  z-index:5;
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  padding-top:116px;
}

.home-centered .centered-orbit{
  position:relative !important;
  right:auto !important;
  left:auto !important;
  top:auto !important;
  bottom:auto !important;
  transform:none !important;
  width:min(64vh,680px) !important;
  height:min(64vh,680px) !important;
  flex:0 0 auto;
  margin-top:5px;
  border-radius:50%;
  z-index:12;
}

.home-centered .centered-orbit .ring1{
  inset:7% !important;
  border:1px solid rgba(70,140,255,.34) !important;
}
.home-centered .centered-orbit .ring2{
  inset:24% !important;
  border:1px dashed rgba(143,98,255,.22) !important;
}
.home-centered .centered-orbit .ring3{
  position:absolute;
  inset:39%;
  border:1px solid rgba(60,242,255,.20);
  border-radius:50%;
}

.home-centered .centered-emblem{
  width:152px !important;
  height:152px !important;
  background:rgba(7,10,30,.88) !important;
  box-shadow:
    0 0 0 16px rgba(60,242,255,.04),
    0 0 0 17px rgba(139,92,246,.24),
    0 0 48px rgba(75,120,255,.22) !important;
}
.home-centered .centered-emblem b{
  font-size:48px !important;
}
.home-centered .centered-emblem small{
  font-size:.63rem !important;
  letter-spacing:.21em !important;
}

.home-centered .service-node{
  width:132px !important;
  height:132px !important;
  background:rgba(5,8,24,.94) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:0 0 34px rgba(20,40,120,.18);
}

.home-centered .teleco{
  left:50% !important;
  top:0 !important;
  transform:translateX(-50%) !important;
}
.home-centered .teleco:hover,
.home-centered .teleco.is-open{
  transform:translateX(-50%) scale(1.10) !important;
}

.home-centered .diseno{
  left:0 !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}
.home-centered .diseno:hover{
  transform:translateY(-50%) scale(1.10) !important;
}

.home-centered .electronica{
  right:0 !important;
  left:auto !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}
.home-centered .electronica:hover{
  transform:translateY(-50%) scale(1.10) !important;
}

.home-centered .futuro{
  left:50% !important;
  bottom:0 !important;
  top:auto !important;
  transform:translateX(-50%) !important;
}
.home-centered .futuro:hover{
  transform:translateX(-50%) scale(1.10) !important;
}

.home-centered .teleco-hitbox{
  left:50% !important;
  top:0 !important;
  transform:translateX(-50%) !important;
  width:132px !important;
  height:132px !important;
  border-radius:50% !important;
  overflow:hidden !important;
  z-index:70 !important;
}
.home-centered .teleco-hitbox::after{
  display:none !important;
  content:none !important;
}

.home-centered .node-core{
  width:52px;
  height:52px;
}
.home-centered .node-title{
  margin-top:7px;
  font-size:.58rem;
  letter-spacing:.13em;
}

.home-centered .centered-copy{
  text-align:center;
  margin-top:10px;
  width:min(880px,88vw);
  color:#fff;
  z-index:10;
}
.home-centered .centered-copy .kicker{
  font-size:.71rem;
  letter-spacing:.29em;
  margin-bottom:10px;
}
.home-centered .centered-copy h1{
  margin:0;
  font-size:clamp(2rem,3vw,3.3rem);
  line-height:1;
  letter-spacing:-.035em;
  font-weight:800;
}
.home-centered .centered-copy h1 span{
  background:linear-gradient(90deg,#4deaff,#8e83ff 52%,#ff4aaa);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.home-centered .centered-copy p:not(.kicker){
  margin:11px auto 0;
  color:#cbd4e6;
  font-size:.95rem;
  line-height:1.45;
}

.home-centered .centered-shortcuts{
  position:absolute;
  left:3vw;
  bottom:24px;
  display:flex;
  gap:11px;
  z-index:18;
}
.home-centered .shortcut{
  width:88px;
  height:88px;
  border-radius:50%;
  display:grid;
  place-items:center;
  text-align:center;
  padding:12px;
  background:rgba(5,10,28,.74);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-size:.52rem;
  font-weight:800;
  letter-spacing:.09em;
  line-height:1.2;
  transition:.25s ease;
  backdrop-filter:blur(10px);
}
.home-centered .shortcut::before{
  content:"";
  position:absolute;
  width:7px;
  height:7px;
  margin-top:-46px;
  border-radius:50%;
  background:#4feaff;
  box-shadow:0 0 10px currentColor;
}
.home-centered .shortcut:hover{
  transform:translateY(-6px) scale(1.06);
  border-color:rgba(60,242,255,.58);
}
.home-centered .sc-quienes::before{background:#9a78ff}
.home-centered .sc-servicios::before{background:#ff67b9}
.home-centered .sc-contactar::before{background:#a7ff4f}

/* Reglas de apertura secundaria preservadas, adaptadas al tamaño/posición V25 */
.home-centered .teleco.is-open .sat1{transform:translate(-145px,0) scale(1) !important;opacity:1 !important}
.home-centered .teleco.is-open .sat2{transform:translate(145px,0) scale(1) !important;opacity:1 !important}
.home-centered .teleco.is-open .sat3{transform:translate(-64px,126px) scale(1) !important;opacity:1 !important}
.home-centered .teleco.is-open .sat4{transform:translate(64px,126px) scale(1) !important;opacity:1 !important}

.home-centered .diseno:hover .sat1{transform:translate(0,-142px) scale(1) !important;opacity:1 !important}
.home-centered .diseno:hover .sat2{transform:translate(128px,-60px) scale(1) !important;opacity:1 !important}
.home-centered .diseno:hover .sat3{transform:translate(128px,60px) scale(1) !important;opacity:1 !important}
.home-centered .diseno:hover .sat4{transform:translate(0,142px) scale(1) !important;opacity:1 !important}

.home-centered .electronica:hover .sat1{transform:translate(0,-142px) scale(1) !important;opacity:1 !important}
.home-centered .electronica:hover .sat2{transform:translate(-128px,-60px) scale(1) !important;opacity:1 !important}
.home-centered .electronica:hover .sat3{transform:translate(-128px,60px) scale(1) !important;opacity:1 !important}
.home-centered .electronica:hover .sat4{transform:translate(0,142px) scale(1) !important;opacity:1 !important}

.home-centered .futuro:hover .sat1{transform:translate(-142px,0) scale(1) !important;opacity:1 !important}
.home-centered .futuro:hover .sat2{transform:translate(142px,0) scale(1) !important;opacity:1 !important}
.home-centered .futuro:hover .sat3{transform:translate(-60px,-128px) scale(1) !important;opacity:1 !important}
.home-centered .futuro:hover .sat4{transform:translate(60px,-128px) scale(1) !important;opacity:1 !important}

/* Pantallas de poca altura: compactar todo manteniendo el formato */
@media(min-width:900px) and (max-height:820px){
  .home-centered .centered-stage{padding-top:92px}
  .home-centered .brand b{font-size:3.8rem}
  .home-centered .brand small{font-size:.72rem;margin-top:14px}
  .home-centered .brand-symbol{font-size:40px}
  .home-centered .centered-orbit{
    width:min(59vh,560px) !important;
    height:min(59vh,560px) !important;
  }
  .home-centered .service-node{
    width:112px !important;
    height:112px !important;
  }
  .home-centered .teleco-hitbox{
    width:112px !important;
    height:112px !important;
  }
  .home-centered .centered-emblem{
    width:132px !important;
    height:132px !important;
  }
  .home-centered .centered-copy{margin-top:6px}
  .home-centered .centered-copy h1{font-size:2rem}
  .home-centered .centered-copy p:not(.kicker){font-size:.82rem;margin-top:7px}
  .home-centered .centered-shortcuts{bottom:16px}
  .home-centered .shortcut{width:72px;height:72px;font-size:.44rem}
}

/* Tablet/móvil: una sola columna visual, sin perder la órbita */
@media(max-width:899px){
  body.home-centered{overflow:auto}
  .home-centered .hero-centered{height:auto;min-height:1050px}
  .home-centered .centered-topbar{
    height:92px;
    padding:14px 18px 0;
  }
  .home-centered .brand b{font-size:2.7rem}
  .home-centered .brand small{font-size:.52rem;margin-top:10px}
  .home-centered .brand-symbol{font-size:32px}
  .home-centered .centered-stage{padding-top:105px}
  .home-centered .centered-orbit{
    width:88vw !important;
    height:88vw !important;
    max-width:560px !important;
    max-height:560px !important;
  }
  .home-centered .service-node{
    width:96px !important;
    height:96px !important;
  }
  .home-centered .teleco-hitbox{
    width:96px !important;
    height:96px !important;
  }
  .home-centered .centered-emblem{
    width:116px !important;
    height:116px !important;
  }
  .home-centered .centered-copy{
    margin-top:28px;
    padding:0 18px;
  }
  .home-centered .centered-copy h1{font-size:2.25rem}
  .home-centered .centered-shortcuts{
    position:relative;
    left:auto;
    bottom:auto;
    margin-top:28px;
    justify-content:center;
    flex-wrap:wrap;
    padding-bottom:30px;
  }
  .home-centered .shortcut{width:76px;height:76px}
}


/* ============================================================
   V26 — NUEVO SERVICIO PRIMARIO: PLACAS SOLARES
   ============================================================ */

/* Posición entre ELECTRÓNICA y PRÓXIMAMENTE */
.home-centered .solar{
  right:10.5% !important;
  bottom:11.5% !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
  border-color:rgba(255,190,55,.45) !important;
  box-shadow:
    0 0 0 2px rgba(255,184,52,.08),
    0 0 34px rgba(255,177,41,.20) !important;
}

.home-centered .solar:hover{
  transform:scale(1.10) !important;
  z-index:90 !important;
  box-shadow:
    0 0 0 2px rgba(255,201,83,.18),
    0 0 48px rgba(255,174,45,.34) !important;
}

/* Aspecto fotovoltaico sin depender de imágenes externas */
.home-centered .solar .node-core{
  width:54px;
  height:54px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#ffd45b !important;
  font-size:1.55rem;
  border:2px solid rgba(255,221,126,.68);
  background:
    linear-gradient(rgba(4,20,45,.10),rgba(4,20,45,.10)),
    repeating-linear-gradient(90deg,
      rgba(31,87,143,.95) 0 10px,
      rgba(10,38,74,.95) 10px 12px),
    repeating-linear-gradient(0deg,
      transparent 0 10px,
      rgba(255,255,255,.22) 10px 11px);
  box-shadow:
    inset 0 0 18px rgba(70,145,255,.30),
    0 0 18px rgba(255,189,61,.25);
  text-shadow:0 1px 8px rgba(0,0,0,.9);
}

.home-centered .solar .node-title{
  color:#fff7d6;
  font-size:.54rem;
}

/* Secundarios del servicio solar */
.home-centered .solar .sat{
  border-color:rgba(255,201,92,.62) !important;
  background:
    linear-gradient(180deg,rgba(4,14,30,.26),rgba(4,10,22,.78)),
    repeating-linear-gradient(90deg,
      rgba(32,84,134,.88) 0 8px,
      rgba(8,31,65,.88) 8px 10px);
  box-shadow:
    0 0 0 2px rgba(255,190,65,.16),
    0 0 24px rgba(255,184,58,.20) !important;
}

/* Paralelismo adaptado al cuadrante inferior derecho:
   dos extremos siguiendo la dirección vertical y dos hacia el interior. */
.home-centered .solar:hover .sat1{
  transform:translate(0,-138px) scale(1) !important;
  opacity:1 !important;
}
.home-centered .solar:hover .sat2{
  transform:translate(-118px,-58px) scale(1) !important;
  opacity:1 !important;
}
.home-centered .solar:hover .sat3{
  transform:translate(-118px,58px) scale(1) !important;
  opacity:1 !important;
}
.home-centered .solar:hover .sat4{
  transform:translate(0,138px) scale(1) !important;
  opacity:1 !important;
}

/* Ajustar PRÓXIMAMENTE ligeramente hacia la izquierda para dejar espacio */
.home-centered .futuro{
  left:43% !important;
  bottom:0 !important;
}

/* Pantallas bajas */
@media(min-width:900px) and (max-height:820px){
  .home-centered .solar{
    right:10% !important;
    bottom:10% !important;
  }
  .home-centered .solar:hover .sat1{transform:translate(0,-116px) scale(1) !important}
  .home-centered .solar:hover .sat2{transform:translate(-98px,-48px) scale(1) !important}
  .home-centered .solar:hover .sat3{transform:translate(-98px,48px) scale(1) !important}
  .home-centered .solar:hover .sat4{transform:translate(0,116px) scale(1) !important}
}

/* Tablet/móvil */
@media(max-width:899px){
  .home-centered .solar{
    right:7% !important;
    bottom:8% !important;
  }
  .home-centered .solar:hover .sat1{transform:translate(0,-96px) scale(1) !important}
  .home-centered .solar:hover .sat2{transform:translate(-82px,-40px) scale(1) !important}
  .home-centered .solar:hover .sat3{transform:translate(-82px,40px) scale(1) !important}
  .home-centered .solar:hover .sat4{transform:translate(0,96px) scale(1) !important}
}


/* ============================================================
   V27 — distribución equitativa de los 5 servicios principales
   Pentágono regular alrededor de EXPLORAR.
   Todos los nodos están al mismo radio y separados 72 grados.
   ============================================================ */

@media(min-width:900px){

  /* Coordenadas de los centros sobre una circunferencia de radio ~41% */

  /* 1 — TELECO: 270° */
  .home-centered .teleco{
    left:50% !important;
    top:9% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }
  .home-centered .teleco:hover,
  .home-centered .teleco.is-open{
    transform:translate(-50%,-50%) scale(1.10) !important;
  }
  .home-centered .teleco-hitbox{
    left:50% !important;
    top:9% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  /* 2 — ELECTRÓNICA: 342° */
  .home-centered .electronica{
    left:89% !important;
    top:37.3% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }
  .home-centered .electronica:hover{
    transform:translate(-50%,-50%) scale(1.10) !important;
  }

  /* 3 — PLACAS SOLARES: 54° */
  .home-centered .solar{
    left:74.1% !important;
    top:83.2% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }
  .home-centered .solar:hover{
    transform:translate(-50%,-50%) scale(1.10) !important;
  }

  /* 4 — PRÓXIMAMENTE: 126° */
  .home-centered .futuro{
    left:25.9% !important;
    top:83.2% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }
  .home-centered .futuro:hover{
    transform:translate(-50%,-50%) scale(1.10) !important;
  }

  /* 5 — DISEÑO 3D: 198° */
  .home-centered .diseno{
    left:11% !important;
    top:37.3% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }
  .home-centered .diseno:hover{
    transform:translate(-50%,-50%) scale(1.10) !important;
  }
}

/* En pantallas más pequeñas se conserva el pentágono,
   reduciendo ligeramente el radio para evitar cortes. */
@media(max-width:899px){
  .home-centered .teleco{
    left:50% !important;
    top:12% !important;
    transform:translate(-50%,-50%) !important;
  }
  .home-centered .teleco-hitbox{
    left:50% !important;
    top:12% !important;
    transform:translate(-50%,-50%) !important;
  }
  .home-centered .electronica{
    left:86% !important;
    top:38.5% !important;
    right:auto !important;
    transform:translate(-50%,-50%) !important;
  }
  .home-centered .solar{
    left:72% !important;
    top:79% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }
  .home-centered .futuro{
    left:28% !important;
    top:79% !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }
  .home-centered .diseno{
    left:14% !important;
    top:38.5% !important;
    transform:translate(-50%,-50%) !important;
  }

  .home-centered .teleco:hover,
  .home-centered .teleco.is-open,
  .home-centered .electronica:hover,
  .home-centered .solar:hover,
  .home-centered .futuro:hover,
  .home-centered .diseno:hover{
    transform:translate(-50%,-50%) scale(1.08) !important;
  }
}

/* ============================================================
   V28 — secundarios sin superposición con círculos primarios
   Cada grupo abre en abanico hacia el EXTERIOR de la órbita.
   Los cuatro secundarios quedan dentro del sector libre del nodo.
   ============================================================ */

@media(min-width:900px){


  .home-centered .teleco .sat1,
  .home-centered .teleco .sat2,
  .home-centered .teleco .sat3,
  .home-centered .teleco .sat4{
    transform:translate(0,0) scale(.18) !important;
    opacity:0 !important;
  }

  .home-centered .teleco.is-open .sat1{transform:translate(-93px,-93px) scale(1) !important;opacity:1 !important;}

  .home-centered .teleco.is-open .sat2{transform:translate(-34px,-128px) scale(1) !important;opacity:1 !important;}

  .home-centered .teleco.is-open .sat3{transform:translate(34px,-128px) scale(1) !important;opacity:1 !important;}

  .home-centered .teleco.is-open .sat4{transform:translate(93px,-93px) scale(1) !important;opacity:1 !important;}


  .home-centered .electronica .sat1,
  .home-centered .electronica .sat2,
  .home-centered .electronica .sat3,
  .home-centered .electronica .sat4{
    transform:translate(0,0) scale(.18) !important;
    opacity:0 !important;
  }

  .home-centered .electronica:hover .sat1{transform:translate(60px,-118px) scale(1) !important;opacity:1 !important;}

  .home-centered .electronica:hover .sat2{transform:translate(111px,-72px) scale(1) !important;opacity:1 !important;}

  .home-centered .electronica:hover .sat3{transform:translate(132px,-7px) scale(1) !important;opacity:1 !important;}

  .home-centered .electronica:hover .sat4{transform:translate(118px,60px) scale(1) !important;opacity:1 !important;}


  .home-centered .solar .sat1,
  .home-centered .solar .sat2,
  .home-centered .solar .sat3,
  .home-centered .solar .sat4{
    transform:translate(0,0) scale(.18) !important;
    opacity:0 !important;
  }

  .home-centered .solar:hover .sat1{transform:translate(130px,21px) scale(1) !important;opacity:1 !important;}

  .home-centered .solar:hover .sat2{transform:translate(103px,83px) scale(1) !important;opacity:1 !important;}

  .home-centered .solar:hover .sat3{transform:translate(47px,123px) scale(1) !important;opacity:1 !important;}

  .home-centered .solar:hover .sat4{transform:translate(-21px,130px) scale(1) !important;opacity:1 !important;}


  .home-centered .futuro .sat1,
  .home-centered .futuro .sat2,
  .home-centered .futuro .sat3,
  .home-centered .futuro .sat4{
    transform:translate(0,0) scale(.18) !important;
    opacity:0 !important;
  }

  .home-centered .futuro:hover .sat1{transform:translate(21px,130px) scale(1) !important;opacity:1 !important;}

  .home-centered .futuro:hover .sat2{transform:translate(-47px,123px) scale(1) !important;opacity:1 !important;}

  .home-centered .futuro:hover .sat3{transform:translate(-103px,83px) scale(1) !important;opacity:1 !important;}

  .home-centered .futuro:hover .sat4{transform:translate(-130px,21px) scale(1) !important;opacity:1 !important;}


  .home-centered .diseno .sat1,
  .home-centered .diseno .sat2,
  .home-centered .diseno .sat3,
  .home-centered .diseno .sat4{
    transform:translate(0,0) scale(.18) !important;
    opacity:0 !important;
  }

  .home-centered .diseno:hover .sat1{transform:translate(-118px,60px) scale(1) !important;opacity:1 !important;}

  .home-centered .diseno:hover .sat2{transform:translate(-132px,-7px) scale(1) !important;opacity:1 !important;}

  .home-centered .diseno:hover .sat3{transform:translate(-111px,-72px) scale(1) !important;opacity:1 !important;}

  .home-centered .diseno:hover .sat4{transform:translate(-60px,-118px) scale(1) !important;opacity:1 !important;}

}

@media(min-width:900px) and (max-height:820px){

  .home-centered .teleco.is-open .sat1{transform:translate(-79px,-79px) scale(1) !important;opacity:1 !important;}

  .home-centered .teleco.is-open .sat2{transform:translate(-29px,-108px) scale(1) !important;opacity:1 !important;}

  .home-centered .teleco.is-open .sat3{transform:translate(29px,-108px) scale(1) !important;opacity:1 !important;}

  .home-centered .teleco.is-open .sat4{transform:translate(79px,-79px) scale(1) !important;opacity:1 !important;}

  .home-centered .electronica:hover .sat1{transform:translate(51px,-100px) scale(1) !important;opacity:1 !important;}

  .home-centered .electronica:hover .sat2{transform:translate(94px,-61px) scale(1) !important;opacity:1 !important;}

  .home-centered .electronica:hover .sat3{transform:translate(112px,-6px) scale(1) !important;opacity:1 !important;}

  .home-centered .electronica:hover .sat4{transform:translate(100px,51px) scale(1) !important;opacity:1 !important;}

  .home-centered .solar:hover .sat1{transform:translate(111px,18px) scale(1) !important;opacity:1 !important;}

  .home-centered .solar:hover .sat2{transform:translate(87px,70px) scale(1) !important;opacity:1 !important;}

  .home-centered .solar:hover .sat3{transform:translate(40px,105px) scale(1) !important;opacity:1 !important;}

  .home-centered .solar:hover .sat4{transform:translate(-18px,111px) scale(1) !important;opacity:1 !important;}

  .home-centered .futuro:hover .sat1{transform:translate(18px,111px) scale(1) !important;opacity:1 !important;}

  .home-centered .futuro:hover .sat2{transform:translate(-40px,105px) scale(1) !important;opacity:1 !important;}

  .home-centered .futuro:hover .sat3{transform:translate(-87px,70px) scale(1) !important;opacity:1 !important;}

  .home-centered .futuro:hover .sat4{transform:translate(-111px,18px) scale(1) !important;opacity:1 !important;}

  .home-centered .diseno:hover .sat1{transform:translate(-100px,51px) scale(1) !important;opacity:1 !important;}

  .home-centered .diseno:hover .sat2{transform:translate(-112px,-6px) scale(1) !important;opacity:1 !important;}

  .home-centered .diseno:hover .sat3{transform:translate(-94px,-61px) scale(1) !important;opacity:1 !important;}

  .home-centered .diseno:hover .sat4{transform:translate(-51px,-100px) scale(1) !important;opacity:1 !important;}

}

@media(max-width:899px){

  .home-centered .teleco.is-open .sat1{transform:translate(-65px,-65px) scale(1) !important;opacity:1 !important;}

  .home-centered .teleco.is-open .sat2{transform:translate(-24px,-89px) scale(1) !important;opacity:1 !important;}

  .home-centered .teleco.is-open .sat3{transform:translate(24px,-89px) scale(1) !important;opacity:1 !important;}

  .home-centered .teleco.is-open .sat4{transform:translate(65px,-65px) scale(1) !important;opacity:1 !important;}

  .home-centered .electronica:hover .sat1{transform:translate(42px,-82px) scale(1) !important;opacity:1 !important;}

  .home-centered .electronica:hover .sat2{transform:translate(77px,-50px) scale(1) !important;opacity:1 !important;}

  .home-centered .electronica:hover .sat3{transform:translate(92px,-5px) scale(1) !important;opacity:1 !important;}

  .home-centered .electronica:hover .sat4{transform:translate(82px,42px) scale(1) !important;opacity:1 !important;}

  .home-centered .solar:hover .sat1{transform:translate(91px,14px) scale(1) !important;opacity:1 !important;}

  .home-centered .solar:hover .sat2{transform:translate(71px,58px) scale(1) !important;opacity:1 !important;}

  .home-centered .solar:hover .sat3{transform:translate(33px,86px) scale(1) !important;opacity:1 !important;}

  .home-centered .solar:hover .sat4{transform:translate(-14px,91px) scale(1) !important;opacity:1 !important;}

  .home-centered .futuro:hover .sat1{transform:translate(14px,91px) scale(1) !important;opacity:1 !important;}

  .home-centered .futuro:hover .sat2{transform:translate(-33px,86px) scale(1) !important;opacity:1 !important;}

  .home-centered .futuro:hover .sat3{transform:translate(-71px,58px) scale(1) !important;opacity:1 !important;}

  .home-centered .futuro:hover .sat4{transform:translate(-91px,14px) scale(1) !important;opacity:1 !important;}

  .home-centered .diseno:hover .sat1{transform:translate(-82px,42px) scale(1) !important;opacity:1 !important;}

  .home-centered .diseno:hover .sat2{transform:translate(-92px,-5px) scale(1) !important;opacity:1 !important;}

  .home-centered .diseno:hover .sat3{transform:translate(-77px,-50px) scale(1) !important;opacity:1 !important;}

  .home-centered .diseno:hover .sat4{transform:translate(-42px,-82px) scale(1) !important;opacity:1 !important;}

}


/* ============================================================
   V29 — secundarios contenidos dentro de la zona útil
   Corrección basada en la captura:
   - TELECO ya no abre hacia fuera por la parte superior.
   - SOLAR y PRÓXIMAMENTE ya no invaden lema/descripción.
   - Los laterales abren hacia sectores libres.
   ============================================================ */

@media(min-width:900px){

  /* TELECO: abanico hacia ABAJO, dentro de la órbita.
     Los dos extremos quedan paralelos al eje horizontal del nodo. */
  .home-centered .teleco.is-open .sat1{
    transform:translate(-118px,58px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat2{
    transform:translate(-42px,118px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat3{
    transform:translate(42px,118px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat4{
    transform:translate(118px,58px) scale(1) !important;
    opacity:1 !important;
  }

  /* DISEÑO 3D: abre principalmente hacia arriba/izquierda,
     sin invadir EXPLORAR. */
  .home-centered .diseno:hover .sat1{
    transform:translate(-112px,-50px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat2{
    transform:translate(-48px,-116px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat3{
    transform:translate(34px,-120px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat4{
    transform:translate(-122px,30px) scale(1) !important;
    opacity:1 !important;
  }

  /* ELECTRÓNICA: espejo de Diseño 3D. */
  .home-centered .electronica:hover .sat1{
    transform:translate(112px,-50px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat2{
    transform:translate(48px,-116px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat3{
    transform:translate(-34px,-120px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat4{
    transform:translate(122px,30px) scale(1) !important;
    opacity:1 !important;
  }

  /* PLACAS SOLARES: todos los secundarios se abren hacia ARRIBA
     y hacia el sector derecho. Nunca bajan sobre el texto. */
  .home-centered .solar:hover .sat1{
    transform:translate(116px,-48px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat2{
    transform:translate(54px,-116px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat3{
    transform:translate(-28px,-122px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat4{
    transform:translate(120px,28px) scale(1) !important;
    opacity:1 !important;
  }

  /* PRÓXIMAMENTE: abanico exclusivamente hacia ARRIBA.
     No puede ocupar la franja del lema inferior. */
  .home-centered .futuro:hover .sat1{
    transform:translate(-116px,-48px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat2{
    transform:translate(-52px,-116px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat3{
    transform:translate(52px,-116px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat4{
    transform:translate(116px,-48px) scale(1) !important;
    opacity:1 !important;
  }
}

/* Pantallas con poca altura: radios más cortos */
@media(min-width:900px) and (max-height:820px){
  .home-centered .teleco.is-open .sat1{transform:translate(-96px,46px) scale(1) !important}
  .home-centered .teleco.is-open .sat2{transform:translate(-34px,96px) scale(1) !important}
  .home-centered .teleco.is-open .sat3{transform:translate(34px,96px) scale(1) !important}
  .home-centered .teleco.is-open .sat4{transform:translate(96px,46px) scale(1) !important}

  .home-centered .solar:hover .sat1{transform:translate(94px,-38px) scale(1) !important}
  .home-centered .solar:hover .sat2{transform:translate(44px,-94px) scale(1) !important}
  .home-centered .solar:hover .sat3{transform:translate(-24px,-98px) scale(1) !important}
  .home-centered .solar:hover .sat4{transform:translate(98px,20px) scale(1) !important}

  .home-centered .futuro:hover .sat1{transform:translate(-94px,-38px) scale(1) !important}
  .home-centered .futuro:hover .sat2{transform:translate(-42px,-94px) scale(1) !important}
  .home-centered .futuro:hover .sat3{transform:translate(42px,-94px) scale(1) !important}
  .home-centered .futuro:hover .sat4{transform:translate(94px,-38px) scale(1) !important}
}

/* La zona del texto queda por encima del fondo pero debajo de los nodos,
   evitando que el texto tape visualmente un secundario en transición. */
.home-centered .centered-copy{
  z-index:6 !important;
}
.home-centered .service-orbit{
  z-index:12 !important;
}
.home-centered .service-node:hover,
.home-centered .service-node.is-open{
  z-index:100 !important;
}


/* ============================================================
   V30 — GRUPOS EXTERIORES, siguiendo la referencia aprobada.
   Cada servicio conserva su nodo primario y los cuatro secundarios
   se despliegan en el sector exterior, fuera del polígono central.
   ============================================================ */

@media(min-width:900px){

  /* TELECO — secundarios en arco superior */
  .home-centered .teleco.is-open .sat1{
    transform:translate(-156px,-82px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat2{
    transform:translate(-54px,-142px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat3{
    transform:translate(54px,-142px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat4{
    transform:translate(156px,-82px) scale(1) !important; opacity:1 !important;
  }

  /* DISEÑO 3D — columna/arco exterior izquierdo */
  .home-centered .diseno:hover .sat1{
    transform:translate(-154px,-126px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .diseno:hover .sat2{
    transform:translate(-184px,-42px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .diseno:hover .sat3{
    transform:translate(-184px,42px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .diseno:hover .sat4{
    transform:translate(-154px,126px) scale(1) !important; opacity:1 !important;
  }

  /* ELECTRÓNICA — espejo exterior derecho */
  .home-centered .electronica:hover .sat1{
    transform:translate(154px,-126px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .electronica:hover .sat2{
    transform:translate(184px,-42px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .electronica:hover .sat3{
    transform:translate(184px,42px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .electronica:hover .sat4{
    transform:translate(154px,126px) scale(1) !important; opacity:1 !important;
  }

  /* PLACAS SOLARES — arco exterior inferior izquierdo.
     Se evita la zona central y el servicio PRÓXIMAMENTE. */
  .home-centered .solar:hover .sat1{
    transform:translate(-164px,-56px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .solar:hover .sat2{
    transform:translate(-190px,20px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .solar:hover .sat3{
    transform:translate(-168px,96px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .solar:hover .sat4{
    transform:translate(-112px,158px) scale(1) !important; opacity:1 !important;
  }

  /* PRÓXIMAMENTE — arco exterior inferior derecho */
  .home-centered .futuro:hover .sat1{
    transform:translate(164px,-56px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .futuro:hover .sat2{
    transform:translate(190px,20px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .futuro:hover .sat3{
    transform:translate(168px,96px) scale(1) !important; opacity:1 !important;
  }
  .home-centered .futuro:hover .sat4{
    transform:translate(112px,158px) scale(1) !important; opacity:1 !important;
  }

  /* Reservar espacio exterior para los grupos desplegados:
     órbita ligeramente más compacta y bloque textual algo más bajo. */
  .home-centered .centered-orbit{
    width:min(57vh,610px) !important;
    height:min(57vh,610px) !important;
    margin-top:12px !important;
  }

  .home-centered .centered-copy{
    margin-top:18px !important;
  }

  /* Los secundarios se mantienen por encima de los primarios
     cuando el grupo correspondiente está abierto. */
  .home-centered .sat{
    z-index:120 !important;
  }
  .home-centered .service-node:hover,
  .home-centered .service-node.is-open{
    z-index:110 !important;
  }
}

/* En pantallas de altura reducida, se contrae todo el conjunto
   manteniendo la misma disposición exterior. */
@media(min-width:900px) and (max-height:820px){
  .home-centered .centered-orbit{
    width:min(52vh,510px) !important;
    height:min(52vh,510px) !important;
  }

  .home-centered .teleco.is-open .sat1{transform:translate(-124px,-64px) scale(1) !important}
  .home-centered .teleco.is-open .sat2{transform:translate(-44px,-112px) scale(1) !important}
  .home-centered .teleco.is-open .sat3{transform:translate(44px,-112px) scale(1) !important}
  .home-centered .teleco.is-open .sat4{transform:translate(124px,-64px) scale(1) !important}

  .home-centered .diseno:hover .sat1{transform:translate(-124px,-98px) scale(1) !important}
  .home-centered .diseno:hover .sat2{transform:translate(-148px,-32px) scale(1) !important}
  .home-centered .diseno:hover .sat3{transform:translate(-148px,32px) scale(1) !important}
  .home-centered .diseno:hover .sat4{transform:translate(-124px,98px) scale(1) !important}

  .home-centered .electronica:hover .sat1{transform:translate(124px,-98px) scale(1) !important}
  .home-centered .electronica:hover .sat2{transform:translate(148px,-32px) scale(1) !important}
  .home-centered .electronica:hover .sat3{transform:translate(148px,32px) scale(1) !important}
  .home-centered .electronica:hover .sat4{transform:translate(124px,98px) scale(1) !important}

  .home-centered .solar:hover .sat1{transform:translate(-130px,-44px) scale(1) !important}
  .home-centered .solar:hover .sat2{transform:translate(-150px,16px) scale(1) !important}
  .home-centered .solar:hover .sat3{transform:translate(-132px,74px) scale(1) !important}
  .home-centered .solar:hover .sat4{transform:translate(-88px,122px) scale(1) !important}

  .home-centered .futuro:hover .sat1{transform:translate(130px,-44px) scale(1) !important}
  .home-centered .futuro:hover .sat2{transform:translate(150px,16px) scale(1) !important}
  .home-centered .futuro:hover .sat3{transform:translate(132px,74px) scale(1) !important}
  .home-centered .futuro:hover .sat4{transform:translate(88px,122px) scale(1) !important}
}


/* ============================================================
   V31 — DISTRIBUCIÓN COMO LA REFERENCIA DEL USUARIO
   Grupos secundarios PERMANENTEMENTE visibles alrededor de cada
   servicio principal, sin depender del hover.
   ============================================================ */

@media(min-width:900px){

  /* Órbita y conjunto principal */
  .home-centered .centered-orbit{
    width:min(62vh,650px) !important;
    height:min(62vh,650px) !important;
    margin-top:6px !important;
  }

  /* Centro */
  .home-centered .centered-emblem{
    width:158px !important;
    height:158px !important;
  }

  /* Nodos principales algo más compactos para dejar espacio a grupos exteriores */
  .home-centered .service-node{
    width:118px !important;
    height:118px !important;
  }

  .home-centered .teleco-hitbox{
    width:118px !important;
    height:118px !important;
  }

  /* Distribución de los cinco primarios según la referencia */
  .home-centered .teleco{
    left:50% !important;
    top:8% !important;
    transform:translate(-50%,-50%) !important;
  }
  .home-centered .teleco-hitbox{
    left:50% !important;
    top:8% !important;
    transform:translate(-50%,-50%) !important;
  }

  .home-centered .diseno{
    left:17% !important;
    top:50% !important;
    transform:translate(-50%,-50%) !important;
  }

  .home-centered .electronica{
    left:83% !important;
    top:50% !important;
    right:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  .home-centered .solar{
    left:36% !important;
    top:80% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  .home-centered .futuro{
    left:64% !important;
    top:80% !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  /* Desactivar visualmente las ampliaciones hover de los primarios */
  .home-centered .teleco:hover,
  .home-centered .teleco.is-open,
  .home-centered .diseno:hover,
  .home-centered .electronica:hover,
  .home-centered .solar:hover,
  .home-centered .futuro:hover{
    transform:translate(-50%,-50%) !important;
  }

  /* Todos los secundarios visibles permanentemente */
  .home-centered .fixed-groups .service-node .sat{
    opacity:1 !important;
    transform:scale(1) !important;
    pointer-events:auto !important;
    width:58px !important;
    height:58px !important;
    font-size:.42rem !important;
    z-index:140 !important;
  }

  /* TELECO — cuatro secundarios en arco superior */
  .home-centered .fixed-groups .teleco .sat1{
    transform:translate(-112px,-78px) scale(1) !important;
  }
  .home-centered .fixed-groups .teleco .sat2{
    transform:translate(-36px,-116px) scale(1) !important;
  }
  .home-centered .fixed-groups .teleco .sat3{
    transform:translate(36px,-116px) scale(1) !important;
  }
  .home-centered .fixed-groups .teleco .sat4{
    transform:translate(112px,-78px) scale(1) !important;
  }

  /* DISEÑO 3D — columna exterior izquierda */
  .home-centered .fixed-groups .diseno .sat1{
    transform:translate(-104px,-100px) scale(1) !important;
  }
  .home-centered .fixed-groups .diseno .sat2{
    transform:translate(-136px,-34px) scale(1) !important;
  }
  .home-centered .fixed-groups .diseno .sat3{
    transform:translate(-136px,34px) scale(1) !important;
  }
  .home-centered .fixed-groups .diseno .sat4{
    transform:translate(-104px,100px) scale(1) !important;
  }

  /* ELECTRÓNICA — columna exterior derecha */
  .home-centered .fixed-groups .electronica .sat1{
    transform:translate(104px,-100px) scale(1) !important;
  }
  .home-centered .fixed-groups .electronica .sat2{
    transform:translate(136px,-34px) scale(1) !important;
  }
  .home-centered .fixed-groups .electronica .sat3{
    transform:translate(136px,34px) scale(1) !important;
  }
  .home-centered .fixed-groups .electronica .sat4{
    transform:translate(104px,100px) scale(1) !important;
  }

  /* PLACAS SOLARES — columna exterior inferior izquierda */
  .home-centered .fixed-groups .solar .sat1{
    transform:translate(-106px,-72px) scale(1) !important;
  }
  .home-centered .fixed-groups .solar .sat2{
    transform:translate(-132px,-10px) scale(1) !important;
  }
  .home-centered .fixed-groups .solar .sat3{
    transform:translate(-126px,54px) scale(1) !important;
  }
  .home-centered .fixed-groups .solar .sat4{
    transform:translate(-86px,108px) scale(1) !important;
  }

  /* PRÓXIMAMENTE — columna exterior inferior derecha */
  .home-centered .fixed-groups .futuro .sat1{
    transform:translate(106px,-72px) scale(1) !important;
  }
  .home-centered .fixed-groups .futuro .sat2{
    transform:translate(132px,-10px) scale(1) !important;
  }
  .home-centered .fixed-groups .futuro .sat3{
    transform:translate(126px,54px) scale(1) !important;
  }
  .home-centered .fixed-groups .futuro .sat4{
    transform:translate(86px,108px) scale(1) !important;
  }

  /* Texto inferior como en la referencia */
  .home-centered .centered-copy{
    margin-top:12px !important;
  }

  .home-centered .centered-copy .kicker{
    font-size:.64rem !important;
    margin-bottom:7px !important;
  }

  .home-centered .centered-copy h1{
    font-size:1.85rem !important;
  }

  .home-centered .centered-copy p:not(.kicker){
    font-size:.76rem !important;
    margin-top:5px !important;
  }

  /* Menú inferior centrado y compacto */
  .home-centered .centered-shortcuts{
    left:50% !important;
    transform:translateX(-50%);
    bottom:10px !important;
    gap:10px !important;
  }

  .home-centered .shortcut{
    width:auto !important;
    height:34px !important;
    min-width:130px;
    border-radius:18px !important;
    padding:0 18px !important;
    font-size:.48rem !important;
  }

  .home-centered .shortcut::before{
    display:none !important;
  }

  /* WA más discreto como en referencia */
  .chat-widget{
    right:24px !important;
    bottom:18px !important;
  }
}

/* Pantallas de poca altura */
@media(min-width:900px) and (max-height:820px){
  .home-centered .centered-orbit{
    width:min(55vh,520px) !important;
    height:min(55vh,520px) !important;
  }

  .home-centered .service-node{
    width:100px !important;
    height:100px !important;
  }

  .home-centered .teleco-hitbox{
    width:100px !important;
    height:100px !important;
  }

  .home-centered .fixed-groups .service-node .sat{
    width:48px !important;
    height:48px !important;
    font-size:.36rem !important;
  }

  .home-centered .fixed-groups .teleco .sat1{transform:translate(-92px,-62px) scale(1) !important}
  .home-centered .fixed-groups .teleco .sat2{transform:translate(-30px,-94px) scale(1) !important}
  .home-centered .fixed-groups .teleco .sat3{transform:translate(30px,-94px) scale(1) !important}
  .home-centered .fixed-groups .teleco .sat4{transform:translate(92px,-62px) scale(1) !important}

  .home-centered .fixed-groups .diseno .sat1{transform:translate(-86px,-82px) scale(1) !important}
  .home-centered .fixed-groups .diseno .sat2{transform:translate(-110px,-28px) scale(1) !important}
  .home-centered .fixed-groups .diseno .sat3{transform:translate(-110px,28px) scale(1) !important}
  .home-centered .fixed-groups .diseno .sat4{transform:translate(-86px,82px) scale(1) !important}

  .home-centered .fixed-groups .electronica .sat1{transform:translate(86px,-82px) scale(1) !important}
  .home-centered .fixed-groups .electronica .sat2{transform:translate(110px,-28px) scale(1) !important}
  .home-centered .fixed-groups .electronica .sat3{transform:translate(110px,28px) scale(1) !important}
  .home-centered .fixed-groups .electronica .sat4{transform:translate(86px,82px) scale(1) !important}

  .home-centered .fixed-groups .solar .sat1{transform:translate(-86px,-58px) scale(1) !important}
  .home-centered .fixed-groups .solar .sat2{transform:translate(-108px,-8px) scale(1) !important}
  .home-centered .fixed-groups .solar .sat3{transform:translate(-102px,44px) scale(1) !important}
  .home-centered .fixed-groups .solar .sat4{transform:translate(-70px,88px) scale(1) !important}

  .home-centered .fixed-groups .futuro .sat1{transform:translate(86px,-58px) scale(1) !important}
  .home-centered .fixed-groups .futuro .sat2{transform:translate(108px,-8px) scale(1) !important}
  .home-centered .fixed-groups .futuro .sat3{transform:translate(102px,44px) scale(1) !important}
  .home-centered .fixed-groups .futuro .sat4{transform:translate(70px,88px) scale(1) !important}
}


/* ============================================================
   V32 — misma distribución de V31, pero secundarios tipo V30:
   cerrados por defecto y visibles solo al pasar por el primario.
   ============================================================ */

@media(min-width:900px){

  /* Cerrados por defecto */
  .home-centered .service-node .sat{
    opacity:0 !important;
    transform:translate(0,0) scale(.18) !important;
    pointer-events:none !important;
    width:58px !important;
    height:58px !important;
    font-size:.42rem !important;
  }

  /* TELECO — arco superior al activarse */
  .home-centered .teleco.is-open .sat1{
    transform:translate(-112px,-78px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat2{
    transform:translate(-36px,-116px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat3{
    transform:translate(36px,-116px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat4{
    transform:translate(112px,-78px) scale(1) !important;
    opacity:1 !important;
  }

  /* DISEÑO 3D — exterior izquierdo */
  .home-centered .diseno:hover .sat1{
    transform:translate(-104px,-100px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat2{
    transform:translate(-136px,-34px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat3{
    transform:translate(-136px,34px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat4{
    transform:translate(-104px,100px) scale(1) !important;
    opacity:1 !important;
  }

  /* ELECTRÓNICA — exterior derecho */
  .home-centered .electronica:hover .sat1{
    transform:translate(104px,-100px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat2{
    transform:translate(136px,-34px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat3{
    transform:translate(136px,34px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat4{
    transform:translate(104px,100px) scale(1) !important;
    opacity:1 !important;
  }

  /* PLACAS SOLARES — exterior inferior izquierdo */
  .home-centered .solar:hover .sat1{
    transform:translate(-106px,-72px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat2{
    transform:translate(-132px,-10px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat3{
    transform:translate(-126px,54px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat4{
    transform:translate(-86px,108px) scale(1) !important;
    opacity:1 !important;
  }

  /* PRÓXIMAMENTE — exterior inferior derecho */
  .home-centered .futuro:hover .sat1{
    transform:translate(106px,-72px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat2{
    transform:translate(132px,-10px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat3{
    transform:translate(126px,54px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat4{
    transform:translate(86px,108px) scale(1) !important;
    opacity:1 !important;
  }
}

/* Pantallas de poca altura */
@media(min-width:900px) and (max-height:820px){
  .home-centered .service-node .sat{
    width:48px !important;
    height:48px !important;
    font-size:.36rem !important;
  }

  .home-centered .teleco.is-open .sat1{transform:translate(-92px,-62px) scale(1) !important}
  .home-centered .teleco.is-open .sat2{transform:translate(-30px,-94px) scale(1) !important}
  .home-centered .teleco.is-open .sat3{transform:translate(30px,-94px) scale(1) !important}
  .home-centered .teleco.is-open .sat4{transform:translate(92px,-62px) scale(1) !important}

  .home-centered .diseno:hover .sat1{transform:translate(-86px,-82px) scale(1) !important}
  .home-centered .diseno:hover .sat2{transform:translate(-110px,-28px) scale(1) !important}
  .home-centered .diseno:hover .sat3{transform:translate(-110px,28px) scale(1) !important}
  .home-centered .diseno:hover .sat4{transform:translate(-86px,82px) scale(1) !important}

  .home-centered .electronica:hover .sat1{transform:translate(86px,-82px) scale(1) !important}
  .home-centered .electronica:hover .sat2{transform:translate(110px,-28px) scale(1) !important}
  .home-centered .electronica:hover .sat3{transform:translate(110px,28px) scale(1) !important}
  .home-centered .electronica:hover .sat4{transform:translate(86px,82px) scale(1) !important}

  .home-centered .solar:hover .sat1{transform:translate(-86px,-58px) scale(1) !important}
  .home-centered .solar:hover .sat2{transform:translate(-108px,-8px) scale(1) !important}
  .home-centered .solar:hover .sat3{transform:translate(-102px,44px) scale(1) !important}
  .home-centered .solar:hover .sat4{transform:translate(-70px,88px) scale(1) !important}

  .home-centered .futuro:hover .sat1{transform:translate(86px,-58px) scale(1) !important}
  .home-centered .futuro:hover .sat2{transform:translate(108px,-8px) scale(1) !important}
  .home-centered .futuro:hover .sat3{transform:translate(102px,44px) scale(1) !important}
  .home-centered .futuro:hover .sat4{transform:translate(70px,88px) scale(1) !important}
}


/* ============================================================
   V33 — ESPACIADO COMO LA REFERENCIA
   Reorganización completa de proporciones y distancias.
   Mantiene secundarios cerrados por defecto y apertura por hover.
   ============================================================ */

@media(min-width:900px){

  /* Más espacio vertical real para la composición */
  .home-centered .hero-centered{
    min-height:100vh !important;
    height:100vh !important;
  }

  .home-centered .centered-stage{
    padding-top:108px !important;
  }

  /* Órbita mayor y con más aire */
  .home-centered .centered-orbit{
    width:min(68vh,760px) !important;
    height:min(68vh,760px) !important;
    margin-top:4px !important;
  }

  /* EXPLORAR más contenido que en versiones anteriores */
  .home-centered .centered-emblem{
    width:150px !important;
    height:150px !important;
  }

  /* Primarios ligeramente más pequeños */
  .home-centered .service-node{
    width:108px !important;
    height:108px !important;
  }

  .home-centered .teleco-hitbox{
    width:108px !important;
    height:108px !important;
  }

  .home-centered .node-core{
    width:46px !important;
    height:46px !important;
  }

  .home-centered .node-title{
    font-size:.52rem !important;
  }

  /* Cinco primarios bien separados, como la referencia */
  .home-centered .teleco{
    left:50% !important;
    top:7.5% !important;
    transform:translate(-50%,-50%) !important;
  }

  .home-centered .teleco-hitbox{
    left:50% !important;
    top:7.5% !important;
    transform:translate(-50%,-50%) !important;
  }

  .home-centered .diseno{
    left:13.5% !important;
    top:48% !important;
    transform:translate(-50%,-50%) !important;
  }

  .home-centered .electronica{
    left:86.5% !important;
    top:48% !important;
    right:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  .home-centered .solar{
    left:31.5% !important;
    top:81.5% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  .home-centered .futuro{
    left:68.5% !important;
    top:81.5% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  /* Hover sin desplazar la posición base */
  .home-centered .teleco:hover,
  .home-centered .teleco.is-open,
  .home-centered .diseno:hover,
  .home-centered .electronica:hover,
  .home-centered .solar:hover,
  .home-centered .futuro:hover{
    transform:translate(-50%,-50%) scale(1.06) !important;
  }

  /* Secundarios más pequeños: aspecto satélite, no segundo nivel dominante */
  .home-centered .service-node .sat{
    width:50px !important;
    height:50px !important;
    font-size:.36rem !important;
  }

  /* TELECO: arco superior amplio y separado */
  .home-centered .teleco.is-open .sat1{
    transform:translate(-150px,-70px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat2{
    transform:translate(-52px,-126px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat3{
    transform:translate(52px,-126px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat4{
    transform:translate(150px,-70px) scale(1) !important;
    opacity:1 !important;
  }

  /* DISEÑO 3D: grupo exterior izquierdo con espacios homogéneos */
  .home-centered .diseno:hover .sat1{
    transform:translate(-132px,-108px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat2{
    transform:translate(-164px,-38px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat3{
    transform:translate(-164px,38px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat4{
    transform:translate(-132px,108px) scale(1) !important;
    opacity:1 !important;
  }

  /* ELECTRÓNICA: espejo exacto */
  .home-centered .electronica:hover .sat1{
    transform:translate(132px,-108px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat2{
    transform:translate(164px,-38px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat3{
    transform:translate(164px,38px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat4{
    transform:translate(132px,108px) scale(1) !important;
    opacity:1 !important;
  }

  /* PLACAS SOLARES: exterior inferior izquierdo sin tocar texto */
  .home-centered .solar:hover .sat1{
    transform:translate(-138px,-82px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat2{
    transform:translate(-170px,-18px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat3{
    transform:translate(-160px,52px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat4{
    transform:translate(-118px,114px) scale(1) !important;
    opacity:1 !important;
  }

  /* PRÓXIMAMENTE: exterior inferior derecho */
  .home-centered .futuro:hover .sat1{
    transform:translate(138px,-82px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat2{
    transform:translate(170px,-18px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat3{
    transform:translate(160px,52px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat4{
    transform:translate(118px,114px) scale(1) !important;
    opacity:1 !important;
  }

  /* Texto separado claramente del conjunto gráfico */
  .home-centered .centered-copy{
    margin-top:30px !important;
    width:min(900px,90vw) !important;
  }

  .home-centered .centered-copy .kicker{
    margin-bottom:8px !important;
  }

  .home-centered .centered-copy h1{
    font-size:1.95rem !important;
  }

  .home-centered .centered-copy p:not(.kicker){
    font-size:.80rem !important;
    margin-top:6px !important;
  }

  /* Menú inferior con aire respecto al lema */
  .home-centered .centered-shortcuts{
    bottom:14px !important;
  }
}

/* Pantallas de altura media: reducción proporcional manteniendo aire */
@media(min-width:900px) and (max-height:900px){
  .home-centered .centered-stage{
    padding-top:94px !important;
  }

  .home-centered .centered-orbit{
    width:min(61vh,610px) !important;
    height:min(61vh,610px) !important;
  }

  .home-centered .service-node{
    width:96px !important;
    height:96px !important;
  }

  .home-centered .teleco-hitbox{
    width:96px !important;
    height:96px !important;
  }

  .home-centered .centered-emblem{
    width:136px !important;
    height:136px !important;
  }

  .home-centered .service-node .sat{
    width:44px !important;
    height:44px !important;
    font-size:.32rem !important;
  }

  .home-centered .teleco.is-open .sat1{transform:translate(-122px,-58px) scale(1) !important}
  .home-centered .teleco.is-open .sat2{transform:translate(-42px,-104px) scale(1) !important}
  .home-centered .teleco.is-open .sat3{transform:translate(42px,-104px) scale(1) !important}
  .home-centered .teleco.is-open .sat4{transform:translate(122px,-58px) scale(1) !important}

  .home-centered .diseno:hover .sat1{transform:translate(-108px,-88px) scale(1) !important}
  .home-centered .diseno:hover .sat2{transform:translate(-132px,-30px) scale(1) !important}
  .home-centered .diseno:hover .sat3{transform:translate(-132px,30px) scale(1) !important}
  .home-centered .diseno:hover .sat4{transform:translate(-108px,88px) scale(1) !important}

  .home-centered .electronica:hover .sat1{transform:translate(108px,-88px) scale(1) !important}
  .home-centered .electronica:hover .sat2{transform:translate(132px,-30px) scale(1) !important}
  .home-centered .electronica:hover .sat3{transform:translate(132px,30px) scale(1) !important}
  .home-centered .electronica:hover .sat4{transform:translate(108px,88px) scale(1) !important}

  .home-centered .solar:hover .sat1{transform:translate(-112px,-66px) scale(1) !important}
  .home-centered .solar:hover .sat2{transform:translate(-138px,-14px) scale(1) !important}
  .home-centered .solar:hover .sat3{transform:translate(-130px,42px) scale(1) !important}
  .home-centered .solar:hover .sat4{transform:translate(-94px,92px) scale(1) !important}

  .home-centered .futuro:hover .sat1{transform:translate(112px,-66px) scale(1) !important}
  .home-centered .futuro:hover .sat2{transform:translate(138px,-14px) scale(1) !important}
  .home-centered .futuro:hover .sat3{transform:translate(130px,42px) scale(1) !important}
  .home-centered .futuro:hover .sat4{transform:translate(94px,92px) scale(1) !important}

  .home-centered .centered-copy{
    margin-top:22px !important;
  }
}

/* Pantallas muy bajas: evitar amontonamiento conservando la composición */
@media(min-width:900px) and (max-height:760px){
  .home-centered .centered-stage{
    padding-top:84px !important;
  }

  .home-centered .centered-orbit{
    width:min(55vh,480px) !important;
    height:min(55vh,480px) !important;
  }

  .home-centered .centered-copy{
    margin-top:14px !important;
  }

  .home-centered .centered-copy h1{
    font-size:1.55rem !important;
  }

  .home-centered .centered-copy p:not(.kicker){
    font-size:.70rem !important;
  }
}


/* ============================================================
   V34 — GEOMETRÍA SEGURA Y EQUITATIVA
   1) Cinco primarios en pentágono regular.
   2) Todos a la misma distancia de EXPLORAR.
   3) Cada grupo secundario usa un sector reservado.
   4) Ningún secundario sale del área gráfica ni invade el texto.
   ============================================================ */

@media(min-width:900px){

  /* Área gráfica amplia pero completamente contenida en viewport */
  .home-centered .centered-stage{
    padding-top:105px !important;
  }

  .home-centered .centered-orbit{
    width:min(66vh,700px) !important;
    height:min(66vh,700px) !important;
    margin-top:0 !important;
    overflow:visible !important;
  }

  .home-centered .centered-emblem{
    width:148px !important;
    height:148px !important;
  }

  /* Primarios uniformes */
  .home-centered .service-node{
    width:104px !important;
    height:104px !important;
  }

  .home-centered .teleco-hitbox{
    width:104px !important;
    height:104px !important;
  }

  .home-centered .node-core{
    width:44px !important;
    height:44px !important;
  }

  /* ------------------------------------------------------------
     PENTÁGONO REGULAR
     Centro = 50% / 50%
     Radio = ~31% de la caja
     Separación angular = 72°
     ------------------------------------------------------------ */

  /* TELECO — 270° */
  .home-centered .teleco,
  .home-centered .teleco-hitbox{
    left:50% !important;
    top:19% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  /* ELECTRÓNICA — 342° */
  .home-centered .electronica{
    left:79.5% !important;
    top:40.4% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  /* PRÓXIMAMENTE — 54° */
  .home-centered .futuro{
    left:68.2% !important;
    top:75.1% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  /* PLACAS SOLARES — 126° */
  .home-centered .solar{
    left:31.8% !important;
    top:75.1% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  /* DISEÑO 3D — 198° */
  .home-centered .diseno{
    left:20.5% !important;
    top:40.4% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  /* Hover: ampliar sin mover el centro */
  .home-centered .teleco:hover,
  .home-centered .teleco.is-open,
  .home-centered .electronica:hover,
  .home-centered .futuro:hover,
  .home-centered .solar:hover,
  .home-centered .diseno:hover{
    transform:translate(-50%,-50%) scale(1.055) !important;
  }

  /* Secundarios uniformes y más pequeños */
  .home-centered .service-node .sat{
    width:48px !important;
    height:48px !important;
    font-size:.34rem !important;
    opacity:0 !important;
    transform:translate(0,0) scale(.18) !important;
    pointer-events:none !important;
  }

  /* ------------------------------------------------------------
     SECTORES RESERVADOS
     Los secundarios NO se despliegan "a ciegas" radialmente.
     Cada familia tiene cuatro posiciones comprobadas dentro
     de la zona gráfica y alejadas de primarios vecinos.
     ------------------------------------------------------------ */

  /* TELECO:
     grupo superior horizontal, pero suficientemente bajo para
     no salirse de pantalla */
  .home-centered .teleco.is-open .sat1{
    transform:translate(-132px,-62px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat2{
    transform:translate(-44px,-96px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat3{
    transform:translate(44px,-96px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .teleco.is-open .sat4{
    transform:translate(132px,-62px) scale(1) !important;
    opacity:1 !important;
  }

  /* DISEÑO 3D:
     columna exterior izquierda; no invade TELECO ni SOLAR */
  .home-centered .diseno:hover .sat1{
    transform:translate(-104px,-88px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat2{
    transform:translate(-134px,-28px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat3{
    transform:translate(-134px,34px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .diseno:hover .sat4{
    transform:translate(-98px,94px) scale(1) !important;
    opacity:1 !important;
  }

  /* ELECTRÓNICA:
     espejo exacto del grupo izquierdo */
  .home-centered .electronica:hover .sat1{
    transform:translate(104px,-88px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat2{
    transform:translate(134px,-28px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat3{
    transform:translate(134px,34px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .electronica:hover .sat4{
    transform:translate(98px,94px) scale(1) !important;
    opacity:1 !important;
  }

  /* PLACAS SOLARES:
     todos los secundarios permanecen a la izquierda / arriba
     del primario; ninguno baja hacia el texto */
  .home-centered .solar:hover .sat1{
    transform:translate(-116px,-78px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat2{
    transform:translate(-142px,-18px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat3{
    transform:translate(-128px,44px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .solar:hover .sat4{
    transform:translate(-82px,94px) scale(1) !important;
    opacity:1 !important;
  }

  /* PRÓXIMAMENTE:
     espejo exacto de PLACAS SOLARES */
  .home-centered .futuro:hover .sat1{
    transform:translate(116px,-78px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat2{
    transform:translate(142px,-18px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat3{
    transform:translate(128px,44px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .futuro:hover .sat4{
    transform:translate(82px,94px) scale(1) !important;
    opacity:1 !important;
  }

  /* Separación garantizada respecto al texto inferior */
  .home-centered .centered-copy{
    margin-top:34px !important;
    width:min(880px,88vw) !important;
  }

  .home-centered .centered-copy h1{
    font-size:1.85rem !important;
  }

  .home-centered .centered-copy p:not(.kicker){
    font-size:.76rem !important;
  }

  /* El menú inferior queda fuera de la zona de expansión */
  .home-centered .centered-shortcuts{
    bottom:10px !important;
  }
}

/* ------------------------------------------------------------
   ALTURAS MEDIAS
   Misma geometría, radios de secundarios reducidos.
   ------------------------------------------------------------ */
@media(min-width:900px) and (max-height:880px){

  .home-centered .centered-stage{
    padding-top:92px !important;
  }

  .home-centered .centered-orbit{
    width:min(59vh,590px) !important;
    height:min(59vh,590px) !important;
  }

  .home-centered .service-node,
  .home-centered .teleco-hitbox{
    width:92px !important;
    height:92px !important;
  }

  .home-centered .centered-emblem{
    width:132px !important;
    height:132px !important;
  }

  .home-centered .service-node .sat{
    width:42px !important;
    height:42px !important;
    font-size:.30rem !important;
  }

  .home-centered .teleco.is-open .sat1{transform:translate(-106px,-50px) scale(1) !important}
  .home-centered .teleco.is-open .sat2{transform:translate(-36px,-78px) scale(1) !important}
  .home-centered .teleco.is-open .sat3{transform:translate(36px,-78px) scale(1) !important}
  .home-centered .teleco.is-open .sat4{transform:translate(106px,-50px) scale(1) !important}

  .home-centered .diseno:hover .sat1{transform:translate(-84px,-70px) scale(1) !important}
  .home-centered .diseno:hover .sat2{transform:translate(-108px,-22px) scale(1) !important}
  .home-centered .diseno:hover .sat3{transform:translate(-108px,28px) scale(1) !important}
  .home-centered .diseno:hover .sat4{transform:translate(-80px,76px) scale(1) !important}

  .home-centered .electronica:hover .sat1{transform:translate(84px,-70px) scale(1) !important}
  .home-centered .electronica:hover .sat2{transform:translate(108px,-22px) scale(1) !important}
  .home-centered .electronica:hover .sat3{transform:translate(108px,28px) scale(1) !important}
  .home-centered .electronica:hover .sat4{transform:translate(80px,76px) scale(1) !important}

  .home-centered .solar:hover .sat1{transform:translate(-94px,-62px) scale(1) !important}
  .home-centered .solar:hover .sat2{transform:translate(-114px,-14px) scale(1) !important}
  .home-centered .solar:hover .sat3{transform:translate(-102px,36px) scale(1) !important}
  .home-centered .solar:hover .sat4{transform:translate(-66px,76px) scale(1) !important}

  .home-centered .futuro:hover .sat1{transform:translate(94px,-62px) scale(1) !important}
  .home-centered .futuro:hover .sat2{transform:translate(114px,-14px) scale(1) !important}
  .home-centered .futuro:hover .sat3{transform:translate(102px,36px) scale(1) !important}
  .home-centered .futuro:hover .sat4{transform:translate(66px,76px) scale(1) !important}

  .home-centered .centered-copy{
    margin-top:22px !important;
  }
}

/* ------------------------------------------------------------
   MÓVIL / TABLET
   No se intenta conservar los radios de escritorio.
   Se reduce el radio general para que todo permanezca visible.
   ------------------------------------------------------------ */
@media(max-width:899px){

  .home-centered .centered-orbit{
    width:min(88vw,540px) !important;
    height:min(88vw,540px) !important;
  }

  .home-centered .service-node,
  .home-centered .teleco-hitbox{
    width:82px !important;
    height:82px !important;
  }

  .home-centered .centered-emblem{
    width:112px !important;
    height:112px !important;
  }

  .home-centered .teleco,
  .home-centered .teleco-hitbox{
    left:50% !important;
    top:20% !important;
  }
  .home-centered .electronica{
    left:78% !important;
    top:41% !important;
  }
  .home-centered .futuro{
    left:67% !important;
    top:73% !important;
  }
  .home-centered .solar{
    left:33% !important;
    top:73% !important;
  }
  .home-centered .diseno{
    left:22% !important;
    top:41% !important;
  }

  .home-centered .service-node .sat{
    width:38px !important;
    height:38px !important;
    font-size:.27rem !important;
  }

  .home-centered .centered-copy{
    margin-top:30px !important;
  }
}


/* ============================================================
   V35 — PRIMARIOS MÁS GRANDES + CNC
   ============================================================ */

@media(min-width:900px){

  /* Aumentar tamaño de los círculos principales para contener
     completamente sus textos sin desbordes. */
  .home-centered .service-node{
    width:132px !important;
    height:132px !important;
  }

  .home-centered .teleco-hitbox{
    width:132px !important;
    height:132px !important;
  }

  .home-centered .node-core{
    width:58px !important;
    height:58px !important;
  }

  .home-centered .node-title{
    width:86%;
    max-width:112px;
    text-align:center;
    line-height:1.12 !important;
    font-size:.60rem !important;
    letter-spacing:.08em !important;
    white-space:normal !important;
    overflow-wrap:anywhere;
  }

  /* Mantener el pentágono regular de V34, con algo más de radio
     para compensar el incremento de diámetro. */
  .home-centered .teleco,
  .home-centered .teleco-hitbox{
    left:50% !important;
    top:17.5% !important;
  }

  .home-centered .electronica{
    left:81% !important;
    top:39.9% !important;
  }

  .home-centered .cnc{
    left:69.2% !important;
    top:76.3% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }

  .home-centered .solar{
    left:30.8% !important;
    top:76.3% !important;
  }

  .home-centered .diseno{
    left:19% !important;
    top:39.9% !important;
  }

  .home-centered .cnc:hover{
    transform:translate(-50%,-50%) scale(1.055) !important;
    z-index:100 !important;
  }

  /* CNC con fotografía local */
  .home-centered .cnc{
    border-color:rgba(0,220,255,.58) !important;
    box-shadow:
      0 0 0 2px rgba(0,220,255,.10),
      0 0 34px rgba(0,180,255,.22) !important;
  }

  .home-centered .cnc .node-core{
    background-image:
      linear-gradient(rgba(0,30,50,.18),rgba(0,20,40,.40)),
      url("assets/img/cnc.jpg") !important;
    background-size:cover !important;
    background-position:center !important;
    border:2px solid rgba(80,235,255,.72) !important;
    color:#fff !important;
    text-shadow:0 2px 8px rgba(0,0,0,.95);
    font-size:.78rem !important;
    font-weight:900 !important;
  }

  .home-centered .cnc .sat{
    border-color:rgba(0,220,255,.62) !important;
    background:
      linear-gradient(180deg,rgba(5,18,28,.28),rgba(5,12,22,.86)),
      url("assets/img/cnc.jpg") center/cover no-repeat !important;
    box-shadow:
      0 0 0 2px rgba(0,220,255,.16),
      0 0 24px rgba(0,190,255,.20) !important;
  }

  /* Recalcular secundarios para que no toquen primarios vecinos.
     Todos siguen sectores reservados. */

  /* TELECO */
  .home-centered .teleco.is-open .sat1{
    transform:translate(-150px,-68px) scale(1) !important;
  }
  .home-centered .teleco.is-open .sat2{
    transform:translate(-50px,-112px) scale(1) !important;
  }
  .home-centered .teleco.is-open .sat3{
    transform:translate(50px,-112px) scale(1) !important;
  }
  .home-centered .teleco.is-open .sat4{
    transform:translate(150px,-68px) scale(1) !important;
  }

  /* DISEÑO 3D */
  .home-centered .diseno:hover .sat1{
    transform:translate(-124px,-102px) scale(1) !important;
  }
  .home-centered .diseno:hover .sat2{
    transform:translate(-158px,-34px) scale(1) !important;
  }
  .home-centered .diseno:hover .sat3{
    transform:translate(-158px,34px) scale(1) !important;
  }
  .home-centered .diseno:hover .sat4{
    transform:translate(-124px,102px) scale(1) !important;
  }

  /* ELECTRÓNICA */
  .home-centered .electronica:hover .sat1{
    transform:translate(124px,-102px) scale(1) !important;
  }
  .home-centered .electronica:hover .sat2{
    transform:translate(158px,-34px) scale(1) !important;
  }
  .home-centered .electronica:hover .sat3{
    transform:translate(158px,34px) scale(1) !important;
  }
  .home-centered .electronica:hover .sat4{
    transform:translate(124px,102px) scale(1) !important;
  }

  /* PLACAS SOLARES */
  .home-centered .solar:hover .sat1{
    transform:translate(-132px,-90px) scale(1) !important;
  }
  .home-centered .solar:hover .sat2{
    transform:translate(-164px,-24px) scale(1) !important;
  }
  .home-centered .solar:hover .sat3{
    transform:translate(-150px,46px) scale(1) !important;
  }
  .home-centered .solar:hover .sat4{
    transform:translate(-104px,106px) scale(1) !important;
  }

  /* CNC — espejo de Placas Solares */
  .home-centered .cnc:hover .sat1{
    transform:translate(132px,-90px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .cnc:hover .sat2{
    transform:translate(164px,-24px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .cnc:hover .sat3{
    transform:translate(150px,46px) scale(1) !important;
    opacity:1 !important;
  }
  .home-centered .cnc:hover .sat4{
    transform:translate(104px,106px) scale(1) !important;
    opacity:1 !important;
  }

  /* Cerrar CNC por defecto */
  .home-centered .cnc .sat{
    opacity:0 !important;
    transform:translate(0,0) scale(.18) !important;
    pointer-events:none !important;
  }
}

/* Pantallas medianas */
@media(min-width:900px) and (max-height:880px){
  .home-centered .service-node,
  .home-centered .teleco-hitbox{
    width:112px !important;
    height:112px !important;
  }

  .home-centered .node-core{
    width:50px !important;
    height:50px !important;
  }

  .home-centered .node-title{
    font-size:.52rem !important;
  }

  .home-centered .teleco,
  .home-centered .teleco-hitbox{
    top:18% !important;
  }
  .home-centered .electronica{left:80% !important;top:40.2% !important}
  .home-centered .cnc{left:68.5% !important;top:75.5% !important}
  .home-centered .solar{left:31.5% !important;top:75.5% !important}
  .home-centered .diseno{left:20% !important;top:40.2% !important}
}

/* Móvil/tablet */
@media(max-width:899px){
  .home-centered .service-node,
  .home-centered .teleco-hitbox{
    width:94px !important;
    height:94px !important;
  }

  .home-centered .node-core{
    width:42px !important;
    height:42px !important;
  }

  .home-centered .node-title{
    font-size:.45rem !important;
    max-width:80px;
  }

  .home-centered .cnc{
    left:67% !important;
    top:73% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }
}


/* ========================= V38 MOCKUP-ACCURATE HOME ========================= */
html,body{margin:0}
body.mockup-page{margin:0;background:#020611;overflow:hidden;font-family:Inter,Segoe UI,Arial,sans-serif}
.mockup-page *{box-sizing:border-box}
.mockup-page a{text-decoration:none;color:inherit}
.viewport-stage{position:fixed;inset:0;overflow:hidden;background:#020611}
.design-canvas{
  position:absolute;left:50%;top:50%;width:1536px;height:1024px;
  transform-origin:center center;
  background:#030817;color:#fff;overflow:hidden;
}
.canvas-video,.canvas-wash,.canvas-grid,.canvas-vignette{position:absolute;inset:0;width:100%;height:100%}
.canvas-video{object-fit:cover;filter:saturate(1.18) contrast(1.05);opacity:.22}
.canvas-wash{background:
  radial-gradient(circle at 18% 44%,rgba(0,222,255,.17),transparent 31%),
  radial-gradient(circle at 82% 47%,rgba(255,31,205,.14),transparent 34%),
  radial-gradient(circle at 51% 48%,rgba(55,42,190,.22),transparent 32%),
  linear-gradient(180deg,rgba(1,5,14,.80),rgba(1,5,14,.84))}
.canvas-grid{background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:46px 46px;mask-image:radial-gradient(circle at 50% 50%,black,rgba(0,0,0,.4) 70%,transparent)}
.canvas-vignette{box-shadow:inset 0 0 160px 45px rgba(0,0,0,.8);pointer-events:none}

.mock-header{position:absolute;left:28px;right:28px;top:22px;height:108px;display:flex;justify-content:space-between;align-items:flex-start;z-index:50}
.mock-brand{display:flex;align-items:flex-start;gap:15px}
.mock-brand-symbol{font-size:48px;line-height:1;color:#59f1ff;text-shadow:0 0 18px #3cf2ff;margin-top:12px}
.mock-brand-copy{display:block;position:relative}
.mock-brand-copy strong{display:block;font-size:72px;line-height:.76;font-weight:900;letter-spacing:.02em;background:linear-gradient(90deg,#5ceeff,#5ec7ff 38%,#9a7cff 68%,#ff4bb2);-webkit-background-clip:text;color:transparent}
.mock-brand-copy small{display:block;text-align:center;margin-top:15px;font-size:13px;font-weight:700;letter-spacing:.23em;background:linear-gradient(90deg,#73f6ff,#e8efff,#ff9ed6);-webkit-background-clip:text;color:transparent}
.mock-brand-copy i{display:block;height:3px;margin:8px 20px 0;background:linear-gradient(90deg,transparent,#3cf2ff 16%,#8b5cf6 70%,#ff3cac 88%,transparent);box-shadow:0 0 10px rgba(60,242,255,.45)}
.mock-menu-btn{margin-top:8px;border:1px solid rgba(255,255,255,.28);border-radius:28px;padding:12px 20px;background:rgba(4,8,23,.55);color:#fff;font-size:17px;letter-spacing:.08em;display:flex;align-items:center;gap:10px;cursor:pointer}
.mock-menu-btn b{font-size:19px;color:#ff54c5}.glow-dot{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#46efff,#ff4bb2);box-shadow:0 0 12px #5befff}

.orbit-visual{position:absolute;border-radius:50%;pointer-events:none;z-index:2}
.orbit-a{left:470px;top:155px;width:596px;height:596px;border:1px solid rgba(67,132,255,.30)}
.orbit-b{left:560px;top:245px;width:416px;height:416px;border:1px dashed rgba(133,95,255,.22)}
.orbit-c{left:638px;top:324px;width:260px;height:260px;border:1px solid rgba(67,224,255,.16)}

.explore-node{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:290px;height:290px;border-radius:50%;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 45% 35%,#0a1643,#06091d 68%);border:3px solid #7955ff;box-shadow:0 0 0 10px rgba(60,242,255,.05),0 0 36px rgba(76,110,255,.55),0 0 70px rgba(187,56,255,.28)}
.explore-node:before{content:"";position:absolute;inset:8px;border:1px solid rgba(64,235,255,.45);border-radius:50%}
.explore-mark{font-size:54px;color:#43eaff;text-shadow:0 0 20px #43eaff}
.explore-node strong{font-size:32px;letter-spacing:.04em;margin-top:9px}
.explore-node small{font-size:16px;line-height:1.42;text-align:center;color:#47e9ff;margin-top:9px}.explore-node em{font-style:normal;color:#e567ff}

.cluster{position:absolute;z-index:20;pointer-events:none}
.primary-node,.secondary-node{pointer-events:auto}
.primary-node{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:#05091b;color:#fff;border:2px solid rgba(255,255,255,.22);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}
.primary-node:hover{transform:scale(1.035)}
.primary-photo{width:78%;height:78%;border-radius:50%;background-size:cover;background-position:center;border:2px solid rgba(255,255,255,.35);box-shadow:inset 0 0 25px rgba(0,0,0,.45)}
.primary-node strong{position:absolute;bottom:24px;font-size:25px;letter-spacing:.015em;text-shadow:0 2px 8px rgba(0,0,0,.95);z-index:3}
.photo-teleco{background-image:linear-gradient(rgba(0,55,120,.05),rgba(0,20,50,.28)),url("assets/img/teleco_ref.jpg")}
.photo-design{background-image:linear-gradient(rgba(70,0,140,.08),rgba(15,0,45,.35)),url("assets/img/diseno3d_ref.jpg")}
.photo-electronics{background-image:linear-gradient(rgba(100,0,110,.05),rgba(30,0,45,.32)),url("assets/img/electronica_ref.jpg")}
.photo-solar{background-image:linear-gradient(rgba(120,70,0,.03),rgba(30,20,0,.28)),url("assets/img/solar_ref.jpg")}
.photo-cnc{background-image:linear-gradient(rgba(0,80,110,.04),rgba(0,20,35,.30)),url("assets/img/cnc_ref.jpg")}

.secondary-node{position:absolute;width:70px;height:70px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#07101f;border:1px solid currentColor;box-shadow:0 0 18px currentColor;opacity:0;transform:scale(.25);transition:opacity .22s ease,transform .28s cubic-bezier(.2,.9,.25,1.25);color:#58ecff;text-align:center}
.secondary-node .ico{font-size:25px;line-height:1}
.secondary-node b{position:absolute;white-space:nowrap;font-size:12px;letter-spacing:.02em;color:#fff;text-shadow:0 1px 7px #000}
.cluster.open .secondary-node{opacity:1;transform:scale(1)}

.teleco-cluster{left:588px;top:45px;width:360px;height:280px}
.teleco-primary{left:77px;top:78px;width:205px;height:205px;border-color:#35e9ff;box-shadow:0 0 25px rgba(30,220,255,.35)}
.t-s1{left:35px;top:10px}.t-s1 b{top:76px}
.t-s2{left:145px;top:0}.t-s2 b{top:76px}
.t-s3{left:250px;top:10px}.t-s3 b{top:76px}
.t-s4{left:300px;top:94px}.t-s4 b{left:78px;top:27px}

.design-cluster{left:145px;top:250px;width:445px;height:410px;color:#d855ff}
.design-primary{left:165px;top:70px;width:230px;height:230px;border-color:#c84fff;box-shadow:0 0 25px rgba(200,79,255,.35)}
.d-s1{left:42px;top:12px}.d-s1 b{left:78px;top:26px}
.d-s2{left:0;top:112px}.d-s2 b{left:78px;top:26px}
.d-s3{left:0;top:215px}.d-s3 b{left:78px;top:26px}
.d-s4{left:42px;top:318px}.d-s4 b{left:78px;top:26px}

.electronics-cluster{left:945px;top:250px;width:445px;height:410px;color:#ff4fd5}
.electronics-primary{left:50px;top:70px;width:230px;height:230px;border-color:#ff4fd5;box-shadow:0 0 25px rgba(255,79,213,.35)}
.e-s1{left:330px;top:12px}.e-s1 b{right:78px;top:26px}
.e-s2{left:375px;top:112px}.e-s2 b{right:78px;top:26px}
.e-s3{left:375px;top:215px}.e-s3 b{right:78px;top:26px}
.e-s4{left:330px;top:318px}.e-s4 b{right:78px;top:26px}

.solar-cluster{left:185px;top:565px;width:470px;height:340px;color:#ffc93f}
.solar-primary{left:220px;top:10px;width:225px;height:225px;border-color:#ffc93f;box-shadow:0 0 25px rgba(255,201,63,.32)}
.solar-primary strong{font-size:25px;line-height:1.05;text-align:center;bottom:20px}
.s-s1{left:40px;top:0}.s-s1 b{left:80px;top:27px}
.s-s2{left:10px;top:82px}.s-s2 b{left:80px;top:27px}
.s-s3{left:10px;top:164px}.s-s3 b{left:80px;top:27px}
.s-s4{left:40px;top:246px}.s-s4 b{left:80px;top:27px}

.cnc-cluster{left:875px;top:565px;width:470px;height:340px;color:#35dcff}
.cnc-primary{left:25px;top:10px;width:225px;height:225px;border-color:#35dcff;box-shadow:0 0 25px rgba(53,220,255,.32)}
.cnc-primary strong{font-size:28px;bottom:20px}
.c-s1{left:330px;top:0}.c-s1 b{right:80px;top:27px}
.c-s2{left:360px;top:82px}.c-s2 b{right:80px;top:27px}
.c-s3{left:360px;top:164px}.c-s3 b{right:80px;top:27px}
.c-s4{left:330px;top:246px}.c-s4 b{right:80px;top:27px}

.mock-tagline{position:absolute;left:50%;top:896px;transform:translateX(-50%);width:850px;text-align:center;z-index:40}
.mock-tagline p{margin:0;font-size:17px;font-weight:800;letter-spacing:.22em;background:linear-gradient(90deg,#43eaff,#a986ff,#ff50c7);-webkit-background-clip:text;color:transparent}
.mock-tagline p i{font-style:normal;padding:0 13px}
.mock-tagline small{display:block;margin-top:8px;font-size:14px;color:#dce4f2}

.bottom-nav{position:absolute;left:50%;top:945px;transform:translateX(-50%);width:1030px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;z-index:40}
.bottom-nav a{height:48px;border:1px solid rgba(255,255,255,.22);border-radius:18px;display:flex;align-items:center;justify-content:center;gap:13px;font-size:15px;letter-spacing:.03em;background:rgba(4,9,24,.66)}
.bottom-nav a span{font-size:22px;color:#46eaff}.bottom-nav a:nth-child(2) span{color:#a779ff}.bottom-nav a:nth-child(3) span{color:#d85cff}.bottom-nav a:nth-child(4) span{color:#ff5bc2}

.wa-button{position:absolute;right:34px;bottom:33px;width:78px;height:78px;border:0;border-radius:50%;background:linear-gradient(135deg,#12b85e,#46e78c);color:#fff;font-weight:900;font-size:20px;box-shadow:0 18px 40px rgba(0,0,0,.30);z-index:60;cursor:pointer}

.mock-chat{position:absolute!important;right:30px!important;bottom:120px!important;width:360px!important;z-index:80!important}
.menu-layer{position:absolute!important;inset:0!important}


/* ==================== V39 DIRECT WEB FROM APPROVED MOCKUP ==================== */
body.ares-home{margin:0;background:#020612;overflow:hidden;font-family:Inter,Segoe UI,Arial,sans-serif}
.ares-home *{box-sizing:border-box}
.ares-home a{text-decoration:none;color:inherit}
.ares-viewport{position:fixed;inset:0;overflow:hidden;background:#020612}
.ares-canvas{position:absolute;left:50%;top:50%;width:1536px;height:1024px;transform-origin:center center;color:#fff;overflow:hidden;background:#030817}
.ares-bg,.ares-grid,.ares-vignette{position:absolute;inset:0}
.ares-bg{background:
radial-gradient(circle at 18% 45%,rgba(0,220,255,.13),transparent 32%),
radial-gradient(circle at 82% 44%,rgba(255,35,210,.11),transparent 34%),
radial-gradient(circle at 50% 48%,rgba(72,42,200,.18),transparent 30%),
linear-gradient(180deg,#020715,#020511 90%)}
.ares-grid{background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(circle at 50% 48%,#000 0 62%,transparent 96%)}
.ares-vignette{box-shadow:inset 0 0 160px 45px rgba(0,0,0,.82);pointer-events:none}

.ares-header{position:absolute;left:30px;right:30px;top:22px;height:108px;display:flex;justify-content:space-between;z-index:80}
.ares-brand{display:flex;gap:15px;align-items:flex-start}
.ares-symbol{font-size:49px;line-height:1;color:#55efff;text-shadow:0 0 18px #41eaff;margin-top:12px}
.ares-brandtext strong{display:block;font-size:72px;line-height:.76;font-weight:900;letter-spacing:.02em;background:linear-gradient(90deg,#53edff,#5cc6ff 40%,#9d7cff 70%,#ff4bb7);-webkit-background-clip:text;color:transparent}
.ares-brandtext small{display:block;text-align:center;margin-top:15px;font-size:13px;font-weight:700;letter-spacing:.23em;color:#e8f1ff}
.ares-brandtext i{display:block;height:3px;margin:8px 18px 0;background:linear-gradient(90deg,transparent,#40eaff 14%,#8c5cff 69%,#ff48b6 88%,transparent);box-shadow:0 0 10px rgba(60,242,255,.42)}
.ares-menu{margin-top:8px;border:1px solid rgba(255,255,255,.27);border-radius:28px;padding:12px 20px;background:rgba(3,8,22,.60);color:#fff;font-size:17px;letter-spacing:.08em;display:flex;align-items:center;gap:10px;cursor:pointer}
.ares-menu span{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#52efff,#ff4db9);box-shadow:0 0 12px #51eaff}.ares-menu b{font-size:19px;color:#ff55c5}

.ares-ring{position:absolute;border-radius:50%;pointer-events:none}
.ring-outer{left:500px;top:115px;width:536px;height:700px;border:1px solid rgba(55,133,255,.25)}
.ring-mid{left:585px;top:235px;width:366px;height:460px;border:1px dashed rgba(138,96,255,.20)}
.ring-inner{left:655px;top:325px;width:226px;height:278px;border:1px solid rgba(61,226,255,.14)}

.ares-explore{position:absolute;left:768px;top:505px;transform:translate(-50%,-50%);width:310px;height:310px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 38%,#0a1744,#05091d 68%);border:3px solid #7558ff;box-shadow:0 0 0 10px rgba(65,234,255,.04),0 0 38px rgba(70,108,255,.58),0 0 70px rgba(197,61,255,.24);z-index:10}
.ares-explore:before{content:"";position:absolute;inset:9px;border:1px solid rgba(67,234,255,.45);border-radius:50%}
.ex-mark{font-size:56px;color:#44eaff;text-shadow:0 0 20px #44eaff}
.ares-explore strong{font-size:34px;letter-spacing:.03em;margin-top:10px}.ares-explore small{font-size:17px;line-height:1.42;text-align:center;color:#42e9ff;margin-top:10px}.ares-explore em{font-style:normal;color:#e663ff}

.ares-cluster{position:absolute;z-index:20;pointer-events:none}
.ares-primary,.ares-secondary{pointer-events:auto}
.ares-primary{position:absolute;border-radius:50%;background:#040817;border:2px solid rgba(255,255,255,.25);overflow:hidden;display:flex;justify-content:center;align-items:center;transition:transform .22s ease,box-shadow .22s ease}
.ares-primary:hover{transform:scale(1.025)}
.ares-photo{position:absolute;inset:10px;border-radius:50%;background-size:cover;background-position:center center;filter:saturate(1.08) contrast(1.04);box-shadow:inset 0 -55px 60px rgba(0,0,0,.60)}
.ares-primary strong{position:absolute;left:10px;right:10px;bottom:19px;text-align:center;font-size:26px;line-height:1.02;letter-spacing:.01em;text-shadow:0 2px 9px #000;z-index:3}
.teleco-photo{background-image:url("assets/img/teleco_clean.jpg")}
.design-photo{background-image:url("assets/img/diseno_clean.jpg")}
.electronics-photo{background-image:url("assets/img/electronica_clean.jpg")}
.solar-photo{background-image:url("assets/img/solar_clean.jpg")}
.cnc-photo{background-image:url("assets/img/cnc_clean.jpg")}

.ares-secondary{position:absolute;width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#06101f;border:1px solid currentColor;box-shadow:0 0 18px currentColor;opacity:0;transform:scale(.25);transition:opacity .20s ease,transform .26s cubic-bezier(.2,.9,.25,1.2);color:#55eaff;text-align:center}
.ares-secondary span{font-size:25px}.ares-secondary b{position:absolute;white-space:nowrap;font-size:12px;letter-spacing:.015em;color:#fff;text-shadow:0 1px 7px #000}
.ares-cluster.open .ares-secondary{opacity:1;transform:scale(1)}

.teleco-cluster{left:480px;top:42px;width:576px;height:300px}
.teleco-primary{left:173px;top:70px;width:230px;height:230px;border-color:#37e7ff;box-shadow:0 0 27px rgba(55,231,255,.38)}
.t1{left:38px;top:22px}.t1 b{top:78px}
.t2{left:145px;top:6px}.t2 b{top:78px}
.t3{left:370px;top:22px}.t3 b{top:78px}
.t4{left:468px;top:98px}.t4 b{left:80px;top:28px}

.design-cluster{left:70px;top:235px;width:545px;height:430px;color:#d94fff}
.design-primary{left:212px;top:70px;width:255px;height:255px;border-color:#d94fff;box-shadow:0 0 28px rgba(217,79,255,.38)}
.d1{left:73px;top:18px}.d1 b{left:82px;top:27px}
.d2{left:18px;top:120px}.d2 b{left:82px;top:27px}
.d3{left:18px;top:225px}.d3 b{left:82px;top:27px}
.d4{left:73px;top:328px}.d4 b{left:82px;top:27px}

.electronics-cluster{left:925px;top:235px;width:545px;height:430px;color:#ff4fd1}
.electronics-primary{left:78px;top:70px;width:255px;height:255px;border-color:#ff4fd1;box-shadow:0 0 28px rgba(255,79,209,.38)}
.e1{left:397px;top:18px}.e1 b{right:82px;top:27px}
.e2{left:452px;top:120px}.e2 b{right:82px;top:27px}
.e3{left:452px;top:225px}.e3 b{right:82px;top:27px}
.e4{left:397px;top:328px}.e4 b{right:82px;top:27px}

.solar-cluster{left:145px;top:560px;width:555px;height:335px;color:#ffc83d}
.solar-primary{left:240px;top:0;width:230px;height:230px;border-color:#ffc83d;box-shadow:0 0 28px rgba(255,200,61,.34)}
.solar-primary strong{font-size:25px;bottom:18px}
.s1{left:42px;top:0}.s1 b{left:82px;top:27px}
.s2{left:10px;top:82px}.s2 b{left:82px;top:27px}
.s3{left:10px;top:164px}.s3 b{left:82px;top:27px}
.s4{left:42px;top:246px}.s4 b{left:82px;top:27px}

.cnc-cluster{left:835px;top:560px;width:555px;height:335px;color:#36dcff}
.cnc-primary{left:85px;top:0;width:230px;height:230px;border-color:#36dcff;box-shadow:0 0 28px rgba(54,220,255,.34)}
.cnc-primary strong{font-size:28px;bottom:18px}
.c1{left:403px;top:0}.c1 b{right:82px;top:27px}
.c2{left:435px;top:82px}.c2 b{right:82px;top:27px}
.c3{left:435px;top:164px}.c3 b{right:82px;top:27px}
.c4{left:403px;top:246px}.c4 b{right:82px;top:27px}

.ares-tagline{position:absolute;left:50%;top:890px;transform:translateX(-50%);width:850px;text-align:center;z-index:40}
.ares-tagline p{margin:0;font-size:17px;font-weight:800;letter-spacing:.22em;background:linear-gradient(90deg,#40eaff,#a67cff,#ff4bc6);-webkit-background-clip:text;color:transparent}.ares-tagline i{font-style:normal;padding:0 13px}.ares-tagline small{display:block;margin-top:8px;font-size:14px;color:#dce4f2}
.ares-nav{position:absolute;left:50%;top:944px;transform:translateX(-50%);width:1040px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;z-index:40}
.ares-nav a{height:49px;border:1px solid rgba(255,255,255,.23);border-radius:18px;background:rgba(4,9,24,.67);display:flex;align-items:center;justify-content:center;gap:13px;font-size:15px}.ares-nav a span{font-size:23px;color:#47eaff}.ares-nav a:nth-child(2) span{color:#a77cff}.ares-nav a:nth-child(3) span{color:#d75cff}.ares-nav a:nth-child(4) span{color:#ff55c4}
.ares-wa{position:absolute;right:32px;bottom:30px;width:80px;height:80px;border:0;border-radius:50%;background:linear-gradient(135deg,#13b85e,#45e78b);color:#fff;font-size:20px;font-weight:900;box-shadow:0 18px 40px rgba(0,0,0,.30);z-index:60;cursor:pointer}
.ares-chat{position:absolute!important;right:30px!important;bottom:120px!important;width:360px!important;z-index:90!important}
.menu-layer{position:absolute!important;inset:0!important}


/* ============================================================
   V40 — CANVAS NATIVO 1920×1080
   Mantiene la geometría del diseño aprobado y corrige TELECO.
   ============================================================ */

body.ares-home .ares-canvas{
  width:1920px !important;
  height:1080px !important;
}

/* Reescalado proporcional de la geometría V39 desde 1536×1024
   a un lienzo 1920×1080. */

/* Cabecera */
body.ares-home .ares-header{
  left:38px !important;
  right:38px !important;
  top:24px !important;
  height:114px !important;
}
body.ares-home .ares-brandtext strong{font-size:82px !important}
body.ares-home .ares-brandtext small{font-size:14px !important}
body.ares-home .ares-symbol{font-size:54px !important}
body.ares-home .ares-menu{font-size:18px !important}

/* Órbitas */
body.ares-home .ring-outer{
  left:625px !important;
  top:120px !important;
  width:670px !important;
  height:735px !important;
}
body.ares-home .ring-mid{
  left:730px !important;
  top:246px !important;
  width:458px !important;
  height:483px !important;
}
body.ares-home .ring-inner{
  left:818px !important;
  top:340px !important;
  width:283px !important;
  height:292px !important;
}

/* EXPLORAR */
body.ares-home .ares-explore{
  left:960px !important;
  top:530px !important;
  width:340px !important;
  height:340px !important;
}
body.ares-home .ex-mark{font-size:62px !important}
body.ares-home .ares-explore strong{font-size:38px !important}
body.ares-home .ares-explore small{font-size:18px !important}

/* TELECO — primario */
body.ares-home .teleco-cluster{
  left:600px !important;
  top:42px !important;
  width:720px !important;
  height:330px !important;
}
body.ares-home .teleco-primary{
  left:216px !important;
  top:76px !important;
  width:288px !important;
  height:288px !important;
}

/* TELECO — secundarios perfectamente simétricos respecto al centro
   del primario (centro X = 360 px del cluster). */
body.ares-home .teleco-cluster .ares-secondary{
  width:76px !important;
  height:76px !important;
}
body.ares-home .t1{
  left:118px !important;
  top:30px !important;
}
body.ares-home .t2{
  left:240px !important;
  top:4px !important;
}
body.ares-home .t3{
  left:404px !important;
  top:4px !important;
}
body.ares-home .t4{
  left:526px !important;
  top:30px !important;
}

/* Etiquetas Teleco bajo cada círculo */
body.ares-home .t1 b,
body.ares-home .t2 b,
body.ares-home .t3 b,
body.ares-home .t4 b{
  left:50% !important;
  right:auto !important;
  top:82px !important;
  transform:translateX(-50%) !important;
}

/* DISEÑO 3D */
body.ares-home .design-cluster{
  left:88px !important;
  top:245px !important;
  width:680px !important;
  height:452px !important;
}
body.ares-home .design-primary{
  left:265px !important;
  top:74px !important;
  width:290px !important;
  height:290px !important;
}
body.ares-home .d1{left:92px !important;top:18px !important}
body.ares-home .d2{left:24px !important;top:126px !important}
body.ares-home .d3{left:24px !important;top:238px !important}
body.ares-home .d4{left:92px !important;top:346px !important}

/* ELECTRÓNICA */
body.ares-home .electronics-cluster{
  left:1155px !important;
  top:245px !important;
  width:680px !important;
  height:452px !important;
}
body.ares-home .electronics-primary{
  left:96px !important;
  top:74px !important;
  width:290px !important;
  height:290px !important;
}
body.ares-home .e1{left:496px !important;top:18px !important}
body.ares-home .e2{left:564px !important;top:126px !important}
body.ares-home .e3{left:564px !important;top:238px !important}
body.ares-home .e4{left:496px !important;top:346px !important}

/* SOLAR */
body.ares-home .solar-cluster{
  left:180px !important;
  top:590px !important;
  width:695px !important;
  height:355px !important;
}
body.ares-home .solar-primary{
  left:300px !important;
  top:0 !important;
  width:275px !important;
  height:275px !important;
}
body.ares-home .s1{left:52px !important;top:0 !important}
body.ares-home .s2{left:12px !important;top:88px !important}
body.ares-home .s3{left:12px !important;top:176px !important}
body.ares-home .s4{left:52px !important;top:264px !important}

/* CNC */
body.ares-home .cnc-cluster{
  left:1045px !important;
  top:590px !important;
  width:695px !important;
  height:355px !important;
}
body.ares-home .cnc-primary{
  left:106px !important;
  top:0 !important;
  width:275px !important;
  height:275px !important;
}
body.ares-home .c1{left:504px !important;top:0 !important}
body.ares-home .c2{left:544px !important;top:88px !important}
body.ares-home .c3{left:544px !important;top:176px !important}
body.ares-home .c4{left:504px !important;top:264px !important}

/* Fotos principales aún más protagonistas */
body.ares-home .ares-photo{
  inset:8px !important;
}
body.ares-home .ares-primary strong{
  bottom:22px !important;
  font-size:28px !important;
}

/* Franja inferior */
body.ares-home .ares-tagline{
  top:940px !important;
  width:1040px !important;
}
body.ares-home .ares-tagline p{font-size:18px !important}
body.ares-home .ares-tagline small{font-size:15px !important}

body.ares-home .ares-nav{
  top:990px !important;
  width:1300px !important;
  gap:24px !important;
}
body.ares-home .ares-nav a{
  height:52px !important;
  font-size:16px !important;
}

/* WhatsApp */
body.ares-home .ares-wa{
  right:40px !important;
  bottom:34px !important;
  width:84px !important;
  height:84px !important;
}

/* V41 — ajustes solicitados */
body.ares-home .ares-canvas{width:1920px!important;height:1080px!important;background:#020713!important}
body.ares-home .ares-viewport{background:#020713!important}
body.ares-home .ares-bg{inset:-4px!important}
body.ares-home .teleco-photo{
 background-image:url("assets/img/teleco.jpg")!important;
 background-position:center center!important;background-size:cover!important;
 opacity:1!important;filter:saturate(1.15) brightness(1.16) contrast(1.05)!important
}
body.ares-home .teleco-primary .ares-photo,
body.ares-home .design-primary .ares-photo,
body.ares-home .electronics-primary .ares-photo,
body.ares-home .solar-primary .ares-photo,
body.ares-home .cnc-primary .ares-photo{inset:7px!important}
body.ares-home .electronics-primary strong{
 bottom:36px!important;left:20px!important;right:20px!important;
 font-size:24px!important;letter-spacing:-.015em!important
}
html,body.ares-home,.ares-viewport{width:100%;height:100%}


/* ============================================================
   V42 — MENÚ LATERAL IZQUIERDO + MAYOR SEPARACIÓN ENTRE PRIMARIOS
   ============================================================ */

/* Menú principal: pasa de la franja inferior a una columna lateral */
body.ares-home .ares-nav{
  position:absolute !important;
  left:28px !important;
  top:330px !important;
  transform:none !important;
  width:210px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
  z-index:55 !important;
}

body.ares-home .ares-nav a{
  width:210px !important;
  height:54px !important;
  justify-content:flex-start !important;
  padding-left:22px !important;
  border-radius:16px !important;
  font-size:15px !important;
  background:rgba(3,8,20,.76) !important;
  backdrop-filter:blur(8px);
}

body.ares-home .ares-nav a:hover{
  transform:translateX(8px);
  border-color:rgba(70,235,255,.58);
}

/* El lema puede bajar ligeramente al quedar libre la franja inferior */
body.ares-home .ares-tagline{
  top:980px !important;
  width:980px !important;
}

/* ============================================================
   REUBICACIÓN DE PRIMARIOS
   Se conserva el tamaño, pero se aumenta el radio visual.
   ============================================================ */

/* EXPLORAR permanece centrado */
body.ares-home .ares-explore{
  left:1010px !important;
  top:535px !important;
  width:335px !important;
  height:335px !important;
}

/* TELECO más alto y más separado de EXPLORAR */
body.ares-home .teleco-cluster{
  left:655px !important;
  top:0px !important;
  width:710px !important;
  height:360px !important;
}

body.ares-home .teleco-primary{
  left:210px !important;
  top:26px !important;
  width:285px !important;
  height:285px !important;
}

/* Diseño 3D más a la izquierda */
body.ares-home .design-cluster{
  left:255px !important;
  top:255px !important;
  width:660px !important;
  height:470px !important;
}

body.ares-home .design-primary{
  left:250px !important;
  top:88px !important;
  width:275px !important;
  height:275px !important;
}

/* Electrónica más a la derecha */
body.ares-home .electronics-cluster{
  left:1195px !important;
  top:255px !important;
  width:660px !important;
  height:470px !important;
}

body.ares-home .electronics-primary{
  left:85px !important;
  top:88px !important;
  width:275px !important;
  height:275px !important;
}

/* Solar más abajo y más a la izquierda */
body.ares-home .solar-cluster{
  left:390px !important;
  top:660px !important;
  width:620px !important;
  height:340px !important;
}

body.ares-home .solar-primary{
  left:220px !important;
  top:0 !important;
  width:260px !important;
  height:260px !important;
}

/* CNC más abajo y más a la derecha */
body.ares-home .cnc-cluster{
  left:1110px !important;
  top:660px !important;
  width:620px !important;
  height:340px !important;
}

body.ares-home .cnc-primary{
  left:110px !important;
  top:0 !important;
  width:260px !important;
  height:260px !important;
}

/* ============================================================
   SECUNDARIOS: mantenerlos fuera de los primarios vecinos
   ============================================================ */

/* TELECO: arco superior más ancho y algo más alto */
body.ares-home .t1{left:75px !important;top:18px !important}
body.ares-home .t2{left:190px !important;top:-6px !important}
body.ares-home .t3{left:448px !important;top:-6px !important}
body.ares-home .t4{left:563px !important;top:18px !important}

/* Diseño 3D: secundarios más hacia el exterior izquierdo */
body.ares-home .d1{left:40px !important;top:20px !important}
body.ares-home .d2{left:0px !important;top:125px !important}
body.ares-home .d3{left:0px !important;top:235px !important}
body.ares-home .d4{left:40px !important;top:340px !important}

/* Electrónica: espejo hacia el exterior derecho */
body.ares-home .e1{left:525px !important;top:20px !important}
body.ares-home .e2{left:565px !important;top:125px !important}
body.ares-home .e3{left:565px !important;top:235px !important}
body.ares-home .e4{left:525px !important;top:340px !important}

/* Solar: secundarios más exteriores y sin bajar sobre el lema */
body.ares-home .s1{left:0px !important;top:0px !important}
body.ares-home .s2{left:0px !important;top:76px !important}
body.ares-home .s3{left:0px !important;top:152px !important}
body.ares-home .s4{left:0px !important;top:228px !important}

/* CNC: espejo y contenido dentro de pantalla */
body.ares-home .c1{left:505px !important;top:0px !important}
body.ares-home .c2{left:505px !important;top:76px !important}
body.ares-home .c3{left:505px !important;top:152px !important}
body.ares-home .c4{left:505px !important;top:228px !important}

/* Asegurar que los grupos abiertos quedan por encima */
body.ares-home .svc.open{
  z-index:100 !important;
}


/* ============================================================
   V43 — RÉPLICA FUNCIONAL DEL ÚLTIMO BOCETO APROBADO
   Canvas nativo 1920 x 1080
   ============================================================ */
html,body{margin:0}
body.v43-home{margin:0;background:#01040b;overflow:hidden;font-family:Inter,Segoe UI,Arial,sans-serif;color:#fff}
.v43-home *{box-sizing:border-box}
.v43-home a{text-decoration:none;color:inherit}

.v43-viewport{position:fixed;inset:0;overflow:hidden;background:#01040b}
.v43-canvas{
 position:absolute;left:50%;top:50%;
 width:1920px;height:1080px;
 transform-origin:center center;
 overflow:hidden;background:#020713;
}

.v43-bg,.v43-grid,.v43-vignette{position:absolute;inset:0}
.v43-bg{
 background:
 radial-gradient(circle at 52% 46%,rgba(44,75,190,.18),transparent 34%),
 radial-gradient(circle at 18% 47%,rgba(0,190,255,.08),transparent 28%),
 radial-gradient(circle at 82% 47%,rgba(255,0,190,.075),transparent 30%),
 linear-gradient(180deg,#010711,#01040b 90%);
}
.v43-grid{
 background-image:
 linear-gradient(rgba(70,145,255,.045) 1px,transparent 1px),
 linear-gradient(90deg,rgba(70,145,255,.045) 1px,transparent 1px);
 background-size:64px 64px;
}
.v43-vignette{box-shadow:inset 0 0 160px 45px rgba(0,0,0,.78);pointer-events:none}

/* Sidebar */
.v43-sidebar{
 position:absolute;z-index:70;
 left:0;top:0;width:315px;height:1080px;
 border-right:1px solid rgba(74,220,255,.22);
 background:linear-gradient(180deg,rgba(2,8,20,.88),rgba(1,5,14,.94));
 box-shadow:18px 0 55px rgba(0,0,0,.16);
 padding:28px 28px 24px;
}
.v43-brand{display:flex;gap:13px;align-items:flex-start}
.v43-brand .brand-symbol{
 font-size:48px;line-height:1;color:#55efff;text-shadow:0 0 18px #43eaff;margin-top:8px
}
.v43-brand .brand-copy strong{
 display:block;font-size:58px;line-height:.80;font-weight:900;
 background:linear-gradient(90deg,#59efff,#61c4ff 39%,#9d7cff 68%,#ff4bb6);
 -webkit-background-clip:text;color:transparent;
}
.v43-brand .brand-copy small{
 display:block;margin-top:14px;text-align:center;
 font-size:11px;font-weight:700;letter-spacing:.19em
}
.v43-brand .brand-copy i{
 display:block;height:3px;margin-top:9px;
 background:linear-gradient(90deg,#3feaff,#8963ff,#ff4bb6);
 box-shadow:0 0 10px rgba(60,242,255,.42)
}
.v43-side-nav{
 position:absolute;left:28px;right:28px;top:200px;
 display:flex;flex-direction:column;gap:20px
}
.v43-side-nav a{
 height:66px;border:1px solid rgba(255,255,255,.22);border-radius:13px;
 display:flex;align-items:center;gap:18px;padding:0 22px;
 background:rgba(3,8,22,.66);
 font-size:17px;letter-spacing:.02em;
 transition:.22s ease;
}
.v43-side-nav a span{font-size:28px;color:#52eaff}
.v43-side-nav a:nth-child(2) span{color:#a06dff}
.v43-side-nav a:nth-child(3) span{color:#dc57ff}
.v43-side-nav a:nth-child(4) span{color:#ff4bab}
.v43-side-nav a:hover,.v43-side-nav a.active{
 transform:translateX(7px);
 border-color:rgba(66,235,255,.56);
 box-shadow:0 0 22px rgba(50,220,255,.10);
}
.v43-side-claim{
 position:absolute;left:36px;right:26px;bottom:150px
}
.v43-side-claim b{
 display:block;margin:0 0 18px;
 font-size:17px;letter-spacing:.22em
}
.v43-side-claim b:nth-child(1){color:#4eeaff}
.v43-side-claim b:nth-child(2){color:#ab78ff}
.v43-side-claim b:nth-child(3){color:#ff4db6}
.v43-side-claim p{
 margin-top:26px;color:#d5ddeb;font-size:13px;line-height:1.65
}
.v43-wa{
 position:absolute;left:52px;bottom:38px;width:74px;height:74px;border:0;border-radius:50%;
 background:linear-gradient(135deg,#14b85f,#45e788);color:#fff;
 font-size:18px;font-weight:900;box-shadow:0 12px 30px rgba(0,0,0,.30);
 cursor:pointer
}
.v43-wa span{font-size:14px}

/* top menu */
.v43-menu{
 position:absolute;z-index:75;right:36px;top:28px;
 border:1px solid rgba(255,255,255,.24);border-radius:26px;
 background:rgba(3,8,22,.70);color:#fff;
 padding:12px 20px;font-size:17px;letter-spacing:.07em;cursor:pointer
}
.v43-menu span{
 display:inline-block;width:10px;height:10px;border-radius:50%;
 background:linear-gradient(135deg,#50eaff,#ff4cb7);box-shadow:0 0 10px #50eaff
}
.v43-menu b{color:#ff4fbd}

/* Orbits */
.v43-orbit{position:absolute;border-radius:50%;pointer-events:none}
.orbit-1{left:555px;top:105px;width:985px;height:825px;border:1px solid rgba(45,130,255,.25)}
.orbit-2{left:705px;top:220px;width:680px;height:600px;border:1px dashed rgba(114,79,255,.23)}
.orbit-3{left:820px;top:345px;width:450px;height:350px;border:1px solid rgba(58,226,255,.13)}

/* Center */
.v43-hub{
 position:absolute;z-index:15;
 left:1040px;top:535px;transform:translate(-50%,-50%);
 width:330px;height:330px;border-radius:50%;
 display:flex;flex-direction:column;align-items:center;justify-content:center;
 background:radial-gradient(circle at 50% 35%,#0a1640,#05091c 68%);
 border:4px solid #7257ff;
 box-shadow:0 0 0 10px rgba(54,225,255,.035),0 0 38px rgba(60,99,255,.52),0 0 70px rgba(188,55,255,.22)
}
.v43-hub>b{font-size:57px;color:#43eaff;text-shadow:0 0 18px #43eaff}
.v43-hub strong{font-size:38px;letter-spacing:.025em;margin-top:10px}
.v43-hub span{font-size:18px;line-height:1.42;text-align:center;color:#43eaff;margin-top:11px}
.v43-hub em{font-style:normal;color:#e65fff}

/* Services */
.v43-service{position:absolute;z-index:20;pointer-events:none}
.v43-service .primary,.v43-service .sec{pointer-events:auto}
.v43-service .primary{
 position:absolute;border-radius:50%;overflow:hidden;background:#040817;
 border:3px solid currentColor;box-shadow:0 0 25px currentColor;
 transition:transform .22s ease
}
.v43-service .primary:hover{transform:scale(1.025)}
.v43-service .photo{
 position:absolute;inset:8px;border-radius:50%;
 background-size:cover;background-position:center center;
 filter:saturate(1.08) contrast(1.03);
 box-shadow:inset 0 -70px 70px rgba(0,0,0,.56)
}
.v43-service .primary strong{
 position:absolute;z-index:3;left:12px;right:12px;bottom:18px;
 text-align:center;font-size:27px;line-height:1.02;text-shadow:0 2px 10px #000
}
.photo-teleco{background-image:url("assets/img/teleco_v43.jpg")}
.photo-diseno{background-image:url("assets/img/diseno_v43.jpg")}
.photo-electronica{background-image:url("assets/img/electronica_v43.jpg")}
.photo-solar{background-image:url("assets/img/solar_v43.jpg")}
.photo-cnc{background-image:url("assets/img/cnc_v43.jpg")}

/* secondary buttons */
.v43-service .sec{
 position:absolute;width:72px;height:72px;border-radius:50%;
 border:2px solid currentColor;background:#041020;
 display:flex;align-items:center;justify-content:center;
 box-shadow:0 0 17px currentColor;
 opacity:0;transform:scale(.18);
 transition:opacity .20s ease,transform .26s cubic-bezier(.2,.9,.25,1.2);
 pointer-events:none
}
.v43-service .sec i{font-style:normal;font-size:26px}
.v43-service .sec b{
 position:absolute;white-space:nowrap;color:#fff;font-size:13px;font-weight:700;text-shadow:0 1px 7px #000
}
.v43-service.open .sec{opacity:1;transform:scale(1);pointer-events:auto}

/* TELECO */
.v43-service.teleco{
 left:695px;top:35px;width:650px;height:360px;color:#23d9ff
}
.teleco .primary{
 left:185px;top:38px;width:280px;height:280px
}
.teleco .primary strong{font-size:29px}
.teleco .s1{left:20px;top:105px}
.teleco .s2{left:95px;top:195px}
.teleco .s3{left:558px;top:105px}
.teleco .s4{left:483px;top:195px}
.teleco .s1 b,.teleco .s2 b{right:84px}
.teleco .s3 b,.teleco .s4 b{left:84px}

/* Diseño */
.v43-service.diseno{
 left:300px;top:300px;width:535px;height:450px;color:#d84fff
}
.diseno .primary{
 left:130px;top:28px;width:285px;height:285px
}
.diseno .s1{left:0;top:0}.diseno .s2{left:0;top:105px}.diseno .s3{left:0;top:210px}.diseno .s4{left:0;top:315px}
.diseno .sec b{left:84px}

/* Electrónica */
.v43-service.electronica{
 left:1230px;top:300px;width:535px;height:450px;color:#ff4bd1
}
.electronica .primary{
 left:0;top:28px;width:285px;height:285px
}
.electronica .primary strong{bottom:28px;font-size:25px}
.electronica .s1{left:400px;top:0}.electronica .s2{left:400px;top:105px}.electronica .s3{left:400px;top:210px}.electronica .s4{left:400px;top:315px}
.electronica .sec b{right:84px}

/* Solar */
.v43-service.solar{
 left:345px;top:650px;width:635px;height:350px;color:#ffc522
}
.solar .primary{
 left:245px;top:0;width:270px;height:270px
}
.solar .primary strong{font-size:27px}
.solar .s1{left:0;top:0}.solar .s2{left:0;top:82px}.solar .s3{left:0;top:164px}.solar .s4{left:0;top:246px}
.solar .sec b{left:84px}

/* CNC */
.v43-service.cnc{
 left:1090px;top:650px;width:635px;height:350px;color:#29dcff
}
.cnc .primary{
 left:0;top:0;width:270px;height:270px
}
.cnc .primary strong{font-size:30px}
.cnc .s1{left:500px;top:0}.cnc .s2{left:500px;top:82px}.cnc .s3{left:500px;top:164px}.cnc .s4{left:500px;top:246px}
.cnc .sec b{right:84px}

/* chat & menu layers */
.v43-chat{
 position:absolute!important;z-index:90!important;
 left:335px!important;bottom:30px!important;width:360px!important
}
.menu-layer{position:absolute!important;inset:0!important}


/* ============================================================
   V46 — GEOMETRÍA RECONSTRUIDA DESDE CERO
   Canvas 1920×1080. Área útil: x=315..1920.
   Centro visual útil aproximado: x=1118.
   ============================================================ */
body.v46-home{margin:0;background:#01040b;overflow:hidden;font-family:Inter,Segoe UI,Arial,sans-serif;color:#fff}
.v46-home *{box-sizing:border-box}
.v46-home a{text-decoration:none;color:inherit}
.v46-viewport{position:fixed;inset:0;overflow:hidden;background:#01040b}
.v46-canvas{position:absolute;left:50%;top:50%;width:1920px;height:1080px;transform-origin:center center;overflow:hidden;background:#020713}
.v46-bg,.v46-grid,.v46-vignette{position:absolute;inset:0}
.v46-bg{background:
 radial-gradient(circle at 58% 47%,rgba(42,72,190,.18),transparent 34%),
 radial-gradient(circle at 26% 47%,rgba(0,190,255,.07),transparent 27%),
 radial-gradient(circle at 84% 47%,rgba(255,0,190,.07),transparent 29%),
 linear-gradient(180deg,#010711,#01040b 90%)}
.v46-grid{background-image:linear-gradient(rgba(70,145,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(70,145,255,.045) 1px,transparent 1px);background-size:64px 64px}
.v46-vignette{box-shadow:inset 0 0 160px 45px rgba(0,0,0,.78);pointer-events:none}

/* Sidebar */
.v46-sidebar{position:absolute;z-index:70;left:0;top:0;width:315px;height:1080px;border-right:1px solid rgba(74,220,255,.22);background:linear-gradient(180deg,rgba(2,8,20,.9),rgba(1,5,14,.95));padding:28px}
.v46-brand{display:flex;gap:13px;align-items:flex-start}
.v46-brand .brand-symbol{font-size:48px;color:#55efff;text-shadow:0 0 18px #43eaff;margin-top:8px}
.v46-brand .brand-copy strong{display:block;font-size:58px;line-height:.80;font-weight:900;background:linear-gradient(90deg,#59efff,#61c4ff 39%,#9d7cff 68%,#ff4bb6);-webkit-background-clip:text;color:transparent}
.v46-brand .brand-copy small{display:block;margin-top:14px;text-align:center;font-size:11px;font-weight:700;letter-spacing:.19em}
.v46-brand .brand-copy i{display:block;height:3px;margin-top:9px;background:linear-gradient(90deg,#3feaff,#8963ff,#ff4bb6)}
.v46-side-nav{position:absolute;left:28px;right:28px;top:200px;display:flex;flex-direction:column;gap:20px}
.v46-side-nav a{height:66px;border:1px solid rgba(255,255,255,.22);border-radius:13px;display:flex;align-items:center;gap:18px;padding:0 22px;background:rgba(3,8,22,.66);font-size:17px;transition:.22s}
.v46-side-nav a span{font-size:28px;color:#52eaff}
.v46-side-nav a:nth-child(2) span{color:#a06dff}.v46-side-nav a:nth-child(3) span{color:#dc57ff}.v46-side-nav a:nth-child(4) span{color:#ff4bab}
.v46-side-nav a:hover,.v46-side-nav a.active{transform:translateX(7px);border-color:rgba(66,235,255,.56)}
.v46-side-claim{position:absolute;left:36px;right:26px;bottom:150px}
.v46-side-claim b{display:block;margin-bottom:18px;font-size:17px;letter-spacing:.22em}
.v46-side-claim b:nth-child(1){color:#4eeaff}.v46-side-claim b:nth-child(2){color:#ab78ff}.v46-side-claim b:nth-child(3){color:#ff4db6}
.v46-side-claim p{margin-top:26px;color:#d5ddeb;font-size:13px;line-height:1.65}
.v46-wa{position:absolute;left:52px;bottom:38px;width:74px;height:74px;border:0;border-radius:50%;background:linear-gradient(135deg,#14b85f,#45e788);color:#fff;font-size:18px;font-weight:900;cursor:pointer}

/* top menu */
.v46-menu{position:absolute;z-index:75;right:36px;top:28px;border:1px solid rgba(255,255,255,.24);border-radius:26px;background:rgba(3,8,22,.70);color:#fff;padding:12px 20px;font-size:17px;letter-spacing:.07em}
.v46-menu span{display:inline-block;width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#50eaff,#ff4cb7)}
.v46-menu b{color:#ff4fbd}

/* Orbits centered on usable area */
.v46-orbit{position:absolute;border-radius:50%;pointer-events:none}
.orbit-1{left:610px;top:85px;width:1010px;height:835px;border:1px solid rgba(45,130,255,.25)}
.orbit-2{left:785px;top:225px;width:660px;height:555px;border:1px dashed rgba(114,79,255,.23)}
.orbit-3{left:900px;top:355px;width:430px;height:300px;border:1px solid rgba(58,226,255,.13)}

/* Center */
.v46-hub{position:absolute;z-index:15;left:1118px;top:525px;transform:translate(-50%,-50%);width:330px;height:330px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 35%,#0a1640,#05091c 68%);border:4px solid #7257ff;box-shadow:0 0 0 10px rgba(54,225,255,.035),0 0 38px rgba(60,99,255,.52),0 0 70px rgba(188,55,255,.22)}
.v46-hub>b{font-size:57px;color:#43eaff}.v46-hub strong{font-size:38px;margin-top:10px}.v46-hub span{font-size:18px;line-height:1.42;text-align:center;color:#43eaff;margin-top:11px}.v46-hub em{font-style:normal;color:#e65fff}

/* Common service */
.v46-service{position:absolute;z-index:20;pointer-events:none;background:transparent!important}
.v46-service .primary,.v46-service .sec{pointer-events:auto}
.v46-service .primary{position:absolute;border-radius:50%;overflow:hidden;background:#040817;border:3px solid currentColor;box-shadow:0 0 25px currentColor;transition:transform .22s}
.v46-service .primary:hover{transform:scale(1.025)}
.v46-service .photo{position:absolute;inset:8px;border-radius:50%;background-size:cover;background-position:center;filter:saturate(1.08) contrast(1.03);box-shadow:inset 0 -70px 70px rgba(0,0,0,.56)}
.v46-service .primary strong{position:absolute;z-index:3;left:12px;right:12px;bottom:18px;text-align:center;font-size:27px;line-height:1.02;text-shadow:0 2px 10px #000}
.photo-teleco{background-image:url("assets/img/teleco_v43.jpg")}.photo-diseno{background-image:url("assets/img/diseno_v43.jpg")}.photo-electronica{background-image:url("assets/img/electronica_v43.jpg")}.photo-solar{background-image:url("assets/img/solar_v43.jpg")}.photo-cnc{background-image:url("assets/img/cnc_v43.jpg")}

.v46-service .sec{position:absolute;width:72px;height:72px;border-radius:50%;border:2px solid currentColor;background:#041020;display:flex;align-items:center;justify-content:center;box-shadow:0 0 17px currentColor;opacity:0;transform:scale(.18);transition:opacity .20s ease,transform .26s cubic-bezier(.2,.9,.25,1.2);pointer-events:none}
.v46-service .sec i{font-style:normal;font-size:26px}.v46-service .sec b{position:absolute;white-space:nowrap;color:#fff;font-size:13px;text-shadow:0 1px 7px #000}
.v46-service.open .sec{opacity:1;transform:scale(1);pointer-events:auto;z-index:120}

/* Teleco centered over hub */
.v46-service.teleco{left:793px;top:18px;width:650px;height:380px;color:#23d9ff}
.teleco .primary{left:185px;top:22px;width:280px;height:280px}
.teleco .primary strong{font-size:29px;bottom:22px}
.teleco .s1{left:45px;top:105px}.teleco .s2{left:95px;top:225px}.teleco .s3{left:533px;top:105px}.teleco .s4{left:483px;top:225px}
.teleco .s1 b,.teleco .s2 b{right:84px}.teleco .s3 b,.teleco .s4 b{left:84px}

/* Design */
.v46-service.diseno{left:365px;top:315px;width:520px;height:450px;color:#d84fff}
.diseno .primary{left:150px;top:40px;width:280px;height:280px}
.diseno .s1{left:0;top:0}.diseno .s2{left:0;top:105px}.diseno .s3{left:0;top:210px}.diseno .s4{left:0;top:315px}
.diseno .sec b{left:84px}

/* Electronics symmetric */
.v46-service.electronica{left:1350px;top:315px;width:520px;height:450px;color:#ff4bd1}
.electronica .primary{left:0;top:40px;width:280px;height:280px}
.electronica .primary strong{bottom:30px;font-size:25px}
.electronica .s1{left:400px;top:0}.electronica .s2{left:400px;top:105px}.electronica .s3{left:400px;top:210px}.electronica .s4{left:400px;top:315px}
.electronica .sec b{right:84px}

/* Solar */
.v46-service.solar{left:445px;top:700px;width:610px;height:330px;color:#ffc522}
.solar .primary{left:255px;top:0;width:260px;height:260px}
.solar .primary strong{font-size:26px}
.solar .s1{left:0;top:0}.solar .s2{left:0;top:78px}.solar .s3{left:0;top:156px}.solar .s4{left:0;top:234px}
.solar .sec b{left:84px}

/* CNC */
.v46-service.cnc{left:1190px;top:700px;width:610px;height:330px;color:#29dcff}
.cnc .primary{left:0;top:0;width:260px;height:260px}
.cnc .primary strong{font-size:30px}
.cnc .s1{left:490px;top:0}.cnc .s2{left:490px;top:78px}.cnc .s3{left:490px;top:156px}.cnc .s4{left:490px;top:234px}
.cnc .sec b{right:84px}

.v46-service.open{z-index:110}
.v46-chat{position:absolute!important;left:335px!important;bottom:30px!important;width:360px!important;z-index:90!important}
.menu-layer{position:absolute!important;inset:0!important}


/* ============================================================
   V49 — CENTROS MAESTROS
   Cada círculo principal tiene un centro absoluto real.
   No hay contenedores con offsets internos.
   ============================================================ */
body.v49-home{margin:0;background:#01040b;overflow:hidden;font-family:Inter,Segoe UI,Arial,sans-serif;color:#fff}
.v49-home *{box-sizing:border-box}
.v49-home a{text-decoration:none;color:inherit}
.v49-viewport{position:fixed;inset:0;overflow:hidden;background:#01040b}
.v49-canvas{position:absolute;left:50%;top:50%;width:1920px;height:1080px;transform-origin:center center;overflow:hidden;background:#020713}
.v49-bg,.v49-grid{position:absolute;inset:0}
.v49-bg{background:
 radial-gradient(circle at 58% 48%,rgba(50,70,190,.17),transparent 34%),
 radial-gradient(circle at 28% 46%,rgba(0,190,255,.06),transparent 28%),
 radial-gradient(circle at 84% 47%,rgba(255,0,190,.06),transparent 29%),
 linear-gradient(180deg,#010711,#01040b 90%)}
.v49-grid{background-image:linear-gradient(rgba(70,145,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(70,145,255,.045) 1px,transparent 1px);background-size:64px 64px}

/* Sidebar */
.v49-sidebar{position:absolute;z-index:70;left:0;top:0;width:315px;height:1080px;border-right:1px solid rgba(74,220,255,.22);background:linear-gradient(180deg,rgba(2,8,20,.91),rgba(1,5,14,.96));padding:28px}
.v49-brand{display:flex;gap:13px;align-items:flex-start}
.v49-brand .brand-symbol{font-size:48px;color:#55efff;text-shadow:0 0 18px #43eaff;margin-top:8px}
.v49-brand .brand-copy strong{display:block;font-size:58px;line-height:.80;font-weight:900;background:linear-gradient(90deg,#59efff,#61c4ff 39%,#9d7cff 68%,#ff4bb6);-webkit-background-clip:text;color:transparent}
.v49-brand .brand-copy small{display:block;margin-top:14px;text-align:center;font-size:11px;font-weight:700;letter-spacing:.19em}
.v49-brand .brand-copy i{display:block;height:3px;margin-top:9px;background:linear-gradient(90deg,#3feaff,#8963ff,#ff4bb6)}
.v49-side-nav{position:absolute;left:28px;right:28px;top:200px;display:flex;flex-direction:column;gap:20px}
.v49-side-nav a{height:66px;border:1px solid rgba(255,255,255,.22);border-radius:13px;display:flex;align-items:center;gap:18px;padding:0 22px;background:rgba(3,8,22,.66);font-size:17px;transition:.22s}
.v49-side-nav a span{font-size:28px;color:#52eaff}
.v49-side-nav a:nth-child(2) span{color:#a06dff}.v49-side-nav a:nth-child(3) span{color:#dc57ff}.v49-side-nav a:nth-child(4) span{color:#ff4bab}
.v49-side-nav a:hover,.v49-side-nav a.active{transform:translateX(7px);border-color:rgba(66,235,255,.56)}
.v49-side-claim{position:absolute;left:36px;right:26px;bottom:150px}
.v49-side-claim b{display:block;margin-bottom:18px;font-size:17px;letter-spacing:.22em}
.v49-side-claim b:nth-child(1){color:#4eeaff}.v49-side-claim b:nth-child(2){color:#ab78ff}.v49-side-claim b:nth-child(3){color:#ff4db6}
.v49-side-claim p{margin-top:26px;color:#d5ddeb;font-size:13px;line-height:1.65}
.v49-wa{position:absolute;left:52px;bottom:38px;width:74px;height:74px;border:0;border-radius:50%;background:linear-gradient(135deg,#14b85f,#45e788);color:#fff;font-size:18px;font-weight:900}

/* Menu */
.v49-menu{position:absolute;z-index:75;right:36px;top:28px;border:1px solid rgba(255,255,255,.24);border-radius:26px;background:rgba(3,8,22,.70);color:#fff;padding:12px 20px;font-size:17px}
.v49-menu span{display:inline-block;width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#50eaff,#ff4cb7)}
.v49-menu b{color:#ff4fbd}

/* Orbitas */
.v49-orbit{position:absolute;border-radius:50%;pointer-events:none}
.orbit-outer{left:570px;top:95px;width:1096px;height:850px;border:1px solid rgba(45,130,255,.25)}
.orbit-mid{left:790px;top:245px;width:656px;height:575px;border:1px dashed rgba(114,79,255,.23)}
.orbit-inner{left:908px;top:360px;width:420px;height:320px;border:1px solid rgba(58,226,255,.13)}

/* Hub */
.v49-hub{position:absolute;left:1118px;top:535px;transform:translate(-50%,-50%);width:326px;height:326px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 35%,#0a1640,#05091c 68%);border:4px solid #7257ff;box-shadow:0 0 0 10px rgba(54,225,255,.035),0 0 38px rgba(60,99,255,.52),0 0 70px rgba(188,55,255,.22);z-index:15}
.v49-hub>b{font-size:57px;color:#43eaff}.v49-hub strong{font-size:38px;margin-top:10px}.v49-hub span{font-size:18px;line-height:1.42;text-align:center;color:#43eaff;margin-top:11px}.v49-hub em{font-style:normal;color:#e65fff}

/* Nodos: el propio section está centrado exactamente en x/y */
.v49-node{position:absolute;width:0;height:0;z-index:20;color:#23d9ff}
.v49-node.teleco{left:1118px;top:205px;color:#23d9ff}
.v49-node.diseno{left:690px;top:470px;color:#d84fff}
.v49-node.electronica{left:1546px;top:470px;color:#ff4bd1}
.v49-node.solar{left:790px;top:815px;color:#ffc522}
.v49-node.cnc{left:1446px;top:815px;color:#29dcff}

.v49-primary{position:absolute;left:0;top:0;transform:translate(-50%,-50%);width:280px;height:280px;border-radius:50%;overflow:hidden;background:#040817;border:3px solid currentColor;box-shadow:0 0 25px currentColor;z-index:20;transition:transform .22s}
.v49-primary:hover{transform:translate(-50%,-50%) scale(1.025)}
.v49-primary .photo{position:absolute;inset:8px;border-radius:50%;background-size:cover;background-position:center;filter:saturate(1.08) contrast(1.03);box-shadow:inset 0 -70px 70px rgba(0,0,0,.56)}
.v49-primary strong{position:absolute;z-index:3;left:12px;right:12px;bottom:20px;text-align:center;font-size:27px;line-height:1.02;text-shadow:0 2px 10px #000}
.photo-teleco{background-image:url("assets/img/teleco_v43.jpg")}.photo-diseno{background-image:url("assets/img/diseno_v43.jpg")}.photo-electronica{background-image:url("assets/img/electronica_v43.jpg")}.photo-solar{background-image:url("assets/img/solar_v43.jpg")}.photo-cnc{background-image:url("assets/img/cnc_v43.jpg")}
.electronica .v49-primary strong{bottom:30px;font-size:24px}
.solar .v49-primary,.cnc .v49-primary{width:255px;height:255px}
.solar .v49-primary strong{font-size:25px}.cnc .v49-primary strong{font-size:28px}

/* secundarios */
.v49-sec{position:absolute;width:72px;height:72px;margin-left:-36px;margin-top:-36px;border-radius:50%;border:2px solid currentColor;background:#041020;display:flex;align-items:center;justify-content:center;box-shadow:0 0 17px currentColor;opacity:0;transform:scale(.18);transition:opacity .2s ease,transform .26s cubic-bezier(.2,.9,.25,1.2);pointer-events:none;z-index:30}
.v49-sec i{font-style:normal;font-size:26px}.v49-sec b{position:absolute;white-space:nowrap;color:#fff;font-size:13px;text-shadow:0 1px 7px #000}
.v49-node.open .v49-sec{opacity:1;transform:scale(1);pointer-events:auto}

/* Teleco: cuatro posiciones laterales, sin tocar pantalla */
.teleco .sec1{left:-210px;top:70px}.teleco .sec2{left:-165px;top:175px}.teleco .sec3{left:210px;top:70px}.teleco .sec4{left:165px;top:175px}
.teleco .sec1 b,.teleco .sec2 b{right:84px}.teleco .sec3 b,.teleco .sec4 b{left:84px}

/* Diseño: exterior izquierdo */
.diseno .sec1{left:-205px;top:-125px}.diseno .sec2{left:-245px;top:-40px}.diseno .sec3{left:-245px;top:55px}.diseno .sec4{left:-205px;top:140px}
.diseno .v49-sec b{left:84px}

/* Electrónica: espejo */
.electronica .sec1{left:205px;top:-125px}.electronica .sec2{left:245px;top:-40px}.electronica .sec3{left:245px;top:55px}.electronica .sec4{left:205px;top:140px}
.electronica .v49-sec b{right:84px}

/* Solar: exterior izquierdo y contenido */
.solar .sec1{left:-205px;top:-110px}.solar .sec2{left:-235px;top:-35px}.solar .sec3{left:-235px;top:40px}.solar .sec4{left:-205px;top:115px}
.solar .v49-sec b{left:84px}

/* CNC: espejo */
.cnc .sec1{left:205px;top:-110px}.cnc .sec2{left:235px;top:-35px}.cnc .sec3{left:235px;top:40px}.cnc .sec4{left:205px;top:115px}
.cnc .v49-sec b{right:84px}

.v49-node.open{z-index:110}
.v49-chat{position:absolute!important;left:335px!important;bottom:30px!important;width:360px!important;z-index:90!important}
.menu-layer{position:absolute!important;inset:0!important}


/* ============================================================
   V50 — TELECO CORREGIDO SOBRE V49
   Se mantienen intactos EXPLORAR, DISEÑO 3D, ELECTRÓNICA,
   PLACAS SOLARES y CNC.
   ============================================================ */

/* Centro maestro TELECO:
   X idéntico a EXPLORAR.
   Y bajado para garantizar margen superior real. */
body.v49-home .v49-node.teleco{
  left:1118px !important;
  top:245px !important;
  width:0 !important;
  height:0 !important;
}

/* Anular cualquier left/top heredado de reglas .teleco .primary */
body.v49-home .v49-node.teleco .v49-primary{
  left:0 !important;
  top:0 !important;
  width:280px !important;
  height:280px !important;
  transform:translate(-50%,-50%) !important;
}

/* Evitar que hover altere el centro */
body.v49-home .v49-node.teleco .v49-primary:hover{
  transform:translate(-50%,-50%) scale(1.025) !important;
}

/* Cuatro secundarios: más bajos y más separados,
   sin superar el límite superior del viewport. */
body.v49-home .v49-node.teleco .sec1{
  left:-220px !important;
  top:45px !important;
}
body.v49-home .v49-node.teleco .sec2{
  left:-175px !important;
  top:155px !important;
}
body.v49-home .v49-node.teleco .sec3{
  left:220px !important;
  top:45px !important;
}
body.v49-home .v49-node.teleco .sec4{
  left:175px !important;
  top:155px !important;
}

/* Mantener etiquetas al exterior */
body.v49-home .v49-node.teleco .sec1 b,
body.v49-home .v49-node.teleco .sec2 b{
  right:84px !important;
  left:auto !important;
}
body.v49-home .v49-node.teleco .sec3 b,
body.v49-home .v49-node.teleco .sec4 b{
  left:84px !important;
  right:auto !important;
}

/* Bloqueo explícito: el resto de centros maestros NO cambia */
body.v49-home .v49-hub{
  left:1118px !important;
  top:535px !important;
}
body.v49-home .v49-node.diseno{
  left:690px !important;
  top:470px !important;
}
body.v49-home .v49-node.electronica{
  left:1546px !important;
  top:470px !important;
}
body.v49-home .v49-node.solar{
  left:790px !important;
  top:815px !important;
}
body.v49-home .v49-node.cnc{
  left:1446px !important;
  top:815px !important;
}

/* Anular posibles offsets genéricos heredados en todos los primarios V49 */
body.v49-home .v49-node.diseno .v49-primary,
body.v49-home .v49-node.electronica .v49-primary,
body.v49-home .v49-node.solar .v49-primary,
body.v49-home .v49-node.cnc .v49-primary{
  left:0 !important;
  top:0 !important;
  transform:translate(-50%,-50%) !important;
}
body.v49-home .v49-node.diseno .v49-primary:hover,
body.v49-home .v49-node.electronica .v49-primary:hover,
body.v49-home .v49-node.solar .v49-primary:hover,
body.v49-home .v49-node.cnc .v49-primary:hover{
  transform:translate(-50%,-50%) scale(1.025) !important;
}


/* ============================================================
   V51 — TELECO SEPARADO DE EXPLORAR
   ÚNICO CAMBIO GEOMÉTRICO: TELECO.
   El resto de centros maestros V49/V50 permanece intacto.
   ============================================================ */

/* TELECO sube ligeramente y reduce un poco su diámetro
   para dejar separación visual respecto a EXPLORAR
   sin tocar el borde superior. */
body.v49-home .v49-node.teleco{
  left:1118px !important;
  top:220px !important;
}

body.v49-home .v49-node.teleco .v49-primary{
  left:0 !important;
  top:0 !important;
  width:260px !important;
  height:260px !important;
  transform:translate(-50%,-50%) !important;
}

body.v49-home .v49-node.teleco .v49-primary:hover{
  transform:translate(-50%,-50%) scale(1.025) !important;
}

/* Ajuste del contenido de Teleco al nuevo diámetro */
body.v49-home .v49-node.teleco .v49-primary strong{
  bottom:20px !important;
  font-size:27px !important;
}

/* Secundarios: permanecen bajos y abiertos a los laterales,
   evitando tanto el borde superior como EXPLORAR. */
body.v49-home .v49-node.teleco .sec1{
  left:-215px !important;
  top:55px !important;
}
body.v49-home .v49-node.teleco .sec2{
  left:-170px !important;
  top:155px !important;
}
body.v49-home .v49-node.teleco .sec3{
  left:215px !important;
  top:55px !important;
}
body.v49-home .v49-node.teleco .sec4{
  left:170px !important;
  top:155px !important;
}

/* Bloqueo explícito del resto de centros: no se modifican */
body.v49-home .v49-hub{
  left:1118px !important;
  top:535px !important;
}
body.v49-home .v49-node.diseno{
  left:690px !important;
  top:470px !important;
}
body.v49-home .v49-node.electronica{
  left:1546px !important;
  top:470px !important;
}
body.v49-home .v49-node.solar{
  left:790px !important;
  top:815px !important;
}
body.v49-home .v49-node.cnc{
  left:1446px !important;
  top:815px !important;
}


/* ============================================================
   V52 — RÉPLICA DEL BOCETO APROBADO
   Geometría tomada directamente del boceto visual.
   ============================================================ */

/* Centro del área orbital, dejando intacta la barra lateral */
body.v49-home .orbit-outer{
  left:548px !important; top:155px !important;
  width:1008px !important; height:815px !important;
}
body.v49-home .orbit-mid{
  left:720px !important; top:286px !important;
  width:664px !important; height:566px !important;
}
body.v49-home .orbit-inner{
  left:866px !important; top:388px !important;
  width:372px !important; height:350px !important;
}

/* EXPLORAR */
body.v49-home .v49-hub{
  left:1050px !important;
  top:558px !important;
  width:300px !important;
  height:300px !important;
}

/* PRIMARIOS — posiciones del boceto */
body.v49-home .v49-node.teleco{
  left:1050px !important;
  top:202px !important;
}
body.v49-home .v49-node.diseno{
  left:665px !important;
  top:520px !important;
}
body.v49-home .v49-node.electronica{
  left:1438px !important;
  top:520px !important;
}
body.v49-home .v49-node.solar{
  left:790px !important;
  top:865px !important;
}
body.v49-home .v49-node.cnc{
  left:1300px !important;
  top:865px !important;
}

/* Tamaños principales */
body.v49-home .v49-node.teleco .v49-primary{
  width:270px !important; height:270px !important;
}
body.v49-home .v49-node.diseno .v49-primary,
body.v49-home .v49-node.electronica .v49-primary{
  width:260px !important; height:260px !important;
}
body.v49-home .v49-node.solar .v49-primary,
body.v49-home .v49-node.cnc .v49-primary{
  width:250px !important; height:250px !important;
}

/* Secundarios uniformes como el boceto */
body.v49-home .v49-sec{
  width:66px !important;
  height:66px !important;
  margin-left:-33px !important;
  margin-top:-33px !important;
}
body.v49-home .v49-sec i{font-size:24px !important}
body.v49-home .v49-sec b{font-size:12px !important}

/* TELECO: 2 izquierda + 2 derecha; texto debajo de cada círculo */
body.v49-home .teleco .sec1{left:-220px!important;top:-62px!important}
body.v49-home .teleco .sec2{left:-220px!important;top:62px!important}
body.v49-home .teleco .sec3{left:220px!important;top:-62px!important}
body.v49-home .teleco .sec4{left:220px!important;top:62px!important}
body.v49-home .teleco .v49-sec b{
  left:50%!important; right:auto!important; top:76px!important;
  transform:translateX(-50%)!important; text-align:center!important;
}

/* DISEÑO 3D: columna exterior izquierda, textos entre secundario y primario */
body.v49-home .diseno .sec1{left:-250px!important;top:-150px!important}
body.v49-home .diseno .sec2{left:-280px!important;top:-50px!important}
body.v49-home .diseno .sec3{left:-280px!important;top:55px!important}
body.v49-home .diseno .sec4{left:-245px!important;top:155px!important}
body.v49-home .diseno .v49-sec b{
  left:82px!important; right:auto!important; top:25px!important;
  transform:none!important;
}

/* ELECTRÓNICA: columna exterior derecha, texto a la derecha */
body.v49-home .electronica .sec1{left:245px!important;top:-150px!important}
body.v49-home .electronica .sec2{left:280px!important;top:-50px!important}
body.v49-home .electronica .sec3{left:280px!important;top:55px!important}
body.v49-home .electronica .sec4{left:245px!important;top:155px!important}
body.v49-home .electronica .v49-sec b{
  left:82px!important; right:auto!important; top:25px!important;
  transform:none!important;
}

/* SOLAR: columna exterior izquierda; texto a la derecha */
body.v49-home .solar .sec1{left:-235px!important;top:-125px!important}
body.v49-home .solar .sec2{left:-260px!important;top:-40px!important}
body.v49-home .solar .sec3{left:-260px!important;top:45px!important}
body.v49-home .solar .sec4{left:-235px!important;top:130px!important}
body.v49-home .solar .v49-sec b{
  left:82px!important; right:auto!important; top:25px!important;
  transform:none!important;
}

/* CNC: columna exterior derecha; texto a la derecha */
body.v49-home .cnc .sec1{left:235px!important;top:-125px!important}
body.v49-home .cnc .sec2{left:260px!important;top:-40px!important}
body.v49-home .cnc .sec3{left:260px!important;top:45px!important}
body.v49-home .cnc .sec4{left:235px!important;top:130px!important}
body.v49-home .cnc .v49-sec b{
  left:82px!important; right:auto!important; top:25px!important;
  transform:none!important;
}

/* Cuando un grupo abre, queda por encima de todos los primarios */
body.v49-home .v49-node.open{z-index:150!important}

/* Evitar que los textos invadan los círculos */
body.v49-home .v49-sec b{
  white-space:nowrap!important;
  line-height:1!important;
  pointer-events:none!important;
}

/* Sidebar más próxima al boceto */
body.v49-home .v49-sidebar{width:315px!important}
body.v49-home .v49-side-nav{top:195px!important}
body.v49-home .v49-side-claim{bottom:142px!important}


/* ============================================================
   V52 — ÚNICA CORRECCIÓN SOLICITADA:
   textos de los secundarios de TELECO.
   NO modifica círculos, posiciones, tamaños, hover ni geometría.
   ============================================================ */

body.v49-home .v49-node.teleco .v49-sec b{
  left:50% !important;
  right:auto !important;
  top:76px !important;
  bottom:auto !important;
  transform:translateX(-50%) !important;
  text-align:center !important;
  white-space:nowrap !important;
}




/* ============================================================
   V58 — ESTILO ÚNICO PARA PÁGINAS DESCRIPTIVAS
   Limpieza completa de overrides V54-V57.
   Portada principal: SIN CAMBIOS.
   ============================================================ */

/* Fondo general: azul hielo tecnológico -> violeta suave */
body:not(.v49-home){
  background:
    radial-gradient(circle at 12% 30%, rgba(40,170,220,.14) 0, rgba(40,170,220,0) 30%),
    radial-gradient(circle at 88% 35%, rgba(116,76,190,.12) 0, rgba(116,76,190,0) 31%),
    linear-gradient(118deg,#bdddea 0%,#c9d9eb 48%,#d4c8e8 100%) !important;
  color:#061a38 !important;
}

/* El contenido debe integrarse en el fondo: sin gran rectángulo visible */
body:not(.v49-home) .pagebody{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Contenedores internos transparentes */
body:not(.v49-home) main,
body:not(.v49-home) .main,
body:not(.v49-home) .content,
body:not(.v49-home) .page-content,
body:not(.v49-home) .container,
body:not(.v49-home) .wrap,
body:not(.v49-home) .inner,
body:not(.v49-home) section{
  background:transparent !important;
}

/* Títulos: mantener posición actual, con icono técnico a la izquierda */
body:not(.v49-home) .pagebody h2{
  position:relative !important;
  padding-left:46px !important;
  min-height:34px !important;
  display:flex !important;
  align-items:center !important;
  color:#061a38 !important;
  text-shadow:none !important;
}

/* Sin marcador delante del párrafo introductorio */
body:not(.v49-home) .pagebody > p:first-child{
  padding-left:0 !important;
  position:static !important;
}
body:not(.v49-home) .pagebody > p:first-child::before{
  content:none !important;
  display:none !important;
}

/* Iconos técnicos SIN botón blanco.
   Trazo fino + halo mínimo, usando la paleta ArEsIT. */
body:not(.v49-home) .pagebody h2::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:30px !important;
  height:30px !important;
  border:0 !important;
  border-radius:0 !important;
  background-color:transparent !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:27px 27px !important;
  box-shadow:none !important;
}

/* Nuestra filosofía: objetivo técnico, cyan eléctrico */
body:not(.v49-home) .pagebody h2:nth-of-type(1)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='%2305b9d8' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='16' cy='16' r='9'/%3E%3Ccircle cx='16' cy='16' r='4'/%3E%3Cpath d='M16 3v5M16 24v5M3 16h5M24 16h5'/%3E%3C/svg%3E") !important;
  filter:drop-shadow(0 0 2px rgba(5,185,216,.35));
}

/* De la idea a la solución: bombilla técnica, violeta azulado */
body:not(.v49-home) .pagebody h2:nth-of-type(2)::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='%236e55d8' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 23h10M12 27h8'/%3E%3Cpath d='M10 20c-2.7-2.2-4-5-4-8a10 10 0 0 1 20 0c0 3-1.3 5.8-4 8-1.2 1-1.6 1.7-1.9 3h-8.2c-.3-1.3-.7-2-1.9-3Z'/%3E%3C/svg%3E") !important;
  filter:drop-shadow(0 0 2px rgba(110,85,216,.30));
}

/* Texto interior */
body:not(.v49-home) .pagebody p,
body:not(.v49-home) .pagebody li{
  color:#071a38 !important;
  text-shadow:none !important;
}

/* Enlace volver */
body:not(.v49-home) .back-link,
body:not(.v49-home) a[href*="index"]{
  color:#3457cf !important;
  font-weight:700 !important;
  text-shadow:none !important;
}

/* Cabecera y footer: conservar oscuros */
body:not(.v49-home) header,
body:not(.v49-home) .site-header{
  background:linear-gradient(90deg,#031328 0%,#111a42 56%,#23152f 100%) !important;
}

body:not(.v49-home) footer,
body:not(.v49-home) .site-footer{
  background:linear-gradient(90deg,#020914 0%,#071226 56%,#151023 100%) !important;
  color:#aac2e4 !important;
}
body:not(.v49-home) footer *,
body:not(.v49-home) .site-footer *{
  color:#aac2e4 !important;
}

/* V59 — panel descriptivo redondeado y más estrecho */
body:not(.v49-home){
 background:
 radial-gradient(circle at 10% 30%,rgba(33,188,235,.17) 0,rgba(33,188,235,0) 31%),
 radial-gradient(circle at 91% 40%,rgba(150,78,225,.17) 0,rgba(150,78,225,0) 34%),
 linear-gradient(118deg,#c6e6f3 0%,#d2def0 49%,#d9c9ef 100%) !important;
}
body:not(.v49-home) .pagebody{
 width:min(1180px,calc(100% - 120px)) !important;
 max-width:1180px !important;
 margin:28px auto 38px !important;
 padding:42px 70px 38px !important;
 box-sizing:border-box !important;
 background:linear-gradient(118deg,rgba(238,249,253,.52),rgba(239,244,252,.47) 48%,rgba(244,235,252,.50)) !important;
 border:1px solid rgba(255,255,255,.64) !important;
 border-radius:46px !important;
 box-shadow:0 18px 44px rgba(35,55,95,.08),inset 0 1px 0 rgba(255,255,255,.48) !important;
}
body:not(.v49-home) .pagebody>p,
body:not(.v49-home) .pagebody>h2,
body:not(.v49-home) .pagebody>a{max-width:980px}
body:not(.v49-home) .pagebody>p:first-child{margin-top:4px!important;margin-bottom:25px!important}
body:not(.v49-home) .pagebody h2{margin-top:22px!important;margin-bottom:7px!important}
body:not(.v49-home) .pagebody .back-link{margin-top:24px!important}
body:not(.v49-home) .pagebody h2::after{
 content:""!important;position:absolute!important;left:37px!important;top:50%!important;
 transform:translateY(-50%)!important;width:1px!important;height:48px!important;
 background:linear-gradient(to bottom,rgba(18,184,220,0),rgba(18,184,220,.70),rgba(18,184,220,0))!important;
}
body:not(.v49-home) .pagebody h2:nth-of-type(2)::after{
 background:linear-gradient(to bottom,rgba(111,82,216,0),rgba(111,82,216,.68),rgba(111,82,216,0))!important;
}
@media(max-width:1400px){
 body:not(.v49-home) .pagebody{width:calc(100% - 90px)!important;padding-left:58px!important;padding-right:58px!important}
}
@media(max-width:900px){
 body:not(.v49-home) .pagebody{width:calc(100% - 36px)!important;margin-top:20px!important;padding:32px 30px!important;border-radius:30px!important}
}


/* ============================================================
   V60 — CORRECCIÓN SOLICITADA EN PORTADA
   Los secundarios de DISEÑO 3D no pueden montarse sobre la
   línea vertical que separa la barra lateral del área gráfica.
   Se conserva el primario, textos, alturas y resto de geometría.
   ============================================================ */

/* Línea divisoria de sidebar: x ≈ 315 px.
   Centro DISEÑO 3D: x = 665 px.
   Radio secundario: 33 px.
   Posiciones anteriores (-250/-280 px) llevaban los círculos
   hasta x≈352 px, visualmente pegados/superpuestos al divisor.
   Se desplaza SOLO la columna secundaria hacia la derecha. */

body.v49-home .v49-node.diseno .sec1{
  left:-205px !important;
}
body.v49-home .v49-node.diseno .sec2{
  left:-215px !important;
}
body.v49-home .v49-node.diseno .sec3{
  left:-215px !important;
}
body.v49-home .v49-node.diseno .sec4{
  left:-205px !important;
}

/* Mantener los textos a la derecha de cada secundario */
body.v49-home .v49-node.diseno .v49-sec b{
  left:82px !important;
  right:auto !important;
}


/* ============================================================
   V61 — AJUSTE FINO SECUNDARIOS DISEÑO 3D
   ÚNICO CAMBIO: desplazamiento horizontal moderado hacia la derecha.
   ============================================================ */

/* Posiciones intermedias entre V52 y V60:
   suficientemente separadas del lateral,
   sin acercarse demasiado al círculo principal. */

body.v49-home .v49-node.diseno .sec1{
  left:-225px !important;
}
body.v49-home .v49-node.diseno .sec2{
  left:-240px !important;
}
body.v49-home .v49-node.diseno .sec3{
  left:-240px !important;
}
body.v49-home .v49-node.diseno .sec4{
  left:-225px !important;
}

/* Mantener los textos en su posición relativa original */
body.v49-home .v49-node.diseno .v49-sec b{
  left:82px !important;
  right:auto !important;
}


/* ============================================================
   V62 — AJUSTE HORIZONTAL MENOR SECUNDARIOS DISEÑO 3D
   ÚNICO CAMBIO: reducir ligeramente el desplazamiento aplicado en V61.
   ============================================================ */

body.v49-home .v49-node.diseno .sec1{
  left:-235px !important;
}
body.v49-home .v49-node.diseno .sec2{
  left:-255px !important;
}
body.v49-home .v49-node.diseno .sec3{
  left:-255px !important;
}
body.v49-home .v49-node.diseno .sec4{
  left:-235px !important;
}

/* Mantener textos exactamente en su posición relativa */
body.v49-home .v49-node.diseno .v49-sec b{
  left:82px !important;
  right:auto !important;
}


/* ============================================================
   V65 — TEXTOS DEL LATERAL CENTRADOS
   ============================================================ */

body.v49-home .v49-side-nav a{
  position:relative !important;
  justify-content:center !important;
  text-align:center !important;
  padding-left:54px !important;
  padding-right:54px !important;
}

body.v49-home .v49-side-nav a > span{
  position:absolute !important;
  left:22px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}

body.v49-home .v49-side-claim{
  text-align:center !important;
  left:24px !important;
  right:24px !important;
}

body.v49-home .v49-side-claim b{
  text-align:center !important;
  width:100% !important;
  display:block !important;
}

body.v49-home .v49-side-claim p{
  text-align:center !important;
  width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.v49-home .v49-wa{
  left:50% !important;
  transform:translateX(-50%) !important;
}


/* ============================================================
   V66 — LOGO + TEXTO SUPERIOR AL 200 %
   Base: V65
   ÚNICO CAMBIO: conjunto de marca superior del lateral.
   ============================================================ */

body.v49-home .v49-brand{
  transform:scale(2) !important;
  transform-origin:top center !important;
  left:50% !important;
}

/* Compensación para conservar el centrado horizontal tras el escalado */
body.v49-home .v49-brand{
  translate:-50% 0 !important;
}


/* ============================================================
   V67 — LOGO PRINCIPAL = FORMATO DE "QUIÉNES SOMOS" + 20 %
   Base funcional: V65/V66
   Solo se modifica la marca superior de la página principal.
   ============================================================ */

/* Se anula el escalado 200 % de V66. */
body.v49-home .v49-brand{
  transform:none !important;
  translate:none !important;
}

/* La marca de INICIO adopta el mismo formato visual/proporcional
   que la cabecera interior y se escala uniformemente un 20 %. */
body.v49-home .v49-brand{
  left:24px !important;
  top:14px !important;
  width:260px !important;
  transform:scale(1.20) !important;
  transform-origin:top left !important;
}

/* Mantener todos los componentes internos unidos:
   símbolo + ArEsIT + puntos + subtítulo + línea. */
body.v49-home .v49-brand,
body.v49-home .v49-brand *{
  box-sizing:border-box !important;
}

/* Evitar que el escalado modifique el flujo o centre el conjunto. */
body.v49-home .v49-brand{
  margin:0 !important;
}


/* V70 — IMPRESIÓN 3D + DOMÓTICA */
body.v49-home .v49-node.diseno > b,
body.v49-home .v49-node.electronica > b{
  white-space:nowrap !important;
}
body.v49-home .v49-node.diseno .v49-sec b,
body.v49-home .v49-node.electronica .v49-sec b{
  white-space:nowrap !important;
  width:max-content !important;
}

/* V72 — título IMPRESIÓN 3D en dos líneas */
body.v49-home .v49-node.diseno > b{
  white-space:normal !important;
  text-align:center !important;
  line-height:0.95 !important;
}

/* V73 — corrección real del título principal IMPRESIÓN 3D */
body.v49-home .v49-node.diseno .v49-primary strong{
  white-space:normal !important;
  text-align:center !important;
  line-height:1.00 !important;
  left:12px !important;
  right:12px !important;
  bottom:14px !important;
}

/* V74 — secundarios de IMPRESIÓN 3D reorganizados */
body.v49-home .v49-node.diseno .v49-sec b{
  white-space:normal !important;
  line-height:1.00 !important;
}


/* ============================================================
   V75 — ICONOS DEFINITIVOS DE IMPRESIÓN 3D
   Programados como SVG vectorial; no son caracteres Unicode.
   ============================================================ */
body.v49-home .diseno .v49-sec .v75-icon{
  width:43px !important;
  height:43px !important;
  display:block !important;
  position:relative !important;
  inset:auto !important;
  font-size:0 !important;
  line-height:0 !important;
}
body.v49-home .diseno .v49-sec .v75-icon svg{
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
}

/* FDM: cabezal/extrusor, magenta */
body.v49-home .diseno .v75-fdm{color:#f04cff}

/* Prototipos: formas superpuestas cyan/magenta/amarillo */
body.v49-home .diseno .v75-proto rect{
  fill:none;
  stroke-width:2.2;
}
body.v49-home .diseno .v75-proto .c1{stroke:#20e9f2}
body.v49-home .diseno .v75-proto .c2{stroke:#20e9f2}
body.v49-home .diseno .v75-proto .c3{stroke:#ffc31f}
body.v49-home .diseno .v75-proto .c4{stroke:#f04cff}

/* Piezas técnicas: cubo isométrico cyan/magenta */
body.v49-home .diseno .v75-cube .cyan{stroke:#20e9f2}
body.v49-home .diseno .v75-cube .mag{stroke:#f04cff}

/* Multimaterial: capas cyan/amarillo/magenta */
body.v49-home .diseno .v75-layers .cyan{stroke:#20e9f2}
body.v49-home .diseno .v75-layers .yellow{stroke:#ffc31f}
body.v49-home .diseno .v75-layers .mag{stroke:#f04cff}


/* ============================================================
   V76 — ICONOS DEFINITIVOS DE DOMÓTICA
   ============================================================ */
body.v49-home .electronica .v49-sec .v76-icon{
  width:42px !important;
  height:42px !important;
  display:block !important;
  position:relative !important;
  inset:auto !important;
  font-size:0 !important;
  line-height:0 !important;
  color:#f04cff;
}
body.v49-home .electronica .v49-sec .v76-icon svg{
  width:100%;
  height:100%;
  display:block;
  overflow:visible;
}
body.v49-home .electronica .v76-blind .cyan,
body.v49-home .electronica .v76-clima .cyan,
body.v49-home .electronica .v76-security .cyan{stroke:#20e9f2}
body.v49-home .electronica .v76-blind .mag,
body.v49-home .electronica .v76-clima .mag,
body.v49-home .electronica .v76-security .mag{stroke:#f04cff}


/* V77 — CNC: FABRICACIÓN DE EQUIPOS en dos líneas */
body.v49-home .cnc .v49-sec b{
  white-space:normal !important;
  line-height:1.00 !important;
}


/* V78 — TELECO: INTERNET SATÉLITE en dos líneas */
body.v49-home .teleco .v49-sec b{
  white-space:normal !important;
  line-height:1.00 !important;
}


/* V79 — TELECO: icono específico INTERNET SATÉLITE */
body.v49-home .teleco .v49-sec .v79-icon{
  width:42px !important;
  height:42px !important;
  display:block !important;
  position:relative !important;
  inset:auto !important;
  font-size:0 !important;
  line-height:0 !important;
}
body.v49-home .teleco .v49-sec .v79-icon svg{
  width:100%;
  height:100%;
  display:block;
  overflow:visible;
}
body.v49-home .teleco .v79-satellite .cyan{stroke:#20e9f2}
body.v49-home .teleco .v79-satellite .mag{stroke:#f04cff}


/* ============================================================
   V80 — ICONOS TELECO COMPLETOS
   FIBRA / REDES / SISTEMAS
   ============================================================ */
body.v49-home .teleco .v49-sec .v80-icon{
  width:42px !important;
  height:42px !important;
  display:block !important;
  position:relative !important;
  inset:auto !important;
  font-size:0 !important;
  line-height:0 !important;
}
body.v49-home .teleco .v49-sec .v80-icon svg{
  width:100%;
  height:100%;
  display:block;
  overflow:visible;
}
body.v49-home .teleco .v80-icon .cyan{stroke:#20e9f2}
body.v49-home .teleco .v80-icon .mag{stroke:#f04cff}


/* ============================================================
   V81 — PÁGINAS SECUNDARIAS DE LOS CINCO PRIMARIOS
   ============================================================ */
.v81-page{min-height:100vh;background:
 radial-gradient(circle at 78% 16%,rgba(49,38,110,.22),transparent 32%),
 linear-gradient(135deg,#020713,#071021 55%,#020713);color:#eef7ff;
 font-family:Arial,Helvetica,sans-serif}
.v81-header{height:92px;display:flex;align-items:center;justify-content:space-between;
 padding:0 7vw;border-bottom:1px solid rgba(70,225,255,.18);
 background:rgba(2,7,19,.88);box-sizing:border-box}
.v81-brand{font-size:30px;font-weight:800;letter-spacing:-1px;color:#fff;text-decoration:none}
.v81-brand small{display:block;font-size:9px;font-weight:500;letter-spacing:2.2px;color:#8fa6b8;margin-top:2px}
.v81-home{padding:11px 22px;border:1px solid rgba(49,230,240,.55);border-radius:8px;
 color:#dffcff;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.7px}
.v81-main{width:min(1180px,88vw);margin:0 auto;padding:72px 0 80px}
.v81-kicker{font-size:12px;letter-spacing:4px;font-weight:700;opacity:.75;margin-bottom:14px}
.v81-title{font-size:clamp(46px,6vw,82px);line-height:.95;margin:0 0 24px;font-weight:850;letter-spacing:-2px}
.v81-intro{max-width:780px;color:#aebdcc;font-size:18px;line-height:1.65;margin:0 0 52px}
.v81-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.v81-card{position:relative;min-height:190px;padding:30px 32px;border-radius:20px;
 background:linear-gradient(145deg,rgba(13,25,45,.92),rgba(6,13,27,.94));
 border:1px solid color-mix(in srgb,var(--accent) 45%, transparent);
 box-shadow:inset 0 0 35px rgba(255,255,255,.015);box-sizing:border-box;overflow:hidden}
.v81-card:before{content:"";position:absolute;width:120px;height:120px;border:1px solid var(--accent);
 border-radius:50%;right:-58px;top:-58px;opacity:.25}
.v81-card h2{font-size:20px;letter-spacing:.7px;margin:0 0 14px;color:#fff}
.v81-card p{font-size:14px;line-height:1.65;color:#9fb0c1;margin:0;max-width:90%}
.v81-line{width:46px;height:2px;background:var(--accent);margin-bottom:22px;box-shadow:0 0 12px var(--accent)}
.v81-cta{margin-top:42px;padding-top:26px;border-top:1px solid rgba(255,255,255,.08);
 color:#91a6b9;font-size:13px}
.v81-cta a{color:var(--accent);text-decoration:none;font-weight:700}
@media(max-width:760px){
 .v81-header{padding:0 5vw}.v81-main{width:90vw;padding-top:46px}
 .v81-grid{grid-template-columns:1fr}.v81-card{min-height:165px}
}


/* ============================================================
   V82 — ENLACES HTML REALES EN LOS CINCO PRIMARIOS
   ============================================================ */
body.v49-home .v49-node{
  cursor:default;
}
body.v49-home .v49-node > .v82-primary-link{
  position:absolute;
  z-index:18;
  left:0;
  top:0;
  width:100%;
  height:100%;
  border-radius:50%;
  display:block;
  cursor:pointer;
  text-decoration:none;
}
/* El contenido visual del primario no debe bloquear el enlace. */
body.v49-home .v49-node > .v49-core,
body.v49-home .v49-node > strong{
  pointer-events:none;
}
/* Los cuatro secundarios siguen siendo enlaces independientes. */
body.v49-home .v49-node > .v49-sec{
  z-index:30 !important;
  pointer-events:auto !important;
}


/* ============================================================
   V83 — HOVER SECUNDARIOS: MAYOR TOLERANCIA DE SELECCIÓN
   ============================================================ */

/* Amplía el área sensible alrededor de cada secundario sin cambiar su aspecto. */
body.v49-home .v49-sec::after{
  content:"";
  position:absolute;
  left:-18px;
  top:-18px;
  right:-18px;
  bottom:-18px;
  border-radius:50%;
  background:transparent;
  pointer-events:auto;
  z-index:-1;
}


/* ============================================================
   V84 — PÁGINAS INDIVIDUALES DE LOS 20 SECUNDARIOS
   ============================================================ */
.v84-page{min-height:100vh;margin:0;background:
 radial-gradient(circle at 82% 18%,rgba(51,41,120,.24),transparent 34%),
 linear-gradient(135deg,#020713,#071021 54%,#020713);color:#eef7ff;
 font-family:Arial,Helvetica,sans-serif}
.v84-header{height:92px;padding:0 7vw;display:flex;align-items:center;justify-content:space-between;
 box-sizing:border-box;border-bottom:1px solid rgba(80,225,255,.18);background:rgba(2,7,19,.90)}
.v84-brand{font-size:29px;font-weight:800;letter-spacing:-1px;color:#fff;text-decoration:none}
.v84-brand small{display:block;font-size:9px;letter-spacing:2.1px;color:#8ea4b8;margin-top:2px;font-weight:500}
.v84-nav{display:flex;gap:12px}
.v84-btn{padding:10px 17px;border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);
 border-radius:8px;text-decoration:none;color:#eafcff;font-size:11px;font-weight:700;letter-spacing:.7px}
.v84-main{width:min(1120px,88vw);margin:0 auto;padding:70px 0 84px}
.v84-parent{font-size:12px;letter-spacing:3.5px;color:var(--accent);font-weight:700;margin-bottom:14px}
.v84-title{font-size:clamp(42px,6vw,74px);line-height:.97;margin:0 0 24px;letter-spacing:-1.5px}
.v84-intro{max-width:800px;font-size:18px;line-height:1.65;color:#aebdcc;margin:0 0 45px}
.v84-panel{border:1px solid color-mix(in srgb,var(--accent) 38%,transparent);border-radius:22px;
 background:linear-gradient(145deg,rgba(13,25,45,.91),rgba(6,13,27,.94));
 padding:32px 36px;box-shadow:inset 0 0 45px rgba(255,255,255,.015)}
.v84-panel h2{margin:0 0 22px;font-size:17px;letter-spacing:.8px}
.v84-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;margin:0;padding:0;list-style:none}
.v84-list li{padding:15px 16px 15px 42px;position:relative;border-radius:12px;background:rgba(255,255,255,.025);
 color:#b5c4d2;font-size:14px}
.v84-list li:before{content:"";position:absolute;left:17px;top:50%;transform:translateY(-50%);
 width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 9px var(--accent)}
.v84-footer{margin-top:34px;color:#8094a8;font-size:12px}
.v84-footer a{color:var(--accent);text-decoration:none;font-weight:700}
@media(max-width:720px){
 .v84-header{padding:0 5vw}.v84-main{width:90vw;padding-top:48px}
 .v84-list{grid-template-columns:1fr}.v84-nav{gap:6px}.v84-btn{padding:9px 10px;font-size:10px}
}

.v84-card-link{display:block;text-decoration:none;color:inherit}
.v84-card-link:hover{border-color:var(--accent);transform:translateY(-2px);transition:.18s ease}


/* ============================================================
   V86 — CONTRASTE DE TEXTO EN PÁGINAS DE SECUNDARIOS
   ============================================================ */

/* Descripción principal bajo el título */
.v84-page .v84-intro{
  color:#183a5a !important;
  opacity:1 !important;
  font-weight:500 !important;
}

/* Textos de las áreas de trabajo */
.v84-page .v84-list li{
  color:#173957 !important;
  opacity:1 !important;
  font-weight:600 !important;
}

/* Texto inferior */
.v84-page .v84-footer{
  color:#315673 !important;
  opacity:1 !important;
  font-weight:500 !important;
}

/* Mantener el enlace CONTACTAR destacado */
.v84-page .v84-footer a{
  color:var(--accent) !important;
  font-weight:800 !important;
}

/* Cabecera del bloque */
.v84-page .v84-panel h2{
  color:#071d38 !important;
  opacity:1 !important;
}


/* ============================================================
   V87 — ICONOS ESPECÍFICOS EN PÁGINA SERVICIOS
   ============================================================ */
.v87-serv-icon{
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  vertical-align:middle;
  margin-right:14px;
  flex:0 0 42px;
}
.v87-serv-icon svg{width:100%;height:100%;display:block}
.v87-teleco{color:#20e9f2}
.v87-print3d{color:#f04cff}
.v87-cnc{color:#20e9f2}
.v87-domotica .cyan{stroke:#20e9f2}
.v87-domotica .mag{stroke:#f04cff}
.v87-solar .cyan{stroke:#20e9f2}
.v87-solar .yellow{stroke:#ffc31f}

/* Asegurar alineación icono + título en filas de servicios */
body:not(.v49-home) .service-row,
body:not(.v49-home) .services-row,
body:not(.v49-home) .service-item{
  align-items:center;
}


/* ============================================================
   V88 — SERVICIOS: MAQUETACIÓN RECONSTRUIDA Y LIMPIA
   ============================================================ */
body:not(.v49-home) .pagebody{
  max-width:none !important;
}

.v88-services-panel{
  width:min(1240px, calc(100% - 120px));
  margin:24px auto 26px;
  padding:30px 46px 28px;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.75);
  border-radius:34px;
  background:rgba(255,255,255,.20);
}

.v88-service-row{
  display:grid;
  grid-template-columns: 41% 59%;
  gap:32px;
  align-items:center;
  min-height:86px;
  border-bottom:1px solid rgba(37,73,112,.08);
}

.v88-service-row:last-of-type{
  border-bottom:none;
}

.v88-service-left{
  display:flex;
  align-items:center;
  gap:18px;
  min-width:0;
}

.v88-service-left h2{
  margin:0 !important;
  padding:0 !important;
  font-size:23px !important;
  line-height:1.12 !important;
  color:#071d38 !important;
  white-space:nowrap;
  position:static !important;
}

.v88-service-left h2::before,
.v88-service-left h2::after{
  content:none !important;
  display:none !important;
}

.v88-service-desc{
  margin:0 !important;
  padding:0 !important;
  max-width:none !important;
  font-size:16px !important;
  line-height:1.42 !important;
  color:#0b2745 !important;
}

.v88-serv-icon{
  width:46px;
  height:46px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 46px;
}

.v88-serv-icon svg{
  display:block;
  width:100%;
  height:100%;
}

.v88-teleco{color:#20e9f2}
.v88-print3d{color:#7c5cff}
.v88-cnc{color:#20e9f2}
.v88-domotica .cyan{stroke:#20e9f2}
.v88-domotica .mag{stroke:#f04cff}
.v88-solar .cyan{stroke:#20e9f2}
.v88-solar .yellow{stroke:#ffc31f}

.v88-back{
  margin-top:24px !important;
  display:inline-block;
}

@media(max-width:900px){
  .v88-services-panel{
    width:calc(100% - 36px);
    padding:24px 26px;
  }
  .v88-service-row{
    grid-template-columns:1fr;
    gap:8px;
    padding:16px 0;
  }
  .v88-service-left h2{
    white-space:normal;
  }
}


/* ============================================================
   V89 — SERVICIOS: AJUSTE REAL A 1920x1080 SIN SALIR DE MÁRGENES
   ============================================================ */

/* La versión anterior heredaba min-height:52vh + padding:130px/70px
   del subhero original, lo que empujaba el panel fuera del viewport. */
body.v89-services-page{
  min-height:100vh !important;
  overflow-x:hidden !important;
}

/* Cabecera superior: se conserva. */

/* Hero compacto: título completo visible y sin consumir media pantalla. */
body.v89-services-page .subhero{
  min-height:0 !important;
  height:190px !important;
  box-sizing:border-box !important;
  padding:24px 5.4vw 22px !important;
  display:flex !important;
  align-items:center !important;
}

body.v89-services-page .subhero .kicker{
  margin:0 0 8px !important;
}

body.v89-services-page .subhero h1{
  margin:0 !important;
  font-size:72px !important;
  line-height:.95 !important;
}

/* El contenedor exterior deja de aplicar los 80px verticales originales. */
body.v89-services-page .pagebody{
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:22px 5.4vw 24px !important;
  box-sizing:border-box !important;
}

/* Un único panel, centrado y contenido dentro de los márgenes. */
body.v89-services-page .v88-services-panel{
  width:100% !important;
  max-width:1460px !important;
  margin:0 auto !important;
  padding:18px 42px 18px !important;
  border-radius:32px !important;
  box-sizing:border-box !important;
}

/* Cinco filas compactas para que todas entren en 1080px. */
body.v89-services-page .v88-service-row{
  grid-template-columns:40% 60% !important;
  min-height:72px !important;
  gap:28px !important;
}

body.v89-services-page .v88-serv-icon{
  width:40px !important;
  height:40px !important;
  flex-basis:40px !important;
}

body.v89-services-page .v88-service-left{
  gap:16px !important;
}

body.v89-services-page .v88-service-left h2{
  font-size:21px !important;
  line-height:1.05 !important;
}

body.v89-services-page .v88-service-desc{
  font-size:15px !important;
  line-height:1.32 !important;
}

/* Volver al inicio dentro del propio panel sin crear altura excesiva. */
body.v89-services-page .v88-back{
  margin-top:14px !important;
  margin-bottom:0 !important;
  font-size:14px !important;
}

/* Footer compacto y dentro del flujo. */
body.v89-services-page footer{
  min-height:48px !important;
  height:48px !important;
  box-sizing:border-box !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  display:flex !important;
  align-items:center !important;
}

/* Seguridad para pantallas algo menores. */
@media(max-height:900px) and (min-width:901px){
  body.v89-services-page .subhero{
    height:150px !important;
    padding-top:16px !important;
    padding-bottom:14px !important;
  }
  body.v89-services-page .subhero h1{
    font-size:58px !important;
  }
  body.v89-services-page .pagebody{
    padding-top:14px !important;
    padding-bottom:14px !important;
  }
  body.v89-services-page .v88-services-panel{
    padding-top:12px !important;
    padding-bottom:12px !important;
  }
  body.v89-services-page .v88-service-row{
    min-height:62px !important;
  }
}


/* ============================================================
   V90 — SERVICIOS: MAQUETACIÓN DEFINITIVA DENTRO DEL VIEWPORT
   Corrección basada en la captura real de V89.
   ============================================================ */

/* La cabecera es fixed (82px). Reservamos físicamente ese espacio. */
body.v89-services-page{
  margin:0 !important;
  padding-top:82px !important;
  min-height:100vh !important;
  box-sizing:border-box !important;
  overflow-x:hidden !important;
}

/* HERO: ya no queda escondido detrás de la cabecera. */
body.v89-services-page .subhero{
  height:150px !important;
  min-height:150px !important;
  margin:0 !important;
  padding:20px 5.2vw 16px !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
}

body.v89-services-page .subhero > div{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

body.v89-services-page .subhero .kicker{
  margin:0 0 8px !important;
  padding:0 !important;
  font-size:12px !important;
  line-height:1 !important;
}

body.v89-services-page .subhero h1{
  margin:0 !important;
  padding:0 !important;
  font-size:64px !important;
  line-height:.95 !important;
  position:static !important;
  transform:none !important;
}

/* PAGEBODY: sólo actúa como contenedor, sin segundo panel ni bordes. */
body.v89-services-page .pagebody{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:18px 5.2vw 18px !important;
  box-sizing:border-box !important;
  overflow:visible !important;
  border:none !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* PANEL ÚNICO. */
body.v89-services-page .v88-services-panel{
  width:100% !important;
  max-width:1480px !important;
  margin:0 auto !important;
  padding:18px 46px 16px !important;
  box-sizing:border-box !important;
  border:1px solid rgba(255,255,255,.78) !important;
  border-radius:28px !important;
  background:rgba(255,255,255,.16) !important;
}

/* Cinco filas: todo visible sin sobrepasar márgenes. */
body.v89-services-page .v88-service-row{
  display:grid !important;
  grid-template-columns: 42% 58% !important;
  gap:28px !important;
  align-items:center !important;
  min-height:68px !important;
  padding:0 !important;
  margin:0 !important;
  box-sizing:border-box !important;
}

body.v89-services-page .v88-service-left{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:17px !important;
}

body.v89-services-page .v88-serv-icon{
  width:40px !important;
  height:40px !important;
  flex:0 0 40px !important;
}

body.v89-services-page .v88-service-left h2{
  margin:0 !important;
  padding:0 !important;
  font-size:21px !important;
  line-height:1.08 !important;
  white-space:nowrap !important;
}

body.v89-services-page .v88-service-desc{
  margin:0 !important;
  padding:0 !important;
  font-size:15px !important;
  line-height:1.32 !important;
}

/* Enlace de vuelta dentro del panel, pero sin añadir altura excesiva. */
body.v89-services-page .v88-back{
  display:inline-block !important;
  margin:12px 0 0 !important;
  padding:0 !important;
  line-height:1.2 !important;
}

/* Footer normal, justo después del contenido, sin espacio sobrante artificial. */
body.v89-services-page footer{
  position:static !important;
  width:100% !important;
  min-height:52px !important;
  height:52px !important;
  margin:0 !important;
  padding:0 5vw !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}

/* Ajuste para pantallas 1920x1080 con barras del navegador visibles. */
@media (min-width:1000px) and (max-height:900px){
  body.v89-services-page .subhero{
    height:125px !important;
    min-height:125px !important;
    padding-top:14px !important;
    padding-bottom:12px !important;
  }
  body.v89-services-page .subhero h1{
    font-size:54px !important;
  }
  body.v89-services-page .pagebody{
    padding-top:12px !important;
    padding-bottom:12px !important;
  }
  body.v89-services-page .v88-services-panel{
    padding-top:12px !important;
    padding-bottom:12px !important;
  }
  body.v89-services-page .v88-service-row{
    min-height:60px !important;
  }
  body.v89-services-page .v88-serv-icon{
    width:36px !important;
    height:36px !important;
    flex-basis:36px !important;
  }
  body.v89-services-page .v88-service-left h2{
    font-size:19px !important;
  }
  body.v89-services-page .v88-service-desc{
    font-size:14px !important;
  }
  body.v89-services-page footer{
    height:46px !important;
    min-height:46px !important;
  }
}


/* ============================================================
   V91 — CONTACTO SIMPLE: MAILTO + TEL
   ============================================================ */
body.v91-contact-page{
  margin:0;
  padding-top:82px;
  min-height:100vh;
  box-sizing:border-box;
  background:
    radial-gradient(circle at 14% 22%,rgba(35,229,242,.20),transparent 28%),
    radial-gradient(circle at 86% 36%,rgba(240,76,255,.17),transparent 30%),
    linear-gradient(135deg,#d7f3fa,#e8ddf8);
  color:#071d38;
}
body.v91-contact-page .topbar{
  background:linear-gradient(90deg,#03101f,#17142f);
}
.v91-contact-main{
  min-height:calc(100vh - 134px);
  box-sizing:border-box;
  padding:54px 7vw 48px;
}
.v91-contact-hero{
  width:min(1180px,100%);
  margin:0 auto 38px;
}
.v91-contact-hero .kicker{
  margin:0 0 12px;
  color:#18dce9;
  font-weight:800;
  letter-spacing:4px;
  font-size:12px;
}
.v91-contact-hero h1{
  margin:0 0 18px;
  font-size:clamp(54px,7vw,86px);
  line-height:.95;
  letter-spacing:-3px;
  color:#071d38;
}
.v91-contact-intro{
  max-width:720px;
  margin:0;
  font-size:18px;
  line-height:1.55;
  color:#34506a;
}
.v91-contact-panel{
  width:min(1180px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}
.v91-contact-card{
  min-height:205px;
  box-sizing:border-box;
  padding:32px 34px;
  display:flex;
  align-items:center;
  gap:28px;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.9);
  border-radius:26px;
  background:rgba(255,255,255,.33);
  box-shadow:0 16px 50px rgba(31,53,91,.08);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.v91-contact-card:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 55px rgba(31,53,91,.13);
}
.v91-contact-icon{
  width:76px;
  height:76px;
  flex:0 0 76px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#071424;
}
.v91-contact-icon svg{width:43px;height:43px}
.v91-mail .v91-contact-icon{color:#20e9f2;box-shadow:0 0 22px rgba(32,233,242,.28)}
.v91-phone .v91-contact-icon{color:#f04cff;box-shadow:0 0 22px rgba(240,76,255,.25)}
.v91-contact-copy{display:flex;flex-direction:column;min-width:0}
.v91-contact-copy small{
  margin-bottom:10px;
  color:#60758b;
  font-size:11px;
  font-weight:800;
  letter-spacing:2px;
}
.v91-contact-copy strong{
  color:#071d38;
  font-size:clamp(20px,2.2vw,30px);
  line-height:1.15;
  word-break:break-word;
}
.v91-contact-copy > span{
  margin-top:15px;
  color:#375f87;
  font-size:13px;
  font-weight:800;
}
.v91-contact-footer{
  height:52px;
  padding:0 5vw;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:#030914;
  color:#8fa4ba;
  font-size:11px;
  letter-spacing:1px;
}
@media(max-width:760px){
  body.v91-contact-page{padding-top:82px}
  .v91-contact-main{padding:38px 6vw}
  .v91-contact-panel{grid-template-columns:1fr}
  .v91-contact-card{min-height:155px;padding:24px;gap:20px}
  .v91-contact-icon{width:60px;height:60px;flex-basis:60px}
  .v91-contact-icon svg{width:34px;height:34px}
  .v91-contact-footer{gap:12px;font-size:9px}
}


/* ============================================================
   V92 — LOGOTIPO OFICIAL ArEsIT APORTADO POR EL USUARIO
   ============================================================ */
.brand{
  overflow:visible !important;
}
.brand .aresit-logo-oficial{
  display:block !important;
  width:auto !important;
  height:70px !important;
  max-width:360px !important;
  object-fit:contain !important;
  object-position:left center !important;
}

/* Portada: encajar el logo dentro de la zona superior del lateral. */
body.v49-home .brand .aresit-logo-oficial{
  height:auto !important;
  width:min(100%,300px) !important;
  max-height:112px !important;
}

/* Cabeceras interiores de 82 px. */
body:not(.v49-home) .topbar .brand .aresit-logo-oficial{
  height:68px !important;
  width:auto !important;
  max-width:330px !important;
}

@media(max-width:700px){
  body:not(.v49-home) .topbar .brand .aresit-logo-oficial{
    height:55px !important;
    max-width:245px !important;
  }
}


/* ============================================================
   V93 — AJUSTE LOGO PRINCIPAL + RESTITUCIÓN DEL TEXTO
   ============================================================ */

/* Anular escalados heredados de versiones previas SOLO en la portada. */
body.v49-home .v49-brand.v93-main-brand{
  position:absolute !important;
  left:24px !important;
  top:18px !important;
  width:267px !important;
  height:154px !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:5px !important;
  transform:none !important;
  translate:none !important;
  transform-origin:top left !important;
  overflow:visible !important;
  text-decoration:none !important;
}

/* Logo aportado por el usuario, ajustado al ancho real del lateral. */
body.v49-home .v49-brand.v93-main-brand .aresit-logo-oficial{
  display:block !important;
  width:246px !important;
  height:auto !important;
  max-width:246px !important;
  max-height:118px !important;
  object-fit:contain !important;
  object-position:center top !important;
  margin:0 auto !important;
  padding:0 !important;
}

/* Texto que existía bajo la marca y que se perdió en V92. */
body.v49-home .v49-brand.v93-main-brand .v93-brand-text{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:10px !important;
  line-height:1.15 !important;
  font-weight:700 !important;
  letter-spacing:.19em !important;
  color:#ffffff !important;
  white-space:nowrap !important;
}

/* Mantener separación suficiente respecto al botón INICIO. */
body.v49-home .v49-side-nav{
  top:200px !important;
}


/* ============================================================
   V94 — LOGO UNIFICADO EN PÁGINAS INTERIORES / MENÚ / SECUNDARIAS
   ============================================================ */

/* Todas las cabeceras interiores usan la misma composición que la portada:
   logo oficial + ARES INFOCOM TELECOM. */
body:not(.v49-home) .topbar .brand{
  position:relative !important;
  left:auto !important;
  top:auto !important;
  width:330px !important;
  height:78px !important;
  margin:0 !important;
  padding:4px 0 2px !important;
  box-sizing:border-box !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:1px !important;
  transform:none !important;
  translate:none !important;
  overflow:visible !important;
  text-decoration:none !important;
}

/* Ajuste del PNG oficial dentro de la cabecera, sin deformación. */
body:not(.v49-home) .topbar .brand .aresit-logo-oficial{
  display:block !important;
  width:238px !important;
  height:auto !important;
  max-width:238px !important;
  max-height:60px !important;
  object-fit:contain !important;
  object-position:center top !important;
  margin:0 auto !important;
  padding:0 !important;
}

/* Restituir el texto inferior también en páginas interiores. */
body:not(.v49-home) .topbar .brand .v94-brand-text{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:9px !important;
  line-height:1.05 !important;
  font-weight:700 !important;
  letter-spacing:.18em !important;
  color:#ffffff !important;
  white-space:nowrap !important;
}

/* Eliminar posibles restos de la marca antigua en las cabeceras interiores. */
body:not(.v49-home) .topbar .brand .brand-symbol,
body:not(.v49-home) .topbar .brand .brand-copy{
  display:none !important;
}

/* Adaptación móvil sin deformar el conjunto. */
@media(max-width:700px){
  body:not(.v49-home) .topbar .brand{
    width:245px !important;
    height:76px !important;
  }
  body:not(.v49-home) .topbar .brand .aresit-logo-oficial{
    width:190px !important;
    max-width:190px !important;
    max-height:55px !important;
  }
  body:not(.v49-home) .topbar .brand .v94-brand-text{
    font-size:7px !important;
    letter-spacing:.14em !important;
  }
}


/* ============================================================
   V95 — LOGO CORREGIDO EN TODAS LAS PÁGINAS SECUNDARIAS V84
   ============================================================ */

body.v84-page .v84-header{
  height:92px !important;
  min-height:92px !important;
  padding:0 5vw !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  overflow:hidden !important;
}

/* Mismo criterio visual que portada y páginas de menú. */
body.v84-page .v84-brand{
  width:300px !important;
  height:88px !important;
  margin:0 !important;
  padding:3px 0 2px !important;
  box-sizing:border-box !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:0 !important;
  overflow:hidden !important;
  text-decoration:none !important;
  transform:none !important;
}

/* El PNG oficial queda contenido y nunca invade el contenido de la página. */
body.v84-page .v84-brand .aresit-logo-oficial{
  display:block !important;
  width:230px !important;
  height:68px !important;
  max-width:230px !important;
  max-height:68px !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:0 auto !important;
  padding:0 !important;
}

/* Texto restituido debajo del logo, sin superposición. */
body.v84-page .v84-brand .v94-brand-text{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:center !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:8px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.18em !important;
  color:#ffffff !important;
  white-space:nowrap !important;
}

/* Asegurar que el contenido secundario comienza debajo de la cabecera. */
body.v84-page .v84-main{
  position:relative !important;
  z-index:1 !important;
}

/* Responsive específico de las secundarias. */
@media(max-width:700px){
  body.v84-page .v84-header{
    height:82px !important;
    min-height:82px !important;
    padding:0 4vw !important;
  }
  body.v84-page .v84-brand{
    width:190px !important;
    height:78px !important;
  }
  body.v84-page .v84-brand .aresit-logo-oficial{
    width:165px !important;
    height:58px !important;
    max-width:165px !important;
    max-height:58px !important;
  }
  body.v84-page .v84-brand .v94-brand-text{
    font-size:6.5px !important;
    letter-spacing:.12em !important;
  }
}


/* ============================================================
   V96 — PRUEBA DE VÍDEO DE FONDO EN LA PORTADA
   ============================================================ */
body.v49-home .v96-bg-video{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  z-index:1 !important;
  pointer-events:none !important;
  opacity:.78 !important;
}
body.v49-home .v96-video-overlay{
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(2,7,19,.72) 0%,rgba(2,7,19,.58) 32%,rgba(2,7,19,.50) 65%,rgba(2,7,19,.66) 100%),
    radial-gradient(circle at 67% 44%,rgba(32,221,234,.06),transparent 33%),
    radial-gradient(circle at 72% 58%,rgba(227,60,255,.07),transparent 38%);
}
body.v49-home .v49-grid{z-index:3 !important}
body.v49-home .v49-sidebar,
body.v49-home .v49-menu,
body.v49-home .v49-orbit,
body.v49-home .v49-hub,
body.v49-home .v49-node{
  z-index:4 !important;
}

/* Si el usuario solicita reducir movimiento, se mantiene el fondo estático original. */
@media (prefers-reduced-motion: reduce){
  body.v49-home .v96-bg-video{display:none !important}
  body.v49-home .v96-video-overlay{display:none !important}
}


/* ============================================================
   V97 — CORRECCIÓN DE VISIBILIDAD DEL VÍDEO DE PORTADA
   ============================================================ */

/* V96 dejaba el vídeo por debajo de capas heredadas de la portada.
   Se establece explícitamente toda la pila visual. */
body.v49-home .v49-bg{
  z-index:0 !important;
  opacity:1 !important;
}
body.v49-home .v96-bg-video{
  display:block !important;
  visibility:visible !important;
  position:absolute !important;
  left:315px !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:calc(100% - 315px) !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  z-index:1 !important;
  opacity:1 !important;
  filter:saturate(1.12) contrast(1.06) brightness(.82) !important;
  pointer-events:none !important;
}
body.v49-home .v96-video-overlay{
  display:block !important;
  position:absolute !important;
  left:315px !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  z-index:2 !important;
  background:
    linear-gradient(90deg,rgba(1,7,18,.42),rgba(1,7,18,.28) 48%,rgba(4,4,20,.40)) !important;
  pointer-events:none !important;
}
body.v49-home .v49-grid{
  z-index:3 !important;
  background-color:transparent !important;
}
body.v49-home .v49-orbit{
  z-index:4 !important;
}
body.v49-home .v49-hub,
body.v49-home .v49-node{
  z-index:5 !important;
}
body.v49-home .v49-sidebar,
body.v49-home .v49-menu{
  z-index:10 !important;
}

/* En esta versión de prueba NO ocultamos el vídeo mediante reduced-motion:
   el objetivo es comprobar visualmente que funciona. */
@media (prefers-reduced-motion: reduce){
  body.v49-home .v96-bg-video{display:block !important}
  body.v49-home .v96-video-overlay{display:block !important}
}


/* ============================================================
   V98 — VÍDEO DE FONDO REAL, VISIBLE Y CON MOVIMIENTO CLARO
   ============================================================ */
body.v49-home .v96-bg-video{
  opacity:1 !important;
  filter:saturate(1.20) contrast(1.08) brightness(.92) !important;
}
body.v49-home .v96-video-overlay{
  background:
    linear-gradient(90deg,rgba(2,7,19,.34),rgba(2,7,19,.18) 48%,rgba(2,7,19,.30)) !important;
}
/* Fallback animado si el navegador no reproduce el MP4 localmente. */
body.v49-home .v49-bg{
  background:
    radial-gradient(circle at 65% 34%,rgba(28,220,235,.13),transparent 27%),
    radial-gradient(circle at 80% 68%,rgba(235,60,255,.12),transparent 30%),
    #020713 !important;
  animation:v98FallbackPulse 6s ease-in-out infinite alternate;
}
@keyframes v98FallbackPulse{
  from{filter:brightness(.88) saturate(.95)}
  to{filter:brightness(1.12) saturate(1.18)}
}


/* ============================================================
   V99 — VIDEO REAL CON ESCENAS DEL PROPIO SITE
   ============================================================ */
body.v49-home .v96-bg-video{
  opacity:1 !important;
  filter:brightness(.58) saturate(.90) contrast(1.05) !important;
}
body.v49-home .v96-video-overlay{
  background:
    linear-gradient(90deg,rgba(1,7,18,.48),rgba(1,7,18,.22) 46%,rgba(3,5,18,.40)),
    radial-gradient(circle at 62% 48%,rgba(0,210,235,.06),transparent 38%) !important;
}


/* ============================================================
   V100 — VIDEO MUCHO MÁS SUAVE Y EN SEGUNDO PLANO
   ============================================================ */
body.v49-home .v96-bg-video{
  opacity:.46 !important;
  filter:brightness(.58) saturate(.62) contrast(.88) !important;
}
body.v49-home .v96-video-overlay{
  background:
    linear-gradient(90deg,
      rgba(2,7,19,.76) 0%,
      rgba(2,7,19,.63) 35%,
      rgba(2,7,19,.57) 67%,
      rgba(2,7,19,.72) 100%),
    radial-gradient(circle at 65% 45%,rgba(13,78,105,.10),transparent 42%) !important;
}


/* ============================================================
   V101 — VÍDEO DE PORTADA: PRESENCIA VISUAL EQUILIBRADA
   ============================================================ */
body.v49-home .v96-bg-video{
  opacity:.68 !important;
  filter:brightness(.76) saturate(.78) contrast(.96) !important;
}

body.v49-home .v96-video-overlay{
  background:
    linear-gradient(90deg,
      rgba(2,7,19,.58) 0%,
      rgba(2,7,19,.43) 34%,
      rgba(2,7,19,.36) 66%,
      rgba(2,7,19,.53) 100%),
    radial-gradient(circle at 65% 45%,rgba(15,112,145,.08),transparent 44%) !important;
}


/* ============================================================
   V102 — CLIPS DE VÍDEO REAL EN MOVIMIENTO
   ============================================================ */
body.v49-home .v96-bg-video{
  opacity:.62 !important;
  filter:brightness(.70) saturate(.72) contrast(.94) !important;
  transition:opacity 1.05s ease-in-out !important;
}
body.v49-home .v96-bg-video.v102-fade{
  opacity:.08 !important;
}
body.v49-home .v96-video-overlay{
  background:
    linear-gradient(90deg,
      rgba(2,7,19,.62) 0%,
      rgba(2,7,19,.48) 34%,
      rgba(2,7,19,.42) 66%,
      rgba(2,7,19,.58) 100%) !important;
}


/* ============================================================
   V103 — INTERNET SATÉLITE SEGÚN ÚLTIMA PROPUESTA VISUAL
   ============================================================ */
body.v103-satellite-page{
  margin:0;
  min-height:100vh;
  overflow-x:hidden;
  background:#020713;
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
}
.v103-bg{
  position:fixed;
  inset:0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  z-index:0;
  background:#020713;
}
.v103-bg-col{
  background-size:cover;
  background-position:center;
  filter:saturate(.86) contrast(1.05) brightness(.60);
}
.v103-bg-sat{background-image:url("assets/img/teleco.jpg")}
.v103-bg-cnc{background-image:url("assets/img/cnc_v43.jpg")}
.v103-bg-3d{background-image:url("assets/img/diseno3d.jpg")}
.v103-bg-solar{background-image:url("assets/img/solar_v43.jpg")}
.v103-bg-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(1,7,18,.40),rgba(1,7,18,.68)),
    linear-gradient(90deg,rgba(1,8,20,.15),rgba(1,8,20,.35) 45%,rgba(1,8,20,.22));
}
.v103-header{
  position:relative;
  z-index:10;
  height:112px;
  box-sizing:border-box;
  padding:0 5.4vw;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:rgba(2,7,19,.90);
  border-bottom:1px solid rgba(32,233,242,.10);
}
.v103-brand{
  width:300px;
  height:98px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}
.v103-brand img{
  width:240px;
  height:70px;
  object-fit:contain;
  display:block;
}
.v103-brand span{
  margin-top:-2px;
  color:#fff;
  font-size:8px;
  font-weight:700;
  letter-spacing:.20em;
}
.v103-nav{
  display:flex;
  gap:16px;
}
.v103-nav a{
  min-width:112px;
  height:52px;
  padding:0 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  border:1px solid rgba(32,233,242,.65);
  border-radius:10px;
  color:#fff;
  text-decoration:none;
  font-size:14px;
  font-weight:800;
  letter-spacing:.04em;
  background:rgba(4,12,27,.38);
}
.v103-nav a:last-child{
  color:#6d63ff;
  border-color:rgba(109,99,255,.75);
}
.v103-main{
  position:relative;
  z-index:5;
  width:min(1180px,88vw);
  margin:0 auto;
  padding:68px 0 44px;
  text-align:center;
}
.v103-kicker{
  color:#20e9f2;
  font-size:18px;
  font-weight:800;
  letter-spacing:.22em;
  margin-bottom:18px;
}
.v103-hero h1{
  margin:0;
  color:#fff;
  font-size:clamp(54px,6.1vw,92px);
  line-height:.95;
  letter-spacing:-.03em;
  text-shadow:0 5px 24px rgba(0,0,0,.35);
}
.v103-intro{
  margin:30px auto 0;
  max-width:920px;
  font-size:20px;
  line-height:1.45;
  color:#f2f7fb;
  text-shadow:0 2px 12px rgba(0,0,0,.45);
}
.v103-provider{
  margin:34px auto 0;
  max-width:920px;
  font-size:27px;
  line-height:1.28;
  font-weight:800;
  color:#fff;
  text-shadow:0 3px 18px rgba(0,0,0,.55);
}
.v103-services{
  margin-top:42px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(32,233,242,.35);
  border-bottom:1px solid rgba(32,233,242,.30);
  background:rgba(2,10,23,.48);
  backdrop-filter:blur(5px);
}
.v103-service{
  min-height:188px;
  padding:26px 28px 22px;
  box-sizing:border-box;
  position:relative;
}
.v103-service + .v103-service{
  border-left:1px solid rgba(255,255,255,.15);
}
.v103-service h2{
  margin:0;
  font-size:21px;
  line-height:1.18;
  font-weight:800;
  color:#fff;
}
.v103-service i{
  display:block;
  width:42px;
  height:2px;
  background:#20e9f2;
  margin:20px auto 18px;
  box-shadow:0 0 10px rgba(32,233,242,.55);
}
.v103-service p{
  margin:0;
  font-size:14px;
  line-height:1.55;
  color:#d4dce5;
}
.v103-cta{
  margin-top:30px;
  font-size:17px;
  color:#fff;
}
.v103-cta a{
  color:#20e9f2;
  text-decoration:none;
  font-weight:900;
  margin-left:8px;
}
@media(max-width:900px){
  .v103-header{height:96px;padding:0 4vw}
  .v103-brand{width:210px;height:88px}
  .v103-brand img{width:180px;height:58px}
  .v103-brand span{font-size:6px}
  .v103-nav a{min-width:auto;height:44px;font-size:12px}
  .v103-main{padding-top:46px}
  .v103-provider{font-size:22px}
  .v103-services{grid-template-columns:1fr 1fr}
  .v103-service:nth-child(3){border-left:none}
  .v103-service:nth-child(n+3){border-top:1px solid rgba(255,255,255,.15)}
}
@media(max-width:620px){
  .v103-bg{grid-template-columns:1fr}
  .v103-bg-cnc,.v103-bg-3d,.v103-bg-solar{display:none}
  .v103-header{padding:0 3vw}
  .v103-brand{width:155px}
  .v103-brand img{width:145px}
  .v103-brand span{display:none}
  .v103-nav{gap:7px}
  .v103-nav a{padding:0 9px;font-size:10px}
  .v103-main{width:90vw;padding-top:38px}
  .v103-intro{font-size:16px}
  .v103-provider{font-size:19px}
  .v103-services{grid-template-columns:1fr}
  .v103-service + .v103-service{border-left:none;border-top:1px solid rgba(255,255,255,.15)}
}


/* ============================================================
   V104 — MISMO FONDO V103 EN TODAS LAS PÁGINAS SECUNDARIAS
   ============================================================ */
body.v84-page{
  position:relative !important;
  min-height:100vh !important;
  background:#020713 !important;
  color:#fff !important;
  overflow-x:hidden !important;
}

body.v84-page .v104-secondary-bg{
  position:fixed !important;
  inset:0 !important;
  z-index:0 !important;
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  background:#020713 !important;
  pointer-events:none !important;
}

body.v84-page .v104-bg-col{
  min-width:0 !important;
  background-size:cover !important;
  background-position:center !important;
  filter:saturate(.86) contrast(1.05) brightness(.60) !important;
}

body.v84-page .v104-bg-sat{background-image:url("assets/img/teleco.jpg") !important}
body.v84-page .v104-bg-cnc{background-image:url("assets/img/cnc_v43.jpg") !important}
body.v84-page .v104-bg-3d{background-image:url("assets/img/diseno3d.jpg") !important}
body.v84-page .v104-bg-solar{background-image:url("assets/img/solar_v43.jpg") !important}

body.v84-page .v104-bg-overlay{
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(180deg,rgba(1,7,18,.40),rgba(1,7,18,.68)),
    linear-gradient(90deg,rgba(1,8,20,.15),rgba(1,8,20,.35) 45%,rgba(1,8,20,.22)) !important;
}

/* Cabecera y contenido por encima del fondo */
body.v84-page .v84-header{
  position:relative !important;
  z-index:10 !important;
  background:rgba(2,7,19,.90) !important;
  border-bottom:1px solid rgba(32,233,242,.10) !important;
}

body.v84-page .v84-main{
  position:relative !important;
  z-index:5 !important;
  background:transparent !important;
}

/* Adaptación cromática para mantener la legibilidad sobre el nuevo fondo */
body.v84-page .v84-parent{
  color:var(--accent) !important;
  text-shadow:0 2px 12px rgba(0,0,0,.55) !important;
}

body.v84-page .v84-title{
  color:#fff !important;
  text-shadow:0 5px 24px rgba(0,0,0,.45) !important;
}

body.v84-page .v84-intro{
  color:#f2f7fb !important;
  text-shadow:0 2px 12px rgba(0,0,0,.55) !important;
}

body.v84-page .v84-panel{
  background:rgba(2,10,23,.52) !important;
  border-color:color-mix(in srgb,var(--accent) 65%,transparent) !important;
  backdrop-filter:blur(5px) !important;
  -webkit-backdrop-filter:blur(5px) !important;
}

body.v84-page .v84-panel h2,
body.v84-page .v84-list li{
  color:#fff !important;
}

body.v84-page .v84-footer{
  color:#f2f7fb !important;
  text-shadow:0 2px 10px rgba(0,0,0,.6) !important;
}

body.v84-page .v84-footer a{
  color:var(--accent) !important;
}

@media(max-width:620px){
  body.v84-page .v104-secondary-bg{
    grid-template-columns:1fr !important;
  }
  body.v84-page .v104-bg-cnc,
  body.v84-page .v104-bg-3d,
  body.v84-page .v104-bg-solar{
    display:none !important;
  }
}


/* ============================================================
   V105 — NUEVO SECUNDARIO CCTV EN DOMÓTICA
   ============================================================ */
body.v81-page[style*="--accent:#f04cff"] .v81-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
body.v81-page[style*="--accent:#f04cff"] .v81-grid .v81-card:nth-child(4){
  grid-column:1 / 2;
}
body.v81-page[style*="--accent:#f04cff"] .v81-grid .v81-card:nth-child(5){
  grid-column:2 / 3;
}
@media(max-width:900px){
  body.v81-page[style*="--accent:#f04cff"] .v81-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  body.v81-page[style*="--accent:#f04cff"] .v81-grid .v81-card:nth-child(4),
  body.v81-page[style*="--accent:#f04cff"] .v81-grid .v81-card:nth-child(5){
    grid-column:auto !important;
  }
}
@media(max-width:620px){
  body.v81-page[style*="--accent:#f04cff"] .v81-grid{
    grid-template-columns:1fr !important;
  }
}


/* ============================================================
   V106 — CCTV FORZADO VISIBLE EN LA PÁGINA DOMÓTICA
   ============================================================ */
body.v81-page .v106-domotica-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important;
  overflow:visible !important;
}
body.v81-page .v106-domotica-grid .v81-card{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  grid-column:auto !important;
}
body.v81-page .v106-domotica-grid .v106-cctv-card{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  grid-column:2 / 3 !important;
}
@media(max-width:900px){
  body.v81-page .v106-domotica-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  body.v81-page .v106-domotica-grid .v106-cctv-card{
    grid-column:auto !important;
  }
}
@media(max-width:620px){
  body.v81-page .v106-domotica-grid{
    grid-template-columns:1fr !important;
  }
}

/* V107 — CCTV visible como quinto secundario de DOMÓTICA en portada */
body.v49-home .electronica .sec5{left:150px !important;top:220px !important;}
body.v49-home .electronica .v49-sec .v107-icon{width:42px !important;height:42px !important;display:block !important;position:relative !important;inset:auto !important;font-size:0 !important;line-height:0 !important;}
body.v49-home .electronica .v107-icon svg{width:100%;height:100%;display:block;overflow:visible;}
body.v49-home .electronica .v107-cctv .cyan{stroke:#20e9f2}
body.v49-home .electronica .v107-cctv .mag{stroke:#f04cff}
body.v49-home .electronica .sec5 b{white-space:nowrap !important;}


/* ============================================================
   V108 — ICONO REPRESENTATIVO JUNTO AL TÍTULO DE CADA SECUNDARIO
   ============================================================ */
.v108-title-row{
  display:flex !important;
  align-items:center !important;
  gap:22px !important;
  margin:0 0 24px !important;
}
.v108-title-row .v84-title{
  margin:0 !important;
}
.v108-title-icon{
  width:72px !important;
  height:72px !important;
  flex:0 0 72px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid color-mix(in srgb,var(--accent) 70%,transparent) !important;
  border-radius:18px !important;
  color:var(--accent) !important;
  background:rgba(4,12,27,.56) !important;
  box-shadow:0 0 24px color-mix(in srgb,var(--accent) 22%,transparent) !important;
  backdrop-filter:blur(4px) !important;
  -webkit-backdrop-filter:blur(4px) !important;
}
.v108-title-icon svg{
  width:46px !important;
  height:46px !important;
  display:block !important;
}

/* Internet Satélite (layout V103) */
.v108-title-row-v103{
  justify-content:center !important;
  margin:0 !important;
}
.v108-title-row-v103 .v108-title-icon{
  color:#20e9f2 !important;
  border-color:rgba(32,233,242,.65) !important;
  box-shadow:0 0 24px rgba(32,233,242,.18) !important;
}
.v108-title-row-v103 h1{
  margin:0 !important;
}

/* Móvil/tablet */
@media(max-width:760px){
  .v108-title-row{
    gap:14px !important;
  }
  .v108-title-icon{
    width:56px !important;
    height:56px !important;
    flex-basis:56px !important;
    border-radius:14px !important;
  }
  .v108-title-icon svg{
    width:36px !important;
    height:36px !important;
  }
}
@media(max-width:520px){
  .v108-title-row{
    align-items:flex-start !important;
  }
  .v108-title-icon{
    width:48px !important;
    height:48px !important;
    flex-basis:48px !important;
  }
  .v108-title-icon svg{
    width:31px !important;
    height:31px !important;
  }
}


/* ============================================================
   V109 — ELIMINACIÓN GLOBAL DE LOS DOS PUNTOS JUNTO AL LOGO
   ============================================================ */
.brand > span:last-child::after,
.brand:hover > span:last-child::after{
  content:none !important;
  display:none !important;
  width:0 !important;
  height:0 !important;
  background:none !important;
  box-shadow:none !important;
}


/* ============================================================
   V110 — WHATSAPP EN STANDBY
   ============================================================ */
a[href*="wa.me"],
a[href*="whatsapp.com"],
[class*="whatsapp" i],
[id*="whatsapp" i]{
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}


/* ============================================================
   V111 — ELIMINACIÓN REAL DEL BOTÓN WA / CHAT DE LA PORTADA
   ============================================================ */
.v49-wa,
#chatLauncher,
#chatBox,
.chat-launcher,
.chatBox{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}


/* ============================================================
   V113 — QUIÉNES SOMOS: FONDO COMÚN + MAQUETACIÓN CONTENIDA
   ============================================================ */
body.v113-about-page{
  margin:0 !important;
  min-height:100vh !important;
  color:#fff !important;
  background:
    linear-gradient(rgba(3,10,24,.82),rgba(3,10,24,.88)),
    url("assets/aresit-fondo-recorrido-v100-poster.jpg") center/cover fixed no-repeat,
    #050b18 !important;
}
body.v113-about-page .topbar{
  position:relative !important;
  z-index:5 !important;
}
body.v113-about-page .v113-about-hero{
  min-height:auto !important;
  padding:54px clamp(24px,6vw,110px) 32px !important;
  background:transparent !important;
  color:#fff !important;
  display:block !important;
}
body.v113-about-page .v113-about-hero > div{
  width:min(1380px,100%) !important;
  margin:0 auto !important;
}
body.v113-about-page .v113-about-hero .kicker{
  color:#20e9f2 !important;
  letter-spacing:.28em !important;
  font-weight:800 !important;
  margin:0 0 12px !important;
}
body.v113-about-page .v113-about-hero h1{
  color:#fff !important;
  font-size:clamp(3rem,5.5vw,5.8rem) !important;
  line-height:.98 !important;
  letter-spacing:-.045em !important;
  margin:0 !important;
}
body.v113-about-page .v113-about-body{
  box-sizing:border-box !important;
  width:min(1380px,calc(100% - 48px)) !important;
  max-width:1380px !important;
  margin:18px auto 56px !important;
  padding:44px clamp(28px,5vw,76px) 50px !important;
  color:#f4f7ff !important;
  line-height:1.65 !important;
  background:rgba(5,13,29,.72) !important;
  border:1px solid rgba(240,76,255,.58) !important;
  border-radius:28px !important;
  box-shadow:0 18px 55px rgba(0,0,0,.22) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  overflow:hidden !important;
}
body.v113-about-page .v113-about-body p{
  max-width:100% !important;
  margin:0 0 20px !important;
  color:#eef4ff !important;
  font-size:clamp(1rem,1.15vw,1.15rem) !important;
  overflow-wrap:anywhere !important;
}
body.v113-about-page .v113-about-body h2{
  margin:34px 0 14px !important;
  color:#fff !important;
  font-size:clamp(1.45rem,2vw,2rem) !important;
  line-height:1.15 !important;
}
body.v113-about-page .v113-about-body h2::before{
  content:"◎";
  display:inline-block;
  margin-right:14px;
  color:#20e9f2;
  text-shadow:0 0 14px rgba(32,233,242,.55);
}
body.v113-about-page .v113-about-body .back{
  display:inline-block !important;
  margin-top:16px !important;
  color:#20e9f2 !important;
  font-weight:800 !important;
}
body.v113-about-page footer{
  color:#dbe8ff !important;
}
@media(max-width:760px){
  body.v113-about-page .v113-about-hero{
    padding:38px 24px 24px !important;
  }
  body.v113-about-page .v113-about-body{
    width:calc(100% - 28px) !important;
    margin:12px auto 32px !important;
    padding:28px 22px 34px !important;
    border-radius:22px !important;
  }
  body.v113-about-page .v113-about-body p{
    font-size:1rem !important;
  }
}


/* ============================================================
   V114 — QUIÉNES SOMOS: CORRECCIÓN DEFINITIVA DE MÁRGENES
   Y MISMO FONDO DE LAS PÁGINAS SECUNDARIAS
   ============================================================ */

body.v114-about-page{
  position:relative !important;
  margin:0 !important;
  padding:0 !important;
  min-height:100vh !important;
  max-width:none !important;
  width:100% !important;
  overflow-x:hidden !important;
  background:#020713 !important;
}

/* Fondo idéntico al usado en V104/V108 para secundarios */
body.v114-about-page .v114-about-bg{
  position:fixed !important;
  inset:0 !important;
  z-index:0 !important;
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  pointer-events:none !important;
  background:#020713 !important;
}
body.v114-about-page .v114-bg-col{
  min-width:0 !important;
  background-size:cover !important;
  background-position:center !important;
  filter:saturate(.86) contrast(1.05) brightness(.60) !important;
}
body.v114-about-page .v114-bg-sat{background-image:url("assets/img/teleco.jpg") !important}
body.v114-about-page .v114-bg-cnc{background-image:url("assets/img/cnc_v43.jpg") !important}
body.v114-about-page .v114-bg-3d{background-image:url("assets/img/diseno3d.jpg") !important}
body.v114-about-page .v114-bg-solar{background-image:url("assets/img/solar_v43.jpg") !important}
body.v114-about-page .v114-bg-overlay{
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(180deg,rgba(1,7,18,.44),rgba(1,7,18,.72)),
    linear-gradient(90deg,rgba(1,8,20,.16),rgba(1,8,20,.36) 45%,rgba(1,8,20,.24)) !important;
}

/* Cabecera y contenido por encima del fondo */
body.v114-about-page .topbar,
body.v114-about-page .v113-about-hero,
body.v114-about-page .v113-about-body,
body.v114-about-page footer{
  position:relative !important;
  z-index:2 !important;
}

/* Hero totalmente contenido */
body.v114-about-page .v113-about-hero{
  box-sizing:border-box !important;
  width:min(1280px,calc(100vw - 64px)) !important;
  max-width:1280px !important;
  min-height:0 !important;
  margin:0 auto !important;
  padding:46px 0 26px !important;
  display:block !important;
  background:transparent !important;
  overflow:visible !important;
}
body.v114-about-page .v113-about-hero > div{
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
body.v114-about-page .v113-about-hero h1{
  margin:0 !important;
  max-width:100% !important;
  font-size:clamp(3rem,6vw,5.5rem) !important;
  line-height:.98 !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
}

/* Panel principal: anular todos los estilos grid heredados de .pagebody */
body.v114-about-page .v113-about-body{
  display:block !important;
  box-sizing:border-box !important;
  width:min(1280px,calc(100vw - 64px)) !important;
  max-width:1280px !important;
  min-width:0 !important;
  margin:18px auto 48px !important;
  padding:38px clamp(28px,4.5vw,64px) 44px !important;
  columns:auto !important;
  column-count:auto !important;
  grid-template-columns:none !important;
  gap:0 !important;
  overflow:visible !important;
  background:rgba(4,12,28,.78) !important;
  border:1px solid rgba(240,76,255,.58) !important;
  border-radius:28px !important;
}

/* Todo el texto queda dentro del ancho real del panel */
body.v114-about-page .v113-about-body > *{
  box-sizing:border-box !important;
  width:auto !important;
  max-width:100% !important;
  min-width:0 !important;
}
body.v114-about-page .v113-about-body p{
  display:block !important;
  margin:0 0 18px !important;
  padding:0 !important;
  max-width:100% !important;
  color:#eef4ff !important;
  font-size:clamp(.98rem,1.05vw,1.12rem) !important;
  line-height:1.58 !important;
  white-space:normal !important;
  overflow-wrap:break-word !important;
  word-break:normal !important;
}
body.v114-about-page .v113-about-body h2{
  display:block !important;
  width:100% !important;
  margin:30px 0 14px !important;
  padding:0 !important;
  white-space:normal !important;
}

/* En pantallas medianas: conservar márgenes físicos seguros */
@media(max-width:1000px){
  body.v114-about-page .v113-about-hero,
  body.v114-about-page .v113-about-body{
    width:calc(100vw - 48px) !important;
  }
  body.v114-about-page .v113-about-body{
    padding:34px 34px 40px !important;
  }
}
@media(max-width:700px){
  body.v114-about-page .v114-about-bg{
    grid-template-columns:1fr !important;
  }
  body.v114-about-page .v114-bg-cnc,
  body.v114-about-page .v114-bg-3d,
  body.v114-about-page .v114-bg-solar{
    display:none !important;
  }
  body.v114-about-page .v113-about-hero,
  body.v114-about-page .v113-about-body{
    width:calc(100vw - 28px) !important;
  }
  body.v114-about-page .v113-about-hero{
    padding:30px 0 18px !important;
  }
  body.v114-about-page .v113-about-body{
    margin-top:10px !important;
    padding:26px 22px 32px !important;
    border-radius:20px !important;
  }
}


/* ============================================================
   V115 — QUIÉNES SOMOS RECONSTRUIDO SIN HERENCIAS LEGACY
   ============================================================ */
html,body.v115-about{
  margin:0 !important;
  padding:0 !important;
  width:100% !important;
  max-width:none !important;
  min-height:100% !important;
  overflow-x:hidden !important;
}
body.v115-about{
  position:relative !important;
  min-height:100vh !important;
  background:#020713 !important;
  color:#fff !important;
  font-family:Inter,Segoe UI,Arial,sans-serif !important;
}

/* Fondo idéntico al resto de páginas secundarias */
.v115-bg{
  position:fixed;
  inset:0;
  z-index:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  pointer-events:none;
  background:#020713;
}
.v115-bg-col{
  min-width:0;
  background-size:cover;
  background-position:center;
  filter:saturate(.86) contrast(1.05) brightness(.58);
}
.v115-bg-teleco{background-image:url("assets/img/teleco.jpg")}
.v115-bg-cnc{background-image:url("assets/img/cnc_v43.jpg")}
.v115-bg-3d{background-image:url("assets/img/diseno3d.jpg")}
.v115-bg-solar{background-image:url("assets/img/solar_v43.jpg")}
.v115-bg-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(1,7,18,.48),rgba(1,7,18,.78)),
    linear-gradient(90deg,rgba(1,8,20,.18),rgba(1,8,20,.38) 45%,rgba(1,8,20,.26));
}

/* Cabecera propia: no usa .topbar/.brand */
.v115-header{
  position:relative;
  z-index:5;
  width:100%;
  height:108px;
  padding:0 clamp(22px,5vw,86px);
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:rgba(3,10,27,.93);
}
.v115-brand{
  width:290px;
  height:100px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}
.v115-brand img{
  width:228px;
  height:70px;
  object-fit:contain;
  display:block;
}
.v115-brand span{
  margin-top:-2px;
  color:#fff;
  font-size:8px;
  font-weight:800;
  letter-spacing:.19em;
  white-space:nowrap;
}
.v115-home{
  min-width:130px;
  height:54px;
  padding:0 22px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:28px;
  color:#5679ff;
  background:rgba(5,13,30,.48);
  text-decoration:none;
  font-weight:800;
  letter-spacing:.16em;
}
.v115-orb{
  width:15px;
  height:15px;
  border-radius:50%;
  background:linear-gradient(135deg,#58efff,#f04cff);
  box-shadow:0 0 12px rgba(88,239,255,.5);
}

/* Contenido */
.v115-main{
  position:relative;
  z-index:2;
  width:100%;
  box-sizing:border-box;
  padding:44px 24px 54px;
}
.v115-title-block,
.v115-card{
  width:calc(100% - 16px);
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}
.v115-title-block{
  padding:0 0 24px;
}
.v115-kicker{
  margin:0 0 12px;
  color:#20e9f2;
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.30em;
}
.v115-title-block h1{
  margin:0;
  color:#fff;
  font-size:clamp(3rem,6.3vw,5.8rem);
  line-height:.98;
  letter-spacing:-.045em;
}
.v115-card{
  padding:36px clamp(26px,4vw,54px) 42px;
  border:1px solid rgba(240,76,255,.60);
  border-radius:28px;
  background:rgba(4,12,28,.82);
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
  overflow:hidden;
}
.v115-card p{
  width:100%;
  max-width:none;
  margin:0 0 18px;
  color:#eef4ff;
  font-size:16px;
  line-height:1.58;
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
}
.v115-card h2{
  width:100%;
  max-width:none;
  margin:30px 0 14px;
  display:flex;
  align-items:center;
  gap:14px;
  color:#fff;
  font-size:clamp(1.45rem,2vw,1.9rem);
  line-height:1.15;
}
.v115-heading-icon{
  flex:0 0 34px;
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#20e9f2;
  font-size:29px;
  text-shadow:0 0 13px rgba(32,233,242,.48);
}
.v115-back{
  display:inline-block;
  margin-top:8px;
  color:#20e9f2;
  text-decoration:none;
  font-weight:800;
}
.v115-footer{
  position:relative;
  z-index:2;
  min-height:56px;
  padding:0 clamp(22px,5vw,86px);
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  background:rgba(2,7,19,.94);
  color:#aab9cc;
  font-size:11px;
  letter-spacing:.08em;
}

@media(max-width:900px){
  .v115-main{padding-left:18px;padding-right:18px}
  .v115-title-block,.v115-card{width:100%;max-width:100%}
  .v115-card{padding:30px 28px 36px}
}
@media(max-width:620px){
  .v115-bg{grid-template-columns:1fr}
  .v115-bg-cnc,.v115-bg-3d,.v115-bg-solar{display:none}
  .v115-header{height:90px;padding:0 14px}
  .v115-brand{width:165px;height:86px}
  .v115-brand img{width:155px;height:58px}
  .v115-brand span{display:none}
  .v115-home{min-width:auto;height:44px;padding:0 14px;font-size:11px}
  .v115-main{padding:30px 14px 36px}
  .v115-card{padding:25px 20px 30px;border-radius:20px}
  .v115-card p{font-size:15px}
  .v115-footer{padding:14px;flex-direction:column;align-items:flex-start}
}


/* ============================================================
   V116 — SERVICIOS ACTUALIZADOS + FONDO COMÚN + FOOTER PORTADA
   ============================================================ */

/* ---------- SERVICIOS ---------- */
body.v116-services-page{
  margin:0 !important;
  min-height:100vh !important;
  background:#020713 !important;
  color:#fff !important;
  font-family:Inter,Segoe UI,Arial,sans-serif !important;
  overflow-x:hidden !important;
}
.v116-services-bg{
  position:fixed;
  inset:0;
  z-index:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  pointer-events:none;
  background:#020713;
}
.v116-bg-col{
  min-width:0;
  background-size:cover;
  background-position:center;
  filter:saturate(.86) contrast(1.05) brightness(.58);
}
.v116-bg-teleco{background-image:url("assets/img/teleco.jpg")}
.v116-bg-cnc{background-image:url("assets/img/cnc_v43.jpg")}
.v116-bg-3d{background-image:url("assets/img/diseno3d.jpg")}
.v116-bg-solar{background-image:url("assets/img/solar_v43.jpg")}
.v116-bg-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(1,7,18,.46),rgba(1,7,18,.78)),
    linear-gradient(90deg,rgba(1,8,20,.17),rgba(1,8,20,.38) 45%,rgba(1,8,20,.25));
}
.v116-services-header{
  position:relative;
  z-index:5;
  width:100%;
  height:108px;
  box-sizing:border-box;
  padding:0 clamp(22px,5vw,86px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:rgba(3,10,27,.93);
}
.v116-services-brand{
  width:290px;
  height:100px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}
.v116-services-brand img{
  width:228px;
  height:70px;
  object-fit:contain;
}
.v116-services-brand span{
  margin-top:-2px;
  color:#fff;
  font-size:8px;
  font-weight:800;
  letter-spacing:.19em;
  white-space:nowrap;
}
.v116-services-home{
  min-width:130px;
  height:54px;
  padding:0 22px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:28px;
  color:#5679ff;
  background:rgba(5,13,30,.48);
  text-decoration:none;
  font-weight:800;
  letter-spacing:.16em;
}
.v116-orb{
  width:15px;
  height:15px;
  border-radius:50%;
  background:linear-gradient(135deg,#58efff,#f04cff);
  box-shadow:0 0 12px rgba(88,239,255,.5);
}
.v116-services-main{
  position:relative;
  z-index:2;
  width:100%;
  box-sizing:border-box;
  padding:42px 24px 52px;
}
.v116-services-title,
.v116-services-panel{
  width:calc(100% - 16px);
  max-width:1240px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}
.v116-services-title{
  padding-bottom:24px;
}
.v116-kicker{
  color:#20e9f2;
  font-size:12px;
  font-weight:900;
  letter-spacing:.30em;
  margin-bottom:12px;
}
.v116-services-title h1{
  margin:0;
  font-size:clamp(3rem,6.2vw,5.7rem);
  line-height:.98;
  letter-spacing:-.045em;
  color:#fff;
}
.v116-services-panel{
  padding:24px 42px 28px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:28px;
  background:rgba(4,12,28,.80);
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
}
.v116-service-row{
  display:grid;
  grid-template-columns:minmax(280px,36%) 1fr;
  gap:34px;
  align-items:center;
  padding:22px 0;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.v116-service-row:last-of-type{
  border-bottom:none;
}
.v116-service-name{
  display:flex;
  align-items:center;
  gap:16px;
}
.v116-service-name h2{
  margin:0;
  color:#fff;
  font-size:24px;
  line-height:1.15;
}
.v116-service-icon{
  width:48px;
  height:48px;
  flex:0 0 48px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  background:rgba(5,13,30,.64);
  font-size:28px;
  font-weight:800;
}
.v116-teleco-icon{color:#20e9f2;border:1px solid rgba(32,233,242,.55)}
.v116-print-icon{color:#a26cff;border:1px solid rgba(162,108,255,.55)}
.v116-domotica-icon{color:#f04cff;border:1px solid rgba(240,76,255,.55)}
.v116-solar-icon{color:#ffc31f;border:1px solid rgba(255,195,31,.55)}
.v116-cnc-icon{color:#20e9f2;border:1px solid rgba(32,233,242,.55)}
.v116-service-row p{
  margin:0;
  color:#dce7f4;
  font-size:15px;
  line-height:1.5;
}
.v116-service-row p strong{
  color:#fff;
  font-weight:800;
}
.v116-back{
  display:inline-block;
  margin-top:20px;
  color:#20e9f2;
  text-decoration:none;
  font-weight:800;
}
.v116-services-footer{
  position:relative;
  z-index:2;
  min-height:56px;
  padding:0 clamp(22px,5vw,86px);
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  background:rgba(2,7,19,.95);
  color:#aab9cc;
  font-size:11px;
  letter-spacing:.08em;
}

/* ---------- FOOTER PORTADA ---------- */
body.v49-home .v116-home-footer{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:34px;
  z-index:60;
  box-sizing:border-box;
  padding:0 28px 0 342px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  background:rgba(2,7,19,.86);
  border-top:1px solid rgba(255,255,255,.07);
  color:#9fb3c8;
  font-family:Inter,Segoe UI,Arial,sans-serif;
  font-size:10px;
  letter-spacing:.08em;
  pointer-events:none;
}

@media(max-width:900px){
  .v116-services-main{padding-left:18px;padding-right:18px}
  .v116-services-title,.v116-services-panel{width:100%}
  .v116-service-row{grid-template-columns:1fr;gap:12px}
  .v116-services-panel{padding:22px 28px 26px}
}
@media(max-width:620px){
  .v116-services-bg{grid-template-columns:1fr}
  .v116-bg-cnc,.v116-bg-3d,.v116-bg-solar{display:none}
  .v116-services-header{height:90px;padding:0 14px}
  .v116-services-brand{width:165px;height:86px}
  .v116-services-brand img{width:155px;height:58px}
  .v116-services-brand span{display:none}
  .v116-services-home{min-width:auto;height:44px;padding:0 14px;font-size:11px}
  .v116-services-main{padding:30px 14px 36px}
  .v116-services-panel{padding:20px;border-radius:20px}
  .v116-service-name h2{font-size:21px}
  .v116-service-row p{font-size:14px}
  body.v49-home .v116-home-footer{
    display:none;
  }
}


/* ============================================================
   V118 — PLAYLIST DE VÍDEO RESISTENTE A FALLOS
   ============================================================ */
body.v49-home .v96-bg-video{
  background:transparent !important;
}


/* V119 — encuadre de la escena fotovoltaica residencial */
body.v49-home #v97BgVideo{
  object-fit:cover !important;
  object-position:center center !important;
}


/* ============================================================
   V122 — DOMÓTICA: PANEL CENTRAL REAL EN VIVIENDA
   Vídeo oficial Crestron 80 Series Touch Screens
   ============================================================ */
body.v49-home .v122-domotica-video{
  position:absolute !important;
  z-index:1 !important;
  top:50% !important;
  left:50% !important;
  width:177.77777778vh !important;
  min-width:100% !important;
  height:56.25vw !important;
  min-height:100% !important;
  transform:translate(-50%,-50%) scale(1.03) !important;
  border:0 !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transition:opacity .8s ease !important;
  filter:saturate(.88) contrast(1.04) brightness(.76) !important;
}
body.v49-home .v122-domotica-video.v122-visible{
  opacity:1 !important;
  visibility:visible !important;
}

/* El overlay existente permanece por encima y conserva el suavizado visual. */


/* ============================================================
   V123 — DOMÓTICA SIN IFRAME / YOUTUBE
   ============================================================ */
body.v49-home .v122-domotica-video,
body.v49-home .v122-domotica-video.v122-visible{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}


/* ============================================================
   V126 — MARCA INTEGRADA: ARES INFOCOM TELECOM EMBEBIDO EN PNG
   Base: V123. El texto ya forma parte del propio logo para evitar
   ocultaciones por reglas CSS heredadas.
   ============================================================ */
body.v49-home .v49-brand.v93-main-brand{height:172px!important;}
body.v49-home .v49-brand.v93-main-brand .aresit-logo-oficial{
  width:246px!important; max-width:246px!important; max-height:none!important; height:auto!important;
}
body:not(.v49-home) .topbar .brand .aresit-logo-oficial,
body.v84-page .v84-brand .aresit-logo-oficial,
.v103-brand img,.v115-brand img,.v116-services-brand img,
.v81-brand .aresit-logo-oficial{
  object-fit:contain!important; height:auto!important; max-height:none!important;
}
/* Ocultar textos HTML duplicados porque ahora están integrados en la imagen. */
.v94-brand-text,.v103-brand span,.v115-brand span,.v116-services-brand span{display:none!important;}


/* ============================================================
   V1_129 — CORRECCIÓN DE MAQUETACIÓN TRAS CAMBIO DE LOGO
   El PNG horizontal nunca puede usar su tamaño natural dentro
   de las cabeceras de las páginas secundarias.
   ============================================================ */

/* Secundarias V81 */
.v81-header{
  height:92px !important;
  min-height:92px !important;
  max-height:92px !important;
  overflow:hidden !important;
}
.v81-brand{
  height:92px !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  overflow:hidden !important;
}
.v81-brand .aresit-logo-oficial{
  display:block !important;
  width:230px !important;
  max-width:230px !important;
  height:76px !important;
  max-height:76px !important;
  object-fit:contain !important;
  object-position:left center !important;
}

/* Secundarias V84 */
body.v84-page .v84-brand .aresit-logo-oficial{
  width:165px !important;
  max-width:165px !important;
  height:58px !important;
  max-height:58px !important;
  object-fit:contain !important;
}

/* Cabecera topbar genérica */
body:not(.v49-home) .topbar .brand .aresit-logo-oficial{
  width:190px !important;
  max-width:190px !important;
  height:55px !important;
  max-height:55px !important;
  object-fit:contain !important;
}

/* Familias específicas */
.v103-brand img{
  width:230px !important;
  max-width:230px !important;
  height:68px !important;
  max-height:68px !important;
  object-fit:contain !important;
}
.v115-brand img{
  width:230px !important;
  max-width:230px !important;
  height:68px !important;
  max-height:68px !important;
  object-fit:contain !important;
}
.v116-services-brand img{
  width:230px !important;
  max-width:230px !important;
  height:68px !important;
  max-height:68px !important;
  object-fit:contain !important;
}

/* Portada: mantener la composición propia de V126 */
body.v49-home .v49-brand.v93-main-brand .aresit-logo-oficial{
  width:246px !important;
  max-width:246px !important;
  height:auto !important;
  max-height:118px !important;
  object-fit:contain !important;
}

/* Seguridad: ninguna imagen de logo puede desbordar su enlace/cabecera */
header img.aresit-logo-oficial{
  position:static !important;
  transform:none !important;
}

/* V1_134 SEO - heading accesible sin alterar la composición visual */
.seo-sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}


/* ============================================================
   V1_144 — CABECERAS RESPONSIVE EN MÓVIL
   Evita superposición de logo y navegación en ES / EN.
   El bloque de marca queda arriba y los botones debajo.
   ============================================================ */
@media (max-width:700px){
  /* Familias principales V81 */
  .v81-header{
    height:auto!important;
    min-height:132px!important;
    max-height:none!important;
    padding:8px 12px 10px!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:5px!important;
    overflow:visible!important;
  }
  .v81-brand{
    width:100%!important;
    height:70px!important;
    min-height:70px!important;
    justify-content:center!important;
    align-items:center!important;
    overflow:visible!important;
  }
  .v81-brand .aresit-logo-oficial{
    width:min(210px,72vw)!important;
    max-width:210px!important;
    height:66px!important;
    max-height:66px!important;
    object-position:center center!important;
  }
  .v81-home{
    min-height:38px!important;
    padding:8px 15px!important;
    font-size:10px!important;
    line-height:1.2!important;
    text-align:center!important;
    white-space:normal!important;
  }

  /* Detalles V84: logo arriba, menús generales debajo */
  .v84-header{
    height:auto!important;
    min-height:140px!important;
    padding:8px 10px 10px!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:7px!important;
    overflow:visible!important;
  }
  body.v84-page .v84-brand{
    width:100%!important;
    height:68px!important;
    min-height:68px!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    overflow:visible!important;
  }
  body.v84-page .v84-brand .aresit-logo-oficial{
    width:min(205px,70vw)!important;
    max-width:205px!important;
    height:64px!important;
    max-height:64px!important;
    object-position:center center!important;
  }
  .v84-nav{
    width:100%!important;
    display:flex!important;
    justify-content:center!important;
    align-items:stretch!important;
    gap:7px!important;
    flex-wrap:wrap!important;
  }
  .v84-btn{
    flex:1 1 135px!important;
    max-width:190px!important;
    min-height:38px!important;
    box-sizing:border-box!important;
    padding:8px 8px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:9.5px!important;
    line-height:1.15!important;
    text-align:center!important;
    white-space:normal!important;
  }

  /* Internet satélite V103 */
  .v103-header{
    height:auto!important;
    min-height:142px!important;
    padding:8px 10px 10px!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:7px!important;
    overflow:visible!important;
  }
  .v103-brand{
    width:100%!important;
    height:70px!important;
    min-height:70px!important;
  }
  .v103-brand img{
    width:min(205px,70vw)!important;
    max-width:205px!important;
    height:64px!important;
    max-height:64px!important;
  }
  .v103-nav{
    width:100%!important;
    justify-content:center!important;
    gap:7px!important;
    flex-wrap:wrap!important;
  }
  .v103-nav a{
    flex:1 1 130px!important;
    max-width:190px!important;
    min-height:38px!important;
    height:auto!important;
    padding:8px!important;
    font-size:9.5px!important;
    line-height:1.15!important;
    text-align:center!important;
    white-space:normal!important;
  }

  /* Quiénes somos V115 */
  .v115-header{
    height:auto!important;
    min-height:126px!important;
    padding:7px 12px 10px!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:5px!important;
    overflow:visible!important;
  }
  .v115-brand{
    width:100%!important;
    height:70px!important;
    min-height:70px!important;
  }
  .v115-brand img{
    width:min(205px,70vw)!important;
    max-width:205px!important;
    height:64px!important;
    max-height:64px!important;
  }
  .v115-home{
    min-height:38px!important;
    height:auto!important;
    padding:8px 15px!important;
    font-size:10px!important;
  }

  /* Servicios V116 */
  .v116-services-header{
    height:auto!important;
    min-height:126px!important;
    padding:7px 12px 10px!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:5px!important;
    overflow:visible!important;
  }
  .v116-services-brand{
    width:100%!important;
    height:70px!important;
    min-height:70px!important;
  }
  .v116-services-brand img{
    width:min(205px,70vw)!important;
    max-width:205px!important;
    height:64px!important;
    max-height:64px!important;
  }
  .v116-services-home{
    min-height:38px!important;
    height:auto!important;
    padding:8px 15px!important;
    font-size:10px!important;
  }

  /* Contacto/topbar: deja de ser flotante en móvil para no pisar contenido */
  body.v91-contact-page .topbar,
  body:not(.v49-home) .topbar{
    position:relative!important;
    height:auto!important;
    min-height:126px!important;
    padding:7px 12px 10px!important;
    box-sizing:border-box!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:5px!important;
    overflow:visible!important;
  }
  body:not(.v49-home) .topbar .brand{
    width:100%!important;
    height:70px!important;
    min-height:70px!important;
    padding:0!important;
  }
  body:not(.v49-home) .topbar .brand .aresit-logo-oficial{
    width:min(205px,70vw)!important;
    max-width:205px!important;
    height:64px!important;
    max-height:64px!important;
  }
  body:not(.v49-home) .topbar .menu-trigger{
    position:static!important;
    margin:0!important;
    min-height:38px!important;
    height:auto!important;
    padding:8px 15px!important;
    font-size:10px!important;
  }
}

@media (max-width:390px){
  .v84-btn,.v103-nav a{
    flex-basis:120px!important;
    font-size:9px!important;
  }
  .v81-brand .aresit-logo-oficial,
  body.v84-page .v84-brand .aresit-logo-oficial,
  .v103-brand img,.v115-brand img,.v116-services-brand img,
  body:not(.v49-home) .topbar .brand .aresit-logo-oficial{
    width:min(188px,68vw)!important;
    max-width:188px!important;
  }
}
