
:root{--black:#050608;--dark:#0b0d12;--dark-2:#12151c;--graphite:#1d2028;--white:#fff;--soft:rgba(255,255,255,.72);--muted:rgba(255,255,255,.58);--line:rgba(255,255,255,.12);--teal:#00a99d;--teal-2:#18d2c7;--orange:#f4a000;--shadow:0 30px 90px rgba(0,0,0,.35);--ease:cubic-bezier(.2,.8,.2,1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--black);color:var(--white);line-height:1.5;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 85% 0%,rgba(0,169,157,.18),transparent 32%),radial-gradient(circle at 10% 20%,rgba(244,160,0,.08),transparent 28%),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,auto,84px 84px,84px 84px;pointer-events:none;z-index:-3}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.skip-link{position:absolute;left:12px;top:10px;z-index:200;background:var(--teal);color:#001;padding:10px 14px;border-radius:999px;font-weight:900;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid var(--orange);outline-offset:4px;border-radius:8px}#particle-network{position:fixed;inset:0;width:100%;height:100%;z-index:-2;opacity:.56;pointer-events:none}.container{width:min(1220px,calc(100% - 44px));margin:0 auto}.site-header{position:sticky;top:0;z-index:50;padding:12px 0 16px;background:linear-gradient(180deg,rgba(5,6,8,.92),rgba(5,6,8,.48));backdrop-filter:blur(18px)}.top-line{width:min(1220px,calc(100% - 44px));margin:0 auto 10px;display:flex;justify-content:space-between;gap:18px;color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.14em}.top-line span:first-child{color:var(--orange)}.nav-shell{width:min(1220px,calc(100% - 44px));min-height:72px;margin:0 auto;padding:0 18px 0 24px;border:1px solid var(--line);border-radius:999px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:rgba(255,255,255,.045);box-shadow:0 18px 45px rgba(0,0,0,.22)}.brand{display:inline-flex;align-items:center;max-width:210px}.brand img{max-height:42px;width:auto}.footer-brand img{max-height:34px}.nav-links{display:flex;gap:28px;align-items:center;color:var(--soft);font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.nav-links a:hover,.nav-links .active{color:var(--teal-2)}.menu-toggle{display:none;background:rgba(255,255,255,.08);color:#fff;border:1px solid var(--line);border-radius:50%;width:46px;height:46px;font-size:1.3rem}.nav-cta{min-height:46px;padding:0 20px;border:1px solid rgba(0,169,157,.5);border-radius:999px;display:inline-flex;align-items:center;color:var(--teal-2);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:60;min-height:52px;padding:0 22px;border-radius:999px;background:#25d366;color:white;display:inline-flex;align-items:center;gap:9px;font-weight:900;box-shadow:0 18px 38px rgba(37,211,102,.28)}.hero,.page-hero{position:relative;min-height:90vh;display:grid;align-items:center;overflow:hidden;padding:84px 0 120px}.page-hero{min-height:74vh}.hero-bg-word{position:absolute;left:50%;top:12%;transform:translateX(-50%);font-family:Archivo,Inter,sans-serif;font-size:clamp(7rem,18vw,18rem);font-weight:900;letter-spacing:-.1em;color:rgba(255,255,255,.035);white-space:nowrap;pointer-events:none}.hero-grid,.page-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:.92fr 1.08fr;gap:58px;align-items:center}.page-hero-grid{grid-template-columns:1fr .86fr}.eyebrow{color:var(--orange);font-weight:900;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;margin-bottom:18px}h1,h2{font-family:Archivo,Inter,sans-serif;font-weight:900;letter-spacing:-.07em;line-height:.9}h1{max-width:900px;font-size:clamp(4rem,8vw,8.6rem);text-transform:uppercase}h2{font-size:clamp(3rem,6vw,6.8rem)}h3{font-family:Archivo,Inter,sans-serif;letter-spacing:-.05em}.lead,.section-heading p,.statement-copy p,.audience-text,.why-copy p,.detail-card p,.product-card p{margin-top:22px;color:var(--soft);font-size:1.08rem;max-width:760px}.hero-actions,.contact-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.btn{min-height:52px;padding:0 22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}.btn:hover{transform:translateY(-3px)}.btn-primary{background:var(--teal);color:#001;box-shadow:0 18px 40px rgba(0,169,157,.25)}.btn-secondary{border:1px solid var(--line);color:var(--white);background:rgba(255,255,255,.045)}.inline-link{display:inline-flex;margin-top:22px;color:var(--teal-2);font-weight:900}.hero-media{position:relative;min-height:640px;isolation:isolate}.hero-frame{position:relative;width:min(720px,100%);height:620px;margin-left:auto;border-radius:42px;transition:transform .28s var(--ease)}.hero-frame:before{content:"";position:absolute;inset:-34px;border-radius:58px;background:radial-gradient(circle at 82% 18%,rgba(0,169,157,.22),transparent 34%),radial-gradient(circle at 18% 82%,rgba(244,160,0,.10),transparent 32%);filter:blur(4px);z-index:-2}.hero-frame:after{content:"";position:absolute;inset:42px -22px -30px 64px;border:1px solid rgba(0,169,157,.18);border-radius:36px;z-index:-1}.hero-image-card{position:absolute;inset:44px 0 34px 42px;border-radius:40px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:#090c10;box-shadow:0 36px 100px rgba(0,0,0,.42)}.hero-image-card img,.hardware-card img,.why-visual img,.page-hero-visual img,.detail-image img,.product-card img{width:100%;height:100%;object-fit:cover;filter:grayscale(.08) contrast(1.18) brightness(.76) saturate(.88)}.hero-image-card:after,.hardware-card:after,.why-visual:after,.detail-image:after,.product-card:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.12) 48%,rgba(0,169,157,.22)),linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.64));pointer-events:none}.scanline,.rack-grid{position:absolute;inset:0;pointer-events:none}.scanline{background:repeating-linear-gradient(to bottom,transparent 0 6px,rgba(255,255,255,.04) 6px 7px);mix-blend-mode:screen;opacity:.28}.rack-grid{background:linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:92px 92px;opacity:.13;mix-blend-mode:screen}.media-badge,.floating-panel{position:absolute;z-index:3;border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(18px);box-shadow:0 24px 70px rgba(0,0,0,.36)}.main-badge{left:72px;bottom:0;width:min(410px,calc(100% - 150px));padding:22px 24px;border-radius:28px;background:linear-gradient(135deg,rgba(5,6,8,.88),rgba(14,30,31,.72))}.main-badge small{display:block;margin-bottom:8px;color:var(--orange);font-weight:900;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.main-badge strong{display:block;font-family:Archivo,Inter,sans-serif;font-size:clamp(1.8rem,3.2vw,3.2rem);line-height:.9}.main-badge span,.floating-panel small{color:var(--soft)}.floating-panel{padding:16px 18px;border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.055))}.floating-panel strong{display:block;font-family:Archivo,Inter,sans-serif;font-size:1.22rem}.panel-one{right:-10px;top:86px}.panel-two{left:6px;bottom:118px}.panel-three{right:24px;bottom:52px}.float-motion{animation:softFloat 6.5s ease-in-out infinite}.float-motion.slow{animation-duration:8.2s;animation-delay:-.9s}.float-motion.reverse{animation-duration:7.4s;animation-direction:reverse;animation-delay:-1.5s}@keyframes softFloat{50%{transform:translateY(-16px) rotate(-1.2deg)}}.statement,.services,.proof,.cta,.detail-section,.brand-cloud{padding:120px 0}.section-dark{padding:120px 0;background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012)),var(--dark);border-block:1px solid var(--line)}.statement-grid,.why-grid,.audience-grid,.cta-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.statement-grid{grid-template-columns:.7fr 1.3fr}.statement-mark{min-height:430px;display:grid;place-items:center;border-radius:42px;background:radial-gradient(circle,rgba(0,169,157,.12),transparent 62%);border:1px solid var(--line)}.statement-mark img{width:min(520px,92%);filter:drop-shadow(0 30px 60px rgba(0,169,157,.18))}.big-line{color:var(--teal-2)!important;font-family:Archivo,Inter,sans-serif;font-size:clamp(2rem,3vw,3.2rem)!important;letter-spacing:-.05em;font-weight:900}.section-heading{max-width:940px;margin-bottom:54px}.hardware-grid{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:320px 320px;gap:22px}.hardware-card,.detail-image,.why-visual,.page-hero-visual,.product-card{position:relative;overflow:hidden;border-radius:34px;border:1px solid var(--line);background:var(--graphite);box-shadow:var(--shadow)}.hardware-card.large{grid-row:span 2}.card-content{position:absolute;z-index:2;inset:auto 24px 24px 24px}.card-content span,.service-index{display:inline-flex;margin-bottom:14px;color:var(--orange);font-weight:900;letter-spacing:.14em}.card-content h3,.service-card h3,.product-card h3{font-size:clamp(1.5rem,2vw,2.1rem);line-height:.96}.card-content p,.service-card p,.testimonial-card p{margin-top:12px;color:var(--soft)}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{min-height:310px;padding:28px;border-radius:30px;background:radial-gradient(circle at 85% 0%,rgba(0,169,157,.13),transparent 34%),rgba(255,255,255,.045);border:1px solid var(--line);transition:transform .3s var(--ease),background .3s var(--ease)}.service-card:hover{transform:translateY(-10px);background:radial-gradient(circle at 85% 0%,rgba(0,169,157,.22),transparent 34%),rgba(255,255,255,.07)}.audience-text{font-family:Archivo,Inter,sans-serif;font-size:clamp(2rem,3.4vw,3.8rem);line-height:1.02;letter-spacing:-.06em}.proof-header{margin-bottom:36px}.testimonial-marquee{overflow:hidden;border:1px solid var(--line);border-radius:34px;background:rgba(255,255,255,.035)}.testimonial-track{display:grid;grid-template-columns:repeat(6,minmax(320px,1fr));gap:18px;padding:22px;min-width:2200px;animation:marquee 28s linear infinite}@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-650px)}}.testimonial-card{min-height:210px;padding:24px;border-radius:26px;background:rgba(5,6,8,.72);border:1px solid var(--line)}.testimonial-card span{display:block;margin-top:20px;color:var(--teal-2);font-weight:900}.why-visual{height:560px}.metric-cluster{position:absolute;z-index:3;right:24px;bottom:24px;display:flex;gap:12px}.metric-cluster div{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;text-align:center;background:rgba(5,6,8,.68);border:1px solid var(--line);backdrop-filter:blur(16px)}.metric-cluster strong{display:block;font-family:Archivo,Inter,sans-serif;font-size:1.5rem;color:var(--teal-2)}.metric-cluster span{display:block;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.cta{text-align:center;background:radial-gradient(circle at 50% 0%,rgba(0,169,157,.18),transparent 36%),linear-gradient(180deg,var(--black),#070b0f)}.cta-inner{max-width:1050px}.contact-actions{justify-content:center}.page-hero-visual{height:520px}.detail-list{display:grid;gap:34px}.detail-card{display:grid;grid-template-columns:1.08fr .92fr;gap:28px;align-items:stretch;padding:18px;border-radius:42px;background:rgba(255,255,255,.045);border:1px solid var(--line);box-shadow:var(--shadow)}.detail-copy{padding:28px}.detail-copy h2{font-size:clamp(2.2rem,4vw,4.7rem)}.detail-copy ul{margin:22px 0 0 0;list-style:none;display:grid;gap:10px}.detail-copy li{color:var(--soft);font-weight:650}.detail-copy li:before{content:"✓";color:var(--teal-2);font-weight:900;margin-right:10px}.closing{color:#fff!important;font-weight:900}.detail-image{min-height:420px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product-card{min-height:480px;display:grid;grid-template-rows:230px 1fr}.product-card div{position:relative;z-index:2;padding:24px}.product-card img{height:230px}.product-card:after{top:0;height:230px}.brand-cloud{background:var(--black)}.logo-cloud{display:flex;flex-wrap:wrap;gap:12px}.logo-cloud span{padding:13px 16px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.045);color:var(--soft);font-weight:900}.contact-panel{padding:32px;border:1px solid var(--line);background:rgba(255,255,255,.06);border-radius:34px;box-shadow:var(--shadow)}.contact-panel h2{font-size:clamp(2rem,3.4vw,3.4rem);margin-bottom:24px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:grid;gap:8px;color:var(--soft);font-weight:800}.contact-form .full{grid-column:1/-1}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:16px;background:rgba(5,6,8,.64);color:#fff;padding:14px 15px;font:inherit}.contact-form button{border:0;grid-column:1/-1}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.footer{padding:70px 0 34px;border-top:1px solid var(--line);background:#030405}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:34px;align-items:start}.footer p{max-width:320px;margin-top:14px;color:var(--muted)}.footer h4{margin-bottom:16px;font-size:.82rem;color:var(--orange);text-transform:uppercase;letter-spacing:.14em}.footer a{display:block;margin-bottom:9px;color:var(--soft);font-weight:700}.footer-bottom{margin-top:44px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:18px;color:var(--muted);font-size:.88rem}.cookie-banner{position:fixed;left:22px;bottom:22px;z-index:70;width:min(460px,calc(100vw - 44px));padding:18px;border-radius:24px;background:rgba(5,6,8,.82);border:1px solid var(--line);backdrop-filter:blur(18px);box-shadow:var(--shadow);display:flex;align-items:center;gap:18px}.cookie-banner p{color:var(--muted);font-size:.88rem}.cookie-banner button{border:0;border-radius:999px;padding:12px 16px;background:var(--teal);color:var(--black);font-weight:900;cursor:pointer;white-space:nowrap}.cookie-banner.is-hidden{display:none}.reveal{opacity:0;transform:translateY(42px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.is-visible{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}.delay-3{transition-delay:.36s}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.testimonial-track{animation:none!important}}@media (max-width:1100px){.hero-grid,.page-hero-grid,.statement-grid,.audience-grid,.why-grid,.detail-card{grid-template-columns:1fr}.hero-media{min-height:560px}.hero-frame{margin-inline:auto}.hardware-grid,.services-grid,.footer-grid,.product-grid{grid-template-columns:1fr 1fr}.hardware-card.large{grid-row:auto}.detail-image{min-height:360px}.contact-cards{grid-template-columns:1fr}}@media (max-width:780px){.top-line,.nav-cta{display:none}.menu-toggle{display:grid;place-items:center}.nav-shell{min-height:64px}.nav-links{position:absolute;left:22px;right:22px;top:92px;display:none;padding:22px;border:1px solid var(--line);border-radius:24px;background:#06080b;box-shadow:var(--shadow)}.nav-links.is-open{display:grid}.hero,.page-hero{min-height:auto;padding-top:54px}h1{font-size:clamp(3rem,14vw,5.2rem)}h2{font-size:clamp(2.3rem,12vw,4rem)}.hero-bg-word{display:none}.hero-media{min-height:540px}.hero-frame{height:540px}.hero-image-card{inset:26px 0 80px 0}.main-badge{left:18px;bottom:18px;width:calc(100% - 36px)}.panel-one{right:10px;top:56px}.panel-two,.panel-three{display:none}.statement,.services,.proof,.cta,.section-dark,.detail-section,.brand-cloud{padding:78px 0}.hardware-grid,.services-grid,.footer-grid,.metric-cluster,.product-grid,.contact-form{grid-template-columns:1fr}.metric-cluster{position:static;display:grid;padding:18px}.metric-cluster div{width:100%;height:auto;border-radius:22px;padding:20px}.why-visual,.page-hero-visual{height:420px}.cookie-banner{flex-direction:column;align-items:flex-start;bottom:86px}.whatsapp-float{left:22px;right:22px;justify-content:center}.testimonial-track{animation:none;min-width:0;grid-template-columns:1fr}.contact-form .full,.contact-form button{grid-column:auto}}

/* === Ajustes UX/UI v2: hardware tipo Apple, servicios galería-acordeón y contacto responsive === */
.hero-actions .btn-secondary[href="hardware.html"] {
  border-color: rgba(0,169,157,.42);
  color: var(--teal-2);
  background: rgba(0,169,157,.075);
}

.hardware-accordion {
  display: grid;
  grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr);
  gap: 28px;
  align-items: stretch;
}

