﻿*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
:root{
  --gold:#C9A84C;--gold-l:#E8C97A;
  --gold-ink:#7A5C12;--gold-ink-strong:#6A4F10;
  --black:#060608;--dark:#111113;--dark2:#1a1a1e;
  --white:#FFFFFF;--off:#F2F2F0;
  --ink:#111111;
  --gray:#888888;--lgray:#CCCCCC;
  --text-muted-light:rgba(255,255,255,0.66);
  --text-muted-dark:rgba(17,17,17,0.62);
  --text-strong-light:rgba(255,255,255,0.9);
  --text-body-light:rgba(255,255,255,0.72);
  --text-faint-light:rgba(255,255,255,0.18);
  --text-faint-light-strong:rgba(255,255,255,0.2);
  --focus-ring:rgba(232,201,122,0.95);
  --focus-ring-shadow:0 0 0 4px rgba(232,201,122,0.28);
  --overlay-dark-nav:rgba(6,6,8,0.96);
  --overlay-dark-nav-strong:rgba(6,6,8,0.98);
  --border-dark-soft:rgba(255,255,255,0.05);
  --border-dark-base:rgba(255,255,255,0.06);
  --border-dark-strong:rgba(255,255,255,0.07);
  --border-dark-faint:rgba(255,255,255,0.08);
  --border-dark-mid:rgba(255,255,255,0.1);
  --border-light-base:rgba(0,0,0,0.08);
  --border-light-soft:rgba(0,0,0,0.07);
  --accent-border-soft:rgba(201,168,76,0.12);
  --accent-border-hover:rgba(201,168,76,0.28);
  --accent-border-hover-soft:rgba(201,168,76,0.24);
  --accent-gold-50:rgba(201,168,76,0.5);
  --accent-glow:rgba(201,168,76,0.06);
  --surface-light:#F5F5F3;
  --surface-light-alt:#EBEBEB;
  --icon-dark-soft:rgba(0,0,0,0.12);
  --ink-faint:rgba(0,0,0,0.22);
  --ink-border-faint:rgba(0,0,0,0.09);
  --mask-solid:#000;
  --icon-play-light:rgba(255,255,255,0.75);
  --shadow-badge:0 8px 16px rgba(0,0,0,0.24);
  --surface-bg:#121216;
  --surface-border:var(--border-dark-strong);
  --surface-border-strong:rgba(201,168,76,0.34);
  --surface-divider:var(--border-dark-strong);
  --surface-radius:14px;
  --surface-radius-sm:10px;
  --surface-shadow:0 18px 44px rgba(0,0,0,0.3);
  --surface-shadow-hover:0 26px 56px rgba(0,0,0,0.38);
  --countdown-peek:56px;
  --promo-height:34px;
  --promo-offset:34px;
  --nav-height:92px;
  --anchor-offset:96px;
  --content-max:1300px;
  --content-gutter:48px;
  --space-section:clamp(96px,9.5vw,128px);
  --space-section-tight:clamp(68px,7vw,92px);
  --space-band:clamp(32px,4vw,44px);
  --caps-size:12px;
  --caps-size-sm:11px;
  --caps-weight:600;
  --caps-track:0.16em;
  --caps-track-sm:0.14em;
  --sans:'Inter',system-ui,sans-serif;
  --serif:'Cormorant Garamond',Georgia,serif;
}
html{scroll-padding-top:max(var(--anchor-offset), calc(var(--promo-offset) + var(--nav-height) + 8px));}
body{background:var(--black);color:var(--white);font-family:var(--sans);font-size:17px;line-height:1.6;overflow-x:hidden;}
.container,.container-wide,.section-rail{width:100%;max-width:calc(var(--content-max) + (var(--content-gutter) * 2));margin:0 auto;padding-inline:var(--content-gutter);}
#tickets{scroll-margin-top:0;}
.cover-image{width:100%;height:100%;object-fit:cover;}

/* PROMO STRIP */
.promo-strip{
  position:fixed;top:0;left:0;right:0;z-index:110;
  background:var(--gold);color:var(--black);
  border-bottom:1px solid rgba(0,0,0,0.12);
}
.promo-strip-rail{
  min-height:var(--promo-height);
  display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;
  padding:4px 0;
}
.promo-strip-text{
  font-size:12px;font-weight:700;letter-spacing:0.03em;
  text-align:center;
}
.promo-strip-countdown{
  display:inline-flex;align-items:center;gap:4px;
  font-size:13px;font-weight:900;letter-spacing:0.08em;
}
.promo-strip-time{font-variant-numeric:tabular-nums;min-width:2ch;text-align:center;}
.promo-strip-sep{font-weight:900;opacity:0.8;}
.promo-strip.is-ended .promo-strip-countdown{opacity:0.72;}

