:root{
  --black:#101010;
  --ink:#17120d;
  --gold:#f4bd5d;
  --gold-soft:#ffe3ad;
  --sand:#fff6e8;
  --sea:#0d6f7c;
  --white:#ffffff;
  --shadow:0 20px 60px rgba(0,0,0,.22);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Montserrat,Arial,sans-serif;color:var(--ink);background:var(--sand);overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.site-header{position:relative;background:var(--black);color:var(--white)}
.navbar{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:14px 6vw;background:rgba(16,16,16,.76);backdrop-filter:blur(16px);border-bottom:1px solid rgba(244,189,93,.18)}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.brand img{width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid rgba(244,189,93,.55)}
.nav-links{display:flex;align-items:center;gap:22px;font-weight:700;font-size:.9rem}
.nav-links a{color:#fff;opacity:.9}.nav-links a:hover{color:var(--gold);opacity:1}
.lang-btn,.menu-toggle{border:1px solid rgba(244,189,93,.55);background:rgba(244,189,93,.13);color:var(--gold);border-radius:999px;padding:9px 14px;font-weight:800;cursor:pointer}
.menu-toggle{display:none;font-size:1.2rem}
.hero{min-height:100vh;position:relative;display:grid;place-items:center;padding:120px 6vw 70px;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:url('assets/img/portada.jpg') center/cover no-repeat;filter:saturate(1.05)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.56),rgba(0,0,0,.18)),radial-gradient(circle at 70% 20%,rgba(244,189,93,.2),transparent 35%)}
.hero-content{position:relative;max-width:760px;margin-right:auto;padding-top:30px}
.hero-logo{width:126px;height:126px;border-radius:50%;object-fit:cover;border:2px solid var(--gold);box-shadow:0 18px 40px rgba(0,0,0,.45);margin-bottom:22px}
.eyebrow,.section-kicker{display:inline-flex;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:800;font-size:.78rem;margin-bottom:12px}
h1,h2,h3{margin:0;font-family:'Playfair Display',serif;line-height:1.02}
h1{font-size:clamp(2.8rem,7vw,6.7rem);max-width:900px;text-shadow:0 12px 30px rgba(0,0,0,.55)}
h2{font-size:clamp(2rem,4vw,4rem)}
h3{font-size:1.6rem}
.hero-text{font-size:clamp(1rem,2vw,1.25rem);line-height:1.75;max-width:700px;color:rgba(255,255,255,.92)}
.hero-actions,.contact-buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 24px;font-weight:900;transition:.25s;box-shadow:0 12px 28px rgba(0,0,0,.16);border:none;cursor:pointer}
.btn.primary{background:linear-gradient(135deg,var(--gold),#ffdc8a);color:#211408}.btn.secondary{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);color:#fff;backdrop-filter:blur(8px)}
.btn:hover{transform:translateY(-3px)}
.section{padding:90px 6vw}.intro{display:grid;grid-template-columns:1.3fr .7fr;gap:30px;align-items:stretch;background:linear-gradient(180deg,#fff8ec,var(--sand))}
.intro-card,.card,.promo-band,.contact-form,.contact-info,.social-card{background:rgba(255,255,255,.76);border:1px solid rgba(244,189,93,.34);border-radius:30px;box-shadow:var(--shadow)}
.intro-card{padding:46px}.intro-card p,.section-heading p,.card p,.contact-info p{line-height:1.8;color:#584b3a}
.stats-grid{display:grid;gap:18px}.stats-grid div{padding:28px;border-radius:26px;background:#141414;color:#fff;border:1px solid rgba(244,189,93,.42)}
.stats-grid strong{display:block;color:var(--gold);font-size:2.2rem;font-family:'Playfair Display',serif}.stats-grid span{font-weight:700}
.section-heading{text-align:center;max-width:850px;margin:0 auto 44px}.section-heading .section-kicker{justify-content:center}
.experiences{background:#fff}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{padding:34px;transition:.3s}.card:hover{transform:translateY(-8px)}.icon{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:#111;color:#fff;font-size:2rem;margin-bottom:22px}
.promo-band{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#121212,#2a2117);color:#fff}.promo-band h2{max-width:850px}.promo-band .section-kicker{color:var(--gold-soft)}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery-item{border:0;padding:0;border-radius:24px;overflow:hidden;cursor:pointer;background:#000;box-shadow:0 14px 32px rgba(0,0,0,.18);aspect-ratio:1/1}.gallery-item:nth-child(2){grid-column:span 2;aspect-ratio:2/1}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.35s}.gallery-item:hover img{transform:scale(1.08);opacity:.88}
.video-section{background:#111;color:#fff}.video-wrap{max-width:980px;margin:auto;border:1px solid rgba(244,189,93,.38);border-radius:30px;overflow:hidden;box-shadow:var(--shadow);background:#000}.video-wrap iframe{width:100%;aspect-ratio:16/9;border:0;display:block}
.social-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:920px;margin:0 auto}.social-card{display:flex;align-items:center;gap:18px;padding:22px}.social-card img{width:72px;height:72px;border-radius:50%;object-fit:cover}.social-card strong{display:block;font-size:1.35rem}.social-card span{color:#6a5944}.embed-note{text-align:center;margin:24px auto 0;max-width:800px;color:#6a5944}
.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;background:linear-gradient(180deg,var(--sand),#fff)}.contact-info,.contact-form{padding:38px}.contact-buttons a{background:#111;color:#fff;padding:13px 16px;border-radius:999px;font-weight:800}.contact-form{display:grid;gap:12px}.contact-form label{font-weight:800;color:#3a2d1d}.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(0,0,0,.1);background:#fff;border-radius:18px;padding:15px 16px;font-family:inherit;font-size:1rem;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(244,189,93,.16)}
.footer{padding:40px 6vw;text-align:center;background:#0d0d0d;color:#fff}.footer img{width:74px;height:74px;border-radius:50%;object-fit:cover;margin:0 auto 12px;border:1px solid var(--gold)}.footer a{color:var(--gold);font-weight:800}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:55;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-size:2rem;font-weight:900;box-shadow:0 18px 38px rgba(0,0,0,.35)}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:80;display:none;align-items:center;justify-content:center;padding:5vw}.lightbox.open{display:flex}.lightbox img{max-height:86vh;max-width:92vw;border-radius:24px;box-shadow:var(--shadow)}.close-lightbox{position:absolute;top:22px;right:22px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:#fff;color:#111;font-size:2rem;cursor:pointer}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.menu-toggle{display:block}.nav-links{position:absolute;top:76px;left:5vw;right:5vw;display:none;flex-direction:column;align-items:flex-start;background:rgba(16,16,16,.94);padding:20px;border-radius:22px}.nav-links.open{display:flex}.hero{min-height:88vh}.intro,.contact{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}.gallery-item:nth-child(2){grid-column:span 2}.promo-band{flex-direction:column;align-items:flex-start}.social-grid{grid-template-columns:1fr}}
@media(max-width:560px){.navbar{padding:12px 4vw}.brand span{font-size:.85rem}.brand img{width:42px;height:42px}.section{padding:64px 5vw}.hero{padding-left:5vw;padding-right:5vw}.hero-logo{width:100px;height:100px}.hero-actions .btn{width:100%}.intro-card,.contact-info,.contact-form,.card{padding:26px}.gallery{gap:10px}.gallery-item{border-radius:16px}.contact-buttons a{width:100%}.whatsapp-float{width:56px;height:56px}}