.hardware-accordion-list {
  display: grid;
  gap: 12px;
  align-content: start;
}

.hardware-tab {
  width: 100%;
  min-height: 92px;
  padding: 18px 20px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: rgba(255,255,255,.045);
  color: #fff;
  text-align: left;
  cursor: pointer;
  transition: transform .24s var(--ease), background .24s var(--ease), border-color .24s var(--ease);
}

.hardware-tab:hover,
.hardware-tab:focus-visible,
.hardware-tab.active {
  transform: translateX(8px);
  background: linear-gradient(135deg, rgba(0,169,157,.18), rgba(255,255,255,.055));
  border-color: rgba(0,169,157,.42);
}

.hardware-tab span {
  display: block;
  margin-bottom: 8px;
  color: var(--orange);
  font-weight: 900;
  letter-spacing: .12em;
  font-size: .78rem;
}

.hardware-tab strong {
  display: block;
  font-family: Archivo, Inter, sans-serif;
  font-size: clamp(1.15rem, 1.8vw, 1.55rem);
  letter-spacing: -.04em;
  line-height: 1;
}

.hardware-tab small {
  display: block;
  margin-top: 8px;
  color: var(--muted);
  font-weight: 700;
  line-height: 1.35;
}

.hardware-stage {
  position: relative;
  min-height: 680px;
  border-radius: 40px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.035);
  box-shadow: var(--shadow);
  overflow: hidden;
}