/* NAV */
.nav{
  position:fixed;top:var(--promo-offset);left:0;right:0;z-index:100;
  padding:18px 0;
  background:var(--overlay-dark-nav);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--surface-border-strong);
  transition:padding 0.25s ease,background-color 0.25s ease,border-color 0.25s ease;
}
.nav-rail{display:flex;align-items:center;justify-content:space-between;}
.nav-logo{font-family:var(--sans);font-size:13px;font-weight:800;letter-spacing:0.18em;text-transform:uppercase;color:var(--white);}
.nav-logo em{font-style:normal;color:var(--gold);}
.nav-cta{
  font-size:var(--caps-size);
  font-weight:700;
  letter-spacing:0.08em;
  padding:10px 24px;
}
.nav-logo-image{height:56px;width:auto;display:block;transition:height 0.25s ease;}

.nav.is-compact{
  padding:10px 0;
  background:var(--overlay-dark-nav-strong);
}
.nav.is-compact .nav-logo-image{height:40px;}
.nav.is-compact .nav-cta{
  padding:8px 18px;
  font-size:11px;
}

/* HERO */
.hero{
  min-height:calc(100svh - var(--countdown-peek));
  overflow:visible;
  padding:calc(var(--promo-offset) + var(--nav-height) + 34px) 0 clamp(34px,5.2svh,62px);
  background:var(--black);
  display:flex;justify-content:center;
}
.hero-rail{
  display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;
  gap:clamp(16px,2.8vh,34px);
}
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:var(--caps-size);font-weight:var(--caps-weight);letter-spacing:var(--caps-track);text-transform:uppercase;
  color:var(--gold);margin-bottom:0;
}
.hero-eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--gold);}
.hero-title{
  font-size:clamp(30px,5vw,84px);font-weight:900;line-height:0.92;
  color:var(--white);letter-spacing:-0.03em;margin-bottom:0;
}
.hero-title em{font-style:normal;color:var(--gold);}
.hero-sub{
  font-size:19px;font-weight:400;color:var(--text-muted-light);
  max-width:none;margin:0 auto;line-height:1.65;white-space:nowrap;
}

/* VIDEO */
.hero-video-frame{
  width:min(100%, 900px);aspect-ratio:16/9;
  position:relative;
  padding:3px;
  background:#0f1012;
  border:1px solid rgba(201,168,76,0.5);
  border-radius:10px;margin:0 auto;
  box-shadow:0 0 20px rgba(201,168,76,0.12), 0 0 50px rgba(201,168,76,0.06);
  display:flex;align-items:center;justify-content:center;overflow:hidden;
}
.hero-video-frame::before{
  display:none;
}
.hero-video-inner{
  width:100%;
  height:100%;
  background:var(--dark2);
  border-radius:7px;
  overflow:hidden;
}
.hero-video-inner iframe{border:0 !important;}
#vidalytics_embed_mDqN9ffoIaG3obFd iframe{border:0 !important;}
.play-btn{
  width:72px;height:72px;border:2px solid var(--accent-gold-50);border-radius:50%;
  display:flex;align-items:center;justify-content:center;margin:0 auto 14px;cursor:pointer;
}
.play-btn::after{content:'';border-left:22px solid var(--gold);border-top:13px solid transparent;border-bottom:13px solid transparent;margin-left:5px;}
.hero-video-inner p{font-size:12px;color:var(--gray);letter-spacing:0.08em;text-transform:uppercase;}

/* HERO META */
.hero-meta{display:flex;gap:48px;justify-content:center;margin-bottom:0;}
.hero-meta-item label{font-size:var(--caps-size-sm);font-weight:var(--caps-weight);letter-spacing:var(--caps-track-sm);text-transform:uppercase;color:var(--gray);display:block;margin-bottom:3px;}
.hero-meta-item span{font-size:16px;font-weight:700;color:var(--white);}
.hero-actions{display:flex;flex-direction:column;align-items:center;gap:12px;}
.hero-actions .btn-note{margin-top:0;}
.hero-primary-cta{font-size:15px;padding:18px 52px;}

