/* =========================================================
   Recinto · hoja consolidada del contenido de página
   Generada desde las reglas que coinciden con elementos de <main>.
   Header y footer permanecen bajo app.css.
   Orden de cascada conservado:
   recinto-base (config/shell/icons) < app.css < reglas específicas.
   ========================================================= */

@layer recinto-base {
.recinto-production-page {
  --border: rgba(255, 255, 255, 0.14);
  --brand: var(--ma-blue);
  --container: 1120px;
  --dur-1: 160ms;
  --ease: cubic-bezier(.2, .8, .2, 1);
  --footer-top-h: 0px;
  --fs-element-badge: 16px;
  --fs-element-button: 18px;
  --fs-element-nav: 15px;
  --fs-element-title: 24px;
  --fs-hero-lead: clamp(18px, 2vw, 20px);
  --fs-hero-title: clamp(42px, 7vw, 84px);
  --fs-section-subtitle: 20px;
  --fs-section-title: 32px;
  --fw-element-badge: 400;
  --fw-element-button: 400;
  --fw-element-title: 400;
  --fw-hero-title: 800;
  --header-h: var(--header-height, 72px);
  --lg-element-title: 28px;
  --lh-element-body: 26px;
  --lh-element-button: 24px;
  --lh-hero-lead: 1.5;
  --lh-hero-title: .95;
  --lh-section-subtitle: 26px;
  --lh-section-title: 38px;
  --ma-dark-blue-100: var(--ma-dark-blue);
  --pad: 16px;
  --pad--section: 60px 20px;
  --r-md: 16px;
  --shadow-2: 0 18px 50px 5px rgba(var(--ma-dark-blue-rgb), .75);
  --text: rgba(var(--ma-cream-rgb), .92);
}

* { box-sizing: border-box; }

section { padding: var(--pad--section); }

a { color: inherit; text-decoration: none; }

a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid color-mix(in srgb, var(--brand) 65%, transparent); outline-offset: 3px; border-radius: var(--r-md); }

body.ma-shell > main { min-width: 0px; min-height: calc(
    100vh
    - var(--header-h, 0px)
    - var(--footer-top-h, 0px)
  ); }

@supports (height: 100svh) {
body.ma-shell > main { min-height: calc(
      100svh
      - var(--header-h, 0px)
      - var(--footer-top-h, 0px)
    ); }
}

.border-none { border-width: medium !important; border-style: none !important; border-color: currentcolor !important; border-image: none !important; }

.bg-none { background: none !important; }

.bg-coral { background: var(--ma-coral-100) !important; }

.bg-cream { background: var(--ma-cream) !important; }

.text-ink { color: var(--ma-ink) !important; }

.text-cream { color: var(--ma-cream) !important; }

.p-0 { padding: 0px !important; }

.page { max-width: var(--container); margin: 0px auto; padding: var(--pad) var(--pad) 40px; min-width: 0px; width: 100%; }

.w-full { margin: 0px !important; padding: 0px !important; max-width: none !important; width: 100% !important; }

.btn { display: inline-flex; align-items: center; justify-content: center; border-radius: var(--r-md); border: 1px solid var(--border); background: rgba(var(--ma-cream-rgb), 0.07); color: var(--text); user-select: none; transition: transform var(--dur-1) var(--ease), background var(--dur-1) var(--ease); font-size: var(--fs-element-button); line-height: var(--lh-element-button); font-weight: var(--fw-element-button); padding: 10px; }

.btn:active { transform: translateY(1px); }

.btn--primary { border-color: color-mix(in srgb, var(--brand) 35%, transparent); background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--brand) 100%, transparent),
    color-mix(in srgb, var(--brand) 70%, transparent)
  ); box-shadow: 0 14px 40px color-mix(in srgb, var(--brand) 22%, transparent); }

.btn--ghost { background: rgba(var(--ma-cream-rgb), 0); border: 0px; }

.btn--dark--blue { background: rgba(var(--ma-dark-blue-rgb), 1) !important; color: rgba(var(--ma-cream-rgb), 1) !important; }

.btn--darkblue--outline { background-color: rgba(var(--ma-dark-blue-rgb), 0.3) !important; color: rgba(var(--ma-cream-rgb), 1) !important; border: 1px solid var(--ma-dark-blue-100) !important; }

