/* Estilos de las paginas interiores (servicios y notas).
   La home tiene su propio style.css; esto es mas chico y se comparte. */
:root{
  --ink:#0B0B0D;--surf:#121419;--surf2:#171A21;--linea:#23262F;
  --texto:#E9EBF1;--tenue:#9AA0B0;--azul:#3B82F6;--azul-2:#60A5FA;--verde:#22C55E;
}
*{box-sizing:border-box}
body{margin:0;background:var(--ink);color:var(--texto);font:16px/1.7 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
.wrap{max-width:900px;margin:0 auto;padding:0 20px}
.angosto{max-width:720px}
a{color:var(--azul-2)}
a:focus-visible,button:focus-visible{outline:2px solid var(--azul);outline-offset:2px}

header.barra{border-bottom:1px solid var(--linea);position:sticky;top:0;background:rgba(11,11,13,.92);backdrop-filter:blur(8px);z-index:5}
.barra .wrap{display:flex;align-items:center;gap:16px;padding-block:14px}
.marca{display:inline-flex;align-items:center;gap:10px;color:var(--texto);text-decoration:none;font:800 15px/1 Manrope,Inter,sans-serif;letter-spacing:.02em}
.marca svg{width:24px;height:24px;fill:currentColor}
.marca em{display:block;font:500 10px/1.4 Inter,sans-serif;font-style:normal;color:var(--tenue);letter-spacing:.14em;text-transform:uppercase}
.barra nav{margin-left:auto;display:flex;gap:18px;align-items:center;font-size:14px}
.barra nav a{color:var(--tenue);text-decoration:none}
.barra nav a:hover{color:var(--texto)}

.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:10px;text-decoration:none;font-weight:600;font-size:15px}
.btn.primario{background:var(--azul);color:#fff}
.btn.primario:hover{background:var(--azul-2)}
.btn.suave{background:var(--surf2);border:1px solid var(--linea);color:var(--texto)}

h1{font:800 clamp(30px,5.4vw,46px)/1.08 Manrope,Inter,sans-serif;letter-spacing:-.03em;margin:0 0 16px;text-wrap:balance}
h2{font:700 clamp(21px,3.2vw,29px)/1.2 Manrope,Inter,sans-serif;letter-spacing:-.02em;margin:46px 0 14px;text-wrap:balance}
h3{font:700 18px/1.3 Manrope,Inter,sans-serif;margin:26px 0 6px}
p,li{color:#C9CEDA}
.lead{font-size:18px;color:#D5D9E2;max-width:70ch}
.hero{padding:64px 0 8px}
.eyebrow{font:600 12px/1 Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--azul-2);margin:0 0 14px}
.acciones{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 8px}
.dato{display:flex;gap:10px;flex-wrap:wrap;color:var(--tenue);font:500 13px/1 JetBrains Mono,monospace;margin-top:18px}
.dato span{background:var(--surf);border:1px solid var(--linea);border-radius:999px;padding:7px 12px}

.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:18px}
.tarjeta{background:var(--surf);border:1px solid var(--linea);border-radius:12px;padding:18px 20px}
.tarjeta p{margin:0;font-size:15px}
.planes{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin-top:20px}
.plan{background:var(--surf);border:1px solid var(--linea);border-radius:14px;padding:22px 20px;display:flex;flex-direction:column}
.plan .plazo{font:500 12px/1 JetBrains Mono,monospace;color:var(--azul-2);letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px}
.plan ul{list-style:none;padding:0;margin:12px 0 0}
.plan li{position:relative;padding-left:22px;margin-bottom:8px;font-size:15px}
.plan li::before{content:"";position:absolute;left:2px;top:9px;width:7px;height:7px;border-radius:50%;background:var(--verde)}

ul.limpia{list-style:none;padding:0;margin:14px 0}
ul.limpia li{position:relative;padding-left:26px;margin-bottom:10px}
ul.limpia li::before{content:"";position:absolute;left:4px;top:10px;width:8px;height:8px;border-radius:50%;background:var(--verde)}
ul.no li::before{background:#F43F5E}

.chat{background:var(--surf);border:1px solid var(--linea);border-radius:14px;padding:16px;display:grid;gap:8px;max-width:520px;margin-top:18px}
.msg{padding:9px 13px;border-radius:12px;font-size:15px;max-width:85%}
.msg.de-ellos{background:var(--surf2);justify-self:start;border-top-left-radius:4px}
.msg.de-nosotros{background:#16284a;justify-self:end;border-top-right-radius:4px}

table{border-collapse:collapse;width:100%;margin:18px 0;font-size:15px}
th,td{border-bottom:1px solid var(--linea);padding:10px 8px;text-align:left;vertical-align:top}
th{color:var(--texto);font-weight:600}
td{color:#C9CEDA}
.tabla{overflow-x:auto}

details{border-top:1px solid var(--linea);padding:14px 0}
details summary{cursor:pointer;font-weight:600;color:var(--texto);list-style:none}
details summary::-webkit-details-marker{display:none}
details summary::before{content:"+ ";color:var(--azul-2)}
details[open] summary::before{content:"– "}
details p{margin:10px 0 0}

.cierre{background:var(--surf);border:1px solid var(--linea);border-radius:16px;padding:28px 24px;margin:48px 0 0;text-align:center}
.aviso{background:var(--surf);border:1px solid var(--linea);border-left:3px solid var(--azul);border-radius:10px;padding:14px 18px;margin:20px 0}
.aviso p{margin:0}

.fecha{color:var(--tenue);font-size:13px;margin:0 0 18px}
.notas{display:grid;gap:14px;margin-top:22px}
.nota-card{display:block;background:var(--surf);border:1px solid var(--linea);border-radius:14px;padding:20px 22px;text-decoration:none}
.nota-card:hover{border-color:#3a3f4b}
.nota-card h2{font-size:20px;margin:0 0 8px;color:var(--texto)}
.nota-card p{margin:0;font-size:15px}
.nota-card .fecha{margin:10px 0 0}

footer.pie{border-top:1px solid var(--linea);margin-top:56px;padding:26px 0 40px;color:var(--tenue);font-size:14px}
footer.pie .wrap{display:flex;gap:16px;flex-wrap:wrap;justify-content:space-between}
footer.pie a{color:var(--tenue)}

@media (max-width:640px){.barra nav a:not(.btn){display:none}}
