/* ================================================================
   FLYER V3 · MOTOR VISUAL ESTABLE
   Estados explícitos según cantidad y tipo de imágenes.
   No depende de assets ornamentales externos para dibujar el marco.
   ================================================================ */

/* ---------- Evitar opciones incompatibles en el editor ---------- */
.opcion-plantilla.incompatible {
    opacity: 0.42;
    filter: grayscale(0.75);
    pointer-events: none;
}

.opcion-plantilla.incompatible .tarjeta-plantilla::after {
    content: "Disponible al agregar más imágenes";
    display: block;
    margin-top: 8px;
    color: #687078;
    font-size: 11px;
    line-height: 1.25;
}

/* ---------- Mensaje de calidad más discreto ---------- */
.estado-calidad-diseno {
    margin-bottom: 10px;
    padding: 9px 11px;
    border-radius: 9px;
}

.estado-calidad-diseno[data-estado="error"] {
    color: #5b3100;
    background: #fff7e8;
    border-color: #e2b868;
}

.estado-calidad-diseno[data-estado="vacio"] {
    color: #4e5960;
    background: #f6f8f8;
    border-color: #d8e0e0;
}

/* ---------- Reset fuerte de las capas anteriores ---------- */
.flyer-canvas {
    --v3-gold: #c99a46;
    --v3-gold-soft: #edce8d;
    --v3-cream: #fff7e8;
    --v3-black: #080604;
    --v3-brown: #21130c;
    --v3-deep: #0d0907;

    color: var(--v3-cream) !important;
    background:
        radial-gradient(120% 85% at 50% 44%, rgba(0, 0, 0, 0) 52%, rgba(0, 0, 0, 0.55) 100%),
        radial-gradient(9% 6% at 22% 30%, rgba(233, 197, 120, 0.12), rgba(233, 197, 120, 0) 70%),
        radial-gradient(7% 5% at 80% 24%, rgba(233, 197, 120, 0.10), rgba(233, 197, 120, 0) 70%),
        linear-gradient(180deg, rgba(120, 84, 40, 0) 62%, rgba(90, 60, 28, 0.18) 82%, rgba(40, 26, 12, 0.32) 100%),
        radial-gradient(120% 48% at 50% 106%, rgba(201, 154, 70, 0.30), rgba(201, 154, 70, 0) 60%),
        radial-gradient(140% 60% at 50% 0%, rgba(255, 214, 140, 0.10), rgba(0, 0, 0, 0) 40%),
        linear-gradient(180deg, #17100a 0%, #241610 40%, #0f0a07 62%, #060403 100%) !important;
    box-shadow: 0 2.4cqw 6cqw rgba(0, 0, 0, 0.28) !important;
}

.flyer-canvas[data-local-profile="capriccio"],
.flyer-canvas.perfil-capriccio {
    --v3-gold: #c8943b;
    --v3-gold-soft: #efcf85;
    --v3-brown: #24140b;
}

.flyer-canvas[data-local-profile="irineo"],
.flyer-canvas.perfil-irineo {
    --v3-gold: #ad772e;
    --v3-gold-soft: #dcb467;
    --v3-brown: #1c120c;
}

.flyer-canvas::before,
.flyer-canvas::after,
.flyer-gallery::before,
.flyer-gallery-item::before,
.flyer-gallery-item::after {
    box-sizing: border-box;
}

.flyer-canvas::before {
    content: "" !important;
    position: absolute !important;
    inset: 1.15cqw !important;
    z-index: 40 !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    pointer-events: none !important;
    background: transparent !important;
    border: 0.22cqw solid var(--v3-gold) !important;
    opacity: 1 !important;
    filter: none !important;
}

.flyer-canvas::after {
    content: "" !important;
    position: absolute !important;
    inset: 2.05cqw !important;
    z-index: 39 !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    pointer-events: none !important;
    background: transparent !important;
    border: 0.08cqw solid color-mix(in srgb, var(--v3-gold) 58%, transparent) !important;
    border-radius: 0 !important;
    opacity: 1 !important;
}

/* Marco interno sin archivo externo: evita iconos rotos al publicar. */
.flyer-frame-layer {
    position: absolute;
    inset: 1.15cqw;
    z-index: 41;
    display: block;
    pointer-events: none;
}

.flyer-frame-layer::before,
.flyer-frame-layer::after {
    content: "";
    position: absolute;
    width: 7cqw;
    height: 7cqw;
    border-color: var(--v3-gold);
    border-style: solid;
}

.flyer-frame-layer::before {
    top: 0.7cqw;
    left: 0.7cqw;
    border-width: 0.25cqw 0 0 0.25cqw;
    border-radius: 3.2cqw 0 0;
    box-shadow:
        1.1cqw 1.1cqw 0 -0.95cqw var(--v3-gold),
        2.15cqw 2.15cqw 0 -2cqw var(--v3-gold);
}

.flyer-frame-layer::after {
    right: 0.7cqw;
    bottom: 0.7cqw;
    border-width: 0 0.25cqw 0.25cqw 0;
    border-radius: 0 0 3.2cqw;
    box-shadow:
        -1.1cqw -1.1cqw 0 -0.95cqw var(--v3-gold),
        -2.15cqw -2.15cqw 0 -2cqw var(--v3-gold);
}

.flyer-ornamental-frame {
    display: none !important;
}

/* ---------- Tipografía y capas comunes ---------- */
.flyer-header,
.flyer-offer,
.flyer-gallery,
.flyer-price,
.flyer-footer {
    z-index: 10 !important;
}

.flyer-header {
    top: 3.2% !important;
    left: 12% !important;
    width: 76% !important;
    min-height: 7.2% !important;
}

.flyer-local-logo {
    padding: 0.55cqw 1.6cqw !important;
    background: rgba(5, 4, 3, 0.74) !important;
    border: 0.12cqw solid color-mix(in srgb, var(--v3-gold) 76%, white 24%) !important;
    border-radius: 0.45cqw !important;
    box-shadow: 0 0.65cqw 1.7cqw rgba(0, 0, 0, 0.38) !important;
}

.flyer-local-logo::after {
    display: none !important;
}

.flyer-local-logo img {
    max-width: 33cqw !important;
    max-height: 6.2cqw !important;
    filter: none !important;
}

.flyer-local-logo span {
    max-width: 46cqw !important;
    color: #fff !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 4.2cqw !important;
    font-style: italic !important;
    line-height: 0.86 !important;
    text-transform: none !important;
}

.flyer-edition {
    display: none !important;
}

.flyer-offer {
    top: 12.4% !important;
    left: 7.5% !important;
    width: 85% !important;
    text-align: center !important;
}

.flyer-eyebrow {
    margin: 0 0 0.75cqw !important;
    color: var(--v3-cream) !important;
    font-family: "Cinzel", Georgia, serif !important;
    font-size: 3.05cqw !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.13em !important;
    text-shadow: 0 0.35cqw 0.9cqw rgba(0, 0, 0, 0.62) !important;
    text-transform: uppercase !important;
}

.flyer-title {
    max-width: 92% !important;
    margin: 0 auto !important;
    color: var(--v3-gold-soft) !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 7.15cqw !important;
    font-weight: 700 !important;
    line-height: 0.9 !important;
    letter-spacing: -0.018em !important;
    text-shadow: 0 0.45cqw 1.15cqw rgba(0, 0, 0, 0.68) !important;
    text-transform: none !important;
    text-wrap: balance;
}

.flyer-description {
    max-width: 76% !important;
    margin: 0.75cqw auto 0 !important;
    color: rgba(255, 247, 232, 0.9) !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 1.72cqw !important;
    font-style: italic !important;
    font-weight: 600 !important;
    line-height: 1.22 !important;
    text-shadow: 0 0.25cqw 0.7cqw rgba(0, 0, 0, 0.62) !important;
}

.flyer-product-list {
    display: none !important;
}

.flyer-price {
    right: 5.2% !important;
    bottom: 4.1% !important;
    z-index: 30 !important;
    filter: none !important;
}

.flyer-price-label {
    display: none !important;
}

.flyer-price-value {
    min-width: 27cqw !important;
    padding: 1.25cqw 2.35cqw 1.05cqw !important;
    color: #fff8ea !important;
    background: rgba(5, 4, 3, 0.95) !important;
    border: 0.22cqw solid var(--v3-gold) !important;
    border-radius: 0 !important;
    box-shadow: 0 1cqw 2.5cqw rgba(0, 0, 0, 0.56) !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 5.9cqw !important;
    font-weight: 700 !important;
    line-height: 0.9 !important;
    text-align: center !important;
}

.flyer-footer {
    left: 5.3% !important;
    bottom: 3% !important;
    width: 33% !important;
    height: 4.6% !important;
    justify-content: flex-start !important;
    gap: 0.75cqw !important;
    padding: 0.65cqw 1cqw !important;
    background: rgba(5, 4, 3, 0.92) !important;
    border-top: 0.08cqw solid color-mix(in srgb, var(--v3-gold) 62%, transparent) !important;
}

.flyer-footer img {
    max-width: 7cqw !important;
    max-height: 2.8cqw !important;
    padding: 0.15cqw 0.3cqw !important;
}

.flyer-footer span {
    color: rgba(255, 247, 232, 0.76) !important;
    font-size: 0.56cqw !important;
    letter-spacing: 0.15em !important;
}


/* ---------- Ajustes V4: mejor lectura y logos centrados ---------- */
.flyer-header {
    z-index: 24 !important;
    top: 3.4% !important;
    left: 50% !important;
    width: auto !important;
    max-width: 74% !important;
    min-height: 6.8% !important;
    transform: translateX(-50%) !important;
    justify-content: center !important;
}

.flyer-local-logo {
    margin: 0 auto !important;
}

.flyer-offer {
    position: absolute !important;
    z-index: 23 !important;
    top: 14% !important;
    left: 8% !important;
    width: 84% !important;
}

.flyer-offer::before {
    content: "" !important;
    position: absolute !important;
    inset: -1.1cqw 6% auto 6% !important;
    height: 18cqw !important;
    z-index: -1 !important;
    background: linear-gradient(180deg, rgba(6, 4, 3, 0.72), rgba(6, 4, 3, 0.36) 62%, transparent 100%) !important;
    filter: blur(0.2cqw) !important;
    pointer-events: none !important;
}

.flyer-eyebrow,
.flyer-title,
.flyer-description {
    position: relative !important;
    z-index: 1 !important;
}

.flyer-eyebrow {
    color: #F4D99A !important;
}

.flyer-title {
    color: #FFF3DA !important;
}

.flyer-description {
    color: rgba(255, 245, 228, 0.92) !important;
}

.flyer-gallery {
    z-index: 12 !important;
}

.flyer-price {
    z-index: 28 !important;
}

.flyer-footer {
    z-index: 27 !important;
}

.flyer-canvas.estado-vacio .flyer-title,
.flyer-canvas[data-visual-state="vacio"] .flyer-title {
    color: #F7E4BB !important;
    opacity: 1 !important;
}

.flyer-canvas.estado-vacio .flyer-eyebrow,
.flyer-canvas[data-visual-state="vacio"] .flyer-eyebrow,
.flyer-canvas.estado-vacio .flyer-description,
.flyer-canvas[data-visual-state="vacio"] .flyer-description {
    color: rgba(255, 244, 224, 0.88) !important;
    opacity: 1 !important;
}

/* Bonus: mismo lenguaje centrado que la referencia de Capriccio. */
.flyer-canvas[data-local-profile="bonus"],
.flyer-canvas.perfil-bonus {
    --v3-gold: #c8943b;
    --v3-gold-soft: #f3d38d;
    --v3-brown: #23140c;
}

.flyer-canvas[data-local-profile="bonus"] .flyer-local-logo,
.flyer-canvas.perfil-bonus .flyer-local-logo {
    padding: 0.6cqw 1.75cqw !important;
    background: rgba(5, 4, 3, 0.86) !important;
    border: 0.13cqw solid rgba(244, 217, 154, 0.92) !important;
    border-radius: 0.5cqw !important;
}

.flyer-canvas[data-local-profile="bonus"] .flyer-local-logo img,
.flyer-canvas.perfil-bonus .flyer-local-logo img {
    max-width: 24cqw !important;
    max-height: 7.2cqw !important;
}

.flyer-canvas[data-local-profile="bonus"] .flyer-offer,
.flyer-canvas.perfil-bonus .flyer-offer {
    top: 14.6% !important;
}

.flyer-canvas[data-local-profile="bonus"] .flyer-eyebrow,
.flyer-canvas.perfil-bonus .flyer-eyebrow {
    font-size: 2.65cqw !important;
    letter-spacing: 0.12em !important;
}

.flyer-canvas[data-local-profile="bonus"] .flyer-title,
.flyer-canvas.perfil-bonus .flyer-title {
    max-width: 88% !important;
    color: #FFF5E5 !important;
    font-size: 6.35cqw !important;
    line-height: 0.92 !important;
    text-shadow: 0 0.5cqw 1.2cqw rgba(0, 0, 0, 0.84) !important;
}

.flyer-canvas[data-local-profile="bonus"] .flyer-description,
.flyer-canvas.perfil-bonus .flyer-description {
    max-width: 78% !important;
    font-size: 1.65cqw !important;
}

/* ---------- Galería: reset universal ---------- */
.flyer-gallery {
    top: 34% !important;
    left: 4.8% !important;
    width: 90.4% !important;
    height: 57.2% !important;
    display: block !important;
    overflow: hidden !important;
    gap: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.flyer-gallery::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 7 !important;
    display: block !important;
    pointer-events: none !important;
    background:
        linear-gradient(180deg, rgba(6, 4, 3, 0.48) 0%, transparent 22%, transparent 65%, rgba(6, 4, 3, 0.42) 100%),
        radial-gradient(ellipse at center, transparent 45%, rgba(0, 0, 0, 0.18) 100%) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    filter: none !important;
}

.flyer-gallery-item {
    position: absolute !important;
    inset: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

.flyer-gallery-item::before,
.flyer-gallery-item::after {
    display: none !important;
}

.flyer-gallery-item img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    object-position: center !important;
    mix-blend-mode: normal !important;
}

.flyer-image-caption {
    display: none !important;
}

/* ---------- Estado vacío: nunca mostrar un rectángulo blanco ---------- */
.flyer-canvas.estado-vacio .flyer-gallery,
.flyer-canvas[data-visual-state="vacio"] .flyer-gallery {
    top: 34% !important;
    left: 8% !important;
    width: 84% !important;
    height: 51% !important;
    display: grid !important;
    place-items: center !important;
    background:
        radial-gradient(circle at 50% 44%, rgba(210, 160, 76, 0.14), transparent 31%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.025), rgba(0, 0, 0, 0.18)) !important;
    border: 0.1cqw solid color-mix(in srgb, var(--v3-gold) 36%, transparent) !important;
}