.hardware-panel {
  position: absolute;
  inset: 0;
  display: grid;
  align-items: end;
  opacity: 0;
  pointer-events: none;
  transform: scale(1.03);
  transition: opacity .45s var(--ease), transform .55s var(--ease);
}

.hardware-panel.active {
  opacity: 1;
  pointer-events: auto;
  transform: scale(1);
}

.hardware-panel img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(.08) contrast(1.18) brightness(.72) saturate(.9);
}

.hardware-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(5,6,8,.04), rgba(5,6,8,.78)),
    linear-gradient(90deg, rgba(5,6,8,.38), rgba(0,169,157,.22));
}

.hardware-panel-copy {
  position: relative;
  z-index: 2;
  max-width: 620px;
  margin: 28px;
  padding: 28px;
  border-radius: 30px;
  border: 1px solid rgba(255,255,255,.15);
  background: rgba(5,6,8,.62);
  backdrop-filter: blur(18px);
}

.hardware-panel-copy span {
  color: var(--orange);
  font-weight: 900;
  letter-spacing: .14em;
}

.hardware-panel-copy h3 {
  margin-top: 12px;
  font-size: clamp(2.4rem, 5vw, 5.2rem);
  line-height: .86;
}

.hardware-panel-copy p {
  max-width: 540px;
  margin-top: 18px;
  color: var(--soft);
  font-size: 1.05rem;
}

.hardware-panel-copy a {
  display: inline-flex;
  margin-top: 22px;
  color: var(--teal-2);
  font-weight: 900;
}

.service-gallery {
  display: flex;
  gap: 16px;
  min-height: 720px;
}

.service-panel {
  position: relative;
  flex: .72;
  min-width: 88px;
  overflow: hidden;
  border-radius: 34px;
  border: 1px solid var(--line);
  background-image:
    linear-gradient(180deg, rgba(5,6,8,.22), rgba(5,6,8,.86)),
    linear-gradient(90deg, rgba(5,6,8,.62), rgba(0,169,157,.22)),
    var(--bg);
  background-size: cover;
  background-position: center;
  box-shadow: var(--shadow);
  cursor: pointer;
  transition: flex .45s var(--ease), transform .3s var(--ease), border-color .3s var(--ease);
}

.service-panel:hover,
.service-panel:focus-visible {
  transform: translateY(-6px);
  border-color: rgba(0,169,157,.38);
}