.btn--yellow { background: rgba(var(--ma-yellow-rgb), 1) !important; color: rgba(var(--ma-ink-rgb), 1) !important; }

.btn--lg { width: 44px !important; height: 44px !important; }

.btn--md { width: 34px !important; height: 34px !important; border-radius: 12px !important; }

.icon-btn { width: 44px; height: 44px; border-radius: var(--r-md); border: 1px solid var(--border); background: rgba(var(--ma-cream-rgb), 0.06); transition: transform var(--dur-1) var(--ease), background var(--dur-1) var(--ease); padding: 10px; display: inline-flex; align-items: center; justify-content: center; line-height: 1; }

.icon-btn svg { width: 22px; height: 22px; padding: 0px; }

.icon-btn:active { transform: translateY(1px); }

.chip { display: inline-flex; align-items: center; height: 26px; padding: 15px; border-radius: var(--r-md); font-size: var(--fs-element-badge); font-weight: var(--fw-element-badge); line-height: var(--lh-element-body); letter-spacing: 0.02em; border: 1px solid var(--border); background: rgba(var(--ma-cream-rgb), 0.06); }

.hero-heading-content { margin-inline: auto; width: 980px; display: flex; flex-wrap: wrap; margin-bottom: 35px; align-items: flex-end; }

@media (min-width: 1441px) {
.hero-heading-content { margin-inline: auto; width: 980px; }
}

.hero-heading-headline-container { flex-grow: 1; }

.hero-heading-headline-top { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }

.hero-heading-headline-top h2 { margin: 0px; position: static; display: inline; }

.typography-heading-headline { font-size: 17px; line-height: 1.17648; font-weight: 600; letter-spacing: -0.037em; color: var(--ma-ink); }

.hero-heading-headline-bottom { margin-bottom: 0px; }

.typography-heading-subheadline { margin: 0px; font-size: 40px; line-height: 1; font-weight: 700; letter-spacing: 0px; color: var(--ma-ink); }

br.large { display: block; }

br.small { display: none; }

.hero-heading-cta-container { margin-top: 20px; }

@media (min-width: 1069px) {
.hero-heading-cta-container { margin-top: 20px; }
}

@media only screen and (max-width: 1068px) {
.hero-heading-content { display: block; }
}

@media only screen and (max-width: 734px) {
.hero-heading-content { margin-bottom: 13px; }
}

@media only screen and (max-width: 1068px) {
.hero-heading-content { margin-bottom: 23px; }
}

@media only screen and (max-width: 734px) {
.hero-heading-content { margin-left: auto; margin-right: auto; width: 87.5%; }
}

@media only screen and (max-width: 1068px) {
.hero-heading-content { margin-left: auto; margin-right: auto; width: 100%; padding-inline: var(--pad); }
}

@media only screen and (max-width: 734px) {
.typography-heading-subheadline { font-size: 24px; line-height: 1.16667; font-weight: 700; letter-spacing: 0.022em; font-family: "SF Pro Display", "SF Pro Icons", "Helvetica Neue", Helvetica, Arial, sans-serif; }
}

@media only screen and (max-width: 1068px) {
.typography-heading-subheadline { font-size: 30px; line-height: 1; font-weight: 700; letter-spacing: 0em; font-family: "SF Pro Display", "SF Pro Icons", "Helvetica Neue", Helvetica, Arial, sans-serif; }
}

a:link, a:visited { text-decoration: none; }

.scalehover { transition: transform 0.18s, box-shadow 0.18s, border-color 0.18s; }

.scalehover:hover { transform: scale(1.15); transform-origin: center center; border-color: rgba(var(--ma-aqua-rgb),.6); box-shadow: var(--shadow-2); z-index: 1; }

.scroll-cue-wrapper { display: flex; justify-content: center; margin-top: 50px; z-index: 10; }

.scroll-cue-wrapper a { display: inline-flex; text-decoration: none; }

.scroll-cue { display: flex; flex-direction: column; align-items: center; gap: 8px; color: rgba(234, 240, 255, 0.88); text-align: center; user-select: none; }

.scroll-cue__svg { display: block; width: 44px; height: 64px; filter: drop-shadow(rgba(0, 0, 0, 0.25) 0px 10px 24px); }

