/* style.css - Mega YOga (tema claro, paleta suave y moderna) */
:root{
  --bg-grad: linear-gradient(135deg,#f7fbff 0%, #f2fbf9 50%, #fffafc 100%);
  --accent: #6ad1c0; /* menta */
  --accent-dark: #22bba1;
  --muted: #6b7280;
  --text: #0f1724;
  --card-bg: #ffffff;
  --shadow: 0 6px 18px rgba(15,23,36,0.06);
  --radius: 12px;
}

html, body { box-sizing: border-box; font-family: Inter, system-ui, -apple-system, 'Helvetica Neue', Arial; color:var(--text); background:var(--bg-grad); margin:0; padding:0; min-height:100%; }
*,*::before,*::after{box-sizing:inherit}
.container{ width:92%; max-width:1150px; margin:0 auto; }

/* Header */
.site-header{ backdrop-filter: blur(6px); position:sticky; top:0; z-index:40; background:rgba(255,255,255,0.65); border-bottom:1px solid rgba(15,23,36,0.04); }
.header-inner{ display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:0.9rem 0; }
.logo{ font-weight:700; color:var(--text); text-decoration:none; font-size:1.2rem; }
.logo span{ color:var(--accent-dark); }
.site-nav{ display:flex; gap:1rem; align-items:center; }
.site-nav a{ color:var(--text); text-decoration:none; padding:0.45rem 0.7rem; border-radius:8px; font-weight:500; }
.site-nav a.btn-outline{ border:1px solid rgba(15,23,36,0.06); padding:0.45rem 0.9rem; }
.nav-toggle{ display:none; background:transparent; border:none; font-size:1.25rem; }

/* Hero */
.hero{ position:relative; overflow:hidden; padding:3rem 0; }
.hero-overlay{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(255,255,255,0.7), rgba(255,255,255,0.45)); pointer-events:none; }
.hero-content{ display:grid; grid-template-columns:1fr 420px; gap:2rem; align-items:center; }
.hero-left{ padding:1rem 0; }
.hero h1{ font-size:2.1rem; margin:0 0 0.5rem; line-height:1.08; }
.lead{ color:var(--muted); margin-bottom:1rem; }
.hero-cta{ display:flex; gap:0.75rem; margin-bottom:1rem; }
.btn{ display:inline-block; text-decoration:none; border-radius:10px; padding:0.6rem 1rem; font-weight:600; }
.btn-primary{ background:var(--accent-dark); color:white; box-shadow:0 8px 20px rgba(34,187,161,0.18); }
.btn-ghost{ background:transparent; border:1px solid rgba(15,23,36,0.06); color:var(--text); }
.hero-features{ display:flex; gap:1rem; color:var(--muted); list-style:none; padding:0; margin:1rem 0 0; }
.hero-features li{ font-size:0.95rem; }
.hero-right img{ width:100%; border-radius:14px; object-fit:cover; box-shadow:var(--shadow); }

/* Sections */
.section{ padding:3rem 0; }
.section-header{ text-align:center; margin-bottom:2rem; }
.section-header h2{ margin:0 0 0.35rem; }
.section-header p{ color:var(--muted); margin:0; }

.section-light{ background:transparent; }
.section-accent{ background: linear-gradient(180deg, rgba(42,77,78,0.02), rgba(255,255,255,0.0)); }
.section-header.light h2, .section-header.light p{ color:var(--text); }

/* Cards */
.cards{ display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
.card{ background:var(--card-bg); border-radius:var(--radius); padding:0.6rem; box-shadow:var(--shadow); text-align:left; overflow:hidden; }
.card img{ width:100%; height:160px; object-fit:cover; border-radius:10px; display:block; }
.card h3{ margin:0.6rem 0 0.35rem; }
.card p{ margin:0; color:var(--muted); font-size:0.95rem; }

/* Pricing */
.pricing-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; align-items:start; }
.price-card{ background:var(--card-bg); border-radius:14px; padding:1.25rem; box-shadow:var(--shadow); text-align:center; }
.price-card.recommended{ border:2px solid var(--accent); transform:translateY(-6px); }
.price-card h3{ margin:0 0 0.5rem; }
.price{ font-size:1.8rem; margin:0 0 0.5rem; color:var(--text); }
.price span{ font-size:0.9rem; color:var(--muted); margin-left:0.3rem; }
.price-card ul{ list-style:none; padding:0; margin:0.6rem 0 1rem; color:var(--muted); }
.price-card li{ padding:0.2rem 0; }

