/* Precisa Tecnologias - sitio web (v3). Paleta del sistema de logotipos: azul marino, gris claro, blanco y cian. */
@font-face{font-family:Inter;src:url(/fuente/inter.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{
  --marca:#0B2A58;--acento:#00C7E8;--acento2:#0A9CC4;--enlace:#0B7896;
  --fondo:#FAFBFC;--blanco:#fff;--gris:#EEF0F3;--linea:#D9DCE1;--t:#0B2A58;--s:#55637A;
  --ok:#177A52;--inc:#BF3029;--ancho:1240px;--enc:68px
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--enc) + 16px)}
body{margin:0;font:16px/1.55 Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--t);background:var(--fondo)}
img{max-width:100%;height:auto;display:block}
a{color:var(--enlace)}
h1,h2,h3{color:var(--marca);margin:0;line-height:1.08}
h1{font-size:clamp(2.5rem,5.6vw,4.5rem);font-weight:600;letter-spacing:-.04em;line-height:1.02}
h2{font-size:clamp(1.75rem,3.2vw,2.6rem);font-weight:600;letter-spacing:-.03em}
h3{font-size:1.14rem;font-weight:650;letter-spacing:-.012em;line-height:1.25}
p{margin:0}
.ic{flex:none}
:focus-visible{outline:2px solid var(--acento2);outline-offset:3px}
.oculto{position:absolute;left:-9999px}
/* la pagina se arma sobre una reticula de lineas finas, como la hoja de un plano */
.ancho{max-width:var(--ancho);margin:0 auto;padding:0 32px;border-left:1px solid var(--linea);border-right:1px solid var(--linea)}
.sec{border-top:1px solid var(--linea)}
.sec>.ancho{padding-top:76px;padding-bottom:84px}
.sec .cab{max-width:44em;margin-bottom:40px}
.sec .cab p{color:var(--s);font-size:1.1rem;margin-top:14px}

