/**
 * OM Flyers — Estilos v3.1
 * Glassmorphism + transparencias + diseño tipo Panamá
 */

/* ============================================================
 * Body & toolbar (NO se captura)
 * ============================================================ */
.om-flyer-body {
    margin: 0;
    padding: 40px 20px 80px;
    background: #1a1a20;
    font-family: 'Inter', sans-serif;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    color: #fff;
}

.om-flyer-toolbar {
    display: flex;
    gap: 10px;
    padding: 14px 18px;
    background: #fff;
    color: #3f2161;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
    align-items: center;
    flex-wrap: wrap;
    position: sticky;
    top: 20px;
    z-index: 100;
}
.om-flyer-toolbar-label { font-weight: 600; font-size: 14px; color: #4b5563; }
.om-flyer-toolbar button {
    padding: 10px 18px; border: none;
    background: #7835E8; color: #fff; border-radius: 8px;
    font-weight: 600; cursor: pointer; font-size: 14px;
    font-family: inherit; transition: background 0.15s;
}
.om-flyer-toolbar button:hover:not(:disabled) { background: #6223d6; }
.om-flyer-toolbar button:disabled { background: #a7a3b0; cursor: wait; }
.om-flyer-embed .om-flyer-toolbar { display: none; }

/* ============================================================
 * Canvas
 * ============================================================ */
.om-flyer-canvas {
    position: relative;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    box-sizing: border-box;
}
.om-flyer-canvas--post { width: 1080px; height: 1350px; }
.om-flyer-canvas--story { width: 1080px; height: 1920px; }
.om-flyer-canvas--a4 { width: 2480px; height: 3508px; }

/* Capa fondo */
.om-flyer-bg {
    position: absolute; inset: 0;
    background-size: cover; background-position: center;
    z-index: 1;
    /* Leve zoom-in para que los bordes del blur no se noten */
    transform: scale(1.02);
}
.om-flyer-bg--default {
    background: linear-gradient(135deg, #E86F1F 0%, #C73E1D 60%, #3f2161 100%);
}

/* Capa scrim: gradiente contextual */
.om-flyer-scrim {
    position: absolute; inset: 0; z-index: 2;
    background:
        linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.20) 0%,
            rgba(0, 0, 0, 0.08) 30%,
            rgba(0, 0, 0, 0.05) 55%,
            rgba(0, 0, 0, 0.35) 78%,
            rgba(0, 0, 0, 0.72) 100%
        );
}

/* Overlay difuminado detrás del HERO — gradient suave negro/azul marino integrado */
.om-flyer-v3-hero-overlay {
    position: absolute;
    top: 175px;
    left: 50%;
    transform: translateX(-50%);
    width: 92%;
    height: 460px;
    z-index: 3;
    pointer-events: none;
    background: radial-gradient(
        ellipse at center,
        rgba(10, 14, 30, 0.38) 0%,
        rgba(10, 14, 30, 0.32) 35%,
        rgba(10, 14, 30, 0.18) 65%,
        rgba(10, 14, 30, 0.04) 85%,
        rgba(10, 14, 30, 0) 100%
    );
    filter: blur(8px);
}

/* Badge de cortesía dentro del precio-box */
.om-flyer-v3-cortesia-badge {
    position: relative;
    margin-top: 10px;
    padding: 7px 12px;
    background: rgba(255, 255, 255, 0.20);
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 100px;
    font-size: 12.5px;
    font-weight: 800;
    letter-spacing: 0.04em;
    line-height: 1.2;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3);
    color: #fff;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

/* ============================================================
 * v3 · HEADER (logo transparente + destino glass badge)
 * ============================================================ */
.om-flyer-v3-header {
    position: absolute;
    top: 45px; left: 50px; right: 50px;
    z-index: 10;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}

/* Logo sin fondo, solo sombra para legibilidad */
.om-flyer-v3-logo {
    max-height: 95px;
    max-width: 280px;
    object-fit: contain;
    filter:
        drop-shadow(0 4px 10px rgba(0, 0, 0, 0.5))
        drop-shadow(0 2px 4px rgba(0, 0, 0, 0.4));
}

/* Destino: pill glass naranja */
.om-flyer-v3-destino-badge {
    background: linear-gradient(135deg, rgba(120, 53, 232, 0.72), rgba(63, 33, 97, 0.72));
    backdrop-filter: blur(16px) saturate(140%);
    -webkit-backdrop-filter: blur(16px) saturate(140%);
    color: #fff;
    padding: 13px 26px;
    border-radius: 100px;
    font-size: 22px;
    font-weight: 800;
    letter-spacing: 0.05em;
    box-shadow:
        0 10px 24px rgba(0, 0, 0, 0.30),
        0 2px 6px rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.25);
    border: 1px solid rgba(255, 255, 255, 0.22);
    white-space: nowrap;
    max-width: 340px;
    overflow: hidden;
    text-overflow: ellipsis;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
}

/* ============================================================
 * v3 · HERO (eyebrow glass + título + pills glass)
 * ============================================================ */
.om-flyer-v3-hero {
    position: absolute;
    top: 215px;
    left: 50px; right: 50px;
    z-index: 6;
    text-align: center;
}

.om-flyer-v3-eyebrow-badge {
    display: inline-block;
    background: rgba(120, 53, 232, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    color: #fff;
    padding: 10px 28px;
    border-radius: 100px;
    font-size: 21px;
    font-weight: 700;
    letter-spacing: 0.04em;
    margin-bottom: 18px;
    box-shadow:
        0 8px 22px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.22);
    border: 1px solid rgba(255, 255, 255, 0.18);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
    position: relative;
    z-index: 2;
}

.om-flyer-v3-titulo {
    font-size: 95px;
    line-height: 0.92;
    font-weight: 900;
    margin: 0 0 22px;
    letter-spacing: -0.02em;
    color: #fff;
    text-shadow:
        0 2px 8px rgba(0, 0, 0, 0.35),
        0 6px 18px rgba(0, 0, 0, 0.35);
    word-break: keep-all;
    overflow-wrap: normal;
    hyphens: manual;
    -webkit-line-clamp: 3;
    position: relative;
    z-index: 2;
}

.om-flyer-v3-pills {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

.om-flyer-v3-pill {
    padding: 12px 26px;
    border-radius: 100px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.03em;
    white-space: nowrap;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow:
        0 6px 20px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.25);
}

.om-flyer-v3-pill--dur {
    background: rgba(63, 33, 97, 0.50);
    color: #fff;
    font-size: 24px;
    font-weight: 900;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.om-flyer-v3-pill--fechas {
    background: rgba(255, 255, 255, 0.55);
    color: #fff;
    font-weight: 800;
    border-color: rgba(255, 255, 255, 0.4);
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.35);
}

.om-flyer-v3-pill--origen {
    background: rgba(255, 255, 255, 0.50);
    color: #fff;
    font-weight: 600;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.35);
}

/* ============================================================
 * v3 · POLAROIDS
 * ============================================================ */
.om-flyer-v3-polaroids {
    position: absolute;
    top: 850px;
    left: 50px;
    right: 50px;
    z-index: 5;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

.om-flyer-v3-polaroid {
    background: #fff;
    padding: 8px 8px 10px;
    border-radius: 4px;
    box-shadow:
        0 12px 28px rgba(0, 0, 0, 0.32),
        0 4px 10px rgba(0, 0, 0, 0.18);
    width: 280px;
    flex-shrink: 0;
}

.om-flyer-v3-polaroid-img {
    width: 100%;
    height: 235px;
    background-size: cover;
    background-position: center;
    border-radius: 3px;
}

.om-flyer-v3-polaroid-label {
    text-align: center;
    padding-top: 10px;
    color: #2c2c3a;
    font-family: 'Caveat', cursive;
    font-size: 28px;
    font-weight: 600;
    line-height: 1.1;
}

.om-flyer-v3-polaroid:not(:has(.om-flyer-v3-polaroid-label)) {
    padding-bottom: 12px;
}

.om-flyer-v3-polaroid--0 {
    transform: rotate(-2.5deg) translateY(6px);
    z-index: 1;
}
.om-flyer-v3-polaroid--1 {
    transform: rotate(0deg) translateY(-6px) scale(1.05);
    z-index: 3;
    margin-left: -14px;
    margin-right: -14px;
    box-shadow:
        0 16px 36px rgba(0, 0, 0, 0.38),
        0 6px 14px rgba(0, 0, 0, 0.22);
}
.om-flyer-v3-polaroid--2 {
    transform: rotate(2.5deg) translateY(3px);
    z-index: 2;
}

/* ============================================================
 * v3 · CAJA INFERIOR — GLASS
 * ============================================================ */
.om-flyer-v3-bottom {
    position: absolute;
    left: 50px; right: 50px;
    bottom: 225px;
    z-index: 7;
    display: flex;
    gap: 16px;
    align-items: stretch;
}

/* Caja INCLUYE: glassmorphism blanco */
.om-flyer-v3-beneficios-box {
    flex: 1 1 auto;
    background: rgba(255, 255, 255, 0.94);
    backdrop-filter: blur(22px) saturate(180%);
    -webkit-backdrop-filter: blur(22px) saturate(180%);
    color: #1f1f2c;
    padding: 24px 28px;
    border-radius: 20px;
    box-shadow:
        0 14px 34px rgba(0, 0, 0, 0.32),
        0 4px 10px rgba(0, 0, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
    border: 1px solid rgba(255, 255, 255, 0.6);
}

.om-flyer-v3-beneficios-titulo {
    font-size: 15px;
    font-weight: 900;
    letter-spacing: 0.22em;
    color: #7835E8;
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1.5px solid rgba(120, 53, 232, 0.15);
}

.om-flyer-v3-beneficios {
    list-style: none;
    padding: 0; margin: 0;
}

.om-flyer-v3-beneficios li {
    font-size: 18px;
    padding-left: 34px;
    margin-bottom: 9px;
    position: relative;
    line-height: 1.35;
    font-weight: 600;
    color: #1f1f2c;
}
.om-flyer-v3-beneficios li:last-child { margin-bottom: 0; }

.om-flyer-v3-beneficios li::before {
    content: "";
    position: absolute;
    left: 0; top: 3px;
    width: 22px; height: 22px;
    background: linear-gradient(135deg, #7835E8, #5C1F9E);
    border-radius: 50%;
    box-shadow: 0 2px 5px rgba(120, 53, 232, 0.30);
}
.om-flyer-v3-beneficios li::after {
    content: "";
    position: absolute;
    left: 7px; top: 7px;
    width: 5px; height: 9px;
    border-right: 2.5px solid #fff;
    border-bottom: 2.5px solid #fff;
    transform: rotate(45deg);
}

/* Caja PRECIO: sólida con gradiente (debe resaltar) */
.om-flyer-v3-precio-box {
    flex: 0 0 250px;
    background: linear-gradient(135deg, #7835E8 0%, #3f2161 100%);
    color: #fff;
    padding: 20px 18px;
    border-radius: 20px;
    box-shadow:
        0 16px 36px rgba(120, 53, 232, 0.45),
        0 8px 16px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.25);
    border: 1px solid rgba(255, 255, 255, 0.15);
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    overflow: hidden;
}

/* Brillo sutil en el precio */
.om-flyer-v3-precio-box::before {
    content: "";
    position: absolute;
    top: -50%; left: -50%;
    width: 200%; height: 200%;
    background: radial-gradient(ellipse at top left, rgba(255, 255, 255, 0.2) 0%, transparent 50%);
    pointer-events: none;
}

.om-flyer-v3-precio-desde {
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.22em;
    margin-bottom: 4px;
    opacity: 0.92;
    text-transform: uppercase;
    position: relative;
}

.om-flyer-v3-precio-monto {
    font-size: 64px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.02em;
    margin: 2px 0 4px;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.30);
    position: relative;
}

.om-flyer-v3-precio-unidad {
    font-size: 13.5px;
    font-weight: 700;
    opacity: 0.95;
    letter-spacing: 0.06em;
    line-height: 1.25;
    position: relative;
}

/* ============================================================
 * v3 · SLOGAN — glass mejorado
 * ============================================================ */
.om-flyer-v3-slogan {
    position: absolute;
    left: 50px; right: 50px;
    bottom: 140px;
    z-index: 8;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0.08em;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(16px) saturate(150%);
    -webkit-backdrop-filter: blur(16px) saturate(150%);
    padding: 12px 24px;
    border-radius: 100px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    box-shadow:
        0 8px 24px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.3);
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.5);
}

/* ============================================================
 * v3 · FOOTER
 * ============================================================ */
.om-flyer-v3-footer {
    position: absolute;
    left: 50px; right: 50px;
    bottom: 40px;
    z-index: 8;
    text-align: center;
    color: #fff;
}

.om-flyer-v3-footer-nombre {
    font-size: 22px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6);
}

.om-flyer-v3-footer-meta {
    font-size: 15px;
    font-weight: 500;
    opacity: 0.92;
    margin-top: 4px;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}

.om-flyer-v3-footer-tyc {
    font-size: 11px;
    font-weight: 400;
    opacity: 0.65;
    margin-top: 8px;
    font-style: italic;
}

/* ============================================================
 * v3 · STORY OVERRIDES (1080×1920) — formato vertical
 * Reposiciona elementos para aprovechar la altura extra
 * ============================================================ */

/* Header: más espacio arriba (Instagram tapa los primeros ~150px con UI) */
.om-flyer-canvas--story .om-flyer-v3-header {
    top: 130px;
    left: 60px;
    right: 60px;
}

