/* Tecnoia.gt · estilos compartidos de las páginas de servicio y de Nosotros (generado por gen.py) */
:root{--fondo:#FFFFFF;--fondo2:#EEF0F4;--hoja:#FFFFFF;--tinta:#1F2937;--texto2:#4B5563;--linea:#E5E7EB;--azul:#007AFF;--cian:#00D2FF;--noche:#071A3D;--noche2:#0B2D6B;--sobre-noche2:#A9B6CC;--grad:linear-gradient(135deg,#0B2D6B,#0066E0);--sombra:0 1px 2px rgba(11,45,107,.06),0 12px 32px -14px rgba(11,45,107,.22);--titulos:"Montserrat","Segoe UI",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--fondo);color:var(--tinta);font:16.5px/1.65 var(--titulos);-webkit-font-smoothing:antialiased}
a{color:inherit}h1,h2,h3{margin:0;letter-spacing:-.02em;line-height:1.2}p{margin:0}
.ico{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ancho{max-width:960px;margin-inline:auto;padding-inline:20px}
header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--linea)}
header .ancho{display:flex;align-items:center;justify-content:space-between;gap:12px;height:68px}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;font:700 19px/1 var(--titulos);letter-spacing:-.03em}.marca img{width:34px;height:34px}
.volver{text-decoration:none;color:var(--texto2);font-size:15px;min-height:44px;display:inline-flex;align-items:center;padding:0 14px;border-radius:10px;border:1px solid var(--linea);background:var(--hoja);white-space:nowrap}.volver:hover{border-color:var(--azul);color:var(--tinta)}
.migas{margin:0;padding:22px 0 0;list-style:none;display:flex;flex-wrap:wrap;gap:6px;font-size:14px;color:var(--texto2)}.migas li+li::before{content:"›";margin-right:6px}.migas a{text-decoration:none}.migas a:hover{color:var(--azul)}
.portada{padding-block:clamp(28px,6vw,64px) clamp(28px,5vw,48px)}
.tile{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:var(--grad);color:#fff;box-shadow:0 10px 20px -10px rgba(0,122,255,.7)}
.tile .ico{width:28px;height:28px}
.lema{margin-top:22px;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--azul)}
h1{margin-top:8px;font-size:clamp(30px,4.6vw,46px);font-weight:800;max-width:20ch}
.lead{margin-top:16px;font-size:clamp(17px,1.9vw,19px);color:var(--texto2);max-width:62ch}
.acciones{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 22px;border-radius:14px;border:1px solid transparent;font:700 16px/1 var(--titulos);text-decoration:none;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .25s,border-color .2s}
.btn:hover{transform:translateY(-2px)}.btn .ico{width:20px;height:20px}
.btn-1{background:var(--grad);color:#fff;box-shadow:0 10px 26px -10px rgba(0,122,255,.7)}
.btn-2{background:var(--hoja);border-color:var(--linea);box-shadow:var(--sombra)}.btn-2:hover{border-color:var(--cian)}
section{padding-block:clamp(30px,5vw,52px);scroll-margin-top:80px}
section h2{font-size:clamp(22px,2.8vw,28px);font-weight:800}
.sub{margin-top:8px;color:var(--texto2);max-width:62ch}
.prosa p{margin-top:14px;color:var(--texto2);max-width:68ch}.prosa p:first-of-type{margin-top:12px}
.tarjetas{margin:22px 0 0;padding:0;list-style:none;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.tarjetas li{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:start;padding:18px;border-radius:18px;background:var(--hoja);border:1px solid var(--linea);box-shadow:var(--sombra)}
.tarjetas li .ico{color:var(--azul);grid-row:span 2;margin-top:2px}
.tarjetas b{font-weight:700}.tarjetas span{color:var(--texto2);font-size:15.5px;grid-column:2}
.pasos{margin:22px 0 0;padding:0;list-style:none;counter-reset:p;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.pasos li{counter-increment:p;padding:16px;border-radius:16px;background:var(--fondo2);border:1px solid var(--linea)}
.pasos li::before{content:counter(p);display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--grad);color:#fff;font-weight:800;font-size:14px;margin-bottom:8px}
.pasos b{display:block}.pasos span{color:var(--texto2);font-size:15px}
.gris{background:var(--fondo2);border-block:1px solid var(--linea)}
.faq{margin-top:22px;display:grid;gap:10px}
.faq details{border:1px solid var(--linea);border-radius:18px;background:var(--hoja);box-shadow:var(--sombra)}
.faq details[open]{border-color:color-mix(in srgb,var(--cian) 60%,var(--linea))}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;cursor:pointer;list-style:none;font:600 17px/1.35 var(--titulos)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ico{color:var(--azul);transition:transform .3s cubic-bezier(.16,1,.3,1)}.faq details[open] summary .ico{transform:rotate(45deg)}
.faq details p{padding:0 20px 18px;color:var(--texto2);max-width:66ch}
.otros{margin:22px 0 0;padding:0;list-style:none;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.otros a{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:18px;border:1px solid var(--linea);background:var(--hoja);text-decoration:none;box-shadow:var(--sombra);transition:border-color .2s,transform .2s}
.otros a:hover{border-color:var(--azul);transform:translateY(-2px)}
.otros .tile{flex:none;width:44px;height:44px;border-radius:12px}.otros .tile .ico{width:22px;height:22px}
.otros b{display:block;font-weight:700}.otros small{color:var(--texto2);font-size:14px}
.cierre{margin-block:clamp(20px,4vw,40px) clamp(40px,7vw,80px);padding:clamp(26px,5vw,44px);border-radius:24px;background:var(--grad);color:#fff;display:grid;gap:14px;justify-items:start}
.cierre h2{font-size:clamp(22px,3vw,30px)}.cierre p{color:#DCE7FA;max-width:58ch}
.cierre .btn{background:#fff;color:var(--noche2)}
footer{border-top:1px solid var(--linea);padding:26px 20px;text-align:center;color:var(--texto2);font-size:14.5px;display:grid;gap:6px}footer b{color:var(--tinta);font-weight:600}footer a{text-decoration:none}footer a:hover{color:var(--azul)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.otros a,.faq summary .ico{transition:none}}
.sprite{position:absolute}
.horario{margin-top:16px}
/* Nosotros */
.banda{background:radial-gradient(120% 140% at 85% 0%,#0066E0 0%,#0B2D6B 45%,#071A3D 100%);color:#fff;border-radius:0 0 28px 28px}
.banda .migas{color:var(--sobre-noche2)}.banda .lema{color:#7FE6FF}.banda .lead{color:#C9D6EC}.banda h1{max-width:18ch}
.banda .tile{background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.banda .btn-2{background:transparent;color:#fff;border-color:rgba(255,255,255,.35);box-shadow:none}.banda .btn-2:hover{border-color:#7FE6FF}
.valores{margin:22px 0 0;padding:0;list-style:none;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.valores li{padding:20px;border-radius:20px;background:var(--hoja);border:1px solid var(--linea);box-shadow:var(--sombra)}
.valores .tile{width:46px;height:46px;border-radius:13px;margin-bottom:12px}.valores .tile .ico{width:23px;height:23px}
.valores b{display:block;font-size:17px}.valores span:not(.tile){color:var(--texto2);font-size:15.5px}
.ficha{margin-top:22px;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;padding:22px;border-radius:22px;background:var(--hoja);border:1px solid var(--linea);box-shadow:var(--sombra)}
.ficha .tile{width:72px;height:72px;border-radius:20px}.ficha .tile .ico{width:34px;height:34px}
.ficha small{color:var(--azul);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:12.5px}
.ficha strong{display:block;font-size:22px;letter-spacing:-.02em}.ficha span:not(.tile){color:var(--texto2)}
.ciudades{margin:22px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.ciudades li{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:var(--hoja);border:1px solid var(--linea);font-weight:600}
.ciudades .ico{width:18px;height:18px;color:var(--azul)}
@media (max-width:520px){.ficha{grid-template-columns:1fr}}