.service-panel.active {
  flex: 3.2;
  border-color: rgba(0,169,157,.46);
}

.service-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 72px 72px;
  opacity: .22;
}

.service-panel-inner {
  position: absolute;
  inset: auto 0 0 0;
  z-index: 2;
  padding: 26px;
  transform: translateY(18px);
  transition: transform .35s var(--ease);
}

.service-panel.active .service-panel-inner {
  transform: translateY(0);
}

.service-panel-inner span {
  display: block;
  margin-bottom: 16px;
  color: var(--orange);
  font-weight: 900;
  letter-spacing: .14em;
}

.service-panel-inner h2 {
  max-width: 820px;
  font-size: clamp(2rem, 4vw, 5.2rem);
}

.service-panel:not(.active) .service-panel-inner h2 {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  max-height: 520px;
  font-size: 1.35rem;
  letter-spacing: -.03em;
}

.service-panel-inner p,
.service-panel-inner ul {
  max-width: 680px;
  margin-top: 18px;
  color: var(--soft);
}

.service-panel-inner ul {
  display: grid;
  gap: 10px;
  list-style: none;
}

.service-panel-inner li::before {
  content: "✓";
  color: var(--teal-2);
  margin-right: 9px;
  font-weight: 900;
}

.service-panel:not(.active) .service-panel-inner p,
.service-panel:not(.active) .service-panel-inner ul {
  display: none;
}

.contact-hero .page-hero-grid {
  grid-template-columns: minmax(0, 1fr) minmax(460px, .62fr);
  align-items: center;
}

.contact-panel {
  width: 100%;
  max-width: 520px;
  justify-self: end;
  background: linear-gradient(135deg, rgba(255,255,255,.09), rgba(255,255,255,.045));
}

.contact-form input,
.contact-form select,
.contact-form textarea {
  min-height: 52px;
  background: rgba(255,255,255,.075);
  border-color: rgba(255,255,255,.18);
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.15);
}

.contact-form textarea {
  min-height: 150px;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  border-color: var(--teal-2);
  outline: 3px solid rgba(0,169,157,.28);
}

@media (max-width: 1240px) {
  .contact-hero .page-hero-grid {
    grid-template-columns: 1fr;
  }
  .contact-panel {
    justify-self: start;
    max-width: 760px;
  }
}

@media (max-width: 980px) {
  .hardware-accordion {
    grid-template-columns: 1fr;
  }
  .hardware-stage {
    min-height: 560px;
  }
  .service-gallery {
    flex-direction: column;
    min-height: auto;
  }
  .service-panel,
  .service-panel.active {
    flex: none;
    min-height: 170px;
  }
  .service-panel.active {
    min-height: 560px;
  }
  .service-panel:not(.active) .service-panel-inner h2 {
    writing-mode: initial;
    transform: none;
    max-height: none;
  }
}

@media (max-width: 620px) {
  .hardware-tab:hover,
  .hardware-tab:focus-visible,
  .hardware-tab.active {
    transform: translateY(-2px);
  }
  .hardware-panel-copy {
    margin: 16px;
    padding: 20px;
  }
  .hardware-panel-copy h3 {
    font-size: clamp(2rem, 12vw, 3.4rem);
  }
  .service-panel.active {
    min-height: 640px;
  }
}


/* === v3 client revisions: click-only accordions/tabs and cleaner client-facing copy === */
.hero-actions .btn:nth-child(2){order:2}.hero-actions .btn:nth-child(3){order:3}
.hardware-tab small{display:none!important}.hardware-tab{cursor:pointer;text-align:left}.hardware-tab:hover{transform:none!important}.hardware-tab.active{background:linear-gradient(135deg,rgba(0,169,157,.16),rgba(255,255,255,.045));border-color:rgba(0,169,157,.45)}
.hardware-panel{display:none}.hardware-panel.active{display:block}
.service-gallery{display:none!important}
.service-tabs{display:grid;gap:28px}.service-tab-list{display:flex;gap:12px;overflow-x:auto;padding:4px 0 12px;scrollbar-width:thin}.service-tab{appearance:none;border:1px solid var(--line);background:rgba(255,255,255,.045);color:var(--soft);border-radius:999px;min-height:54px;padding:0 22px;display:inline-flex;align-items:center;gap:10px;font-family:Inter,system-ui,sans-serif;font-size:.85rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;cursor:pointer}.service-tab span{color:var(--orange)}.service-tab.active{color:#001;background:var(--teal);border-color:var(--teal);box-shadow:0 18px 38px rgba(0,169,157,.18)}.service-tab.active span{color:#001}.service-tab-stage{position:relative}.service-tab-panel{display:none;grid-template-columns:.82fr 1.18fr;gap:28px;align-items:stretch;min-height:560px}.service-tab-panel.active{display:grid}.service-tab-media{position:relative;overflow:hidden;border-radius:34px;border:1px solid var(--line);background:var(--graphite);box-shadow:var(--shadow);min-height:500px}.service-tab-media img{width:100%;height:100%;object-fit:cover;filter:grayscale(.1) contrast(1.18) brightness(.68) saturate(.9)}.service-tab-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.18) 48%,rgba(0,169,157,.22)),linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.62));pointer-events:none}.service-tab-copy{padding:44px;border-radius:34px;background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid var(--line);box-shadow:var(--shadow)}.service-tab-copy>span{display:inline-flex;margin-bottom:16px;color:var(--orange);font-weight:900;letter-spacing:.14em}.service-tab-copy h3{font-size:clamp(2.5rem,5vw,5.4rem);line-height:.88}.service-tab-copy p{margin-top:20px;color:var(--soft);font-size:1.08rem;max-width:760px}.service-tab-copy ul{list-style:none;margin-top:24px;display:grid;gap:12px}.service-tab-copy li{color:var(--soft);font-weight:700}.service-tab-copy li:before{content:"✓";color:var(--teal-2);margin-right:10px}.service-tab-copy .service-close{color:#fff;font-weight:900}.service-tab-copy a{display:inline-flex;margin-top:24px;color:var(--teal-2);font-weight:900}.detail-section .section-heading p{max-width:820px}
@media(max-width:980px){.service-tab-panel,.service-tab-panel.active{grid-template-columns:1fr}.service-tab-media{min-height:320px}.service-tab-copy{padding:28px}.service-tab-copy h3{font-size:clamp(2.2rem,10vw,4rem)}}


/* === Hardware page refinements v4 === */
.hardware-page .hardware-hero h1 {
  font-size: clamp(3.6rem, 7.4vw, 8.6rem);
  max-width: 900px;
  line-height: .88;
  letter-spacing: -.085em;
}

.hardware-page .hardware-hero .page-hero-grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
  gap: clamp(28px, 4vw, 70px);
}