.scroll-cue__label { font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; opacity: 0.85; }

@media (prefers-reduced-motion: reduce) {
.scroll-cue__svg animate { display: none; }
}

.click-zoom, img.click-zoom, .click-zoom img { cursor: pointer; }

.click-zoom img, img.click-zoom { transition: transform 0.2s, filter 0.2s; }

.click-zoom:hover img, img.click-zoom:hover { transform: scale(1.02); filter: brightness(1.05); }

.icon { width: 1em; height: 1em; stroke: currentcolor; fill: none; vertical-align: -0.15em; }

.icon--24 { width: 24px !important; height: 24px !important; }

.icon--share { opacity: 0.85; }
}

.recinto-hero { position: relative; min-height: 90svh; display: flex; align-items: flex-end; overflow: hidden; color: white; }

.recinto-hero__media { position: absolute; inset: 0px; z-index: 0; }

.recinto-hero__media img { width: 100%; height: 100%; object-fit: cover; display: block; }

.recinto-hero__overlay { position: absolute; inset: 0px; z-index: 1; background: linear-gradient(
      to bottom,
      rgba(8,12,24,0.35) 0%,
      rgba(8,12,24,0.55) 40%,
      rgba(8,12,24,0.85) 100%
    ),
    radial-gradient(
      1200px 600px at 70% 20%,
      rgba(var(--ma-blue-rgb), .35),
      transparent 60%
    ); }

.recinto-hero__content { position: relative; z-index: 2; padding-bottom: 60px; max-width: 780px; }

.recinto-hero__kicker { font-size: var(--fs-element-nav); letter-spacing: 0.12em; text-transform: uppercase; opacity: 0.8; margin-bottom: 14px; }

.recinto-hero__title { font-size: var(--fs-hero-title); line-height: var(--lh-hero-title); font-weight: var(--fw-hero-title); margin: 0px 0px 16px; letter-spacing: -0.02em; }

.recinto-hero__lead { font-size: var(--fs-hero-lead); line-height: var(--lh-hero-lead); max-width: 60ch; margin-bottom: 24px; opacity: 0.92; }

.recinto-hero__cta { display: flex; flex-wrap: wrap; gap: 12px; }

@media (max-width: 768px) {
.recinto-hero { min-height: 75svh; }
.recinto-hero__content { padding-bottom: 40px; }
}

.recinto-history { padding: 42px 0px 10px; }

.recinto-history__hero { margin-bottom: 16px; max-width: 100%; }

.recinto-history__lead { margin: 0px; }

.ma-stats { padding: clamp(26px, 4vw, 52px) 0px; }

.ma-stats__head { margin-bottom: 16px; max-width: 100%; }

.ma-stats__lead { margin: 0px; }

.ma-stats__grid { display: grid; gap: 14px; margin-top: 50px; grid-template-columns: 1fr; }

@media (min-width: 740px) {
.ma-stats__grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}

@media (min-width: 1060px) {
.ma-stats__grid { grid-template-columns: repeat(4, minmax(0px, 1fr)); }
}

.ma-stat { border-radius: var(--r-md); border: 1px solid rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.06); box-shadow: rgba(0, 0, 0, 0.24) 0px 18px 70px; backdrop-filter: blur(12px) saturate(1.05); padding: 16px 16px 14px; min-height: 140px; }

.ma-stat__num { display: flex; flex-direction: column; align-items: baseline; gap: 10px; }

.ma-stat__value { font-size: clamp(34px, 4.2vw, 54px); line-height: 1; font-weight: 900; letter-spacing: -0.03em; color: rgba(234, 240, 255, 0.98); }

.ma-stat__label { margin: 10px 0px 6px; font-weight: 650; color: rgba(234, 240, 255, 0.92); line-height: 1.25; }

.ma-stat__note { margin: 0px; color: rgba(234, 240, 255, 0.7); line-height: 1.35; font-size: 13px; }

.ma-stats__foot { margin-top: 12px; }

.ma-stats__disclaimer { margin: 0px; color: rgba(234, 240, 255, 0.55); font-size: 12px; line-height: 1.35; }

.ma-stat { transform: translateY(6px); opacity: 0.01; transition: transform 0.55s, opacity 0.55s; }