.flyer-canvas.estado-vacio .flyer-gallery::before,
.flyer-canvas[data-visual-state="vacio"] .flyer-gallery::before {
    background: none !important;
}

.flyer-canvas.estado-vacio .flyer-gallery-vacia,
.flyer-canvas[data-visual-state="vacio"] .flyer-gallery-vacia {
    display: grid !important;
    place-items: center !important;
    width: 80% !important;
    min-height: 12cqw !important;
    padding: 2cqw !important;
    color: rgba(255, 247, 232, 0.64) !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 2.1cqw !important;
    font-style: italic !important;
    line-height: 1.2 !important;
    text-align: center !important;
    background: rgba(5, 4, 3, 0.22) !important;
    border: 0.08cqw dashed color-mix(in srgb, var(--v3-gold) 45%, transparent) !important;
}

.flyer-canvas.estado-vacio .flyer-price,
.flyer-canvas[data-visual-state="vacio"] .flyer-price {
    opacity: 0.28 !important;
}

/* ---------- 1 fotografía ambiental: fondo protagonista ---------- */
.flyer-canvas.estado-foto-1 .flyer-gallery,
.flyer-canvas[data-visual-state="foto-1"] .flyer-gallery {
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 1 !important;
}

.flyer-canvas.estado-foto-1 .flyer-gallery-item,
.flyer-canvas[data-visual-state="foto-1"] .flyer-gallery-item {
    inset: 0 !important;
}