.hardware-page .hardware-hero .page-hero-visual {
  align-self: center;
  max-width: 430px;
  justify-self: end;
}

.hardware-section-heading {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(360px, .78fr);
  gap: 54px;
  align-items: end;
  max-width: none;
}

.hardware-section-heading h2 {
  max-width: 760px;
}

.hardware-section-heading > p {
  max-width: 620px;
  margin: 0 0 10px;
  font-size: clamp(1.02rem, 1.22vw, 1.22rem);
  line-height: 1.65;
  color: var(--soft);
}

.hardware-tab:hover {
  transform: none;
  background: rgba(255,255,255,.045);
  border-color: var(--line);
}

.hardware-tab.active,
.hardware-tab:focus-visible {
  transform: translateX(8px);
  background: linear-gradient(135deg, rgba(0,169,157,.18), rgba(255,255,255,.055));
  border-color: rgba(0,169,157,.42);
}

.hardware-tab {
  display: grid;
  align-content: center;
  min-height: 104px;
  padding: 18px 22px;
}

.hardware-tab strong {
  font-size: clamp(1.05rem, 1.45vw, 1.38rem);
  line-height: 1.05;
  text-wrap: balance;
}

.hardware-panel-copy {
  width: min(680px, calc(100% - 56px));
}

.hardware-panel-copy h3 {
  font-size: clamp(2.35rem, 4.45vw, 4.7rem);
  line-height: .9;
  text-wrap: balance;
}

.hardware-panel-copy p {
  font-size: clamp(.98rem, 1.08vw, 1.08rem);
  line-height: 1.55;
}

.hardware-brand-cloud {
  padding: 112px 0;
  overflow: hidden;
}

.brand-ecosystem {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .62fr);
  gap: 34px 48px;
  align-items: start;
}

.brand-copy h2 {
  font-size: clamp(3rem, 6vw, 6.4rem);
  max-width: 930px;
}

.brand-copy p {
  max-width: 720px;
  margin-top: 22px;
  color: var(--soft);
  font-size: 1.08rem;
}

.brand-feature {
  position: relative;
  min-height: 360px;
  padding: 34px;
  border-radius: 34px;
  border: 1px solid rgba(0,169,157,.28);
  background:
    radial-gradient(circle at 88% 12%, rgba(0,169,157,.18), transparent 40%),
    linear-gradient(135deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
  box-shadow: var(--shadow);
}

.brand-feature::after {
  content: "";
  position: absolute;
  right: -64px;
  bottom: -70px;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  border: 1px solid rgba(0,169,157,.24);
  background: radial-gradient(circle, rgba(0,169,157,.18), transparent 60%);
}

.brand-feature span {
  display: inline-flex;
  margin-bottom: 22px;
  color: var(--orange);
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: .78rem;
}

.brand-feature strong {
  position: relative;
  z-index: 2;
  display: block;
  font-family: Archivo, Inter, sans-serif;
  font-size: clamp(2rem, 3.4vw, 3.4rem);
  line-height: .95;
  letter-spacing: -.055em;
}

.brand-feature p {
  position: relative;
  z-index: 2;
  margin-top: 18px;
  color: var(--soft);
  line-height: 1.6;
}

.logo-cloud-priority {
  grid-column: 1 / -1;
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  padding-top: 18px;
}

.logo-cloud-priority span {
  padding: 14px 18px;
}

.logo-cloud-priority .featured {
  padding: 18px 24px;
  border-color: rgba(0,169,157,.38);
  background: linear-gradient(135deg, rgba(0,169,157,.16), rgba(255,255,255,.055));
  color: #fff;
  font-size: clamp(1rem, 1.35vw, 1.18rem);
}

@media (max-width: 1100px) {
  .hardware-page .hardware-hero .page-hero-grid,
  .hardware-section-heading,
  .brand-ecosystem {
    grid-template-columns: 1fr;
  }
  .hardware-page .hardware-hero .page-hero-visual {
    justify-self: start;
    max-width: 520px;
  }
  .hardware-section-heading > p {
    max-width: 760px;
  }
}

@media (max-width: 780px) {
  .hardware-page .hardware-hero h1 {
    font-size: clamp(3rem, 14vw, 5.2rem);
  }
  .hardware-tab.active,
  .hardware-tab:focus-visible {
    transform: none;
  }
  .hardware-panel-copy {
    width: calc(100% - 36px);
    margin: 18px;
    padding: 22px;
  }
  .hardware-panel-copy h3 {
    font-size: clamp(2rem, 11vw, 3.4rem);
  }
  .brand-feature {
    min-height: auto;
  }
}


/* === Hardware refinements v5 === */
.hardware-page .hardware-hero .page-hero-grid {
  grid-template-columns: minmax(0, .72fr) minmax(420px, .52fr);
  align-items: center;
}

.hardware-page .hardware-hero h1 {
  font-size: clamp(3.05rem, 5.95vw, 7.05rem);
  max-width: 720px;
  line-height: .92;
  letter-spacing: -.078em;
}

.hardware-page .hardware-hero .lead {
  max-width: 660px;
}

.hardware-page .hardware-hero .page-hero-visual {
  position: relative;
  z-index: 4;
  max-width: 520px;
  justify-self: end;
  transform: translateY(18px);
}

.hardware-panel.active {
  display: grid !important;
  align-items: end;
}

.hardware-panel-copy {
  align-self: end;
  margin: auto 28px 28px 28px;
  width: min(680px, calc(100% - 56px));
}

.hardware-panel-copy h3 {
  max-width: 640px;
  font-size: clamp(2.1rem, 4vw, 4.35rem);
}

.hardware-panel-copy p {
  max-width: 610px;
}

.brand-visual-card {
  position: relative;
  min-height: 430px;
  border-radius: 38px;
  border: 1px solid rgba(0,169,157,.28);
  background:
    radial-gradient(circle at 72% 38%, rgba(0,169,157,.18), transparent 46%),
    linear-gradient(135deg, rgba(255,255,255,.07), rgba(255,255,255,.018));
  box-shadow: var(--shadow);
  overflow: hidden;
  display: grid;
  place-items: center;
  padding: 28px;
  align-self: center;
  margin-top: 64px;
}

.brand-visual-card::before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  right: -110px;
  bottom: -130px;
  border-radius: 50%;
  border: 1px solid rgba(0,169,157,.28);
  background: radial-gradient(circle, rgba(0,169,157,.16), transparent 58%);
}

.brand-visual-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 64px 64px;
  opacity: .2;
  pointer-events: none;
}

.brand-visual-card img {
  position: relative;
  z-index: 2;
  width: min(100%, 540px);
  max-height: 350px;
  object-fit: contain;
  filter: drop-shadow(0 30px 70px rgba(0,0,0,.45)) saturate(.95) contrast(1.05);
}