@media (prefers-reduced-motion: reduce) {
.ma-stat { transition: none; transform: none; opacity: 1; }
}

.vip-story { position: relative; width: 100%; min-height: 340vh; overflow: visible; isolation: isolate; z-index: 1; }

.vip-story__bg { position: fixed; inset: 0px; width: 100vw; height: 100vh; z-index: 0; pointer-events: none; opacity: 0; visibility: hidden; transition: opacity 0.28s, visibility linear 0.28s; will-change: opacity, transform; background: radial-gradient(1200px 700px at 70% 35%, rgba(80, 140, 255, 0.55), transparent 62%), radial-gradient(1000px 600px at 45% 65%, rgba(160, 210, 255, 0.45), transparent 60%), linear-gradient(135deg, rgb(6, 10, 22), rgb(12, 25, 70) 45%, rgba(25, 85, 255, 0.75)); }

.vip-story__badge { position: fixed; top: calc(var(--header-h) - 5vh); left: 50%; transform: translateX(-50%); width: 100%; height: calc(100vh - var(--header-h)); z-index: 1; pointer-events: none; display: flex; justify-content: center; align-items: flex-start; perspective: 500px; transform-style: preserve-3d; }

.vip-story__badge img { height: min(80vh, 680px); max-height: 80vh; transform-origin: center top; will-change: transform, opacity; backface-visibility: hidden; pointer-events: auto; cursor: grab; }

.vip-story__badge img:active { cursor: grabbing; }

.vip-story__stage { position: sticky; top: var(--header-h); height: 100vh; z-index: 2; pointer-events: none; display: flex; align-items: flex-start; padding-top: 6vh; margin-bottom: 6vh; transform: none; }

.vip-story__grid { width: min(1180px, 100% - 32px); margin: 0px auto; display: grid; gap: 18px; align-items: start; grid-template-columns: 1fr; }

@media (min-width: 980px) {
.vip-story__grid { grid-template-columns: 320px minmax(220px, 360px) 1fr; gap: 22px; }
}

.vip-story__left, .vip-story__right { pointer-events: auto; }

.vip-story__left { will-change: transform, opacity; }

.vip-story__right { overflow: visible; }

.vip-right__inner { will-change: transform, opacity; }

@media (min-width: 980px) {
.vip-story__left { grid-column: 1; }
.vip-story__right { grid-column: 3; }
}

.vip-kpi { padding: 14px; margin-bottom: 10px; border-radius: var(--r-md); background: rgba(8, 12, 24, 0.38); border: 1px solid rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px) saturate(1.1); transition: transform 0.45s cubic-bezier(0.22, 0.61, 0.36, 1), opacity 0.35s; }

.vip-kpi__num { font-size: clamp(34px, 6vw, 56px); line-height: 1; font-weight: 700; letter-spacing: -0.02em; color: rgba(234, 240, 255, 0.96); }

.vip-kpi__label { margin-top: 6px; font-size: var(--fs-section-title); }

.vip-kpi--muted { opacity: 0.92; }

.vip-card { padding: 16px; margin-bottom: 12px; border-radius: var(--r-md); background: rgba(8, 12, 24, 0.3); border: 1px solid rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px) saturate(1.05); }

.vip-card h3 { margin: 0px 0px 6px; font-size: var(--fs-section-title); line-height: var(--lh-section-title); }

.vip-card h3 span { display: block; margin-top: 6px; font-size: var(--fs-section-subtitle); line-height: var(--lh-section-subtitle); }

.vip-card h3 span::before { content: "●"; margin-right: 10px; color: var(--ma-green-100); }

.vip-card h4 { margin: 0px 0px 6px; font-size: var(--fs-element-title); font-weight: var(--fw-element-title); }

.vip-card__media { border-radius: var(--r-md); overflow: hidden; aspect-ratio: 16 / 9; background: rgba(255, 255, 255, 0.04); margin: 16px 0px; }

.vip-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.6s; }

.vip-card:hover .vip-card__media img { transform: scale(1.04); }

.vip-card__meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }

.vip-chip__ic { width: 14px; height: 14px; opacity: 0.95; }

.vip-kpi[data-step], .vip-card[data-step] { opacity: 1; transform: none; }