.flyer-canvas.estado-foto-1 .flyer-gallery-item img,
.flyer-canvas[data-visual-state="foto-1"] .flyer-gallery-item img {
    object-fit: cover !important;
    filter: saturate(1.08) contrast(1.07) brightness(0.72) sepia(0.08) !important;
}

.flyer-canvas.estado-foto-1 .flyer-gallery::before,
.flyer-canvas[data-visual-state="foto-1"] .flyer-gallery::before {
    z-index: 5 !important;
    background:
        linear-gradient(180deg, rgba(5, 3, 2, 0.78) 0%, rgba(5, 3, 2, 0.42) 28%, transparent 51%, rgba(5, 3, 2, 0.35) 74%, rgba(5, 3, 2, 0.78) 100%),
        radial-gradient(ellipse at center, transparent 40%, rgba(0, 0, 0, 0.33) 100%) !important;
}

.flyer-canvas.estado-foto-1 .flyer-offer,
.flyer-canvas[data-visual-state="foto-1"] .flyer-offer {
    top: 14.5% !important;
}

/* ---------- 1 producto recortado ---------- */
.flyer-canvas.estado-producto-1 .flyer-gallery,
.flyer-canvas[data-visual-state="producto-1"] .flyer-gallery {
    top: 31.5% !important;
    left: 9% !important;
    width: 82% !important;
    height: 58% !important;
    overflow: visible !important;
    background:
        radial-gradient(ellipse at 50% 75%, rgba(193, 137, 55, 0.26), transparent 37%),
        radial-gradient(circle at 50% 42%, rgba(255, 242, 216, 0.09), transparent 46%) !important;
}

.flyer-canvas.estado-producto-1 .flyer-gallery::before,
.flyer-canvas[data-visual-state="producto-1"] .flyer-gallery::before {
    inset: auto 14% 3% 14% !important;
    height: 7% !important;
    background: rgba(0, 0, 0, 0.58) !important;
    border-radius: 50% !important;
    filter: blur(1.35cqw) !important;
}

.flyer-canvas.estado-producto-1 .flyer-gallery-item,
.flyer-canvas[data-visual-state="producto-1"] .flyer-gallery-item {
    top: 1% !important;
    left: 16% !important;
    width: 68% !important;
    height: 92% !important;
    overflow: visible !important;
}

.flyer-canvas.estado-producto-1 .flyer-gallery-item img,
.flyer-canvas[data-visual-state="producto-1"] .flyer-gallery-item img {
    object-fit: contain !important;
    filter:
        drop-shadow(0 1.45cqw 1.25cqw rgba(0, 0, 0, 0.62))
        drop-shadow(0 0.2cqw 0.3cqw rgba(255, 255, 255, 0.09)) !important;
}

/* ---------- 2 productos recortados: composición jerárquica ---------- */
.flyer-canvas.estado-producto-2 .flyer-gallery,
.flyer-canvas[data-visual-state="producto-2"] .flyer-gallery {
    top: 31.5% !important;
    left: 7% !important;
    width: 86% !important;
    height: 58% !important;
    overflow: visible !important;
    background:
        radial-gradient(ellipse at 48% 76%, rgba(198, 144, 58, 0.27), transparent 40%),
        radial-gradient(circle at 46% 43%, rgba(255, 244, 220, 0.1), transparent 48%) !important;
}