.brand-visual-orbit {
  position: absolute;
  z-index: 1;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  border: 1px solid rgba(0,169,157,.22);
  box-shadow: 0 0 80px rgba(0,169,157,.16);
}

@media (min-width: 1320px) {
  .hardware-page .hardware-hero h1 {
    font-size: clamp(3.2rem, 5.65vw, 6.8rem);
  }
}

@media (max-width: 1100px) {
  .hardware-page .hardware-hero .page-hero-grid {
    grid-template-columns: 1fr;
  }
  .hardware-page .hardware-hero h1 {
    max-width: 980px;
  }
  .hardware-page .hardware-hero .page-hero-visual {
    justify-self: start;
    transform: none;
  }
  .brand-visual-card {
    margin-top: 0;
  }
}

@media (max-width: 780px) {
  .hardware-page .hardware-hero h1 {
    font-size: clamp(2.7rem, 12vw, 4.7rem);
  }
  .hardware-panel-copy {
    margin: auto 18px 18px 18px;
    width: calc(100% - 36px);
  }
  .brand-visual-card {
    min-height: 320px;
  }
}


/* === V6 Servicios: hero 60/40 + tabs completas en dos líneas === */
.page-servicios .page-hero-grid{
  grid-template-columns:minmax(0, .6fr) minmax(320px, .4fr);
  gap:clamp(36px,4vw,70px);
  align-items:center;
}
.page-servicios .page-hero h1{
  max-width:930px;
  font-size:clamp(4.1rem,7.2vw,4.65rem);
  line-height:.88;
  letter-spacing:-.078em;
}
.page-servicios .page-hero .lead{
  max-width:720px;
  font-size:clamp(1.02rem,1.28vw,1.22rem);
}
.page-servicios .page-hero-visual{
  width:min(410px,100%);
  justify-self:center;
  min-height:560px;
  border-radius:36px;
}
.page-servicios .page-hero-visual img{
  object-fit:cover;
  object-position:center;
}

.page-servicios .service-tab-list{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:14px;
  overflow:visible;
  padding:0 0 34px;
}
.page-servicios .service-tab{
  flex:0 1 auto;
  min-width:210px;
  justify-content:center;
  white-space:nowrap;
  cursor:pointer;
}
.page-servicios .service-tab:nth-child(3){min-width:260px;}
.page-servicios .service-tab:nth-child(5){min-width:275px;}
.page-servicios .service-tab:nth-child(6){min-width:265px;}
.page-servicios .service-tab-stage{
  margin-top:6px;
}
.page-servicios .service-tab-panel{
  grid-template-columns:minmax(320px,.95fr) minmax(420px,1.05fr);
  gap:34px;
  align-items:stretch;
}
.page-servicios .service-tab-copy h3{
  font-size:clamp(2.7rem,4.4vw,5.1rem);
  line-height:.9;
}

@media (max-width:1100px){
  .page-servicios .page-hero-grid,
  .page-servicios .service-tab-panel{
    grid-template-columns:1fr;
  }
  .page-servicios .page-hero-visual{
    width:min(520px,100%);
    min-height:460px;
  }
  .page-servicios .page-hero h1{
    font-size:clamp(3.4rem,12vw,6rem);
  }
}
@media (max-width:760px){
  .page-servicios .service-tab-list{
    justify-content:flex-start;
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:20px;
    scroll-snap-type:x mandatory;
  }
  .page-servicios .service-tab{
    min-width:max-content;
    scroll-snap-align:start;
  }
  .page-servicios .page-hero-visual{
    min-height:360px;
  }
}

/* === V7 HOTFIX: estabilización de tabs en Hardware y Servicios === */
/* Evita que los tabs caigan a estilo nativo de navegador */
.hardware-tab,
.service-tab{
  -webkit-appearance:none;
  appearance:none;
  font:inherit;
  color:var(--white);
  border:1px solid rgba(255,255,255,.13);
  background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  box-shadow:none;
}

/* Hardware: acordeón por clic, distribución estable */
.hardware-accordion{
  display:grid!important;
  grid-template-columns:minmax(320px,.78fr) minmax(560px,1.22fr)!important;
  gap:34px!important;
  align-items:stretch!important;
}
.hardware-accordion-list{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  align-content:start!important;
}
.hardware-tab{
  width:100%!important;
  min-height:94px!important;
  padding:18px 22px!important;
  border-radius:26px!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  gap:14px!important;
  align-items:center!important;
  text-align:left!important;
  cursor:pointer!important;
  transition:border-color .25s var(--ease), background .25s var(--ease), transform .25s var(--ease)!important;
}
.hardware-tab:hover{transform:none!important;}
.hardware-tab span{
  color:var(--orange)!important;
  font-size:.82rem!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
}
.hardware-tab strong{
  font-family:Archivo,Inter,sans-serif!important;
  font-size:clamp(1.05rem,1.35vw,1.32rem)!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
}
.hardware-tab.active{
  border-color:rgba(0,169,157,.5)!important;
  background:linear-gradient(135deg,rgba(0,169,157,.16),rgba(255,255,255,.045))!important;
}
.hardware-stage{
  min-height:620px!important;
  border-radius:38px!important;
  overflow:hidden!important;
}
.hardware-panel{
  display:none!important;
  position:relative!important;
  min-height:620px!important;
  border-radius:38px!important;
  overflow:hidden!important;
  border:1px solid var(--line)!important;
  background:#11151b!important;
  box-shadow:var(--shadow)!important;
}
.hardware-panel.active{
  display:grid!important;
  align-items:end!important;
}
.hardware-panel img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  filter:grayscale(.08) contrast(1.16) brightness(.72) saturate(.86)!important;
}
.hardware-panel::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,rgba(0,0,0,.16),rgba(0,0,0,.72)),linear-gradient(90deg,rgba(0,0,0,.2),rgba(0,169,157,.18))!important;
  pointer-events:none!important;
}
.hardware-panel-copy{
  position:relative!important;
  z-index:2!important;
  align-self:end!important;
  margin:auto 28px 28px!important;
  width:min(720px,calc(100% - 56px))!important;
  padding:30px!important;
  border-radius:30px!important;
  background:linear-gradient(135deg,rgba(5,6,8,.88),rgba(12,30,31,.72))!important;
  border:1px solid rgba(255,255,255,.13)!important;
  backdrop-filter:blur(18px)!important;
}
.hardware-panel-copy h3{
  font-size:clamp(2rem,3.6vw,4.15rem)!important;
  line-height:.9!important;
  max-width:680px!important;
}
.hardware-panel-copy p{
  max-width:650px!important;
  color:var(--soft)!important;
}

