/* CINE Digital Signage - stable portrait design */

html,
body.cine-signage-body{
    margin:0 !important;
    padding:0 !important;
    width:100% !important;
    height:100% !important;
    min-height:100vh !important;
    overflow:hidden !important;
    background:#050505 !important;
}

body.cine-signage-body{
    position:fixed !important;
    inset:0 !important;
    font-family:Montserrat, Arial, sans-serif !important;
    color:#fff !important;
}

body.cine-signage-body *{
    box-sizing:border-box;
}

body.cine-signage-body #wpadminbar,
body.cine-signage-body .site-header,
body.cine-signage-body .site-footer,
body.cine-signage-body .amy-header,
body.cine-signage-body .amy-footer,
body.cine-signage-body .skip-link,
body.cine-signage-body .goog-te-banner-frame,
body.cine-signage-body .goog-te-gadget,
body.cine-signage-body .translatepress-language-switcher,
body.cine-signage-body .trp-language-switcher,
body.cine-signage-body .gtranslate_wrapper,
body.cine-signage-body iframe.goog-te-banner-frame{
    display:none !important;
    visibility:hidden !important;
    width:0 !important;
    height:0 !important;
}

.cine-signage{
    position:fixed;
    inset:0;
    width:100vw;
    height:100vh;
    overflow:hidden;
    background:#050505;
    color:#fff;
}

.cine-signage-slides,
.cine-signage-slide{
    position:absolute;
    inset:0;
}

.cine-signage-slide{
    opacity:0;
    pointer-events:none;
    overflow:hidden;
    transition:opacity 850ms ease;
}

.cine-signage-slide.is-active{
    opacity:1;
    pointer-events:auto;
}

.cine-signage-bg{
    position:absolute;
    inset:-8%;
    background-size:cover;
    background-position:center;
    opacity:.45;
    -webkit-filter:blur(22px);
    filter:blur(22px);
    transform:scale(1.08);
}

.cine-signage-slide.is-active .cine-signage-bg{
    animation:cineSignageBgMove 12s ease-in-out forwards;
}

@keyframes cineSignageBgMove{
    from{transform:scale(1.08) translate3d(0,0,0)}
    to{transform:scale(1.15) translate3d(-1.5%,-1%,0)}
}

.cine-signage-vignette{
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 50% 22%, rgba(255,255,255,.08) 0%, rgba(0,0,0,0) 28%),
        linear-gradient(180deg, rgba(0,0,0,.74) 0%, rgba(0,0,0,.38) 38%, rgba(0,0,0,.93) 100%);
}

