.sociales-flex {
    margin-top: 18rem !important;
}

.hero-muertos {
    --hm-fondo: #2A1070;
    --hm-cempasuchil: #FFB703;
    --hm-texto-oscuro: #2A0766;
    --hm-crema: #FFF4DC;
    --hm-azul-cielo: #0A7DB8;

    background: var(--hm-fondo);
    color: #fff;
    overflow: hidden;
}

.hm-stage {
    --u: 1cqw;
    position: relative;
    /*max-width: 1440px;*/
    margin: 0 auto;
    aspect-ratio: 1256 / 521;
    container-type: inline-size;
}

.hm-scene,
.hm-botones {
    display: contents;
}

/* guirnaldas de las esquinas */
.hm-garland {
    position: absolute;
    top: 0;
    z-index: 9;
    width: 20%;
    aspect-ratio: 952 / 694;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    pointer-events: none;
}

.hm-garland--l {
    top: -40px;
    left: -30px;
    background-image: url("/build/img/dM/fl1.webp");
}

.hm-garland--r {
    top: -32px;
    right: -30px;
    /*width: 15.4%;*/
    aspect-ratio: 977 / 704;
    background-image: url("/build/img/dM/fl2.webp");
}

.hm-logo {
    position: absolute;
    margin: 0;
    z-index: 4;
    left: 25.6%;
    top: 31.9%;
    width: 31%;
    transform: translate(-50%, -50%);
}

.hm-logo img {
    display: block;
    width: 100%;
    height: auto;
}

.hm-divider {
    position: absolute;
    z-index: 4;
    left: 24.7%;
    top: 59.5%;
    width: 27.2%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.hm-divider img:nth-child(odd) {
    width: 11.8%;
    height: auto;
}

.hm-divider img:nth-child(even) {
    width: 69.6%;
    height: auto;
}

/* botones */
/* botones */
.hm-btn-wrap {
    position: absolute;
    z-index: 4;
    left: var(--x);
    top: var(--y);
    width: 16.5%;
    height: 9.4%;
    transform: translate(-50%, -50%) rotate(var(--r, 0deg));
    transition: transform .15s ease;
}

.hm-btn-wrap:hover {
    transform: translate(-50%, -53%) rotate(var(--r, 0deg));
}

.hm-btn-wrap:active {
    transform: translate(-50%, -48%) rotate(var(--r, 0deg));
}

.hm-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 0 calc(var(--u) * .8);
    border-radius: calc(var(--u) * 1.3);
    background: var(--hm-cempasuchil);
    color: var(--hm-texto-oscuro);
    font-size: 1.75rem;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 calc(var(--u) * .35) 0 rgba(0, 0, 0, .4);
    transition: box-shadow .15s ease;
    border: 3px solid #fff;
}

.hm-btn-wrap:hover .hm-btn {
    box-shadow: 0 calc(var(--u) * .5) 0 rgba(0, 0, 0, .4), 0 0 calc(var(--u) * 1.8) rgba(255, 183, 3, .55);
    color: var(--hm-texto-oscuro) !important;
}

.hm-btn-wrap:active .hm-btn {
    box-shadow: 0 2px 0 rgba(0, 0, 0, .4);
    color: var(--hm-texto-oscuro) !important;
}

/* pestaña de WhatsApp que entra hacia adentro */
.hm-wa-mask {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: calc(var(--u) * 3.4);
    overflow: hidden;
    z-index: 2;
    border-radius: 0 calc(var(--u) * 1.3) calc(var(--u) * 1.3) 0;
}

.hm-wa-tab {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: #25D366;
    text-decoration: none;
    transform: translateX(100%);
    transition: transform .3s cubic-bezier(.4, 0, .2, 1), background .3s;
}

.hm-btn-wrap:hover .hm-wa-tab,
.hm-btn-wrap:focus-within .hm-wa-tab {
    transform: translateX(0);
}