.om-flyer-canvas--story .om-flyer-v3-logo {
    max-height: 110px;
    max-width: 320px;
}

.om-flyer-canvas--story .om-flyer-v3-destino-badge {
    font-size: 26px;
    padding: 16px 32px;
}

/* Hero: más abajo, título aún más grande */
.om-flyer-canvas--story .om-flyer-v3-hero {
    top: 340px;
    left: 60px;
    right: 60px;
}

.om-flyer-canvas--story .om-flyer-v3-eyebrow-badge {
    font-size: 26px;
    padding: 13px 36px;
    margin-bottom: 22px;
}

.om-flyer-canvas--story .om-flyer-v3-titulo {
    font-size: 140px;
    line-height: 0.88;
    margin-bottom: 32px;
}

.om-flyer-canvas--story .om-flyer-v3-pills {
    gap: 14px;
}

.om-flyer-canvas--story .om-flyer-v3-pill {
    font-size: 24px;
    padding: 14px 30px;
}

.om-flyer-canvas--story .om-flyer-v3-pill--dur {
    font-size: 28px;
}

/* Polaroids: más abajo y más grandes */
.om-flyer-canvas--story .om-flyer-v3-polaroids {
    top: 880px;
    left: 60px;
    right: 60px;
    gap: 12px;
}

.om-flyer-canvas--story .om-flyer-v3-polaroid {
    width: 310px;
}

.om-flyer-canvas--story .om-flyer-v3-polaroid-img {
    height: 290px;
}

.om-flyer-canvas--story .om-flyer-v3-polaroid-label {
    font-size: 32px;
}

/* Caja inferior: más abajo, márgenes mayores (UI de stories abajo) */
.om-flyer-canvas--story .om-flyer-v3-bottom {
    bottom: 360px;
    left: 60px;
    right: 60px;
    gap: 20px;
}

.om-flyer-canvas--story .om-flyer-v3-beneficios-titulo {
    font-size: 18px;
}

.om-flyer-canvas--story .om-flyer-v3-beneficios li {
    font-size: 21px;
    padding-left: 36px;
    margin-bottom: 8px;
}

.om-flyer-canvas--story .om-flyer-v3-beneficios li::before {
    font-size: 26px;
}

.om-flyer-canvas--story .om-flyer-v3-precio-box {
    flex: 0 0 290px;
    padding: 26px 22px;
}

.om-flyer-canvas--story .om-flyer-v3-precio-desde {
    font-size: 21px;
}

.om-flyer-canvas--story .om-flyer-v3-precio-monto {
    font-size: 72px;
}

.om-flyer-canvas--story .om-flyer-v3-precio-unidad {
    font-size: 16px;
}

/* Slogan + footer: más arriba (la UI de stories tapa los últimos ~250px) */
.om-flyer-canvas--story .om-flyer-v3-slogan {
    bottom: 250px;
    font-size: 24px;
    padding: 14px 32px;
}

.om-flyer-canvas--story .om-flyer-v3-footer {
    bottom: 130px;
    left: 60px;
    right: 60px;
}

.om-flyer-canvas--story .om-flyer-v3-footer-nombre {
    font-size: 26px;
}

.om-flyer-canvas--story .om-flyer-v3-footer-meta {
    font-size: 17px;
}

.om-flyer-canvas--story .om-flyer-v3-footer-tyc {
    font-size: 13px;
}

/* === FOOTER LOGO (reemplaza el nombre de la agencia) === */
.om-flyer-v3-footer-logo {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 6px;
}
.om-flyer-v3-footer-logo-img {
    height: 60px;
    width: auto;
    max-width: 220px;
    object-fit: contain;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.4));
    opacity: 1;
}
/* Story format: logo un poco mas grande dado el formato vertical */
.om-flyer-canvas--story .om-flyer-v3-footer-logo {
    margin-bottom: 10px;
}
.om-flyer-canvas--story .om-flyer-v3-footer-logo-img {
    height: 80px;
    max-width: 300px;
}

/* ============================================================
 * v3 · REFINAMIENTO PREMIUM · LUXURY TRAVEL UI
 * Glassmorphism unificado · Tipografía moderna · Respiración
 * Override del estilo anterior (mantiene selectores)
 * ============================================================ */

/* --- Sistema glass unificado (variables consistentes) --- */
.om-flyer-canvas--post,
.om-flyer-canvas--story,
.om-flyer-canvas--a4 {
    --glass-bg: rgba(255, 255, 255, 0.16);
    --glass-bg-strong: rgba(255, 255, 255, 0.22);
    --glass-border: rgba(255, 255, 255, 0.28);
    --glass-blur: blur(22px) saturate(170%);
    --glass-shadow:
        0 6px 24px rgba(0, 0, 0, 0.10),
        inset 0 1px 0 rgba(255, 255, 255, 0.32);
    --soft-shadow: 0 4px 16px rgba(0, 0, 0, 0.18);
    --text-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.30);
    --text-shadow-titulo: 0 4px 18px rgba(0, 0, 0, 0.35), 0 1px 3px rgba(0, 0, 0, 0.25);
}

/* --- Scrim del fondo: menos haze, más nitidez --- */
.om-flyer-scrim {
    background: linear-gradient(180deg,
        rgba(0, 0, 0, 0.10) 0%,
        rgba(0, 0, 0, 0.05) 30%,
        rgba(0, 0, 0, 0.18) 65%,
        rgba(0, 0, 0, 0.45) 100%) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* ============================================================
 * Destino badge — glass unificado
 * ============================================================ */
.om-flyer-v3-destino-badge {
    background: var(--glass-bg) !important;
    backdrop-filter: var(--glass-blur) !important;
    -webkit-backdrop-filter: var(--glass-blur) !important;
    color: #fff !important;
    padding: 11px 22px !important;
    border-radius: 100px !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    letter-spacing: 0.10em !important;
    box-shadow: var(--glass-shadow) !important;
    border: 1px solid var(--glass-border) !important;
    text-shadow: var(--text-shadow-soft) !important;
    max-width: 360px !important;
    text-transform: uppercase;
}

/* ============================================================
 * HERO · Título y eyebrow
 * ============================================================ */
.om-flyer-v3-hero {
    top: 200px !important;
}

.om-flyer-v3-eyebrow-badge {
    background: var(--glass-bg) !important;
    backdrop-filter: var(--glass-blur) !important;
    -webkit-backdrop-filter: var(--glass-blur) !important;
    padding: 9px 22px !important;
    border-radius: 100px !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0.12em !important;
    margin-bottom: 22px !important;
    box-shadow: var(--glass-shadow) !important;
    border: 1px solid var(--glass-border) !important;
    text-shadow: var(--text-shadow-soft) !important;
    text-transform: uppercase;
}

.om-flyer-v3-titulo {
    font-size: 78px !important;
    font-weight: 700 !important;
    line-height: 0.96 !important;
    letter-spacing: -0.025em !important;
    margin: 0 0 28px !important;
    text-shadow: var(--text-shadow-titulo) !important;
}

/* ============================================================
 * Pills (días, fechas, origen) — glass unificado
 * ============================================================ */
.om-flyer-v3-pills {
    gap: 14px !important;
}

.om-flyer-v3-pill {
    background: var(--glass-bg) !important;
    backdrop-filter: var(--glass-blur) !important;
    -webkit-backdrop-filter: var(--glass-blur) !important;
    border: 1px solid var(--glass-border) !important;
    box-shadow: var(--glass-shadow) !important;
    padding: 11px 22px !important;
    border-radius: 100px !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
    color: #fff !important;
    text-shadow: var(--text-shadow-soft) !important;
}

.om-flyer-v3-pill--dur {
    background: var(--glass-bg-strong) !important;
    font-size: 19px !important;
    font-weight: 700 !important;
}

.om-flyer-v3-pill--fechas {
    background: var(--glass-bg) !important;
    color: #fff !important;
    font-weight: 600 !important;
    border-color: var(--glass-border) !important;
    text-shadow: var(--text-shadow-soft) !important;
}

.om-flyer-v3-pill--origen {
    background: var(--glass-bg) !important;
    color: #fff !important;
    font-weight: 500 !important;
    text-shadow: var(--text-shadow-soft) !important;
}

/* ============================================================
 * Polaroids — marcos más finos, sombras más suaves
 * ============================================================ */
.om-flyer-v3-polaroid {
    padding: 6px 6px 6px !important;
    border-radius: 8px !important;
    box-shadow:
        0 12px 24px rgba(0, 0, 0, 0.18),
        0 2px 4px rgba(0, 0, 0, 0.10) !important;
    border: 0 !important;
}

.om-flyer-v3-polaroid-img {
    border-radius: 4px !important;
}

.om-flyer-v3-polaroid-label {
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em !important;
}

/* ============================================================
 * Beneficios "INCLUYE" — bloque más compacto y elegante
 * ============================================================ */
.om-flyer-v3-beneficios-box {
    background: var(--glass-bg) !important;
    backdrop-filter: var(--glass-blur) !important;
    -webkit-backdrop-filter: var(--glass-blur) !important;
    border: 1px solid var(--glass-border) !important;
    box-shadow: var(--glass-shadow) !important;
    padding: 18px 22px !important;
    border-radius: 16px !important;
}

.om-flyer-v3-beneficios-titulo {
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.18em !important;
    margin-bottom: 10px !important;
    color: rgba(255, 255, 255, 0.85) !important;
    text-transform: uppercase;
    text-shadow: var(--text-shadow-soft) !important;
}

.om-flyer-v3-beneficios li {
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    color: #fff !important;
    padding: 3px 0 3px 22px !important;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.35) !important;
}

.om-flyer-v3-beneficios li::before {
    font-size: 13px !important;
    top: 6px !important;
    color: rgba(255, 255, 255, 0.95) !important;
    font-weight: 700 !important;
}

/* ============================================================
 * Precio — glass premium (mantiene protagonismo, menos pesado)
 * ============================================================ */
.om-flyer-v3-precio-box {
    flex: 0 0 230px !important;
    background: var(--glass-bg-strong) !important;
    backdrop-filter: var(--glass-blur) !important;
    -webkit-backdrop-filter: var(--glass-blur) !important;
    color: #fff !important;
    padding: 22px 18px !important;
    border-radius: 18px !important;
    box-shadow:
        0 12px 32px rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
    border: 1px solid var(--glass-border) !important;
}

.om-flyer-v3-precio-box::before {
    background: radial-gradient(ellipse at top left, rgba(255, 255, 255, 0.18) 0%, transparent 55%) !important;
}

.om-flyer-v3-precio-desde {
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.22em !important;
    margin-bottom: 4px !important;
    opacity: 0.92 !important;
    text-shadow: var(--text-shadow-soft) !important;
}

.om-flyer-v3-precio-monto {
    font-size: 54px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: -0.025em !important;
    margin: 4px 0 !important;
    text-shadow: 0 3px 12px rgba(0, 0, 0, 0.28) !important;
}

.om-flyer-v3-precio-unidad {
    font-size: 12px !important;
    font-weight: 600 !important;
    opacity: 0.88 !important;
    letter-spacing: 0.10em !important;
    text-shadow: var(--text-shadow-soft) !important;
}

/* ============================================================
 * Slogan — glass unificado, más sutil
 * ============================================================ */
.om-flyer-v3-slogan {
    background: var(--glass-bg) !important;
    backdrop-filter: var(--glass-blur) !important;
    -webkit-backdrop-filter: var(--glass-blur) !important;
    border: 1px solid var(--glass-border) !important;
    box-shadow: var(--glass-shadow) !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0.12em !important;
    padding: 11px 22px !important;
    text-shadow: var(--text-shadow-soft) !important;
}

/* ============================================================
 * Espaciado general — más respiración
 * ============================================================ */
.om-flyer-v3-bottom {
    gap: 18px !important;
}

/* ============================================================
 * v3 · CAPTURE FIX + LOGO HOTEL
 * Fix html2canvas (no soporta backdrop-filter) + logo hotel
 * ============================================================ */