/* BUTTONS */
.btn{
  display:inline-block;font-family:var(--sans);font-size:14px;font-weight:700;
  letter-spacing:0.04em;padding:16px 44px;border-radius:100px;
  border:none;cursor:pointer;text-decoration:none;transition:all 0.2s;white-space:nowrap;
}
.btn-gold{background:var(--gold);color:var(--black);}
.btn-gold:hover{background:var(--gold-l);transform:translateY(-1px);}
.btn-white{background:var(--white);color:var(--black);}
.btn-white:hover{background:var(--off);}
.btn-note{font-size:12px;color:var(--text-muted-light);margin-top:10px;text-align:center;}

a:focus-visible,button:focus-visible{
  outline:2px solid var(--focus-ring);
  outline-offset:3px;
}
.btn:focus-visible{
  box-shadow:var(--focus-ring-shadow);
}

/* COUNTDOWN */
.countdown-bar{
  background:var(--dark);
  border-top:1px solid var(--accent-border-soft);border-bottom:1px solid var(--accent-border-soft);
  padding:var(--space-band) 0;
}
.countdown-rail{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;}
.countdown-label{font-size:var(--caps-size);font-weight:var(--caps-weight);letter-spacing:var(--caps-track);text-transform:uppercase;color:var(--lgray);margin-right:8px;}
.countdown-units{display:flex;gap:6px;align-items:center;}
.countdown-unit{text-align:center;min-width:58px;}
.countdown-number{font-size:40px;font-weight:900;color:var(--white);line-height:1;display:block;letter-spacing:-0.02em;}
.countdown-separator{font-size:28px;font-weight:900;color:var(--gold);line-height:1;margin-top:-4px;}
.countdown-unit-label{font-size:var(--caps-size-sm);font-weight:var(--caps-weight);letter-spacing:var(--caps-track-sm);text-transform:uppercase;color:var(--lgray);margin-top:3px;}

/* SECTION */
.section-light{background:var(--white);color:var(--black);}
.section-dark{background:var(--black);color:var(--white);}
.section-dark-alt{background:var(--dark);color:var(--white);}
.section-gold{background:var(--gold);color:var(--black);}
.section-spacing{padding:var(--space-section) 0;} .section-spacing-sm{padding:var(--space-section-tight) 0;}
.section-spacing-testimonials{padding-bottom:var(--space-section-tight);}
.section-spacing-tickets{padding-top:clamp(36px,5vw,56px);}
.section-spacing-tickets .container{max-width:1040px;}
.section-spacing-tickets .reveal-on-scroll:first-child{
  text-align:center;
  max-width:920px;
  margin-inline:auto;
}
.section-spacing-tickets .reveal-on-scroll:first-child .section-eyebrow{
  justify-content:center;
}
.section-spacing-tickets .reveal-on-scroll:first-child .section-title{
  text-align:center;
}
.section-spacing-tickets .ticket-presale-text{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}

.section-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:var(--caps-size);font-weight:var(--caps-weight);letter-spacing:var(--caps-track);text-transform:uppercase;margin-bottom:20px;
}
.section-eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0;}
.section-eyebrow-gold{color:var(--gold);}
.section-light .section-eyebrow-gold{color:var(--gold-ink);}
.section-eyebrow-dark{color:var(--gold-ink-strong);}
.section-eyebrow-muted{color:var(--gray);}

.section-title{font-size:clamp(36px,5.5vw,72px);font-weight:900;line-height:1.0;letter-spacing:-0.03em;margin-bottom:24px;}
.section-title em{font-style:normal;color:var(--gold);}
.section-title-dark{color:var(--ink);}
.section-title-light{color:var(--white);}
.section-text{font-size:17px;line-height:1.8;margin-bottom:16px;}
.text-muted-light{color:var(--text-muted-light);}
.text-muted-dark{color:var(--text-muted-dark);}
.section-intro{max-width:560px;}

/* PROBLEMA */
.problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.problem-quote{background:var(--surface-light);padding:40px;border-left:4px solid var(--gold);margin-bottom:24px;}
.problem-quote p{font-size:clamp(20px,2.5vw,28px);font-weight:900;color:var(--ink);letter-spacing:-0.02em;line-height:1.25;}
.problem-highlight-text{color:var(--ink);font-weight:700;font-size:18px;}

