:root{--purple:#7c3cff;--deep:#16042c;--blue:#11b7e6;--gold:#ffd65a;--ink:#10101a;--muted:#667085;--card:#ffffff;--soft:#f5f2ff;--radius:24px;--shadow:0 24px 70px rgba(34,10,84,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}a{color:inherit}img{max-width:100%;display:block}.site-header{min-height:100vh;background:radial-gradient(circle at 80% 10%,rgba(124,60,255,.45),transparent 28%),linear-gradient(135deg,#12012a 0%,#321067 48%,#0a739a 100%);color:#fff;overflow:hidden}.site-header:before{content:"";position:absolute;inset:0;background:url('../img/portada-puerto-vallarta.png') center/cover no-repeat;opacity:.16;filter:saturate(1.2)}.nav{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(1180px,92%);margin:auto;padding:22px 0}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:62px;height:62px;object-fit:contain;background:#fff;border-radius:18px;padding:4px;box-shadow:0 12px 28px rgba(0,0,0,.2)}.brand span{display:grid;line-height:1.1}.brand small{opacity:.82}.menu{display:flex;align-items:center;gap:20px}.menu a{text-decoration:none;font-weight:700;opacity:.9}.menu a:hover{opacity:1;color:var(--gold)}.menu-toggle,.lang{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff;border-radius:999px;padding:10px 13px;font-weight:800;cursor:pointer}.menu-toggle{display:none}.hero{position:relative;z-index:1;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:48px;width:min(1180px,92%);margin:0 auto;padding:54px 0 80px}.eyebrow{letter-spacing:.15em;text-transform:uppercase;font-weight:900;color:var(--gold);font-size:.82rem}.hero h1,.section h2{line-height:1.02;margin:0 0 18px}.hero h1{font-size:clamp(2.7rem,6vw,6.7rem);text-transform:uppercase}.lead{font-size:clamp(1.05rem,2vw,1.35rem);max-width:650px;color:rgba(255,255,255,.88)}.badges,.platform-grid{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.badges span,.platform-grid span{border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.12);backdrop-filter:blur(8px);border-radius:999px;padding:9px 14px;font-weight:900}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 22px;border-radius:999px;text-decoration:none;font-weight:900;border:0;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--gold),#fff06f);color:#1c1230;box-shadow:0 14px 32px rgba(255,214,90,.28)}.btn-ghost{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.28)}.hero-card{position:relative}.hero-card img{border-radius:34px;box-shadow:var(--shadow);border:8px solid rgba(255,255,255,.22);cursor:zoom-in}.strip{width:min(1100px,92%);margin:-45px auto 0;position:relative;z-index:4;background:#fff;border-radius:24px;box-shadow:var(--shadow);padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:20px}.strip strong{display:block;font-size:clamp(1.2rem,2.6vw,2rem);color:var(--purple)}.strip span{color:var(--muted)}.strip a{background:var(--purple);color:#fff;border-radius:999px;padding:12px 18px;text-decoration:none;font-weight:900}.section{width:min(1180px,92%);margin:0 auto;padding:88px 0}.two-col,.social,.contact{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.section h2{font-size:clamp(2rem,4vw,4rem);color:var(--deep)}.section p{color:#475467}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.cards article{background:linear-gradient(180deg,#fff,var(--soft));border:1px solid #ece7ff;border-radius:22px;padding:20px}.cards h3{margin:0;color:var(--purple)}.poster img{border-radius:28px;box-shadow:var(--shadow);cursor:zoom-in}.platforms{background:linear-gradient(135deg,var(--deep),#421894);color:#fff;border-radius:34px;padding:54px;margin-top:32px}.platforms h2{color:#fff}.platform-grid span{background:#fff;color:var(--deep);font-size:1.1rem}.center{text-align:center;max-width:760px;margin:0 auto 34px}.fb-box{min-height:420px;background:linear-gradient(145deg,#fff,var(--soft));border-radius:30px;padding:18px;border:1px solid #ebe4ff;box-shadow:var(--shadow);display:grid;place-items:center;overflow:hidden}.fb-box iframe{width:100%;max-width:500px}.fb-fallback{margin-top:12px;display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:900;color:var(--purple)}.fb-fallback img{width:46px;height:46px;object-fit:contain}.video-frame{position:relative;max-width:460px;margin:auto;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);background:#000;aspect-ratio:9/16}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gallery img{width:100%;height:210px;object-fit:cover;border-radius:18px;box-shadow:0 12px 30px rgba(16,16,26,.08);cursor:zoom-in;transition:transform .25s ease,box-shadow .25s ease}.gallery img:hover{transform:translateY(-4px);box-shadow:0 18px 46px rgba(16,16,26,.16)}.contact{align-items:start}.contact-card,.form{background:#fff;border:1px solid #ebe4ff;border-radius:30px;box-shadow:var(--shadow);padding:28px}.contact-card a{color:var(--purple);font-weight:900}.map{height:260px;border-radius:20px;overflow:hidden;margin-top:18px}.map iframe{width:100%;height:100%;border:0}.form{display:grid;gap:15px}.form label{display:grid;gap:8px;font-weight:800;color:var(--deep)}.form input,.form textarea,.form select{width:100%;border:1px solid #d9d6e8;border-radius:16px;padding:13px 14px;font:inherit;background:#fbfaff}.form textarea{resize:vertical}.mailto{font-size:.92rem;color:var(--purple);font-weight:800}.footer{background:#0d0619;color:#fff;text-align:center;padding:36px 20px}.footer img{width:86px;margin:0 auto 12px;background:#fff;border-radius:22px;padding:4px}.footer a{color:var(--gold);font-weight:900}.whatsapp{position:fixed;right:18px;bottom:18px;z-index:20;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;text-decoration:none;background:#25d366;color:#fff;font-size:30px;font-weight:900;box-shadow:0 14px 36px rgba(37,211,102,.38)}.lightbox{position:fixed;inset:0;background:rgba(7,3,18,.88);z-index:50;display:grid;place-items:center;padding:28px}.lightbox[hidden]{display:none}.lightbox img{max-width:min(1100px,94vw);max-height:86vh;border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.45)}.lightbox button{position:absolute;top:18px;right:18px;border:0;background:#fff;color:#12012a;width:44px;height:44px;border-radius:50%;font-size:28px;cursor:pointer}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media (max-width:900px){.menu-toggle{display:inline-flex}.menu{position:absolute;right:0;top:82px;display:none;flex-direction:column;align-items:flex-start;background:rgba(17,4,44,.96);padding:20px;border-radius:20px;box-shadow:var(--shadow);min-width:220px}.menu.open{display:flex}.hero,.two-col,.social,.contact{grid-template-columns:1fr}.hero{padding-top:24px;gap:28px}.hero-card{order:-1}.hero-card img{border-radius:24px}.strip{margin-top:-28px;align-items:flex-start;flex-direction:column}.cards{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}.section{padding:62px 0}.platforms{width:min(92%,1180px)}}@media (max-width:560px){.brand img{width:52px;height:52px}.hero h1{font-size:2.35rem}.lead{font-size:1rem}.gallery{grid-template-columns:1fr}.gallery img{height:auto}.contact-card,.form{padding:20px}.whatsapp{width:56px;height:56px}.fb-box iframe{display:none}.fb-box{min-height:180px}.btn{width:100%}.actions{width:100%}}
