/* Claro, limpio y legible */
:root{
  --bg:#ffffff;
  --surface:#f7f8fb;
  --card:#ffffff;
  --ink:#0b1220;
  --muted:#5a6477;
  --brand:#0ea5e9;
  --accent:#7c3aed;
  --ok:#22c55e;
  --border:#e6e9f2;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;
  color:var(--ink);
  background:var(--surface);
}
img{max-width:100%; height:auto; display:block}
a{color:var(--brand); text-decoration:none}
.container{max-width:1100px; margin:0 auto; padding:24px}
.header{display:flex; align-items:center; justify-content:space-between; gap:16px; background:var(--bg)}
.logo{display:flex; align-items:center; gap:10px; font-weight:800; font-size:20px; color:var(--ink)}
.logo .logo-text span{color:var(--accent)}
.brand-logo{height:42px; width:auto}
.nav a{margin:0 8px; color:var(--ink)}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 16px; border-radius:12px; font-weight:600; border:1px solid var(--border);
  background:#f3f6fb; color:var(--ink); box-shadow:0 2px 6px rgba(0,0,0,.04);
}
.btn--primary{background:#e6f6ff; border-color:#bee3ff}
.btn--ghost{background:#fff}
.btn--whatsapp{background:#e8f8ee; border-color:#cbeed7}
.hero{display:grid; grid-template-columns:1.2fr 1fr; gap:24px; align-items:center; background:var(--bg); border-bottom:1px solid var(--border)}
.hero__text h1{font-size:44px; line-height:1.05; margin:.2em 0}
.hero__text em{font-style:normal; color:var(--brand)}
.hero__media img{width:100%; border-radius:14px; border:1px solid var(--border); background:#fff}
.cta-row{display:flex; gap:12px; flex-wrap:wrap; margin:18px 0}
.micro{color:var(--muted); font-size:12px}
.grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:18px}
.card{background:var(--card); border:1px solid var(--border); border-radius:14px; padding:18px}
.gallery{display:grid; grid-template-columns:repeat(6,1fr); gap:8px; margin-top:18px}
.gallery img{width:100%; height:140px; object-fit:cover; border-radius:12px; border:1px solid var(--border); background:#fafbff}
.location .map-wrap{margin-top:12px; border-radius:12px; overflow:hidden; border:1px solid var(--border); background:#fff}
.contact{display:grid; gap:18px; margin-top:18px}
.contact-cards{display:flex; gap:10px; flex-wrap:wrap}
.card.link{display:inline-flex; padding:12px 14px; align-items:center}
.contact-form{display:grid; gap:12px; background:var(--card); border:1px solid var(--border); border-radius:12px; padding:16px}
.contact-form label{display:grid; gap:6px; color:var(--muted)}
input, textarea{border:1px solid var(--border); background:#fff; color:var(--ink); border-radius:10px; padding:10px}
.footer{display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid var(--border); margin-top:28px; background:var(--bg)}
.legal{font-size:14px; color:var(--muted); padding-bottom:48px}
/* Botón flotante de WhatsApp */
.wa-float{position:fixed; right:16px; bottom:16px; width:56px; height:56px;
display:flex; align-items:center; justify-content:center;
background:var(--ok); color:#0b0d14; border-radius:50%;
border:1px solid #1b212f10; box-shadow:0 10px 24px rgba(0,0,0,.12);
font-size:26px; text-decoration:none;}
.wa-float:hover{ transform:translateY(-1px); }

/* --- Mejora móvil (oct 2025) --- */
:root{ --tap: 48px; }
@media (max-width: 640px){
  .container{padding:16px}
  .hero{grid-template-columns:1fr; gap:16px}
  .hero__text h1{font-size:32px; line-height:1.15}
  .hero__media img{border-radius:12px}
  .btn{width:100%; min-height:var(--tap); font-size:16px}
  .cta-row{gap:8px}
  .grid-3{grid-template-columns:1fr; gap:12px}
  .card{padding:14px}
  .gallery{grid-template-columns:repeat(2, 1fr); gap:6px}
  .gallery img{height:120px}
  .location .map-wrap iframe{height:320px}
  .footer{flex-direction:column; align-items:flex-start; gap:8px}
}
@media (min-width:641px) and (max-width: 900px){
  .hero{grid-template-columns:1fr; gap:20px}
  .gallery{grid-template-columns:repeat(3, 1fr)}
  .btn{min-height:var(--tap)}
}
body{word-break:break-word; -webkit-text-size-adjust:100%}
a, .btn{touch-action:manipulation}