.vip-kpi__meta { margin-top: 10px; display: inline-flex; align-items: flex-start; gap: 8px; max-width: 100%; }

.vip-kpi__meta .vip-chip__ic { width: 30px; height: 30px; flex: 0 0 30px; margin-top: -2px; opacity: 0.95; }

.vip-card__lead { margin: 0px; }

.vip-card__list { margin-top: 14px; display: grid; gap: 12px; }

.vip-li { display: flex; gap: 10px; align-items: flex-start; }

.vip-li__ic { width: 16px; height: 16px; flex: 0 0 16px; margin-top: 2px; opacity: 0.95; }

.vip-card__ctaRow { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }

.vip-card__ctaRow .btn { min-width: 180px; }

@media (max-width: 980px) {
.vip-kpi__meta { max-width: 100%; }
.vip-card__ctaRow .btn { width: 100%; }
}

.vip-story:not(.is-armed) .vip-right__inner { opacity: 0 !important; transform: translateY(12vh) !important; }

.vip-story:not(.is-armed) .vip-story__left { opacity: 0 !important; transform: translateY(calc(100vh - var(--header-h) - 6vh)) !important; }

@media (prefers-reduced-motion: reduce) {
.vip-story { min-height: auto; }
.vip-story__bg { opacity: 1; }
.vip-story__badge { position: relative; top: auto; transform: none; height: auto; padding: 28px 0px; }
.vip-story__badge img { opacity: 1; transform: none; }
.vip-story__stage { position: relative; top: auto; transform: none; height: auto; padding: 18px 0px 42px; }
.vip-story__left, .vip-right__inner { transform: none !important; opacity: 1 !important; }
}

.top5 { margin: clamp(40px, 6vw, 90px) auto 0px; position: relative; display: flex; justify-content: center; align-items: center; width: clamp(160px, 20vw, 320px); --top5-p: 0; user-select: none; }

.top5::before { content: ""; position: absolute; width: 60%; height: 60%; bottom: -10%; left: 50%; transform: translateX(-50%); background: radial-gradient(
    circle,
    rgba(var(--ma-blue-rgb), .35),
    transparent 70%
  ); filter: blur(80px); opacity: 0.9; z-index: 0; pointer-events: none; }

.top5::after { content: ""; position: absolute; top: 50%; left: 100%; margin-left: 28px; height: 1px; width: calc(50vw * var(--top5-p)); transform: translateY(-50%); background: linear-gradient(
    90deg,
    rgba(255,255,255,.25),
    rgba(var(--ma-blue-rgb), 1)
  ); pointer-events: none; z-index: 1; }

.top5-line-left { position: absolute; top: 50%; right: 100%; margin-right: 28px; height: 1px; width: calc(50vw * var(--top5-p)); transform: translateY(-50%); background: linear-gradient(
    90deg,
    rgba(var(--ma-blue-rgb), 1),
    rgba(255,255,255,.25)
  ); pointer-events: none; z-index: 1; }

.top5 img { position: relative; z-index: 2; width: 100%; height: auto; display: block; -webkit-user-drag: none; }

@media (min-width: 980px) {
.top5::after, .top5-line-left { height: 2px; }
}

@media (prefers-reduced-motion: reduce) {
.top5 { --top5-p: 1; }
}

.ma-vmask { min-height: 250vh; position: relative; --shadeAlpha: 1; --lockupOpacity: 0; --lockupY: 0px; --lockupWidth: 320px; --lockupOffsetY: 89px; --lockupOpacityEnd: 0.6; }

.ma-vmask__stage { position: sticky; top: 0px; height: 100vh; width: 100vw; overflow: clip; isolation: isolate; }

.ma-vmask__video { position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; }

.ma-vmask__overlay { position: absolute; inset: 0px; width: 100%; height: 100%; pointer-events: none; }

.ma-vmask__shade { fill: rgba(var(--ma-dark-blue-rgb), var(--shadeAlpha)); }

.ma-vmask__lockup { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) translateY(var(--lockupY)); opacity: var(--lockupOpacity); pointer-events: none; z-index: 5; filter: drop-shadow(rgba(0, 0, 0, 0.45) 0px 18px 50px); }

