/* Teléfonos y tablets: lectura, interacción táctil y áreas seguras. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:110px}
img,svg{max-width:100%}
.hero-grid>*,.contact-grid>*,.about-grid>*,.maintenance-grid>*,.faq-grid>*{min-width:0}
.email,.legal-copy,.form-note,#form-status{overflow-wrap:anywhere}
.btn,.menu,.cookie-actions button{min-height:44px;touch-action:manipulation}
.text-link{min-height:44px}
.legal-links a,.cookie-settings button{display:inline-flex;align-items:center;min-height:44px}
.cookie-banner{bottom:max(12px,env(safe-area-inset-bottom));max-height:calc(100dvh - 24px - env(safe-area-inset-bottom));overscroll-behavior:contain}
.cookie-copy{min-width:0}.cookie-actions button{min-width:0}
.legal-table{overscroll-behavior-x:contain}
@media(max-width:1100px){
 .nav{height:80px}.nav .brand img{width:210px;height:auto}
 .menu{display:flex;align-items:center;justify-content:center;gap:12px;font-size:14px;padding:10px 14px}
 nav{display:none;position:absolute;top:80px;left:0;right:0;background:#07152b;color:white;padding:18px max(24px,env(safe-area-inset-right)) 24px max(24px,env(safe-area-inset-left));box-shadow:0 15px 25px #0b1f4420;max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain;font-size:15px}
 nav.open{display:flex;flex-direction:column;align-items:stretch;gap:4px}
 nav>a{display:flex;align-items:center;min-height:48px;padding:10px 8px}
 .nav .btn{font-size:14px;padding:14px 18px;justify-content:space-between;margin-top:10px}
 .lead{font-size:16px;line-height:1.8}.btn{font-size:14px}.text-link{font-size:13px}
 .section-heading>p,.feature-panel p,.support-list p,.service-card p,.about-copy>p,.contact-intro,details p{font-size:15px}
 .service-card li{font-size:13px;line-height:1.9;margin-bottom:6px}
 .support-list h3,.service-card h3{font-size:18px;line-height:1.4}
 .steps h3{font-size:17px}.steps p{font-size:14px}
 summary{font-size:15px;line-height:1.6;min-height:52px}
 .values{font-size:13px;line-height:1.7}.proof span{font-size:12px}
 label{font-size:13px}input,textarea{font-size:16px;min-height:48px;padding:12px;line-height:1.5}
 form h3{font-size:19px;line-height:1.5}form>p{font-size:14px}form .btn{font-size:14px}
 .form-note{font-size:12px!important;line-height:1.8}.email,.address p{font-size:14px}.address a{font-size:13px;display:inline-flex;align-items:center;min-height:44px}
 .address>span,.panel-label,.place{font-size:10px;line-height:1.7}
 .footer-main p,.footer-bottom,.legal-links,.cookie-settings button{font-size:12px}
 .cookie-copy p{font-size:13px}.cookie-actions button{font-size:14px}
 .legal-copy h1{font-size:34px}.legal-copy h2{font-size:24px;line-height:1.45}
 .legal-copy p,.legal-copy li{font-size:16px;line-height:1.85}
}
@media(min-width:601px) and (max-width:900px){
 .hero-grid{grid-template-columns:1fr;gap:36px}.hero-copy{max-width:650px}.hero h1{font-size:44px}.hero-copy .lead{max-width:620px}
 .hero-visual{width:100%;max-width:560px;height:410px;margin:0 auto}
 .section-heading{display:block}.section-heading>p{max-width:620px;margin-top:22px}
 .maintenance-grid,.contact-grid,.about-grid,.faq-grid{grid-template-columns:1fr;gap:34px}
 .feature-panel p,.contact-intro{max-width:100%}.steps{grid-template-columns:repeat(2,1fr);gap:32px}
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-row{grid-template-columns:1fr 1fr;gap:18px}
 .about-statement{max-width:600px}.values{grid-template-columns:1fr 1fr}.proof{gap:16px}.proof strong{font-size:16px}
}
@media(max-width:600px){
 .wrap{width:calc(100% - 40px)}.nav .brand img{width:185px}.menu{font-size:13px;padding:10px 12px;gap:8px}
 .topbar .wrap{font-size:10px}.topbar .wrap>span{max-width:55%;line-height:1.4}.topbar .wrap{height:auto;min-height:34px;padding-top:6px;padding-bottom:6px}
 .hero{padding-top:35px}.hero h1{font-size:clamp(29px,8.2vw,39px);line-height:1.25}.hero-copy .lead{font-size:16px}
 .eyebrow,.section-heading .eyebrow,.contact .eyebrow,.faq .eyebrow{font-size:10px;letter-spacing:1.4px;line-height:1.7}
 .hero-note{font-size:12px;line-height:1.7}.mini-icon{flex-shrink:0}.actions{gap:12px}.actions .text-link{font-size:13px}
 .hero-visual{height:330px}.network-center{width:140px;height:128px}.network-center strong{font-size:11px}.network-center span{font-size:8px}
 .network-node{font-size:8px}.node-laptop{left:10%;top:58px}.node-cloud{right:4%;top:58px}.node-server{left:10%;bottom:54px}.node-network{right:10%;bottom:54px}
 .proof div{align-items:flex-start;gap:14px}.proof strong{font-size:15px}.proof span{font-size:12px;max-width:60%;line-height:1.7}
 h2,.contact h2,.about-copy h2{font-size:29px}.feature-panel{padding:26px}.panel-line{font-size:12px;gap:13px}
 .service-card{padding:26px}.service-card p{min-height:0}.service-card li{font-size:14px}.steps{grid-template-columns:1fr;gap:24px}
 .steps article{padding-top:18px}.steps h3{margin-top:13px}.steps p{font-size:15px}.values{grid-template-columns:1fr;font-size:14px}
 .contact-grid{gap:32px}.contact-phone{font-size:29px}.email{font-size:14px}.form-row{grid-template-columns:1fr;gap:0}form{padding:24px 20px}
 .footer-main{gap:22px}.footer-main p{font-size:13px}.footer-bottom{gap:12px}.legal-links{gap:6px 22px}.legal-copy h1{font-size:31px}
 .cookie-banner{width:calc(100% - 24px);padding:20px;gap:16px}.cookie-copy h2{font-size:19px}.cookie-actions{gap:10px}.cookie-actions button{flex:1;min-height:48px}
 .legal-table table{font-size:14px}.legal-table th,.legal-table td{padding:12px}
}
@media(max-width:360px){.nav .brand img{width:166px}.hero h1{font-size:29px}.wrap{width:calc(100% - 32px)}.menu{padding:9px 10px}.form-note{font-size:12px!important}.cookie-banner{padding:17px}.cookie-copy p{font-size:12px}}
@media(max-height:500px) and (max-width:1100px){.cookie-banner{max-height:calc(100dvh - 16px);bottom:8px;padding:16px}.cookie-actions{position:sticky;bottom:-16px;background:#fff;padding:10px 0 0}.cookie-copy p{font-size:12px}header .nav{height:64px}nav{top:64px;max-height:calc(100dvh - 64px)}}
@media(hover:none){.btn:hover,.service-card:hover{transform:none}}

.contact-trap{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.btn:disabled{opacity:.7;cursor:wait;transform:none}#form-status{font-size:14px;line-height:1.7}#form-status[data-state="error"]{color:#a32222}#form-status[data-state="success"]{color:#116741}

.hero-animation{background:#0b1f44;isolation:isolate}.hero-animation::before{display:none}.hero-animation iframe{display:block;width:100%;height:100%;border:0;background:#0b1f44}.coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coverage-grid .service-card p{min-height:0}.coverage-grid .service-card p:last-child{margin-bottom:0}@media(max-width:600px){.coverage-grid{grid-template-columns:1fr}.hero-animation{height:auto;aspect-ratio:1.2}.hero-animation iframe{position:absolute;inset:0}.contact h1{font-size:clamp(29px,7.8vw,37px)}}

/* Redes y contacto directo: enlaces sin scripts de terceros. */
.social-links{display:flex;align-items:center;flex-wrap:wrap;gap:12px 25px;padding-top:24px;padding-bottom:28px;border-top:1px solid #28374d;margin-top:20px}.social-links>span{font-size:12px;color:#a5bdd9;margin-right:auto}.social-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:13px;color:#e5f2ff}.social-links a:hover{color:#54ceff}.social-links svg{width:20px;height:20px;flex-shrink:0}.whatsapp-float{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:70;display:flex;align-items:center;justify-content:center;gap:10px;min-width:58px;min-height:58px;padding:12px 19px;border-radius:32px;background:#087b46;color:#fff;box-shadow:0 5px 22px #042e4033;font-size:14px;font-weight:600;text-decoration:none;transition:background .2s,transform .2s}.whatsapp-float svg{width:30px;height:30px}.whatsapp-float:hover{background:#056237;transform:translateY(-2px)}.whatsapp-float:focus-visible,.social-links a:focus-visible,.contact-whatsapp:focus-visible{outline:3px solid #00a2ff;outline-offset:5px}body:has(#cookie-banner:not([hidden])) .whatsapp-float{visibility:hidden;pointer-events:none}.contact-whatsapp{display:flex;align-items:center;gap:12px;max-width:340px;min-height:64px;padding:13px 17px;margin-top:23px;border:1px solid #b7dccd;border-radius:12px;background:#edf8f2;color:#086d40;text-decoration:none;font-size:14px;font-weight:600}.contact-whatsapp svg{width:29px;height:29px;flex-shrink:0}.contact-whatsapp small{display:block;font-size:12px;font-weight:400;margin-top:4px}.contact-whatsapp>span:last-child{margin-left:auto}.contact-whatsapp:hover{background:#e1f3e9}@media(max-width:600px){.whatsapp-float{right:16px;bottom:max(18px,env(safe-area-inset-bottom));width:56px;height:56px;min-height:56px;min-width:56px;padding:12px}.whatsapp-float>span{display:none}.social-links{gap:8px 23px;padding-bottom:84px}.social-links>span{flex-basis:100%}.social-links a{font-size:12px}.contact-whatsapp{max-width:100%}}@media(prefers-reduced-motion:reduce){.whatsapp-float{transition:none}}@media print{.whatsapp-float{display:none}}
@media(min-width:601px){.social-links{padding-bottom:96px}}

/* Acceso discreto a telecomunicaciones desde la portada corporativa. */
.home-connect{padding:38px 0;background:#fff}.home-connect>.wrap{display:flex;align-items:center;justify-content:space-between;gap:35px;border:1px solid #d7e5f6;border-left:4px solid #0039ff;border-radius:10px;padding:30px 34px;background:#f7fbff}.home-connect .eyebrow{margin-bottom:12px}.home-connect h2{font-size:25px;letter-spacing:-.7px}.home-connect p:not(.eyebrow){font-size:14px;color:#5d6a7e;margin:14px 0 0}.home-connect .btn{flex-shrink:0}nav a[aria-current="page"]{color:#54ceff}
@media(min-width:1101px){.nav .brand img{width:220px}nav{gap:15px}.nav .btn{gap:12px;padding:12px 15px}}
@media(max-width:900px){.home-connect>.wrap{align-items:flex-start;flex-direction:column;gap:24px}}
@media(max-width:600px){.home-connect{padding:28px 0}.home-connect>.wrap{padding:25px 22px}.home-connect h2{font-size:23px}.home-connect .btn{width:100%;justify-content:space-between;gap:12px}}