/* Servicios: tabs horizontales completos, sin colapso visual */
.service-tabs{
  width:100%!important;
}
.service-tab-list{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  gap:14px!important;
  margin:0 auto 34px!important;
  padding:0!important;
  overflow:visible!important;
}
.service-tab{
  min-height:54px!important;
  padding:0 22px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  white-space:nowrap!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  font-size:.8rem!important;
  font-weight:900!important;
  cursor:pointer!important;
  transition:border-color .25s var(--ease), background .25s var(--ease), color .25s var(--ease)!important;
}
.service-tab span{
  color:var(--orange)!important;
  font-weight:900!important;
}
.service-tab.active{
  background:var(--teal)!important;
  border-color:var(--teal)!important;
  color:#001!important;
}
.service-tab.active span{color:#001!important;}
.service-tab-stage{
  position:relative!important;
}
.service-tab-panel{
  display:none!important;
  grid-template-columns:minmax(320px,.9fr) minmax(440px,1.1fr)!important;
  gap:34px!important;
  align-items:stretch!important;
}
.service-tab-panel.active{
  display:grid!important;
}
.service-tab-media,
.service-tab-copy{
  border-radius:34px!important;
  overflow:hidden!important;
  border:1px solid var(--line)!important;
  box-shadow:var(--shadow)!important;
}
.service-tab-media{
  position:relative!important;
  min-height:620px!important;
  background:#11151b!important;
}
.service-tab-media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  filter:grayscale(.08) contrast(1.16) brightness(.72) saturate(.86)!important;
}
.service-tab-media::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,169,157,.18)),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.58))!important;
  pointer-events:none!important;
}
.service-tab-copy{
  padding:clamp(28px,4vw,54px)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.026))!important;
  backdrop-filter:blur(14px)!important;
}
.service-tab-copy > span{
  display:inline-flex!important;
  margin-bottom:18px!important;
  color:var(--orange)!important;
  font-weight:900!important;
  letter-spacing:.15em!important;
}
.service-tab-copy h3{
  font-size:clamp(2.5rem,4.5vw,5.3rem)!important;
  line-height:.9!important;
  letter-spacing:-.065em!important;
  max-width:860px!important;
}
.service-tab-copy p,
.service-tab-copy li{
  color:var(--soft)!important;
  font-size:clamp(1rem,1.1vw,1.12rem)!important;
  line-height:1.55!important;
}
.service-tab-copy p{margin-top:22px!important;}
.service-tab-copy ul{
  list-style:none!important;
  display:grid!important;
  gap:10px!important;
  margin-top:22px!important;
}
.service-tab-copy li::before{
  content:"✓";
  color:var(--teal-2);
  margin-right:10px;
  font-weight:900;
}
.service-close{
  color:#fff!important;
  font-weight:900!important;
}
.service-tab-copy a{
  display:inline-flex!important;
  margin-top:22px!important;
  color:var(--teal-2)!important;
  font-weight:900!important;
}

@media (max-width:1100px){
  .hardware-accordion,
  .service-tab-panel{
    grid-template-columns:1fr!important;
  }
  .hardware-stage,
  .hardware-panel,
  .service-tab-media{
    min-height:520px!important;
  }
}
@media (max-width:760px){
  .service-tab-list{
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    overflow-x:auto!important;
    padding-bottom:18px!important;
    scroll-snap-type:x mandatory!important;
  }
  .service-tab{
    min-width:max-content!important;
    scroll-snap-align:start!important;
  }
  .hardware-tab{
    min-height:78px!important;
  }
  .hardware-stage,
  .hardware-panel,
  .service-tab-media{
    min-height:430px!important;
  }
  .hardware-panel-copy{
    margin:auto 18px 18px!important;
    width:calc(100% - 36px)!important;
    padding:22px!important;
  }
}

/* === V9 STABILITY PATCH: tabs/acordeones Servicios + Hardware === */
/* Refuerza los estilos de los controles para evitar que caigan a botones nativos. */
.page-servicios .service-tab-list,
#hardware-lista .hardware-accordion-list{
  list-style:none!important;
}

.page-servicios .service-tab-list{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(210px,1fr))!important;
  gap:14px!important;
  width:min(1180px,100%)!important;
  margin:0 auto 42px!important;
  padding:0!important;
  overflow:visible!important;
}

.page-servicios .service-tab{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:100%!important;
  min-height:58px!important;
  padding:0 20px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025))!important;
  color:rgba(255,255,255,.78)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  font-family:Inter,system-ui,sans-serif!important;
  font-size:.82rem!important;
  font-weight:900!important;
  line-height:1!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  box-shadow:none!important;
}

.page-servicios .service-tab span{
  display:inline-flex!important;
  color:var(--orange)!important;
  font-weight:900!important;
  margin:0!important;
}

.page-servicios .service-tab.active{
  background:var(--teal)!important;
  border-color:var(--teal)!important;
  color:#001!important;
  box-shadow:0 18px 38px rgba(0,169,157,.20)!important;
}

.page-servicios .service-tab.active span{color:#001!important;}

.page-servicios .service-tab-panel{display:none!important;}
.page-servicios .service-tab-panel.active{
  display:grid!important;
  grid-template-columns:minmax(320px,.9fr) minmax(440px,1.1fr)!important;
  gap:34px!important;
  align-items:stretch!important;
}

.page-servicios .service-tab-media,
.page-servicios .service-tab-copy{
  min-width:0!important;
  border-radius:34px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:var(--shadow)!important;
}

.page-servicios .service-tab-media{
  position:relative!important;
  min-height:560px!important;
  background:#11151b!important;
}

.page-servicios .service-tab-media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.page-servicios .service-tab-copy{
  padding:clamp(28px,4vw,54px)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.026))!important;
  backdrop-filter:blur(14px)!important;
}

.page-servicios .service-tab-copy h3{
  font-size:clamp(2.45rem,4.25vw,4.95rem)!important;
  line-height:.9!important;
  max-width:860px!important;
}

/* Hardware estable y sin colapso */
#hardware-lista .hardware-accordion{
  display:grid!important;
  grid-template-columns:minmax(320px,.78fr) minmax(560px,1.22fr)!important;
  gap:34px!important;
  align-items:stretch!important;
}

#hardware-lista .hardware-accordion-list{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  align-content:start!important;
  margin:0!important;
  padding:0!important;
}

#hardware-lista .hardware-tab{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:100%!important;
  min-height:92px!important;
  padding:18px 22px!important;
  border-radius:26px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.025))!important;
  color:#fff!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  gap:14px!important;
  align-items:center!important;
  text-align:left!important;
  cursor:pointer!important;
  font-family:Inter,system-ui,sans-serif!important;
  box-shadow:none!important;
}