.cine-signage-top{
    position:relative;
    z-index:2;
    height:82px;
    padding:12px 28px 8px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.cine-signage-brand{
    display:flex;
    align-items:center;
    min-width:120px;
    font-size:28px;
    font-weight:900;
    letter-spacing:.03em;
}

.cine-signage-logo{
    display:block;
    max-width:160px;
    max-height:58px;
    width:auto;
    height:auto;
}

.cine-signage-today{
    max-width:55%;
    padding:9px 16px;
    border-radius:12px;
    background:rgba(0,0,0,.48);
    border:1px solid rgba(255,255,255,.12);
    text-align:right;
    font-size:18px;
    line-height:1.15;
    font-weight:900;
    color:#ffffff !important;
    text-shadow:0 2px 8px rgba(0,0,0,.85);
    opacity:.96;
}

.cine-signage-card{
    position:relative;
    z-index:2;
    height:calc(100vh - 82px);
    padding:0 24px 30px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:12px;
    margin:0 auto;
}

.cine-signage-poster-frame{
    width:min(88vw, 610px);
    height:min(65vh, 915px);
    min-height:0;
    border-radius:24px;
    overflow:hidden;
    background:rgba(0,0,0,.36);
    border:none !important;
    box-shadow:0 30px 90px rgba(0,0,0,.72);
    margin:0 auto;
}

.cine-signage-poster{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.cine-signage-info{
    width:min(88vw, 610px);
    padding:16px 18px 17px;
    text-align:center;
    border-radius:20px;
    background:rgba(0,0,0,.70);
    border:none !important;
    box-shadow:0 20px 70px rgba(0,0,0,.42);
    margin:0 auto;
}

.cine-signage-cinema{
    display:none !important;
}

.cine-signage-label{
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    margin:0 0 8px;
    color:#b32821 !important;
    text-align:center;
    font-size:22px;
    line-height:1;
    font-weight:950;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.cine-signage-label:before{
    content:none !important;
    display:none !important;
}

.cine-signage-info h1{
    margin:0;
    color:#fff;
    font-size:clamp(34px, 4.8vw, 50px);
    line-height:.96;
    font-weight:950;
    letter-spacing:-.045em;
    text-transform:uppercase;
    text-align:center;
    text-shadow:0 8px 30px rgba(0,0,0,.65);
}

.cine-signage-original,
.cine-signage-meta,
.cine-signage-dots{
    display:none !important;
}

.cine-signage-time{
    position:relative;
    overflow:hidden;
    margin:10px auto 0;
    width:100%;
    max-width:410px;
    padding:10px 16px;
    border-radius:14px;
    background:linear-gradient(180deg, #c73730 0%, #b32821 55%, #8e1d18 100%);
    box-shadow:0 16px 44px rgba(179,40,33,.40);
    text-align:center;
    border:none !important;
}

.cine-signage-time:after{
    content:'';
    position:absolute;
    top:-20%;
    left:-45%;
    width:38%;
    height:140%;
    background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.35), rgba(255,255,255,0));
    transform:skewX(-20deg);
    animation:cineSignageLightSweep 6.5s ease-in-out infinite;
}

@keyframes cineSignageLightSweep{
    0%,55%{left:-45%;opacity:0}
    65%{opacity:.9}
    90%,100%{left:115%;opacity:0}
}

.cine-signage-time span{
    position:relative;
    z-index:1;
    display:block;
    color:#fff;
    font-size:14px;
    line-height:1;
    font-weight:900;
    letter-spacing:.06em;
    text-transform:uppercase;
    opacity:.94;
    text-align:center;
}

.cine-signage-time strong{
    position:relative;
    z-index:1;
    display:block;
    margin-top:4px;
    color:#fff;
    font-size:50px;
    line-height:1;
    font-weight:950;
    letter-spacing:-.04em;
    text-align:center;
}

.cine-signage-time-release strong{
    font-size:36px;
    line-height:1.05;
}

.cine-signage-empty{
    position:fixed;
    inset:0;
    display:grid;
    place-items:center;
    padding:80px;
    text-align:center;
    background:#090909;
    color:#fff;
}

.cine-signage-empty h1{
    max-width:760px;
    font-size:56px;
    line-height:1.05;
}

@media (max-aspect-ratio:10/16){
    .cine-signage-top{
        height:78px;
        padding:10px 22px 7px;
    }

    .cine-signage-logo{
        max-width:150px;
        max-height:54px;
    }

    .cine-signage-today{
        font-size:17px;
        padding:8px 14px;
    }

    .cine-signage-card{
        height:calc(100vh - 78px);
        padding:0 18px 28px;
        gap:10px;
        justify-content:center;
        align-items:center;
    }

    .cine-signage-poster-frame{
        width:min(88vw, 610px);
        height:min(66vh, 915px);
        border-radius:22px;
    }

    .cine-signage-info{
        width:min(88vw, 610px);
        padding:14px 16px 15px;
    }

    .cine-signage-label{
        font-size:22px;
        margin-bottom:7px;
        color:#b32821 !important;
    }

    .cine-signage-info h1{
        font-size:clamp(31px, 5.2vw, 44px);
    }

    .cine-signage-time{
        max-width:390px;
        padding:9px 14px;
    }

    .cine-signage-time strong{
        font-size:48px;
    }

    .cine-signage-time-release strong{
        font-size:34px;
    }
}

@media (max-width:720px){
    .cine-signage-top{
        height:70px;
        padding:9px 18px 6px;
    }

    .cine-signage-logo{
        max-width:125px;
        max-height:48px;
    }

    .cine-signage-today{
        font-size:14px;
        padding:7px 11px;
        color:#ffffff !important;
    }

    .cine-signage-card{
        height:calc(100vh - 70px);
        padding:0 14px 22px;
    }

    .cine-signage-poster-frame,
    .cine-signage-info{
        width:min(90vw, 610px);
    }

    .cine-signage-label{
        font-size:18px;
    }

    .cine-signage-time strong{
        font-size:40px;
    }
}

@media (prefers-reduced-motion:reduce){
    .cine-signage-slide,
    .cine-signage-bg,
    .cine-signage-time:after{
        animation:none !important;
        transition:none !important;
    }
}