/* === Logo del hotel arriba a la derecha === */
.om-flyer-v3-header {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 16px !important;
}
.om-flyer-v3-hotel-logo-wrap {
    background: rgba(255, 255, 255, 0.92);
    border-radius: 14px;
    padding: 10px 16px;
    max-width: 280px;
    max-height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        0 6px 20px rgba(0, 0, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.om-flyer-v3-hotel-logo {
    max-height: 64px;
    max-width: 240px;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
}

/* ============================================================
 * MODO CAPTURA — Solido en vez de glass (html2canvas)
 * ============================================================ */
.om-flyer-canvas.is-capturing .om-flyer-v3-destino-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-eyebrow-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--dur,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--fechas,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--origen,
.om-flyer-canvas.is-capturing .om-flyer-v3-beneficios-box,
.om-flyer-canvas.is-capturing .om-flyer-v3-precio-box,
.om-flyer-canvas.is-capturing .om-flyer-v3-slogan {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Backgrounds solidos translucidos (sin necesidad de blur) */
.om-flyer-canvas.is-capturing .om-flyer-v3-destino-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-eyebrow-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--fechas,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--origen,
.om-flyer-canvas.is-capturing .om-flyer-v3-beneficios-box,
.om-flyer-canvas.is-capturing .om-flyer-v3-slogan {
    background: rgba(20, 14, 60, 0.55) !important;
    border-color: rgba(255, 255, 255, 0.40) !important;
}

.om-flyer-canvas.is-capturing .om-flyer-v3-pill--dur,
.om-flyer-canvas.is-capturing .om-flyer-v3-precio-box {
    background: rgba(20, 14, 60, 0.62) !important;
    border-color: rgba(255, 255, 255, 0.45) !important;
}

/* El wrap del logo hotel tambien se vuelve solido en captura */
.om-flyer-canvas.is-capturing .om-flyer-v3-hotel-logo-wrap {
    background: rgba(255, 255, 255, 0.97) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* ============================================================
 * v3 · FIX2 · LOGO HOTEL + LAYOUT PILLS + GLASS CAPTURE
 * ============================================================ */

/* === Logo del hotel: chico, sin fondo === */
.om-flyer-v3-hotel-logo-wrap {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    max-width: 200px !important;
    max-height: 56px !important;
    align-self: center !important;
}
.om-flyer-v3-hotel-logo {
    max-height: 40px !important;
    max-width: 180px !important;
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.30));
}

/* === Pills layout: 2 filas (duracion arriba, fechas abajo) === */
.om-flyer-v3-pills {
    flex-wrap: wrap !important;
    gap: 12px 14px !important;
    align-items: flex-start !important;
}
/* La duracion ocupa ancho completo para forzar el wrap */
.om-flyer-v3-pill--dur {
    flex: 1 0 100% !important;
    max-width: max-content !important;
    margin-right: auto !important;
}

/* ============================================================
 * MODO CAPTURA - Glass blanco translucido
 * ============================================================ */
.om-flyer-canvas.is-capturing .om-flyer-v3-destino-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-eyebrow-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--fechas,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--origen,
.om-flyer-canvas.is-capturing .om-flyer-v3-beneficios-box,
.om-flyer-canvas.is-capturing .om-flyer-v3-slogan {
    background: rgba(255, 255, 255, 0.22) !important;
    border-color: rgba(255, 255, 255, 0.45) !important;
}

.om-flyer-canvas.is-capturing .om-flyer-v3-pill--dur,
.om-flyer-canvas.is-capturing .om-flyer-v3-precio-box {
    background: rgba(255, 255, 255, 0.28) !important;
    border-color: rgba(255, 255, 255, 0.50) !important;
}

.om-flyer-canvas.is-capturing .om-flyer-v3-hotel-logo-wrap {
    background: transparent !important;
}

/* ============================================================
 * v3 · BALANCE v2 · Fuerza comercial + Glass moderno
 * Recupera impacto sin perder modernidad
 * ============================================================ */

/* === TITULO: peso 750, sombra mas visible === */
.om-flyer-v3-titulo {
    font-weight: 750 !important;
    text-shadow:
        0 5px 22px rgba(0, 0, 0, 0.40),
        0 2px 5px rgba(0, 0, 0, 0.28) !important;
}

/* === DESTINO BADGE: glass tinte morado === */
.om-flyer-v3-destino-badge {
    background: rgba(92, 31, 158, 0.38) !important;
    border-color: rgba(255, 255, 255, 0.42) !important;
    box-shadow:
        0 8px 24px rgba(41, 16, 143, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.38) !important;
}

/* === EYEBROW: glass tinte morado sutil === */
.om-flyer-v3-eyebrow-badge {
    background: rgba(92, 31, 158, 0.32) !important;
    border-color: rgba(255, 255, 255, 0.40) !important;
    box-shadow:
        0 6px 20px rgba(41, 16, 143, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
}

/* === PILL DUR (4 dias / 3 noches): morado destacado === */
.om-flyer-v3-pill--dur {
    background: rgba(92, 31, 158, 0.45) !important;
    border-color: rgba(255, 255, 255, 0.45) !important;
    box-shadow:
        0 8px 22px rgba(41, 16, 143, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.40) !important;
    font-weight: 700 !important;
}

/* === PILLS REGULARES (fechas, origen): mas opacidad === */
.om-flyer-v3-pill,
.om-flyer-v3-pill--fechas,
.om-flyer-v3-pill--origen {
    background: rgba(255, 255, 255, 0.26) !important;
    border-color: rgba(255, 255, 255, 0.42) !important;
}

/* === BENEFICIOS BOX: mas presencia === */
.om-flyer-v3-beneficios-box {
    background: rgba(255, 255, 255, 0.22) !important;
    border-color: rgba(255, 255, 255, 0.40) !important;
    box-shadow:
        0 10px 28px rgba(0, 0, 0, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.38) !important;
}

/* === PRECIO BOX: glass con tinte morado, fuerza comercial === */
.om-flyer-v3-precio-box {
    background: linear-gradient(135deg,
        rgba(92, 31, 158, 0.55) 0%,
        rgba(195, 63, 188, 0.42) 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.45) !important;
    box-shadow:
        0 14px 38px rgba(41, 16, 143, 0.35),
        0 4px 12px rgba(0, 0, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.45) !important;
}
.om-flyer-v3-precio-monto {
    font-weight: 750 !important;
    text-shadow: 0 3px 12px rgba(0, 0, 0, 0.32) !important;
}

/* === SLOGAN FOOTER: mas presencia === */
.om-flyer-v3-slogan {
    background: rgba(255, 255, 255, 0.24) !important;
    border-color: rgba(255, 255, 255, 0.42) !important;
    box-shadow:
        0 8px 24px rgba(0, 0, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.38) !important;
}

/* ============================================================
 * MODO CAPTURA - Reflejar tintes morados en la descarga
 * ============================================================ */
.om-flyer-canvas.is-capturing .om-flyer-v3-destino-badge {
    background: rgba(92, 31, 158, 0.62) !important;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-eyebrow-badge {
    background: rgba(92, 31, 158, 0.55) !important;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--dur {
    background: rgba(92, 31, 158, 0.65) !important;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-pill,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--fechas,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--origen {
    background: rgba(255, 255, 255, 0.32) !important;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-beneficios-box {
    background: rgba(255, 255, 255, 0.28) !important;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-precio-box {
    background: linear-gradient(135deg,
        rgba(92, 31, 158, 0.78) 0%,
        rgba(195, 63, 188, 0.62) 100%) !important;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-slogan {
    background: rgba(255, 255, 255, 0.30) !important;
}

/* ============================================================
 * v3 · FIX3 · Logo hotel mas grande + Pills dur centrado en fila propia
 * ============================================================ */

/* === Logo hotel: tamaño mas adecuado === */
.om-flyer-v3-hotel-logo-wrap {
    max-width: 280px !important;
    max-height: 90px !important;
}
.om-flyer-v3-hotel-logo {
    max-height: 64px !important;
    max-width: 240px !important;
    filter: drop-shadow(0 2px 10px rgba(0, 0, 0, 0.35));
}

/* === Pills: dur centrado en fila propia, fechas en fila siguiente centradas === */
.om-flyer-v3-pills {
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 14px !important;
}
/* La pill dur tiene ancho natural (no 100%), centrada via justify-content del padre.
   Para forzar que las fechas vayan en una fila DEBAJO,
   usamos un pseudo-element ::after en pill--dur que ocupe 100% width como wrap-break. */
.om-flyer-v3-pill--dur {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: max-content !important;
    margin: 0 !important;
    order: 1 !important;
}
/* Wrap-break virtual: forzar que las fechas (order 3) vayan a nueva fila */
.om-flyer-v3-pills > *:not(.om-flyer-v3-pill--dur) {
    order: 3 !important;
}
/* Insertar un break entre dur (order 1) y el resto (order 3) usando order 2 */
.om-flyer-v3-pills::before {
    content: "" !important;
    flex-basis: 100% !important;
    width: 0 !important;
    height: 0 !important;
    order: 2 !important;
    margin: 0 !important;
}

/* ============================================================
 * v3 · POLISH FINAL · Adaptabilidad + Refinamiento corporativo
 * ============================================================ */

/* === LOGO HOTEL: integrado al glass (no sticker) === */
.om-flyer-v3-hotel-logo-wrap {
    background: rgba(255, 255, 255, 0.12) !important;
    backdrop-filter: blur(18px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(160%) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    box-shadow:
        0 4px 16px rgba(0, 0, 0, 0.10),
        inset 0 1px 0 rgba(255, 255, 255, 0.30) !important;
    padding: 10px 16px !important;
    border-radius: 14px !important;
    max-height: 80px !important;
    max-width: 240px !important;
}
.om-flyer-v3-hotel-logo {
    max-height: 50px !important;
    max-width: 200px !important;
    filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.18));
    opacity: 0.95;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-hotel-logo-wrap {
    background: rgba(255, 255, 255, 0.18) !important;
}

/* === INCLUYE: compacto, premium === */
.om-flyer-v3-beneficios-box {
    padding: 14px 22px !important;
}
.om-flyer-v3-beneficios-titulo {
    margin-bottom: 8px !important;
    font-size: 12px !important;
}
.om-flyer-v3-beneficios li {
    padding: 2px 0 2px 22px !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}
.om-flyer-v3-beneficios li::before {
    top: 4px !important;
    font-size: 12px !important;
}

/* === Polaroids editorial: marcos finos === */
.om-flyer-v3-polaroid {
    padding: 5px 5px 5px !important;
    border-radius: 6px !important;
    box-shadow:
        0 8px 20px rgba(0, 0, 0, 0.13),
        0 1px 3px rgba(0, 0, 0, 0.08) !important;
}

/* === Slogan footer: mejor integración === */
.om-flyer-v3-slogan {
    margin-top: 16px !important;
    padding: 10px 22px !important;
    font-size: 15px !important;
    letter-spacing: 0.10em !important;
}

/* ============================================================
 * ADAPTABILIDAD DINÁMICA
 * ============================================================ */

/* === Título: max 2 lineas, hyphens, line-clamp === */
.om-flyer-v3-titulo {
    max-width: 100% !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
    hyphens: manual !important;
    line-height: 0.78 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    margin-bottom: 4px !important;
}
/* Clases auto-aplicadas por PHP segun longitud del titulo */
.om-flyer-v3-titulo.is-medium {
    font-size: 68px !important;
    line-height: 0.78 !important;
}
.om-flyer-v3-titulo.is-long {
    font-size: 58px !important;
    letter-spacing: -0.02em !important;
    line-height: 0.8 !important;
}
.om-flyer-v3-titulo.is-very-long {
    font-size: 48px !important;
    letter-spacing: -0.015em !important;
    line-height: 0.78 !important;
}

/* === Pills: wrap controlado, nowrap interno === */
.om-flyer-v3-pills {
    max-width: 100% !important;
}
.om-flyer-v3-pill,
.om-flyer-v3-pill--fechas,
.om-flyer-v3-pill--origen {
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
/* Muchas fechas: pills mas chicos, dos filas naturales */
.om-flyer-v3-pills.has-many-dates .om-flyer-v3-pill--fechas {
    font-size: 16px !important;
    padding: 9px 18px !important;
}

/* === Precio: protege ancho + escalado === */
.om-flyer-v3-precio-box {
    min-width: 210px !important;
    max-width: 280px !important;
    flex: 0 0 auto !important;
    overflow: hidden !important;
}
.om-flyer-v3-precio-monto {
    word-break: keep-all !important;
    white-space: nowrap !important;
    max-width: 100% !important;
}
/* Clases auto-aplicadas segun longitud del precio */
.om-flyer-v3-precio-monto.is-long {
    font-size: 46px !important;
}
.om-flyer-v3-precio-monto.is-very-long {
    font-size: 40px !important;
    letter-spacing: -0.03em !important;
}

/* === Header: alineacion robusta === */
.om-flyer-v3-header {
    flex-wrap: wrap !important;
    gap: 12px !important;
}

/* ============================================================
 * v3 · LOGO HOTEL FIX · Sin glass, mas grande, identico en captura
 * ============================================================ */

.om-flyer-v3-hotel-logo-wrap {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    max-height: 110px !important;
    max-width: 320px !important;
    align-self: flex-start !important;
}
.om-flyer-v3-hotel-logo {
    max-height: 90px !important;
    max-width: 280px !important;
    filter:
        drop-shadow(0 2px 8px rgba(0, 0, 0, 0.35))
        drop-shadow(0 1px 3px rgba(0, 0, 0, 0.20));
    opacity: 1 !important;
}

/* Captura: idéntico (sin background) */
.om-flyer-canvas.is-capturing .om-flyer-v3-hotel-logo-wrap {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* ============================================================
 * v3 · COLOR + SIZE · Color pills dur/fechas + tipografias mas grandes
 * ============================================================ */

/* === Color de pills dur (4 dias / 3 noches) y fechas: amarillo dorado === */
.om-flyer-v3-pill--dur,
.om-flyer-v3-pill--fechas {
    color: #FFFFFF !important;
}

/* === Tipografias mas grandes === */

/* Destino (MAZATLAN, BUCERIAS) */
.om-flyer-v3-destino-badge {
    font-size: 21px !important;
    padding: 12px 24px !important;
}

/* Pill duracion dias/noches */
.om-flyer-v3-pill--dur {
    font-size: 22px !important;
    padding: 12px 24px !important;
}

/* Pills de fechas */
.om-flyer-v3-pill--fechas {
    font-size: 19px !important;
    padding: 12px 22px !important;
}

/* INCLUYE: titulo y items */
.om-flyer-v3-beneficios-titulo {
    font-size: 15px !important;
}
.om-flyer-v3-beneficios li {
    font-size: 17px !important;
    line-height: 1.5 !important;
    padding: 4px 0 4px 24px !important;
}
.om-flyer-v3-beneficios li::before {
    font-size: 15px !important;
    top: 5px !important;
}


/* === WEIGHT BUMP · letras pills dur/fechas mas gruesas para no perderse === */
.om-flyer-v3-pill--dur {
    font-weight: 800 !important;
    text-shadow:
        0 2px 4px rgba(0, 0, 0, 0.45),
        0 1px 2px rgba(0, 0, 0, 0.32),
        0 0 1px rgba(0, 0, 0, 0.30) !important;
}
.om-flyer-v3-pill--fechas {
    font-weight: 700 !important;
    text-shadow:
        0 2px 4px rgba(0, 0, 0, 0.45),
        0 1px 2px rgba(0, 0, 0, 0.30),
        0 0 1px rgba(0, 0, 0, 0.28) !important;
}
.om-flyer-v3-destino-badge {
    font-weight: 700 !important;
    text-shadow:
        0 2px 4px rgba(0, 0, 0, 0.42),
        0 1px 2px rgba(0, 0, 0, 0.28) !important;
}
.om-flyer-v3-beneficios li {
    font-weight: 600 !important;
    text-shadow:
        0 2px 4px rgba(0, 0, 0, 0.45),
        0 1px 2px rgba(0, 0, 0, 0.30) !important;
}


/* ============================================================
 * FIX CONTORNO AL DESCARGAR (PNG/JPG/PDF)
 * El box-shadow del canvas se rendera como halo translucido sobre
 * fondo transparente, lo que produce un contorno visible al abrir
 * la imagen en cualquier visor con fondo blanco. Solo aplica durante
 * la captura, no afecta el render en pantalla.
 * ============================================================ */
.om-flyer-canvas.is-capturing {
    box-shadow: none !important;
    outline: none !important;
    border: none !important;
}


/* ============================================================
 * FIX BORDES DE CAJAS AL DESCARGAR
 * En pantalla el backdrop-filter difumina los borders blancos.
 * En captura (is-capturing) sin blur, esos borders quedan visibles
 * como marco alrededor de cada caja. Los transparentamos.
 * ============================================================ */
.om-flyer-canvas.is-capturing .om-flyer-v3-destino-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-eyebrow-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--dur,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--fechas,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--origen,
.om-flyer-canvas.is-capturing .om-flyer-v3-beneficios-box,
.om-flyer-canvas.is-capturing .om-flyer-v3-precio-box,
.om-flyer-canvas.is-capturing .om-flyer-v3-slogan,
.om-flyer-canvas.is-capturing .om-flyer-v3-hotel-logo-wrap {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}


/* === GTB · TABLA DE TARIFAS · grupos-post · solo estilos internos del precio-box === */
/* Variante con tabla — ancho un poco mayor para acomodar formato DBL — $X */
.om-flyer-v3-precio-box--tarifas {
    flex: 0 0 290px;
    padding: 18px 18px 16px;
    justify-content: flex-start;
}
.om-flyer-v3-precio-tarifas-titulo {
    font-size: 13.5px;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #fff;
    opacity: 0.98;
    margin-bottom: 1px;
    text-align: center;
    position: relative;
    z-index: 2;
}
.om-flyer-v3-precio-tarifas-sub {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: #fff;
    opacity: 0.78;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.22);
    text-align: center;
    position: relative;
    z-index: 2;
}
.om-flyer-v3-precio-tarifas {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100%;
    position: relative;
    z-index: 2;
}
.om-flyer-v3-precio-tarifas li {
    list-style: none !important;
}
.om-flyer-v3-precio-tarifas li::before,
.om-flyer-v3-precio-tarifas li::marker {
    content: none !important;
    display: none !important;
}
.om-flyer-v3-tarifa {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 10px;
    padding: 7px 0;
    line-height: 1.1;
}
.om-flyer-v3-tarifa + .om-flyer-v3-tarifa {
    border-top: 1px solid rgba(255, 255, 255, 0.10);
}
.om-flyer-v3-tarifa-label {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.14em;
    color: #fff;
    opacity: 0.92;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.om-flyer-v3-tarifa-label small {
    font-size: 9.5px;
    font-weight: 600;
    letter-spacing: 0.04em;
    opacity: 0.72;
    text-transform: none;
    margin-top: 2px;
    line-height: 1;
}
.om-flyer-v3-tarifa-sep {
    color: rgba(255, 255, 255, 0.45);
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
    justify-self: center;
    user-select: none;
}
.om-flyer-v3-tarifa-precio {
    font-size: 26px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.22);
    line-height: 1;
    font-feature-settings: "tnum" 1, "lnum" 1;
    justify-self: end;
}
.om-flyer-v3-tarifa--menor {
    margin-top: 3px;
    padding-top: 9px !important;
    border-top: 1px dashed rgba(255, 255, 255, 0.30) !important;
}
.om-flyer-v3-tarifa--menor .om-flyer-v3-tarifa-precio {
    font-size: 22px;
    font-weight: 700;
    opacity: 0.92;
}
/* Variante de unidad: moneda destacada + detalle por persona/noche */
.om-flyer-v3-precio-moneda {
    font-size: 19px;
    font-weight: 800;
    letter-spacing: 0.10em;
    line-height: 1;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
}
.om-flyer-v3-precio-unidad-detalle {
    display: block;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.10em;
    opacity: 0.88;
    line-height: 1.35;
    padding-top: 5px;
    margin-top: 3px;
    border-top: 1px solid rgba(255, 255, 255, 0.28);
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}
/* Badge cortesía: legible y prominente */
.om-flyer-v3-cortesia-badge {
    position: relative;
    margin-top: 14px;
    padding: 9px 16px;
    background: rgba(255, 255, 255, 0.18);
    border: 1.5px solid rgba(255, 255, 255, 0.55);
    border-radius: 100px;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1.1;
    color: #fff;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.30);
    display: inline-block;
    text-align: center;
    z-index: 2;
}


/* === GTB · REFINAMIENTOS FINALES · solo propiedades visuales internas === */
/* (1) Overlay título: más notorio sin tocar posición */
.om-flyer-v3-hero-overlay,
.om-flyer-canvas .om-flyer-v3-hero-overlay,
.om-flyer-canvas.is-capturing .om-flyer-v3-hero-overlay {
    background: radial-gradient(
        ellipse at center,
        rgba(8, 12, 28, 0.46) 0%,
        rgba(8, 12, 28, 0.40) 30%,
        rgba(8, 12, 28, 0.28) 55%,
        rgba(8, 12, 28, 0.10) 80%,
        rgba(8, 12, 28, 0) 100%
    ) !important;
}

/* (2) INCLUYE: letter-spacing más fino + evitar break de palabras */
.om-flyer-v3-beneficios-titulo {
    letter-spacing: 0.14em !important;
}
.om-flyer-v3-beneficios li {
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    hyphens: manual !important;
}

/* (3) Logo footer: más visible y con leve contraste */
.om-flyer-v3-footer-logo-img,
.om-flyer-canvas .om-flyer-v3-footer-logo-img,
.om-flyer-canvas.is-capturing .om-flyer-v3-footer-logo-img {
    height: 72px !important;
    max-width: 260px !important;
    opacity: 1 !important;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.25)) !important;
}

/* (4) Polaroids: marco un punto más fino sin tocar dimensiones */
.om-flyer-v3-polaroid,
.om-flyer-canvas .om-flyer-v3-polaroid,
.om-flyer-canvas.is-capturing .om-flyer-v3-polaroid {
    padding: 4px 4px 6px !important;
    border-radius: 3px !important;
}


/* === GTB · FIX POLAROIDS + TEXTO · solo dimensiones internas (no top/bottom) === */
/* INCLUYE: título más fino y suelto, items más livianos */
.om-flyer-v3-beneficios-titulo,
.om-flyer-canvas .om-flyer-v3-beneficios-titulo,
.om-flyer-canvas.is-capturing .om-flyer-v3-beneficios-titulo {
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    font-size: 13px !important;
}

.om-flyer-v3-beneficios li,
.om-flyer-canvas .om-flyer-v3-beneficios li,
.om-flyer-canvas.is-capturing .om-flyer-v3-beneficios li {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #2a2a3a !important;
    line-height: 1.45 !important;
}


/* === GTB · POLAROIDS POST UP · subir polaroids solo en formato post 1080x1350 === */
.om-flyer-canvas--post .om-flyer-v3-polaroids {
    top: 600px !important;
}


/* ============================================================
 * GTB · CARD GLASS HORIZONTAL · grupos-post
 * Una sola caja morada con tarifas en fila + incluye + cortesía
 * ============================================================ */

/* Override bottom: un solo bloque ancho completo */
.om-flyer-canvas--post .om-flyer-v3-bottom--card {
    display: block !important;
    left: 50px !important;
    right: 50px !important;
    padding: 0 !important;
    gap: 0 !important;
}

/* CARD GLASS — pantalla: morado glass · captura: morado sólido */
.om-flyer-v3-card-glass {
    background: linear-gradient(135deg,
        rgba(120, 53, 232, 0.58) 0%,
        rgba(92, 41, 168, 0.58) 60%,
        rgba(63, 33, 97, 0.62) 100%);
    backdrop-filter: blur(20px) saturate(150%);
    -webkit-backdrop-filter: blur(20px) saturate(150%);
    color: #fff;
    padding: 22px 30px 24px;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.28);
    box-shadow:
        0 18px 42px rgba(41, 16, 143, 0.42),
        0 6px 16px rgba(0, 0, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.35);
    position: relative;
    overflow: hidden;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-card-glass {
    background: linear-gradient(135deg, #7835E8 0%, #5C1F9E 60%, #3f2161 100%) !important;
    background-color: #5C1F9E !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* HEADER: título + subtítulo centrado */
.om-flyer-v3-card-header {
    text-align: center;
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.22);
}
.om-flyer-v3-card-title {
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 0.20em;
    text-transform: uppercase;
    color: #fff;
    line-height: 1.1;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
}
.om-flyer-v3-card-sub {
    margin-top: 4px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.82);
}

/* TARIFAS EN FILA: grid responsive 1-5 columnas */
.om-flyer-v3-tarifas-row {
    display: grid;
    gap: 6px;
    margin-bottom: 14px;
}
.om-flyer-v3-tarifas-row--1 { grid-template-columns: 1fr; }
.om-flyer-v3-tarifas-row--2 { grid-template-columns: repeat(2, 1fr); }
.om-flyer-v3-tarifas-row--3 { grid-template-columns: repeat(3, 1fr); }
.om-flyer-v3-tarifas-row--4 { grid-template-columns: repeat(4, 1fr); }
.om-flyer-v3-tarifas-row--5 { grid-template-columns: repeat(5, 1fr); }

.om-flyer-v3-tarifa-cell {
    text-align: center;
    padding: 10px 6px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.14);
    transition: none;
}
.om-flyer-v3-tarifa-cell.is-menor {
    background: rgba(255, 255, 255, 0.04);
    border: 1px dashed rgba(255, 255, 255, 0.22);
}
.om-flyer-v3-tarifa-cell-label {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.14em;
    color: rgba(255, 255, 255, 0.88);
    margin-bottom: 4px;
}
.om-flyer-v3-tarifa-cell-precio {
    font-size: 26px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.22);
    font-feature-settings: "tnum" 1, "lnum" 1;
    letter-spacing: 0;
}
.om-flyer-v3-tarifa-cell-edad {
    margin-top: 3px;
    font-size: 9.5px;
    font-weight: 600;
    letter-spacing: 0.04em;
    color: rgba(255, 255, 255, 0.70);
    line-height: 1;
}

/* INCLUYE: lista inline horizontal */
.om-flyer-v3-card-includes {
    padding-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, 0.18);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 14px;
    line-height: 1.4;
}
.om-flyer-v3-card-includes-label {
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: 0.16em;
    color: rgba(255, 255, 255, 0.82);
    text-transform: uppercase;
    flex-shrink: 0;
}
.om-flyer-v3-card-includes-item {
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    line-height: 1.3;
}
.om-flyer-v3-card-includes-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    font-size: 10px;
    font-weight: 900;
    color: #fff;
    flex-shrink: 0;
    line-height: 1;
    border: 1px solid rgba(255, 255, 255, 0.35);
}

/* BADGE CORTESÍA: centrado abajo */
.om-flyer-v3-cortesia-badge-wrap {
    text-align: center;
    margin-top: 14px;
}
.om-flyer-v3-card-glass .om-flyer-v3-cortesia-badge {
    margin-top: 0 !important;
    padding: 8px 18px !important;
    background: rgba(255, 255, 255, 0.18) !important;
    border: 1.5px solid rgba(255, 255, 255, 0.50) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: 0.10em !important;
    color: #fff !important;
}

/* Fallback DESDE (cuando no hay tarifas múltiples) */
.om-flyer-v3-precio-monto-solo {
    text-align: center;
    font-size: 58px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    letter-spacing: 0;
    margin: 8px 0 16px;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.28);
    font-feature-settings: "tnum" 1, "lnum" 1;
}


/* === GTB · DURACIÓN · pill compacto + labels fuera del pill (debajo) === */
.om-flyer-v3-dur-wrap {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}
.om-flyer-v3-pill--dur {
    display: inline-flex !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 9px 22px !important;
    font-size: inherit !important;
}
.om-dur-item {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    line-height: 1;
}
.om-dur-icon {
    font-size: 18px;
    line-height: 1;
}
.om-dur-num {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.28);
    font-feature-settings: "tnum" 1, "lnum" 1;
}
.om-dur-sep {
    color: rgba(255, 255, 255, 0.40);
    font-size: 16px;
    line-height: 1;
    font-weight: 400;
}
/* Labels fuera del pill, debajo, en letras pequeñas */
.om-flyer-v3-dur-labels {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 0.20em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.78);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.30);
    line-height: 1;
    padding: 0 12px;
}
.om-dur-lbl-sep {
    opacity: 0.5;
    letter-spacing: 0;
}