.hm-wa-tab:hover {
    background: #1aad57;
}

.hm-wa-tab svg {
    width: calc(var(--u) * 1.5);
    height: calc(var(--u) * 1.5);
}

.hm-btn:focus-visible,
.hm-aviso__btn:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 3px;
}

.hm-aviso {
    --aw: calc(var(--u) * 17);
    --sr: calc(var(--aw) / 24);
    position: absolute;
    z-index: 9;
    box-sizing: border-box;
    left: 58.8%;
    top: 25%;
    width: var(--aw);
    transform: translate(-50%, -50%) rotate(-6deg);
    padding: calc(var(--u) * 1.2) calc(var(--u) * 1.4) calc(var(--u) * 1.5);
    background: var(--hm-crema);
    color: var(--hm-texto-oscuro);
    border-radius: calc(var(--u) * 1.1) calc(var(--u) * 1.1) 0 0;
    filter: drop-shadow(0 calc(var(--u) * .7) 0 rgba(0, 0, 0, .3));
}

.hm-aviso::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% - 1px);
    height: calc(var(--sr) + 1px);
    background: radial-gradient(circle at 50% 0, var(--hm-crema) calc(var(--sr) + .5px), transparent calc(var(--sr) + 1px)) 0 0 / calc(var(--aw) / 12) 100% repeat-x;
}

.hm-aviso__chip {
    display: inline-block;
    padding: calc(var(--u) * .25) calc(var(--u) * .8);
    border-radius: 999px;
    background: var(--hm-azul-cielo);
    color: #fff;
    font-size: 1.2rem;
    font-weight: 700;
    text-transform: uppercase;
    width: 100%;
    text-align: center;
}

.hm-aviso__titulo {
    margin: calc(var(--u) * .7) 0 calc(var(--u) * .3);
    font-size: 1.8rem;
    font-weight: 600;
    text-align: center;
}

.hm-aviso__texto {
    margin: 0 0 calc(var(--u) * .9);
    font-size: 1.4rem;
    font-weight: 500;
    text-align: center;
    color: var(--azulFuerte);
}

.hm-aviso__btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(var(--u) * .01);
    padding: calc(var(--u) * .7) calc(var(--u) * .8);
    border-radius: calc(var(--u) * .8);
    background: var(--hm-fondo);
    color: var(--hm-crema);
    text-decoration: none;
    font-size: 2rem;
    font-weight: 700;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.hm-aviso__btn small {
    font-size: 1.4rem;
    font-weight: 500;
    color: #FFD97A;
}

@media (hover: hover) {
    .hm-aviso__btn:hover {
        transform: rotate(0deg) translateY(-3px) !important;
        box-shadow: 0 8px 0 rgba(0, 36, 82, 0.28), 0 14px 16px rgba(0, 36, 82, 0.3) !important;
        color: #f7f1e4 !important;
    }
}

.hm-frame {
    position: absolute;
    margin: 0;
    transform: translate(-50%, -50%) rotate(var(--r));
    filter: drop-shadow(0 calc(var(--u) * .7) 0 rgba(0, 0, 0, .28));
}

.hm-frame__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.hm-frame--lobo {
    --r: 7deg;
    left: 81.8%;
    top: 44.9%;
    width: 21.5%;
    aspect-ratio: 380 / 430;
    z-index: 6;
}

.hm-frame--calavera {
    --r: -7deg;
    left: 62.3%;
    top: 76%;
    width: 20.8%;
    aspect-ratio: 270 / 210;
    z-index: 7;
}

.hm-frame__clip {
    position: absolute;
    inset: 0;
    clip-path: inset(-120% -120% 6% -120%);
}

.hm-lobo {
    position: absolute;
    left: -11%;
    top: -9%;
    width: 110%;
    height: auto;
}

.hm-calavera {
    position: absolute;
    left: 19%;
    top: 17%;
    width: 68%;
    height: auto;
}