.ma-vmask__lockup svg { width: min(360px, 78vw); height: auto; display: block; }

.ma-vmask__overlay { shape-rendering: geometricprecision; }

.ma-vmask__lockup svg .cls-1, .ma-vmask__lockup svg .cls-2 { stroke: none !important; stroke-width: 0 !important; }

.ma-vmask__lockup { filter: drop-shadow(rgba(0, 0, 0, 0.45) 0px 18px 50px); }

.ma-vmask__lockup { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%)
    translateY(calc(var(--lockupY) + var(--lockupOffsetY))); pointer-events: none; z-index: 5; filter: drop-shadow(rgba(0, 0, 0, 0.45) 0px 18px 50px); }

.ma-vmask__lockup svg { width: min(var(--lockupWidth), 80vw); height: auto; display: block; }

@media (prefers-reduced-motion: reduce) {
.ma-vmask { --lockupOpacity: 1; --lockupY: 0; }
}

.ma-explore { padding: clamp(24px, 4vw, 56px) 0px; }

.ma-explore__wrap { width: min(1120px, 100% - 32px); margin: 0px auto; display: grid; gap: 18px; }

.ma-card { border-radius: var(--r-md); background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(255, 255, 255, 0.1); box-shadow: rgba(0, 0, 0, 0.22) 0px 18px 55px; overflow: hidden; }

.ma-card--hero { position: relative; min-height: clamp(340px, 46vw, 420px); display: grid; align-items: end; }

.ma-card__bg { position: absolute; inset: 0px; z-index: 0; }

.ma-card__bg img { width: 100%; height: 100%; object-fit: cover; display: block; transform: scale(1.02); }

.ma-card--hero::before { content: ""; position: absolute; inset: 0px; z-index: 1; background: linear-gradient(to top, rgba(8, 12, 24, 0.78) 0%, rgba(8, 12, 24, 0.35) 55%, rgba(8, 12, 24, 0.1) 100%); }

.ma-card__heroContent { position: relative; z-index: 2; padding: clamp(18px, 3vw, 28px); max-width: 56ch; }

.ma-card__kicker { margin: 0px 0px 8px; font-size: var(--fs-section-title); font-weight: bold; line-height: var(--lh-section-title); }

.ma-card__title { margin: 0px 0px 10px; font-size: var(--fs-section-subtitle); font-weight: bold; line-height: var(--fs-section-subtitle); }

.ma-card__subtitle { margin: 0px 0px 10px; font-size: clamp(24px, 3.2vw, 40px); line-height: 1.05; }

.ma-card__text { margin: 0px 0px 14px; opacity: 0.9; }

.ma-card__link { display: inline-flex; align-items: center; gap: 6px; text-decoration: none; font-weight: 600; }

.ma-card__link:focus-visible { outline: currentcolor solid 2px; outline-offset: 3px; border-radius: var(--r-md); }

.ma-card--split { display: grid; grid-template-columns: 1fr; }

.ma-card__media { aspect-ratio: 16 / 9; }

.ma-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; }

.ma-card__body { padding: 18px; align-content: flex-end; }

.ma-card__body img { margin-bottom: 18px; }

@media (min-width: 860px) {
.ma-card--split { grid-template-columns: 1.05fr 0.95fr; min-height: 280px; }
.ma-card__media { aspect-ratio: 1 / 1; height: 100%; }
.ma-card--reverse { grid-template-columns: 0.95fr 1.05fr; }
.ma-card--reverse .ma-card__media { order: 2; }
.ma-card--reverse .ma-card__body { order: 1; }
}

.ma-explore__subhead { text-align: center; padding: 10px 0px 4px; }

.ma-explore__subhead h2 { margin: 10px 0px 6px; font-size: clamp(20px, 2.6vw, 30px); line-height: 1.15; }

.ma-explore__subhead p { margin: 0px; opacity: 0.85; }

.ma-explore__grid2 { display: grid; grid-template-columns: 1fr; gap: 18px; }

@media (min-width: 860px) {
.ma-explore__grid2 { grid-template-columns: 1fr 1fr; }
}

.ma-card--mini { padding: 18px; text-align: center; }

.ma-card__logos { display: flex; justify-content: center; align-items: center; gap: 28px; margin-bottom: 24px; }