#hardware-lista .hardware-tab span{
  color:var(--orange)!important;
  font-weight:900!important;
  font-size:.82rem!important;
  letter-spacing:.12em!important;
}

#hardware-lista .hardware-tab strong{
  font-family:Archivo,Inter,sans-serif!important;
  font-size:clamp(1.05rem,1.35vw,1.32rem)!important;
  line-height:1.05!important;
}

#hardware-lista .hardware-tab.active{
  border-color:rgba(0,169,157,.5)!important;
  background:linear-gradient(135deg,rgba(0,169,157,.16),rgba(255,255,255,.045))!important;
}

#hardware-lista .hardware-panel{display:none!important;}
#hardware-lista .hardware-panel.active{
  position:relative!important;
  display:grid!important;
  align-items:end!important;
  min-height:620px!important;
  border-radius:38px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.12)!important;
  background:#11151b!important;
  box-shadow:var(--shadow)!important;
}

#hardware-lista .hardware-panel img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

#hardware-lista .hardware-panel-copy{
  position:relative!important;
  z-index:2!important;
  align-self:end!important;
  margin:auto 28px 28px!important;
  width:min(720px,calc(100% - 56px))!important;
  padding:30px!important;
  border-radius:30px!important;
  background:linear-gradient(135deg,rgba(5,6,8,.88),rgba(12,30,31,.72))!important;
  border:1px solid rgba(255,255,255,.13)!important;
  backdrop-filter:blur(18px)!important;
}

@media(max-width:1100px){
  .page-servicios .service-tab-list{grid-template-columns:repeat(2,minmax(210px,1fr))!important;}
  .page-servicios .service-tab-panel.active,
  #hardware-lista .hardware-accordion{grid-template-columns:1fr!important;}
}

@media(max-width:760px){
  .page-servicios .service-tab-list{
    display:flex!important;
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    overflow-x:auto!important;
    padding-bottom:18px!important;
    scroll-snap-type:x mandatory!important;
  }
  .page-servicios .service-tab{min-width:max-content!important;scroll-snap-align:start!important;}
  #hardware-lista .hardware-panel.active,
  .page-servicios .service-tab-media{min-height:430px!important;}
  #hardware-lista .hardware-panel-copy{margin:auto 18px 18px!important;width:calc(100% - 36px)!important;padding:22px!important;}
}


/* === V10: ajustes finos solicitados — spacing y hero contacto === */
.section-dark {
  padding: 100px 0 !important;
  background: transparent !important;
  border-block: 0 !important;
}

.statement,
.services,
.proof,
.cta,
.detail-section,
.brand-cloud {
  padding: 100px 0 !important;
}

.page-contact h1,
.contact-hero h1 {
  max-width: 900px !important;
  font-size: clamp(4rem, 8vw, 6.6rem) !important;
  text-transform: uppercase !important;
}

@media (max-width: 780px) {
  .section-dark,
  .statement,
  .services,
  .proof,
  .cta,
  .detail-section,
  .brand-cloud {
    padding: 78px 0 !important;
  }

  .page-contact h1,
  .contact-hero h1 {
    font-size: clamp(3rem, 12vw, 4.8rem) !important;
  }
}


/* === V11 mobile service selector === */
.service-mobile-picker{
  display:none;
}

@media (max-width: 780px){
  .page-servicios .service-mobile-picker{
    display:grid;
    gap:10px;
    margin:0 0 22px;
  }

  .page-servicios .service-mobile-picker span{
    color:var(--orange);
    font-size:.78rem;
    font-weight:900;
    letter-spacing:.14em;
    text-transform:uppercase;
  }

  .page-servicios .service-mobile-picker select{
    width:100%;
    min-height:58px;
    padding:0 52px 0 18px;
    border:1px solid rgba(0,169,157,.38);
    border-radius:999px;
    background:
      linear-gradient(135deg, rgba(0,169,157,.22), rgba(255,255,255,.045));
    color:#fff;
    font:900 .9rem/1 Inter, system-ui, sans-serif;
    letter-spacing:.06em;
    text-transform:uppercase;
    box-shadow:0 18px 42px rgba(0,0,0,.24);
    appearance:auto;
  }

  .page-servicios .service-mobile-picker select:focus{
    outline:3px solid rgba(0,169,157,.45);
    outline-offset:3px;
  }

  .page-servicios .service-mobile-picker option{
    color:#071827;
    background:#fff;
  }

  .page-servicios .service-tab-list{
    display:none!important;
  }

  .page-servicios .service-tabs{
    gap:18px!important;
  }

  .page-servicios .service-tab-panel.active{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
}


/* === Footer + Aviso de privacidad === */
.footer-credit {
  max-width: 260px;
  margin: 0 0 16px 0;
  color: var(--soft);
  font-weight: 800;
  line-height: 1.35;
}
.footer-bottom a {
  color: var(--muted);
  font-weight: 800;
}
.footer-bottom a:hover,
.footer a:hover {
  color: var(--teal-2);
}
.page-aviso .site-header .nav-links a.active {
  color: var(--soft);
}
.aviso-hero {
  min-height: 72vh;
}
.page-aviso .page-hero h1,
.aviso-hero h1 {
  max-width: 980px;
  font-size: clamp(4rem, 8vw, 7.2rem);
  text-transform: uppercase;
}
.aviso-content {
  background: radial-gradient(circle at 88% 12%, rgba(0,169,157,.12), transparent 34%);
}
.aviso-layout {
  display: grid;
  grid-template-columns: minmax(0, 980px);
  justify-content: center;
}
.aviso-card {
  padding: clamp(28px, 5vw, 64px);
  border-radius: 36px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.052);
  box-shadow: var(--shadow);
  backdrop-filter: blur(18px);
}
.aviso-card h2 {
  margin-bottom: 22px;
  font-size: clamp(2rem, 4vw, 4rem);
}
.aviso-card p {
  margin: 0 0 20px;
  color: var(--soft);
  font-size: 1.05rem;
  line-height: 1.78;
}
.aviso-card strong {
  color: #fff;
}
@media (max-width: 780px) {
  .aviso-hero { min-height: auto; }
  .page-aviso .page-hero h1,
  .aviso-hero h1 { font-size: clamp(3rem, 14vw, 5.2rem); }
  .aviso-card { border-radius: 26px; }
}


/* === V13 Aviso de privacidad: hero sin imagen, texto centrado === */
.page-aviso .aviso-hero {
  min-height: 58vh;
  text-align: center;
}

.page-aviso .aviso-hero-grid {
  grid-template-columns: 1fr;
  max-width: 980px;
  margin-inline: auto;
  justify-items: center;
}

.page-aviso .aviso-hero h1 {
  margin-inline: auto;
}

.page-aviso .aviso-hero .lead {
  max-width: 760px;
  margin-inline: auto;
}