.hm-deco {
    position: absolute;
    z-index: 5;
    height: auto;
    left: var(--x);
    top: var(--y);
    width: var(--w);
    transform: translate(-50%, -50%) rotate(var(--r, 0deg));
}

.hm-deco--front {
    z-index: 8;
}

.hm-arana {
    position: absolute;
    top: 0;
    z-index: 8;
    left: var(--x);
    width: calc(var(--u) * 1.7);
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.hm-arana i {
    display: block;
    width: 2px;
    background: rgba(255, 255, 255, .65);
    height: var(--h);
    animation: hm-bajar 1.8s cubic-bezier(.2, .7, .2, 1) both;
}

.hm-arana img {
    display: block;
    width: 100%;
    height: auto;
}

@keyframes hm-bajar {
    from {
        height: 6px;
    }

    to {
        height: var(--h);
    }
}

@media (prefers-reduced-motion: reduce) {
    .hm-arana i {
        animation: none;
    }
}

.fmovi {
    display: none;
}

.hmovi {
    display: none;
}

@media (max-width: 860px) {
    .fmovi {
        display: block !important;
        width: 50px !important;
    }

    .hmovi {
        display: block !important;
        width: 90px !important;
    }

    .hm-stage {
        --u: 13px;
        aspect-ratio: auto;
        container-type: normal;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 22px;
        padding: 140px 16px 56px;
    }

    .hm-garland,
    .hm-divider,
    .hm-arana {
        display: none;
    }

    .hm-logo {
        order: 1;
        position: static;
        transform: none;
        width: 100%;
    }

    .hm-botones {
        order: 3;
        display: grid;
        /*grid-template-columns: repeat(2, minmax(0, 1fr));*/
        gap: 12px;
        width: 85%;
        max-width: 460px;
    }

    .hm-btn-wrap {
        position: relative;
        left: auto;
        top: auto;
        transform: none;
        width: auto;
        height: auto;
    }

    .hm-btn-wrap:hover,
    .hm-btn-wrap:active {
        transform: none;
    }

    .hm-btn {
        min-height: 56px;
        padding: 10px 44px 10px 12px;
        font-size: 16px;
    }

    .hm-wa-mask {
        width: 40px;
    }

    .hm-wa-tab {
        transform: none;
    }

    .hm-wa-tab svg {
        width: 20px;
        height: 20px;
    }

    .hm-aviso {
        order: 2;
        --aw: min(340px, calc(100vw - 32px));
        position: static;
        transform: rotate(-1.5deg);
        width: var(--aw);
        padding: 16px 18px 20px;
        margin-bottom: 20px;
    }

    .hm-aviso__chip {
        font-size: 13px;
        padding: 4px 12px;
    }

    .hm-aviso__titulo {
        font-size: 26px;
        margin: 10px 0 4px;
    }

    .hm-aviso__texto {
        font-size: 15px;
        margin-bottom: 14px;
    }

    .hm-aviso__btn {
        font-size: 18px;
        padding: 10px 14px;
        border-radius: 12px;
    }

    .hm-aviso__btn small {
        font-size: 14px;
    }

    .hm-scene {
        order: 4;
        display: block;
        position: relative;
        width: 100%;
        max-width: 520px;
        aspect-ratio: 1 / .88;
        margin-top: 4px;
    }

    .hm-frame {
        filter: drop-shadow(0 8px 0 rgba(0, 0, 0, .28));
    }

    .hm-frame--lobo {
        left: 67%;
        top: 44%;
        width: 56%;
    }

    .hm-frame--calavera {
        left: 29%;
        top: 74%;
        width: 50%;
    }

    .hm-deco {
        display: none;
    }

}

@media (min-width: 1440px) {
    .hm-garland--l {
        left: -40px;
    }

    .hm-garland--r {
        right: -40px;
    }

    .sociales-flex {
        margin-top: 35rem !important;
    }
}