
:root{
  --primary:#c7a239; /* dorado del logo */
  --secondary:#101010;
  --accent:#007f73;
  --bg:#ffffff;
  --muted:#f2f4f7;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Helvetica Neue',Arial,'Noto Sans',sans-serif;color:#222;background:var(--bg);}
a{color:var(--accent);text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{width:min(1100px,92vw);margin-inline:auto}
.btn{display:inline-block;padding:.9rem 1.2rem;border-radius:12px;background:var(--primary);color:#111;font-weight:700;border:none;cursor:pointer;transition:transform .1s ease,box-shadow .2s ease;box-shadow:0 6px 18px rgba(0,0,0,.08)}
.btn:hover{transform:translateY(-1px)}
.badge{display:inline-block;background:var(--muted);padding:.3rem .6rem;border-radius:999px;font-size:.85rem}
header.hero{position:relative;overflow:hidden;background:linear-gradient(120deg, rgba(0,0,0,.55), rgba(0,0,0,.35)), url('assets/regreso_clases.jpg') center/cover fixed no-repeat;color:#fff}
header.hero .inner{padding:90px 0}
nav.top{position:sticky;top:0;background:#fffbd8aa;backdrop-filter:saturate(160%) blur(8px);border-bottom:1px solid #eee;z-index:10}
nav .row{display:flex;align-items:center;justify-content:space-between;padding:.6rem 0}
.logo{display:flex;align-items:center;gap:.6rem}
.logo img{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid var(--primary)}
ul.menu{list-style:none;display:flex;gap:1rem;margin:0;padding:0;flex-wrap:wrap}
ul.menu a{padding:.4rem .6rem;border-radius:10px;color:#333}
ul.menu a:hover{background:#f5f5f5}
.grid{display:grid;gap:1.25rem}
.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.section{padding:64px 0}
.section h2{font-size:clamp(1.6rem,2.6vw,2.2rem);margin:0 0 .6rem}
.section p.lead{font-size:1.05rem;color:#444;max-width:70ch}
.card{background:#fff;border:1px solid #eee;border-radius:20px;overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.06)}
.card .pad{padding:1rem 1.1rem}
.features{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.feature{padding:1rem;border-radius:16px;background:var(--muted)}
.kpis{display:flex;gap:1rem;flex-wrap:wrap}
.kpi{background:#fff;border:1px solid #eee;border-radius:14px;padding:1rem 1.2rem;min-width:160px}
.gallery{columns:2;column-gap:1rem}
@media(min-width:900px){.gallery{columns:3}}
.gallery img{width:100%;margin:0 0 1rem;border-radius:16px}
.cta{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}
.whatsapp-float{position:fixed;right:18px;bottom:18px;background:#25D366;color:#fff;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(0,0,0,.2);z-index:50}
.whatsapp-float img{width:32px;height:32px}
footer{background:#0f1220;color:#d7d7e0;padding:28px 0;margin-top:40px}
footer a{color:#fff}
.map{width:100%;height:360px;border:0;border-radius:16px}
iframe{width:100%}
.notice{font-size:.9rem;color:#666}
.form{display:grid;gap:.8rem}
input,textarea{width:100%;padding:.9rem;border-radius:12px;border:1px solid #ddd;font-size:1rem;background:#fff}
label{font-weight:600;margin-bottom:.2rem;display:block}
.small{font-size:.86rem;color:#666}