/* botones y enlaces de accion */
.bt{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 22px;border-radius:6px;font:inherit;font-weight:600;font-size:.95rem;text-decoration:none;cursor:pointer;border:1.5px solid var(--marca);color:var(--marca);background:transparent;white-space:nowrap}
.bt:hover{background:var(--gris)}
.bt.osc{background:var(--marca);color:#fff}.bt.osc:hover{background:#12397A}
.bt.pri{background:var(--acento);border-color:var(--acento);color:var(--marca)}.bt.pri:hover{background:#4FD8F0}
.bt.cla{border-color:#fff;color:#fff}.bt.cla:hover{background:rgba(255,255,255,.12)}
.bt.chi{min-height:40px;padding:7px 16px;font-size:.9rem}
.acc{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.en{font-size:1.12rem;font-weight:550;color:var(--marca);text-decoration:none;border-bottom:1.5px solid var(--marca);padding-bottom:3px;display:inline-flex;gap:8px;align-items:center}
.en:hover{color:var(--enlace);border-color:var(--enlace)}
.pronto,.disp{display:inline-block;font-size:.74rem;font-weight:650;border-radius:99px;padding:3px 11px;letter-spacing:0;vertical-align:middle;white-space:nowrap}
.pronto{color:var(--marca);background:var(--gris)}
.disp{color:var(--ok);background:#E3F4EC}

/* encabezado con menus desplegables */
.enc{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--linea)}
.enc .dentro{max-width:var(--ancho);margin:0 auto;padding:0 32px;display:flex;align-items:center;gap:8px;height:var(--enc)}
.enc .logo{margin-right:18px}.enc .logo img{height:50px!important;width:auto}
.enc nav{display:flex;align-items:center;gap:2px}
.enc .it{position:relative}
.enc .it>button,.enc .it>a{font:inherit;font-weight:550;font-size:.93rem;color:var(--t);background:none;border:0;padding:10px 12px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:5px;border-radius:6px}
.enc .it>button:hover,.enc .it>a:hover,.enc .it.on>button,.enc .it.on>a{background:var(--gris)}
.enc .it>button::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.6}
.enc .panel{display:none;position:absolute;left:0;top:100%;min-width:250px;background:#fff;border:1px solid var(--linea);padding:14px 8px 10px;box-shadow:0 16px 40px rgba(11,42,88,.10)}
.enc .it:hover .panel,.enc .it:focus-within .panel,.enc .it.ab .panel{display:block}
.enc .panel span{display:block;font-size:.76rem;color:var(--s);padding:4px 14px 6px;font-weight:550}
.enc .panel span+a{margin-top:0}.enc .panel a+span{margin-top:12px}
.enc .panel a{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:9px 14px;color:var(--t);text-decoration:none;font-weight:550;font-size:.95rem;border-radius:5px}
.enc .panel a:hover{background:var(--gris)}
.enc .esp{flex:1}
.enc .apl{font-weight:550;font-size:.93rem;color:var(--t);text-decoration:none;padding:10px 10px;display:inline-flex;gap:6px;align-items:center;border-radius:6px;white-space:nowrap}
.enc .apl:hover{background:var(--gris)}.enc .apl .ic{color:var(--acento2)}
.enc .bmenu{display:none;border:0;background:none;padding:8px;color:var(--marca);cursor:pointer}

/* barra de estado de la red */
.barra{background:var(--marca);color:#fff;font-size:.86rem;font-weight:550}
.barra .dentro{max-width:var(--ancho);margin:0 auto;padding:9px 32px;display:flex;gap:10px 30px;justify-content:space-between;flex-wrap:wrap}
.barra a{color:#fff;text-decoration:none}.barra a:hover{text-decoration:underline}
.barra b{color:var(--acento);font-variant-numeric:tabular-nums}
.barra .pt{display:inline-block;width:8px;height:8px;border-radius:50%;background:#48D197;margin-right:9px;vertical-align:1px;box-shadow:0 0 0 3px rgba(72,209,151,.25)}
.barra .de{color:#C5D0E0}

/* portada */
.portada .ancho{display:grid;grid-template-columns:1.15fr 1fr;padding:0 0 0 32px}
.portada .izq{padding:72px 40px 76px 0;border-right:1px solid var(--linea)}
.portada .der{padding:76px 32px 76px 56px;display:flex;flex-direction:column;justify-content:center;gap:34px}
.portada .der p{font-size:1.12rem;line-height:1.6;color:var(--t);max-width:32em}
.portada .der .acc{gap:44px}
.tira{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--linea);border-top:1px solid var(--linea)}
.tira figure{margin:0;position:relative;background:var(--gris)}
.tira img{width:100%;height:560px!important;object-fit:cover}
.tira figcaption{position:absolute;left:18px;bottom:16px;background:#fff;color:var(--marca);font-weight:600;font-size:.9rem;padding:7px 13px;border-radius:5px}
.tira figcaption a{color:inherit;text-decoration:none}

/* accesos a las cuatro partes */
.accesos .ancho{display:grid;grid-template-columns:repeat(4,1fr);padding:0}
.accesos a{display:flex;flex-direction:column;gap:10px;padding:34px 30px 32px;text-decoration:none;color:var(--t);border-right:1px solid var(--linea);min-height:250px}
.accesos a:last-child{border-right:0}
.accesos a:hover{background:#fff}
.accesos img,.accesos .icg{width:54px;height:54px!important;margin-bottom:10px}
.accesos .icg{display:grid;place-items:center;border:2px solid var(--marca);border-radius:50%;color:var(--marca)}
.accesos p{color:var(--s);font-size:.95rem}
.accesos em{font-style:normal;margin-top:auto;font-weight:600;color:var(--marca);border-bottom:1.5px solid var(--marca);align-self:flex-start;padding-bottom:2px}

/* tarjetas de producto */
.prods{display:grid;grid-template-columns:repeat(4,1fr);padding:0 1px 1px 0}
.prod{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linea);margin:0 -1px -1px 0}
.prod .im{display:block;background:var(--gris)}
.prod .im img{width:100%;aspect-ratio:4/4.5;object-fit:cover}
.prod .cu{padding:22px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.prod h3{font-size:1.25rem}.prod h3 a{color:inherit;text-decoration:none}
.prod p{color:var(--s);font-size:.94rem}
.prod ul{list-style:none;margin:4px 0 0;padding:0;font-size:.89rem}
.prod li{padding:6px 0;border-top:1px solid var(--gris);display:flex;gap:8px}
.prod li .ic{color:var(--acento2);margin-top:3px}
.prod .cu>.acc{margin-top:auto;padding-top:12px}.prod .acc .bt{flex:1}
.precio{margin-top:auto;padding-top:8px;font-variant-numeric:tabular-nums}
.precio b{font-size:1.5rem;font-weight:650;letter-spacing:-.02em}.precio s{color:var(--s);font-size:.92rem;margin-left:8px}
.prod .precio+.acc{margin-top:0;padding-top:0}

/* comparativa y tablas */
.tw{overflow-x:auto;border:1px solid var(--linea);background:#fff}
table.cmp{border-collapse:collapse;width:100%;min-width:760px;font-size:.93rem}
.cmp th,.cmp td{text-align:left;padding:13px 18px;border-bottom:1px solid var(--linea);vertical-align:top}
.cmp thead th{background:var(--marca);color:#fff;font-weight:600;border-bottom:3px solid var(--acento)}
.cmp thead th a{color:#fff}
.cmp tbody th{font-weight:550;color:var(--s);width:20%;background:var(--fondo)}
.cmp tr:last-child th,.cmp tr:last-child td{border-bottom:0}
.cmp td.si{color:var(--ok);font-weight:600}
table.esp{border-collapse:collapse;width:100%;font-size:.95rem}
.esp th,.esp td{text-align:left;padding:12px 18px;border-bottom:1px solid var(--linea);vertical-align:top}
.esp th{width:36%;color:var(--s);font-weight:550;background:var(--fondo)}
.esp tr.g th{background:var(--marca);color:#fff;font-weight:600;border-bottom:3px solid var(--acento)}
.nota{margin-top:14px;color:var(--s);font-size:.9rem}

/* software y servicios */
.soft{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:start}
.filas{border-top:1px solid var(--linea)}
.filas a{display:grid;grid-template-columns:56px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid var(--linea);text-decoration:none;color:var(--t);align-items:start}
.filas a:hover h3{color:var(--enlace)}
.filas img{width:56px;height:56px!important}
.filas h3{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.filas p{color:var(--s);font-size:.95rem;margin-top:5px}
.marco{border:1px solid var(--linea);background:#fff;box-shadow:0 24px 60px rgba(11,42,88,.10)}
.marco .tb{height:30px;border-bottom:1px solid var(--linea);display:flex;gap:6px;align-items:center;padding:0 12px}
.marco .tb i{width:9px;height:9px;border-radius:50%;background:var(--linea)}
.marco figcaption{font-size:.84rem;color:var(--s);padding:10px 14px;border-top:1px solid var(--linea)}
figure{margin:0}

/* soluciones */
.sols{display:grid;grid-template-columns:repeat(4,1fr);padding:0 1px 1px 0}
.sols a{background:#fff;text-decoration:none;color:var(--t);display:flex;flex-direction:column;border:1px solid var(--linea);margin:0 -1px -1px 0}
.sols img,.sols .pend{width:100%;aspect-ratio:4/4.3;object-fit:cover}
.sols div.tx{padding:20px 22px 24px}
.sols p{color:var(--s);font-size:.93rem;margin-top:6px}
.sols a:hover h3{color:var(--enlace)}

/* espacio reservado para una foto o video que aun no existe */
.pend{background:var(--marca);display:grid;place-items:center;color:rgba(255,255,255,.16);overflow:hidden;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:44px 44px}
.pend svg{width:46%;max-width:260px;height:auto}

.tres{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.tres>div{padding:4px 34px 4px 0;margin-right:34px;border-right:1px solid var(--linea)}
.tres>div:last-child{border-right:0;margin-right:0;padding-right:0}
.tres .ic{color:var(--acento2);margin-bottom:14px}
.tres p{color:var(--s);margin-top:8px}

.faq{max-width:840px}
.faq details{border-bottom:1px solid var(--linea)}
.faq details:first-child{border-top:1px solid var(--linea)}
.faq summary{cursor:pointer;font-weight:600;padding:20px 40px 20px 0;list-style:none;position:relative;font-size:1.08rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:14px;font-size:1.6rem;font-weight:300;color:var(--acento2)}
.faq details[open] summary::after{content:"–"}
.faq details p{color:var(--s);padding:0 0 22px;max-width:44em}

.final>.ancho{display:flex;gap:30px;align-items:center;flex-wrap:wrap;padding-top:64px;padding-bottom:64px}
.final p{color:var(--s);margin-top:10px;font-size:1.08rem}
.pie{background:var(--marca);color:#C5D0E0;font-size:.93rem}
.pie .dentro{max-width:var(--ancho);margin:0 auto;padding:60px 32px 30px;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1.25fr;gap:34px}
.pie .mk{display:flex;align-items:center;gap:12px;color:#fff;font-weight:650;font-size:1.12rem;margin-bottom:14px}
.pie .mk img{height:48px!important;width:48px}
.pie h4{color:#fff;margin:0 0 12px;font-size:.95rem;font-weight:600}
.pie a{color:#C5D0E0;text-decoration:none;display:block;padding:4px 0}.pie a:hover{color:#fff}
.pie .lin{display:flex;gap:9px;align-items:flex-start;padding:4px 0}.pie .lin .ic{margin-top:3px;color:var(--acento)}
.pie .fin{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.16);padding-top:22px;margin-top:10px;font-size:.84rem;color:#A9B8CE}
.wa{position:fixed;right:18px;bottom:18px;z-index:60;background:var(--acento);color:var(--marca);border-radius:99px;padding:12px 18px 12px 14px;display:flex;gap:8px;align-items:center;font-weight:650;text-decoration:none;box-shadow:0 10px 26px rgba(11,42,88,.28)}
.wa:hover{background:#4FD8F0}

/* paginas interiores */
.cabp .ancho{display:grid;grid-template-columns:1.15fr 1fr;padding:0 0 0 32px}
.cabp .izq{padding:64px 40px 68px 0;border-right:1px solid var(--linea)}
.cabp .der{padding:64px 32px 68px 56px;display:flex;flex-direction:column;justify-content:center;gap:28px}
.cabp .der p{font-size:1.1rem;line-height:1.6;max-width:32em}
.cabp h1{font-size:clamp(2.2rem,4.6vw,3.6rem)}
.cabp .marca{display:flex;align-items:center;gap:14px;margin-bottom:26px}
.cabp .marca img{width:60px;height:60px!important}
.cabp .marca b{display:block;font-size:1.2rem;font-weight:700;letter-spacing:-.015em;line-height:1.1}
.cabp .marca span{display:block;font-size:.86rem;color:var(--s)}
.cabp .marca>div{border-left:2px solid var(--acento);padding-left:14px}
.banda img,.banda .pend{width:100%;height:440px!important;object-fit:cover}
.banda{border-top:1px solid var(--linea)}
.migas{padding:22px 0 0;font-size:.9rem;color:var(--s)}.migas a{color:var(--s)}
.ficha-p{display:grid;grid-template-columns:1.02fr .98fr;gap:52px;padding:26px 0 76px;align-items:start}
.gal .gr{border:1px solid var(--linea);overflow:hidden;background:var(--gris)}
.gal .gr img{width:100%;aspect-ratio:1/1.08;object-fit:cover}
.gal .mi{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.gal .mi button{border:2px solid transparent;padding:0;overflow:hidden;cursor:pointer;background:var(--gris);width:76px;height:76px}
.gal .mi button.on{border-color:var(--acento)}
.gal .mi img{width:100%;height:100%!important;object-fit:cover}
.ficha-p h1{font-size:clamp(2rem,3.8vw,3rem)}
.ficha-p .lema{color:var(--s);font-size:1.12rem;margin:14px 0 20px}
.ficha-p .acc{margin:22px 0 10px}
.ficha-p .txt p{margin-top:14px}
.lista{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:9px}
.lista li{display:flex;gap:10px;align-items:flex-start}.lista .ic{color:var(--acento2);margin-top:4px}
.blo{padding:0 0 76px}.blo h2{font-size:1.6rem;margin-bottom:18px}
.dosc{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.prosa{max-width:760px}.prosa p{margin-top:16px}.prosa h2{font-size:1.55rem;margin-top:44px}
.est{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:.82rem;padding:2px 10px;border-radius:99px}
.est.ok{color:var(--ok);background:#E3F4EC}.est.no{color:var(--inc);background:#FBE6E4}
.celdas{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--linea);border:1px solid var(--linea)}
.celdas.c3{grid-template-columns:repeat(3,1fr)}
.celdas>div,.celdas>a{background:#fff;padding:28px 28px 30px;text-decoration:none;color:var(--t)}
.celdas p{color:var(--s);margin:8px 0 0}
.celdas .ic{color:var(--acento2);margin-bottom:12px}
.celdas .acc{margin-top:18px}
.celdas h3{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
table.plan{border-collapse:collapse;width:100%;min-width:640px;font-size:.95rem}
.plan th,.plan td{text-align:left;padding:15px 18px;border-bottom:1px solid var(--linea);vertical-align:top}
.plan thead th{background:var(--marca);color:#fff;font-weight:600;border-bottom:3px solid var(--acento)}
.plan tbody th{width:24%;font-weight:600}
.plan tr:last-child th,.plan tr:last-child td{border-bottom:0}
.docs a{display:flex;gap:14px;align-items:center;padding:16px 4px;border-bottom:1px solid var(--linea);text-decoration:none;color:var(--t);font-weight:550}
.docs a:first-child{border-top:1px solid var(--linea)}
.docs a:hover{color:var(--enlace)}.docs .ic{color:var(--acento2)}
.docs small{margin-left:auto;color:var(--s);font-weight:400}

@media(max-width:1240px){
  .enc .dentro{gap:6px}
  .enc nav{display:none;position:absolute;top:var(--enc);left:0;right:0;background:#fff;border-bottom:1px solid var(--linea);flex-direction:column;align-items:stretch;padding:8px 20px 18px;max-height:calc(100vh - var(--enc));overflow:auto}
  .enc.ab nav{display:flex}
  .enc .it>button,.enc .it>a{width:100%;justify-content:space-between;padding:14px 6px;font-size:1.02rem;border-bottom:1px solid var(--gris);border-radius:0}
  .enc .panel{position:static;display:none;border:0;box-shadow:none;padding:6px 0 10px 8px;min-width:0}
  .enc .it:hover .panel,.enc .it:focus-within .panel{display:none}
  .enc .it.ab .panel{display:block}
  .enc .bmenu{display:block}
  .enc .apl.sec2{display:none}
  .prods,.sols{grid-template-columns:1fr 1fr}
  .accesos .ancho{grid-template-columns:1fr 1fr}
  .accesos a:nth-child(2){border-right:0}.accesos a:nth-child(-n+2){border-bottom:1px solid var(--linea)}
  .pie .dentro{grid-template-columns:1fr 1fr 1fr}
  .tira img{height:420px!important}
}
@media(max-width:820px){
  :root{--enc:60px}
  .ancho,.enc .dentro,.barra .dentro{padding-left:18px;padding-right:18px}
  .ancho{border-left:0;border-right:0}
  .enc .logo img{height:42px!important}
  .enc .apl span{display:none}
  .barra .de{display:none}
  .portada .ancho,.cabp .ancho{grid-template-columns:1fr;padding:0 18px}
  .portada .izq,.cabp .izq{padding:44px 0 26px;border-right:0}
  .portada .der,.cabp .der{padding:0 0 48px;gap:26px}
  .tira{grid-template-columns:1fr}.tira figure:nth-child(n+2){display:none}.tira img{height:380px!important}
  .sec>.ancho{padding-top:54px;padding-bottom:60px}
  .prods,.sols,.soft,.tres,.dosc,.ficha-p,.celdas,.celdas.c3{grid-template-columns:1fr}
  .accesos .ancho{grid-template-columns:1fr;padding:0}
  .accesos a{border-right:0;border-bottom:1px solid var(--linea);min-height:0;padding:26px 18px}
  .accesos a:last-child{border-bottom:0}
  .tres>div{border-right:0;margin-right:0;padding:0 0 24px;border-bottom:1px solid var(--linea);margin-bottom:24px}
  .tres>div:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
  .soft{gap:32px}.ficha-p{gap:26px;padding-bottom:54px}
  .banda img,.banda .pend{height:280px!important}
  .pie .dentro{grid-template-columns:1fr 1fr;padding-top:44px}
  .pie .dentro>div:first-child{grid-column:1/-1}
  .wa span{display:none}.wa{padding:14px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