/* === GTB · PILLS COLUMN · forzar duración + fecha en columnas verticales === */
.om-flyer-v3-pills,
.om-flyer-canvas .om-flyer-v3-pills,
.om-flyer-canvas.is-capturing .om-flyer-v3-pills {
    flex-direction: column !important;
    align-items: center !important;
    gap: 12px !important;
}

/* === GTB · REFINAMIENTOS FINALES V2 · sombra título + tarifas más sutiles + logo === */

/* (1) Título: sombra más fina y editorial */
.om-flyer-v3-titulo,
.om-flyer-canvas .om-flyer-v3-titulo,
.om-flyer-canvas.is-capturing .om-flyer-v3-titulo {
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.22), 0 1px 2px rgba(0, 0, 0, 0.18) !important;
}

/* (2) Card morado: más compacto y aire interno mejor distribuido */
.om-flyer-v3-card-glass,
.om-flyer-canvas .om-flyer-v3-card-glass,
.om-flyer-canvas.is-capturing .om-flyer-v3-card-glass {
    padding: 20px 28px 22px !important;
}
.om-flyer-v3-card-header,
.om-flyer-canvas .om-flyer-v3-card-header {
    margin-bottom: 18px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16) !important;
}
/* Tarjetas de tarifa: más finas, bordes sutiles */
.om-flyer-v3-tarifa-cell,
.om-flyer-canvas .om-flyer-v3-tarifa-cell {
    padding: 8px 6px !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.10) !important;
}
.om-flyer-v3-tarifa-cell.is-menor {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px dashed rgba(255, 255, 255, 0.18) !important;
}
.om-flyer-v3-tarifa-cell-precio,
.om-flyer-canvas .om-flyer-v3-tarifa-cell-precio {
    font-size: 24px !important;
}

