/* =========================================================
   GEOFLIX MODERN SKIN
========================================================= */

:root {
    --green: #00d26a;
    --green-dark: #00a956;
    --bg: #080a0b;
    --bg-soft: #101315;
    --card: #121618;
    --text: #ffffff;
    --muted: #8c9498;
    --border: rgba(255,255,255,.08);
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
}

body {
    background: var(--bg);
    color: var(--text);
    font-family: 'Montserrat', Arial, sans-serif;
    overflow-x: hidden;
}

a {
    color: inherit;
    text-decoration: none;
}

button {
    font-family: inherit;
}

img {
    max-width: 100%;
    display: block;
}


/* =========================================================
   HEADER
========================================================= */

.site-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    background: linear-gradient(
        to bottom,
        rgba(0,0,0,.85),
        rgba(0,0,0,0)
    );
}

.header-inner {
    width: 100%;
    max-width: 1800px;
    height: 82px;
    margin: auto;
    padding: 0 45px;

    display: flex;
    align-items: center;
    justify-content: space-between;
}

.logo {
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -1px;
    white-space: nowrap;
}

.logo span,
.footer-logo span {
    color: #fff;
}

.logo strong,
.footer-logo strong {
    color: var(--green);
}

.main-nav {
    display: flex;
    align-items: center;
    gap: 32px;
}

.main-nav a {
    color: rgba(255,255,255,.78);
    font-size: 14px;
    font-weight: 600;
    transition: .25s;
}

.main-nav a:hover {
    color: var(--green);
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 15px;
}

.favorite-btn {
    width: 42px;
    height: 42px;

    border: 1px solid rgba(255,255,255,.15);
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;
    transition: .25s;
}

.favorite-btn:hover {
    color: var(--green);
    border-color: var(--green);
    transform: translateY(-2px);
}

.favorite-btn span {
    font-size: 18px;
}

.mobile-menu-btn {
    display: none;
}


/* =========================================================
   MOBILE MENU
========================================================= */

.mobile-menu {
    display: none;
}


/* =========================================================
   HERO
========================================================= */

.hero {
    position: relative;
    width: 100%;
    height: min(760px, 88vh);
    min-height: 560px;
    overflow: hidden;
}

.hero-background {
    position: absolute;
    inset: 0;
}

.hero-background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-gradient {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.92) 0%,
            rgba(0,0,0,.72) 28%,
            rgba(0,0,0,.20) 70%,
            rgba(0,0,0,.45) 100%
        ),
        linear-gradient(
            0deg,
            var(--bg) 0%,
            transparent 30%
        );
}

.hero-content {
    position: relative;
    z-index: 2;

    max-width: 1800px;
    height: 100%;
    margin: auto;
    padding: 190px 80px 80px;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.hero-label {
    display: flex;
    align-items: center;
    gap: 9px;

    color: var(--green);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;

    margin-bottom: 20px;
}

.hero-dot {
    width: 7px;
    height: 7px;
    background: var(--green);
    border-radius: 50%;
    box-shadow: 0 0 12px var(--green);
}

.hero h1 {
    max-width: 700px;
    font-size: clamp(38px, 5vw, 72px);
    line-height: 1.05;
    font-weight: 800;
    letter-spacing: -2px;
    margin-bottom: 22px;
}

.hero p {
    max-width: 600px;
    color: rgba(255,255,255,.72);
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 32px;
}

.hero-buttons {
    display: flex;
    gap: 12px;
}

.hero-watch,
.hero-more {
    min-height: 50px;
    padding: 0 25px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 7px;

    font-size: 14px;
    font-weight: 700;

    transition: .25s;
}

.hero-watch {
    background: var(--green);
    color: #061009;
}

.hero-watch:hover {
    background: #fff;
    transform: translateY(-2px);
}

.hero-watch span {
    margin-right: 10px;
}

.hero-more {
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.2);
    backdrop-filter: blur(10px);
}

.hero-more:hover {
    background: rgba(255,255,255,.18);
}

.hero-arrows {
    position: absolute;
    right: 55px;
    bottom: 85px;

    display: flex;
    gap: 8px;
    z-index: 5;
}

.hero-arrow {
    width: 48px;
    height: 48px;

    border: 1px solid rgba(255,255,255,.2);
    background: rgba(0,0,0,.35);
    color: white;

    border-radius: 6px;

    font-size: 30px;
    cursor: pointer;

    transition: .25s;
}

.hero-arrow:hover {
    background: var(--green);
    color: #000;
    border-color: var(--green);
}

.hero-dots {
    position: absolute;
    left: 80px;
    bottom: 55px;
    z-index: 5;

    display: flex;
    gap: 7px;
}

.hero-dots span {
    width: 28px;
    height: 3px;

    background: rgba(255,255,255,.3);
    border-radius: 10px;
}

.hero-dots span.active {
    width: 55px;
    background: var(--green);
}


/* =========================================================
   MAIN
========================================================= */

.main-content {
    width: 100%;
    max-width: 1800px;
    margin: auto;
    padding: 20px 55px 80px;
}

.content-section {
    margin-top: 70px;
}

.section-heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 24px;
}

.section-kicker {
    display: block;
    color: var(--green);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 5px;
}

.section-heading h2 {
    font-size: 27px;
    font-weight: 700;
    letter-spacing: -.5px;
}

.section-actions {
    display: flex;
    align-items: center;
    gap: 7px;
}

.view-all {
    color: var(--muted);
    font-size: 12px;
    font-weight: 600;
    margin-right: 12px;
    transition: .2s;
}

.view-all:hover {
    color: var(--green);
}

.slider-btn {
    width: 38px;
    height: 38px;

    border: 1px solid var(--border);
    border-radius: 5px;

    background: #111516;
    color: #fff;

    font-size: 23px;
    cursor: pointer;

    transition: .2s;
}

.slider-btn:hover {
    background: var(--green);
    color: #000;
    border-color: var(--green);
}

.random-refresh {
    height: 38px;
    padding: 0 13px;

    background: #111516;
    color: #aaa;

    border: 1px solid var(--border);
    border-radius: 5px;

    cursor: pointer;
    transition: .2s;
}

.random-refresh:hover {
    color: #000;
    background: var(--green);
}


/* =========================================================
   POSTER SLIDER
========================================================= */

.poster-slider {
    display: flex;
    gap: 17px;

    overflow-x: auto;
    scroll-behavior: smooth;

    scrollbar-width: none;
    padding-bottom: 8px;
}

.poster-slider::-webkit-scrollbar {
    display: none;
}

.movie-card {
    flex: 0 0 calc((100% - 85px) / 6);
    min-width: 0;
}

.movie-card a {
    display: block;
}

.poster-image {
    position: relative;
    aspect-ratio: 2 / 3;
    overflow: hidden;
    border-radius: 8px;
    background: #15191a;
}

.poster-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease;
}

.movie-card:hover .poster-image img {
    transform: scale(1.07);
}

.card-overlay {
    position: absolute;
    inset: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    background: rgba(0,0,0,.58);

    opacity: 0;
    transition: .3s;
}

.movie-card:hover .card-overlay {
    opacity: 1;
}

.card-play {
    width: 52px;
    height: 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--green);
    color: #000;

    border-radius: 50%;
    font-size: 18px;

    padding-left: 3px;
}

.movie-card h3 {
    font-size: 14px;
    font-weight: 600;
    margin-top: 12px;

    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.card-meta {
    display: flex;
    gap: 9px;
    margin-top: 7px;

    color: #737b7f;
    font-size: 10px;
}


/* =========================================================
   LANDSCAPE
========================================================= */

.landscape-slider {
    display: flex;
    gap: 18px;

    overflow-x: auto;
    scroll-behavior: smooth;

    scrollbar-width: none;
}

.landscape-slider::-webkit-scrollbar {
    display: none;
}

.series-card {
    flex: 0 0 calc((100% - 54px) / 4);
}

.landscape-image {
    position: relative;

    aspect-ratio: 16 / 9;

    overflow: hidden;
    border-radius: 8px;

    background: #15191a;
}

.landscape-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;

    transition: transform .45s ease;
}

.series-card:hover .landscape-image img {
    transform: scale(1.05);
}

.landscape-overlay {
    position: absolute;
    inset: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    background: rgba(0,0,0,.45);

    opacity: 0;
    transition: .3s;
}

.series-card:hover .landscape-overlay {
    opacity: 1;
}

.landscape-play {
    width: 54px;
    height: 54px;

    border-radius: 50%;
    background: var(--green);
    color: #000;

    display: flex;
    align-items: center;
    justify-content: center;

    padding-left: 3px;
}

.landscape-info {
    padding-top: 12px;
}

.landscape-info h3 {
    font-size: 15px;
    font-weight: 600;
}

.landscape-info span {
    display: block;

    margin-top: 6px;

    color: #747d80;
    font-size: 10px;
}


/* =========================================================
   EMPTY HISTORY
========================================================= */

.empty-history {
    width: 100%;
    min-height: 180px;

    border: 1px dashed rgba(255,255,255,.12);
    border-radius: 10px;

    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;

    text-align: center;
}

.empty-history-icon {
    font-size: 30px;
    color: var(--green);
    margin-bottom: 10px;
}

.empty-history h3 {
    font-size: 15px;
}

.empty-history p {
    color: var(--muted);
    font-size: 11px;
    margin-top: 6px;
}


/* =========================================================
   COLLECTIONS
========================================================= */

.collections-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.collection-card {
    position: relative;

    height: 220px;

    overflow: hidden;
    border-radius: 10px;

    background: #151719;

    isolation: isolate;
}

.collection-bg {
    position: absolute;
    inset: 0;
    z-index: -1;

    background-position: center;
    background-size: cover;

    transition: transform .5s;
}

.collection-card:hover .collection-bg {
    transform: scale(1.08);
}

.collection-card.netflix .collection-bg {
    background:
        linear-gradient(120deg, rgba(0,0,0,.8), rgba(0,0,0,.25)),
        url("../images/collection-netflix.jpg") center/cover;
}

.collection-card.hbo .collection-bg {
    background:
        linear-gradient(120deg, rgba(0,0,0,.8), rgba(0,0,0,.25)),
        url("../images/collection-hbo.jpg") center/cover;
}

.collection-card.marvel .collection-bg {
    background:
        linear-gradient(120deg, rgba(0,0,0,.8), rgba(0,0,0,.25)),
        url("../images/collection-marvel.jpg") center/cover;
}

.collection-card.horror .collection-bg {
    background:
        linear-gradient(120deg, rgba(0,0,0,.8), rgba(0,0,0,.25)),
        url("../images/collection-horror.jpg") center/cover;
}

.collection-content {
    position: absolute;
    inset: auto 22px 20px;
}

.collection-content span {
    color: var(--green);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2px;
}

.collection-content h3 {
    font-size: 28px;
    margin: 3px 0 8px;
}

.collection-content strong {
    font-size: 10px;
    color: #aaa;
}


/* =========================================================
   ACTORS
========================================================= */

.actors-section {
    margin-top: 90px;
}

.actors-slider {
    display: flex;
    gap: 24px;

    overflow-x: auto;
    scrollbar-width: none;

    padding: 8px 3px 20px;
}

.actors-slider::-webkit-scrollbar {
    display: none;
}

.actor-placeholder {
    flex: 0 0 120px;

    text-align: center;
}

.actor-circle {
    width: 95px;
    height: 95px;

    margin: auto;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background:
        radial-gradient(
            circle,
            #1b2522,
            #0c1110
        );

    border: 1px solid rgba(0,210,106,.25);

    color: var(--green);
    font-size: 25px;

    transition: .3s;
}

.actor-placeholder:hover .actor-circle {
    transform: translateY(-5px);
    border-color: var(--green);
    box-shadow: 0 0 25px rgba(0,210,106,.18);
}

.actor-placeholder span {
    display: block;
    margin-top: 10px;

    color: #b8bdbf;
    font-size: 11px;
}


/* =========================================================
   DLE CONTENT
========================================================= */

.dle-content {
    margin-top: 70px;
}


/* =========================================================
   FOOTER
========================================================= */

.site-footer {
    margin-top: 80px;

    background: #050707;
    border-top: 1px solid rgba(255,255,255,.06);
}

.footer-inner {
    max-width: 1500px;
    margin: auto;
    padding: 55px;

    display: grid;
    grid-template-columns: 2fr repeat(3, 1fr);
    gap: 50px;
}

.footer-logo {
    font-size: 28px;
    font-weight: 800;
}

.footer-brand p {
    max-width: 340px;

    color: #70787b;
    font-size: 12px;
    line-height: 1.8;

    margin-top: 15px;
}

.footer-column {
    display: flex;
    flex-direction: column;
    gap: 11px;
}

.footer-column h4 {
    color: #fff;
    font-size: 12px;
    margin-bottom: 5px;
}

.footer-column a {
    color: #6e7679;
    font-size: 11px;
    transition: .2s;
}

.footer-column a:hover {
    color: var(--green);
}

.footer-bottom {
    max-width: 1500px;
    margin: auto;

    padding: 18px 55px;

    border-top: 1px solid rgba(255,255,255,.05);

    display: flex;
    justify-content: space-between;

    color: #555d60;
    font-size: 10px;
}


/* =========================================================
   BACK TO TOP
========================================================= */

.back-to-top {
    position: fixed;

    right: 25px;
    bottom: 25px;

    width: 43px;
    height: 43px;

    border: 0;
    border-radius: 50%;

    background: var(--green);
    color: #000;

    font-size: 20px;
    font-weight: 700;

    cursor: pointer;

    opacity: 0;
    visibility: hidden;

    transition: .3s;

    z-index: 900;
}