/* Team */
.team-grid{ display:flex; gap:1rem; justify-content:space-between; }
.instructor{ background:var(--card-bg); border-radius:12px; padding:0.8rem; text-align:center; box-shadow:var(--shadow); }
.instructor img{ width:100%; height:180px; object-fit:cover; border-radius:10px; }
.instructor h4{ margin:0.6rem 0 0.25rem; }
.instructor p{ margin:0; color:var(--muted); font-size:0.92rem; }

/* Testimonials */
.testimonials{ display:flex; gap:1rem; }
blockquote{ background:var(--card-bg); padding:1rem; border-radius:12px; box-shadow:var(--shadow); color:var(--muted); margin:0; }
blockquote cite{ display:block; margin-top:0.6rem; color:var(--text); font-weight:600; }

/* Contact */
.contact-grid{ display:grid; grid-template-columns:1fr 340px; gap:1.25rem; align-items:start; }
.contact-form{ background:var(--card-bg); padding:1rem; border-radius:12px; box-shadow:var(--shadow); }
.form-row{ margin-bottom:0.8rem; }
.form-row label{ display:block; font-weight:600; margin-bottom:0.25rem; }
.form-row input[type='text'], .form-row input[type='email'], .form-row input[type='tel'], .form-row select, .form-row textarea{ width:100%; padding:0.55rem 0.6rem; border-radius:8px; border:1px solid rgba(15,23,36,0.06); background:transparent; }
.form-actions{ display:flex; gap:0.5rem; justify-content:flex-start; }
.contact-info{ background:transparent; padding:0.4rem; }
.contact-info .studio-card{ display:flex; gap:0.6rem; align-items:center; margin:0.8rem 0; }
.contact-info img{ width:78px; height:78px; border-radius:10px; object-fit:cover; box-shadow:var(--shadow); }
.muted{ color:var(--muted); }

/* Footer */
.site-footer{ padding:1.6rem 0; background:transparent; border-top:1px solid rgba(15,23,36,0.04); }
.footer-grid{ display:flex; gap:1rem; align-items:center; justify-content:space-between; }
.footer-links{ display:flex; gap:0.8rem; align-items:center; }
.footer-links a{ color:var(--muted); text-decoration:none; font-size:0.95rem; }
.footer-copy{ color:var(--muted); }

/* Responsive */
@media (max-width:1000px){
  .hero-content{ grid-template-columns:1fr 320px; }
  .cards{ grid-template-columns:repeat(2,1fr); }
  .team-grid{ flex-direction:row; }
}

@media (max-width:780px){
  .container{ width:94%; }
  .site-nav{ position:fixed; top:64px; right:12px; background:rgba(255,255,255,0.98); flex-direction:column; padding:0.8rem; border-radius:10px; box-shadow:var(--shadow); display:none; }
  .site-nav.open{ display:flex; }
  .nav-toggle{ display:block; }
  .hero-content{ grid-template-columns:1fr; }
  .hero-right{ order: -1; }
  .cards{ grid-template-columns:1fr; }
  .pricing-grid{ grid-template-columns:1fr; }
  .team-grid{ flex-direction:column; }
  .testimonials{ flex-direction:column; }
  .contact-grid{ grid-template-columns:1fr; }
  .footer-grid{ flex-direction:column; gap:0.6rem; text-align:center; }
}

@media (prefers-reduced-motion:reduce){ *{ transition:none !important } }