/* (3) Logo footer: presencia mejorada */
.om-flyer-v3-footer-logo-img,
.om-flyer-canvas .om-flyer-v3-footer-logo-img,
.om-flyer-canvas.is-capturing .om-flyer-v3-footer-logo-img {
    height: 80px !important;
    max-width: 300px !important;
    opacity: 1 !important;
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.30)) !important;
}


/* === GTB · TARIFAS HEADER EXTERIOR · header arriba del card + includes debajo === */

/* Header TARIFAS · MXN fuera del card (encima) */
.om-flyer-v3-tarifas-heading {
    text-align: center;
    margin-bottom: 12px;
    color: #fff;
}
.om-flyer-v3-tarifas-heading-title {
    font-size: 17px;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #fff;
    line-height: 1.1;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.32), 0 1px 2px rgba(0, 0, 0, 0.25);
}
.om-flyer-v3-tarifas-heading-sub {
    margin-top: 4px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.90);
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.28);
}



/* INCLUYE fuera del card (debajo) */
.om-flyer-v3-includes-outer {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 6px 18px;
    line-height: 1.4;
}
.om-flyer-v3-includes-outer-label {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.18em;
    color: rgba(255, 255, 255, 0.88);
    text-transform: uppercase;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.32);
    flex-shrink: 0;
}
.om-flyer-v3-includes-outer-item {
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    line-height: 1.3;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.32);
}
.om-flyer-v3-includes-outer-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    background: rgba(255, 255, 255, 0.20);
    border-radius: 50%;
    font-size: 10px;
    font-weight: 900;
    color: #fff;
    flex-shrink: 0;
    line-height: 1;
    border: 1px solid rgba(255, 255, 255, 0.40);
}


/* === GTB · CARD COMPACTO V3 · -12% altura · todo adentro otra vez === */
.om-flyer-v3-card-glass,
.om-flyer-canvas .om-flyer-v3-card-glass,
.om-flyer-canvas.is-capturing .om-flyer-v3-card-glass {
    padding: 16px 26px 18px !important;
}
.om-flyer-v3-card-header,
.om-flyer-canvas .om-flyer-v3-card-header {
    margin-bottom: 12px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16) !important;
}
.om-flyer-v3-card-title,
.om-flyer-canvas .om-flyer-v3-card-title {
    font-size: 15px !important;
    letter-spacing: 0.20em !important;
}
.om-flyer-v3-card-sub,
.om-flyer-canvas .om-flyer-v3-card-sub {
    font-size: 10.5px !important;
    margin-top: 3px !important;
}
.om-flyer-v3-tarifa-cell,
.om-flyer-canvas .om-flyer-v3-tarifa-cell {
    padding: 8px 6px !important;
}
.om-flyer-v3-tarifa-cell-precio,
.om-flyer-canvas .om-flyer-v3-tarifa-cell-precio {
    font-size: 24px !important;
}
.om-flyer-v3-tarifa-cell-label,
.om-flyer-canvas .om-flyer-v3-tarifa-cell-label {
    font-size: 11px !important;
    margin-bottom: 3px !important;
}
/* INCLUYE adentro: más compacto */
.om-flyer-v3-card-includes,
.om-flyer-canvas .om-flyer-v3-card-includes {
    padding-top: 10px !important;
    margin-top: 12px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.16) !important;
    gap: 4px 14px !important;
}
.om-flyer-v3-card-includes-label,
.om-flyer-canvas .om-flyer-v3-card-includes-label {
    font-size: 10.5px !important;
}
.om-flyer-v3-card-includes-item,
.om-flyer-canvas .om-flyer-v3-card-includes-item {
    font-size: 13px !important;
}
.om-flyer-v3-tarifas-row,
.om-flyer-canvas .om-flyer-v3-tarifas-row {
    gap: 5px !important;
    margin-bottom: 0 !important;
}

/* === GTB · SLOGAN BLANCO · texto e ícono morados === */
.om-flyer-v3-slogan,
.om-flyer-canvas .om-flyer-v3-slogan,
.om-flyer-canvas.is-capturing .om-flyer-v3-slogan {
    background: rgba(255, 255, 255, 0.42) !important;
    border: 1.5px solid rgba(255, 255, 255, 0.70) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    color: #3F2161 !important;
    font-weight: 900 !important;
    font-size: 19px !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    text-shadow: none !important;
}


/* === GTB · MOCKUP MATCH · título + sombra morada + menos glass === */

/* (1) Título: más claro y separado, sombra morada en vez de negra */
.om-flyer-v3-titulo,
.om-flyer-canvas .om-flyer-v3-titulo,
.om-flyer-canvas.is-capturing .om-flyer-v3-titulo {
    font-weight: 800 !important;
    letter-spacing: 0.005em !important;
    text-shadow:
        0 4px 14px rgba(63, 33, 97, 0.55),
        0 2px 5px rgba(92, 31, 158, 0.40),
        0 1px 2px rgba(0, 0, 0, 0.20) !important;
}

/* (2) Glass menos translúcido (badges + pills más sólidos para destacar) */
.om-flyer-v3-destino-badge,
.om-flyer-canvas .om-flyer-v3-destino-badge {
    background: rgba(120, 53, 232, 0.92) !important;
    border: 1px solid rgba(255, 255, 255, 0.30) !important;
}
.om-flyer-v3-eyebrow-badge,
.om-flyer-canvas .om-flyer-v3-eyebrow-badge {
    background: linear-gradient(135deg, rgba(120, 53, 232, 0.92), rgba(63, 33, 97, 0.92)) !important;
    border: 1px solid rgba(255, 255, 255, 0.30) !important;
}
.om-flyer-v3-pill--dur,
.om-flyer-canvas .om-flyer-v3-pill--dur {
    background: rgba(63, 33, 97, 0.82) !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
}
.om-flyer-v3-pill--fechas,
.om-flyer-canvas .om-flyer-v3-pill--fechas {
    background: rgba(63, 33, 97, 0.62) !important;
    border-color: rgba(255, 255, 255, 0.45) !important;
}

/* (3) Slogan: 15+1 HABITACIÓN EN CORTESÍA en amarillo dorado (resalta sobre morado) */
.om-flyer-v3-slogan-highlight {
    color: #3F2161 !important;
    font-weight: 900 !important;
    text-shadow: none !important;
}


/* === GTB · ÍCONOS Y POLAROIDS RECTAS · 📍 📅 👥 + polaroids casi rectas === */

/* Ícono en destino badge */
.om-flyer-v3-destino-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.om-flyer-v3-badge-icon {
    font-size: 14px;
    line-height: 1;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.25));
}

/* Ícono en pills de fecha */
.om-flyer-v3-pill--fechas {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.om-flyer-v3-pill-icon {
    font-size: 15px;
    line-height: 1;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.25));
}

/* Ícono 👥 al inicio del slogan */
.om-flyer-v3-slogan,
.om-flyer-canvas .om-flyer-v3-slogan,
.om-flyer-canvas.is-capturing .om-flyer-v3-slogan {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
}
.om-flyer-v3-slogan-icon {
    font-size: 18px;
    line-height: 1;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.30));
}

/* Polaroids: inclinación natural + más anchas */
.om-flyer-canvas--post .om-flyer-v3-polaroid {
    width: 310px !important;
}
.om-flyer-canvas--post .om-flyer-v3-polaroid-img {
    height: 260px !important;
}
.om-flyer-canvas--post .om-flyer-v3-polaroid--0 {
    transform: rotate(-2deg) translateY(5px) !important;
}
.om-flyer-canvas--post .om-flyer-v3-polaroid--1 {
    transform: rotate(0deg) translateY(-5px) scale(1.04) !important;
    margin-left: -14px !important;
    margin-right: -14px !important;
}
.om-flyer-canvas--post .om-flyer-v3-polaroid--2 {
    transform: rotate(2deg) translateY(3px) !important;
}


/* === GTB · SVG ICONS · line-style profesionales en lugar de emojis === */
.om-flyer-v3-svg-icon {
    display: inline-block;
    vertical-align: middle;
    color: currentColor;
    flex-shrink: 0;
}

/* Tamaños según contexto */
.om-flyer-v3-badge-icon .om-flyer-v3-svg-icon {
    width: 16px;
    height: 16px;
    color: #fff;
}
.om-flyer-v3-pill-icon .om-flyer-v3-svg-icon {
    width: 18px;
    height: 18px;
    color: #fff;
}
.om-flyer-v3-slogan-icon .om-flyer-v3-svg-icon {
    width: 22px;
    height: 22px;
    color: #3F2161;
}

/* Wrappers: solo flex-align (el filter drop-shadow ya no aplica a SVG inline) */
.om-flyer-v3-badge-icon,
.om-flyer-v3-pill-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.30));
}
.om-flyer-v3-slogan-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    filter: none;
}


/* === GTB · TONOS UNIFICADOS · mismo morado en todos + fechas blanco === */

/* (1) Pill fechas: blanco glass (no morado) */
.om-flyer-v3-pill--fechas,
.om-flyer-canvas .om-flyer-v3-pill--fechas,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--fechas {
    background: rgba(255, 255, 255, 0.22) !important;
    border: 1px solid rgba(255, 255, 255, 0.55) !important;
    color: #fff !important;
}

/* (2) Mismo gradient morado base en TODOS los elementos morados del flyer */
/* Base: linear-gradient(135deg, #7835E8 0%, #5C29A8 60%, #3F2161 100%) */

/* Destino badge (PUERTO VALLARTA) */
.om-flyer-v3-destino-badge,
.om-flyer-canvas .om-flyer-v3-destino-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-destino-badge {
    background: linear-gradient(135deg, rgba(120, 53, 232, 0.85) 0%, rgba(92, 41, 168, 0.85) 60%, rgba(63, 33, 97, 0.88) 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.32) !important;
}

/* Eyebrow (GRUPOS): blanco glass */
.om-flyer-v3-eyebrow-badge,
.om-flyer-canvas .om-flyer-v3-eyebrow-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-eyebrow-badge {
    background: rgba(255, 255, 255, 0.22) !important;
    border: 1px solid rgba(255, 255, 255, 0.55) !important;
    color: #fff !important;
}

/* Pill duración: blanco glass */
.om-flyer-v3-pill--dur,
.om-flyer-canvas .om-flyer-v3-pill--dur,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--dur {
    background: rgba(255, 255, 255, 0.22) !important;
    border: 1px solid rgba(255, 255, 255, 0.55) !important;
    color: #fff !important;
}

/* Card glass tarifas (referencia base) */
.om-flyer-v3-card-glass,
.om-flyer-canvas:not(.is-capturing) .om-flyer-v3-card-glass {
    background: linear-gradient(135deg, rgba(120, 53, 232, 0.78) 0%, rgba(92, 41, 168, 0.78) 60%, rgba(63, 33, 97, 0.82) 100%) !important;
}

/* Slogan (15+1): blanco glass más sólido · texto morado */
.om-flyer-v3-slogan,
.om-flyer-canvas:not(.is-capturing) .om-flyer-v3-slogan {
    background: rgba(255, 255, 255, 0.42) !important;
}