.back-to-top.show {
    opacity: 1;
    visibility: visible;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1200px) {

    .header-inner {
        padding: 0 30px;
    }

    .main-nav {
        gap: 20px;
    }

    .hero-content {
        padding-left: 50px;
        padding-right: 50px;
    }

    .hero-dots {
        left: 50px;
    }

    .main-content {
        padding-left: 30px;
        padding-right: 30px;
    }

    .movie-card {
        flex-basis: calc((100% - 68px) / 5);
    }

    .series-card {
        flex-basis: calc((100% - 36px) / 3);
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 768px) {

    .site-header {
        position: absolute;
    }

    .header-inner {
        height: 68px;
        padding: 0 18px;
    }

    .logo {
        font-size: 24px;
    }

    .main-nav {
        display: none;
    }

    .favorite-btn {
        width: 38px;
        height: 38px;
    }

    .mobile-menu-btn {
        width: 38px;
        height: 38px;

        border: 1px solid rgba(255,255,255,.15);
        border-radius: 50%;

        background: transparent;

        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 4px;

        cursor: pointer;
    }

    .mobile-menu-btn span {
        width: 15px;
        height: 1px;
        background: #fff;
        transition: .25s;
    }

    .mobile-menu {
        position: fixed;
        top: 68px;
        left: 0;
        width: 100%;

        background: rgba(8,10,11,.98);

        padding: 15px 20px;

        display: flex;
        flex-direction: column;
        gap: 0;

        transform: translateY(-120%);
        transition: .3s;

        z-index: 999;
    }

    .mobile-menu.open {
        transform: translateY(0);
    }

    .mobile-menu a {
        padding: 15px 5px;

        border-bottom: 1px solid rgba(255,255,255,.06);

        color: #bbb;
        font-size: 13px;
        font-weight: 600;
    }

    .mobile-menu a:hover {
        color: var(--green);
    }

    .hero {
        height: 570px;
        min-height: 570px;
    }

    .hero-gradient {
        background:
            linear-gradient(
                0deg,
                #080a0b 2%,
                rgba(8,10,11,.75) 30%,
                rgba(0,0,0,.12) 100%
            );
    }

    .hero-content {
        padding: 100px 20px 80px;
        justify-content: flex-end;
    }

    .hero h1 {
        font-size: 36px;
        letter-spacing: -1px;
    }

    .hero p {
        font-size: 12px;
        line-height: 1.7;
        margin-bottom: 20px;
    }

    .hero-buttons {
        width: 100%;
    }

    .hero-watch,
    .hero-more {
        flex: 1;
        min-height: 45px;
        padding: 0 12px;
        font-size: 11px;
    }

    .hero-arrows {
        right: 20px;
        bottom: 35px;
    }

    .hero-arrow {
        width: 38px;
        height: 38px;
        font-size: 23px;
    }

    .hero-dots {
        left: 20px;
        bottom: 52px;
    }

    .main-content {
        padding: 10px 18px 50px;
    }

    .content-section {
        margin-top: 48px;
    }

    .section-heading {
        margin-bottom: 16px;
    }

    .section-heading h2 {
        font-size: 21px;
    }

    .section-kicker {
        font-size: 8px;
    }

    .view-all {
        display: none;
    }

    .slider-btn {
        width: 33px;
        height: 33px;
    }

    .movie-card {
        flex: 0 0 calc((100% - 10px) / 2);
    }

    .poster-slider {
        gap: 10px;
    }

    .movie-card h3 {
        font-size: 12px;
        margin-top: 9px;
    }

    .card-meta {
        font-size: 9px;
    }

    .series-card {
        flex: 0 0 88%;
    }

    .landscape-slider {
        gap: 12px;
    }

    .collections-grid {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .collection-card {
        height: 150px;
    }

    .collection-content {
        inset: auto 13px 13px;
    }

    .collection-content h3 {
        font-size: 20px;
    }

    .footer-inner {
        padding: 40px 20px;

        grid-template-columns: 1fr 1fr;
        gap: 35px 20px;
    }

    .footer-brand {
        grid-column: 1 / -1;
    }

    .footer-bottom {
        padding: 16px 20px;

        flex-direction: column;
        gap: 5px;
    }

    .actors-section {
        margin-top: 60px;
    }

    .actor-placeholder {
        flex-basis: 90px;
    }

    .actor-circle {
        width: 70px;
        height: 70px;
        font-size: 18px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 420px) {

    .hero h1 {
        font-size: 31px;
    }

    .hero {
        height: 540px;
        min-height: 540px;
    }

    .collection-card {
        height: 135px;
    }

    .collection-content h3 {
        font-size: 17px;
    }

}
/* ===== GeoFlix functional cards + hero ===== */
.hero-track,.hero-slide{position:absolute;inset:0}.hero-slide{opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s ease}.hero-slide.active{opacity:1;visibility:visible;z-index:1}.hero-slide .hero-background img{width:100%;height:100%;object-fit:cover}.hero-subtitle-new{font-size:14px;color:rgba(255,255,255,.65);margin:-10px 0 14px}.hero-meta-new{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.hero-meta-new span{padding:5px 8px;border-radius:4px;background:rgba(10,14,15,.62);border:1px solid rgba(255,255,255,.12);font-size:11px;font-weight:700}.hero-meta-new .hero-geo{background:var(--green);color:#041008;border-color:var(--green)}.hero-meta-new .hero-imdb{background:#f5c518;color:#090909;border-color:#f5c518}.hero-dots button{width:28px;height:3px;padding:0;border:0;background:rgba(255,255,255,.3);border-radius:10px;cursor:pointer;transition:.25s}.hero-dots button.active{width:55px;background:var(--green)}
.poster-image>a.poster-link,.landscape-image>a.landscape-link{display:block;width:100%;height:100%}.poster-image>a.poster-link>img,.landscape-image>a.landscape-link>img{width:100%;height:100%;object-fit:cover}.geo-fav-btn{position:absolute;z-index:6;top:9px;left:9px;width:30px;height:30px;display:flex!important;align-items:center;justify-content:center;border-radius:50%;background:rgba(5,8,9,.72);border:1px solid rgba(255,255,255,.18);color:#fff!important;backdrop-filter:blur(7px);transition:.2s}.geo-fav-btn:hover,.geo-fav-btn.active{background:var(--green);border-color:var(--green);color:#061009!important}.geo-card-badge{position:absolute;z-index:5;top:9px;right:9px;padding:4px 7px;border-radius:4px;background:var(--green);color:#041008;font-size:9px;font-weight:800;text-transform:uppercase}.poster-meta-top{position:absolute;z-index:5;left:8px;right:8px;bottom:8px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.poster-meta-top span{padding:4px 6px;border-radius:3px;font-size:9px;font-weight:800;box-shadow:0 2px 10px rgba(0,0,0,.25)}.poster-imdb{background:#f5c518;color:#090909}.poster-year{background:rgba(4,8,9,.82);color:#fff}.poster-series-badge{position:absolute;z-index:5;left:50%;bottom:8px;transform:translateX(-50%);white-space:nowrap;padding:5px 8px;border-radius:4px;background:rgba(3,12,8,.88);border:1px solid rgba(0,200,83,.45);color:#fff;font-size:9px;font-weight:700}.movie-card:has(.poster-series-badge) .poster-meta-top{bottom:39px}.card-title-link{display:block}.card-eng-title{margin-top:3px;color:#5f686b;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.landscape-image .poster-meta-top{bottom:8px}
@media(max-width:700px){.geo-fav-btn{width:27px;height:27px;top:7px;left:7px}.geo-card-badge{top:7px;right:7px}.hero-meta-new{gap:5px}.hero-meta-new span{font-size:9px}}


/* ===== GeoFlix v3: sticky header, search, badges fixes ===== */
.site-header{position:fixed;transition:background .25s ease,box-shadow .25s ease,backdrop-filter .25s ease}
.site-header.is-scrolled{background:linear-gradient(to bottom,rgba(0,0,0,.85),rgba(0,0,0,0));box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.header-search{position:relative;display:flex;align-items:center;justify-content:flex-end;height:42px}
.header-search-input{width:0;height:38px;opacity:0;pointer-events:none;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(7,11,13,.9);color:#fff;outline:none;padding:0;transition:width .25s ease,opacity .2s ease,padding .25s ease,border-color .2s ease}
.header-search.open .header-search-input{width:220px;opacity:1;pointer-events:auto;padding:0 42px 0 15px;border-color:rgba(0,200,83,.55)}
.header-search-input::placeholder{color:rgba(255,255,255,.42)}
.header-search-btn{width:42px;height:42px;border:1px solid rgba(255,255,255,.15);border-radius:50%;background:rgba(5,8,9,.38);color:#fff;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s}
.header-search.open .header-search-btn{position:absolute;right:0;border-color:transparent;background:transparent;color:var(--green)}
.header-search-btn:hover{color:var(--green);border-color:var(--green)}
.geo-fav-btn{font-family:Arial,sans-serif!important;font-size:17px!important;line-height:1!important;opacity:1!important;visibility:visible!important}
.geo-fav-btn .geo-heart{display:block!important;color:inherit!important;font-size:17px!important;line-height:1!important}
.landscape-overlay{display:none!important}
.landscape-image,.landscape-image>a.landscape-link,.landscape-image img{border-radius:8px!important}
@media(max-width:700px){.header-search.open{position:absolute;left:15px;right:112px;z-index:5}.header-search.open .header-search-input{width:100%}.header-search-btn{width:38px;height:38px}.site-header.is-scrolled{background:linear-gradient(to bottom,rgba(0,0,0,.85),rgba(0,0,0,0))}}

/* ===== GeoFlix v4: DLE live search + landscape favorite fix ===== */
.landscape-image>.geo-fav-btn{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important}
.landscape-image>.geo-fav-btn .geo-heart{font-size:15px!important}
.header-search-suggestions{display:none!important;position:absolute!important;top:46px!important;right:0!important;width:340px!important;max-height:440px!important;overflow-y:auto!important;padding:8px!important;background:rgba(7,10,12,.97)!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:12px!important;box-shadow:0 18px 50px rgba(0,0,0,.55)!important;z-index:1200!important;grid-template-columns:1fr!important;gap:0!important}
.header-search.open .header-search-suggestions:not(:empty){display:block!important}
.header-search-suggestions .movie-item,.header-search-suggestions .item{width:100%!important;min-width:0!important;margin:0!important}
.header-search-suggestions img{max-width:58px!important;max-height:82px!important;object-fit:cover!important}
.header-search-suggestions .seperator{display:block!important;padding:9px 10px!important;text-align:center!important}
.header-search-suggestions .notfound{display:block!important;padding:16px!important;color:rgba(255,255,255,.7)!important}
@media(max-width:700px){.header-search-suggestions{position:fixed!important;top:66px!important;left:12px!important;right:12px!important;width:auto!important;max-height:55vh!important}}

/* =========================================================
   GEOFLIX 2026 — COMPLETE RESPONSIVE PASS
========================================================= */
:root{--shell:1800px;--radius:16px;--panel:#0d1114;--panel2:#11171b}
.site-header{background:linear-gradient(to bottom,rgba(3,7,9,.88),rgba(3,7,9,.38) 56%,transparent);}
.site-header.is-scrolled{background:linear-gradient(to bottom,rgba(3,7,9,.88),rgba(3,7,9,.38) 56%,transparent)!important}
.nav-dropdown{position:relative;padding:28px 0}.nav-parent{display:flex!important;align-items:center;gap:5px}.nav-caret{font-size:12px;color:var(--green)}
.nav-dropdown-menu{position:absolute;top:70px;left:50%;transform:translate(-50%,10px);opacity:0;visibility:hidden;pointer-events:none;background:rgba(9,13,15,.98);border:1px solid var(--border);border-radius:14px;padding:12px;box-shadow:0 22px 60px rgba(0,0,0,.5);transition:.2s;z-index:1100}
.nav-dropdown:hover .nav-dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.genre-menu{width:620px;display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.collection-menu{width:190px}.nav-dropdown-menu a{display:block;padding:9px 10px;border-radius:8px;font-size:12px!important;white-space:nowrap}.nav-dropdown-menu a:hover{background:rgba(0,210,106,.1)}
.header-search-close{display:none;position:absolute;right:40px;width:34px;height:34px;border:0;background:transparent;color:#fff;font-size:25px;cursor:pointer;z-index:3}.header-search.open .header-search-close{display:block}.header-search.open .header-search-input{padding-right:72px}.header-search.open .header-search-btn{right:3px}.header-search.open .search-icon{color:var(--green)}
.hero{height:min(650px,76vh);min-height:500px}.hero-content{padding-top:145px;padding-bottom:70px}.hero-arrows{inset:0;pointer-events:none;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.hero-arrow{pointer-events:auto;width:50px;height:50px;border-radius:50%;font-size:0;background:rgba(5,10,12,.48);backdrop-filter:blur(8px);position:relative}.hero-arrow:before{content:"";width:11px;height:11px;border-top:2px solid #fff;border-right:2px solid #fff;position:absolute;top:50%;left:50%}.hero-prev:before{transform:translate(-35%,-50%) rotate(-135deg)}.hero-next:before{transform:translate(-65%,-50%) rotate(45deg)}.hero-arrow:hover:before{border-color:#fff}.hero-arrow:hover{background:var(--green);transform:scale(1.06)}
.slider-btn{border-radius:50%!important;position:relative;font-size:0!important}.slider-btn:before{content:"";width:7px;height:7px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;position:absolute;top:50%;left:50%}.slider-btn[data-direction="prev"]:before{transform:translate(-35%,-50%) rotate(-135deg)}.slider-btn[data-direction="next"]:before{transform:translate(-65%,-50%) rotate(45deg)}
.poster-slider,.landscape-slider{cursor:grab;user-select:none;scrollbar-width:none}.poster-slider.dragging,.landscape-slider.dragging{cursor:grabbing;scroll-behavior:auto!important}.poster-slider.dragging a,.landscape-slider.dragging a{pointer-events:none}
.card-overlay{position:absolute!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;background:rgba(2,8,7,.12)!important;opacity:0;transition:.25s;z-index:3;pointer-events:none}.movie-card:hover .card-overlay,.series-card:hover .card-overlay{opacity:1}.card-play{width:52px;height:52px;border-radius:50%;background:var(--green);box-shadow:0 10px 35px rgba(0,210,106,.35);position:relative;transform:scale(.82);transition:.25s}.movie-card:hover .card-play,.series-card:hover .card-play{transform:scale(1)}.card-play:after{content:"";position:absolute;left:21px;top:16px;border-left:15px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent}
.geo-card-badge{color:#fff!important}.geo-fav-btn{font-size:0}.geo-heart{font-size:17px;color:#fff;line-height:1;transition:.2s}.geo-fav-btn:hover .geo-heart,.geo-fav-btn.active .geo-heart{color:#fff;transform:scale(1.08)}.geo-fav-btn.active{background:var(--green)!important;box-shadow:0 0 0 3px rgba(0,210,106,.15)}
.poster-meta-top{justify-content:flex-start!important;gap:5px}.poster-imdb{white-space:nowrap}.poster-year{white-space:nowrap}.poster-series-badge{right:8px;left:auto!important;transform:none!important;max-width:62%;overflow:hidden;text-overflow:ellipsis}.movie-card:has(.poster-series-badge) .poster-meta-top{bottom:8px!important}
/* Inner/category shell */
.inner-shell{width:min(var(--shell),calc(100% - 70px));margin:0 auto;padding:118px 0 90px;min-height:70vh}.category-page{width:100%}.category-topbar{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:22px}.category-topbar h1{font-size:clamp(28px,3vw,44px);letter-spacing:-1px}.filter-toggle{display:none}.catalog-filters{display:grid;grid-template-columns:1.25fr 1fr 1fr auto;gap:12px;padding:16px;background:var(--panel);border:1px solid var(--border);border-radius:14px;margin-bottom:28px}.catalog-filters label{display:flex;flex-direction:column;gap:7px}.catalog-filters label>span{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:1px}.catalog-filters select{height:44px;border:1px solid var(--border);background:#080c0e;color:#fff;border-radius:9px;padding:0 12px;outline:none}.catalog-filters select:focus{border-color:var(--green)}.filter-reset{align-self:end;height:44px;display:flex;align-items:center;padding:0 18px;border-radius:9px;background:rgba(255,255,255,.06);font-size:12px;font-weight:700}.filter-reset:hover{background:rgba(0,210,106,.12);color:var(--green)}
.category-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:30px 16px}.category-grid .movie-card{width:auto!important;min-width:0!important}.catalog-pagination{margin-top:45px}.catalog-pagination .bottom-nav{display:flex;justify-content:center}.catalog-pagination .navigation{display:flex;gap:7px;flex-wrap:wrap;justify-content:center}.catalog-pagination .navigation a,.catalog-pagination .navigation span{min-width:40px;height:40px;padding:0 12px;border:1px solid var(--border);border-radius:9px;display:inline-flex;align-items:center;justify-content:center;background:var(--panel);font-size:12px}.catalog-pagination .navigation span,.catalog-pagination .navigation a:hover{background:var(--green);color:#061009;border-color:var(--green)}
/* Full story visual modernization, keeping existing DLE/player logic */
.movie-page{padding-top:100px}.movie-page .container{width:min(1500px,calc(100% - 60px));margin-inline:auto}.movie-hero{padding-top:18px}.unified-player-card,.player-card.page__player{background:linear-gradient(145deg,#0d1419,#091014)!important;border:1px solid rgba(255,255,255,.07);border-radius:18px!important;padding:14px!important;box-shadow:0 22px 70px rgba(0,0,0,.3)}.unified-player-tabs,.page__player-controls{gap:8px!important}.unified-player-tab,.tabs-block__select span{border-radius:9px!important;background:#121a20!important;color:#dbe1e4!important}.unified-player-tab.active,.tabs-block__select span.is-active{background:var(--green)!important;color:#061009!important}.player-card .poster,.movie-player-wrap .poster{border-radius:14px!important;overflow:hidden;background:#000}.big-play,.movie-big-play{width:72px!important;height:72px!important;border-radius:50%!important;background:rgba(0,210,106,.92)!important;box-shadow:0 12px 40px rgba(0,210,106,.25)!important}.big-play:after,.movie-big-play:after{border-left-color:#fff!important}.episodes-toggle{background:var(--green)!important;color:#fff!important}.episodes-menu{border:1px solid rgba(0,210,106,.22)!important}.season-tabs button,.episodes-list button,.player-navigation button{background:#17241e!important}.season-tabs button:hover,.episodes-list button:hover,.player-navigation button:hover:not(:disabled){background:#1f3b2d!important}.season-tabs button.active,.episodes-list button.active{background:var(--green)!important;color:#fff!important;box-shadow:none!important}.movie-info-section{padding:28px 0 20px}.movie-info-grid{display:grid!important;grid-template-columns:260px minmax(0,1fr)!important;gap:22px!important;align-items:start}.movie-sidebar,.movie-main-content{min-width:0}.info-card{background:var(--panel)!important;border:1px solid var(--border)!important;border-radius:14px!important;box-shadow:none!important}.poster-card{padding:10px!important}.detail-section_poster img{border-radius:10px}.title-card,.description-card,.details-card{padding:22px!important;margin-bottom:14px!important}.detail-section_title h2{font-size:clamp(27px,3vw,44px)!important}.movie-meta-row{display:flex!important;gap:8px!important;flex-wrap:wrap}.movie-meta-row>*{border-radius:7px!important}.details-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:12px!important}.detail-item{background:rgba(255,255,255,.025);padding:13px;border-radius:9px}.detail-item-full{grid-column:1/-1}.related-section{padding:25px 0 60px}.full-fav-btn{border-radius:9px!important}.trailer-under-btn{border-radius:9px!important}
@media(max-width:1100px){.genre-menu{width:520px;grid-template-columns:repeat(3,1fr)}.category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hero{height:620px}.main-nav{gap:18px}.main-nav a{font-size:12px}}
@media(max-width:800px){.inner-shell{width:min(100% - 28px,720px);padding-top:92px}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 10px}.catalog-filters{grid-template-columns:1fr 1fr}.filter-reset{align-self:end}.filter-toggle{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--border);color:#fff;border-radius:9px;padding:10px 13px}.catalog-filters{display:none}.catalog-filters.open{display:grid}.movie-page .container{width:calc(100% - 28px)}.movie-info-grid{grid-template-columns:180px minmax(0,1fr)!important}.hero-arrows{padding:0 12px}.hero-arrow{width:44px;height:44px}}
@media(max-width:700px){.hero{height:560px;min-height:520px}.hero-content{padding-top:105px;padding-left:24px;padding-right:24px}.hero-dots{left:24px;bottom:28px}.hero h1{font-size:36px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-filters.open{grid-template-columns:1fr}.movie-info-grid{grid-template-columns:1fr!important}.movie-sidebar{max-width:210px}.details-grid{grid-template-columns:1fr}.detail-item-full{grid-column:auto}.movie-page{padding-top:78px}.unified-player-card,.player-card.page__player{padding:8px!important;border-radius:12px!important}.big-play,.movie-big-play{width:58px!important;height:58px!important}.player-navigation{gap:6px!important}.player-navigation button{padding:9px 10px!important;font-size:11px!important}.episode-status{order:-1;width:100%}.header-search-close{right:37px}.nav-dropdown{padding:0}.nav-dropdown-menu{display:none}}
@media(min-width:1900px){.hero{height:700px}.category-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.main-content{max-width:1900px}.inner-shell{max-width:1900px}.movie-page .container{max-width:1700px}}


/* ===== GeoFlix v6 fixes ===== */
/* remove browser-native blue/clear X; GeoFlix has its own close button */
.header-search-input::-webkit-search-cancel-button,.header-search-input::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}
.header-search{transition:width .32s cubic-bezier(.22,.61,.36,1),opacity .22s ease}
.header-search-input{transition:width .34s cubic-bezier(.22,.61,.36,1),opacity .22s ease,padding .34s cubic-bezier(.22,.61,.36,1),border-color .2s ease,background .2s ease!important}
.header-search-close{opacity:0;transform:scale(.75) rotate(-35deg);pointer-events:none;transition:opacity .18s ease,transform .25s cubic-bezier(.2,.8,.2,1)!important}
.header-search.open .header-search-close{display:block;opacity:1;transform:scale(1) rotate(0);pointer-events:auto}
.header-search-suggestions{transform-origin:top right;animation:geoSearchIn .2s ease both}
@keyframes geoSearchIn{from{opacity:0;transform:translateY(-7px) scale(.985)}to{opacity:1;transform:none}}

/* DLE category pages are rendered from shortstory.tpl; main.tpl now provides the grid wrapper. */
.catalog-shell{padding-top:105px!important}
.category-page{width:100%}
.category-grid>.movie-card{width:100%!important;min-width:0!important}
.category-grid .poster-image{aspect-ratio:2/3}
.category-grid .poster-image img{width:100%!important;height:100%!important;object-fit:cover!important;display:block}
.category-grid .card-title-link h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Full story: force a clean, wide, responsive layout over legacy inline rules. */
.inner-shell:has(.movie-page){width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
.inner-shell:has(.movie-page)>.dle-content{width:100%!important;max-width:none!important}
.movie-page{width:100%!important;padding-top:92px!important;overflow:hidden}
.movie-page .container{width:min(1440px,calc(100% - 48px))!important;max-width:1440px!important;margin:0 auto!important;padding:0!important}
.movie-hero{padding:18px 0 0!important}
.unified-player-card,.player-card.page__player{width:100%!important;max-width:none!important;padding:12px!important;border-radius:16px!important}
.player-card.player-wrapper,.movie-player-wrap{width:100%!important;max-width:none!important}
.player-card.player-wrapper .poster,.movie-player-wrap .poster{width:100%!important;aspect-ratio:16/8.2!important;height:auto!important;min-height:0!important;position:relative!important;overflow:hidden!important}
.player-card.player-wrapper .poster img,.movie-player-wrap .poster img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.video-responsive,.movie-frame{position:relative!important;width:100%!important;aspect-ratio:16/9!important;height:auto!important;overflow:hidden!important;background:#000!important;border-radius:12px!important}
.video-responsive iframe,.video-responsive video,.movie-frame iframe,.movie-frame video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;border:0!important}
.movie-info-section{padding:24px 0!important}.movie-info-grid{grid-template-columns:230px minmax(0,1fr)!important;gap:20px!important}
.detail-section_poster img{width:100%!important;height:auto!important;display:block!important}.title-card,.description-card,.details-card{width:100%!important}
.related-section .swiper-wrapper,.related-section .related-list{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:14px!important;transform:none!important;width:100%!important}
.related-section .swiper-slide{width:auto!important;margin:0!important}.related-card{width:100%!important;min-width:0!important}.related-card .poster-image{aspect-ratio:2/3}.related-card .poster-image img{width:100%!important;height:100%!important;object-fit:cover!important}
@media(max-width:1000px){.related-section .swiper-wrapper,.related-section .related-list{grid-template-columns:repeat(4,minmax(0,1fr))!important}.movie-info-grid{grid-template-columns:190px minmax(0,1fr)!important}}
@media(max-width:700px){.catalog-shell{padding-top:82px!important}.movie-page{padding-top:74px!important}.movie-page .container{width:calc(100% - 20px)!important}.movie-info-grid{grid-template-columns:1fr!important}.movie-sidebar{max-width:180px!important}.related-section .swiper-wrapper,.related-section .related-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}.player-card.player-wrapper .poster,.movie-player-wrap .poster{aspect-ratio:16/9!important}.unified-player-tabs,.page__player-controls .tabs-block__select{overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:4px!important}.unified-player-tab,.tabs-block__select span{flex:0 0 auto!important}}

/* ===== GeoFlix v7 fullstory — cinema layout inspired by supplied reference ===== */
.movie-page{background:#080c10}
.movie-page .container{width:min(1320px,calc(100% - 44px))!important;max-width:1320px!important}
.movie-hero{padding-top:24px!important}
.full-top-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;align-items:stretch}
.full-top-poster{display:flex;flex-direction:column;gap:10px;min-width:0}
.full-top-poster-frame{height:100%;min-height:430px;border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden;background:#0d1318}
.full-top-poster-frame img{width:100%;height:100%;object-fit:cover;display:block}
.full-top-trailer{height:42px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#111820;color:#fff;font-weight:700;cursor:pointer;transition:.2s}.full-top-trailer:hover{border-color:var(--green);color:var(--green)}
.full-top-player{min-width:0}.full-top-player>style{display:none}
.full-top-player .unified-player-card,.full-top-player .player-card.page__player{height:100%;display:flex;flex-direction:column;background:#0d1319!important;border-radius:12px!important;padding:10px!important}
.full-top-player .geoflix-notice{order:-2;margin-bottom:9px}.full-top-player .unified-player-tabs,.full-top-player .page__player-controls{order:-1;margin-bottom:10px!important}
.full-top-player .player-card.player-wrapper,.full-top-player .tabs-block__content{flex:1;min-height:0}
.full-top-player .player-card.player-wrapper .poster,.full-top-player .movie-player-wrap .poster{aspect-ratio:auto!important;height:100%!important;min-height:430px!important;border-radius:9px!important}
.full-top-player .player-card.player-wrapper .poster img,.full-top-player .movie-player-wrap .poster img{object-fit:cover!important}
.unified-player-tab,.tabs-block__select span{padding:9px 14px!important;border-radius:7px!important;font-size:12px!important}
.movie-info-section{padding:18px 0 10px!important}.movie-info-grid{display:block!important}.movie-sidebar{display:none!important}.movie-main-content{width:100%}
.title-card,.description-card,.details-card{border-radius:9px!important;padding:18px!important;margin-bottom:10px!important;background:#0d1218!important;border-color:rgba(255,255,255,.07)!important}
.detail-section_title h2{font-size:26px!important;line-height:1.2!important;margin:6px 0!important}.eng-title{font-size:13px!important;color:#89949d!important}.movie-alt-title{font-size:12px!important;color:#65717a!important}
.movie-meta-row{margin-top:12px!important}.movie-meta-row>*{min-height:28px;display:inline-flex;align-items:center;padding:0 9px!important;font-size:11px!important}.movie-category{margin-top:10px;font-size:12px}
.card-title{font-size:15px!important;margin:0 0 10px!important}.description-card .detail-section_text{font-size:13px!important;line-height:1.75!important;color:#c8d0d5!important}
.details-grid{grid-template-columns:1fr!important;gap:0!important;border-top:1px solid rgba(255,255,255,.06)}.detail-item{display:grid;grid-template-columns:120px 1fr;gap:14px;padding:11px 0!important;border-radius:0!important;border-bottom:1px solid rgba(255,255,255,.06);background:transparent!important;font-size:12px}.detail-item strong{color:#75818a}.detail-item span{color:#e6eaec}
.related-section{padding:28px 0 60px!important}.related-section .section__title>div{font-size:18px;font-weight:800}.related-section .swiper-wrapper,.related-section .related-list{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important}.related-card h3{font-size:12px!important}.related-card .card-eng-title{font-size:9px!important}
@media(max-width:950px){.full-top-grid{grid-template-columns:190px minmax(0,1fr)}.full-top-poster-frame,.full-top-player .player-card.player-wrapper .poster,.full-top-player .movie-player-wrap .poster{min-height:340px!important}.related-section .swiper-wrapper,.related-section .related-list{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:700px){.movie-page .container{width:calc(100% - 20px)!important}.full-top-grid{grid-template-columns:1fr;gap:10px}.full-top-poster{display:none}.full-top-player .player-card.player-wrapper .poster,.full-top-player .movie-player-wrap .poster{height:auto!important;min-height:0!important;aspect-ratio:16/9!important}.title-card,.description-card,.details-card{padding:14px!important}.detail-section_title h2{font-size:23px!important}.detail-item{grid-template-columns:90px 1fr}.related-section .swiper-wrapper,.related-section .related-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* ===== GeoFlix v8 Fullstory rebuild ===== */
.movie-page{padding-top:22px;background:#060a0d}.movie-page>br,.movie-page>center{display:none!important}.movie-page .container{width:min(1180px,calc(100% - 32px));margin-inline:auto}.movie-hero{padding:28px 0 14px}.movie-hero>.container{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:start}.movie-hero .movie-sidebar{grid-column:1;grid-row:1}.movie-hero .unified-player-card,.movie-hero .page__player{grid-column:2;grid-row:1;background:#0b1218;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:12px;overflow:hidden;box-shadow:0 16px 50px rgba(0,0,0,.22)}
.movie-hero .movie-sidebar .info-card{background:transparent;border:0;padding:0}.movie-hero .detail-section_poster{position:relative}.movie-hero .detail-section_poster>img,.movie-hero .detail-section_poster>picture img,.movie-hero .detail-section_poster>a>img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:2/3!important;object-fit:cover!important;border-radius:14px!important}.movie-hero .trailer-under-btn,.movie-hero .full-fav-btn{width:100%;margin-top:10px;min-height:42px;border-radius:10px}
.movie-hero .poster,.movie-hero .movie-poster{position:relative!important;width:100%!important;height:auto!important;aspect-ratio:16/9!important;overflow:hidden!important;border-radius:12px!important;background:#000!important;padding:0!important;line-height:0!important}.movie-hero .poster img,.movie-hero .movie-poster img,.movie-hero .poster picture,.movie-hero .movie-poster picture{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}.movie-hero .poster br,.movie-hero .movie-poster br{display:none!important}.movie-hero iframe,.movie-hero .video-responsive iframe,.movie-hero .video-inside iframe{width:100%!important;height:auto!important;aspect-ratio:16/9!important;border:0!important;border-radius:12px!important;background:#000!important}.movie-hero .big-play,.movie-hero .movie-big-play{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;z-index:5!important;width:66px!important;height:66px!important;border-radius:50%!important;background:#00c96b!important;box-shadow:0 10px 30px rgba(0,201,107,.28)!important}.movie-hero .big-play:after,.movie-hero .movie-big-play:after{content:"";position:absolute;left:27px;top:21px;border-left:20px solid #fff;border-top:12px solid transparent;border-bottom:12px solid transparent}
.page__player-controls,.unified-player-tabs{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin:0 0 12px!important}.tabs-block__select{display:flex!important;gap:8px!important;flex-wrap:wrap!important}.tabs-block__select>span,.unified-player-tab{border:1px solid rgba(255,255,255,.08)!important;background:#111b23!important;color:#eaf0f4!important;border-radius:9px!important;padding:9px 14px!important;font-size:13px!important}.tabs-block__select>span.is-active,.tabs-block__select>span.active,.unified-player-tab.active{background:#00c96b!important;color:#04100a!important;border-color:#00c96b!important}.geoflix-notice{border:1px solid rgba(0,201,107,.32)!important;border-radius:10px!important;background:rgba(0,201,107,.055)!important;margin-bottom:12px!important;overflow:hidden!important}
.movie-info-section{padding:8px 0 28px}.movie-info-grid{display:block!important}.movie-info-section .movie-sidebar{display:none!important}.movie-main-content{display:grid!important;gap:12px!important}.info-card{background:#0b1116!important;border:1px solid rgba(255,255,255,.075)!important;border-radius:13px!important;padding:18px!important;box-shadow:none!important}.title-card h2{font-size:28px!important;line-height:1.2!important;margin:6px 0!important}.eng-title{color:#9aa7b2!important}.movie-meta-row{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;margin-top:12px!important}.movie-meta-row .age,.movie-meta-row .quality,.imdb-badge{display:inline-flex!important;align-items:center!important;min-height:28px!important;border-radius:7px!important;padding:0 9px!important;font-size:12px!important;font-weight:800!important}.movie-meta-row .quality{background:#00c96b!important;color:#fff!important}.imdb-badge{background:#f5c518!important;color:#111!important}.description-card .detail-section_text{line-height:1.75!important;color:#c5ced5!important}.details-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1px!important;background:rgba(255,255,255,.07)!important;border-radius:9px!important;overflow:hidden!important}.detail-item{background:#0d151b!important;padding:13px 14px!important;display:grid!important;grid-template-columns:110px 1fr!important;gap:12px!important}.detail-item-full{grid-column:1/-1!important}.detail-item strong{color:#81909c!important}.related-section{padding:14px 0 54px}.related-section .films-header{margin-bottom:14px}.related-section .swiper-wrapper{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:14px!important;transform:none!important}.related-section .swiper-slide{width:auto!important;margin:0!important}.related-section .films-nav{display:none!important}
.episodes-toggle{background:#00c96b!important}.episodes-menu{border:1px solid rgba(0,201,107,.25)!important}.season-tabs button,.episodes-list button,.scroll-btn,.player-navigation button{background:#0e8d51!important}.season-tabs button.active,.episodes-list button.active{background:#f5c518!important;color:#111!important}
@media(max-width:900px){.movie-page{padding-top:8px}.movie-page .container{width:min(100% - 20px,720px)}.movie-hero{padding-top:12px}.movie-hero>.container{grid-template-columns:1fr}.movie-hero .movie-sidebar{display:none!important}.movie-hero .unified-player-card,.movie-hero .page__player{grid-column:1;padding:8px}.info-card{padding:14px!important}.title-card h2{font-size:22px!important}.details-grid{grid-template-columns:1fr!important}.detail-item-full{grid-column:auto!important}.related-section .swiper-wrapper{grid-template-columns:repeat(3,minmax(0,1fr))!important}.episodes-menu{right:8px!important;max-width:calc(100% - 16px)!important}}
@media(max-width:560px){.movie-page .container{width:calc(100% - 14px)}.movie-hero .poster,.movie-hero .movie-poster,.movie-hero iframe,.movie-hero .video-responsive iframe,.movie-hero .video-inside iframe{border-radius:9px!important}.tabs-block__select>span,.unified-player-tab{padding:8px 10px!important;font-size:11px!important}.detail-item{grid-template-columns:1fr!important;gap:4px!important}.related-section .swiper-wrapper{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}}

/* ===== GeoFlix v9 — final player selector fix ===== */
.geoflix-movie-player{display:block!important;overflow:hidden!important}
.geoflix-source-tabs{display:flex!important;align-items:center;gap:8px!important;flex-wrap:wrap!important;margin:0 0 12px!important}
.geoflix-source-tabs .unified-player-tab{appearance:none;border:1px solid rgba(255,255,255,.08)!important;background:#111a21!important;color:#eef4f6!important;font:inherit;font-weight:700;line-height:1;cursor:pointer;padding:11px 15px!important;border-radius:9px!important;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.geoflix-source-tabs .unified-player-tab:hover{background:#17252d!important;border-color:rgba(0,201,107,.35)!important;transform:translateY(-1px)}
.geoflix-source-tabs .unified-player-tab.active{background:#00c96b!important;border-color:#00c96b!important;color:#03110a!important}
.geoflix-source-tabs .help-tab{margin-left:auto;min-width:40px;padding-inline:12px!important}
.geoflix-player-stage{position:relative;width:100%;background:#030608;border-radius:12px;overflow:hidden}
.geoflix-player-stage>.unified-player-pane{display:none!important;width:100%;margin:0!important;padding:0!important}
.geoflix-player-stage>.unified-player-pane.active{display:block!important}
.geoflix-player-stage .movie-player-wrap{position:relative;width:100%;margin:0!important;padding:0!important}
.geoflix-player-stage .movie-poster,.geoflix-player-stage .movie-frame,.geoflix-player-stage iframe{width:100%!important;aspect-ratio:16/9!important;min-height:0!important;height:auto!important;border:0!important}
.geoflix-player-stage .movie-poster{position:relative;display:block;overflow:hidden;background:#020405}
.geoflix-player-stage .movie-poster img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.geoflix-player-stage .video-responsive{position:relative!important;padding:0!important;overflow:hidden!important}
.geoflix-player-stage .video-responsive iframe{position:absolute!important;inset:0!important;height:100%!important}
.geoflix-player-stage .player-help-box{min-height:280px;padding:40px;display:flex;flex-direction:column;justify-content:center;background:#0a1116}
@media(max-width:700px){.geoflix-source-tabs{flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none}.geoflix-source-tabs::-webkit-scrollbar{display:none}.geoflix-source-tabs .unified-player-tab{flex:0 0 auto;padding:9px 12px!important;font-size:12px!important}.geoflix-source-tabs .help-tab{margin-left:0}.geoflix-player-stage .player-help-box{min-height:180px;padding:22px}}

/* ===== GeoFlix v10 — reference-style fullstory top ===== */
.movie-page{padding-top:0!important}
.movie-hero{padding:34px 0 18px!important}
.movie-hero>.container{
  width:min(1320px,calc(100% - 40px))!important;
  display:grid!important;
  grid-template-columns:270px minmax(0,1fr)!important;
  gap:16px!important;
  align-items:stretch!important;
}
.full-player-poster{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:10px;min-width:0}
.full-player-poster-image{position:relative;overflow:hidden;border-radius:12px;background:#0b1116;border:1px solid rgba(255,255,255,.1);flex:1;min-height:0}
.full-player-poster-image img,.full-player-poster-image picture,.full-player-poster-image picture img,.full-player-poster-image>a,.full-player-poster-image>a>img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border:0!important;border-radius:0!important}
.full-player-trailer{height:44px;border-radius:9px;border:1px solid rgba(255,255,255,.14);background:#101821;color:#fff;font-weight:700;cursor:pointer;transition:.2s ease}
.full-player-trailer:hover{border-color:#00c96b;background:#13231d}
.movie-hero>.container>.unified-player-card,.movie-hero>.container>.page__player{grid-column:2!important;grid-row:1!important;width:100%!important;min-width:0!important;padding:10px!important;border-radius:12px!important;background:#0b1218!important}
.movie-hero .geoflix-notice{display:none!important}
.movie-hero .unified-player-tabs{margin:0 0 9px!important;min-height:38px}
.movie-hero .geoflix-player-stage,.movie-hero .player-card.player-wrapper{border-radius:9px!important}
.movie-hero .geoflix-player-stage .movie-poster,.movie-hero .geoflix-player-stage .movie-frame,.movie-hero .geoflix-player-stage iframe,.movie-hero .player-card.player-wrapper .poster,.movie-hero .player-card.player-wrapper #videoPlayer{aspect-ratio:16/9!important;width:100%!important;height:auto!important;max-height:none!important}
.movie-info-section{padding-top:6px!important}
.movie-info-section .movie-sidebar{display:none!important}
@media(min-width:1200px){
 .movie-hero>.container{min-height:540px;max-height:650px}
 .full-player-poster-image{height:calc(100% - 54px)}
 .movie-hero>.container>.unified-player-card,.movie-hero>.container>.page__player{height:100%;display:flex!important;flex-direction:column}
 .movie-hero .geoflix-player-stage{flex:1;display:flex;align-items:center;background:#000}
 .movie-hero .geoflix-player-stage>.unified-player-pane.active{width:100%}
}
@media(max-width:900px){
 .movie-hero{padding-top:14px!important}
 .movie-hero>.container{width:min(100% - 20px,760px)!important;grid-template-columns:1fr!important}
 .full-player-poster{display:none!important}
 .movie-hero>.container>.unified-player-card,.movie-hero>.container>.page__player{grid-column:1!important;grid-row:auto!important}
}

/* ===== GeoFlix v11 — correct poster proportions, no stretching ===== */
.movie-hero>.container{
  width:min(1240px,calc(100% - 40px))!important;
  grid-template-columns:245px minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
}
.full-player-poster{height:auto!important;align-self:start!important}
.full-player-poster-image{
  width:100%!important;
  height:auto!important;
  aspect-ratio:2/3!important;
  flex:none!important;
  min-height:0!important;
  background:#070b0e!important;
}
.full-player-poster-image img,
.full-player-poster-image picture,
.full-player-poster-image picture img,
.full-player-poster-image>a,
.full-player-poster-image>a>img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
}
.full-player-trailer{width:100%!important;height:42px!important}
.movie-hero>.container>.unified-player-card,
.movie-hero>.container>.page__player{
  height:auto!important;
  align-self:start!important;
}
.movie-hero .geoflix-player-stage,
.movie-hero .player-card.player-wrapper{
  width:100%!important;
  height:auto!important;
  flex:none!important;
}
.movie-hero .geoflix-player-stage .movie-poster,
.movie-hero .geoflix-player-stage .movie-frame,
.movie-hero .geoflix-player-stage iframe,
.movie-hero .player-card.player-wrapper .poster,
.movie-hero .player-card.player-wrapper #videoPlayer{
  width:100%!important;
  height:auto!important;
  aspect-ratio:16/9!important;
  min-height:0!important;
  object-fit:cover!important;
}
@media(min-width:1200px){
 .movie-hero>.container{min-height:0!important;max-height:none!important}
 .full-player-poster-image{height:auto!important}
 .movie-hero>.container>.unified-player-card,.movie-hero>.container>.page__player{height:auto!important}
 .movie-hero .geoflix-player-stage{flex:none!important;display:block!important}
}
@media(max-width:1100px) and (min-width:901px){
 .movie-hero>.container{grid-template-columns:210px minmax(0,1fr)!important;width:min(1040px,calc(100% - 30px))!important}
}

/* ===== GeoFlix v12 — poster + player reference geometry ===== */
/* Desktop: the poster and player form one balanced media row. The poster keeps
   its real 2:3 ratio; the player keeps 16:9. Nothing is stretched. */
@media (min-width: 901px){
  .movie-hero{padding:28px 0 16px!important}
  .movie-hero>.container{
    width:min(1440px,calc(100% - 48px))!important;
    grid-template-columns:clamp(280px,20.5vw,350px) minmax(0,1fr)!important;
    gap:18px!important;
    align-items:start!important;
  }
  .full-player-poster{
    width:100%!important;
    height:auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    align-self:start!important;
  }
  .full-player-poster-image{
    width:100%!important;
    height:auto!important;
    aspect-ratio:2/3!important;
    flex:0 0 auto!important;
    overflow:hidden!important;
    border-radius:10px!important;
    background:#080c10!important;
  }
  .full-player-poster-image img,
  .full-player-poster-image picture,
  .full-player-poster-image picture img,
  .full-player-poster-image>a,
  .full-player-poster-image>a>img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    object-fit:cover!important;
    object-position:center!important;
  }
  .full-player-trailer{
    width:100%!important;
    height:44px!important;
    flex:0 0 44px!important;
    margin:0!important;
  }
  .movie-hero>.container>.unified-player-card,
  .movie-hero>.container>.page__player{
    width:100%!important;
    height:auto!important;
    min-width:0!important;
    align-self:start!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .movie-hero .geoflix-source-tabs,
  .movie-hero .unified-player-tabs,
  .movie-hero .page__player-controls{
    min-height:44px!important;
    margin:0 0 10px!important;
  }
  .movie-hero .geoflix-player-stage,
  .movie-hero .player-card.player-wrapper{
    width:100%!important;
    height:auto!important;
    aspect-ratio:16/9!important;
    min-height:0!important;
    flex:none!important;
    overflow:hidden!important;
    border-radius:10px!important;
    background:#000!important;
  }
  .movie-hero .geoflix-player-stage>.unified-player-pane.active,
  .movie-hero .geoflix-player-stage .movie-player-wrap,
  .movie-hero .geoflix-player-stage .movie-poster,
  .movie-hero .geoflix-player-stage .movie-frame,
  .movie-hero .geoflix-player-stage iframe,
  .movie-hero .player-card.player-wrapper .poster,
  .movie-hero .player-card.player-wrapper #videoPlayer{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    margin:0!important;
  }
  .movie-hero .geoflix-player-stage .movie-poster img,
  .movie-hero .player-card.player-wrapper .poster img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }
}
@media (min-width:901px) and (max-width:1199px){
  .movie-hero>.container{
    width:min(1120px,calc(100% - 30px))!important;
    grid-template-columns:clamp(220px,24vw,270px) minmax(0,1fr)!important;
    gap:14px!important;
  }
}

/* ===== GeoFlix v13 — mobile fullstory polish + separated category chips ===== */
.movie-category{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important;margin-top:12px!important}
.movie-category a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:30px!important;padding:6px 11px!important;margin:0!important;border:1px solid rgba(0,201,107,.24)!important;border-radius:999px!important;background:rgba(0,201,107,.08)!important;color:#dff9ec!important;font-size:12px!important;font-weight:700!important;line-height:1.15!important;text-decoration:none!important;white-space:nowrap!important;transition:.18s ease!important}
.movie-category a:hover{background:#00c96b!important;border-color:#00c96b!important;color:#04110b!important;transform:translateY(-1px)!important}

@media(max-width:700px){
  .movie-page{padding-top:62px!important;background:#070b10!important}
  .movie-page .container{width:calc(100% - 20px)!important;max-width:none!important}
  .movie-hero{padding:10px 0 8px!important}
  .movie-hero>.container{display:block!important;width:calc(100% - 20px)!important}
  .full-player-poster{display:none!important}
  .movie-hero>.container>.unified-player-card,.movie-hero>.container>.page__player{display:block!important;width:100%!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  .geoflix-source-tabs,.unified-player-tabs{gap:6px!important;margin:0 0 8px!important;padding:0 1px 3px!important}
  .geoflix-source-tabs .unified-player-tab,.unified-player-tab{min-height:34px!important;padding:8px 11px!important;border-radius:8px!important;font-size:11px!important}
  .movie-hero .geoflix-player-stage,.movie-hero .player-card.player-wrapper{width:100%!important;aspect-ratio:16/9!important;border-radius:10px!important;overflow:hidden!important;background:#000!important;border:1px solid rgba(255,255,255,.07)!important}
  .movie-hero .geoflix-player-stage .movie-poster,.movie-hero .geoflix-player-stage .movie-frame,.movie-hero .geoflix-player-stage iframe,.movie-hero .player-card.player-wrapper .poster,.movie-hero .player-card.player-wrapper #videoPlayer{width:100%!important;height:100%!important;aspect-ratio:auto!important}

  .movie-info-section{padding:8px 0 18px!important}
  .movie-info-grid{display:block!important}
  .movie-sidebar{display:none!important}
  .movie-main-content{display:flex!important;flex-direction:column!important;gap:10px!important}
  .info-card{padding:14px!important;margin:0!important;border-radius:11px!important;background:#0b1118!important;border:1px solid rgba(255,255,255,.07)!important;box-shadow:none!important}
  .title-card{order:1!important}
  .description-card{order:2!important}
  .details-card{order:3!important}
  .detail-section_title{position:relative!important}
  .detail-section_title h2{font-size:21px!important;line-height:1.25!important;margin:7px 0 3px!important}
  .eng-title{font-size:12px!important;color:#91a0ad!important}
  .geo-like-dislike{display:flex!important;align-items:center!important;gap:6px!important;margin-bottom:8px!important;overflow-x:auto!important;scrollbar-width:none!important}
  .geo-like-dislike::-webkit-scrollbar{display:none!important}
  .geo-rate-btn{flex:0 0 auto!important;font-size:11px!important;padding:6px 8px!important;border-radius:7px!important}
  .download-btn{display:none!important}
  .movie-meta-row{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin-top:10px!important}
  .movie-meta-row .age,.movie-meta-row .quality,.movie-meta-row .imdb-badge{display:inline-flex!important;align-items:center!important;min-height:26px!important;padding:5px 8px!important;border-radius:6px!important;font-size:11px!important;line-height:1!important}
  .movie-category{gap:6px!important;margin-top:10px!important}
  .movie-category a{min-height:28px!important;padding:6px 9px!important;font-size:11px!important}
  .card-title{font-size:15px!important;margin:0 0 9px!important}
  .mobile-description{font-size:13px!important;line-height:1.65!important;color:#d5dde4!important}
  .details-grid{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
  .detail-item{display:grid!important;grid-template-columns:78px minmax(0,1fr)!important;gap:9px!important;padding:9px 0!important;border-bottom:1px solid rgba(255,255,255,.06)!important;font-size:12px!important}
  .detail-item:last-child{border-bottom:0!important}
  .detail-item strong{color:#8e9aa5!important}

  .related-section{padding-top:8px!important}
  .related-section h2,.related-section .section-title{font-size:18px!important;margin-bottom:12px!important}
  .related-section .swiper-wrapper,.related-section .related-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}
  .related-card .poster-image{border-radius:8px!important;overflow:hidden!important}
  .related-card .poster-title,.related-card .title{font-size:11px!important;line-height:1.25!important;margin-top:5px!important}
}
@media(max-width:390px){
  .related-section .swiper-wrapper,.related-section .related-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* ===== GeoFlix v14 — mobile player fix + horizontal related movies ===== */
.mobile-description-poster{display:none}
.related-section .films-nav{display:flex!important;gap:8px!important;align-items:center!important}
.related-section .films-prev,.related-section .films-next{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;border-radius:50%!important;border:1px solid rgba(0,201,107,.34)!important;background:#0b1418!important;color:#fff!important;cursor:pointer!important;user-select:none!important;transition:.18s ease!important}
.related-section .films-prev:hover,.related-section .films-next:hover{background:#00c96b!important;color:#03110a!important;transform:translateY(-1px)!important}
.related-section .filmsSwiper{overflow:hidden!important;width:100%!important}
.related-section .swiper-wrapper{display:flex!important;grid-template-columns:none!important;gap:14px!important;width:100%!important;transform:none!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-behavior:smooth!important;scroll-snap-type:x proximity!important;scrollbar-width:none!important;padding-bottom:4px!important}
.related-section .swiper-wrapper::-webkit-scrollbar{display:none!important}
.related-section .related-card{flex:0 0 calc((100% - 70px)/6)!important;width:auto!important;min-width:0!important;scroll-snap-align:start!important}

@media(max-width:1000px){
 .related-section .related-card{flex-basis:calc((100% - 42px)/4)!important}
}
@media(max-width:700px){
 .movie-hero .geoflix-player-stage{height:auto!important;min-height:0!important;aspect-ratio:16/9!important}
 .movie-hero .geoflix-player-stage>.unified-player-pane.active{display:block!important;width:100%!important;height:100%!important}
 .movie-hero .movie-player-wrap{display:block!important;width:100%!important;height:100%!important;min-height:0!important}
 .movie-hero .geoflix-movie-player .movie-frame{display:block;width:100%!important;height:100%!important;min-height:0!important;aspect-ratio:auto!important;background:#000!important;overflow:hidden!important}
 .movie-hero .geoflix-movie-player .movie-frame iframe,
 .movie-hero .geoflix-movie-player .movie-frame video,
 .movie-hero .geoflix-movie-player .movie-frame embed,
 .movie-hero .geoflix-movie-player .movie-frame object{display:block!important;width:100%!important;height:100%!important;min-height:100%!important;border:0!important}

 .mobile-description{display:block!important;overflow:hidden!important}
 .mobile-description-poster{display:block!important;float:left!important;width:105px!important;margin:2px 12px 7px 0!important;border-radius:9px!important;overflow:hidden!important;background:#070b0e!important}
 .mobile-description-poster img,.mobile-description-poster picture,.mobile-description-poster a{display:block!important;width:100%!important;height:auto!important}
 .mobile-description-poster img{aspect-ratio:2/3!important;object-fit:cover!important}
 .mobile-description-copy{font-size:13px!important;line-height:1.65!important;color:#d5dde4!important}
 .description-card:after{content:"";display:block;clear:both}

 .related-section .films-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
 .related-section .films-nav{display:flex!important;flex:0 0 auto!important}
 .related-section .films-prev,.related-section .films-next{width:34px!important;height:34px!important;font-size:15px!important}
 .related-section .swiper-wrapper,.related-section .related-list{display:flex!important;grid-template-columns:none!important;gap:10px!important;overflow-x:auto!important}
 .related-section .related-card{flex:0 0 calc((100% - 20px)/3)!important;width:auto!important}
}
@media(max-width:390px){
 .related-section .related-card{flex-basis:calc((100% - 10px)/2)!important}
 .mobile-description-poster{width:96px!important}
}

/* ===== GeoFlix v15 — fullstory actions + related navigation polish ===== */
.geo-title-actions{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin:0 0 10px!important}
.geo-like-dislike{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;overflow:visible!important}
.geo-rate-btn{display:inline-flex!important;align-items:center!important;gap:7px!important;min-height:38px!important;padding:6px 10px 6px 7px!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:11px!important;background:linear-gradient(180deg,#121b22,#0d1419)!important;color:#e8eef2!important;text-decoration:none!important;box-shadow:0 5px 16px rgba(0,0,0,.18)!important;transition:transform .18s ease,border-color .18s ease,background .18s ease!important}
.geo-rate-btn:hover{transform:translateY(-1px)!important;border-color:rgba(0,201,107,.38)!important;background:#111e1a!important}
.geo-rate-icon{display:grid!important;place-items:center!important;width:26px!important;height:26px!important;border-radius:8px!important;background:rgba(255,255,255,.06)!important;font-size:14px!important;line-height:1!important}
.geo-like:hover .geo-rate-icon{background:rgba(0,201,107,.16)!important;color:#18e487!important}.geo-dislike:hover .geo-rate-icon{background:rgba(255,84,84,.13)!important;color:#ff7777!important}
.geo-rate-label{font-size:12px!important;font-weight:700!important;white-space:nowrap!important}.geo-rate-btn .ratingtypeplusminus{display:inline-grid!important;place-items:center!important;min-width:24px!important;height:24px!important;padding:0 6px!important;border-radius:7px!important;background:#070c10!important;color:#aeb9c1!important;font-size:11px!important;font-weight:800!important}
.download-btn{position:static!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;margin:0 0 0 auto!important;min-height:38px!important;padding:8px 13px!important;border-radius:10px!important;border:1px solid rgba(255,75,75,.34)!important;background:linear-gradient(180deg,rgba(187,30,39,.94),rgba(132,20,27,.94))!important;color:#fff!important;font-size:12px!important;font-weight:800!important;text-decoration:none!important;box-shadow:0 7px 20px rgba(128,15,22,.18)!important;transition:.18s ease!important;white-space:nowrap!important}.download-btn:hover{transform:translateY(-1px)!important;filter:brightness(1.1)!important}
.related-section .films-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important}.related-section .films-nav{margin-left:auto!important}.related-section .films-prev,.related-section .films-next{font-family:Arial,sans-serif!important;font-weight:700!important;box-shadow:0 6px 18px rgba(0,0,0,.22)!important}.related-section .filmsSwiper{cursor:grab!important}.related-section .filmsSwiper:active{cursor:grabbing!important}
@media(max-width:700px){.geo-title-actions{gap:8px!important;align-items:stretch!important}.geo-like-dislike{gap:6px!important;min-width:0!important}.geo-rate-btn{min-height:34px!important;padding:5px 7px 5px 5px!important;gap:5px!important}.geo-rate-icon{width:23px!important;height:23px!important;border-radius:7px!important}.geo-rate-label{font-size:10px!important}.geo-rate-btn .ratingtypeplusminus{height:21px!important;min-width:20px!important;font-size:10px!important}.download-btn{display:inline-flex!important;min-height:34px!important;padding:6px 8px!important;font-size:10px!important;border-radius:9px!important}.related-section .films-nav{margin-left:auto!important}}
@media(max-width:430px){.geo-rate-label{display:none!important}.download-btn{font-size:0!important}.download-btn span{font-size:16px!important}.geo-title-actions{margin-bottom:8px!important}}


/* ===== GeoFlix v16 final interaction polish ===== */
.site-header,
.site-header.is-scrolled{
  background:linear-gradient(to bottom,rgba(3,7,9,.95) 0%,rgba(3,7,9,.68) 58%,rgba(3,7,9,.10) 100%)!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}
.movie-poster{cursor:pointer!important}
.movie-poster .movie-big-play{cursor:pointer!important;transition:transform .2s ease,box-shadow .2s ease,background .2s ease!important}
.movie-poster:hover .movie-big-play{transform:scale(1.08)!important;box-shadow:0 12px 44px rgba(0,210,106,.42)!important}
.geo-card-clickable{cursor:pointer}
.geo-card-clickable .poster-image,.geo-card-clickable h3{cursor:pointer}

/* Help screen */
.geoflix-player-stage .geo-help-modern{min-height:clamp(300px,31vw,520px);text-align:center;align-items:center;padding:42px 8%!important;background:radial-gradient(circle at 50% 35%,rgba(0,200,83,.08),transparent 42%),#091117!important}
.geo-help-modern .geo-help-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin-bottom:15px;background:rgba(0,200,83,.12);border:1px solid rgba(0,200,83,.42);color:#00d26a;font-size:28px;font-weight:900}
.geo-help-modern h3{margin:0 0 16px;color:#fff;font-size:clamp(22px,2vw,34px)}
.geo-help-modern p{max-width:760px;margin:7px auto;color:#d3dadd;line-height:1.75;font-size:14px}
.geo-help-modern strong{color:#fff}
.geo-help-facebook{display:inline-flex;margin:7px 5px;padding:10px 16px;border-radius:999px;background:#1877f2;color:#fff!important;font-weight:800;box-shadow:0 8px 25px rgba(24,119,242,.22)}
.geo-help-facebook:hover{transform:translateY(-1px);filter:brightness(1.08)}
.geo-help-note{max-width:720px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);color:#9eaaaf;font-size:13px}
.geo-help-note strong{color:#00d26a}

/* Trailer modal */
.trailer-modal{display:none;position:fixed;inset:0;z-index:99999;padding:24px;background:rgba(0,0,0,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);align-items:center;justify-content:center}
.trailer-modal.is-open{display:flex}
.trailer-modal-content{position:relative;width:min(1000px,94vw);background:#05090c;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:12px;box-shadow:0 30px 90px rgba(0,0,0,.65)}
.trailer-close{position:absolute;z-index:3;right:-12px;top:-12px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#00c864;color:#041008;border:3px solid #071015;font-size:25px;line-height:1;cursor:pointer;font-weight:800}
#trailerVideoContainer{width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:10px;background:#000}
#trailerVideoContainer iframe,#trailerVideoContainer video,#trailerVideoContainer embed,#trailerVideoContainer object{display:block;width:100%!important;height:100%!important;border:0}
.geo-modal-open{overflow:hidden}

@media(max-width:700px){
 .site-header,.site-header.is-scrolled{background:linear-gradient(to bottom,rgba(3,7,9,.97),rgba(3,7,9,.78) 70%,rgba(3,7,9,.18))!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important}
 .geoflix-player-stage .geo-help-modern{min-height:220px;padding:25px 18px!important}
 .geo-help-modern .geo-help-icon{width:46px;height:46px;font-size:22px;margin-bottom:10px}
 .geo-help-modern h3{font-size:21px;margin-bottom:10px}.geo-help-modern p{font-size:12px;line-height:1.6}.geo-help-facebook{padding:8px 12px;font-size:12px}.geo-help-note{margin-top:13px;padding-top:12px;font-size:11px}
 .trailer-modal{padding:10px}.trailer-modal-content{width:100%;padding:7px;border-radius:12px}.trailer-close{right:2px;top:-44px}
}


/* ===== GeoFlix v17 — stable hero controls + reliable home-card navigation ===== */
/* The left poster/trailer column must never react to player hover or change geometry. */
@media (min-width:901px){
  .movie-hero>.container{align-items:start!important}
  .movie-hero .full-player-poster{
    position:relative!important;
    top:auto!important;bottom:auto!important;left:auto!important;right:auto!important;
    transform:none!important;
    align-self:start!important;
    display:grid!important;
    grid-template-rows:auto 44px!important;
    gap:10px!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }
  .movie-hero .full-player-poster-image{
    position:relative!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:2/3!important;
    margin:0!important;
    transform:none!important;
    transition:none!important;
  }
  .movie-hero .full-player-poster-image:hover,
  .movie-hero .full-player-poster:hover,
  .movie-hero .full-player-poster:has(+ .unified-player-card:hover){transform:none!important}
  .movie-hero .full-player-trailer{
    position:relative!important;
    inset:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:0 14px!important;
    transform:none!important;
    flex:none!important;
    z-index:20!important;
  }
  .movie-hero .full-player-trailer:hover,
  .movie-hero .full-player-trailer:focus{transform:none!important;margin:0!important}
}
.geo-home-card{cursor:pointer!important}
.geo-home-card .movie-img,.geo-home-card .movie-title,.geo-home-card .play-btn{cursor:pointer!important}
.geo-home-card .play-btn{pointer-events:none!important}


/* GeoFlix v18 interaction hardening */
.geo-home-card{cursor:pointer!important;position:relative}
.geo-home-card .movie-img>a:first-child,.geo-home-card .movie-title,.geo-home-card .hover-play-btn{position:relative;z-index:6}
.geo-home-card .play-btn{cursor:pointer!important}
.geo-home-card .hover-card{pointer-events:none!important}
.geo-home-card .hover-card a{pointer-events:auto!important}
.movie-hero .full-player-poster{align-self:start!important;transform:none!important}
.movie-hero .full-player-poster-image{transform:none!important}
.movie-hero .full-player-trailer{display:block!important;position:relative!important;inset:auto!important;transform:none!important;margin:10px 0 0!important;width:100%!important;box-sizing:border-box!important;cursor:pointer!important}
.movie-hero .full-player-trailer:hover,.movie-hero .full-player-trailer:focus,.movie-hero .full-player-trailer:active{transform:none!important;margin:10px 0 0!important}


/* GeoFlix v19 emergency interaction fixes */
.geo-home-card{position:relative!important;cursor:pointer!important}
.geo-home-card .geo-card-hit{position:absolute!important;inset:0!important;display:block!important;z-index:4!important;pointer-events:auto!important;border-radius:inherit!important}
.geo-home-card .movie-img>a:first-child,.geo-home-card .movie-title,.geo-home-card .hover-play-btn{position:relative!important;z-index:7!important;pointer-events:auto!important}
.geo-home-card .fav-heart-btn{z-index:9!important;pointer-events:auto!important}
.geo-home-card .play-btn{z-index:8!important;pointer-events:none!important}
.geo-home-card .hover-card{z-index:6!important;pointer-events:none!important}
.geo-home-card .hover-card .hover-play-btn{pointer-events:auto!important}
html.geo-modal-open,body.geo-modal-open{overflow:auto!important}
.trailer-modal{z-index:2147483000!important;pointer-events:none!important}
.trailer-modal.is-open{display:flex!important;pointer-events:auto!important}
.trailer-modal-content{pointer-events:auto!important}
.full-player-trailer,.trailer-under-btn{position:relative!important;transform:none!important;translate:none!important;inset:auto!important;z-index:20!important;cursor:pointer!important}


/* ===== GeoFlix v20 — interaction reset (clicks + trailer) ===== */
.poster-slider.dragging a,.landscape-slider.dragging a{pointer-events:auto!important}
.poster-slider img,.landscape-slider img{-webkit-user-drag:none;user-drag:none}
.movie-card[data-full-link],.series-card[data-full-link]{cursor:pointer!important}
.movie-card .poster-link,.series-card .landscape-link{position:relative!important;z-index:2!important;pointer-events:auto!important}
.movie-card .card-title-link,.series-card .landscape-info a{position:relative!important;z-index:2!important;pointer-events:auto!important}

@media (min-width:901px){
  .movie-hero>.container{display:grid!important;grid-template-columns:250px minmax(0,1fr)!important;gap:16px!important;align-items:start!important}
  .movie-hero .full-player-poster{display:grid!important;grid-template-rows:auto 44px!important;gap:10px!important;height:auto!important;align-self:start!important;position:relative!important;transform:none!important}
  .movie-hero .full-player-poster-image{width:100%!important;height:auto!important;aspect-ratio:2/3!important;transform:none!important;margin:0!important}
  .movie-hero .full-player-trailer{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:44px!important;min-height:44px!important;max-height:44px!important;margin:0!important;position:relative!important;inset:auto!important;transform:none!important;translate:none!important;flex:none!important;cursor:pointer!important}
  .movie-hero .full-player-trailer:hover,.movie-hero .full-player-trailer:focus,.movie-hero .full-player-trailer:active{margin:0!important;transform:none!important;translate:none!important}
}
#geoTrailerModal{display:none!important;position:fixed!important;inset:0!important;z-index:2147483000!important;background:rgba(0,0,0,.82)!important;backdrop-filter:blur(8px)!important;padding:24px!important;align-items:center!important;justify-content:center!important;pointer-events:none!important}
#geoTrailerModal.is-open{display:flex!important;pointer-events:auto!important}
#geoTrailerModal .trailer-modal-content{position:relative!important;width:min(1000px,94vw)!important;background:#070c10!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:14px!important;padding:8px!important;box-shadow:0 28px 90px rgba(0,0,0,.6)!important}
#geoTrailerModal .trailer-close{position:absolute!important;right:-12px!important;top:-12px!important;z-index:3!important}
#geoTrailerVideo{width:100%!important;aspect-ratio:16/9!important;border-radius:10px!important;overflow:hidden!important;background:#000!important}
#geoTrailerVideo iframe,#geoTrailerVideo video,#geoTrailerVideo embed,#geoTrailerVideo object{display:block!important;width:100%!important;height:100%!important;border:0!important}


/* ===== GeoFlix v21 — hero drag, homepage-style related rail, fullstory favorite ===== */
#geoflix-hero{cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
#geoflix-hero.is-dragging{cursor:grabbing}
#geoflix-hero.is-dragging *{cursor:grabbing!important}
#geoflix-hero .hero-background img{-webkit-user-drag:none;user-drag:none;pointer-events:none}

.poster-slider,.landscape-slider{cursor:grab;scroll-snap-type:x proximity}
.poster-slider.dragging,.landscape-slider.dragging{cursor:grabbing;scroll-behavior:auto!important;scroll-snap-type:none}
.poster-slider .movie-card,.landscape-slider .series-card{scroll-snap-align:start}

.related-section.content-section{margin-top:58px!important;padding-top:0!important}
.related-section .container{max-width:1800px!important;width:100%!important}
.related-section .related-heading{margin-bottom:20px!important}
.related-section .related-slider{width:100%!important;overflow-x:auto!important;overflow-y:hidden!important}
.related-section .related-slider .related-card{flex:0 0 calc((100% - 85px)/6)!important;min-width:0!important}
.related-section .related-slider .card-overlay{pointer-events:none}

.full-favorite-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:38px!important;padding:7px 12px!important;border:1px solid rgba(0,201,107,.30)!important;border-radius:11px!important;background:linear-gradient(180deg,#111b20,#0b1317)!important;color:#e8eef2!important;text-decoration:none!important;font-size:12px!important;font-weight:800!important;white-space:nowrap!important;box-shadow:0 5px 16px rgba(0,0,0,.18)!important;transition:.18s ease!important}
.full-favorite-btn:hover{transform:translateY(-1px)!important;border-color:rgba(0,201,107,.65)!important;background:#0e2119!important}
.full-favorite-heart{display:grid!important;place-items:center!important;width:25px!important;height:25px!important;border-radius:8px!important;background:rgba(0,201,107,.10)!important;color:#fff!important;font-size:15px!important;line-height:1!important;transition:.18s ease!important}
.full-favorite-btn.active{background:linear-gradient(180deg,#00c96b,#00ad5d)!important;border-color:#00c96b!important;color:#03110a!important}
.full-favorite-btn.active .full-favorite-heart{background:rgba(3,17,10,.15)!important;color:#fff!important}
.full-favorite-btn .fav-label-added{display:none}
.full-favorite-btn.active .fav-label-add{display:none}
.full-favorite-btn.active .fav-label-added{display:inline}

/* Poster button always opens trailer_watch in this dedicated modal. */
#geoTrailerModal .trailer-modal-content{width:min(1050px,94vw)!important}
#geoTrailerVideo{aspect-ratio:16/9!important}
#geoTrailerVideo iframe,#geoTrailerVideo video,#geoTrailerVideo embed,#geoTrailerVideo object{width:100%!important;height:100%!important}

@media(max-width:1000px){
  .related-section .related-slider .related-card{flex-basis:calc((100% - 51px)/4)!important}
}
@media(max-width:700px){
  .related-section.content-section{margin-top:34px!important}
  .related-section .related-heading{margin-bottom:14px!important}
  .related-section .related-slider{gap:10px!important;padding-bottom:4px!important}
  .related-section .related-slider .related-card{flex:0 0 calc((100% - 20px)/3)!important}
  .full-favorite-btn{min-height:34px!important;padding:5px 8px!important;gap:5px!important;border-radius:9px!important}
  .full-favorite-heart{width:23px!important;height:23px!important;border-radius:7px!important}
  .full-favorite-label{font-size:10px!important}
  #geoTrailerModal{padding:10px!important}
  #geoTrailerModal .trailer-modal-content{width:100%!important}
}
@media(max-width:430px){
  .related-section .related-slider .related-card{flex-basis:calc((100% - 10px)/2)!important}
  .full-favorite-label{display:none!important}
  .full-favorite-btn{width:34px!important;min-width:34px!important;padding:4px!important}
}

/* ===== GeoFlix v22 — mobile polish, lighter glass header, action layout ===== */
.logo{display:inline-flex!important;align-items:baseline!important;gap:0!important}
.logo-net{font-style:normal!important;font-size:.38em!important;font-weight:800!important;letter-spacing:.02em!important;color:rgba(255,255,255,.72)!important;margin-left:2px!important;transform:translateY(-1px)!important}

/* Mobile home quick categories, visually sitting above the hero like a streaming app rail. */
.home-quick-cats{display:none}

/* Fullstory secondary controls */
.geo-secondary-actions{display:flex;align-items:center;gap:8px}
.mobile-full-trailer{display:none;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg,#111b22,#0b1318);color:#fff;border-radius:11px;min-height:38px;padding:7px 12px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;transition:.18s ease}
.mobile-full-trailer:hover{border-color:rgba(0,201,107,.58);background:#102119;color:#fff}

@media(max-width:768px){
  /* Lighter translucent mobile header; readable but no longer a heavy black slab. */
  .site-header,.site-header.is-scrolled{
    position:fixed!important;
    background:linear-gradient(180deg,rgba(6,14,17,.76),rgba(6,14,17,.54))!important;
    border-bottom:1px solid rgba(255,255,255,.035)!important;
    box-shadow:0 8px 28px rgba(0,0,0,.12)!important;
    backdrop-filter:blur(11px) saturate(118%)!important;
    -webkit-backdrop-filter:blur(11px) saturate(118%)!important;
    transition:background .32s ease,backdrop-filter .32s ease,box-shadow .32s ease!important;
  }
  .site-header.is-scrolled{
    background:linear-gradient(180deg,rgba(8,17,20,.84),rgba(8,17,20,.64))!important;
    box-shadow:0 10px 32px rgba(0,0,0,.16)!important;
  }
  .header-inner{height:70px!important;padding:0 14px!important;gap:10px!important}
  .logo{font-size:22px!important;flex:0 0 auto!important;position:relative!important;z-index:8!important}
  .logo-net{font-size:9px!important;margin-left:1px!important}
  .header-actions{gap:8px!important;margin-left:auto!important}
  .favorite-btn,.mobile-menu-btn,.header-search-btn{width:38px!important;height:38px!important;flex:0 0 38px!important;background:rgba(10,18,22,.45)!important;border-color:rgba(255,255,255,.14)!important;backdrop-filter:blur(7px)!important}
  .mobile-menu-btn{display:flex!important}

  /* Search expands below the header instead of laying over the GeoFlix logo. */
  .header-search{position:relative!important;height:38px!important;width:38px!important;flex:0 0 38px!important}
  .header-search.open{
    position:fixed!important;
    top:76px!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    height:44px!important;
    z-index:1300!important;
    padding:0!important;
    filter:drop-shadow(0 12px 28px rgba(0,0,0,.28));
  }
  .header-search.open .header-search-input{
    width:100%!important;height:44px!important;opacity:1!important;pointer-events:auto!important;
    padding:0 78px 0 16px!important;border-radius:13px!important;
    background:rgba(11,22,26,.96)!important;border-color:rgba(0,201,107,.48)!important;
    backdrop-filter:blur(14px)!important;
  }
  .header-search.open .header-search-btn{position:absolute!important;right:3px!important;top:3px!important;width:38px!important;height:38px!important;background:transparent!important;border-color:transparent!important}
  .header-search.open .header-search-close{display:grid!important;place-items:center!important;right:40px!important;top:5px!important;width:34px!important;height:34px!important}
  .header-search.open .header-search-suggestions{position:absolute!important;top:50px!important;left:0!important;right:0!important;width:100%!important;max-height:54vh!important;border-radius:13px!important}

  /* App-like category rail only on homepage, over the top area of the hero. */
  .home-quick-cats{
    display:flex!important;position:absolute!important;top:78px!important;left:10px!important;right:10px!important;z-index:25!important;
    gap:7px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0 0 7px!important;scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch;mask-image:linear-gradient(to right,transparent 0,#000 10px,#000 calc(100% - 18px),transparent 100%);
  }
  .home-quick-cats::-webkit-scrollbar{display:none!important}
  .home-quick-cats a{
    flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;height:34px!important;padding:0 14px!important;
    border-radius:9px!important;border:1px solid rgba(255,255,255,.12)!important;background:rgba(27,36,42,.72)!important;color:#f4f7f8!important;
    font-size:11px!important;font-weight:800!important;backdrop-filter:blur(10px)!important;box-shadow:0 4px 16px rgba(0,0,0,.12)!important;
  }
  .home-quick-cats a:first-child{background:rgba(0,201,107,.92)!important;color:#04130b!important;border-color:#00c96b!important}
  .hero{padding-top:0!important}
  .hero-content{padding-top:132px!important}

  /* Fullstory player always preserves a clean 16:9 frame on phones. */
  .movie-hero .geoflix-player-stage,.movie-hero .player-card.player-wrapper{width:100%!important;aspect-ratio:16/9!important;height:auto!important;min-height:0!important;overflow:hidden!important;border-radius:10px!important;background:#000!important}
  .movie-hero .geoflix-player-stage>.unified-player-pane.active,.movie-hero .geoflix-player-stage .movie-player-wrap,.movie-hero .geoflix-player-stage .movie-poster,.movie-hero .geoflix-player-stage .movie-frame{width:100%!important;height:100%!important;aspect-ratio:auto!important;min-height:0!important}
  .movie-hero .geoflix-player-stage .movie-poster img,.movie-hero .geoflix-player-stage .movie-frame img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
  .movie-hero .geoflix-player-stage iframe,.movie-hero .geoflix-player-stage video{width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:cover!important}

  /* Like/dislike first row, favorite + trailer second row, matching the supplied mobile reference. */
  .geo-title-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;align-items:stretch!important;margin:0 0 12px!important}
  .geo-like-dislike{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important;overflow:visible!important}
  .geo-rate-btn{width:100%!important;min-height:39px!important;justify-content:center!important;padding:6px 9px!important;border-radius:9px!important;background:#101923!important;border-color:rgba(255,255,255,.11)!important;box-shadow:none!important}
  .geo-rate-icon{width:24px!important;height:24px!important;border-radius:7px!important}
  .geo-rate-label{font-size:11px!important}
  .geo-rate-btn .ratingtypeplusminus{margin-left:auto!important;background:rgba(5,10,13,.72)!important}
  .geo-secondary-actions{display:contents!important}
  .full-favorite-btn{grid-column:1!important;width:100%!important;min-width:0!important;min-height:39px!important;padding:6px 10px!important;border-radius:9px!important}
  .full-favorite-label{display:inline!important;font-size:10px!important}
  .mobile-full-trailer{display:flex!important;grid-column:2!important;width:100%!important;min-height:39px!important;border-radius:9px!important}
  .download-btn{display:none!important}

  /* Description poster is compact and keeps 2:3 instead of stretching. */
  .mobile-description{display:grid!important;grid-template-columns:88px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;overflow:visible!important}
  .mobile-description-poster{display:block!important;float:none!important;width:88px!important;max-width:88px!important;margin:0!important;border-radius:9px!important;overflow:hidden!important;background:#070b0e!important;aspect-ratio:2/3!important}
  .mobile-description-poster img,.mobile-description-poster picture,.mobile-description-poster a{display:block!important;width:100%!important;height:100%!important;margin:0!important}
  .mobile-description-poster img{object-fit:cover!important;object-position:center!important;aspect-ratio:auto!important}
  .mobile-description-copy{min-width:0!important;line-height:1.65!important}
}

@media(max-width:390px){
  .header-inner{padding:0 10px!important}
  .header-actions{gap:6px!important}
  .favorite-btn,.mobile-menu-btn,.header-search-btn{width:36px!important;height:36px!important;flex-basis:36px!important}
  .logo{font-size:20px!important}
  .home-quick-cats{left:7px!important;right:7px!important}
  .home-quick-cats a{padding:0 12px!important;font-size:10px!important}
  .mobile-description{grid-template-columns:78px minmax(0,1fr)!important;gap:10px!important}
  .mobile-description-poster{width:78px!important;max-width:78px!important}
  .geo-rate-label{display:inline!important}
}

/* v22.1 — softer header and cleaner rating glyphs */
.site-header,.site-header.is-scrolled{
  background:linear-gradient(180deg,rgba(7,15,18,.68),rgba(7,15,18,.32))!important;
  backdrop-filter:blur(9px) saturate(114%)!important;
  -webkit-backdrop-filter:blur(9px) saturate(114%)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.025)!important;
}
.site-header.is-scrolled{background:linear-gradient(180deg,rgba(7,15,18,.76),rgba(7,15,18,.48))!important}
.geo-rate-icon svg{display:block;width:15px;height:15px}
.geo-rate-icon-down svg{transform:rotate(180deg)}
@media(max-width:768px){
  .site-header,.site-header.is-scrolled{background:linear-gradient(180deg,rgba(7,15,18,.74),rgba(7,15,18,.52))!important}
  .site-header.is-scrolled{background:linear-gradient(180deg,rgba(7,15,18,.81),rgba(7,15,18,.60))!important}
  .geo-rate-label{display:none!important}
  .geo-rate-btn{gap:8px!important}
  .geo-rate-btn .ratingtypeplusminus{margin-left:0!important}
}


/* ===== GeoFlix v23 — smooth mobile hero, centered play, aligned mobile poster ===== */
/* Keep the play button perfectly centered on both desktop and mobile, including hover. */
.movie-hero .big-play,
.movie-hero .movie-big-play{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  translate:none!important;
  margin:0!important;
  display:block!important;
}
.movie-hero .poster:hover .big-play,
.movie-hero .movie-poster:hover .movie-big-play,
.movie-hero .poster:focus-within .big-play,
.movie-hero .movie-poster:focus-within .movie-big-play{
  transform:translate(-50%,-50%) scale(1.08)!important;
}

@media (max-width: 768px){
  /* Homepage header: smoother/lighter like the MyKadri reference. */
  .site-header,
  .site-header.is-scrolled{
    background:linear-gradient(180deg,rgba(8,16,20,.62),rgba(8,16,20,.22))!important;
    border-bottom:1px solid rgba(255,255,255,.04)!important;
    box-shadow:0 8px 24px rgba(0,0,0,.10)!important;
    backdrop-filter:blur(10px) saturate(118%)!important;
    -webkit-backdrop-filter:blur(10px) saturate(118%)!important;
  }
  .site-header.is-scrolled{
    background:linear-gradient(180deg,rgba(9,18,22,.76),rgba(9,18,22,.38))!important;
    box-shadow:0 10px 28px rgba(0,0,0,.14)!important;
  }
  .header-inner{
    height:68px!important;
    padding:0 13px!important;
    gap:10px!important;
  }
  .favorite-btn,
  .mobile-menu-btn,
  .header-search-btn{
    background:rgba(13,24,29,.42)!important;
    border-color:rgba(255,255,255,.11)!important;
  }

  /* Only on the homepage: no hamburger, and brighter quick-category background. */
  body.home-page .mobile-menu-btn{display:none!important}
  body.home-page .home-quick-cats{
    display:flex!important;
    top:77px!important;
    left:10px!important;
    right:10px!important;
    padding:8px!important;
    gap:8px!important;
    border-radius:14px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.045))!important;
    border:1px solid rgba(255,255,255,.07)!important;
    box-shadow:0 10px 28px rgba(0,0,0,.15)!important;
    backdrop-filter:blur(10px)!important;
    -webkit-backdrop-filter:blur(10px)!important;
    mask-image:none!important;
  }
  body.home-page .home-quick-cats a{
    background:rgba(34,46,54,.72)!important;
    border-color:rgba(255,255,255,.10)!important;
    color:#f5f8fa!important;
    min-height:35px!important;
    border-radius:10px!important;
    box-shadow:none!important;
  }
  body.home-page .home-quick-cats a:first-child{
    background:rgba(0,201,107,.92)!important;
    color:#04120b!important;
    border-color:#00c96b!important;
  }

  /* Mobile hero: clean photo, only Georgian + English titles at the bottom, arrows kept. */
  body.home-page .hero{
    height:72svh!important;
    min-height:510px!important;
    padding-top:0!important;
    border-radius:0 0 24px 24px!important;
    overflow:hidden!important;
  }
  body.home-page .hero-slide::after{
    content:"";
    position:absolute;
    inset:auto 18px 84px 18px;
    height:1px;
    background:linear-gradient(90deg,rgba(0,201,107,.85),rgba(255,255,255,.22));
    z-index:2;
  }
  body.home-page .hero-gradient{
    background:linear-gradient(180deg,rgba(3,8,10,.06) 0%,rgba(4,10,13,.20) 38%,rgba(4,10,13,.90) 100%)!important;
  }
  body.home-page .hero-content{
    min-height:100%!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:flex-start!important;
    padding:0 20px 28px!important;
  }
  body.home-page .hero-label,
  body.home-page .hero-meta-new,
  body.home-page .hero p,
  body.home-page .hero-buttons{display:none!important}
  body.home-page .hero h1{
    margin:0 0 4px!important;
    font-size:30px!important;
    line-height:1.06!important;
    text-shadow:0 10px 35px rgba(0,0,0,.45)!important;
  }
  body.home-page .hero-subtitle-new{
    margin:0!important;
    font-size:13px!important;
    color:rgba(255,255,255,.78)!important;
    letter-spacing:.02em!important;
    text-shadow:0 8px 26px rgba(0,0,0,.42)!important;
  }
  body.home-page .hero-arrows{
    padding:0 10px!important;
  }
  body.home-page .hero-arrow{
    width:42px!important;
    height:42px!important;
    background:rgba(7,15,18,.42)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    backdrop-filter:blur(8px)!important;
  }
  body.home-page .hero-dots{
    left:20px!important;
    bottom:12px!important;
  }
}

@media (max-width: 700px){
  /* Rebuild the mobile fullstory top area: tabs above, poster+trailer left, player right. */
  .movie-hero>.container{
    display:grid!important;
    grid-template-columns:112px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:start!important;
    width:calc(100% - 18px)!important;
  }
  .movie-hero>.container>.unified-player-card,
  .movie-hero>.container>.page__player{
    display:contents!important;
  }
  .movie-hero .geoflix-source-tabs,
  .movie-hero .unified-player-tabs,
  .movie-hero .page__player-controls{
    grid-column:1 / -1!important;
    grid-row:1!important;
    margin:0 0 2px!important;
  }
  .movie-hero .full-player-poster{
    display:grid!important;
    grid-template-rows:minmax(0,1fr) 40px!important;
    gap:8px!important;
    grid-column:1!important;
    grid-row:2!important;
    align-self:stretch!important;
    height:100%!important;
    min-height:0!important;
  }
  .movie-hero .full-player-poster-image{
    display:block!important;
    height:100%!important;
    min-height:0!important;
    border-radius:10px!important;
    overflow:hidden!important;
    background:#000!important;
  }
  .movie-hero .full-player-poster-image img,
  .movie-hero .full-player-poster-image picture,
  .movie-hero .full-player-poster-image a{
    display:block!important;
    width:100%!important;
    height:100%!important;
  }
  .movie-hero .full-player-poster-image img{
    object-fit:cover!important;
    object-position:center top!important;
  }
  .movie-hero .full-player-trailer{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:40px!important;
    height:40px!important;
    padding:0 10px!important;
    margin:0!important;
    border-radius:10px!important;
    font-size:12px!important;
    font-weight:800!important;
  }
  .movie-hero .geoflix-player-stage,
  .movie-hero .player-card.player-wrapper{
    grid-column:2!important;
    grid-row:2!important;
    width:100%!important;
    aspect-ratio:16 / 9!important;
    height:auto!important;
    min-height:0!important;
    border-radius:12px!important;
    overflow:hidden!important;
    background:#000!important;
  }
  .movie-hero .geoflix-player-stage>.unified-player-pane.active,
  .movie-hero .geoflix-player-stage .movie-player-wrap,
  .movie-hero .geoflix-player-stage .movie-poster,
  .movie-hero .geoflix-player-stage .movie-frame{
    width:100%!important;
    height:100%!important;
  }
}

@media (max-width: 390px){
  .movie-hero>.container{grid-template-columns:100px minmax(0,1fr)!important;gap:8px!important}
  .movie-hero .full-player-trailer{font-size:11px!important}
  body.home-page .hero h1{font-size:27px!important}
}


/* ===== GeoFlix v24 — desktop media sync, mobile rollback, poster-card polish ===== */

/* News/poster cards: reference-like corner badges and cleaner image frame. */
.movie-card .poster-image{
  border-radius:13px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.06)!important;
  background:#080d10!important;
}
.movie-card .geo-fav-btn{
  top:10px!important;
  left:10px!important;
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;
  border-radius:50%!important;
  background:rgba(12,15,18,.88)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:#fff!important;
  box-shadow:0 5px 18px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(8px)!important;
}
.movie-card .geo-fav-btn .geo-heart{font-size:19px!important;color:#fff!important}
.movie-card .geo-fav-btn.active{
  background:var(--green)!important;
  border-color:var(--green)!important;
  box-shadow:0 0 0 3px rgba(0,201,107,.15),0 7px 22px rgba(0,0,0,.28)!important;
}
.movie-card .geo-card-badge{
  top:10px!important;
  right:10px!important;
  min-height:25px!important;
  padding:5px 9px!important;
  border-radius:5px!important;
  background:#00d474!important;
  color:#fff!important;
  font-size:10px!important;
  line-height:1!important;
  box-shadow:0 4px 14px rgba(0,0,0,.18)!important;
}
.movie-card .poster-meta-top{
  left:9px!important;
  right:9px!important;
  bottom:9px!important;
  justify-content:space-between!important;
  gap:8px!important;
}
.movie-card .poster-meta-top .poster-imdb,
.movie-card .poster-meta-top .poster-year{
  min-height:25px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:5px 7px!important;
  border-radius:5px!important;
  font-size:10px!important;
  line-height:1!important;
  box-shadow:0 4px 14px rgba(0,0,0,.25)!important;
}
.movie-card .poster-meta-top .poster-imdb{background:#f5c518!important;color:#111!important}
.movie-card .poster-meta-top .poster-year{margin-left:auto!important;background:rgba(11,15,18,.90)!important;color:#fff!important}
.movie-card .card-overlay{background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.14) 100%)!important}

/* Desktop Fullstory: poster + trailer column always matches the player card height. */
@media (min-width:901px){
  .movie-hero>.container{
    grid-template-columns:clamp(285px,20vw,330px) minmax(0,1fr)!important;
    gap:18px!important;
    align-items:stretch!important;
  }
  .movie-hero .full-player-poster{
    display:grid!important;
    grid-template-rows:minmax(0,1fr) 44px!important;
    gap:10px!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    align-self:stretch!important;
  }
  .movie-hero .full-player-poster-image{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
    border-radius:11px!important;
    background:#070b0e!important;
  }
  .movie-hero .full-player-poster-image img,
  .movie-hero .full-player-poster-image picture,
  .movie-hero .full-player-poster-image picture img,
  .movie-hero .full-player-poster-image>a,
  .movie-hero .full-player-poster-image>a>img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:cover!important;
    object-position:center!important;
  }
  .movie-hero .full-player-trailer{
    width:100%!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    flex:none!important;
  }
}

@media (max-width:768px){
  /* No thin separator under the phone header. */
  .site-header,.site-header.is-scrolled{
    border-bottom:0!important;
    box-shadow:0 10px 26px rgba(0,0,0,.12)!important;
  }

  /* Darker menu surfaces, closer to the MyKadri reference. */
  body.home-page .home-quick-cats{
    background:linear-gradient(180deg,rgba(30,34,38,.90),rgba(22,27,31,.82))!important;
    border:1px solid rgba(255,255,255,.065)!important;
    box-shadow:0 8px 24px rgba(0,0,0,.22)!important;
  }
  body.home-page .home-quick-cats a{
    background:rgba(72,76,80,.58)!important;
    border-color:rgba(255,255,255,.08)!important;
  }
  body.home-page .home-quick-cats a:first-child{
    background:rgba(93,98,102,.64)!important;
    color:#fff!important;
    border-color:rgba(255,255,255,.10)!important;
  }
  .mobile-menu{
    background:rgba(10,15,18,.985)!important;
    box-shadow:0 18px 45px rgba(0,0,0,.34)!important;
    backdrop-filter:blur(14px)!important;
    -webkit-backdrop-filter:blur(14px)!important;
  }

  /* Remove the decorative green line from the mobile hero. */
  body.home-page .hero-slide::after{display:none!important;content:none!important}

  /* Slightly refine mobile poster badges to match the provided poster reference. */
  .movie-card .geo-fav-btn{
    top:8px!important;left:8px!important;width:31px!important;height:31px!important;min-width:31px!important;min-height:31px!important;
  }
  .movie-card .geo-fav-btn .geo-heart{font-size:16px!important}
  .movie-card .geo-card-badge{top:8px!important;right:8px!important;min-height:23px!important;padding:4px 8px!important;font-size:9px!important}
  .movie-card .poster-meta-top{left:8px!important;right:8px!important;bottom:8px!important}
  .movie-card .poster-meta-top .poster-imdb,.movie-card .poster-meta-top .poster-year{min-height:23px!important;padding:4px 6px!important;font-size:9px!important}
}

/* IMPORTANT: Mobile fullstory remains player-only at the top — no poster beside player. */
@media (max-width:700px){
  .movie-hero>.container{
    display:block!important;
    width:calc(100% - 20px)!important;
    max-width:none!important;
  }
  .movie-hero .full-player-poster{display:none!important}
  .movie-hero>.container>.unified-player-card,
  .movie-hero>.container>.page__player{
    display:block!important;
    width:100%!important;
    height:auto!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .movie-hero .geoflix-source-tabs,
  .movie-hero .unified-player-tabs,
  .movie-hero .page__player-controls{
    width:100%!important;
    margin:0 0 8px!important;
  }
  .movie-hero .geoflix-player-stage,
  .movie-hero .player-card.player-wrapper{
    width:100%!important;
    aspect-ratio:16/9!important;
    height:auto!important;
    min-height:0!important;
    border-radius:11px!important;
    overflow:hidden!important;
    background:#000!important;
  }
}


/* ===== GeoFlix v25 — square mobile hero, lighter quick categories, poster badge refinements ===== */
.poster-imdb{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  white-space:nowrap!important;
  min-width:max-content!important;
  padding-left:8px!important;
  padding-right:8px!important;
}
.poster-imdb .poster-imdb-label{color:#111!important;font-weight:900!important}
.poster-imdb .poster-imdb-value{color:#fff!important;font-weight:900!important;letter-spacing:.01em!important}
.movie-card .poster-meta-top .poster-imdb{min-width:62px!important;justify-content:center!important}
.landscape-image .poster-imdb{min-width:58px!important;justify-content:center!important}
.landscape-series-badge{
  right:9px!important;left:auto!important;bottom:9px!important;transform:none!important;max-width:64%!important;
  overflow:hidden!important;text-overflow:ellipsis!important;
}
.landscape-image:has(.landscape-series-badge) .poster-meta-top{right:auto!important;max-width:40%!important}
.landscape-image:has(.landscape-series-badge) .poster-year{display:none!important}

@media(max-width:768px){
  body.home-page .hero{border-radius:0!important}
  body.home-page .home-quick-cats{
    background:linear-gradient(180deg,rgba(40,45,50,.92),rgba(30,35,40,.86))!important;
    border-color:rgba(255,255,255,.08)!important;
  }
  body.home-page .home-quick-cats a{
    background:rgba(84,89,94,.60)!important;
    border-color:rgba(255,255,255,.095)!important;
  }
  body.home-page .home-quick-cats a:first-child{
    background:rgba(103,108,113,.66)!important;
    color:#fff!important;
    border-color:rgba(255,255,255,.12)!important;
  }
  .movie-card .poster-meta-top .poster-imdb{
    min-width:58px!important;padding-left:7px!important;padding-right:7px!important;gap:4px!important;
  }
}


/* ===== GeoFlix v26 — mobile hero tap/zoom, landscape titles, IMDb polish ===== */
/* IMDb returns to one yellow badge: label black, numeric value white, with a natural gap. */
.poster-imdb{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  min-width:0!important;
  padding:4px 7px!important;
  background:#f5c518!important;
  color:#111!important;
  white-space:nowrap!important;
  font-weight:900!important;
}
.poster-imdb strong{
  color:#fff!important;
  font:inherit!important;
  font-weight:900!important;
  margin:0!important;
  padding:0!important;
}
.poster-imdb-label,.poster-imdb-value{display:contents!important}
.movie-card .poster-meta-top .poster-imdb,
.landscape-image .poster-imdb{
  min-width:0!important;
  width:auto!important;
  padding-left:7px!important;
  padding-right:7px!important;
}

/* Landscape rows: title + English title, no season/episode line under the card. */
.landscape-eng-title{
  margin-top:3px!important;
  color:#69757b!important;
  font-size:10px!important;
  line-height:1.25!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.landscape-info>span{display:none!important}

@media(max-width:768px){
  /* Entire active hero is tappable; shorten it slightly so the background is less zoomed/cropped. */
  body.home-page .hero{
    height:min(57svh,520px)!important;
    min-height:430px!important;
    cursor:pointer!important;
  }
  body.home-page .hero-slide.active{cursor:pointer!important}
  body.home-page .hero-background img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 42%!important;
  }

  /* Slightly larger poster inside the mobile article description only. */
  .mobile-description{
    grid-template-columns:98px minmax(0,1fr)!important;
  }
  .mobile-description-poster{
    width:98px!important;
    max-width:98px!important;
  }
}
@media(max-width:390px){
  .mobile-description{grid-template-columns:88px minmax(0,1fr)!important}
  .mobile-description-poster{width:88px!important;max-width:88px!important}
}

/* ===== GeoFlix v28 — keep season/episode badge; date sits beside IMDb ===== */
.poster-date-inline{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  padding:4px 6px!important;
  border-radius:3px!important;
  background:rgba(4,8,9,.82)!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:800!important;
  box-shadow:0 2px 10px rgba(0,0,0,.25)!important;
}
/* Keep the category-page parser cleanup from v27 so values such as 8.2"> do not appear above cards. */
.category-grid>.catalog-card{font-size:0!important}
.category-grid>.catalog-card>*{font-size:initial}
.category-grid .card-title-link h3{font-size:13px!important}
.category-grid .card-eng-title{font-size:10px!important}
@media(max-width:700px){
  .poster-date-inline{padding:4px 5px!important;font-size:8px!important}
  .category-grid .card-title-link h3{font-size:11px!important}
  .category-grid .card-eng-title{font-size:9px!important}
}


/* ===== GeoFlix v29 — series badge above; XField year stays on bottom row ===== */
/* For series/Turkish-series vertical cards: IMDb stays bottom-left, XField year bottom-right. */
.movie-card:has(.poster-series-badge) .poster-meta-top{
  left:8px!important;
  right:8px!important;
  bottom:8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
}
.movie-card:has(.poster-series-badge) .poster-year{
  margin-left:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
/* Season/episode moves above IMDb/year, centered and a little larger for readability. */
.movie-card .poster-series-badge{
  left:50%!important;
  right:auto!important;
  bottom:43px!important;
  transform:translateX(-50%)!important;
  max-width:82%!important;
  min-height:27px!important;
  padding:6px 11px!important;
  border-radius:6px!important;
  background:rgba(4,14,10,.90)!important;
  border:1px solid rgba(0,201,107,.52)!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:800!important;
  line-height:1!important;
  text-align:center!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  box-shadow:0 5px 16px rgba(0,0,0,.30)!important;
}
@media(max-width:700px){
  .movie-card .poster-series-badge{
    bottom:39px!important;
    min-height:24px!important;
    padding:5px 9px!important;
    font-size:9px!important;
  }
}

/* ===== GeoFlix v30 — navigation, manual IMDb filter, recent history ===== */
/* Cleaner chevron for Films submenu (desktop). */
.nav-parent{gap:8px!important}
.nav-caret{
  position:relative!important;
  display:inline-block!important;
  width:9px!important;
  height:9px!important;
  font-size:0!important;
  color:transparent!important;
  flex:0 0 9px!important;
  transition:transform .22s ease!important;
}
.nav-caret::before{
  content:""!important;
  position:absolute!important;
  width:6px!important;
  height:6px!important;
  left:1px!important;
  top:0!important;
  border-right:1.6px solid var(--green)!important;
  border-bottom:1.6px solid var(--green)!important;
  transform:rotate(45deg)!important;
}
.nav-dropdown:hover .nav-caret{transform:translateY(2px) rotate(180deg)!important}

/* Manual IMDb field matches the selects. */
.catalog-filters input.js-imdb-filter{
  width:100%!important;
  height:44px!important;
  border:1px solid var(--border)!important;
  background:#080c0e!important;
  color:#fff!important;
  border-radius:9px!important;
  padding:0 12px!important;
  outline:none!important;
  font:inherit!important;
  appearance:textfield!important;
}
.catalog-filters input.js-imdb-filter:focus{border-color:var(--green)!important;box-shadow:0 0 0 3px rgba(0,201,107,.08)!important}
.catalog-filters input.js-imdb-filter::-webkit-inner-spin-button,
.catalog-filters input.js-imdb-filter::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0!important}
.category-topbar .section-kicker{display:none!important}

/* Recently watched is populated from localStorage and uses normal poster geometry. */
.recently-watched .recent-movie-card{flex:0 0 var(--card-width,190px)!important}
.recently-watched .recent-movie-card .poster-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}

@media(max-width:768px){
  /* Mobile menu keeps the requested top-level categories and gives Films a real collapsible submenu. */
  .mobile-menu{padding:12px 14px 18px!important;max-height:calc(100dvh - 68px)!important;overflow-y:auto!important}
  .mobile-nav-group{border-bottom:1px solid rgba(255,255,255,.055)!important}
  .mobile-nav-parent-row{display:grid!important;grid-template-columns:minmax(0,1fr) 46px!important;align-items:center!important}
  .mobile-nav-parent-row .mobile-nav-parent-link{border-bottom:0!important;padding:15px 5px!important}
  .mobile-submenu-toggle{
    width:38px!important;height:38px!important;justify-self:end!important;display:grid!important;place-items:center!important;
    border:1px solid rgba(255,255,255,.09)!important;border-radius:10px!important;background:rgba(255,255,255,.035)!important;color:#fff!important;cursor:pointer!important;
  }
  .menu-chevron{position:relative!important;width:10px!important;height:10px!important;transition:transform .22s ease!important}
  .menu-chevron::before{content:""!important;position:absolute!important;inset:0 2px 2px 0!important;border-right:1.8px solid var(--green)!important;border-bottom:1.8px solid var(--green)!important;transform:rotate(45deg)!important}
  .mobile-nav-group.submenu-open .menu-chevron{transform:rotate(180deg)!important}
  .mobile-submenu{
    display:grid!important;grid-template-columns:1fr 1fr!important;gap:4px 6px!important;max-height:0!important;opacity:0!important;overflow:hidden!important;
    padding:0 4px!important;transition:max-height .32s ease,opacity .22s ease,padding .32s ease!important;
  }
  .mobile-nav-group.submenu-open .mobile-submenu{max-height:720px!important;opacity:1!important;padding:5px 4px 13px!important}
  .mobile-submenu a{
    padding:9px 10px!important;border:0!important;border-radius:8px!important;background:rgba(255,255,255,.035)!important;color:#aeb8bd!important;font-size:11px!important;
  }
  .mobile-submenu a:hover{background:rgba(0,201,107,.09)!important;color:#e9fff4!important}
  .catalog-filters input.js-imdb-filter{height:42px!important}
  .recently-watched .recent-movie-card{flex-basis:43%!important;min-width:43%!important}
}

@media(max-width:768px){
  .home-quick-films{display:flex!important;align-items:stretch!important;flex:0 0 auto!important;gap:3px!important}
  .home-quick-films>a{border-radius:10px 7px 7px 10px!important}
  .home-quick-films-toggle{
    display:grid!important;place-items:center!important;width:32px!important;min-width:32px!important;border:1px solid rgba(255,255,255,.095)!important;
    border-radius:7px 10px 10px 7px!important;background:rgba(84,89,94,.60)!important;cursor:pointer!important
  }
  .home-quick-films-toggle .menu-chevron{width:9px!important;height:9px!important}
  .home-quick-films-toggle[aria-expanded="true"] .menu-chevron{transform:rotate(180deg)!important}
  .home-genre-panel{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;position:absolute!important;
    top:127px!important;left:10px!important;right:10px!important;z-index:60!important;max-height:0!important;opacity:0!important;overflow:hidden!important;
    padding:0 10px!important;border-radius:13px!important;background:rgba(10,15,18,.975)!important;border:1px solid rgba(255,255,255,.07)!important;
    box-shadow:0 20px 48px rgba(0,0,0,.38)!important;backdrop-filter:blur(15px)!important;transition:max-height .3s ease,opacity .2s ease,padding .3s ease!important;
  }
  .home-genre-panel.open{max-height:52vh!important;opacity:1!important;overflow-y:auto!important;padding:10px!important}
  .home-genre-panel a{padding:9px 10px!important;border-radius:8px!important;background:rgba(255,255,255,.035)!important;color:#bbc4c9!important;font-size:10px!important;font-weight:700!important}
  .home-genre-panel a:hover{background:rgba(0,201,107,.10)!important;color:#fff!important}
}


/* ===== GeoFlix v32 — clickable XField badges + reliable IMDb filter ===== */
.poster-xf-link{
  position:relative!important;
  z-index:9!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.poster-xf-link:hover{
  filter:brightness(1.08)!important;
  transform:translateY(-1px)!important;
}
.hero-xf-link{
  color:inherit!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.hero-xf-link:hover{filter:brightness(1.08)!important}
.catalog-card[hidden]{display:none!important}


/* ===== GeoFlix v33 — safe clickable XField badges (no DLE href parsing artifacts) ===== */
.poster-xf-link,
.hero-xf-link{
  border:0!important;
  outline:0!important;
  font:inherit!important;
  line-height:inherit!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}
.poster-xf-link{
  margin:0!important;
}
.hero-xf-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}


/* ===== GeoFlix v34 — clean XField badges + hero dots on the right ===== */
.poster-xf-link,.hero-xf-link{
  cursor:pointer!important;
  pointer-events:auto!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
.poster-xf-link:hover,.hero-xf-link:hover{
  filter:brightness(1.06)!important;
}
/* Preserve the original compact badge appearance; no button chrome/text leakage. */
.poster-meta-top .poster-imdb,
.poster-meta-top .poster-year{
  border:0!important;
  outline:0!important;
  font-family:inherit!important;
  line-height:1!important;
  text-decoration:none!important;
}
.hero-meta-new .hero-imdb,
.hero-meta-new .hero-year{
  border-radius:4px!important;
  font-family:inherit!important;
  line-height:1!important;
  text-decoration:none!important;
}
.hero-dots{
  left:auto!important;
  right:70px!important;
  justify-content:flex-end!important;
}
@media(max-width:768px){
  .hero-dots{left:auto!important;right:18px!important}
}


/* ===== GeoFlix v35 — desktop hero polish + always-open live search ===== */
.hero-imdb{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  background:#f5c518!important;
  color:#111!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
.hero-imdb-label{color:#111!important;font-weight:900!important}
.hero-imdb-value{color:#fff!important;font-weight:900!important;letter-spacing:.01em!important;text-shadow:0 1px 1px rgba(0,0,0,.18)!important}
.hero-year{font-weight:900!important}

.facebook-btn{
  width:42px;height:42px;flex:0 0 42px;border:1px solid rgba(255,255,255,.15);border-radius:50%;display:grid;place-items:center;
  color:#fff;background:rgba(255,255,255,.025);transition:.22s ease;
}
.facebook-btn svg{width:19px;height:19px;display:block}
.facebook-btn:hover{color:#fff;background:#1877f2;border-color:#1877f2;transform:translateY(-2px);box-shadow:0 8px 24px rgba(24,119,242,.22)}

@media(min-width:769px){
  /* A little shorter than v34 so the first content row peeks into the viewport. */
  #geoflix-hero.hero{
    height:min(594px,66vh)!important;
    min-height:535px!important;
  }
  #geoflix-hero .hero-content{
    padding:112px 80px 48px!important;
  }

  /* Old-template behavior: search is always visible on desktop. */
  .header-actions{gap:10px!important}
  .header-search{
    position:relative!important;
    width:235px!important;
    height:42px!important;
    flex:0 0 235px!important;
    opacity:1!important;
  }
  .header-search-input{
    display:block!important;
    width:100%!important;
    height:42px!important;
    opacity:1!important;
    pointer-events:auto!important;
    padding:0 43px 0 15px!important;
    border:1px solid rgba(255,255,255,.15)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.055)!important;
    color:#fff!important;
    outline:none!important;
    font:inherit!important;
    font-size:12px!important;
    backdrop-filter:blur(10px)!important;
    -webkit-backdrop-filter:blur(10px)!important;
    transition:border-color .2s ease,background .2s ease,box-shadow .22s ease!important;
  }
  .header-search-input::placeholder{color:rgba(255,255,255,.46)!important}
  .header-search:hover .header-search-input{
    background:rgba(255,255,255,.075)!important;
    border-color:rgba(255,255,255,.24)!important;
  }
  .header-search:focus-within .header-search-input{
    background:rgba(7,20,18,.76)!important;
    border-color:#00c96b!important;
    box-shadow:0 0 0 2px rgba(0,201,107,.12),0 0 18px rgba(0,201,107,.16)!important;
  }
  .header-search-btn{
    position:absolute!important;right:3px!important;top:3px!important;width:36px!important;height:36px!important;
    display:grid!important;place-items:center!important;border:0!important;border-radius:50%!important;background:transparent!important;color:rgba(255,255,255,.70)!important;
    cursor:pointer!important;transition:.2s ease!important;
  }
  .header-search:focus-within .header-search-btn,.header-search-btn:hover{color:#00d879!important;background:rgba(0,201,107,.08)!important}
  .header-search-close{display:none!important}

  .header-search-suggestions.live-search-results{
    position:absolute!important;top:50px!important;right:0!important;left:auto!important;width:350px!important;max-height:460px!important;
    overflow-y:auto!important;padding:7px!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:14px!important;
    background:rgba(6,11,13,.97)!important;box-shadow:0 22px 60px rgba(0,0,0,.46)!important;
    backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;
    opacity:0!important;visibility:hidden!important;transform:translateY(-5px) scale(.985)!important;pointer-events:none!important;
    transition:opacity .16s ease,transform .18s ease,visibility .18s ease!important;
  }
  .header-search-suggestions.live-search-results.active{
    opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important;
  }
  .live-search-item{
    display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;gap:10px!important;padding:8px!important;border-radius:10px!important;
    color:#fff!important;text-decoration:none!important;border-bottom:1px solid rgba(255,255,255,.055)!important;transition:.16s ease!important;
  }
  .live-search-item:last-child{border-bottom:0!important}
  .live-search-item:hover{background:rgba(0,201,107,.075)!important}
  .live-search-poster{width:48px!important;height:68px!important;object-fit:cover!important;border-radius:6px!important;background:#111!important}
  .live-search-copy{min-width:0!important}
  .live-search-title{font-size:12px!important;font-weight:800!important;line-height:1.25!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .live-search-eng-title{font-size:10px!important;color:#9da9af!important;margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .live-search-meta{font-size:10px!important;color:#d8e0e4!important;margin-top:3px!important;font-weight:700!important}
  .live-search-desc{font-size:9px!important;line-height:1.35!important;color:#7f8c92!important;margin-top:3px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  .live-search-empty{padding:15px!important;text-align:center!important;color:#929da2!important;font-size:11px!important}
}

@media(max-width:768px){
  .facebook-btn{display:none!important}
}


/* ===== GeoFlix v36 — live-search both breakpoints + desktop hero/meta polish ===== */
.site-header,.header-inner,.header-actions,.header-search{overflow:visible!important}

@media(min-width:769px){
  /* Keep a little more of the first content section visible on common desktop screens. */
  #geoflix-hero.hero{
    height:min(555px,62vh)!important;
    min-height:500px!important;
  }
  #geoflix-hero .hero-content{
    padding:100px 80px 42px!important;
  }
  #geoflix-hero .hero h1{
    max-width:610px!important;
    font-size:clamp(35px,3.35vw,54px)!important;
    line-height:1.06!important;
    letter-spacing:-1.4px!important;
    margin-bottom:10px!important;
  }
  #geoflix-hero .hero-subtitle-new{margin:0 0 12px!important}

  /* IMDb is one clean yellow pill: black label, white bold value, no inner black box. */
  #geoflix-hero .hero-imdb{
    display:inline-flex!important;
    align-items:center!important;
    gap:6px!important;
    min-height:29px!important;
    padding:6px 10px!important;
    background:#f5c518!important;
    border:1px solid #f5c518!important;
    border-radius:7px!important;
    box-shadow:none!important;
  }
  #geoflix-hero .hero-imdb-label{
    display:inline!important;
    padding:0!important;
    margin:0!important;
    background:none!important;
    border:0!important;
    border-radius:0!important;
    color:#111!important;
    font-weight:900!important;
    line-height:1!important;
  }
  #geoflix-hero .hero-imdb-value{
    display:inline!important;
    padding:0!important;
    margin:0!important;
    background:none!important;
    border:0!important;
    border-radius:0!important;
    color:#fff!important;
    font-weight:900!important;
    line-height:1!important;
    text-shadow:0 1px 1px rgba(0,0,0,.22)!important;
  }
  #geoflix-hero .hero-year{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:29px!important;
    padding:6px 10px!important;
    border-radius:7px!important;
    background:rgba(9,15,18,.72)!important;
    border:1px solid rgba(255,255,255,.14)!important;
    color:#fff!important;
    font-weight:900!important;
    line-height:1!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
  }

  /* Base rules used display:none; force the active desktop live search dropdown to render. */
  .header-search-suggestions.live-search-results.active{
    display:block!important;
    z-index:3000!important;
  }
}

@media(max-width:768px){
  /* Facebook is now available on mobile too. */
  .facebook-btn{
    display:grid!important;
    width:38px!important;
    height:38px!important;
    flex:0 0 38px!important;
    background:rgba(10,18,22,.45)!important;
    border-color:rgba(255,255,255,.14)!important;
    backdrop-filter:blur(7px)!important;
    -webkit-backdrop-filter:blur(7px)!important;
  }
  .facebook-btn svg{width:17px!important;height:17px!important}
  .facebook-btn:active,.facebook-btn:hover{
    background:#1877f2!important;
    border-color:#1877f2!important;
    transform:none!important;
    box-shadow:none!important;
  }

  /* Make live results a compact mobile poster list instead of a text wall. */
  .header-search.open .header-search-suggestions.live-search-results.active{
    display:block!important;
    top:50px!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-height:58vh!important;
    padding:7px!important;
    overflow-y:auto!important;
    background:rgba(6,11,13,.985)!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:13px!important;
    box-shadow:0 18px 45px rgba(0,0,0,.48)!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    pointer-events:auto!important;
    z-index:3000!important;
  }
  .header-search-suggestions .live-search-item{
    display:grid!important;
    grid-template-columns:56px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:start!important;
    width:100%!important;
    min-height:82px!important;
    padding:8px!important;
    margin:0!important;
    border-radius:10px!important;
    color:#fff!important;
    text-decoration:none!important;
    border-bottom:1px solid rgba(255,255,255,.055)!important;
    background:transparent!important;
  }
  .header-search-suggestions .live-search-item:last-child{border-bottom:0!important}
  .header-search-suggestions .live-search-poster{
    display:block!important;
    width:56px!important;
    height:80px!important;
    min-width:56px!important;
    max-width:56px!important;
    max-height:80px!important;
    margin:0!important;
    object-fit:cover!important;
    border-radius:7px!important;
    background:#111!important;
  }
  .header-search-suggestions .live-search-copy{min-width:0!important;padding:1px 0!important}
  .header-search-suggestions .live-search-title{
    font-size:12px!important;font-weight:800!important;line-height:1.3!important;color:#fff!important;
    white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  }
  .header-search-suggestions .live-search-eng-title{
    margin-top:2px!important;font-size:10px!important;line-height:1.25!important;color:#9ba8af!important;
    white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  }
  .header-search-suggestions .live-search-meta{margin-top:4px!important;font-size:10px!important;font-weight:800!important;color:#e1e7ea!important}
  .header-search-suggestions .live-search-desc{
    margin-top:3px!important;font-size:9px!important;line-height:1.35!important;color:#89969c!important;
    display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
  }
}

@media(max-width:390px){
  .facebook-btn{width:36px!important;height:36px!important;flex-basis:36px!important}
  .header-actions{gap:5px!important}
}

/* ===== GeoFlix v37 — tiny desktop hero rebalance ===== */
@media(min-width:769px){
  #geoflix-hero.hero{
    height:min(590px,65vh)!important;
    min-height:520px!important;
  }
  #geoflix-hero .hero-content{
    padding:104px 80px 44px!important;
  }
  #geoflix-hero .hero h1{
    max-width:600px!important;
    font-size:clamp(32px,2.85vw,47px)!important;
    line-height:1.08!important;
    letter-spacing:-1.1px!important;
    margin-bottom:9px!important;
  }
}

/* ===== GeoFlix v38 — slightly taller desktop hero, smaller title ===== */
@media(min-width:769px){
  #geoflix-hero.hero{
    height:min(615px,68vh)!important;
    min-height:535px!important;
  }
  #geoflix-hero .hero-content{
    padding:108px 80px 46px!important;
  }
  #geoflix-hero .hero h1{
    max-width:560px!important;
    font-size:clamp(29px,2.45vw,42px)!important;
    line-height:1.07!important;
    letter-spacing:-1px!important;
    margin-bottom:8px!important;
  }
}

/* ===== GeoFlix v39 — desktop hero title single-line clamp ===== */
@media(min-width:769px){
  #geoflix-hero .hero h1{
    width:min(680px,54vw)!important;
    max-width:min(680px,54vw)!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    display:block!important;
  }
}

/* ===== GeoFlix v40 — correct desktop hero title selector ===== */
@media(min-width:769px){
  #geoflix-hero.hero h1{
    width:min(690px,56vw)!important;
    max-width:min(690px,56vw)!important;
    font-size:clamp(28px,2.15vw,38px)!important;
    line-height:1.04!important;
    letter-spacing:-.8px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    display:block!important;
    margin-bottom:8px!important;
  }
}


/* ===== GeoFlix v41 — title glyph fix + watch hover + hero pointer ===== */
@media(min-width:769px){
  /* Georgian glyphs need a little vertical breathing room even on a single line. */
  #geoflix-hero.hero h1{
    line-height:1.16!important;
    padding-top:2px!important;
    padding-bottom:5px!important;
    margin-top:-2px!important;
    margin-bottom:5px!important;
    box-sizing:content-box!important;
  }
}

/* Keep the watch button in the GeoFlix palette: only the text turns white on hover. */
#geoflix-hero .hero-watch:hover{
  background:var(--green)!important;
  color:#fff!important;
  border-color:var(--green)!important;
  box-shadow:0 9px 26px rgba(0,210,106,.22)!important;
  transform:translateY(-2px)!important;
}
#geoflix-hero .hero-watch:hover span{color:#fff!important}

/* The hero remains draggable/swipeable, but visually behaves like a clickable article. */
#geoflix-hero,
#geoflix-hero .hero-slide,
#geoflix-hero .hero-slide.active,
#geoflix-hero.is-dragging,
#geoflix-hero.is-dragging *{
  cursor:pointer!important;
}
#geoflix-hero .hero-arrow,
#geoflix-hero .hero-watch,
#geoflix-hero .hero-more,
#geoflix-hero .hero-dots button{cursor:pointer!important}


/* ===== GeoFlix v42 — hero detail modal + mobile header/search refresh ===== */

/* Better looking live-search scroll area on both desktop and mobile. */
.header-search-suggestions.live-search-results{
  scrollbar-width:thin!important;
  scrollbar-color:rgba(0,216,121,.58) rgba(255,255,255,.03)!important;
  overscroll-behavior:contain!important;
  padding-right:4px!important;
}
.header-search-suggestions.live-search-results::-webkit-scrollbar{width:8px;height:8px}
.header-search-suggestions.live-search-results::-webkit-scrollbar-track{
  background:transparent!important;
  border-radius:999px!important;
}
.header-search-suggestions.live-search-results::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,rgba(0,216,121,.72),rgba(0,153,90,.72))!important;
  border-radius:999px!important;
  border:2px solid rgba(6,11,13,.96)!important;
}
.header-search-suggestions.live-search-results::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,rgba(0,235,132,.9),rgba(0,171,99,.88))!important;
}

/* Hero details modal */
.geo-details-modal{
  position:fixed!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:18px!important;
  z-index:2147483300!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .22s ease,visibility .22s ease!important;
}
.geo-details-modal.is-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.geo-details-backdrop{
  position:absolute!important;inset:0!important;
  background:rgba(4,9,12,.74)!important;
  backdrop-filter:blur(14px) saturate(120%)!important;
  -webkit-backdrop-filter:blur(14px) saturate(120%)!important;
}
.geo-details-dialog{
  position:relative!important;
  width:min(1000px,94vw)!important;
  max-height:min(88vh,920px)!important;
  background:linear-gradient(180deg,#081019,#09131d 48%,#071018)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:24px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.48)!important;
  overflow:hidden!important;
  pointer-events:auto!important;
}
.geo-details-close{
  position:absolute!important;top:14px!important;right:14px!important;z-index:3!important;
  width:40px!important;height:40px!important;border-radius:12px!important;border:1px solid rgba(255,255,255,.1)!important;
  background:rgba(255,255,255,.06)!important;color:#fff!important;font-size:24px!important;line-height:1!important;cursor:pointer!important;
  transition:.18s ease!important;
}
.geo-details-close:hover{background:rgba(0,201,107,.15)!important;border-color:rgba(0,201,107,.45)!important;color:#00e685!important}
.geo-details-scroll{max-height:min(88vh,920px)!important;overflow:auto!important;padding:22px!important;scrollbar-width:thin!important;scrollbar-color:rgba(0,216,121,.55) rgba(255,255,255,.04)!important}
.geo-details-scroll::-webkit-scrollbar{width:10px}
.geo-details-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.025)!important}
.geo-details-scroll::-webkit-scrollbar-thumb{background:rgba(0,201,107,.6)!important;border-radius:999px!important;border:2px solid rgba(5,10,13,.88)!important}
.geo-details-body{position:relative!important;color:#eef3f6!important}
.geo-details-top{display:grid!important;grid-template-columns:minmax(220px,260px) minmax(0,1fr)!important;gap:22px!important;align-items:start!important}
.geo-details-poster{aspect-ratio:2/3!important;border-radius:20px!important;overflow:hidden!important;background:#0a1016!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:0 16px 36px rgba(0,0,0,.26)!important}
.geo-details-poster img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
.geo-details-poster-fallback{display:grid!important;place-items:center!important;padding:20px!important;color:#fff!important;font-weight:800!important;text-align:center!important}
.geo-details-main{min-width:0!important;padding-right:10px!important}
.geo-details-kicker{font-size:12px!important;font-weight:800!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:#00d879!important;margin:2px 0 10px!important}
.geo-details-title{margin:0!important;font-size:clamp(31px,4vw,52px)!important;line-height:1.06!important;letter-spacing:-.03em!important;color:#fff!important}
.geo-details-subtitle{margin-top:8px!important;font-size:16px!important;font-weight:700!important;color:#8be6b6!important}
.geo-details-meta{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin:18px 0 14px!important}
.geo-details-badge{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:36px!important;padding:8px 14px!important;border-radius:12px!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.08)!important;color:#f2f6f8!important;font-size:14px!important;font-weight:800!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important}
.geo-details-badge.lang{background:linear-gradient(180deg,#00d46f,#00bf67)!important;border-color:#00d46f!important;color:#04110a!important}
.geo-details-badge.imdb{gap:7px!important;background:#f5c518!important;border-color:#f5c518!important;color:#111!important}
.geo-details-badge.imdb span{font-weight:900!important;color:#111!important}
.geo-details-badge.imdb strong{font-weight:900!important;color:#fff!important;text-shadow:0 1px 1px rgba(0,0,0,.18)!important}
.geo-details-chips{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.geo-details-chip{display:inline-flex!important;align-items:center!important;min-height:32px!important;padding:7px 12px!important;border-radius:999px!important;background:rgba(0,201,107,.12)!important;border:1px solid rgba(0,201,107,.3)!important;color:#dffceb!important;font-size:12px!important;font-weight:800!important}
.geo-details-chip.secondary{background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.09)!important;color:#e9edf0!important}
.geo-details-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;margin-top:18px!important}
.geo-details-card{border-radius:18px!important;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.03))!important;border:1px solid rgba(255,255,255,.08)!important;padding:18px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important}
.geo-details-story{margin-top:14px!important}
.geo-details-card h4{margin:0 0 12px!important;font-size:15px!important;font-weight:900!important;color:#00d879!important}
.geo-details-card p{margin:0!important;color:#dbe3e7!important;font-size:14px!important;line-height:1.75!important}
.geo-details-empty{display:inline-block!important;color:#8d9aa0!important;font-size:12px!important;font-weight:700!important}
.geo-details-actions{display:flex!important;flex-wrap:wrap!important;gap:12px!important;margin-top:18px!important}
.geo-details-primary,.geo-details-secondary{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;padding:0 18px!important;border-radius:14px!important;
  text-decoration:none!important;font-size:14px!important;font-weight:900!important;cursor:pointer!important;transition:.2s ease!important
}
.geo-details-primary{background:linear-gradient(180deg,#00da72,#00c465)!important;border:1px solid #00da72!important;color:#04120b!important;box-shadow:0 12px 26px rgba(0,201,107,.18)!important}
.geo-details-primary:hover{transform:translateY(-2px)!important;box-shadow:0 16px 34px rgba(0,201,107,.24)!important}
.geo-details-secondary{background:rgba(255,255,255,.04)!important;border:1px solid rgba(255,255,255,.12)!important;color:#fff!important}
.geo-details-secondary:hover{border-color:rgba(0,201,107,.4)!important;background:rgba(0,201,107,.08)!important}
.geo-details-loading{min-height:280px!important;display:grid!important;place-items:center!important;text-align:center!important}
.geo-details-loader{display:flex!important;gap:9px!important}
.geo-details-loader span{width:12px!important;height:12px!important;border-radius:50%!important;background:#00d879!important;display:block!important;animation:geoPulse .9s infinite ease-in-out}
.geo-details-loader span:nth-child(2){animation-delay:.14s}
.geo-details-loader span:nth-child(3){animation-delay:.28s}
.geo-details-loading-text{margin-top:14px!important;color:#c6d0d5!important;font-size:14px!important;font-weight:700!important}
@keyframes geoPulse{0%,80%,100%{transform:scale(.65);opacity:.45}40%{transform:scale(1);opacity:1}}

/* Mobile refresh: warmer MyKadri-like header, in-place search expansion, taller hero. */
@media(max-width:768px){
  .site-header,.site-header.is-scrolled{
    background:linear-gradient(180deg,rgba(88,69,52,.92),rgba(49,38,29,.76) 56%,rgba(16,14,13,.34))!important;
    border-bottom:1px solid rgba(255,255,255,.07)!important;
    box-shadow:0 12px 34px rgba(0,0,0,.18)!important;
    backdrop-filter:blur(12px) saturate(118%)!important;
    -webkit-backdrop-filter:blur(12px) saturate(118%)!important;
  }
  .site-header.is-scrolled{
    background:linear-gradient(180deg,rgba(94,72,55,.96),rgba(54,41,32,.82) 60%,rgba(16,14,13,.48))!important;
  }
  .header-inner{height:72px!important;padding:0 12px!important;gap:8px!important}
  .header-actions{position:relative!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;min-width:0!important}
  .favorite-btn,.mobile-menu-btn,.header-search-btn,.facebook-btn{
    background:rgba(255,255,255,.085)!important;
    border-color:rgba(255,255,255,.16)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
  }

  .header-search{
    position:relative!important;
    width:38px!important;
    height:38px!important;
    flex:0 0 38px!important;
    overflow:visible!important;
    transition:width .28s cubic-bezier(.22,.61,.36,1),flex-basis .28s cubic-bezier(.22,.61,.36,1)!important;
  }
  .header-search.open{
    position:relative!important;
    top:auto!important;left:auto!important;right:auto!important;
    width:clamp(156px,52vw,208px)!important;
    height:38px!important;
    flex:0 0 clamp(156px,52vw,208px)!important;
    z-index:200!important;
    filter:none!important;
  }
  .header-search-input{
    height:38px!important;
  }
  .header-search.open .header-search-input{
    width:100%!important;
    height:38px!important;
    opacity:1!important;
    pointer-events:auto!important;
    padding:0 66px 0 14px!important;
    border-radius:999px!important;
    background:rgba(10,17,20,.96)!important;
    border-color:rgba(0,201,107,.42)!important;
    box-shadow:0 8px 24px rgba(0,0,0,.16)!important;
  }
  .header-search.open .header-search-btn{
    position:absolute!important;top:1px!important;right:1px!important;width:36px!important;height:36px!important;
    background:transparent!important;border-color:transparent!important;
  }
  .header-search.open .header-search-close{
    display:grid!important;place-items:center!important;
    top:3px!important;right:33px!important;width:30px!important;height:30px!important;
    font-size:22px!important;
  }
  .header-search.open .header-search-suggestions.live-search-results.active{
    position:absolute!important;
    top:46px!important;
    right:0!important;
    left:auto!important;
    width:min(84vw,330px)!important;
    max-height:50vh!important;
    border-radius:16px!important;
    box-shadow:0 20px 46px rgba(0,0,0,.34)!important;
  }

  body.home-page #geoflix-hero.hero{
    height:650px!important;
    min-height:620px!important;
  }
  body.home-page #geoflix-hero .hero-content{
    padding-top:148px!important;
    padding-bottom:86px!important;
  }
  body.home-page #geoflix-hero .hero-dots{bottom:34px!important}
}
@media(max-width:430px){
  body.home-page #geoflix-hero.hero{height:624px!important;min-height:600px!important}
  .header-search.open{width:clamp(144px,50vw,188px)!important;flex-basis:clamp(144px,50vw,188px)!important}
  .header-search.open .header-search-suggestions.live-search-results.active{width:min(88vw,304px)!important}
  .geo-details-dialog{width:min(96vw,500px)!important}
}
@media(max-width:700px){
  .geo-details-dialog{border-radius:20px!important;max-height:min(92vh,900px)!important}
  .geo-details-scroll{padding:16px!important}
  .geo-details-top{grid-template-columns:1fr!important;gap:16px!important}
  .geo-details-poster{width:min(220px,55vw)!important;margin:0 auto!important}
  .geo-details-title{font-size:clamp(28px,8.3vw,38px)!important}
  .geo-details-grid{grid-template-columns:1fr!important}
}


/* ===== GeoFlix v43 — softer dark mobile header + old-template poster badge typography ===== */

/* English title below every poster: slightly larger and easier to read. */
.movie-card .card-eng-title,
.category-grid .card-eng-title,
.related-card .card-eng-title,
.series-card .landscape-eng-title,
.landscape-info .landscape-eng-title {
    margin-top: 4px !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    color: #7a878d !important;
    letter-spacing: .01em !important;
}

/* Old-template-inspired IMDb badge:
   yellow chip, black text, compact 12px label/value. */
.poster-image .poster-meta-top .poster-imdb,
.landscape-image .poster-meta-top .poster-imdb,
.movie-card .poster-meta-top .poster-imdb,
.series-card .poster-meta-top .poster-imdb {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    min-width: 0 !important;
    width: auto !important;
    min-height: 0 !important;
    padding: 3px 6px !important;
    border: 0 !important;
    border-radius: 4px !important;
    background: #f5c518 !important;
    color: #000 !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.24) !important;
    text-shadow: none !important;
}

.poster-image .poster-meta-top .poster-imdb strong,
.landscape-image .poster-meta-top .poster-imdb strong,
.movie-card .poster-meta-top .poster-imdb strong,
.series-card .poster-meta-top .poster-imdb strong {
    color: #000 !important;
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: 600 !important;
    text-shadow: none !important;
}

/* Old-template-inspired GEO badge:
   richer green, white text and a touch more breathing room. */
.poster-image .geo-card-badge,
.landscape-image .geo-card-badge,
.movie-card .geo-card-badge,
.series-card .geo-card-badge {
    top: 9px !important;
    right: 9px !important;
    padding: 5px 10px !important;
    border-radius: 5px !important;
    background: #1db954 !important;
    color: #fff !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.20) !important;
}

/* Mobile only: remove the glass look and use a calm, slightly transparent dark header. */
@media (max-width: 768px) {
    .site-header,
    .site-header.is-scrolled {
        background: linear-gradient(
            180deg,
            rgba(8, 13, 15, .88) 0%,
            rgba(8, 13, 15, .78) 64%,
            rgba(8, 13, 15, .68) 100%
        ) !important;
        border-bottom: 0 !important;
        box-shadow: 0 8px 24px rgba(0,0,0,.14) !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    .site-header.is-scrolled {
        background: linear-gradient(
            180deg,
            rgba(8, 13, 15, .93) 0%,
            rgba(8, 13, 15, .84) 68%,
            rgba(8, 13, 15, .76) 100%
        ) !important;
        box-shadow: 0 8px 24px rgba(0,0,0,.17) !important;
    }

    /* Slightly smaller in-place mobile search expansion than v42. */
    .header-search.open {
        width: clamp(148px, 49vw, 198px) !important;
        flex: 0 0 clamp(148px, 49vw, 198px) !important;
    }

    .header-search.open .header-search-input {
        padding-left: 13px !important;
        padding-right: 64px !important;
        background: rgba(8, 14, 17, .97) !important;
    }

    .header-search.open .header-search-suggestions.live-search-results.active {
        width: min(81vw, 318px) !important;
    }

    /* Keep old badge character on small cards without overpowering the poster. */
    .poster-image .poster-meta-top .poster-imdb,
    .landscape-image .poster-meta-top .poster-imdb,
    .movie-card .poster-meta-top .poster-imdb,
    .series-card .poster-meta-top .poster-imdb {
        padding: 3px 5px !important;
        font-size: 10px !important;
    }

    .poster-image .geo-card-badge,
    .landscape-image .geo-card-badge,
    .movie-card .geo-card-badge,
    .series-card .geo-card-badge {
        padding: 4px 7px !important;
        font-size: 10px !important;
    }

    .movie-card .card-eng-title,
    .category-grid .card-eng-title,
    .related-card .card-eng-title,
    .series-card .landscape-eng-title,
    .landscape-info .landscape-eng-title {
        font-size: 10px !important;
        line-height: 1.35 !important;
    }
}

@media (max-width: 430px) {
    .header-search.open {
        width: clamp(138px, 47vw, 178px) !important;
        flex-basis: clamp(138px, 47vw, 178px) !important;
    }

    .header-search.open .header-search-suggestions.live-search-results.active {
        width: min(86vw, 294px) !important;
    }
}


/* ===== GeoFlix v44 — clean section labels + native favorites + favorites page grid ===== */

/* The visible section title is Georgian; remove the small English/GEOFLIX kicker everywhere. */
.section-kicker,
.hero-label{
    display:none!important;
}

/* DLE's [add-favorites]/[del-favorites] generate the clickable link around these spans.
   Keep the modern GeoFlix button geometry and let the active state stay green after AJAX. */
.poster-image .geo-fav-btn,
.landscape-image .geo-fav-btn{
    cursor:pointer!important;
    user-select:none!important;
    -webkit-user-select:none!important;
}
.poster-image .geo-fav-btn.active,
.landscape-image .geo-fav-btn.active{
    background:var(--green)!important;
    border-color:var(--green)!important;
    box-shadow:0 0 0 3px rgba(0,201,107,.15),0 5px 18px rgba(0,0,0,.24)!important;
}
.poster-image .geo-fav-btn.active .geo-heart,
.landscape-image .geo-fav-btn.active .geo-heart{
    color:#fff!important;
}
.poster-image a:has(> .geo-fav-btn),
.landscape-image a:has(> .geo-fav-btn){
    position:static!important;
    display:contents!important;
}

/* Full-story native favorite link: generated anchor should not add its own chrome. */
.geo-secondary-actions a:has(> .full-favorite-btn){
    color:inherit!important;
    text-decoration:none!important;
}
.geo-secondary-actions a:has(> .full-favorite-btn.active){
    color:inherit!important;
}

/* /favorites/ now uses the same real card grid as categories instead of one stretched poster. */
.favorites-shell{
    width:min(1500px,calc(100% - 60px))!important;
    max-width:1500px!important;
    margin:0 auto!important;
    padding-top:112px!important;
}
.favorites-page{
    width:100%!important;
}
.favorites-topbar{
    margin-bottom:24px!important;
}
.favorites-topbar h1{
    margin:0!important;
    font-size:clamp(24px,2.2vw,34px)!important;
    line-height:1.2!important;
    color:#fff!important;
}
.favorites-grid.dle-content{
    margin-top:0!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:30px 16px!important;
    align-items:start!important;
}
.favorites-grid>.movie-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
}
.favorites-grid .poster-image{
    width:100%!important;
    aspect-ratio:2/3!important;
    height:auto!important;
    min-height:0!important;
    overflow:hidden!important;
    border-radius:10px!important;
}
.favorites-grid .poster-image>a.poster-link,
.favorites-grid .poster-image>a.poster-link>img,
.favorites-grid .poster-image img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    display:block!important;
}
.favorites-grid .card-title-link h3{
    margin-top:10px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}

@media(max-width:1100px){
    .favorites-grid.dle-content{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:800px){
    .favorites-shell{width:min(100% - 28px,720px)!important;padding-top:92px!important}
    .favorites-grid.dle-content{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px 10px!important}
}
@media(max-width:700px){
    .favorites-shell{width:calc(100% - 20px)!important;padding-top:82px!important}
    .favorites-grid.dle-content{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 10px!important}
    .favorites-topbar{margin-bottom:18px!important}
    .favorites-topbar h1{font-size:24px!important}
}


/* ===== GeoFlix v45 — restore favmod plugin + robust /favorites/ grid ===== */

/* This site uses the custom favmod plugin, not DLE's native [add-favorites] tags. */
.geo-fav-btn.fav-heart-btn.favmod,
.fav-heart-btn.favmod,
.full-favorite-btn.favmod{
    cursor:pointer!important;
    text-decoration:none!important;
}
.geo-fav-btn.fav-heart-btn.favmod .fa-heart{
    display:block!important;
    font-size:17px!important;
    line-height:1!important;
    color:#fff!important;
    transition:color .2s ease,transform .2s ease!important;
}
.geo-fav-btn.fav-heart-btn.favmod:hover .fa-heart{
    transform:scale(1.08)!important;
}
.geo-fav-btn.fav-heart-btn.favmod.active{
    background:var(--green)!important;
    border-color:var(--green)!important;
    box-shadow:0 0 0 3px rgba(0,210,106,.15),0 4px 16px rgba(0,0,0,.24)!important;
}
.geo-fav-btn.fav-heart-btn.favmod.active .fa-heart,
.fav-heart-btn.favmod.active .fa-heart,
.fav-heart-btn.favmod.active i{
    color:#fff!important;
}

/* Slider cards keep the older plugin look: dark circle, green heart when active. */
.geo-home-card .fav-heart-btn.favmod.active{
    background:rgba(0,0,0,.55)!important;
    box-shadow:0 0 10px rgba(0,200,83,.35)!important;
}
.geo-home-card .fav-heart-btn.favmod.active i{
    color:#00d26a!important;
}

/* Full-story button follows the same plugin active class. */
.full-favorite-btn.favmod.active{
    background:linear-gradient(180deg,#00c96b,#00ad5d)!important;
    border-color:#00c96b!important;
    color:#03110a!important;
}
.full-favorite-btn.favmod.active .full-favorite-heart{color:#fff!important}
.full-favorite-btn.favmod.active .fav-label-add{display:none!important}
.full-favorite-btn.favmod.active .fav-label-added{display:inline!important}

/* The plugin's /favorites/ URL is not guaranteed to map to DLE's [available=favorites],
   so make the layout route-aware in the browser as well. */
body.favorites-route main.inner-shell,
body.favorites-route .inner-shell{
    width:min(100% - 64px,1540px)!important;
    max-width:1540px!important;
    margin:0 auto!important;
    padding-top:118px!important;
}
body.favorites-route .dle-content,
body.favorites-route .favorites-grid.dle-content{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:30px 14px!important;
    align-items:start!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
}
body.favorites-route .dle-content > .movie-card,
body.favorites-route .dle-content > .series-card,
body.favorites-route .dle-content > .swiper-slide,
body.favorites-route .favorites-grid > .movie-card,
body.favorites-route .favorites-grid > .series-card,
body.favorites-route .favorites-grid > .swiper-slide{
    min-width:0!important;
    width:auto!important;
    max-width:none!important;
    height:auto!important;
    margin:0!important;
}
body.favorites-route .dle-content > .swiper-slide .movie-item,
body.favorites-route .favorites-grid > .swiper-slide .movie-item{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
}
body.favorites-route .movie-item .movie-img,
body.favorites-route .movie-card .poster-image{
    position:relative!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:2/3!important;
    overflow:hidden!important;
    border-radius:10px!important;
}
body.favorites-route .movie-item .movie-img > a:not(.fav-heart-btn),
body.favorites-route .movie-item .movie-img > a:not(.fav-heart-btn) img,
body.favorites-route .movie-card .poster-image > a.poster-link,
body.favorites-route .movie-card .poster-image > a.poster-link img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
}
body.favorites-route .movie-item .hover-card{display:none!important}
body.favorites-route .movie-item .movie-title,
body.favorites-route .movie-card .card-title-link{
    display:block!important;
    margin-top:9px!important;
    text-align:left!important;
}
body.favorites-route .movie-item .movie-title .title-main,
body.favorites-route .movie-card h3{
    display:block!important;
    color:#f4f6f7!important;
    font-size:13px!important;
    font-weight:800!important;
    line-height:1.35!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
body.favorites-route .movie-item .movie-title .title-eng,
body.favorites-route .movie-card .card-eng-title{
    display:block!important;
    margin-top:3px!important;
    color:#78848a!important;
    font-size:10px!important;
    line-height:1.3!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}

@media(max-width:1250px){
    body.favorites-route .dle-content,
    body.favorites-route .favorites-grid.dle-content{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:900px){
    body.favorites-route main.inner-shell,
    body.favorites-route .inner-shell{width:min(100% - 28px,760px)!important;padding-top:92px!important}
    body.favorites-route .dle-content,
    body.favorites-route .favorites-grid.dle-content{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px 10px!important}
}
@media(max-width:620px){
    body.favorites-route main.inner-shell,
    body.favorites-route .inner-shell{width:calc(100% - 20px)!important;padding-top:82px!important}
    body.favorites-route .dle-content,
    body.favorites-route .favorites-grid.dle-content{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 10px!important}
}


/* ===== GeoFlix v46 — visible heart icon + favmod active state ===== */
.fav-heart-btn .geo-heart-icon,
.geo-fav-btn .geo-heart-icon{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:100%!important;
    color:#fff!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:18px!important;
    line-height:1!important;
    font-weight:700!important;
    text-shadow:0 1px 5px rgba(0,0,0,.42)!important;
    transition:color .2s ease,transform .2s ease,opacity .2s ease!important;
    pointer-events:none!important;
}
.geo-home-card .fav-heart-btn .geo-heart-icon{font-size:17px!important}
.fav-heart-btn:hover .geo-heart-icon,
.geo-fav-btn:hover .geo-heart-icon{transform:scale(1.08)!important}

/* Plugin's [favmod] tag renders .active on items already in favorites. */
.fav-heart-btn.favmod.active .geo-heart-icon,
.geo-fav-btn.favmod.active .geo-heart-icon{
    color:#00d26a!important;
}

/* Poster cards: keep the dark circle and let the heart itself become green. */
.poster-image .geo-fav-btn.favmod.active,
.landscape-image .geo-fav-btn.favmod.active,
.geo-home-card .fav-heart-btn.favmod.active{
    background:rgba(5,8,9,.78)!important;
    border-color:rgba(0,210,106,.55)!important;
    box-shadow:0 0 0 2px rgba(0,210,106,.12),0 3px 12px rgba(0,0,0,.28)!important;
}

.favmod.is-loading{pointer-events:none!important}
.favmod.is-loading .geo-heart-icon,
.full-favorite-btn.favmod.is-loading .full-favorite-heart{
    opacity:.45!important;
    animation:geoFavPulse .7s ease-in-out infinite alternate!important;
}
@keyframes geoFavPulse{from{transform:scale(.9)}to{transform:scale(1.08)}}

@media(max-width:700px){
    .fav-heart-btn .geo-heart-icon,
    .geo-fav-btn .geo-heart-icon{font-size:16px!important}
}
\n\n/* ===== GeoFlix v47 — larger season/episode badges + random poster badge parity ===== */\n\n/* Season / episode badge: a little larger everywhere, while keeping the same placement. */\n.poster-series-badge,\n.landscape-series-badge,\n.season-badge,\n.random-series-badge {\n    font-size: 11px !important;\n    line-height: 1.15 !important;\n    font-weight: 800 !important;\n    padding: 6px 10px !important;\n    letter-spacing: .005em !important;\n    border-radius: 5px !important;\n}\n\n/* Shortstory-slider legacy season wrapper. */\n.series-meta .season-badge {\n    display: inline-flex !important;\n    align-items: center !important;\n    justify-content: center !important;\n    white-space: nowrap !important;\n}\n\n/* Random-film poster now uses the same visual language as every other poster. */\n.random-feature__poster-wrap {\n    position: relative !important;\n    flex: 0 0 230px !important;\n    width: 230px !important;\n    aspect-ratio: 2 / 3 !important;\n    border-radius: 10px !important;\n    overflow: hidden !important;\n    background: #0b1012 !important;\n    box-shadow: 0 16px 38px rgba(0,0,0,.30) !important;\n}\n.random-feature__poster-link,\n.random-feature__poster {\n    display: block !important;\n    width: 100% !important;\n    height: 100% !important;\n}\n.random-feature__poster img {\n    display: block !important;\n    width: 100% !important;\n    height: 100% !important;\n    object-fit: cover !important;\n}\n.random-feature__poster-wrap .fav-heart-btn {\n    position: absolute !important;\n    top: 10px !important;\n    left: 10px !important;\n    z-index: 8 !important;\n}\n.random-feature__poster-wrap .geo-card-badge {\n    position: absolute !important;\n    top: 10px !important;\n    right: 10px !important;\n    z-index: 8 !important;\n}\n.random-feature__poster-wrap .poster-meta-top {\n    position: absolute !important;\n    left: 9px !important;\n    right: 9px !important;\n    bottom: 9px !important;\n    z-index: 8 !important;\n    display: flex !important;\n    align-items: center !important;\n    gap: 6px !important;\n    pointer-events: auto !important;\n}\n.random-feature__poster-wrap .poster-year {\n    margin-left: auto !important;\n}\n.random-feature__poster-wrap:has(.random-series-badge) .poster-meta-top {\n    bottom: 44px !important;\n}\n.random-feature__poster-wrap .random-series-badge {\n    position: absolute !important;\n    left: 50% !important;\n    right: auto !important;\n    bottom: 8px !important;\n    transform: translateX(-50%) !important;\n    z-index: 9 !important;\n    max-width: calc(100% - 18px) !important;\n    overflow: hidden !important;\n    text-overflow: ellipsis !important;\n    white-space: nowrap !important;\n}\n\n/* Ensure the random poster IMDb/year/GEO match normal poster badges exactly. */\n.random-feature__poster-wrap .poster-imdb {\n    display: inline-flex !important;\n    align-items: center !important;\n    justify-content: center !important;\n    gap: 4px !important;\n    padding: 3px 6px !important;\n    border-radius: 4px !important;\n    background: #f5c518 !important;\n    color: #000 !important;\n    font-size: 12px !important;\n    line-height: 1.15 !important;\n    font-weight: 600 !important;\n    box-shadow: 0 2px 10px rgba(0,0,0,.24) !important;\n}\n.random-feature__poster-wrap .poster-imdb strong {\n    color: #000 !important;\n    font-size: inherit !important;\n    font-weight: 600 !important;\n}\n.random-feature__poster-wrap .poster-year {\n    display: inline-flex !important;\n    align-items: center !important;\n    justify-content: center !important;\n    padding: 4px 7px !important;\n    border-radius: 4px !important;\n    background: rgba(11,15,18,.90) !important;\n    color: #fff !important;\n    font-size: 10px !important;\n    line-height: 1.15 !important;\n    font-weight: 800 !important;\n    box-shadow: 0 2px 10px rgba(0,0,0,.24) !important;\n}\n.random-feature__poster-wrap .geo-card-badge {\n    padding: 5px 10px !important;\n    border-radius: 5px !important;\n    background: #1db954 !important;\n    color: #fff !important;\n    font-size: 12px !important;\n    line-height: 1 !important;\n    font-weight: 700 !important;\n}\n\n@media (max-width: 768px) {\n    .poster-series-badge,\n    .landscape-series-badge,\n    .season-badge,\n    .random-series-badge {\n        font-size: 10px !important;\n        padding: 5px 8px !important;\n    }\n\n    .random-feature__poster-wrap {\n        flex-basis: 150px !important;\n        width: 150px !important;\n        border-radius: 9px !important;\n    }\n    .random-feature__poster-wrap .poster-imdb {\n        font-size: 10px !important;\n        padding: 3px 5px !important;\n    }\n    .random-feature__poster-wrap .poster-year {\n        font-size: 9px !important;\n        padding: 3px 5px !important;\n    }\n    .random-feature__poster-wrap .geo-card-badge {\n        font-size: 10px !important;\n        padding: 4px 7px !important;\n    }\n}\n
/* ===== GeoFlix v48 — random landscape year alignment ===== */
/* Keep IMDb at the bottom-left and push the year to the bottom-right,
   matching the regular poster layout. */
#random-slider .landscape-image .poster-meta-top{
    left:8px!important;
    right:8px!important;
    bottom:8px!important;
    max-width:none!important;
    width:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:5px!important;
}
#random-slider .landscape-image .poster-year{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-left:auto!important;
    padding:3px 5px!important;
    border-radius:4px!important;
    font-size:9px!important;
    line-height:1!important;
    font-weight:800!important;
    background:rgba(11,15,18,.90)!important;
    color:#fff!important;
    box-shadow:0 2px 8px rgba(0,0,0,.22)!important;
}
@media(max-width:768px){
    #random-slider .landscape-image .poster-year{
        padding:2px 4px!important;
        font-size:8px!important;
    }
}

/* ===== GeoFlix v49 — landscape series year beside IMDb ===== */
/* Keep the series/episode badge on the right, and show year beside IMDb on the left. */
.landscape-image:has(.landscape-series-badge) .poster-meta-top{
    left: 8px !important;
    right: auto !important;
    bottom: 8px !important;
    max-width: 46% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 5px !important;
}
.landscape-image:has(.landscape-series-badge) .poster-year{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: 0 !important;
    padding: 4px 6px !important;
    border-radius: 4px !important;
    background: rgba(11,15,18,.90) !important;
    color: #fff !important;
    font-size: 9px !important;
    line-height: 1.1 !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.24) !important;
}
.landscape-image:has(.landscape-series-badge) .poster-imdb{
    flex: 0 0 auto !important;
}
.landscape-image .landscape-series-badge{
    right: 8px !important;
    left: auto !important;
    bottom: 8px !important;
    transform: none !important;
    max-width: 49% !important;
}

@media (max-width: 768px){
    .landscape-image:has(.landscape-series-badge) .poster-meta-top{
        max-width: 45% !important;
        gap: 4px !important;
    }
    .landscape-image:has(.landscape-series-badge) .poster-year{
        padding: 3px 5px !important;
        font-size: 8px !important;
    }
    .landscape-image .landscape-series-badge{
        max-width: 50% !important;
    }
}


/* ===== GeoFlix v50 — linked homepage headings, actor rail, supplied logo ===== */

.section-title-link{
    color:inherit!important;
    text-decoration:none!important;
    transition:color .2s ease, opacity .2s ease!important;
}
.section-title-link:hover{color:var(--green)!important}

/* Supplied GeoFlix logo */
.logo.brand-logo{
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    width:176px!important;
    height:58px!important;
    line-height:0!important;
    text-decoration:none!important;
}
.brand-logo-img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:left center!important;
}
.footer-logo.footer-brand-logo{
    display:block!important;
    width:220px!important;
    height:auto!important;
    line-height:0!important;
}
.footer-logo-img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    object-position:left center!important;
}

/* Modern actor strip built from the supplied actor folder. */
.actors-modern-section{
    margin-top:82px!important;
    overflow:hidden!important;
}
.actors-modern-section .section-heading{
    margin-bottom:20px!important;
}
.actor-top-label{
    color:#fff!important;
    font-weight:900!important;
    letter-spacing:-.02em!important;
}
.actors-modern-slider{
    display:flex!important;
    gap:18px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x proximity!important;
    scrollbar-width:none!important;
    padding:5px 2px 16px!important;
    -webkit-overflow-scrolling:touch!important;
}
.actors-modern-slider::-webkit-scrollbar{display:none!important}
.actor-card-modern{
    flex:0 0 154px!important;
    min-width:154px!important;
    text-decoration:none!important;
    color:#fff!important;
    scroll-snap-align:start!important;
    cursor:pointer!important;
}
.actor-photo-wrap{
    position:relative!important;
    display:block!important;
    width:100%!important;
    aspect-ratio:4/5!important;
    overflow:hidden!important;
    border-radius:14px!important;
    background:#0d1417!important;
    border:1px solid rgba(255,255,255,.07)!important;
    box-shadow:0 12px 30px rgba(0,0,0,.22)!important;
    transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease!important;
}
.actor-photo-wrap:after{
    content:""!important;
    position:absolute!important;
    inset:auto 0 0!important;
    height:34%!important;
    background:linear-gradient(180deg,transparent,rgba(2,8,9,.34))!important;
    pointer-events:none!important;
}
.actor-photo-wrap img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center top!important;
    transition:transform .35s cubic-bezier(.2,.7,.2,1),filter .25s ease!important;
}
.actor-name{
    display:block!important;
    margin-top:10px!important;
    padding:0 2px!important;
    color:#dce3e6!important;
    font-size:12px!important;
    line-height:1.35!important;
    font-weight:700!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    transition:color .2s ease!important;
}
.actor-card-modern:hover .actor-photo-wrap{
    transform:translateY(-4px)!important;
    border-color:rgba(0,210,106,.55)!important;
    box-shadow:0 16px 34px rgba(0,0,0,.30),0 0 0 1px rgba(0,210,106,.13)!important;
}
.actor-card-modern:hover .actor-photo-wrap img{
    transform:scale(1.035)!important;
    filter:saturate(1.04) contrast(1.02)!important;
}
.actor-card-modern:hover .actor-name{color:#fff!important}

@media(max-width:768px){
    .logo.brand-logo{
        width:122px!important;
        height:44px!important;
    }
    .footer-logo.footer-brand-logo{width:184px!important}
    .actors-modern-section{margin-top:58px!important}
    .actors-modern-slider{gap:12px!important;padding-bottom:12px!important}
    .actor-card-modern{flex-basis:112px!important;min-width:112px!important}
    .actor-photo-wrap{border-radius:12px!important}
    .actor-name{font-size:10.5px!important;margin-top:8px!important}
}
@media(max-width:420px){
    .logo.brand-logo{width:112px!important;height:40px!important}
    .actor-card-modern{flex-basis:104px!important;min-width:104px!important}
}


/* ===== GeoFlix v51 — rating interaction states ===== */
.geo-rate-btn {
    appearance: none !important;
    -webkit-appearance: none !important;
    font-family: inherit !important;
}

.geo-like-dislike.is-rating-loading .geo-rate-btn {
    pointer-events: none !important;
    opacity: .55 !important;
}

.geo-rate-btn.is-voted {
    transform: translateY(-1px) scale(1.025) !important;
}

.geo-like-dislike.has-like-vote .geo-like {
    border-color: rgba(0, 214, 112, .48) !important;
    background: rgba(0, 201, 107, .09) !important;
}

.geo-like-dislike.has-like-vote .geo-like .geo-rate-icon {
    color: #18e487 !important;
    background: rgba(0, 201, 107, .16) !important;
}

.geo-like-dislike.has-dislike-vote .geo-dislike {
    border-color: rgba(255, 91, 91, .38) !important;
    background: rgba(255, 84, 84, .075) !important;
}

.geo-like-dislike.has-dislike-vote .geo-dislike .geo-rate-icon {
    color: #ff7777 !important;
    background: rgba(255, 84, 84, .13) !important;
}


/* =====================================================================
   GeoFlix v54 — dedicated search results + TOP.GE footer integration
   ===================================================================== */

/* SEARCH PAGE */
.search-shell{
    padding-top:118px!important;
}
.search-page-modern{
    width:100%;
}
.search-page-topbar{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    margin-bottom:18px;
}
.search-page-kicker{
    display:block;
    margin-bottom:7px;
    color:var(--green);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.35px;
    text-transform:uppercase;
}
.search-page-topbar h1{
    margin:0;
    color:#fff;
    font-size:clamp(28px,3vw,44px);
    line-height:1.08;
    letter-spacing:-1px;
}
.search-results-grid.dle-content{
    margin-top:0!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:30px 16px!important;
    align-items:start!important;
}
.search-results-grid > .neon-wrapper,
.search-results-grid > .search-page,
.search-results-grid > .search,
.search-results-grid > form,
.search-results-grid > .berrors,
.search-results-grid > .info{
    grid-column:1/-1!important;
}
.search-results-grid > .movie-card,
.search-results-grid .movie-card{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    flex:none!important;
}
.search-results-grid .poster-image{
    width:100%!important;
    aspect-ratio:2/3!important;
    height:auto!important;
    border-radius:10px!important;
    overflow:hidden!important;
}
.search-results-grid .poster-image > a.poster-link,
.search-results-grid .poster-image > a.poster-link > img,
.search-results-grid .poster-image img{
    width:100%!important;
    height:100%!important;
    display:block!important;
    object-fit:cover!important;
}
.search-results-grid .card-title-link h3{
    margin-top:10px!important;
    font-size:13px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.search-results-grid .card-eng-title{
    font-size:10px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}

/* The intro card occupies the full row instead of becoming a grid item. */
.search-intro-wrap{
    grid-column:1/-1!important;
    width:100%!important;
    margin:0 0 12px!important;
}
.search-feature-card{
    position:relative;
    overflow:hidden;
    min-height:150px;
    padding:24px 26px;
    border:1px solid rgba(0,216,121,.16);
    border-radius:16px;
    background:
        radial-gradient(circle at 8% 0%,rgba(0,216,121,.15),transparent 29%),
        linear-gradient(135deg,#0c1417 0%,#081014 54%,#090d0f 100%);
    box-shadow:0 18px 45px rgba(0,0,0,.18);
}
.search-feature-card::after{
    content:"";
    position:absolute;
    width:230px;
    height:230px;
    right:-80px;
    top:-115px;
    border-radius:50%;
    border:1px solid rgba(0,216,121,.12);
    box-shadow:0 0 80px rgba(0,216,121,.08);
    pointer-events:none;
}
.search-feature-content{
    position:relative;
    z-index:1;
}
.search-feature-eyebrow{
    display:block;
    margin-bottom:7px;
    color:var(--green);
    font-size:9px;
    font-weight:900;
    letter-spacing:1.6px;
}
.search-feature-content h2{
    margin:0;
    max-width:700px;
    color:#fff;
    font-size:clamp(20px,2vw,30px);
    line-height:1.18;
    letter-spacing:-.5px;
}
.search-feature-content p{
    margin:8px 0 0;
    color:#899398;
    font-size:11px;
}
.search-feature-buttons{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:17px;
}
.search-feature-buttons .feature-btn{
    min-height:34px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 14px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:9px;
    background:rgba(255,255,255,.045);
    color:#dce3e6;
    font-size:10px;
    font-weight:800;
    transition:.2s ease;
}
.search-feature-buttons .feature-btn:hover{
    background:var(--green);
    border-color:var(--green);
    color:#061009;
    transform:translateY(-1px);
}
.search-pagination{
    margin-top:38px!important;
}

@media(max-width:1200px){
    .search-results-grid.dle-content{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
    }
}
@media(max-width:900px){
    .search-results-grid.dle-content{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        gap:24px 12px!important;
    }
}
@media(max-width:700px){
    .search-shell{
        padding-top:92px!important;
    }
    .search-page-topbar{
        margin-bottom:14px;
    }
    .search-page-topbar h1{
        font-size:27px;
    }
    .search-results-grid.dle-content{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:22px 10px!important;
    }
    .search-feature-card{
        min-height:0;
        padding:18px 16px;
        border-radius:13px;
    }
    .search-feature-content h2{
        font-size:20px;
    }
    .search-feature-content p{
        font-size:10px;
        line-height:1.5;
    }
    .search-feature-buttons{
        gap:6px;
        margin-top:14px;
    }
    .search-feature-buttons .feature-btn{
        min-height:32px;
        padding:0 11px;
        font-size:9px;
    }
}
@media(max-width:420px){
    .search-results-grid.dle-content{
        gap:20px 8px!important;
    }
    .search-results-grid .card-title-link h3{
        font-size:11px!important;
    }
    .search-results-grid .card-eng-title{
        font-size:9px!important;
    }
}


/* =====================================================================
   GeoFlix v56 — final responsive hardening
   Breakpoint audit: 320 / 360 / 390 / 430 / 768 / 900 / 1024 /
   1180 / 1366 / 1440 / 1920 / ultrawide.
   TOP.GE itself is intentionally left completely unstyled.
   ===================================================================== */

/* Safe sizing across every viewport. */
html,body{width:100%;max-width:100%;overflow-x:hidden}
body{min-width:0}
img,video,iframe,svg{max-width:100%}
.header-inner,.main-content,.inner-shell,.movie-page .container,.footer-inner,.footer-bottom,
.category-grid,.search-results-grid,.collections-grid,.poster-slider,.landscape-slider,.actors-modern-slider{min-width:0}
.poster-slider,.landscape-slider,.actors-modern-slider{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}

/* Keep the supplied TOP.GE counter exactly as counter.top.ge outputs it.
   Only the wrapper participates in footer positioning; no child/image styling. */
.footer-bottom{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:22px!important;
}
.footer-copy{justify-self:start!important;min-width:0}
.footer-topge{justify-self:end!important;align-self:center!important;margin:0!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
.footer-note{justify-self:end!important;text-align:right!important;min-width:0}

/* Wide desktop / television. */
@media (min-width:1600px){
  .header-inner,.main-content{width:min(100% - 80px,1800px)!important}
  .inner-shell{width:min(100% - 80px,1800px)!important}
  .footer-inner,.footer-bottom{width:min(100% - 80px,1500px)!important;max-width:none!important;padding-left:0!important;padding-right:0!important}
}
@media (min-width:2200px){
  .header-inner,.main-content,.inner-shell{max-width:2200px!important}
  .movie-card{flex-basis:calc((100% - 119px)/8)!important}
  .series-card{flex-basis:calc((100% - 72px)/5)!important}
}

/* Laptop / tablet landscape: switch to the compact menu before the header can collide. */
@media (max-width:1180px) and (min-width:769px){
  .header-inner{height:78px!important;padding:0 24px!important;gap:16px!important}
  .logo.brand-logo{width:150px!important;height:50px!important}
  .main-nav{display:none!important}
  .mobile-menu-btn{
    width:40px;height:40px;flex:0 0 40px;border:1px solid rgba(255,255,255,.15);border-radius:50%;
    background:rgba(8,14,17,.42);display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer
  }
  .mobile-menu-btn span{width:15px;height:1px;background:#fff}
  .mobile-menu{
    display:flex!important;position:fixed!important;top:78px!important;right:18px!important;left:auto!important;width:min(360px,calc(100vw - 36px))!important;
    max-height:calc(100dvh - 94px)!important;overflow-y:auto!important;flex-direction:column!important;padding:12px 16px!important;gap:0!important;
    background:rgba(7,12,15,.985)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:14px!important;
    box-shadow:0 24px 60px rgba(0,0,0,.42)!important;transform:translateY(-18px) scale(.98)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease!important;z-index:2500!important
  }
  .mobile-menu.open{transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  .mobile-menu>a,.mobile-nav-parent-link{display:block!important;padding:12px 5px!important;border-bottom:1px solid rgba(255,255,255,.055)!important;color:#d8dee1!important;font-size:12px!important;font-weight:700!important}
  .mobile-nav-parent-row{display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important;align-items:center!important;border-bottom:1px solid rgba(255,255,255,.055)!important}
  .mobile-nav-parent-row .mobile-nav-parent-link{border-bottom:0!important}
  .mobile-submenu-toggle{width:36px!important;height:36px!important;justify-self:end!important;border:0!important;border-radius:9px!important;background:rgba(255,255,255,.045)!important;color:#fff!important}
  .mobile-submenu{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:0!important;overflow:hidden!important;opacity:0!important;transition:.25s ease!important}
  .mobile-nav-group.open .mobile-submenu{max-height:700px!important;opacity:1!important;padding:8px 0 10px!important}
  .mobile-submenu a{padding:8px!important;font-size:10px!important;color:#9ba7ac!important}
  .header-search.open .header-search-input{width:180px!important}
  .header-search-suggestions{width:320px!important}
  .main-content{padding-left:24px!important;padding-right:24px!important}
}

/* 1024-ish tablets and smaller laptops. */
@media (max-width:1024px){
  .collections-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .collection-card{height:clamp(150px,20vw,205px)!important}
  .footer-inner{grid-template-columns:1.4fr repeat(2,minmax(0,1fr))!important;gap:34px 24px!important;padding-left:28px!important;padding-right:28px!important}
  .footer-inner .footer-column:last-child{grid-column:auto!important}
  .footer-bottom{padding-left:28px!important;padding-right:28px!important}
}

/* Phones / portrait tablets. */
@media (max-width:768px){
  .header-inner{width:100%!important;max-width:none!important}
  .main-content{width:100%!important;max-width:none!important;padding-left:14px!important;padding-right:14px!important}
  .inner-shell{width:calc(100% - 24px)!important;max-width:none!important}
  .content-section{margin-top:44px!important}
  .section-heading{gap:10px!important;min-width:0}
  .section-heading>div:first-child{min-width:0}
  .section-heading h2{font-size:clamp(19px,5.4vw,23px)!important;overflow-wrap:anywhere}
  .section-actions{flex:0 0 auto!important}
  .slider-btn{flex:0 0 34px!important}

  .movie-card{flex-basis:calc((100% - 10px)/2)!important}
  .series-card{flex-basis:min(88%,520px)!important;min-width:0!important}
  .poster-image,.landscape-image{width:100%!important}

  .collections-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .collection-card{height:clamp(128px,40vw,170px)!important}
  .collection-content{inset:auto 11px 11px!important}
  .collection-content h3{font-size:clamp(16px,5vw,21px)!important}

  .footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 20px!important;padding:34px 18px!important}
  .footer-brand{grid-column:1/-1!important}
  .footer-logo.footer-brand-logo{max-width:min(184px,60vw)!important}
  .footer-bottom{grid-template-columns:minmax(0,1fr) auto!important;gap:8px 14px!important;padding:15px 18px!important}
  .footer-copy{grid-column:1!important;grid-row:1!important}
  .footer-topge{grid-column:2!important;grid-row:1!important}
  .footer-note{grid-column:1/-1!important;grid-row:2!important;justify-self:start!important;text-align:left!important}

  .search-results-grid.dle-content,.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .search-shell{padding-top:88px!important}

  .movie-page,.movie-page .container,.movie-hero,.full-top-grid,.full-top-player{min-width:0!important;max-width:100%!important}
  .movie-hero iframe,.movie-hero video,.geoflix-player-stage iframe,.geoflix-player-stage video{max-width:100%!important}
}

/* Narrow phones, including 360/375/390/430 CSS-pixel devices. */
@media (max-width:480px){
  .header-inner{padding-left:9px!important;padding-right:9px!important;gap:6px!important}
  .logo.brand-logo{width:108px!important;height:39px!important}
  .header-actions{gap:5px!important;min-width:0!important}
  .favorite-btn,.facebook-btn,.mobile-menu-btn,.header-search-btn{width:35px!important;height:35px!important;flex:0 0 35px!important}

  /* Opening search must never force the header wider than the viewport. */
  .header-search.open{position:fixed!important;top:65px!important;left:8px!important;right:8px!important;width:auto!important;height:42px!important;z-index:3200!important}
  .header-search.open .header-search-input{width:100%!important;height:42px!important;background:rgba(6,11,13,.985)!important}
  .header-search.open .header-search-suggestions.live-search-results.active{top:48px!important;left:0!important;right:0!important;width:100%!important;max-height:calc(100dvh - 130px)!important}

  .hero{max-width:100vw!important}
  body.home-page .hero{height:68svh!important;min-height:500px!important}
  body.home-page .hero-content{padding-left:15px!important;padding-right:15px!important}
  body.home-page .hero h1{font-size:clamp(25px,8vw,30px)!important;max-width:calc(100vw - 30px)!important}

  .main-content{padding-left:10px!important;padding-right:10px!important}
  .content-section{margin-top:38px!important}
  .section-heading{align-items:center!important}
  .section-heading h2{font-size:18px!important}
  .random-refresh{height:34px!important;padding:0 9px!important;font-size:10px!important}
  .slider-btn{width:32px!important;height:32px!important;font-size:20px!important}

  .collections-grid{gap:8px!important}
  .collection-card{height:126px!important;border-radius:9px!important}
  .collection-content h3{font-size:16px!important}
  .collection-content span,.collection-content strong{font-size:8px!important}

  .actors-modern-slider{gap:10px!important}
  .actor-card-modern{flex-basis:100px!important;min-width:100px!important}

  .footer-inner{grid-template-columns:1fr!important;gap:22px!important;padding:30px 14px!important}
  .footer-brand{grid-column:auto!important}
  .footer-column{gap:8px!important}
  .footer-bottom{padding-left:14px!important;padding-right:14px!important;font-size:9px!important}

  .search-page-topbar h1{font-size:24px!important}
  .search-results-grid.dle-content,.category-grid{gap:18px 8px!important}
  .search-results-grid .card-title-link h3,.category-grid .card-title-link h3{font-size:11px!important}

  .geo-details-modal{padding:8px!important}
  .geo-details-dialog{width:100%!important;max-height:94dvh!important;border-radius:16px!important}
}

@media (max-width:340px){
  .logo.brand-logo{width:100px!important}
  .header-actions{gap:4px!important}
  .favorite-btn,.facebook-btn,.mobile-menu-btn,.header-search-btn{width:33px!important;height:33px!important;flex-basis:33px!important}
  .main-content{padding-left:8px!important;padding-right:8px!important}
  .movie-card{flex-basis:calc((100% - 8px)/2)!important}
  .poster-slider{gap:8px!important}
  .collections-grid{grid-template-columns:1fr!important}
  .collection-card{height:150px!important}
}

/* Short landscape screens (small laptops / rotated tablets): prevent hero trapping the page. */
@media (min-width:769px) and (max-height:650px){
  #geoflix-hero.hero{height:560px!important;min-height:500px!important}
  #geoflix-hero .hero-content{padding-top:92px!important;padding-bottom:36px!important}
}


/* =====================================================================
   GeoFlix v57 — TOP.GE right position + 701–900px fullstory player fix
   ===================================================================== */

/* Keep TOP.GE completely original: only place its wrapper in the right column.
   No styles are applied to #top-ge-counter-container or to TOP.GE's own output. */
.footer-bottom{
    grid-template-columns:minmax(0,1fr) auto auto!important;
}
.footer-copy{
    grid-column:1!important;
    justify-self:start!important;
}
.footer-note{
    grid-column:2!important;
    justify-self:end!important;
    text-align:right!important;
}
.footer-topge{
    grid-column:3!important;
    justify-self:end!important;
    align-self:center!important;
    margin:0!important;
    padding:0!important;
    background:none!important;
    border:0!important;
    box-shadow:none!important;
}

/* The old CSS generations leave a 2-column desktop player grid active at 701–900px.
   Force this breakpoint to be a clean, full-width, single-column player layout. */
@media (min-width:701px) and (max-width:900px){
    .movie-page,
    .movie-hero{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
    }

    .movie-hero>.container{
        display:block!important;
        width:min(860px,calc(100% - 28px))!important;
        max-width:860px!important;
        min-width:0!important;
        margin-left:auto!important;
        margin-right:auto!important;
        padding-left:0!important;
        padding-right:0!important;
    }

    .movie-hero .full-player-poster{
        display:none!important;
    }

    .movie-hero>.container>.unified-player-card,
    .movie-hero>.container>.page__player{
        display:block!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        height:auto!important;
        grid-column:1/-1!important;
        grid-row:auto!important;
        box-sizing:border-box!important;
        margin:0!important;
        padding:10px!important;
        align-self:stretch!important;
    }

    .movie-hero .geoflix-source-tabs,
    .movie-hero .unified-player-tabs,
    .movie-hero .page__player-controls{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        box-sizing:border-box!important;
        margin:0 0 10px!important;
        overflow-x:auto!important;
        overflow-y:hidden!important;
        flex-wrap:nowrap!important;
        scrollbar-width:none!important;
        -webkit-overflow-scrolling:touch!important;
    }

    .movie-hero .geoflix-source-tabs::-webkit-scrollbar,
    .movie-hero .unified-player-tabs::-webkit-scrollbar,
    .movie-hero .page__player-controls::-webkit-scrollbar{
        display:none!important;
    }

    .movie-hero .geoflix-source-tabs .unified-player-tab,
    .movie-hero .unified-player-tabs .unified-player-tab,
    .movie-hero .tabs-block__select>span{
        flex:0 0 auto!important;
    }

    .movie-hero .geoflix-player-stage,
    .movie-hero .player-card.player-wrapper{
        display:block!important;
        position:relative!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        height:auto!important;
        min-height:0!important;
        aspect-ratio:16/9!important;
        margin:0!important;
        padding:0!important;
        overflow:hidden!important;
        border-radius:11px!important;
        background:#000!important;
        box-sizing:border-box!important;
    }

    .movie-hero .geoflix-player-stage>.unified-player-pane.active,
    .movie-hero .geoflix-player-stage .movie-player-wrap,
    .movie-hero .geoflix-player-stage .movie-poster,
    .movie-hero .geoflix-player-stage .movie-frame,
    .movie-hero .player-card.player-wrapper .poster{
        display:block!important;
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        height:100%!important;
        min-height:0!important;
        aspect-ratio:auto!important;
        margin:0!important;
        padding:0!important;
    }

    .movie-hero .geoflix-player-stage iframe,
    .movie-hero .geoflix-player-stage video,
    .movie-hero .geoflix-player-stage embed,
    .movie-hero .geoflix-player-stage object,
    .movie-hero .player-card.player-wrapper iframe,
    .movie-hero .player-card.player-wrapper video,
    .movie-hero .player-card.player-wrapper #videoPlayer,
    .movie-hero .geoflix-player-stage .movie-poster img,
    .movie-hero .player-card.player-wrapper .poster img{
        display:block!important;
        width:100%!important;
        max-width:100%!important;
        height:100%!important;
        min-height:100%!important;
        aspect-ratio:auto!important;
        border:0!important;
        object-fit:cover!important;
        box-sizing:border-box!important;
    }

    .episodes-menu{
        right:10px!important;
        max-width:calc(100% - 20px)!important;
    }
}

/* On phones the counter stays at the right of the copyright row; TOP.GE itself remains untouched. */
@media (max-width:768px){
    .footer-bottom{
        grid-template-columns:minmax(0,1fr) auto!important;
    }
    .footer-copy{
        grid-column:1!important;
        grid-row:1!important;
    }
    .footer-topge{
        grid-column:2!important;
        grid-row:1!important;
        justify-self:end!important;
    }
    .footer-note{
        grid-column:1/-1!important;
        grid-row:2!important;
        justify-self:start!important;
        text-align:left!important;
    }
}


/* =====================================================================
   GeoFlix v58 — 769–1180 Films submenu button + footer meta alignment
   ===================================================================== */

/* Laptop / tablet landscape menu:
   make the Films submenu control visible and use the same working state as JS. */
@media (min-width:769px) and (max-width:1180px){
    .mobile-nav-group{
        width:100%!important;
    }

    .mobile-nav-parent-row{
        display:grid!important;
        grid-template-columns:minmax(0,1fr) 42px!important;
        align-items:center!important;
        width:100%!important;
        border-bottom:1px solid rgba(255,255,255,.055)!important;
    }

    .mobile-nav-parent-row .mobile-nav-parent-link{
        min-width:0!important;
        border-bottom:0!important;
        padding:12px 5px!important;
    }

    .mobile-submenu-toggle{
        display:grid!important;
        place-items:center!important;
        width:36px!important;
        height:36px!important;
        min-width:36px!important;
        min-height:36px!important;
        justify-self:end!important;
        padding:0!important;
        border:1px solid rgba(255,255,255,.09)!important;
        border-radius:9px!important;
        background:rgba(255,255,255,.045)!important;
        color:#fff!important;
        cursor:pointer!important;
        opacity:1!important;
        visibility:visible!important;
    }

    .menu-chevron{
        display:block!important;
        position:relative!important;
        width:10px!important;
        height:10px!important;
        flex:0 0 10px!important;
        transition:transform .22s ease!important;
    }

    .menu-chevron::before{
        content:""!important;
        position:absolute!important;
        inset:0 2px 2px 0!important;
        border-right:1.8px solid var(--green)!important;
        border-bottom:1.8px solid var(--green)!important;
        transform:rotate(45deg)!important;
    }

    .mobile-nav-group.submenu-open .menu-chevron{
        transform:rotate(180deg)!important;
    }

    .mobile-submenu{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:4px 6px!important;
        width:100%!important;
        max-height:0!important;
        padding:0 2px!important;
        overflow:hidden!important;
        opacity:0!important;
        transition:max-height .3s ease,opacity .2s ease,padding .3s ease!important;
    }

    /* JS toggles .submenu-open — this is the state that must open the panel. */
    .mobile-nav-group.submenu-open .mobile-submenu{
        max-height:760px!important;
        opacity:1!important;
        padding:8px 2px 11px!important;
    }

    .mobile-submenu a{
        min-width:0!important;
        padding:8px 9px!important;
        border:0!important;
        border-radius:8px!important;
        background:rgba(255,255,255,.03)!important;
        color:#aeb8bd!important;
        font-size:10px!important;
        line-height:1.35!important;
        white-space:normal!important;
    }
}

/* Footer bottom:
   copyright stays on the left.
   On the right: first the original TOP.GE counter, then the Georgian note beside it. */
.footer-bottom{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:20px!important;
}

.footer-copy{
    flex:0 1 auto!important;
    min-width:0!important;
}

.footer-meta-right{
    margin-left:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:12px!important;
    flex:0 0 auto!important;
    min-width:0!important;
}

.footer-topge{
    display:block!important;
    flex:0 0 auto!important;
    margin:0!important;
    padding:0!important;
    background:none!important;
    border:0!important;
    box-shadow:none!important;
}

/* Intentionally do not style TOP.GE's own generated content. */

.footer-note{
    display:block!important;
    flex:0 1 auto!important;
    margin:0!important;
    white-space:nowrap!important;
    text-align:right!important;
}

/* Narrow devices:
   copyright can occupy its own row, but TOP.GE and the note always remain SIDE BY SIDE. */
@media (max-width:620px){
    .footer-bottom{
        flex-wrap:wrap!important;
        gap:10px 12px!important;
    }

    .footer-copy{
        width:100%!important;
        flex-basis:100%!important;
    }

    .footer-meta-right{
        width:100%!important;
        margin-left:0!important;
        justify-content:flex-start!important;
        gap:9px!important;
    }

    .footer-note{
        white-space:normal!important;
        text-align:left!important;
        font-size:9px!important;
        line-height:1.3!important;
    }
}

@media (max-width:360px){
    .footer-meta-right{
        gap:7px!important;
    }

    .footer-note{
        font-size:8px!important;
    }
}


/* =====================================================================
   GeoFlix v59 — iPhone header search stays on the SAME header row
   ===================================================================== */

/* Override the older <=480px rule that moved the open search below the header. */
@media (max-width:480px){
    .header-inner{
        flex-wrap:nowrap!important;
        align-items:center!important;
        overflow:visible!important;
    }

    .header-actions{
        flex-wrap:nowrap!important;
        align-items:center!important;
        justify-content:flex-end!important;
        min-width:0!important;
        max-width:calc(100% - 108px - 6px)!important;
        overflow:visible!important;
    }

    /* While search is open, temporarily free space occupied by the two secondary icons.
       The menu button stays visible and the search expands exactly in place. */
    .header-actions.search-is-open .favorite-btn,
    .header-actions.search-is-open .facebook-btn{
        display:none!important;
    }

    .header-actions.search-is-open{
        gap:6px!important;
        flex:1 1 auto!important;
        max-width:none!important;
    }

    .header-actions.search-is-open .header-search{
        order:1!important;
    }

    .header-actions.search-is-open .mobile-menu-btn{
        order:2!important;
        display:flex!important;
        flex:0 0 35px!important;
    }

    .header-search.open{
        position:relative!important;
        top:auto!important;
        right:auto!important;
        bottom:auto!important;
        left:auto!important;

        /* 320px -> ~142px, 375/390/430px -> up to 190px.
           This keeps logo + search + menu on one row even on narrow iPhones. */
        width:clamp(132px,calc(100vw - 178px),190px)!important;
        flex:0 1 clamp(132px,calc(100vw - 178px),190px)!important;
        min-width:132px!important;
        max-width:190px!important;
        height:38px!important;

        margin:0!important;
        transform:none!important;
        z-index:3200!important;
    }

    .header-search.open .header-search-input{
        width:100%!important;
        min-width:0!important;
        height:38px!important;
        padding:0 61px 0 12px!important;
        border-radius:999px!important;
        background:rgba(6,11,13,.985)!important;
    }

    .header-search.open .header-search-btn{
        position:absolute!important;
        top:1px!important;
        right:1px!important;
        width:36px!important;
        height:36px!important;
        flex:0 0 36px!important;
    }

    .header-search.open .header-search-close{
        position:absolute!important;
        display:grid!important;
        place-items:center!important;
        top:4px!important;
        right:32px!important;
        width:29px!important;
        height:29px!important;
    }

    /* Results may drop below the header; only the SEARCH CONTROL itself stays inline. */
    .header-search.open .header-search-suggestions.live-search-results.active{
        position:fixed!important;
        top:66px!important;
        left:8px!important;
        right:8px!important;
        width:auto!important;
        max-width:none!important;
        max-height:calc(100dvh - 78px)!important;
        margin:0!important;
        z-index:3199!important;
    }
}

/* Extra-tight iPhones / older compact devices. */
@media (max-width:350px){
    .logo.brand-logo{
        width:96px!important;
        flex:0 0 96px!important;
    }

    .header-actions{
        max-width:calc(100% - 96px - 5px)!important;
    }

    .header-actions.search-is-open .mobile-menu-btn{
        width:33px!important;
        height:33px!important;
        flex-basis:33px!important;
    }

    .header-search.open{
        width:clamp(126px,calc(100vw - 163px),170px)!important;
        flex-basis:clamp(126px,calc(100vw - 163px),170px)!important;
        min-width:126px!important;
    }
}


/* =====================================================================
   GeoFlix v62 — ONLY fix: hide homepage genre panel on 769px+
   This panel is mobile-only; without a desktop base rule its genre links
   were rendering as plain text behind the header.
   ===================================================================== */
@media (min-width:769px){
    .home-genre-panel{
        display:none!important;
    }
}


/* ===== GeoFlix hero responsive poster source =====
   Desktop/tablet: big_poster
   Mobile <= 768px: first_poster
   Each side falls back to the other poster field when its preferred field is empty.
*/
.hero-bg-desktop,
.hero-bg-mobile {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.hero-bg-mobile {
    display: none;
}

.hero-bg-desktop img,
.hero-bg-mobile img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 768px) {
    .hero-bg-desktop {
        display: none;
    }

    .hero-bg-mobile {
        display: block;
    }
}
