/* ============================================================
   KOTIZA - Espacios publicitarios
   Tipos:
   1 = 728 x 90 px
   2 =  160 x 600 px (solo escritorio, se oculta en móvil)
   3 =  300 x 250 px (solo móvil)
   ============================================================ */

.pub-slot {
    position: relative;
    margin: 1.75rem auto;
    width: 100%;
    max-width: 728px;
    text-align: center;
    z-index: 1;
}

.pub-slot-link {
    display: block;
    line-height: 0;
    border-radius: 12px;
    overflow: hidden;
    background: #ffffff;
}

.pub-slot img {
    display: block;
    max-width: 100%;
    border: 0;
}

/* ---------- Tipo 1: banner horizontal ---------- */
.pub-tipo-1 {
    max-width: 728px;
}

.pub-tipo-1 .pub-slot-link {
    box-shadow: 0 8px 26px rgba(0, 84, 129, 0.10);
}

.pub-tipo-1 img {
    width: 100%;
    height: auto;
    max-height: 90px;
    object-fit: contain;
}

.pub-tipo-1 .pub-iframe-wrap {
    width: 100%;
    aspect-ratio: 728 / 90;
}

/* ---------- Tipo 2: rascacielos laterales ---------- */
.pub-side {
    position: fixed;
    top: 90px;
    width: 160px;
    display: none;
    z-index: 940;
}

.pub-side .pub-slot {
    margin: 0;
    max-width: 160px;
}

.pub-side .pub-slot-link {
    border-radius: 8px;
    box-shadow: 0 8px 26px rgba(0, 84, 129, 0.16);
}

.pub-side img {
    width: 160px;
    height: 600px;
    object-fit: cover;
}

.pub-side .pub-iframe-wrap {
    width: 160px;
    height: 600px;
}

/* ---------- Tipo 3: móvil ---------- */
.pub-tipo-3 {
    max-width: 300px;
}

.pub-tipo-3 .pub-slot-link {
    box-shadow: 0 10px 28px rgba(0, 84, 129, 0.14);
}

.pub-tipo-3 img {
    width: 300px;
    height: 250px;
    object-fit: cover;
}

.pub-tipo-3 .pub-iframe-wrap {
    width: 300px;
    height: 250px;
}

/* ---------- iframes ---------- */
.pub-iframe-wrap {
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    max-width: 100%;
    border-radius: 8px;
    background: #ffffff;
}

.pub-iframe-wrap iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.pub-iframe-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    cursor: pointer;
}

/* ---------- Ajustes por página ---------- */
.cupones-wrapper .pub-slot,
.casas-wrapper .pub-slot {
    max-width: 728px;
}

.blog-section .pub-slot {
    margin: 0.35rem auto;
}

.art-wrapper > .pub-slot {
    margin: 0 auto 1.3rem;
}

@media (max-width: 767.98px) {
    .pub-slot {
        margin: 1.2rem auto;
    }

    .pub-tipo-1 img {
        width: 100%;
        height: auto;
        max-height: none;
    }

    .pub-tipo-1 .pub-iframe-wrap {
        width: 100%;
        aspect-ratio: 728 / 90;
    }

    .pub-side {
        display: none !important;
    }
}
