:root{
    --bg: #F6F9FF;
    --card: #FFFFFF;
    --muted: #6B7280;
    --accent: #2563EB; /* azul profesional */
    --accent-600: #1D4ED8;
    --glass: rgba(37,99,235,0.06);
    --radius: 12px;
    --container: 1100px;
    --max-width: 1100px;
}

*{box-sizing: border-box}
html,body{height:100%}
body{
    margin:0;
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    background: linear-gradient(180deg,#f8fbff 0%, var(--bg) 100%);
    color:#0f172a;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    line-height:1.6;
}

.container{max-width:var(--container);margin:0 auto;padding:1.25rem;width:95%;}

.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;background:#111;color:#fff;padding:.5rem .75rem;border-radius:6px}

.site-header{background:transparent;padding:.75rem 0}
.header-inner{display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;gap:.75rem;align-items:center}
.logo{width:64px;height:auto;border-radius:8px;object-fit:cover}
.site-title{margin:.1rem 0 0;font-size:1.125rem}
.tagline{margin:0;font-size:.85rem;color:var(--muted)}

.nav{position:relative}
.nav-menu{display:flex;gap:1rem;list-style:none;margin:0;padding:0;align-items:center}
.nav-menu li a{color:var(--muted);text-decoration:none;font-weight:600;padding:.35rem .5rem;border-radius:8px}
.nav-menu li a:hover{color:var(--accent-600);background:rgba(37,99,235,0.03)}
.nav-toggle{display:none;background:transparent;border:0;font-size:1.25rem;padding:.25rem .5rem;cursor:pointer}
.nav-toggle .hamburger{font-size:1.35rem;line-height:1}


.hero{padding:2.5rem 0;background:linear-gradient(90deg, rgba(37,99,235,0.06), rgba(99,102,241,0.02));border-radius:14px;margin-top:.5rem}
.hero-title{font-size:1.75rem;margin:0 0 .25rem}
.hero-sub{color:var(--muted);margin:0 0 .75rem}
.hero-lead{margin:0 0 1rem;color:#0f172a}

.btn-primary{display:inline-block;background:var(--accent);color:#fff;padding:.6rem .9rem;border-radius:8px;text-decoration:none;font-weight:600;box-shadow:0 6px 18px rgba(37,99,235,0.12);transition:transform .15s ease,box-shadow .15s ease}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(37,99,235,0.18)}
.btn-outline{display:inline-block;border:2px solid var(--accent);color:var(--accent);padding:.5rem .85rem;border-radius:8px;text-decoration:none;font-weight:600}

.content-grid{display:grid;grid-template-columns:1fr 320px;gap:1.5rem;margin-top:1.25rem;align-items:start}

.card{background:var(--card);border-radius:var(--radius);padding:1.25rem;box-shadow:0 6px 20px rgba(15,23,42,0.04);}
.policy-card h3{margin-top:0}
.muted{color:var(--muted);margin-top:0}

.details .meta{margin-top:1rem;border-top:1px dashed #eee;padding-top:.75rem;color:var(--muted)}
.small{font-size:.9rem;color:var(--muted)}

.cta{margin:2rem 0}
.cta-inner{display:flex;gap:1rem;align-items:center;justify-content:center;background:var(--glass);padding:1rem;border-radius:12px}
.cta-text{margin:0;font-weight:600;text-align:center}

.site-footer{margin-top:2.5rem;padding:1rem 0;background:transparent}
.footer-inner{display:flex;justify-content:space-between;gap:1rem;align-items:center;color:var(--muted)}

/* Responsive */
@media (max-width:900px){
    .content-grid{grid-template-columns:1fr;}
    /* show toggle, hide horizontal menu */
    .nav-menu{display:none}
    .nav-toggle{display:inline-flex}
    .nav-menu.open{display:flex;flex-direction:column;position:absolute;right:1rem;top:64px;background:var(--card);padding:1rem;border-radius:12px;box-shadow:0 10px 30px rgba(15,23,42,0.12);width:calc(100% - 2rem);max-width:360px}
    .nav-menu.open li{margin:0}
    .nav-menu.open li a{display:block;padding:.7rem 1rem}
    .cta-inner{flex-direction:column;align-items:flex-start}
    .footer-inner{flex-direction:column;align-items:flex-start}

    /* compact header */
    .logo{width:48px}
    .site-title{font-size:1rem}
    .hero{padding:1.25rem 0}
    .hero-title{font-size:1.35rem}
    .hero-lead{font-size:0.98rem}

    /* buttons full width on small screens */
    .btn-primary,.btn-outline{display:block;width:100%;text-align:center}
}

@media (max-width:480px){
    .container{padding:0.75rem}
    .nav-menu.open{right:.75rem;top:56px;width:calc(100% - 1.5rem)}
    .hero-title{font-size:1.15rem}
}

/* Print friendly */
@media print{
    body{background:#fff;color:#000}
    .nav,.hero,.cta{display:none}
    .card{box-shadow:none}
}

/* Accessibility: focus outlines */
a:focus,button:focus{outline:3px solid rgba(37,99,235,0.18);outline-offset:2px}

/* Utility */
.muted{color:var(--muted)}