/* BIO */
.bio-grid{display:grid;grid-template-columns:1fr 1fr;margin-block:var(--space-section);align-items:stretch;}
.bio-grid > .bio-img,
.bio-grid > .bio-content{align-self:stretch;}
.bio-img{
  background:var(--dark2);min-height:0;height:100%;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;position:relative;
}
.bio-img .cover-image{display:block;width:100%;height:100%;object-fit:cover;}
.bio-img .iph{font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-faint-light-strong);text-align:center;border:1px solid var(--border-dark-faint);padding:12px 24px;}
.bio-content{background:var(--black);padding:0 72px;display:flex;flex-direction:column;justify-content:center;height:100%;}
.bio-name{
  font-size:clamp(30px,4vw,58px);
  font-weight:900;
  letter-spacing:-0.03em;
  color:var(--white);
  line-height:1;
  margin-bottom:8px;
  white-space:nowrap;
}
.bio-tagline{font-family:var(--serif);font-size:20px;font-style:italic;font-weight:300;color:var(--gold);margin-bottom:28px;line-height:1.35;}
.bio-paragraph{font-size:16px;line-height:1.8;color:var(--text-muted-light);margin-bottom:14px;}
.bio-paragraph strong{color:var(--white);}
.bio-emphasis-text{color:var(--text-strong-light);font-weight:600;}
.bio-stats{display:flex;gap:28px;padding:22px 0;margin:20px 0;border-top:1px solid var(--border-dark-mid);border-bottom:1px solid var(--border-dark-mid);}
.bio-stat-number{font-size:30px;font-weight:900;color:var(--gold);letter-spacing:-0.02em;display:block;margin-bottom:3px;}
.bio-stat-label{font-size:12px;color:var(--gray);letter-spacing:0.05em;}

/* MEDIA */
.media-s{
  background:var(--dark);
  border-top:1px solid var(--border-dark-soft);border-bottom:1px solid var(--border-dark-soft);
  padding:clamp(40px,4.8vw,58px) 0;
}
.media-lbl{font-size:var(--caps-size);font-weight:var(--caps-weight);letter-spacing:var(--caps-track);text-transform:uppercase;color:var(--lgray);text-align:center;display:block;margin-bottom:24px;}
.brands-carousel-wrap{
  position:relative;
  overflow:hidden;
}
.brands-carousel-row{
  overflow:hidden;
  padding:16px 0;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,var(--mask-solid) 8%,var(--mask-solid) 92%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,var(--mask-solid) 8%,var(--mask-solid) 92%,transparent 100%);
}
.brands-carousel-track{
  display:flex;
  align-items:center;
  gap:20px;
  width:max-content;
  transform:translate3d(0,0,0);
  will-change:transform;
}
.brands-carousel-item{
  flex:0 0 auto;
  min-width:clamp(170px,13vw,230px);
  scroll-snap-align:start;
  border:0;
  background:transparent;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:default;
  border-radius:10px;
  opacity:1;
  transition:none;
}
.brands-carousel-logo{
  height:var(--brand-logo-height,76px);
  width:auto;
  padding:var(--brand-logo-padding,10px 18px);
  display:block;
  object-fit:contain;
  opacity:0.86;
  filter:grayscale(1) saturate(0.4) contrast(1.04) brightness(2.05);
  transition:none;
}

/* EVENTO */
.event-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.event-copy-stack{display:grid;gap:18px;}
.event-copy-stack .section-text{margin-bottom:0;}
.event-quote-text{color:var(--gold);font-weight:700;font-size:20px;line-height:1.4;}

/* BENEFITS */
.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:52px;}
.benefit-icon{width:44px;height:44px;background:var(--icon-dark-soft);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:14px;}
.benefit-title{font-size:17px;font-weight:700;color:var(--black);margin-bottom:7px;}
.benefit-text{font-size:15px;color:var(--text-muted-dark);line-height:1.65;}

/* PILARES */
.pil-row{display:grid;grid-template-columns:80px 1fr 380px;gap:36px;padding:56px 0;border-bottom:1px solid var(--border-light-soft);align-items:start;}
.pil-row:last-child{border-bottom:none;}
.pil-n{font-size:72px;font-weight:900;color:rgba(0,0,0,0.16);line-height:1;letter-spacing:-0.03em;}
.pil-t{font-size:21px;font-weight:700;color:var(--black);margin-bottom:9px;letter-spacing:-0.01em;}
.pil-b{font-size:15px;color:var(--text-muted-dark);line-height:1.75;}
.pil-img{background:var(--surface-light-alt);border-radius:4px;height:200px;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.pil-img .iph{font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-faint);border:1px solid var(--ink-border-faint);padding:7px 13px;}