.flyer-canvas.estado-producto-2 .flyer-gallery::before,
.flyer-canvas[data-visual-state="producto-2"] .flyer-gallery::before {
    inset: auto 9% 3.2% 9% !important;
    height: 7.5% !important;
    background: rgba(0, 0, 0, 0.58) !important;
    border-radius: 50% !important;
    filter: blur(1.45cqw) !important;
}

.flyer-canvas.estado-producto-2 .flyer-gallery-item,
.flyer-canvas[data-visual-state="producto-2"] .flyer-gallery-item {
    overflow: visible !important;
}

.flyer-canvas.estado-producto-2 .flyer-gallery-item:first-child,
.flyer-canvas[data-visual-state="producto-2"] .flyer-gallery-item:first-child {
    top: 0 !important;
    left: 2% !important;
    width: 59% !important;
    height: 94% !important;
    z-index: 2 !important;
    transform: rotate(-1.2deg) !important;
}

.flyer-canvas.estado-producto-2 .flyer-gallery-item:last-child,
.flyer-canvas[data-visual-state="producto-2"] .flyer-gallery-item:last-child {
    right: 0 !important;
    bottom: 11% !important;
    width: 49% !important;
    height: 43% !important;
    z-index: 3 !important;
    transform: rotate(1.6deg) !important;
}

.flyer-canvas.estado-producto-2 .flyer-gallery-item:first-child[data-ratio="horizontal"],
.flyer-canvas[data-visual-state="producto-2"] .flyer-gallery-item:first-child[data-ratio="horizontal"] {
    top: 9% !important;
    left: 0 !important;
    width: 57% !important;
    height: 52% !important;
}

.flyer-canvas.estado-producto-2 .flyer-gallery-item:first-child[data-ratio="horizontal"] + .flyer-gallery-item[data-ratio="vertical"],
.flyer-canvas[data-visual-state="producto-2"] .flyer-gallery-item:first-child[data-ratio="horizontal"] + .flyer-gallery-item[data-ratio="vertical"] {
    right: 2% !important;
    bottom: 0 !important;
    width: 54% !important;
    height: 93% !important;
}

.flyer-canvas.estado-producto-2 .flyer-gallery-item img,
.flyer-canvas[data-visual-state="producto-2"] .flyer-gallery-item img {
    object-fit: contain !important;
    filter:
        drop-shadow(0 1.45cqw 1.2cqw rgba(0, 0, 0, 0.62))
        drop-shadow(0 0.2cqw 0.28cqw rgba(255, 255, 255, 0.08)) !important;
}

/* ---------- 2 fotografías: columnas estilo Irineo ---------- */
.flyer-canvas.estado-foto-2 .flyer-gallery,
.flyer-canvas[data-visual-state="foto-2"] .flyer-gallery {
    top: 35.8% !important;
    left: 2.5% !important;
    width: 95% !important;
    height: 57.5% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0.9cqw !important;
    overflow: hidden !important;
}

.flyer-canvas.estado-foto-2 .flyer-gallery::before,
.flyer-canvas[data-visual-state="foto-2"] .flyer-gallery::before {
    display: none !important;
}

.flyer-canvas.estado-foto-2 .flyer-gallery-item,
.flyer-canvas[data-visual-state="foto-2"] .flyer-gallery-item {
    position: relative !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    overflow: hidden !important;
    border: 0.1cqw solid color-mix(in srgb, var(--v3-gold) 52%, transparent) !important;
}

.flyer-canvas.estado-foto-2 .flyer-gallery-item img,
.flyer-canvas[data-visual-state="foto-2"] .flyer-gallery-item img {
    object-fit: cover !important;
    filter: saturate(1.06) contrast(1.06) brightness(0.82) sepia(0.06) !important;
}

.flyer-canvas.estado-foto-2 .flyer-image-caption,
.flyer-canvas[data-visual-state="foto-2"] .flyer-image-caption {
    position: absolute !important;
    right: 1.25cqw !important;
    bottom: 1.2cqw !important;
    left: 1.25cqw !important;
    z-index: 9 !important;
    display: block !important;
    min-height: 5.6cqw !important;
    padding: 1.05cqw 0.8cqw !important;
    color: var(--v3-cream) !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 1.5cqw !important;
    font-weight: 700 !important;
    line-height: 1.05 !important;
    letter-spacing: 0.04em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    background: rgba(6, 4, 3, 0.91) !important;
    border: 0.1cqw solid var(--v3-gold) !important;
}

/* ---------- Colección 3 o 4 imágenes ---------- */
.flyer-canvas.estado-coleccion .flyer-gallery,
.flyer-canvas[data-visual-state="coleccion"] .flyer-gallery {
    top: 34.5% !important;
    left: 4.5% !important;
    width: 91% !important;
    height: 58% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: minmax(0, 1fr) !important;
    gap: 0.75cqw !important;
    padding: 0.7cqw !important;
    overflow: hidden !important;
    background: rgba(4, 3, 2, 0.55) !important;
    border: 0.1cqw solid color-mix(in srgb, var(--v3-gold) 46%, transparent) !important;
}

.flyer-canvas.estado-coleccion .flyer-gallery::before,
.flyer-canvas[data-visual-state="coleccion"] .flyer-gallery::before {
    display: none !important;
}

.flyer-canvas.estado-coleccion .flyer-gallery-item,
.flyer-canvas[data-visual-state="coleccion"] .flyer-gallery-item {
    position: relative !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    overflow: hidden !important;
    background: rgba(255, 255, 255, 0.035) !important;
    border: 0.08cqw solid color-mix(in srgb, var(--v3-gold) 38%, transparent) !important;
}

.flyer-canvas.estado-coleccion.modo-fotografia .flyer-gallery-item img,
.flyer-canvas[data-visual-state="coleccion"].modo-fotografia .flyer-gallery-item img {
    object-fit: cover !important;
    filter: saturate(1.05) contrast(1.05) brightness(0.84) sepia(0.05) !important;
}

.flyer-canvas.estado-coleccion.modo-producto .flyer-gallery-item img,
.flyer-canvas[data-visual-state="coleccion"].modo-producto .flyer-gallery-item img {
    object-fit: contain !important;
    padding: 1.1cqw !important;
    filter: drop-shadow(0 0.9cqw 0.9cqw rgba(0, 0, 0, 0.56)) !important;
}

.flyer-canvas.estado-coleccion .flyer-image-caption,
.flyer-canvas[data-visual-state="coleccion"] .flyer-image-caption {
    position: absolute !important;
    right: 0.7cqw !important;
    bottom: 0.7cqw !important;
    left: 0.7cqw !important;
    z-index: 9 !important;
    display: block !important;
    padding: 0.55cqw 0.65cqw !important;
    color: var(--v3-cream) !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 0.92cqw !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    background: rgba(6, 4, 3, 0.88) !important;
    border: 0.08cqw solid color-mix(in srgb, var(--v3-gold) 75%, transparent) !important;
}

