/* Estilos compartidos de las páginas legales de iSoft / PULSO */
:root{
  --ink:#0A0E1A; --paper:#FFFFFF; --paper-2:#F4F6FB; --paper-3:#E9EDF6;
  --text:#0A0E1A; --text-2:#4A5468; --text-3:#818BA0;
  --line:rgba(10,14,26,0.10); --brand:#3B53FF; --brand-ink:#2438D8;
  --pulso:#C6F000; --r:16px; --r-sm:10px;
}
*{box-sizing:border-box; margin:0; padding:0;}
body{font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
     color:var(--text); background:var(--paper-2); line-height:1.7; -webkit-font-smoothing:antialiased;}
a{color:var(--brand); text-decoration:none;} a:hover{text-decoration:underline;}

.topbar{background:var(--ink); color:#fff;}
.topbar-inner{max-width:860px; margin:0 auto; padding:18px 24px; display:flex; align-items:center; justify-content:space-between; gap:16px;}
.brand{display:flex; align-items:center; gap:11px; font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:18px; color:#fff;}
.brand img{width:30px; height:30px; object-fit:contain;}
.brand b{color:var(--pulso);}
.back{color:rgba(255,255,255,0.72); font-size:14px; font-weight:600;}
.back:hover{color:#fff; text-decoration:none;}

.hero{max-width:860px; margin:0 auto; padding:48px 24px 8px;}
.kicker{display:inline-block; font-family:'Space Grotesk',sans-serif; font-size:12px; font-weight:600;
        letter-spacing:.14em; text-transform:uppercase; color:var(--brand);
        background:rgba(59,83,255,.08); padding:6px 12px; border-radius:999px; margin-bottom:16px;}
h1{font-family:'Space Grotesk',sans-serif; font-size:34px; line-height:1.15; letter-spacing:-.02em; margin-bottom:10px;}
.updated{color:var(--text-3); font-size:14px;}

.doc{max-width:860px; margin:24px auto 64px; padding:0 24px;}
.card{background:var(--paper); border:1px solid var(--line); border-radius:var(--r);
      padding:36px 40px; box-shadow:0 1px 2px rgba(10,14,26,.04);}
.intro{font-size:16.5px; color:var(--text-2); margin-bottom:8px;}
h2{font-family:'Space Grotesk',sans-serif; font-size:20px; letter-spacing:-.01em; margin:34px 0 12px; padding-top:8px;}
h2:first-of-type{margin-top:18px;}
h3{font-size:15.5px; font-weight:700; margin:18px 0 6px;}
p{margin-bottom:12px; color:var(--text-2);}
p strong, li strong{color:var(--text);}
ul,ol.body{margin:0 0 12px 0; padding-left:22px;} li{margin-bottom:7px; color:var(--text-2);}
.toc{background:var(--paper-2); border:1px solid var(--line); border-radius:var(--r-sm); padding:20px 24px; margin-bottom:8px;}
.toc h4{font-family:'Space Grotesk',sans-serif; font-size:13px; text-transform:uppercase; letter-spacing:.1em; color:var(--text-3); margin-bottom:12px;}
.toc ol{padding-left:20px; columns:2; column-gap:32px;} .toc li{margin-bottom:6px; font-size:14px;}
.note{background:rgba(59,83,255,.05); border-left:3px solid var(--brand); border-radius:0 var(--r-sm) var(--r-sm) 0;
      padding:14px 18px; margin:14px 0; font-size:14.5px; color:var(--text-2);}
.contact-box{background:var(--ink); color:#fff; border-radius:var(--r); padding:28px 32px; margin-top:28px;}
.contact-box h3{color:#fff; font-family:'Space Grotesk',sans-serif; margin-bottom:10px;}
.contact-box p{color:rgba(255,255,255,.7);} .contact-box a{color:var(--pulso);}

footer{max-width:860px; margin:0 auto; padding:24px; color:var(--text-3); font-size:13px; text-align:center;}

@media (max-width:640px){
  .card{padding:24px 22px;} h1{font-size:27px;} .toc ol{columns:1;}
  .topbar-inner,.hero,.doc,footer{padding-left:18px; padding-right:18px;}
}