/* TESTI */
.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:52px;}
.testimonial-card{
  background:var(--surface-bg);
  border:1px solid var(--surface-border);
  border-radius:var(--surface-radius);
  box-shadow:var(--surface-shadow);
  overflow:hidden;
  transition:border-color 0.2s,transform 0.2s,box-shadow 0.2s;
}
.testimonial-card:hover{
  border-color:var(--accent-border-hover-soft);
  transform:translateY(-2px);
  box-shadow:var(--surface-shadow-hover);
}
.testimonial-video-wrap{position:relative;width:100%;padding-top:56.25%;}
.testimonial-video-wrap iframe{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}
.play-sm{width:44px;height:44px;border:1px solid var(--surface-divider);border-radius:50%;display:flex;align-items:center;justify-content:center;}
.play-sm::after{content:'';border-left:14px solid var(--icon-play-light);border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:3px;}
.testimonial-placeholder{font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-faint-light);text-align:center;border:1px solid var(--surface-divider);padding:7px 14px;}
.testimonial-screenshot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px;}
.testimonial-screenshot-card{
  background:var(--surface-bg);
  height:132px;
  border:1px solid var(--surface-border);
  border-radius:var(--surface-radius);
  box-shadow:var(--surface-shadow);
  display:flex;
  align-items:center;
  justify-content:center;
}
.testimonial-screenshot-label{font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-faint-light);border:1px solid var(--surface-divider);padding:7px 14px;}