/* ---------- Imágenes que no cargan ---------- */
.flyer-gallery-item.imagen-error {
    display: grid !important;
    place-items: center !important;
    background:
        radial-gradient(circle at 50% 50%, rgba(198, 145, 62, 0.12), transparent 34%),
        rgba(5, 4, 3, 0.52) !important;
    border: 0.1cqw dashed color-mix(in srgb, var(--v3-gold) 45%, transparent) !important;
}

.flyer-gallery-item.imagen-error::after {
    content: "Imagen no disponible" !important;
    position: static !important;
    display: block !important;
    color: rgba(255, 247, 232, 0.68) !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 1.6cqw !important;
    filter: none !important;
}

.flyer-gallery-item.imagen-error img {
    display: none !important;
}

/* ---------- Densidad textual ---------- */
.flyer-canvas.titulo-largo .flyer-title {
    font-size: 6.05cqw !important;
    line-height: 0.94 !important;
}

.flyer-canvas.titulo-muy-largo .flyer-title {
    font-size: 5.05cqw !important;
    line-height: 0.98 !important;
}

.flyer-canvas.descripcion-larga .flyer-description {
    max-width: 82% !important;
    font-size: 1.45cqw !important;
}

/* ---------- Preview chica ---------- */
.hoja-a4 .flyer-canvas {
    transform: translateZ(0);
}

@media print {
    .flyer-canvas,
    .flyer-canvas::before,
    .flyer-canvas::after,
    .flyer-frame-layer,
    .flyer-gallery::before,
    .flyer-price-value,
    .flyer-footer {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }
}

/* ================================================================
   MARCO ORNAMENTAL INLINE · CAPRICCIO / IRINEO
   SVG embebido: sin rutas externas, nítido en preview y PDF.
   ================================================================ */