.ma-card__logos .ma-card__miniIcon { width: 200px; height: 200px; margin: 6px 0px 14px; border-radius: var(--r-md); background: rgba(255, 255, 255, 0.07); border: 1px solid rgba(255, 255, 255, 0.1); display: grid; place-items: center; overflow: hidden; }

.ma-card__miniIcon { width: 200px; height: 200px; margin: 6px auto 14px; border-radius: var(--r-md); background: rgba(255, 255, 255, 0.07); border: 1px solid rgba(255, 255, 255, 0.1); display: grid; place-items: center; overflow: hidden; }

.ma-card__miniIcon img { width: 100%; height: auto; object-fit: contain; display: block; padding: 20px; }

.ma-card--wide { padding: clamp(18px, 3vw, 26px); }

.ma-card__wideBody { max-width: 70ch; margin: 0px auto; text-align: center; }

.ma-card__btn { display: inline-flex; align-items: center; justify-content: center; padding: 12px 16px; border-radius: var(--r-md); text-decoration: none; font-weight: 700; border: 1px solid rgba(255, 255, 255, 0.14); background: rgba(255, 255, 255, 0.08); }

.ma-card__btn:focus-visible { outline: currentcolor solid 2px; outline-offset: 3px; }

.ma-cardslider { --cs-gap: 14px; --cs-visible: 2; --cs-container: min(var(--container, 1120px), 100vw); --cs-edge: max(20px, calc((100vw - var(--cs-container)) / 2)); --cs-peek: var(--cs-edge); --cs-card-radius: 20px; --cs-card-bg: rgba(255,255,255,.06); --cs-card-bd: rgba(255,255,255,.12); position: relative; width: 100%; }

.page > .ma-cardslider { width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }

.ma-cardslider__h { font-size: var(--fs-element-title); line-height: var(--lg-element-title); }

.ma-cardslider__viewport { width: 100%; overflow: auto hidden; overscroll-behavior-x: contain; scroll-snap-type: x; scroll-padding-left: var(--cs-edge); scroll-padding-right: var(--cs-edge); padding: 18px var(--cs-edge) 12px; scrollbar-width: none; }

.ma-cardslider__viewport::-webkit-scrollbar { display: none; }

.ma-cardslider__track { display: grid; grid-auto-flow: column; gap: var(--cs-gap); width: max-content; padding: 0px; grid-auto-columns: max(240px, calc(
    (var(--cs-container) - ((var(--cs-visible) - 1) * var(--cs-gap)) - var(--cs-peek))
    / var(--cs-visible)
  )); }

.ma-cardslider__item { scroll-snap-align: start; min-width: 240px; }

.ma-cardslider__card { height: 100%; border: 1px solid var(--cs-card-bd); background: var(--cs-card-bg); border-radius: var(--cs-card-radius); overflow: hidden; backdrop-filter: blur(12px) saturate(1.05); }

.ma-cardslider__media { aspect-ratio: 16 / 9; background: rgba(0, 0, 0, 0.12); }

.ma-cardslider__media img { width: 100%; height: 100%; object-fit: cover; display: block; }

.ma-cardslider__body { padding: 14px 14px 16px; }

.ma-cardslider__controls { display: flex; justify-content: flex-end; gap: 10px; padding: 10px var(--cs-edge) 22px; }

.ma-cardslider__media img { -webkit-user-drag: none; user-select: none; pointer-events: none; }

.ma-cardslider__viewport { touch-action: pan-y; cursor: grab; }

.ma-cardslider__media img { -webkit-user-drag: none; user-select: none; }

@media (prefers-reduced-motion: reduce) {
.ma-cardslider__viewport { scroll-behavior: auto !important; }
}

.vip-story--v2 { --vip-badge-alpha: 0; --vip-badge-scale: .28; }

.vip-story--v2 .vip-story__bg { z-index: 1; }

.vip-story--v2 .vip-story__badge { top: 20px; height: 100svh; z-index: 3; align-items: flex-start; opacity: var(--vip-badge-alpha); transform: translateX(-50%) scale(var(--vip-badge-scale)); transform-origin: 50% 0px; will-change: opacity, transform; }