/* TICKETS */
.ticket-presale-text{
  margin-top:8px;
  max-width:780px;
  font-size:17px;
  color:var(--text-muted-light);
  text-align:left;
  line-height:1.8;
}
.ticket-presale-countdown{
  display:inline-flex;
  align-items:center;
  gap:4px;
  font-size:20px;
  font-weight:900;
  letter-spacing:0.04em;
  color:var(--gold);
  line-height:1;
  margin-right:8px;
  vertical-align:baseline;
}
.ticket-presale-countdown[hidden]{display:none !important;}
.ticket-presale-text [data-presale-message-active][hidden],
.ticket-presale-text [data-presale-message-ended][hidden]{display:none !important;}
.ticket-presale-time{font-variant-numeric:tabular-nums;min-width:2ch;text-align:center;}
.ticket-presale-sep{opacity:0.9;}
.ticket-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:stretch;
  gap:24px;
  margin-top:34px;
  max-width:1368px;
  margin-left:auto;
  margin-right:auto;
}
.ticket-grid.is-virtual-hidden{
  max-width:448px;
}
.ticket-grid.ticket-grid-mobile-safe,
.ticket-grid.ticket-grid-mobile-safe.is-virtual-hidden{justify-content:center;}
.ticket-card[hidden]{display:none !important;}
.ticket-card{
  flex:0 1 448px;
  width:min(100%,448px);
  background:var(--surface-bg);
  padding:44px 32px;
  border:1px solid var(--surface-border);
  border-radius:var(--surface-radius);
  box-shadow:var(--surface-shadow);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-width:0;
  position:relative;
  transition:border-color 0.2s,transform 0.2s,box-shadow 0.2s;
}
.ticket-card:hover{
  border-color:var(--accent-border-hover);
  transform:translateY(-2px);
  box-shadow:var(--surface-shadow-hover);
}
.ticket-card.ticket-featured{
  border-color:var(--surface-border-strong);
  box-shadow:
    var(--surface-shadow),
    0 0 0 1px rgba(201,168,76,0.26),
    0 0 26px rgba(201,168,76,0.24);
}
.ticket-card.ticket-featured:hover{
  box-shadow:
    var(--surface-shadow-hover),
    0 0 0 1px rgba(201,168,76,0.34),
    0 0 34px rgba(201,168,76,0.3);
}
.ticket-card.ticket-featured::before{
  content:'MAS POPULAR';
  position:absolute;
  top:-1px;
  left:50%;
  transform:translateX(-50%);
  background:var(--gold);
  color:var(--black);
  font-size:11px;
  font-weight:800;
  letter-spacing:0.12em;
  padding:6px 18px;
  white-space:nowrap;
  border-bottom-left-radius:var(--surface-radius-sm);
  border-bottom-right-radius:var(--surface-radius-sm);
  box-shadow:var(--shadow-badge);
}
.ticket-tier{font-size:var(--caps-size);font-weight:700;letter-spacing:var(--caps-track);text-transform:uppercase;color:var(--gold);margin-bottom:10px;}
.ticket-price{
  display:grid;
  grid-template-rows:auto auto;
  align-content:start;
  gap:6px;
  margin-bottom:10px;
  min-height:86px;
}
.ticket-price-current{font-size:58px;font-weight:900;color:var(--white);line-height:1;letter-spacing:-0.03em;}
.ticket-price-original{
  display:none;
  font-size:22px;
  font-weight:700;
  color:var(--gray);
  line-height:1;
  letter-spacing:-0.01em;
  text-decoration:line-through;
  text-decoration-color:#D80027;
  text-decoration-thickness:2px;
  text-decoration-skip-ink:none;
}
.ticket-price.is-discount-active .ticket-price-current{color:var(--gold-l);}
.ticket-price.is-discount-active .ticket-price-original{display:block;}
.ticket-price:not(.is-discount-active){
  grid-template-rows:auto;
  align-content:center;
  min-height:0;
  margin-bottom:18px;
}
.ticket-description{font-size:13px;color:var(--gray);margin-bottom:22px;line-height:1.6;min-height:40px;}
.ticket-features{list-style:none;margin-bottom:30px;flex:1;}
.ticket-features li{font-size:13px;color:var(--text-body-light);padding:9px 0;border-bottom:1px solid var(--surface-divider);display:flex;gap:10px;align-items:flex-start;line-height:1.5;}
.ticket-features li::before{content:'\2713';color:var(--gold);font-weight:700;flex-shrink:0;}
.ticket-features li.hl{color:var(--white);font-weight:600;}
.ticket-features li.hl::before{content:'\2605';}
.ticket-image{display:block;width:100%;border-radius:var(--surface-radius-sm);border:none;margin-bottom:20px;}
.ticket-cta{width:100%;text-align:center;margin-top:auto;}
.ticket-card .ticket-cta.btn-gold{
  background:#1C42DD;
  color:var(--white);
}
.ticket-card .ticket-cta.btn-gold:hover{
  background:#1633b0;
}
.ticket-card .btn-note{
  min-height:0;
  display:block;
  margin-top:10px;
  margin-bottom:0;
  line-height:1.35;
  text-align:center;
}
.ticket-widget-modal[hidden]{display:none !important;}
.ticket-widget-modal{
  position:fixed;
  inset:0;
  z-index:1600;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px;
}
.ticket-widget-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(6,6,8,0.72);
  backdrop-filter:blur(2px);
}
.ticket-widget-modal-panel{
  position:relative;
  z-index:1;
  width:min(760px, calc(100vw - 20px));
  min-height:clamp(340px, 74vh, 680px);
  max-height:calc(100vh - 20px);
  overflow:auto;
  background:#060608;
  border:1px solid var(--surface-border-strong);
  border-radius:var(--surface-radius);
  box-shadow:0 34px 86px rgba(0,0,0,0.52);
  padding:16px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.ticket-widget-modal-close{
  position:absolute;
  top:16px;
  right:16px;
  width:40px;
  height:40px;
  border-radius:50%;
  border:1px solid var(--surface-divider);
  background:var(--black);
  color:var(--white);
  font-size:24px;
  line-height:1;
  cursor:pointer;
  z-index:2;
}
.ticket-widget-container{
  width:100%;
  min-height:clamp(260px, 60vh, 560px);
  flex:1 1 auto;
  position:relative;
  z-index:1;
}
@media (min-width: 1024px){
  .ticket-widget-modal-panel{
    width:min(890px, calc(100vw - 20px));
    min-height:592px;
  }
  .ticket-widget-container{
    width:858px;
    min-height:560px;
    height:560px;
    flex:0 0 auto;
  }
}
.ticket-widget-loading[hidden]{display:none !important;}
.ticket-widget-loading{
  position:absolute;
  inset:16px;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  border-radius:calc(var(--surface-radius-sm) + 4px);
  background:radial-gradient(circle at center, rgba(6,6,8,0.82) 0%, rgba(6,6,8,0.94) 68%);
  pointer-events:none;
  text-align:center;
}
.ticket-widget-modal.is-ticket-widget-ready .ticket-widget-container{
  z-index:2;
}
.ticket-widget-modal.is-ticket-widget-ready .ticket-widget-loading{
  z-index:1;
}
.ticket-widget-loading-spinner{
  width:40px;
  height:40px;
  border-radius:50%;
  border:3px solid rgba(255,255,255,0.16);
  border-top-color:var(--gold);
  animation:ticket-widget-spinner-rotate 0.9s linear infinite;
}
.ticket-widget-loading-text{
  font-family:var(--sans);
  font-size:15px;
  font-weight:700;
  letter-spacing:0.02em;
  color:var(--text-body-light);
}
@keyframes ticket-widget-spinner-rotate{
  to{transform:rotate(360deg);}
}
@media (prefers-reduced-motion: reduce){
  .ticket-widget-loading-spinner{animation-duration:1.8s;}
}
.ticket-widget-container .tt-widget{
  width:100%;
}
.ticket-widget-container .tt-widget-wrapper{
  width:100%;
  max-width:100% !important;
  min-height:0;
}
.ticket-widget-container iframe{
  display:block;
  width:100% !important;
  max-width:none !important;
  border:0;
}
.ticket-widget-container .tt-widget-fallback p{
  margin:0;
}

/* FAQ */
.faq-list{margin-top:52px;}
.faq-item{border-bottom:1px solid var(--border-light-base);}
.faq-question{width:100%;background:none;border:none;font-family:var(--sans);font-size:17px;font-weight:600;color:var(--black);text-align:left;padding:24px 0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;transition:color 0.2s;}
.faq-question:hover{color:var(--gold-ink-strong);}
.faq-question:focus-visible{color:var(--gold-ink-strong);}
.faq-icon{color:var(--gold-ink);font-size:22px;flex-shrink:0;transition:transform 0.3s;line-height:1;}
.faq-item.is-open .faq-icon{transform:rotate(45deg);}
.faq-answer{font-size:16px;color:var(--text-muted-dark);line-height:1.8;max-height:0;overflow:hidden;transition:max-height 0.35s ease,padding 0.35s ease;padding-bottom:0;}
.faq-item.is-open .faq-answer{padding-bottom:26px;}

/* CIERRE */
.closing-section{background:var(--black);padding:var(--space-section) 0;text-align:center;position:relative;overflow:hidden;}
.closing-section::before{content:'';position:absolute;inset:0;background:none;pointer-events:none;}
.closing-content-wrapper{position:relative;z-index:1;width:100%;max-width:100%;margin:0 auto;}
.closing-eyebrow-centered{justify-content:center;}
.closing-title{font-size:clamp(42px,7vw,86px);font-weight:900;letter-spacing:-0.03em;color:var(--white);line-height:1.0;margin-bottom:22px;position:relative;}
.closing-title-accent{
  color:var(--gold);
  position:relative;
  display:inline-block;
  text-shadow:
    0 0 8px rgba(201,168,76,0.26),
    0 0 20px rgba(201,168,76,0.2),
    0 0 42px rgba(201,168,76,0.14);
}
.closing-description{font-size:18px;color:var(--text-muted-light);max-width:480px;margin:0 auto 44px;line-height:1.7;}
.closing-keyline{font-size:20px;color:var(--white);font-weight:700;margin-bottom:44px;}
.closing-primary-cta{font-size:15px;padding:20px 56px;}
.closing-meta-note{margin-top:14px;}
.closing-signature{font-family:var(--serif);font-size:18px;font-style:italic;color:var(--gold);margin-top:22px;opacity:0.7;}

/* FOOTER */
.footer{background:var(--black);border-top:1px solid var(--surface-border-strong);padding:26px 0;text-align:center;}
.footer p{font-size:12px;color:var(--gray);}

/* REVEAL */
.reveal-on-scroll{opacity:0;transform:translateY(22px);transition:opacity 0.7s ease,transform 0.7s ease;}
.reveal-on-scroll.in{opacity:1;transform:translateY(0);}

@media (max-width:640px){
  :root{
    --space-section:clamp(72px,14vw,96px);
    --space-section-tight:clamp(54px,10vw,72px);
    --space-band:clamp(24px,7vw,32px);
  }
  .brands-carousel-row{
    padding:16px 0;
    -webkit-mask-image:linear-gradient(to right,transparent 0%,var(--mask-solid) 7%,var(--mask-solid) 93%,transparent 100%);
    mask-image:linear-gradient(to right,transparent 0%,var(--mask-solid) 7%,var(--mask-solid) 93%,transparent 100%);
  }
  .brands-carousel-logo{
    height:58px;
    padding:8px 14px;
  }
  .brands-carousel-item{min-width:138px;}
}

@media (prefers-reduced-motion: reduce){
  .brands-carousel-track{transform:none;}
  .brands-carousel-row{
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    -ms-overflow-style:none;
    -webkit-mask-image:none;
    mask-image:none;
  }
  .brands-carousel-row::-webkit-scrollbar{display:none;}
  .brands-carousel-item{
    transform:none;
    opacity:1;
  }
}

@media (max-width:1280px){
  .ticket-grid{grid-template-columns:repeat(2,1fr);}
}

@media(max-width:900px){
  :root{
    --anchor-offset:88px;
    --content-gutter:22px;
    --space-section:clamp(76px,11vw,102px);
    --space-section-tight:clamp(56px,9vw,78px);
    --space-band:clamp(24px,6vw,34px);
  }
  .problem-grid,.bio-grid,.event-grid{grid-template-columns:1fr;}
  .problem-grid,.event-grid{gap:34px;}
  .section-spacing-testimonials{padding-bottom:clamp(44px,8vw,62px);}
  .section-spacing-tickets{padding-top:clamp(24px,6vw,38px);}
  .bio-grid{
    margin-top:var(--space-section-tight);
    margin-bottom:clamp(22px,5vw,34px);
  }
  .bio-content{padding:44px 28px;}
  .bio-name{font-size:clamp(24px,9vw,42px);}
  .bio-tagline{
    font-size:clamp(12px,3.8vw,16px);
    line-height:1.3;
  }
  .ticket-grid,.testimonials-grid,.benefits-grid{grid-template-columns:1fr;}
  .ticket-grid,.testimonials-grid,.benefits-grid{gap:14px;}
  .testimonial-screenshot-grid{gap:12px;margin-top:14px;}
  .testimonial-screenshot-card{height:112px;}
  .pil-row{grid-template-columns:1fr;gap:14px;}
  .pil-n{font-size:46px;}
  .pil-img{height:180px;}
  .hero-meta{gap:18px;flex-wrap:wrap;justify-content:center;}
  .nav{padding:13px 0;}
  .nav.is-compact{padding:9px 0;}
  .nav.is-compact .nav-logo-image{height:34px;}
  .nav.is-compact .nav-cta{padding:7px 14px;font-size:10px;}
  .promo-strip-rail{gap:8px;padding:5px 0;}
  .promo-strip-text{font-size:10px;line-height:1.25;}
  .promo-strip-countdown{font-size:12px;}
  .ticket-presale-countdown{font-size:18px;}
  .ticket-presale-text{font-size:17px;line-height:1.8;}
  .bio-stats{
    gap:18px;
    margin:14px 0 0;
    padding:18px 0;
  }
  .hero{height:auto;max-height:none;min-height:100svh;overflow:visible;padding:calc(var(--promo-offset) + var(--nav-height) + 24px) 0 28px;}
  .hero-rail{gap:16px;}
  .hero-sub{max-width:540px;white-space:normal;}
}

@media (hover: none) and (pointer: coarse){
  .ticket-grid,
  .ticket-grid.is-virtual-hidden{grid-template-columns:1fr;}
  .ticket-grid{gap:14px;}
}

@media (max-height:900px){
  .hero{padding-top:calc(var(--promo-offset) + var(--nav-height) + 20px);padding-bottom:26px;}
  .hero-rail{gap:14px;}
  .hero-title{font-size:clamp(30px,5vw,72px);}
  .hero-sub{font-size:17px;}
}

@media (max-height:780px){
  .hero{padding-top:calc(var(--promo-offset) + var(--nav-height) + 14px);padding-bottom:20px;}
  .hero-rail{gap:12px;}
  .hero-title{font-size:clamp(26px,4.4vw,62px);}
  .hero-sub{font-size:16px;}
  .hero-video-frame{width:min(100%, 860px);}
}