.flyer-ornamental-frame {
    position: absolute !important;
    inset: 0 !important;
    z-index: 60 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    overflow: visible !important;
    color: var(--v3-gold, #c99a46) !important;
    pointer-events: none !important;
    opacity: 0.98 !important;
    filter: drop-shadow(0 0.18cqw 0.34cqw rgba(0, 0, 0, 0.58)) !important;
}

.flyer-ornamental-frame .ornament-main {
    fill: none;
    stroke: currentColor;
    stroke-width: 2.35;
    stroke-linecap: round;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
}

.flyer-ornamental-frame .ornament-thin {
    stroke-width: 1.25;
    opacity: 0.82;
}

.flyer-ornamental-frame .ornament-fill {
    fill: currentColor;
    stroke: none;
}

.flyer-canvas[data-local-profile="irineo"] .flyer-ornamental-frame,
.flyer-canvas.perfil-irineo .flyer-ornamental-frame {
    color: #ad772e !important;
}

.flyer-canvas[data-local-profile="capriccio"] .flyer-ornamental-frame,
.flyer-canvas.perfil-capriccio .flyer-ornamental-frame {
    color: #c8943b !important;
}

/* El marco reemplaza las esquinas CSS simplificadas. */
.flyer-frame-layer,
.flyer-canvas::before,
.flyer-canvas::after {
    pointer-events: none !important;
}

.flyer-frame-layer {
    display: none !important;
}

@media print {
    .flyer-ornamental-frame,
    .flyer-ornamental-frame * {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }
}

/* Logo, precio y pie deben quedar por encima del ornamento central/corners. */
.flyer-header,
.flyer-price,
.flyer-footer {
    z-index: 70 !important;
}


/* ---------- Ajustes V5: precio y footer más pro ---------- */
.flyer-price {
    right: 4.9% !important;
    bottom: 4.6% !important;
    z-index: 32 !important;
}

.flyer-price-value {
    min-width: 29.5cqw !important;
    padding: 1.35cqw 2.75cqw 1.12cqw !important;
    color: #FFF8EE !important;
    background: rgba(8, 6, 5, 0.98) !important;
    border: 0.24cqw solid color-mix(in srgb, var(--v3-gold-soft) 92%, white 8%) !important;
    box-shadow:
        0 0 0 0.08cqw rgba(255, 246, 227, 0.07),
        0 1.1cqw 2.6cqw rgba(0, 0, 0, 0.62),
        0 0 1.25cqw rgba(201, 154, 70, 0.16) !important;
    font-size: 6.45cqw !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
    line-height: 0.9 !important;
}

.flyer-footer {
    left: 50% !important;
    bottom: 2.2% !important;
    width: 44% !important;
    height: 4.8% !important;
    transform: translateX(-50%) !important;
    justify-content: center !important;
    gap: 0.95cqw !important;
    padding: 0.55cqw 1.3cqw !important;
    background: linear-gradient(180deg, rgba(7, 5, 4, 0.18), rgba(7, 5, 4, 0.46)) !important;
    border-top: 0.08cqw solid rgba(244, 217, 154, 0.28) !important;
    border-bottom: 0.08cqw solid rgba(244, 217, 154, 0.12) !important;
    border-radius: 999px !important;
    box-shadow: 0 0.45cqw 1.2cqw rgba(0, 0, 0, 0.18) !important;
    z-index: 27 !important;
}

.flyer-footer img {
    max-width: 9.2cqw !important;
    max-height: 3.6cqw !important;
    padding: 0.12cqw 0.22cqw !important;
    opacity: 0.95 !important;
}

.flyer-footer span {
    color: rgba(244, 229, 198, 0.82) !important;
    font-size: 0.84cqw !important;
    font-weight: 700 !important;
    letter-spacing: 0.16em !important;
    white-space: nowrap !important;
}

.flyer-canvas.estado-vacio .flyer-footer,
.flyer-canvas[data-visual-state="vacio"] .flyer-footer {
    opacity: 0.92 !important;
}

.flyer-canvas[data-local-profile="bonus"] .flyer-price-value,
.flyer-canvas.perfil-bonus .flyer-price-value {
    min-width: 28.8cqw !important;
}

/* ================================================================
   V6 · PLANTILLA 1 BASADA EN LA REFERENCIA FOTOGRÁFICA PREMIUM
   Jerarquía: logo > PROMO > título dorado > fotografía > precio.
   ================================================================ */

/* Se utiliza el SVG fino y se eliminan los marcos CSS anteriores. */
.flyer-canvas.plantilla-impacto::before,
.flyer-canvas.plantilla-impacto::after,
.flyer-canvas.plantilla-impacto .flyer-frame-layer {
    display: none !important;
}

.flyer-canvas.plantilla-impacto .flyer-ornamental-frame {
    position: absolute !important;
    inset: 0.6cqw !important;
    z-index: 45 !important;
    display: block !important;
    width: calc(100% - 1.2cqw) !important;
    height: calc(100% - 1.2cqw) !important;
    overflow: visible !important;
    pointer-events: none !important;
    opacity: 0.98 !important;
    filter: drop-shadow(0 0 0.18cqw rgba(0, 0, 0, 0.36)) !important;
}

.flyer-canvas.plantilla-impacto .flyer-ornamental-frame .ornament-main {
    fill: none !important;
    stroke: var(--v3-gold) !important;
    stroke-width: 4.2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.flyer-canvas.plantilla-impacto .flyer-ornamental-frame .ornament-thin {
    stroke-width: 2.1 !important;
    opacity: 0.74 !important;
}

.flyer-canvas.plantilla-impacto .flyer-ornamental-frame .ornament-fill {
    fill: var(--v3-gold) !important;
    stroke: none !important;
}

/* Logo protagonista, centrado como en la pieza de referencia. */
.flyer-canvas.plantilla-impacto .flyer-header {
    top: 1.7% !important;
    left: 50% !important;
    width: 62% !important;
    max-width: none !important;
    min-height: 8.5% !important;
    transform: translateX(-50%) !important;
    z-index: 34 !important;
}

.flyer-canvas.plantilla-impacto .flyer-local-logo {
    width: 100% !important;
    min-height: 7.8cqw !important;
    margin: 0 auto !important;
    padding: 0.25cqw 2.2cqw !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.flyer-canvas.plantilla-impacto .flyer-local-logo img {
    width: auto !important;
    max-width: 46cqw !important;
    max-height: 9.5cqw !important;
    object-fit: contain !important;
    filter: drop-shadow(0 0.45cqw 0.75cqw rgba(0, 0, 0, 0.72)) !important;
}

.flyer-canvas.plantilla-impacto .flyer-local-logo span {
    max-width: 100% !important;
    color: #FFF8EE !important;
    font-size: 7.2cqw !important;
    font-weight: 600 !important;
    text-shadow: 0 0.45cqw 0.85cqw rgba(0, 0, 0, 0.78) !important;
}

/* Encabezado textual con la escala y los colores de la referencia. */
.flyer-canvas.plantilla-impacto .flyer-offer {
    top: 10.5% !important;
    left: 7% !important;
    width: 86% !important;
    z-index: 33 !important;
    text-align: center !important;
}

.flyer-canvas.plantilla-impacto .flyer-offer::before {
    inset: -1.1cqw 0 auto 0 !important;
    height: 24cqw !important;
    background: linear-gradient(
        180deg,
        rgba(8, 5, 3, 0.90) 0%,
        rgba(8, 5, 3, 0.66) 58%,
        rgba(8, 5, 3, 0) 100%
    ) !important;
}

.flyer-canvas.plantilla-impacto .flyer-offer::after {
    content: "" !important;
    position: relative !important;
    display: block !important;
    width: 58% !important;
    height: 2.5cqw !important;
    margin: 1.25cqw auto 0 !important;
    background:
        linear-gradient(90deg, transparent 0 5%, var(--v3-gold) 5% 43%, transparent 43% 57%, var(--v3-gold) 57% 95%, transparent 95%),
        radial-gradient(circle at 50% 50%, var(--v3-gold) 0 0.44cqw, transparent 0.48cqw),
        linear-gradient(45deg, transparent 44%, var(--v3-gold) 45% 55%, transparent 56%) center / 1.35cqw 1.35cqw no-repeat !important;
    opacity: 0.94 !important;
}

.flyer-canvas.plantilla-impacto .flyer-eyebrow {
    margin: 0 0 0.85cqw !important;
    color: #FFF9F1 !important;
    font-size: 5.25cqw !important;
    font-weight: 700 !important;
    line-height: 0.95 !important;
    letter-spacing: 0.035em !important;
    text-shadow: 0 0.45cqw 0.9cqw rgba(0, 0, 0, 0.84) !important;
}

.flyer-canvas.plantilla-impacto .flyer-title {
    max-width: 94% !important;
    margin: 0 auto !important;
    color: #D8A547 !important;
    font-size: 7.35cqw !important;
    font-weight: 700 !important;
    line-height: 0.92 !important;
    letter-spacing: -0.018em !important;
    text-shadow: 0 0.42cqw 0.9cqw rgba(0, 0, 0, 0.78) !important;
}

.flyer-canvas.plantilla-impacto .flyer-description {
    max-width: 72% !important;
    margin: 0.75cqw auto 0 !important;
    color: rgba(255, 246, 229, 0.88) !important;
    font-size: 1.55cqw !important;
    line-height: 1.15 !important;
}

/* La zona visual comienza más abajo para no competir con el título. */
.flyer-canvas.plantilla-impacto .flyer-gallery {
    top: 29.5% !important;
    left: 3.6% !important;
    width: 92.8% !important;
    height: 64.8% !important;
    z-index: 11 !important;
}

/* Fotografía ambiental: ocupa toda la pieza como en la referencia. */
.flyer-canvas.plantilla-impacto.estado-foto-1 .flyer-gallery,
.flyer-canvas.plantilla-impacto[data-visual-state="foto-1"] .flyer-gallery {
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

.flyer-canvas.plantilla-impacto.estado-foto-1 .flyer-gallery::before,
.flyer-canvas.plantilla-impacto[data-visual-state="foto-1"] .flyer-gallery::before {
    background:
        linear-gradient(180deg, rgba(5, 3, 2, 0.76) 0%, rgba(5, 3, 2, 0.34) 32%, transparent 54%),
        linear-gradient(0deg, rgba(5, 3, 2, 0.20) 0%, transparent 34%),
        radial-gradient(ellipse at center, transparent 52%, rgba(0, 0, 0, 0.22) 100%) !important;
}

/* Precio: tamaño, tipografía blanca y placa negra de la referencia. */
.flyer-canvas.plantilla-impacto .flyer-price {
    right: 3.8% !important;
    bottom: 3.2% !important;
    z-index: 40 !important;
}

.flyer-canvas.plantilla-impacto .flyer-price-value {
    min-width: 34cqw !important;
    padding: 1.55cqw 2.45cqw 1.2cqw !important;
    color: #FFFFFF !important;
    background: rgba(4, 3, 2, 0.96) !important;
    border: 0.28cqw solid var(--v3-gold) !important;
    border-radius: 0 !important;
    box-shadow: 0 0.9cqw 2.2cqw rgba(0, 0, 0, 0.52) !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 8.1cqw !important;
    font-weight: 700 !important;
    line-height: 0.86 !important;
    letter-spacing: -0.025em !important;
}

/* Pie institucional: texto a la izquierda y logo HIP realmente centrado. */
.flyer-canvas.plantilla-impacto .flyer-footer {
    left: 3.8% !important;
    right: 3.8% !important;
    bottom: 1.25% !important;
    width: auto !important;
    height: 4.2% !important;
    transform: none !important;
    display: block !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    z-index: 38 !important;
}

.flyer-canvas.plantilla-impacto .flyer-footer img {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: auto !important;
    max-width: 11.5cqw !important;
    max-height: 3.5cqw !important;
    padding: 0 !important;
    transform: translate(-50%, -50%) !important;
    opacity: 0.98 !important;
}

.flyer-canvas.plantilla-impacto .flyer-footer span {
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    color: rgba(247, 226, 189, 0.88) !important;
    font-size: 0.92cqw !important;
    font-weight: 700 !important;
    letter-spacing: 0.13em !important;
    transform: translateY(-50%) !important;
    white-space: nowrap !important;
}

/* Ajustes específicos de largo del título sin perder impacto. */
.flyer-canvas.plantilla-impacto.titulo-largo .flyer-title {
    font-size: 6.35cqw !important;
}

.flyer-canvas.plantilla-impacto.titulo-muy-largo .flyer-title {
    font-size: 5.45cqw !important;
    line-height: 0.94 !important;
}

/* Bonus usa la misma jerarquía editorial, con logo visible y centrado. */
.flyer-canvas.plantilla-impacto[data-local-profile="bonus"] .flyer-local-logo img,
.flyer-canvas.plantilla-impacto.perfil-bonus .flyer-local-logo img {
    max-width: 17cqw !important;
    max-height: 10.5cqw !important;
}


/* ---------- Ajustes V7: acercamiento a referencia Capriccio ---------- */
.flyer-canvas.plantilla-impacto .flyer-header {
    top: 2.25% !important;
    left: 50% !important;
    width: 56% !important;
    min-height: 7.8% !important;
}

.flyer-canvas.plantilla-impacto .flyer-local-logo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    min-height: 7cqw !important;
    padding: 0.2cqw 1.6cqw !important;
}

.flyer-canvas.plantilla-impacto .flyer-local-logo img {
    max-width: 50cqw !important;
    max-height: 10.4cqw !important;
}

.flyer-canvas.plantilla-impacto .flyer-local-logo span {
    display: inline-block !important;
    width: auto !important;
    text-align: center !important;
}

.flyer-canvas.plantilla-impacto .flyer-offer {
    top: 10.8% !important;
    left: 6.5% !important;
    width: 87% !important;
}

.flyer-canvas.plantilla-impacto .flyer-eyebrow {
    color: #FFF9F1 !important;
    font-size: 5.9cqw !important;
    letter-spacing: 0.02em !important;
    margin-bottom: 0.7cqw !important;
}

.flyer-canvas.plantilla-impacto .flyer-title {
    max-width: 92% !important;
    color: #FFF9F1 !important;
    font-size: 6.45cqw !important;
    line-height: 0.95 !important;
    letter-spacing: -0.01em !important;
}

.flyer-canvas.plantilla-impacto .flyer-description {
    max-width: 86% !important;
    margin-top: 1.1cqw !important;
    color: #D8A547 !important;
    font-size: 4.25cqw !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 0.98 !important;
    white-space: pre-line !important;
    text-shadow: 0 0.36cqw 0.75cqw rgba(0, 0, 0, 0.74) !important;
}

.flyer-canvas.plantilla-impacto .flyer-offer::after {
    width: 54% !important;
    margin-top: 1cqw !important;
}

.flyer-canvas.plantilla-impacto .flyer-gallery {
    top: 35.5% !important;
    height: 57.8% !important;
}

.flyer-canvas.plantilla-impacto.estado-producto-2 .flyer-gallery-item:first-child,
.flyer-canvas.plantilla-impacto[data-visual-state="producto-2"] .flyer-gallery-item:first-child {
    top: 2.5% !important;
    left: 4% !important;
    width: 51% !important;
    height: 86% !important;
    transform: rotate(-0.8deg) !important;
}

.flyer-canvas.plantilla-impacto.estado-producto-2 .flyer-gallery-item:last-child,
.flyer-canvas.plantilla-impacto[data-visual-state="producto-2"] .flyer-gallery-item:last-child {
    right: 1% !important;
    bottom: 12.5% !important;
    width: 54% !important;
    height: 49% !important;
    transform: rotate(1.1deg) !important;
}

.flyer-canvas.plantilla-impacto .flyer-price {
    right: 4.1% !important;
    bottom: 4.2% !important;
}

.flyer-canvas.plantilla-impacto .flyer-price-value {
    min-width: 36cqw !important;
    padding: 1.7cqw 2.7cqw 1.25cqw !important;
    font-size: 8.8cqw !important;
    line-height: 0.84 !important;
}

.flyer-canvas.plantilla-impacto.titulo-largo .flyer-title {
    font-size: 5.95cqw !important;
}

.flyer-canvas.plantilla-impacto.titulo-muy-largo .flyer-title {
    font-size: 5.2cqw !important;
}


/* =========================================================
   V7 FINAL · PLANTILLA 1 SEGÚN REFERENCIA CAPRICCIO
   - logo centrado y protagonista
   - PROMO/COMBO blanco
   - artículos en dorado y de mayor tamaño
   - proporción equilibrada entre bebida y snack
   ========================================================= */
.flyer-canvas.plantilla-impacto .flyer-header {
    top: 1.75% !important;
    left: 50% !important;
    width: 72% !important;
    max-width: 72% !important;
    min-height: 9.6% !important;
    transform: translateX(-50%) !important;
    justify-content: center !important;
}

.flyer-canvas.plantilla-impacto .flyer-local-logo {
    width: 100% !important;
    min-height: 9cqw !important;
    margin: 0 auto !important;
    padding: 0 !important;
    justify-content: center !important;
    text-align: center !important;
}

.flyer-canvas.plantilla-impacto .flyer-local-logo img {
    display: block !important;
    width: auto !important;
    max-width: 55cqw !important;
    max-height: 11.8cqw !important;
    margin: 0 auto !important;
    object-position: center center !important;
}

.flyer-canvas.plantilla-impacto .flyer-offer {
    top: 11.25% !important;
    left: 5.5% !important;
    width: 89% !important;
}

/* PROMO / COMBO: blanco y claramente separado. */
.flyer-canvas.plantilla-impacto .flyer-eyebrow {
    color: #FFFFFF !important;
    font-size: 5.65cqw !important;
    line-height: 0.96 !important;
    letter-spacing: 0.025em !important;
    margin-bottom: 0.65cqw !important;
}

/* Nombre corto del combo: blanco, secundario respecto de los artículos. */
.flyer-canvas.plantilla-impacto .flyer-title {
    max-width: 92% !important;
    color: #FFFFFF !important;
    font-size: 5.45cqw !important;
    line-height: 0.96 !important;
    letter-spacing: -0.008em !important;
}

/* Artículos de la promoción: dorados, grandes y separados por el +. */
.flyer-canvas.plantilla-impacto .flyer-description {
    max-width: 91% !important;
    margin: 1.05cqw auto 0 !important;
    color: #D9A64A !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 5.35cqw !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 0.91 !important;
    letter-spacing: -0.012em !important;
    white-space: pre-line !important;
    text-shadow: 0 0.42cqw 0.85cqw rgba(0, 0, 0, 0.82) !important;
}

.flyer-canvas.plantilla-impacto .flyer-offer::after {
    width: 57% !important;
    margin-top: 1.25cqw !important;
}

/* La imagen empieza debajo del bloque textual para no competir con él. */
.flyer-canvas.plantilla-impacto .flyer-gallery {
    top: 37% !important;
    left: 4% !important;
    width: 92% !important;
    height: 56.5% !important;
}

/* Bebida vertical: protagonista, pero sin ocupar casi todo el cartel. */
.flyer-canvas.plantilla-impacto.estado-producto-2 .flyer-gallery-item:first-child[data-ratio="vertical"],
.flyer-canvas.plantilla-impacto[data-visual-state="producto-2"] .flyer-gallery-item:first-child[data-ratio="vertical"] {
    top: 3% !important;
    left: 2% !important;
    width: 47% !important;
    height: 84% !important;
    z-index: 2 !important;
    transform: rotate(-0.6deg) !important;
}

/* Snack horizontal: más grande y más cerca de la bebida. */
.flyer-canvas.plantilla-impacto.estado-producto-2 .flyer-gallery-item:first-child[data-ratio="vertical"] + .flyer-gallery-item[data-ratio="horizontal"],
.flyer-canvas.plantilla-impacto[data-visual-state="producto-2"] .flyer-gallery-item:first-child[data-ratio="vertical"] + .flyer-gallery-item[data-ratio="horizontal"] {
    right: -1% !important;
    bottom: 16% !important;
    width: 62% !important;
    height: 51% !important;
    z-index: 3 !important;
    transform: rotate(0.8deg) !important;
}

/* Respaldo cuando la carga llegue en el orden inverso. */
.flyer-canvas.plantilla-impacto.estado-producto-2 .flyer-gallery-item:first-child[data-ratio="horizontal"],
.flyer-canvas.plantilla-impacto[data-visual-state="producto-2"] .flyer-gallery-item:first-child[data-ratio="horizontal"] {
    top: 18% !important;
    left: -1% !important;
    width: 61% !important;
    height: 50% !important;
    z-index: 3 !important;
}

.flyer-canvas.plantilla-impacto.estado-producto-2 .flyer-gallery-item:first-child[data-ratio="horizontal"] + .flyer-gallery-item[data-ratio="vertical"],
.flyer-canvas.plantilla-impacto[data-visual-state="producto-2"] .flyer-gallery-item:first-child[data-ratio="horizontal"] + .flyer-gallery-item[data-ratio="vertical"] {
    right: 1% !important;
    bottom: 3% !important;
    width: 48% !important;
    height: 84% !important;
    z-index: 2 !important;
}

.flyer-canvas.plantilla-impacto.titulo-largo .flyer-title {
    font-size: 4.95cqw !important;
}

.flyer-canvas.plantilla-impacto.titulo-muy-largo .flyer-title {
    font-size: 4.45cqw !important;
}

.flyer-canvas.plantilla-impacto.descripcion-larga .flyer-description {
    font-size: 4.65cqw !important;
}


/* =========================================================
   V8 · MARCO FINO + IMPRESIÓN HABILITADA
   ========================================================= */
.flyer-canvas.plantilla-impacto .flyer-ornamental-frame {
    inset: 0.4cqw !important;
    width: calc(100% - 0.8cqw) !important;
    height: calc(100% - 0.8cqw) !important;
    opacity: 1 !important;
    filter: none !important;
}

.flyer-canvas.plantilla-impacto .flyer-ornamental-frame .ornament-main {
    stroke: #C99A46 !important;
    stroke-width: 2.35 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    fill: none !important;
}

.flyer-canvas.plantilla-impacto .flyer-ornamental-frame .ornament-thin {
    stroke-width: 1.18 !important;
    opacity: 0.82 !important;
}

.flyer-canvas.plantilla-impacto .flyer-ornamental-frame .ornament-fill {
    fill: #C99A46 !important;
    stroke: none !important;
}

/* El marco no compite con el precio ni con el footer. */
.flyer-canvas.plantilla-impacto .flyer-price {
    right: 4.8% !important;
    bottom: 4.1% !important;
}

.flyer-canvas.plantilla-impacto .flyer-price-value {
    min-width: 38cqw !important;
    padding: 1.75cqw 2.85cqw 1.35cqw !important;
    color: #FFFFFF !important;
    border-width: 0.22cqw !important;
    font-size: 9.15cqw !important;
}

/* Mejor equilibrio visual: bebida más baja y snack más presente. */
.flyer-canvas.plantilla-impacto.estado-producto-2 .flyer-gallery-item:first-child[data-ratio="vertical"],
.flyer-canvas.plantilla-impacto[data-visual-state="producto-2"] .flyer-gallery-item:first-child[data-ratio="vertical"] {
    top: 6% !important;
    left: 5% !important;
    width: 43% !important;
    height: 77% !important;
}

.flyer-canvas.plantilla-impacto.estado-producto-2 .flyer-gallery-item:first-child[data-ratio="vertical"] + .flyer-gallery-item[data-ratio="horizontal"],
.flyer-canvas.plantilla-impacto[data-visual-state="producto-2"] .flyer-gallery-item:first-child[data-ratio="vertical"] + .flyer-gallery-item[data-ratio="horizontal"] {
    right: 0 !important;
    bottom: 17% !important;
    width: 64% !important;
    height: 53% !important;
}

/* El aviso de calidad ya no se presenta como bloqueo. */
.estado-calidad-diseno[data-estado="mejora"] {
    color: #5B3B08 !important;
    background: #FFF7E7 !important;
    border-color: #D8B36A !important;
}

@media print {
    .flyer-canvas.plantilla-impacto .flyer-ornamental-frame,
    .flyer-canvas.plantilla-impacto .flyer-price-value,
    .flyer-canvas.plantilla-impacto .flyer-footer {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }
}