:root{
  --bg:#050b14;
  --panel:#091522;
  --text:#f4f9fd;
  --muted:#9eb1c1;
  --blue:#4cc8ff;
  --line:#1d3950;
  --soft:#0c1c2a;
  --electric:#32b9f4;
  --navy:#07111d;
  --sans:"Segoe UI",Inter,Arial,sans-serif;
}
body{background:
  radial-gradient(circle at 72% 8%,rgba(36,154,214,.13),transparent 26rem),
  linear-gradient(180deg,#050b14 0,#07111c 42%,#050b14 100%);letter-spacing:-.006em}
main{display:flex;flex-direction:column}
.hero{order:1}.solutions{order:2}.product-showcase{order:3}.ecosystem{order:4}.about{order:5}.closing{order:6}
.header{background:rgba(3,9,16,.92);border-bottom-color:rgba(91,190,236,.2);backdrop-filter:blur(18px)}
.header-inner{min-height:108px}.header .brand{width:96px;height:96px;overflow:visible}.header .official-logo{width:96px;height:96px;object-fit:contain;transform:none}
.desktop-nav{gap:30px}.desktop-nav a{position:relative;color:#aabac7}.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:2px;background:var(--electric);transition:right .2s}.desktop-nav a:hover::after{right:0}
.header-contact{background:#0d2131;border-color:#2e6c8d;border-radius:7px;color:#e7f7ff}
.hero{min-height:calc(100vh - 88px);padding-top:70px;background:linear-gradient(135deg,rgba(4,12,21,.35),rgba(4,12,21,.84)),radial-gradient(circle at 50% 45%,rgba(31,157,218,.2),transparent 38rem)}
.hero-intro{text-align:left;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.5fr);column-gap:70px;align-items:end}
.hero-eyebrow,.hero h1,.hero-description,.hero-actions{grid-column:1}.hero-eyebrow{justify-self:start;color:#74d3fb}.hero-eyebrow::before{width:8px;height:8px;border-radius:50%;background:#37c7ff;box-shadow:0 0 18px #37c7ff}.hero-eyebrow::after{display:none}
.hero h1{font-size:clamp(3.5rem,6.7vw,6.6rem);max-width:1100px;margin-top:31px;font-weight:650;line-height:.98;letter-spacing:-.065em}.hero h1 span{color:#80d8ff;font-weight:420}.hero-description{font-size:1.12rem;max-width:710px;margin-inline:0;color:#b1c3d2}.hero-actions{justify-content:flex-start}
.button{border-radius:7px}.button-primary{background:linear-gradient(135deg,#64d5ff,#2aaee8);color:#03101a;box-shadow:0 10px 34px rgba(38,175,232,.18)}.button-primary:hover{background:#91e2ff}.button-outline{border-color:#31526a;background:rgba(8,23,36,.66)}
.hero-art{height:520px;margin-top:54px;border:1px solid #24465d;border-radius:12px;overflow:hidden;background:radial-gradient(circle at 76% 24%,rgba(55,190,245,.15),transparent 25rem),linear-gradient(135deg,#071522,#030a12);box-shadow:0 30px 80px rgba(0,0,0,.32)}
.product-stage{position:relative;width:100%;height:100%;overflow:hidden;background-image:linear-gradient(rgba(75,153,193,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(75,153,193,.08) 1px,transparent 1px);background-size:36px 36px}
.stage-header{position:absolute;inset:0 0 auto;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:17px 21px;border-bottom:1px solid #24465d;background:rgba(4,13,22,.9);font:500 .72rem/1.5 var(--mono);letter-spacing:.09em;color:#9fc9de}.stage-status{display:flex;align-items:center;gap:9px;color:#79d7fa}.stage-status i,.system-rail i{width:7px;height:7px;border-radius:50%;background:#49d8a4;box-shadow:0 0 12px rgba(73,216,164,.7)}
.stage-copy{position:absolute;left:28px;top:91px;z-index:4;width:235px}.stage-copy span{display:block;color:#67cdf4;font:500 .7rem/1.5 var(--mono);letter-spacing:.12em}.stage-copy strong{display:block;margin-top:13px;color:#eefaff;font-size:1.35rem;line-height:1.35;font-weight:560;letter-spacing:-.025em}
.product-screen{position:absolute;margin:0;border:1px solid #356b8a;border-radius:8px;overflow:hidden;background:#091725;box-shadow:0 26px 55px rgba(0,0,0,.48);transition:transform .3s ease,border-color .3s ease}.product-screen:hover{border-color:#6ed4fb}.product-screen img{width:100%;height:calc(100% - 40px);object-fit:cover;object-position:top}.screen-bar{height:40px;padding:0 14px;display:flex;align-items:center;gap:12px;background:#0b1e2d;border-bottom:1px solid #28536d}.screen-bar span{font:600 .72rem/1 var(--mono);letter-spacing:.08em;color:#d7f2ff}.screen-bar small{margin-left:auto;font:500 .65rem/1 var(--mono);color:#73b9d7}.product-screen figcaption{position:absolute;left:14px;bottom:12px;padding:6px 9px;border:1px solid rgba(104,193,233,.45);border-radius:4px;background:rgba(3,12,20,.86);color:#d7eff9;font-size:.75rem}.screen-callvox{z-index:3;left:285px;top:80px;width:58%;height:365px;transform:rotate(-1deg)}.screen-callvox:hover{transform:rotate(0) translateY(-3px)}.screen-crm{z-index:2;right:-35px;top:125px;width:36%;height:300px;transform:rotate(2.2deg)}.screen-crm:hover{transform:rotate(1deg) translateY(-3px)}
.system-rail{position:absolute;left:27px;bottom:25px;z-index:5;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;width:224px}.system-rail span{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid #244b63;border-radius:5px;background:rgba(5,18,29,.9);color:#a9c8d8;font:500 .72rem/1 var(--mono)}.system-rail i{background:#45c8fb;box-shadow:0 0 10px rgba(69,200,251,.6)}
.hero-art .motion-toggle{right:18px;bottom:16px;position:absolute;z-index:8}
.hero-principles{margin-top:32px;padding:0;border:1px solid #1c3a50;border-radius:8px;background:#071522;overflow:hidden}.hero-principles>div{justify-content:flex-start;padding:22px 25px;background:linear-gradient(130deg,rgba(27,83,116,.18),transparent);border-color:#1c3a50}.principle-index{color:#50c9fb}.hero-principles strong{color:#eefaff;font-weight:600}
.section-space{padding-block:96px}.section-heading{align-items:flex-start}.eyebrow{color:#62c9f4;letter-spacing:.12em}h2{font-weight:620}h2 span{color:#7fb3cc}
.solutions{border-top:1px solid rgba(59,137,177,.18)}
.solution-navigation{padding:0;border:0;margin:6px 0 34px;gap:10px}.solution-navigation a{padding:10px 14px;border:1px solid #214057;border-radius:99px;background:#081725}.solution-navigation a:hover{background:#0d2639;border-color:#3a88af}
.solution-group{grid-template-columns:280px 1fr;gap:48px;padding:42px 0;border-top:1px solid #17344a}.group-intro{top:120px}.group-number{display:inline-grid;place-items:center;width:42px;height:42px;border:1px solid #2d6d91;border-radius:6px;background:#0a2132;color:#63d0ff}.solution-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.solution-row,.solution-row:first-child{grid-template-columns:45px 1fr 40px;align-items:start;min-height:178px;padding:24px;border:1px solid #1d4058;border-radius:9px;background:linear-gradient(145deg,rgba(15,42,61,.86),rgba(7,20,32,.86))}.solution-row:hover,.solution-row:focus-within{transform:translateY(-2px);background:linear-gradient(145deg,#12334a,#091b2a);border-color:#3a7fa4}.solution-icon{background:#0a2639;border-color:#2e6b8d;color:#6ad5ff}.solution-content h4{font-weight:620}.solution-content p{font-size:.94rem}.solution-open{width:38px;height:38px;border-color:#356884}.callvox-row{padding-left:24px;border-left:1px solid #1d4058;background:linear-gradient(145deg,rgba(15,42,61,.86),rgba(7,20,32,.86));box-shadow:none}
.product-showcase{width:min(1340px,calc(100% - 64px));padding-top:80px}.product-showcase+.solutions{padding-top:96px}.showcase-tabs{gap:10px}.showcase-tab{border-radius:8px;background:#081725;border-color:#24455d}.showcase-tab[aria-selected=true]{background:#123149;border-color:#48b8e8;box-shadow:inset 0 0 0 1px rgba(83,201,250,.2)}
.showcase-panel{border-radius:10px;border-color:#2a5672;box-shadow:0 30px 80px rgba(0,0,0,.28)}.showcase-bar{background:#071522}.showcase-caption{background:linear-gradient(90deg,#0b1b2a,#091521)}
.ecosystem{background:linear-gradient(180deg,#081724,#050d16);border-color:#1f4157}.architecture-map{border-radius:10px;border-color:#2a6383;background:linear-gradient(135deg,#123149,#071723);box-shadow:0 24px 60px rgba(0,0,0,.24)}.map-modules button,.map-core{border-radius:7px}.map-core{box-shadow:0 0 50px rgba(72,191,240,.08)}
.ecosystem-values article{padding:24px;border:1px solid #1d3d52;border-radius:8px;background:rgba(9,25,38,.62)}
.about-brand{border-radius:10px;border-color:#22445b;background:#02070c;box-shadow:0 25px 65px rgba(0,0,0,.3)}
.about-signature span{padding-left:18px;border-left:3px solid #35bdf4}
.closing-panel{border-radius:12px;border-color:#32779c;background:radial-gradient(circle at 92% 12%,rgba(64,198,250,.18),transparent 16rem),linear-gradient(120deg,#123149,#071521);box-shadow:0 25px 70px rgba(0,0,0,.28)}
.contact-card{border-radius:9px;border-color:#1f455e;background:#071725}.footer{border-color:#17374b}
@media(max-width:980px){.hero-intro{display:block}.solution-group{grid-template-columns:1fr}.group-intro{position:static}.solution-list{grid-template-columns:1fr 1fr}.stage-copy{width:190px}.screen-callvox{left:225px;width:62%}.screen-crm{width:40%}}
@media(max-width:800px){.header-inner{min-height:90px}.header .brand{width:78px;height:78px}.header .official-logo{width:78px;height:78px}.hero{min-height:auto;padding-top:48px}.hero h1{font-size:clamp(3rem,12vw,5rem)}.hero-art{height:470px}.stage-copy{left:19px;top:78px;width:200px}.stage-copy strong{font-size:1.14rem}.screen-callvox{left:20px;top:175px;width:78%;height:250px}.screen-crm{right:-28px;top:118px;width:48%;height:215px}.system-rail{display:none}.solution-list{grid-template-columns:1fr}.solution-row,.solution-row:first-child{min-height:auto}.product-showcase{width:calc(100% - 40px)}.ecosystem-values article{padding:18px}}
@media(max-width:480px){.header .brand{width:70px;height:70px}.header .official-logo{width:70px;height:70px}.hero{padding-top:35px}.hero h1{font-size:2.75rem}.hero-description br{display:none}.hero-actions{justify-content:stretch}.hero-actions .button{width:100%}.hero-art{height:390px}.stage-header>span:first-child{display:none}.stage-header{justify-content:flex-end}.stage-copy{top:70px;left:15px;width:180px}.screen-callvox{left:14px;top:157px;width:88%;height:205px}.screen-crm{right:-52px;top:99px;width:57%;height:170px}.screen-bar{height:32px;padding-inline:9px}.screen-bar small{display:none}.product-screen img{height:calc(100% - 32px)}.product-screen figcaption{display:none}.hero-principles{grid-template-columns:1fr}.hero-principles>div{flex-direction:row;border-right:0;border-bottom:1px solid #1c3a50}.hero-principles>div:last-child{border-bottom:0}.section-space{padding-block:68px}.solution-group{padding-block:30px}.ecosystem-values article{border-radius:7px}.about-signature span{padding-left:10px}}

/* Hero v2: identidad institucional DUOVOX sobre el mapa de conexiones de CallVox. */
.header{background:rgba(4,12,21,.86);border-bottom-color:rgba(255,244,173,.16)}
.header-inner{min-height:100px}.header .brand{width:102px;height:88px}.header .official-logo{width:102px;height:102px}
.desktop-nav a::after{background:#fff4ad}.header-contact{border-color:#6b684f;background:rgba(255,244,173,.06)}
.hero{isolation:isolate;min-height:760px;padding:0;background:#06111d;display:flex;flex-direction:column;justify-content:center}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,12,21,.93) 0%,rgba(4,12,21,.68) 43%,rgba(4,12,21,.2) 78%,rgba(4,12,21,.48) 100%),linear-gradient(180deg,rgba(4,12,21,.06),rgba(4,12,21,.74));pointer-events:none}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 74% 45%,rgba(55,199,255,.13),transparent 25rem);pointer-events:none}
.hero .hero-art{position:absolute;inset:0;z-index:-2;width:100%;height:100%;margin:0;border:0;border-radius:0;box-shadow:none;background:#06111d;overflow:hidden}
.hero .architecture-image{width:100%;height:100%;object-fit:cover;object-position:center 44%;filter:brightness(.78) contrast(1.08) saturate(1.15);opacity:.72;animation:architecture-drift 22s ease-in-out infinite}
.hero .motion-toggle{display:none!important}
.hero-layout{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(330px,.62fr);gap:clamp(55px,8vw,120px);align-items:center;padding-block:86px 56px;position:relative;z-index:2}
.hero .hero-intro{display:block;text-align:left}.hero .hero-eyebrow{display:inline-flex;color:#fff4ad;letter-spacing:.15em}.hero .hero-eyebrow::before{background:#fff4ad;box-shadow:0 0 18px rgba(255,244,173,.6)}
.hero h1{font-size:clamp(3.8rem,6.2vw,6.5rem);max-width:850px;margin-top:30px;line-height:.98}.hero h1 span{color:#76d7ff;font-weight:430}
.hero-description{max-width:650px;margin-top:29px;font-size:1.12rem;line-height:1.8;color:#c0cfda}.hero-actions{margin-top:34px}
.hero .button-primary{background:#fff4ad;color:#07111b;box-shadow:0 12px 40px rgba(255,244,173,.11)}.hero .button-primary:hover{background:#fff9d4}.hero .button-outline{border-color:#42677d;background:rgba(4,15,24,.45);backdrop-filter:blur(8px)}
.hero-ecosystem{border:1px solid rgba(128,207,240,.32);border-radius:12px;background:linear-gradient(145deg,rgba(8,29,44,.88),rgba(4,15,25,.78));box-shadow:0 30px 80px rgba(0,0,0,.32);backdrop-filter:blur(14px);overflow:hidden}
.ecosystem-head{padding:25px 25px 22px;border-bottom:1px solid rgba(93,176,215,.23)}.ecosystem-head>span{display:block;color:#75d5fa;font:500 .72rem/1.5 var(--mono);letter-spacing:.14em}.ecosystem-head>strong{display:block;margin-top:9px;font-size:1.24rem;font-weight:580;line-height:1.35}
.ecosystem-lines{padding:9px}.ecosystem-lines button{width:100%;display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:center;text-align:left;padding:14px 15px;border-radius:7px;background:transparent;border:1px solid transparent;transition:background .2s,border-color .2s}.ecosystem-lines button:hover,.ecosystem-lines button:focus-visible{background:rgba(42,132,172,.14);border-color:rgba(89,194,239,.3)}.ecosystem-lines button>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #43697e;border-radius:50%;color:#fff4ad;font:500 .7rem/1 var(--mono)}.ecosystem-lines strong{display:block;font-size:.98rem;font-weight:580}.ecosystem-lines small{display:block;margin-top:3px;color:#96b3c3;font-size:.78rem;letter-spacing:.015em}.hero-ecosystem>p{padding:17px 24px;border-top:1px solid rgba(93,176,215,.2);color:#7898aa;font:500 .68rem/1.65 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.hero-principles{position:relative;z-index:2;margin-top:0;margin-bottom:32px;border-color:rgba(113,192,228,.2);background:rgba(5,19,30,.72);backdrop-filter:blur(12px)}.hero-principles>div{background:transparent;border-color:rgba(113,192,228,.18)}.principle-index{color:#fff4ad}
@media(max-width:980px){.hero{min-height:auto}.hero-layout{grid-template-columns:1fr;gap:42px;padding-block:70px 38px}.hero .hero-intro{max-width:760px}.hero-ecosystem{width:min(100%,620px)}.hero::before{background:linear-gradient(180deg,rgba(4,12,21,.72),rgba(4,12,21,.6) 50%,rgba(4,12,21,.82))}.hero .architecture-image{object-position:63% center;opacity:.65}}
@media(max-width:800px){.header-inner{min-height:88px}.header .brand{width:78px;height:78px}.header .official-logo{width:78px;height:78px}.hero-layout{padding-top:58px}.hero h1{font-size:clamp(3.1rem,11vw,5rem)}.hero-description{font-size:1.02rem}.hero-principles{margin-bottom:22px}}
@media(max-width:480px){.header .brand{width:68px;height:68px}.header .official-logo{width:68px;height:68px}.hero-layout{gap:34px;padding-block:44px 30px}.hero h1{font-size:2.7rem}.hero .hero-eyebrow{font-size:.7rem;letter-spacing:.09em}.hero .hero-actions{display:grid;grid-template-columns:1fr}.hero-ecosystem{border-radius:9px}.ecosystem-head{padding:20px}.ecosystem-lines button{padding:12px}.hero-ecosystem>p{padding:14px 18px}.hero-principles{margin-bottom:18px}}

/* Navegación DUOVOX: una secuencia técnica inspirada en los nodos del isotipo. */
.desktop-nav{align-self:stretch;gap:0;margin-left:auto;border-inline:1px solid rgba(255,244,173,.12)}
.desktop-nav a{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:116px;padding:0 20px;border-right:1px solid rgba(255,244,173,.12);transition:background .22s,color .22s}
.desktop-nav a::after{display:none}
.desktop-nav a:hover,.desktop-nav a:focus-visible{background:linear-gradient(180deg,rgba(255,244,173,.02),rgba(255,244,173,.09));color:#f6fbff}
.nav-index{font:500 .62rem/1 var(--mono);letter-spacing:.14em;color:#fff4ad;opacity:.68;transition:opacity .22s}
.nav-label{margin-top:9px;font-size:.9rem;line-height:1;font-weight:500}
.desktop-nav a:hover .nav-index,.desktop-nav a:focus-visible .nav-index{opacity:1}
.header-contact{position:relative;display:grid;grid-template-columns:12px 1fr 18px;align-items:center;gap:13px;min-height:60px;margin-left:18px;padding:10px 15px;border:0;border-left:1px solid rgba(255,244,173,.45);border-radius:0;background:linear-gradient(90deg,rgba(255,244,173,.08),rgba(255,244,173,.015));color:#f4f8fb;transition:background .22s,border-color .22s}
.header-contact::before,.header-contact::after{content:"";position:absolute;right:0;width:20px;height:1px;background:rgba(255,244,173,.42)}
.header-contact::before{top:0}.header-contact::after{bottom:0}
.header-contact:hover,.header-contact:focus-visible{background:linear-gradient(90deg,rgba(255,244,173,.15),rgba(255,244,173,.04));border-left-color:#fff4ad}
.contact-node{width:8px;height:8px;border:1px solid #fff4ad;border-radius:50%;box-shadow:0 0 12px rgba(255,244,173,.56)}
.contact-copy{display:flex;flex-direction:column;min-width:112px}
.contact-copy small{font:500 .58rem/1 var(--mono);letter-spacing:.14em;color:#a8bbc9}
.contact-copy strong{margin-top:7px;font-size:.88rem;line-height:1;font-weight:600}
.header-contact .icon{width:17px;height:17px;color:#fff4ad}
@media(max-width:1120px){.desktop-nav a{min-width:98px;padding-inline:15px}.header-contact{margin-left:10px}.contact-copy{min-width:96px}}
@media(max-width:800px){.header-contact{display:grid;min-height:48px;margin-left:auto;padding:8px 12px;grid-template-columns:10px 1fr 16px}.contact-copy{min-width:75px}.contact-copy small{display:none}.contact-copy strong{margin-top:0}.header-contact .icon{width:15px;height:15px}}
@media(max-width:480px){.header-contact{gap:9px;padding-inline:10px}.contact-copy{min-width:auto}.contact-copy strong{font-size:.8rem}.contact-node{width:7px;height:7px}}