.vip-story--v2 .vip-story__badge img { width: auto; height: min(72svh, 42rem); max-width: min(34vw, 31rem); max-height: 72svh; opacity: 1; pointer-events: none; filter: drop-shadow(rgba(0, 0, 0, 0.38) 0px 1.4rem 2.8rem); transform-origin: 50% 0px; will-change: transform; }

.vip-story--v2 .vip-story__stage { top: var(--header-height, 4.5rem); height: calc(100svh - var(--header-height, 4.5rem)); min-height: 0px; box-sizing: border-box; z-index: 4; overflow: hidden; }

.vip-story--v2 .vip-story__left { display: flex; flex-direction: column; gap: 0.65rem; }

.vip-story--v2 .vip-kpi { margin-bottom: 0px; }

.vip-story--v2 .vip-kpi[data-step] { opacity: 0; transform: translate3d(0px, 4.5rem, 0px) scale(0.97); transform-origin: left center; transition: opacity 0.42s, transform 0.62s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.45s; will-change: opacity, transform; }

.vip-story--v2 .vip-card[data-step] { transition: opacity 0.24s linear, transform 0.24s linear; will-change: opacity, transform; }

.ma-vmask__lockup svg .cls-1 { fill: var(--ma-blue, #0066ff) !important; }

.ma-vmask__lockup svg .cls-2 { fill: var(--ma-cream, #fffaf5) !important; }

.recinto-production-page .ma-vmask, .recinto-production-page .ma-vmask__stage, .recinto-production-page .ma-vmask__video { opacity: 1 !important; visibility: visible; }

.recinto-production-page .ma-vmask { z-index: 2; }

.recinto-production-page .ma-vmask__stage { z-index: 1; }

.recinto-production-page .ma-vmask__video { z-index: 2; }

.recinto-production-page .ma-vmask__overlay { z-index: 3; }

.ma-card img[src*="/EAA.webp"] { display: block; width: auto; max-width: min(100%, 14rem); height: auto; opacity: 1; }

@media (max-width: 979px) {
.vip-story--v2 { min-height: auto !important; }
.vip-story--v2 .vip-story__badge { position: relative; top: auto; left: auto; width: 100%; height: auto; padding: 2rem 1rem 1rem; opacity: 1; transform: none; }
.vip-story--v2 .vip-story__badge img { width: min(72vw, 22rem); height: auto; max-width: 100%; max-height: none; animation: auto ease 0s 1 normal none running none; }
.vip-story--v2 .vip-story__stage { position: relative; top: auto; height: auto; overflow: visible; }
.vip-story--v2 .vip-kpi[data-step], .vip-story--v2 .vip-card[data-step], .vip-story--v2 .vip-right__inner, .vip-story--v2 .vip-story__left { opacity: 1 !important; transform: none !important; }
}

@media (prefers-reduced-motion: reduce) {
.vip-story--v2 .vip-story__badge img { animation: auto ease 0s 1 normal none running none !important; }
.vip-story--v2 .vip-kpi[data-step], .vip-story--v2 .vip-card[data-step] { transition: none !important; }
}

/* Estados dinámicos aplicados por los controladores de Recinto. Se incluyen
   expresamente porque no están presentes en el HTML durante la carga inicial. */
.ma-stats.is-inview .ma-stat {
  transform: translateY(0);
  opacity: 1;
}

.vip-story.is-bg-on .vip-story__bg {
  visibility: visible;
  transition: opacity .28s ease, visibility 0s linear 0s;
}

.vip-story.is-armed .vip-right__inner {
  opacity: 1 !important;
  transition: opacity .28s ease;
}

.vip-story.is-armed .vip-story__left {
  opacity: 1 !important;
  transform: translateY(0) !important;
  transition:
    transform .55s cubic-bezier(.22, .61, .36, 1),
    opacity .35s ease;
}

.vip-story--v2 .vip-kpi[data-step].is-v2-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

.vip-story--v2 .vip-kpi[data-step].is-v2-visible.is-v2-active {
  position: relative;
  z-index: 2;
  transform: translate3d(0, 0, 0) scale(1.055);
  box-shadow: 0 1rem 2.4rem rgb(var(--ma-dark-blue-rgb), .2);
}

.ma-cardslider__viewport.is-dragging {
  cursor: grabbing;
}