/* En captura html2canvas: card morado, slogan blanco sólido */
.om-flyer-canvas.is-capturing .om-flyer-v3-card-glass {
    background: linear-gradient(135deg, #7835E8 0%, #5C29A8 60%, #3F2161 100%) !important;
}
.om-flyer-canvas.is-capturing:not(.om-flyer-canvas--story) .om-flyer-v3-slogan {
    background: #ffffff !important;
    color: #3F2161 !important;
}




/* === GTB · MORADO INSTITUCIONAL WEB · alineado a marca digital === */
/* Paleta: #371D7A profundo · #4A2596 base · #6B33B8 luminoso · #7B3FC6 acento */

/* (1) Card tarifas: morado institucional con gradient vertical (luz arriba, profundidad abajo) */
.om-flyer-v3-card-glass,
.om-flyer-canvas:not(.is-capturing) .om-flyer-v3-card-glass {
    background: linear-gradient(180deg, rgba(107, 51, 184, 0.93) 0%, rgba(74, 37, 150, 0.94) 50%, rgba(55, 29, 122, 0.96) 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow:
        0 10px 28px rgba(55, 29, 122, 0.30),
        0 3px 8px rgba(0, 0, 0, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-card-glass {
    background: linear-gradient(180deg, #6B33B8 0%, #4A2596 50%, #371D7A 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 10px 28px rgba(55, 29, 122, 0.30), inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
}

/* (2) Destino badge: mismo morado institucional, más sólido */
.om-flyer-v3-destino-badge,
.om-flyer-canvas .om-flyer-v3-destino-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-destino-badge {
    background: linear-gradient(180deg, rgba(107, 51, 184, 0.95) 0%, rgba(74, 37, 150, 0.96) 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.30) !important;
    box-shadow: 0 5px 14px rgba(55, 29, 122, 0.30), inset 0 1px 0 rgba(255, 255, 255, 0.16) !important;
}

/* (3) Glass pills (GRUPOS, días/noches, fecha): morado translúcido institucional */
.om-flyer-v3-eyebrow-badge,
.om-flyer-canvas .om-flyer-v3-eyebrow-badge,
.om-flyer-canvas.is-capturing .om-flyer-v3-eyebrow-badge,
.om-flyer-v3-pill--dur,
.om-flyer-canvas .om-flyer-v3-pill--dur,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--dur,
.om-flyer-v3-pill--fechas,
.om-flyer-canvas .om-flyer-v3-pill--fechas,
.om-flyer-canvas.is-capturing .om-flyer-v3-pill--fechas {
    background: rgba(74, 37, 150, 0.30) !important;
    border: 1px solid rgba(255, 255, 255, 0.45) !important;
    color: #fff !important;
    box-shadow: 0 4px 10px rgba(55, 29, 122, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
}

/* (4) Slogan 15+1: fondo claro glass + texto morado institucional fuerte */
.om-flyer-v3-slogan,
.om-flyer-canvas:not(.is-capturing) .om-flyer-v3-slogan {
    background: rgba(255, 255, 255, 0.42) !important;
    border: 1.5px solid rgba(255, 255, 255, 0.70) !important;
    color: #4A2596 !important;
    box-shadow: 0 6px 16px rgba(55, 29, 122, 0.20), inset 0 1px 0 rgba(255, 255, 255, 0.30) !important;
}
.om-flyer-canvas.is-capturing:not(.om-flyer-canvas--story) .om-flyer-v3-slogan {
    background: #ffffff !important;
    color: #4A2596 !important;
}
.om-flyer-v3-slogan-icon .om-flyer-v3-svg-icon {
    color: #4A2596 !important;
}
.om-flyer-v3-slogan-highlight {
    color: #4A2596 !important;
    font-weight: 900 !important;
}

/* (5) Overlay morado institucional difuminado detrás del título */
.om-flyer-v3-hero-overlay,
.om-flyer-canvas .om-flyer-v3-hero-overlay,
.om-flyer-canvas.is-capturing .om-flyer-v3-hero-overlay {
    background: radial-gradient(ellipse 60% 50% at 50% 35%, rgba(74, 37, 150, 0.32) 0%, rgba(74, 37, 150, 0.18) 45%, rgba(74, 37, 150, 0) 75%) !important;
    filter: blur(8px) !important;
    pointer-events: none !important;
}

/* (6) Sombra del título: suave morada (no negra pesada) */
.om-flyer-v3-titulo,
.om-flyer-canvas .om-flyer-v3-titulo,
.om-flyer-canvas.is-capturing .om-flyer-v3-titulo {
    text-shadow:
        0 3px 12px rgba(55, 29, 122, 0.45),
        0 1px 3px rgba(0, 0, 0, 0.18) !important;
}


/* === GTB · AJUSTES POST-INSTITUCIONAL · luminosidad + sutileza === */

/* (1) Card tarifas: gradient más sutil (menos contraste entre paradas) */
.om-flyer-v3-card-glass,
.om-flyer-canvas:not(.is-capturing) .om-flyer-v3-card-glass {
    background: linear-gradient(180deg, rgba(94, 47, 170, 0.93) 0%, rgba(74, 37, 150, 0.94) 50%, rgba(63, 32, 128, 0.95) 100%) !important;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-card-glass {
    background: linear-gradient(180deg, #5E2FAA 0%, #4A2596 50%, #3F2080 100%) !important;
}

/* (2) Imagen de fondo: subir luminosidad cielo/playa */
.om-flyer-bg,
.om-flyer-canvas .om-flyer-bg,
.om-flyer-canvas.is-capturing .om-flyer-bg {
    filter: brightness(1.10) saturate(1.05) !important;
}

/* (3) Overlay morado del título: más suave (no apaga tanto) */
.om-flyer-v3-hero-overlay,
.om-flyer-canvas .om-flyer-v3-hero-overlay,
.om-flyer-canvas.is-capturing .om-flyer-v3-hero-overlay {
    background: radial-gradient(ellipse 60% 50% at 50% 35%, rgba(74, 37, 150, 0.22) 0%, rgba(74, 37, 150, 0.12) 45%, rgba(74, 37, 150, 0) 75%) !important;
    filter: blur(10px) !important;
}


/* === GTB · OVERLAY TÍTULO REFORZADO · más definido sin apagar el flyer === */

/* Overlay morado: opacidad 36% centro · 22% media · 0% bordes · blur alto */
.om-flyer-v3-hero-overlay,
.om-flyer-canvas .om-flyer-v3-hero-overlay,
.om-flyer-canvas.is-capturing .om-flyer-v3-hero-overlay {
    background: radial-gradient(ellipse 65% 55% at 50% 38%, rgba(74, 37, 150, 0.38) 0%, rgba(74, 37, 150, 0.26) 35%, rgba(74, 37, 150, 0.10) 65%, rgba(74, 37, 150, 0) 85%) !important;
    filter: blur(14px) !important;
}

/* Sombra título: morada + negra para contraste sobre cualquier foto */
.om-flyer-v3-titulo,
.om-flyer-canvas .om-flyer-v3-titulo,
.om-flyer-canvas.is-capturing .om-flyer-v3-titulo {
    color: #fff !important;
    text-shadow:
        0 4px 14px rgba(55, 29, 122, 0.42),
        0 2px 6px rgba(0, 0, 0, 0.40),
        0 1px 2px rgba(0, 0, 0, 0.25) !important;
}


/* === GTB · REFINAMIENTO FINAL TÍTULO + CARD + SLOGAN === */

/* (1) Título: sombra más limpia · menos marca dura en letras */
.om-flyer-v3-titulo,
.om-flyer-canvas .om-flyer-v3-titulo,
.om-flyer-canvas.is-capturing .om-flyer-v3-titulo {
    text-shadow:
        0 3px 10px rgba(55, 29, 122, 0.45),
        0 2px 5px rgba(0, 0, 0, 0.28) !important;
}

/* (2) Card tarifas: degradado un poco más perceptible (sin perder unidad) */
.om-flyer-v3-card-glass,
.om-flyer-canvas:not(.is-capturing) .om-flyer-v3-card-glass {
    background: linear-gradient(180deg, rgba(101, 53, 184, 0.93) 0%, rgba(74, 37, 150, 0.94) 55%, rgba(58, 30, 118, 0.95) 100%) !important;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-card-glass {
    background: linear-gradient(180deg, #6535B8 0%, #4A2596 55%, #3A1E76 100%) !important;
}

/* (3) Slogan: menos tracking (más elegante) */
.om-flyer-v3-slogan,
.om-flyer-canvas .om-flyer-v3-slogan,
.om-flyer-canvas.is-capturing .om-flyer-v3-slogan {
    letter-spacing: 0.08em !important;
}


/* === FIX MANCHA OVERLAY CAPTURA · única regla === */
/* override genérico desactivado — el story tiene su gradient propio más abajo */
.om-flyer-canvas.is-capturing .om-flyer-v3-hero-overlay {
    box-shadow: none !important;
    filter: none !important;
}


/* === FIX TEXT-SHADOW TITULO CAPTURA · evita halo rectangular en html2canvas === */
.om-flyer-canvas.is-capturing .om-flyer-v3-titulo {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.55), 0 1px 2px rgba(0, 0, 0, 0.35) !important;
}


/* === FIX BORDES CARD CAPTURA · sombras grandes se ven gruesas en html2canvas === */
.om-flyer-canvas.is-capturing .om-flyer-v3-card-glass {
    box-shadow: 0 4px 12px rgba(41, 16, 143, 0.35) !important;
    border: 1px solid rgba(255, 255, 255, 0.20) !important;
}
.om-flyer-canvas.is-capturing .om-flyer-v3-slogan {
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.18) !important;
}


/* === FIX STORY 2026-05-17 · polaroids más grandes + card centrado === */

/* Polaroids más grandes pero que caben (3 polaroids + gap dentro de 1080px - margenes) */
.om-flyer-canvas--story .om-flyer-v3-polaroid {
    width: 305px !important;
}
.om-flyer-canvas--story .om-flyer-v3-polaroid-img {
    height: 320px !important;
}

/* Card de tarifas en story: ANCHO COMPLETO horizontal como en post */
.om-flyer-canvas--story .om-flyer-v3-card-glass {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Slogan BENEFICIO: ancho completo */
.om-flyer-canvas--story .om-flyer-v3-slogan {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}


/* === FIX STORY ENCIMADO 2026-05-17 · separar card de slogan === */
/* El card crecio y se encimo sobre el slogan. Subo el card y bajo el slogan. */

/* Card sube más alto (era bottom:360, ahora bottom:420) */
.om-flyer-canvas--story .om-flyer-v3-bottom {
    bottom: 420px !important;
}

/* Slogan se queda donde estaba (bottom:250) pero con margen visual */
.om-flyer-canvas--story .om-flyer-v3-slogan {
    bottom: 230px !important;
}


/* === INTERCAMBIO POST-STORY 2026-05-17 · invertir dise\u00f1o tarifas por formato === */

/* STORY (vertical, mucho espacio) \u2192 card DOMINANTE: grande, padding generoso, tarifas vendedoras */
.om-flyer-canvas--story .om-flyer-v3-card-glass {
    padding: 26px 36px 28px !important;
    border-radius: 22px !important;
}
.om-flyer-canvas--story .om-flyer-v3-card-header {
    margin-bottom: 16px !important;
    padding-bottom: 14px !important;
}
.om-flyer-canvas--story .om-flyer-v3-card-title {
    font-size: 20px !important;
    letter-spacing: 0.22em !important;
}
.om-flyer-canvas--story .om-flyer-v3-card-sub {
    font-size: 14px !important;
    margin-top: 6px !important;
    letter-spacing: 0.16em !important;
}
.om-flyer-canvas--story .om-flyer-v3-tarifas-row {
    gap: 12px !important;
    margin-bottom: 18px !important;
}
.om-flyer-canvas--story .om-flyer-v3-tarifa-cell {
    padding: 18px 12px !important;
    border-radius: 14px !important;
}
.om-flyer-canvas--story .om-flyer-v3-tarifa-cell-label {
    font-size: 14px !important;
    margin-bottom: 6px !important;
    letter-spacing: 0.16em !important;
}
.om-flyer-canvas--story .om-flyer-v3-tarifa-cell-precio {
    font-size: 38px !important;
}
.om-flyer-canvas--story .om-flyer-v3-tarifa-cell-edad {
    font-size: 11px !important;
    margin-top: 4px !important;
}
.om-flyer-canvas--story .om-flyer-v3-card-includes {
    padding-top: 14px !important;
}
.om-flyer-canvas--story .om-flyer-v3-card-includes-label {
    font-size: 13px !important;
}
.om-flyer-canvas--story .om-flyer-v3-card-includes-item {
    font-size: 13px !important;
}

/* POST (cuadrado, espacio limitado) \u2192 card COMPACTO: peque\u00f1o, padding apretado, tarifas resumidas */
.om-flyer-canvas--post .om-flyer-v3-card-glass {
    padding: 16px 22px 18px !important;
    border-radius: 18px !important;
}
.om-flyer-canvas--post .om-flyer-v3-card-header {
    margin-bottom: 10px !important;
    padding-bottom: 8px !important;
}
.om-flyer-canvas--post .om-flyer-v3-card-title {
    font-size: 13px !important;
}
.om-flyer-canvas--post .om-flyer-v3-card-sub {
    font-size: 10px !important;
}
.om-flyer-canvas--post .om-flyer-v3-tarifas-row {
    gap: 6px !important;
    margin-bottom: 10px !important;
}
.om-flyer-canvas--post .om-flyer-v3-tarifa-cell {
    padding: 8px 5px !important;
    border-radius: 10px !important;
}
.om-flyer-canvas--post .om-flyer-v3-tarifa-cell-label {
    font-size: 10px !important;
    margin-bottom: 3px !important;
}
.om-flyer-canvas--post .om-flyer-v3-tarifa-cell-precio {
    font-size: 22px !important;
}
.om-flyer-canvas--post .om-flyer-v3-tarifa-cell-edad {
    font-size: 8.5px !important;
}
.om-flyer-canvas--post .om-flyer-v3-card-includes {
    padding-top: 8px !important;
}
.om-flyer-canvas--post .om-flyer-v3-card-includes-label {
    font-size: 11px !important;
}
.om-flyer-canvas--post .om-flyer-v3-card-includes-item {
    font-size: 11px !important;
}


/* === FIX STORY POLAROID + SLOGAN 2026-05-17 === */

/* 1. Subir polaroids para separarlas del card (era top:880, ahora top:780) */
.om-flyer-canvas--story .om-flyer-v3-polaroids {
    top: 780px !important;
}

/* 2. Slogan: centrado al texto, no width 100% que se corta */
.om-flyer-canvas--story .om-flyer-v3-slogan {
    width: auto !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}


/* === STORY OPTIMIZACION FINAL 2026-05-17 · 5 ajustes Fabian === */

/* 1. Título regresa arriba en su posición y tamaño original */
.om-flyer-canvas--story .om-flyer-v3-hero {
    top: 340px !important;
}

/* 5. Overlay morado más definido detrás del título (más contraste) */
.om-flyer-canvas--story .om-flyer-v3-hero-overlay {
    background: radial-gradient(ellipse 70% 60% at 50% 38%,
        rgba(74, 37, 150, 0.52) 0%,
        rgba(74, 37, 150, 0.38) 35%,
        rgba(74, 37, 150, 0.18) 65%,
        rgba(74, 37, 150, 0) 85%) !important;
}

/* 4. Galería protagonista: polaroids más anchas (310→340) y más altas (320→360) */
.om-flyer-canvas--story .om-flyer-v3-polaroid {
    width: 305px !important;
}
.om-flyer-canvas--story .om-flyer-v3-polaroid-img {
    height: 320px !important;
}
/* Polaroids centradas con márgenes iguales (60px cada lado) */
.om-flyer-canvas--story .om-flyer-v3-polaroids {
    top: 800px !important;
    left: 60px !important;
    right: 60px !important;
    gap: 12px !important;
    justify-content: center !important;
}

/* 2. Subir beneficio y card más cerca del bloque de tarifas */
/* Card actual: bottom:420 — subo 80px para acercar al slogan */
.om-flyer-canvas--story .om-flyer-v3-bottom {
    bottom: 380px !important;
}

/* Slogan beneficio bajado */
.om-flyer-canvas--story .om-flyer-v3-slogan {
    bottom: 250px !important;
}

/* 3. Logo y legales: subir 80px para que no queden tapados por UI Instagram */
.om-flyer-canvas--story .om-flyer-v3-footer {
    bottom: 130px !important;
}


/* === FIX STORY OVERLAY POSITION + LOGO 2026-05-17 === */

/* 1. Overlay morado: bajarlo para que quede DETRÁS del título (no arriba) */
.om-flyer-canvas--story .om-flyer-v3-hero-overlay {
    top: 320px !important;
    height: 380px !important;
}

/* 2. Logo del hotel más grande en story (era 110/320, ahora 160/420) */
.om-flyer-canvas--story .om-flyer-v3-logo {
    max-height: 190px !important;
    max-width: 480px !important;
}


/* === FIX STORY POLAROIDS + GLASS + TITULO 2026-05-17 === */

/* 2. Polaroids con más profundidad — sombras más fuertes + rotaciones sutiles */
.om-flyer-canvas--story .om-flyer-v3-polaroid:nth-child(1) {
    transform: rotate(-3deg) !important;
}
.om-flyer-canvas--story .om-flyer-v3-polaroid:nth-child(2) {
    transform: rotate(0deg) translateY(-12px) !important;
    z-index: 3 !important;
}
.om-flyer-canvas--story .om-flyer-v3-polaroid:nth-child(3) {
    transform: rotate(3deg) !important;
}
.om-flyer-canvas--story .om-flyer-v3-polaroid {
    box-shadow:
        0 10px 24px rgba(0, 0, 0, 0.32),
        0 4px 8px rgba(0, 0, 0, 0.20) !important;
}
/* Sombras también en captura para que SÍ se vean al imprimir */
.om-flyer-canvas.is-capturing.om-flyer-canvas--story .om-flyer-v3-polaroid {
    box-shadow:
        0 6px 14px rgba(0, 0, 0, 0.35),
        0 2px 4px rgba(0, 0, 0, 0.20) !important;
}

/* 3. Slogan BENEFICIO: efecto glass que SÍ se imprime (sin backdrop-filter, gradient sólido) */
.om-flyer-canvas.is-capturing.om-flyer-canvas--story .om-flyer-v3-slogan {
    background: linear-gradient(135deg,
        rgba(255, 255, 255, 0.92) 0%,
        rgba(245, 240, 255, 0.92) 100%) !important;
    border: 1px solid rgba(74, 37, 150, 0.18) !important;
}

/* 4. Sombra morada detrás del título — SIN blur, gradient radial sólido que html2canvas SÍ pinta */
.om-flyer-canvas.is-capturing.om-flyer-canvas--story .om-flyer-v3-hero-overlay {
    background: radial-gradient(
        ellipse 70% 50% at 50% 50%,
        rgba(74, 37, 150, 0.55) 0%,
        rgba(74, 37, 150, 0.42) 30%,
        rgba(74, 37, 150, 0.22) 60%,
        rgba(74, 37, 150, 0) 90%
    ) !important;
    filter: none !important;
}


/* ════════════════════════════════════════════════════════════════════════
 *  STORY OVERRIDES FINAL FABIAN 2026-05-17
 *  Máxima especificidad para ganar a TODAS las reglas duplicadas anteriores
 *  Aplica SOLO al story (formato vertical 1080x1920)
 * ════════════════════════════════════════════════════════════════════════ */

/* === LOGO HOTEL: más grande y prominente === */
html body .om-flyer-canvas.om-flyer-canvas--story .om-flyer-v3-logo {
    max-height: 200px !important;
    max-width: 500px !important;
}

/* === OVERLAY MORADO DETRÁS DEL TÍTULO ===
   En pantalla normal: blur sutil para ver lindo
   En captura: gradient sólido sin blur (html2canvas lo respeta) */
html body .om-flyer-canvas.om-flyer-canvas--story .om-flyer-v3-hero-overlay {
    top: 320px !important;
    height: 380px !important;
    background: radial-gradient(
        ellipse 70% 55% at 50% 50%,
        rgba(74, 37, 150, 0.50) 0%,
        rgba(74, 37, 150, 0.38) 30%,
        rgba(74, 37, 150, 0.22) 60%,
        rgba(74, 37, 150, 0) 90%
    ) !important;
    filter: blur(6px) !important;
}
/* Captura: misma sombra pero sin blur (html2canvas no soporta blur) */
html body .om-flyer-canvas.om-flyer-canvas--story.is-capturing .om-flyer-v3-hero-overlay {
    position: absolute !important;
    top: 340px !important;
    left: 40px !important;
    right: 40px !important;
    width: auto !important;
    height: 420px !important;
    background: radial-gradient(
        ellipse 65% 50% at 50% 50%,
        rgba(74, 37, 150, 0.78) 0%,
        rgba(74, 37, 150, 0.60) 25%,
        rgba(74, 37, 150, 0.38) 50%,
        rgba(74, 37, 150, 0.15) 75%,
        rgba(74, 37, 150, 0) 100%
    ) !important;
    filter: none !important;
    -webkit-filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    z-index: 3 !important;
    pointer-events: none !important;
}

/* === SLOGAN BENEFICIO: glass blanco que SÍ se imprime === */
html body .om-flyer-canvas.om-flyer-canvas--story.is-capturing .om-flyer-v3-slogan {
    background: linear-gradient(135deg,
        rgba(255, 255, 255, 0.92) 0%,
        rgba(245, 240, 255, 0.92) 100%) !important;
    border: 1px solid rgba(74, 37, 150, 0.18) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* === POLAROIDS: tamaño + centradas + sombras impresas === */
html body .om-flyer-canvas.om-flyer-canvas--story .om-flyer-v3-polaroids {
    top: 800px !important;
    left: 60px !important;
    right: 60px !important;
    gap: 12px !important;
    justify-content: center !important;
}
html body .om-flyer-canvas.om-flyer-canvas--story .om-flyer-v3-polaroid {
    width: 305px !important;
}
html body .om-flyer-canvas.om-flyer-canvas--story .om-flyer-v3-polaroid-img {
    height: 320px !important;
}
html body .om-flyer-canvas.om-flyer-canvas--story.is-capturing .om-flyer-v3-polaroid {
    box-shadow:
        0 6px 14px rgba(0, 0, 0, 0.35),
        0 2px 4px rgba(0, 0, 0, 0.20) !important;
}


/* === FIX TITULO CONTORNO 2026-05-18 ===
   Eliminar el overlay morado y dar contorno fuerte al título
   para legibilidad sobre fondos claros sin necesidad de sombra. */

/* Overlay completamente invisible — story y captura */
html body .om-flyer-canvas.om-flyer-canvas--story .om-flyer-v3-hero-overlay,
html body .om-flyer-canvas.om-flyer-canvas--story.is-capturing .om-flyer-v3-hero-overlay {
    background: none !important;
    background-image: none !important;
    filter: none !important;
    -webkit-filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: none !important;
    display: none !important;
}

/* Título blanco con contorno fuerte — pantalla normal */
html body .om-flyer-canvas.om-flyer-canvas--story .om-flyer-v3-titulo {
    color: #ffffff !important;
    -webkit-text-stroke: 3px #3F2161 !important;
    text-stroke: 3px #3F2161 !important;
    paint-order: stroke fill !important;
    text-shadow:
        0 4px 12px rgba(0, 0, 0, 0.45),
        0 2px 4px rgba(0, 0, 0, 0.30) !important;
}

/* Título en captura — mismo contorno (html2canvas SI respeta -webkit-text-stroke) */
html body .om-flyer-canvas.om-flyer-canvas--story.is-capturing .om-flyer-v3-titulo {
    color: #ffffff !important;
    -webkit-text-stroke: 3px #3F2161 !important;
    text-stroke: 3px #3F2161 !important;
    paint-order: stroke fill !important;
    text-shadow:
        0 3px 8px rgba(0, 0, 0, 0.55),
        0 1px 3px rgba(0, 0, 0, 0.40) !important;
}


/* === QUITAR OVERLAY MORADO DETRAS DEL TITULO — 2026-05-19 ===
 * El radial-gradient con blur deja un cuadro visible en captura
 * y no aporta al diseno. Lo eliminamos para post y a4
 * (story tiene su propio fix arriba).
 * ============================================================ */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-hero-overlay {
    display: none !important;
    background: transparent !important;
    filter: none !important;
    box-shadow: none !important;
    opacity: 0 !important;
}


/* === TIPOGRAFIA REFORZADA + STROKE TITULO — 2026-05-19 ===
 * Crece todos los textos blancos clave del flyer y agrega contorno
 * morado fuerte al titulo para que no se pierda sobre fondos claros.
 * Aplica a flyers tipo post (no story, que tiene sus propias reglas).
 * ============================================================ */

/* TITULO PRINCIPAL — mas grande + stroke morado + mas sombra */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-titulo {
    font-size: 86px !important;
    line-height: 1.02 !important;
    font-weight: 800 !important;
    color: #fff !important;
    -webkit-text-stroke: 3px #4A2596 !important;
    paint-order: stroke fill !important;
    text-shadow:
        0 6px 18px rgba(55, 29, 122, 0.85),
        0 4px 10px rgba(55, 29, 122, 0.65),
        0 2px 4px rgba(0, 0, 0, 0.55) !important;
}

/* EYEBROW BADGE (GRUPOS / CHARTER / etc) */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-eyebrow-badge {
    font-size: 20px !important;
    font-weight: 800 !important;
    letter-spacing: 0.12em !important;
}

/* DESTINO BADGE (PUERTO VALLARTA) */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-destino-badge {
    font-size: 18px !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
}

/* PILLS de duracion y fechas (4 dias 3 noches, 17 AL 20 OCT) */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-pill,
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-pill--dur,
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-pill--fechas {
    font-size: 31px !important;
    font-weight: 800 !important;
}

/* Labels chicos de dias/noches */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-dur-labels {
    font-size: 17px !important;
    font-weight: 700 !important;
    letter-spacing: 0.10em !important;
}

/* TARIFAS — titulo del card (TARIFAS · MXN) */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-card-title {
    font-size: 20px !important;
    font-weight: 800 !important;
    letter-spacing: 0.10em !important;
}
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-card-sub {
    font-size: 20px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
}

/* TARIFAS — label de cada celda (DBL / TPL / MNR) */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-tarifa-cell-label {
    font-size: 26px !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
}

/* TARIFAS — precio ($1,899) MAS GRANDE */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-tarifa-cell-precio {
    font-size: 52px !important;
    font-weight: 800 !important;
    line-height: 1.05 !important;
}

/* TARIFAS — edad (5-12 anos) */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-tarifa-cell-edad {
    font-size: 16px !important;
    font-weight: 700 !important;
}

/* PRECIO unico (cuando no hay tarifas multiples) */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-precio-monto-solo {
    font-size: 88px !important;
    font-weight: 900 !important;
}

/* INCLUYE — label y items */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-card-includes-label {
    font-size: 20px !important;
    font-weight: 800 !important;
    letter-spacing: 0.10em !important;
}
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-card-includes-item {
    font-size: 20px !important;
    font-weight: 600 !important;
}

/* SLOGAN beneficio (BENEFICIO: 15+1 ...) */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-slogan,
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-slogan-highlight {
    font-size: 26px !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
}

/* === CARD HEADER EN UNA SOLA LINEA — TARIFAS · MXN | por persona · por noche === */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-card-header {
    display: flex !important;
    flex-direction: row !important;
    align-items: baseline !important;
    justify-content: center !important;
    gap: 14px !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
}
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-card-header .om-flyer-v3-card-title::after {
    content: "·";
    margin-left: 8px;
    opacity: 0.65;
    display: inline-block;
}


/* === LOGO HOTEL MAS GRANDE — 2026-05-19 === */
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-hotel-logo-wrap {
    max-height: 160px !important;
    max-width: 420px !important;
}
html body .om-flyer-canvas:not(.om-flyer-canvas--story) .om-flyer-v3-hotel-logo {
    max-height: 140px !important;
    max-width: 380px !important;
}

/* === FECHAS EN SLOGAN (flyer default para nacionales/individuales) === */
.om-flyer-v3-slogan-fechas { display: inline-flex; flex-wrap: nowrap; gap: 0; justify-content: center; align-items: baseline; white-space: nowrap; }
.om-flyer-v3-slogan-fechas-item { display: inline-block; padding: 0 6px; }
.om-flyer-v3-slogan-fechas-sep { opacity: 0.55; font-weight: 300; padding: 0 1px; }
.om-flyer-v3-slogan-fechas-anio { display: inline-block; padding-left: 10px; opacity: 0.85; font-weight: 600; letter-spacing: 0.5px; }
/* Reducir tamaño cuando hay 3 fechas */
.om-flyer-v3-slogan-fechas.is-medium { font-size: 0.78em; letter-spacing: 0.5px; }
.om-flyer-v3-slogan-fechas.is-medium .om-flyer-v3-slogan-fechas-item { padding: 0 4px; }
/* Reducir más cuando hay 4+ fechas para forzar 1 línea */
.om-flyer-v3-slogan-fechas.is-many { font-size: 0.62em; letter-spacing: 0.3px; }
.om-flyer-v3-slogan-fechas.is-many .om-flyer-v3-slogan-fechas-item { padding: 0 3px; }
.om-flyer-v3-slogan-fechas.is-many .om-flyer-v3-slogan-fechas-anio { padding-left: 8px; font-size: 1.05em; }

/* === REUBICAR SLOGAN cuando contiene fechas (evitar overlap con card de tarifas) === */
.om-flyer-v3-slogan:has(.om-flyer-v3-slogan-fechas) { bottom: 130px !important; padding: 10px 20px !important; }
/* Fallback para navegadores sin :has() */
.om-flyer-v3-slogan-fechas { font-size: 0.95em; }

/* === SLOGAN CON FECHAS: fondo blanco opaco + texto morado para máxima legibilidad === */
.om-flyer-v3-slogan:has(.om-flyer-v3-slogan-fechas) {
    background: rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border: 1.5px solid rgba(120, 53, 232, 0.35) !important;
    box-shadow: 0 10px 30px rgba(41, 16, 143, 0.32), 0 4px 12px rgba(0,0,0,0.18), inset 0 1px 0 rgba(255,255,255,0.9) !important;
    color: #29108F !important;
    text-shadow: none !important;
}
.om-flyer-v3-slogan:has(.om-flyer-v3-slogan-fechas) .om-flyer-v3-slogan-icon { color: #7835E8 !important; }
.om-flyer-v3-slogan:has(.om-flyer-v3-slogan-fechas) .om-flyer-v3-slogan-icon svg { color: #7835E8 !important; }
.om-flyer-v3-slogan-fechas {
    color: #29108F !important;
    font-weight: 800 !important;
    text-shadow: none !important;
}
.om-flyer-v3-slogan-fechas-sep { color: rgba(120, 53, 232, 0.5) !important; }
.om-flyer-v3-slogan-fechas-anio { color: #5C1F9E !important; opacity: 1 !important; }

/* === FECHAS COMO CHIPS INDEPENDIENTES (diferenciación visual, 1 línea) === */
.om-flyer-v3-slogan-fechas { gap: 6px !important; flex-wrap: nowrap !important; white-space: nowrap !important; }
.om-flyer-v3-slogan-fechas-item {
    display: inline-block;
    background: rgba(120, 53, 232, 0.12) !important;
    border: 1px solid rgba(120, 53, 232, 0.35) !important;
    color: #29108F !important;
    padding: 3px 12px !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    flex: 0 0 auto;
}
.om-flyer-v3-slogan-fechas-sep { display: none !important; }
.om-flyer-v3-slogan-fechas-anio {
    color: #5C1F9E !important;
    opacity: 1 !important;
    padding-left: 8px !important;
    font-weight: 700 !important;
    align-self: center;
    flex: 0 0 auto;
}

/* === SLOGAN CON FECHAS: rectangular alineado con card, delgado === */
.om-flyer-v3-slogan:has(.om-flyer-v3-slogan-fechas) {
    left: 50px !important;
    right: 50px !important;
    padding: 8px 20px !important;
    border-radius: 18px !important;
    bottom: 140px !important;
}

/* === SUBTÍTULO con tipografía script (Caveat) - llamativo bajo el título === */
.om-flyer-v3-subtitulo {
    font-family: "Caveat", cursive !important;
    font-size: 48px !important;
    font-weight: 700 !important;
    color: #fff !important;
    text-align: center !important;
    line-height: 1 !important;
    letter-spacing: 0.01em !important;
    margin-top: -2px !important;
    margin-bottom: 14px !important;
    text-shadow:
        0 0 3px #fff,
        0 0 8px rgba(216, 197, 255, 0.95),
        0 0 14px rgba(120, 53, 232, 0.95),
        0 0 22px rgba(120, 53, 232, 0.85),
        0 0 36px rgba(120, 53, 232, 0.7),
        0 0 54px rgba(92, 31, 158, 0.55),
        0 2px 6px rgba(41, 16, 143, 0.4) !important;
    transform: rotate(-2deg);
    display: inline-block !important;
    width: auto !important;
    position: relative;
    z-index: 7;
}
.om-flyer-v3-hero { /* permitir que el subtitulo se centre como inline-block */ }

/* === INCLUYE RESPONSIVE según cantidad de items === */
/* 1 solo item: hacerlo grande y prominente */
.om-flyer-v3-beneficios-box.is-single .om-flyer-v3-beneficios { padding-top: 4px !important; }
.om-flyer-v3-beneficios-box.is-single .om-flyer-v3-beneficios li {
    font-size: 32px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    padding-left: 38px !important;
    margin: 0 !important;
    color: #29108F !important;
    text-shadow: none !important;
}
/* Color morado también para is-few */
.om-flyer-v3-beneficios-box.is-few .om-flyer-v3-beneficios li { color: #29108F !important; text-shadow: none !important; }
.om-flyer-v3-beneficios-box.is-single .om-flyer-v3-beneficios li::before {
    width: 26px !important;
    height: 26px !important;
    top: 4px !important;
    font-size: 18px !important;
}
.om-flyer-v3-beneficios-box.is-single .om-flyer-v3-beneficios-titulo {
    font-size: 15px !important;
    margin-bottom: 14px !important;
}
/* 2-3 items: tamaño intermedio */
.om-flyer-v3-beneficios-box.is-few .om-flyer-v3-beneficios li {
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    margin-bottom: 6px !important;
}
.om-flyer-v3-beneficios-box.is-few .om-flyer-v3-beneficios li::before {
    width: 22px !important;
    height: 22px !important;
    font-size: 14px !important;
}


/* ============================================================
 * REDISEÑO STORY DEFAULT (nacionales/individuales/internacionales)
 * Canvas 1080x1920 - layout vertical optimizado
 * ============================================================ */

/* Header (top): pill ubicación + logo hotel */
.om-flyer-canvas--story .om-flyer-v3-header { top: 90px !important; left: 50px !important; right: 50px !important; }
.om-flyer-canvas--story .om-flyer-v3-destino-badge { font-size: 28px !important; padding: 16px 36px !important; }
.om-flyer-canvas--story .om-flyer-v3-logo { max-height: 130px !important; max-width: 280px !important; }

/* Hero (eyebrow + título + subtítulo + duración) - movido más arriba */
.om-flyer-canvas--story .om-flyer-v3-hero { top: 280px !important; left: 60px !important; right: 60px !important; }
.om-flyer-canvas--story .om-flyer-v3-eyebrow-badge { font-size: 28px !important; padding: 14px 38px !important; margin-bottom: 26px !important; }
.om-flyer-canvas--story .om-flyer-v3-titulo { font-size: 92px !important; line-height: 0.86 !important; margin-bottom: 16px !important; }
.om-flyer-canvas--story .om-flyer-v3-titulo.is-medium { font-size: 82px !important; line-height: 0.84 !important; }
.om-flyer-canvas--story .om-flyer-v3-titulo.is-long { font-size: 72px !important; line-height: 0.86 !important; }
.om-flyer-canvas--story .om-flyer-v3-titulo.is-very-long { font-size: 64px !important; line-height: 0.84 !important; }
.om-flyer-canvas--story .om-flyer-v3-subtitulo { font-size: 62px !important; margin-bottom: 32px !important; }
.om-flyer-canvas--story .om-flyer-v3-pill { font-size: 26px !important; padding: 14px 30px !important; }

/* Polaroids - centradas y un poco más abajo */
.om-flyer-canvas--story .om-flyer-v3-polaroids { top: 980px !important; left: 60px !important; right: 60px !important; gap: 16px !important; }
.om-flyer-canvas--story .om-flyer-v3-polaroid { width: 305px !important; }
.om-flyer-canvas--story .om-flyer-v3-polaroid-img { height: 305px !important; }
.om-flyer-canvas--story .om-flyer-v3-polaroid-label { font-size: 26px !important; }

/* Overlay degradado abajo para que las cards de info destaquen sobre el fondo */
.om-flyer-canvas--story::after {
    content: "";
    position: absolute;
    left: 0; right: 0; bottom: 0; height: 700px;
    background: linear-gradient(180deg, transparent 0%, rgba(41,16,143,0.05) 25%, rgba(41,16,143,0.45) 60%, rgba(41,16,143,0.85) 100%);
    z-index: 4;
    pointer-events: none;
}

/* Card INCLUYE + PRECIO - posición más alta + más grande visualmente */
.om-flyer-canvas--story .om-flyer-v3-bottom { bottom: 380px !important; left: 50px !important; right: 50px !important; gap: 18px !important; z-index: 7; }
.om-flyer-canvas--story .om-flyer-v3-beneficios-box { padding: 28px 32px !important; }
.om-flyer-canvas--story .om-flyer-v3-beneficios-titulo { font-size: 22px !important; margin-bottom: 16px !important; }
.om-flyer-canvas--story .om-flyer-v3-beneficios li { font-size: 26px !important; padding-left: 40px !important; margin-bottom: 10px !important; }
.om-flyer-canvas--story .om-flyer-v3-beneficios li::before { width: 26px !important; height: 26px !important; font-size: 16px !important; }
/* Cuando INCLUYE tiene 1 solo item en story: más grande aún */
.om-flyer-canvas--story .om-flyer-v3-beneficios-box.is-single .om-flyer-v3-beneficios li { font-size: 42px !important; padding-left: 56px !important; }
.om-flyer-canvas--story .om-flyer-v3-beneficios-box.is-single .om-flyer-v3-beneficios li::before { width: 36px !important; height: 36px !important; font-size: 22px !important; top: 6px !important; }
.om-flyer-canvas--story .om-flyer-v3-precio-box { flex: 0 0 290px !important; padding: 32px 24px !important; }
.om-flyer-canvas--story .om-flyer-v3-precio-desde { font-size: 22px !important; }
.om-flyer-canvas--story .om-flyer-v3-precio-monto { font-size: 78px !important; }
.om-flyer-canvas--story .om-flyer-v3-precio-unidad { font-size: 16px !important; }

/* Slogan de fechas - rectangular alineado con cards */
.om-flyer-canvas--story .om-flyer-v3-slogan { bottom: 250px !important; left: 50px !important; right: 50px !important; font-size: 26px !important; padding: 12px 24px !important; border-radius: 18px !important; }
.om-flyer-canvas--story .om-flyer-v3-slogan:has(.om-flyer-v3-slogan-fechas) {
    bottom: 250px !important;
    left: 50px !important;
    right: 50px !important;
    padding: 12px 24px !important;
    border-radius: 18px !important;
}
.om-flyer-canvas--story .om-flyer-v3-slogan-fechas-item { padding: 5px 16px !important; font-size: 0.95em !important; }

/* Footer - logo OM + términos en la parte más baja */
.om-flyer-canvas--story .om-flyer-v3-footer { bottom: 80px !important; left: 60px !important; right: 60px !important; z-index: 8; }
.om-flyer-canvas--story .om-flyer-v3-footer-logo-img { height: 70px !important; max-width: 260px !important; }
.om-flyer-canvas--story .om-flyer-v3-footer-tyc { font-size: 16px !important; margin-top: 8px !important; }




/* === LOGO DE AGENCIA · solo tamaño === */
/* Logo a 110px (en lugar de 80px default) — pequeño aumento que NO choca con la pill de fechas. */
.om-flyer-v3-footer-logo-img.is-agencia,
.om-flyer-canvas .om-flyer-v3-footer-logo-img.is-agencia,
.om-flyer-canvas.is-capturing .om-flyer-v3-footer-logo-img.is-agencia {
    height: 110px !important;
    max-width: 320px !important;
    opacity: 1 !important;
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.35)) !important;
}
.om-flyer-canvas--story .om-flyer-v3-footer-logo-img.is-agencia {
    height: 140px !important;
    max-width: 400px !important;
}
