/* CineDoblee portada v3 - archivo independiente para evitar CSS cacheado */
html { box-sizing: border-box !important; }
*, *::before, *::after { box-sizing: inherit !important; }
html, body { width: 100% !important; min-width: 0 !important; }
body.home {
  margin: 0 !important;
  background: #07090e !important;
  color: #fff !important;
  overflow-x: hidden !important;
}
body.home #marco {
  display: block !important;
  float: none !important;
  width: min(1280px, calc(100% - 32px)) !important;
  min-width: 0 !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
body.home #cabeza { width: 100% !important; height: 140px !important; overflow: hidden !important; position: relative !important; }
body.home #logo, body.home #logo h1 { width: 100% !important; height: 100% !important; }
body.home #logo h1 a {
  display: block !important;
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  height: 140px !important;
  background-position: center !important;
  background-size: cover !important;
}
body.home .banner-top { position: absolute !important; top: 25px !important; right: 18px !important; width: auto !important; max-width: 62% !important; height: auto !important; margin: 0 !important; float: none !important; }
body.home .banner-top img { display: block !important; width: 100% !important; max-width: 728px !important; height: auto !important; }
body.home #menu { width: 100% !important; min-width: 0 !important; overflow-x: auto !important; }
body.home #menu ul { white-space: nowrap !important; }
body.home #estrenos, body.home .front-promos, body.home .home-wrapper { display: block !important; float: none !important; width: 100% !important; min-width: 0 !important; max-width: none !important; }
body.home #estrenos { margin: 22px 0 0 !important; }
body.home .marco-filas { width: 100% !important; min-width: 0 !important; overflow: hidden !important; }
body.home .front-promos { display: grid !important; grid-template-columns: 1fr !important; gap: 14px !important; margin: 16px 0 26px !important; }
body.home .front-promos > *, body.home .front-promos img, body.home .front-promos .metaslider, body.home .front-promos .flexslider { width: 100% !important; max-width: 100% !important; height: auto !important; }
body.home .home-wrapper { margin: 0 auto !important; padding: 6px 0 42px !important; }
body.home .home-section { display: block !important; clear: both !important; float: none !important; width: 100% !important; min-width: 0 !important; margin: 0 0 42px !important; }
body.home .home-section__header { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 20px !important; width: 100% !important; margin: 0 0 18px !important; padding: 0 2px 12px !important; border-bottom: 1px solid rgba(255,255,255,.14) !important; }
body.home .home-section__header h2 { margin: 0 !important; color: #fff !important; font: 700 23px/1.2 Arial,Helvetica,sans-serif !important; }
body.home .home-section__more { flex: 0 0 auto !important; color: #ff4961 !important; font: 700 12px/1.2 Arial,Helvetica,sans-serif !important; text-transform: uppercase !important; }
body.home .media-grid {
  display: grid !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  gap: 22px 14px !important;
  align-items: start !important;
}
body.home .media-card {
  display: block !important;
  float: none !important;
  position: relative !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: #fff !important;
  background: #11151e !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.28) !important;
}
body.home .media-card__poster { display: block !important; position: relative !important; width: 100% !important; height: auto !important; aspect-ratio: 2/3 !important; overflow: hidden !important; background: #202634 !important; }
body.home .media-card__poster img { display: block !important; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover !important; }
body.home .media-card__body { display: block !important; padding: 11px 11px 12px !important; }
body.home .media-card__body h3 { min-height: 34px !important; margin: 0 0 8px !important; overflow: hidden !important; font: 700 13px/17px Arial,Helvetica,sans-serif !important; text-align: left !important; }
body.home .media-card__body h3 a { color: #f5f6f8 !important; }
body.home .media-card__meta { display: flex !important; justify-content: space-between !important; gap: 8px !important; color: #9199a9 !important; font-size: 10px !important; }
body.home .media-card__badge { position: absolute !important; top: 9px !important; left: 9px !important; z-index: 3 !important; padding: 5px 8px !important; color: #fff !important; background: #ed304c !important; border-radius: 4px !important; font: 800 9px/1 Arial,Helvetica,sans-serif !important; }
body.home .media-card__overlay { position: absolute !important; inset: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important; opacity: 0; background: linear-gradient(to top,rgba(7,9,14,.92),rgba(7,9,14,.06) 65%) !important; }
body.home .media-card:hover .media-card__overlay { opacity: 1 !important; }
body.home .media-card__overlay span { padding: 8px 13px !important; color: #fff !important; font-size: 11px !important; border: 1px solid rgba(255,255,255,.72) !important; border-radius: 30px !important; }
body.home .home-section__empty { width: 100% !important; min-height: 125px !important; padding: 24px !important; color: #9ea6b6 !important; text-align: center !important; background: rgba(18,22,31,.78) !important; border: 1px dashed rgba(255,255,255,.16) !important; border-radius: 8px !important; }
body.home #footer { clear: both !important; float: none !important; width: 100% !important; }
@media (max-width:1050px){body.home .media-grid{grid-template-columns:repeat(6,minmax(0,1fr)) !important;}}
@media (max-width:860px){body.home #marco{width:calc(100% - 24px) !important;}body.home .media-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}}
@media (max-width:680px){body.home #marco{width:calc(100% - 20px) !important;}body.home #cabeza,body.home #logo h1 a{height:105px !important;}body.home .media-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px 11px !important;}body.home .home-section__header h2{font-size:19px !important;}}
@media (max-width:480px){body.home #marco{width:calc(100% - 16px) !important;}body.home .media-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}body.home .home-section__header h2{font-size:17px !important;}}

/* CineDoblee portada V4 - tema claro */
body.home {
  background: #000000 !important;
  color: #171a21 !important;
}
body.home #marco {
  background: #ffffff !important;
  padding: 0 18px !important;
  box-shadow: 0 0 28px rgba(0,0,0,.10) !important;
}
body.home .home-wrapper {
  background: #ffffff !important;
}
body.home .home-section__header {
  border-bottom-color: #d9dde5 !important;
}
body.home .home-section__header h2 {
  color: #171a21 !important;
}
body.home .home-section__more {
  color: #e32645 !important;
}
body.home .media-card {
  color: #171a21 !important;
  background: #ffffff !important;
  border-color: #dfe3ea !important;
  box-shadow: 0 5px 16px rgba(20,27,38,.12) !important;
}
body.home .media-card__poster {
  background: #e9edf3 !important;
}
body.home .media-card__body h3 a {
  color: #171a21 !important;
}
body.home .media-card__meta {
  color: #697386 !important;
}
body.home .home-section__empty {
  color: #5e6878 !important;
  background: #f8f9fb !important;
  border-color: #cfd5df !important;
}
body.home .media-card__overlay {
  background: linear-gradient(to top,rgba(14,18,26,.88),rgba(14,18,26,.04) 65%) !important;
}
@media (max-width:860px){
  body.home #marco{padding:0 12px !important;}
}
@media (max-width:480px){
  body.home #marco{padding:0 8px !important;}
}

/* V14: se elimina el segundo banner; se conserva solo el logo principal */
body.home #cabeza {
  height: 152px !important;
}
body.home #logo,
body.home #logo h1,
body.home #logo h1 a {
  height: 152px !important;
}
@media (max-width:680px){
  body.home #cabeza,
  body.home #logo,
  body.home #logo h1,
  body.home #logo h1 a {
    height:105px !important;
  }
}


/* Header search */
#menu{
display:flex!important;
align-items:center;
justify-content:space-between;
gap:16px;
}
#menu > ul{flex:1;}
.header-search{display:flex;align-items:center;gap:6px;flex:0 0 320px;}
.header-search input[type=text]{width:100%;padding:8px 10px;border:1px solid #555;border-radius:4px;}
.header-search input[type=submit]{padding:8px 12px;background:#1f5fbf;color:#fff;border:0;border-radius:4px;cursor:pointer;}
@media(max-width:900px){
#menu{display:block!important;}
.header-search{margin-top:8px;flex:none;width:100%;}
}

/* V16: buscador visible en el encabezado */
#menu {
    height: auto !important;
    min-height: 40px !important;
    overflow: visible !important;
    padding: 0 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
}

#menu > ul {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
}

.header-search {
    display: block !important;
    flex: 0 0 300px !important;
    width: 300px !important;
    margin-left: 12px !important;
}

.header-search .search-form {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    gap: 5px !important;
}

.header-search input[type="text"],
.header-search input[type="search"] {
    display: block !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 30px !important;
    padding: 5px 8px !important;
    border: 1px solid #777 !important;
    border-radius: 3px !important;
    background: #fff !important;
    color: #222 !important;
    font-size: 11px !important;
}

.header-search input[type="submit"] {
    display: block !important;
    flex: 0 0 auto !important;
    height: 30px !important;
    padding: 0 11px !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: #37444e !important;
    color: #fff !important;
    cursor: pointer !important;
    font-size: 11px !important;
}

/* Cuando el menú completo no cabe, el buscador baja a una segunda línea */
@media (max-width: 1180px) {
    #menu {
        display: flex !important;
        flex-wrap: wrap !important;
        padding-bottom: 7px !important;
    }

    #menu > ul {
        flex: 1 1 100% !important;
        width: 100% !important;
    }

    .header-search {
        flex: 0 0 360px !important;
        width: 360px !important;
        max-width: 100% !important;
        margin: 6px 0 0 auto !important;
    }
}

@media (max-width: 520px) {
    .header-search {
        flex-basis: 100% !important;
        width: 100% !important;
    }
}

/* V17: resultados y sugerencias del buscador */
.search-form--autocomplete { position: relative !important; }
.search-suggestions {
    display: none;
    position: absolute;
    z-index: 99999;
    top: calc(100% + 5px);
    right: 0;
    width: min(430px, 92vw);
    max-height: 430px;
    overflow-y: auto;
    background: #fff;
    border: 1px solid #cfd4dc;
    border-radius: 5px;
    box-shadow: 0 12px 30px rgba(0,0,0,.28);
}
.search-suggestions.is-visible { display: block; }
.search-suggestion-item {
    display: flex !important;
    align-items: center;
    gap: 10px;
    padding: 8px;
    color: #16191f !important;
    text-decoration: none !important;
    border-bottom: 1px solid #eceff3;
    white-space: normal !important;
}
.search-suggestion-item:last-child { border-bottom: 0; }
.search-suggestion-item:hover { background: #f3f5f8; }
.search-suggestion-item img {
    flex: 0 0 42px;
    width: 42px;
    height: 62px;
    object-fit: cover;
    border-radius: 3px;
}
.search-suggestion-item span { min-width: 0; }
.search-suggestion-item strong {
    display: block;
    overflow: hidden;
    color: #171a21;
    font-size: 12px;
    line-height: 16px;
    text-overflow: ellipsis;
}
.search-suggestion-item small {
    display: block;
    margin-top: 3px;
    color: #747d8c;
    font-size: 10px;
}
.search-suggestion-status { padding: 14px; color: #667080; font-size: 12px; text-align: center; }

body.search { background: #000 !important; }
body.search #marco {
    width: min(1280px, calc(100% - 32px)) !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    background: #fff !important;
    padding: 0 18px !important;
}
body.search #caja {
    display: block !important;
    float: none !important;
    width: 100% !important;
    min-height: 420px;
    margin: 0 !important;
    padding: 24px 0 40px !important;
    background: #fff !important;
}
.search-results-page { width: 100%; }
.search-results-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
    padding-bottom: 14px;
    border-bottom: 1px solid #d9dde5;
}
.search-results-head h1 { margin: 0; color: #171a21; font: 700 23px/1.25 Arial,sans-serif; }
.search-results-head h1 span { color: #d91f42; }
.search-results-head .search-form { display: flex; gap: 6px; width: min(420px, 100%); }
.search-results-head input[type="text"],
.search-results-head input[type="search"] { flex: 1; min-width: 0; padding: 9px 11px; border: 1px solid #bbc2cc; border-radius: 4px; }
.search-results-head input[type="submit"] { padding: 9px 15px; border: 0; border-radius: 4px; background: #d91f42; color: #fff; cursor: pointer; }
.search-results-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 22px 14px;
}
.search-result-card {
    overflow: hidden;
    background: #fff;
    border: 1px solid #dfe3ea;
    border-radius: 7px;
    box-shadow: 0 5px 16px rgba(20,27,38,.12);
}
.search-result-poster { display: block; width: 100%; aspect-ratio: 2/3; overflow: hidden; background: #e9edf3; }
.search-result-poster img { display: block; width: 100%; height: 100%; object-fit: cover; }
.search-result-body { padding: 10px; }
.search-result-body h2 { min-height: 48px; margin: 0 0 8px; font: 700 13px/16px Arial,sans-serif; overflow: hidden; }
.search-result-body h2 a { color: #171a21; text-decoration: none; }
.search-result-meta { display: flex; justify-content: space-between; gap: 8px; color: #737d8d; font-size: 10px; }
.search-no-results { padding: 70px 20px; color: #626c7b; text-align: center; background: #f7f8fa; border: 1px dashed #cbd1da; border-radius: 7px; }
.search-no-results h2 { margin-top: 0; color: #171a21; }
.search-pagination { margin-top: 28px; text-align: center; }
.search-pagination .nav-links { display: inline-flex; gap: 6px; flex-wrap: wrap; }
.search-pagination a, .search-pagination span { padding: 8px 11px; background: #f0f2f5; color: #252a32; border-radius: 4px; text-decoration: none; }
.search-pagination .current { background: #d91f42; color: #fff; }
@media(max-width:1100px){.search-results-grid{grid-template-columns:repeat(6,minmax(0,1fr));}}
@media(max-width:900px){.search-results-grid{grid-template-columns:repeat(4,minmax(0,1fr));}.search-results-head{align-items:stretch;flex-direction:column;}.search-results-head .search-form{width:100%;}}
@media(max-width:600px){body.search #marco{width:calc(100% - 16px)!important;padding:0 8px!important;}.search-results-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* V19: el buscador lateral usa el mismo formulario inteligente del encabezado */
.sidebar-smart-search {
    position: relative !important;
    overflow: visible !important;
}
.sidebar-smart-search .search-form {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    width: 100% !important;
    margin: 0 !important;
}
.sidebar-smart-search .search-form input[type="text"],
.sidebar-smart-search .search-form input[type="search"] {
    display: block !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 32px !important;
    padding: 6px 8px !important;
    border: 1px solid #777 !important;
    border-radius: 3px !important;
    background: #fff !important;
    color: #222 !important;
    font-size: 12px !important;
}
.sidebar-smart-search .search-form input[type="submit"] {
    display: block !important;
    flex: 0 0 auto !important;
    height: 32px !important;
    padding: 0 10px !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: #37444e !important;
    color: #fff !important;
    cursor: pointer !important;
    font-size: 11px !important;
}
.sidebar-smart-search .search-suggestions {
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}

/* V28: reparación definitiva de sugerencias del buscador superior */
body.home #menu,
body.archive #menu,
body.search #menu,
body.category #menu,
body.tag #menu {
    position: relative !important;
    z-index: 100000 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
}

#menu .header-search,
#menu .header-search .search-form,
#menu .search-form--autocomplete {
    position: relative !important;
    z-index: 100001 !important;
    overflow: visible !important;
}

#menu .header-search .search-suggestions {
    position: absolute !important;
    top: calc(100% + 5px) !important;
    right: 0 !important;
    left: auto !important;
    z-index: 100002 !important;
    width: min(430px, 92vw) !important;
    max-height: 430px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

body.home #estrenos,
body.home .front-promos,
body.home .home-wrapper {
    position: relative !important;
    z-index: 1 !important;
}

/* El desplazamiento horizontal queda limitado a la lista del menú,
   sin recortar verticalmente el panel de sugerencias. */
body.home #menu > ul {
    position: relative !important;
    z-index: 1 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
}

body.home #menu .header-search {
    z-index: 100001 !important;
}

/* CineDoblee PRO V33 - Top 5 semanal */
.cdb-weekly-top {
    margin: 0 0 34px;
    padding: 20px 22px 24px;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(18,19,26,.98), rgba(12,13,19,.98));
    border: 1px solid rgba(255,184,0,.22);
    border-radius: 12px;
    box-shadow: 0 16px 38px rgba(0,0,0,.26);
}

.cdb-weekly-top__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.cdb-weekly-top__header h2 {
    margin: 0;
    color: #ffbd00;
    font-size: 19px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .2px;
}

.cdb-weekly-top__header a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    color: #ffbd00;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
    border: 1px solid rgba(255,189,0,.24);
    border-radius: 7px;
    background: rgba(255,255,255,.02);
}

.cdb-weekly-top__grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px;
}

.cdb-weekly-top__item {
    position: relative;
    min-width: 0;
    padding-left: 28px;
}

.cdb-weekly-top__number {
    position: absolute;
    left: 0;
    bottom: 29px;
    z-index: 0;
    color: #11131a;
    font-size: clamp(82px, 8vw, 132px);
    font-weight: 1000;
    line-height: .72;
    -webkit-text-stroke: 3px #ffbd00;
    text-shadow: 0 5px 18px rgba(255,177,0,.18);
}

.cdb-weekly-top__poster {
    position: relative;
    z-index: 1;
    display: block;
    aspect-ratio: 2 / 3;
    margin-left: 24px;
    overflow: hidden;
    border-radius: 8px;
    background: #1b1d27;
    box-shadow: 0 10px 20px rgba(0,0,0,.34);
    transform: translateZ(0);
}

.cdb-weekly-top__poster img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .28s ease;
}

.cdb-weekly-top__overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    opacity: 0;
    background: rgba(0,0,0,.58);
    transition: opacity .2s ease;
}

.cdb-weekly-top__poster:hover img { transform: scale(1.055); }
.cdb-weekly-top__poster:hover .cdb-weekly-top__overlay { opacity: 1; }

.cdb-weekly-top__item h3 {
    position: relative;
    z-index: 2;
    margin: 10px 0 0 24px;
    font-size: 12px;
    line-height: 1.35;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.cdb-weekly-top__item h3 a { color: #f7f7f8; text-decoration: none; }
.cdb-weekly-top__item h3 a:hover { color: #ffbd00; }

@media (max-width: 900px) {
    .cdb-weekly-top__grid {
        display: flex;
        gap: 18px;
        overflow-x: auto;
        padding: 2px 2px 12px;
        scroll-snap-type: x mandatory;
        scrollbar-width: thin;
    }
    .cdb-weekly-top__item {
        flex: 0 0 180px;
        scroll-snap-align: start;
    }
}

@media (max-width: 520px) {
    .cdb-weekly-top { padding: 17px 14px 20px; }
    .cdb-weekly-top__header h2 { font-size: 16px; }
    .cdb-weekly-top__header a { padding: 7px 9px; }
    .cdb-weekly-top__item { flex-basis: 150px; }
    .cdb-weekly-top__number { font-size: 88px; }
}

/* V34 - protección de estructura del ranking semanal */
.home-wrapper .cdb-weekly-top,
.cdb-weekly-top {
    box-sizing: border-box;
    width: 100%;
    clear: both;
}
.cdb-weekly-top *,
.cdb-weekly-top *::before,
.cdb-weekly-top *::after {
    box-sizing: border-box;
}


/* CineDoblee PRO V35 - carrusel principal modernizado, conserva 7 portadas visibles */
body.home #estrenos {
    margin: 24px 0 28px !important;
    padding: 18px 18px 20px !important;
    background: linear-gradient(180deg, rgba(18,19,26,.99), rgba(9,10,15,.99)) !important;
    border: 1px solid rgba(255,189,0,.52) !important;
    border-radius: 14px !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.04) !important;
    overflow: hidden !important;
}
body.home .cdb-carousel-heading {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    margin: 0 6px 16px !important;
    padding-bottom: 13px !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
}
body.home .cdb-carousel-heading__text {
    display: flex !important;
    align-items: center !important;
    gap: 11px !important;
}
body.home .cdb-carousel-heading__icon {
    display: grid !important;
    place-items: center !important;
    width: 35px !important;
    height: 35px !important;
    color: #11131a !important;
    background: linear-gradient(135deg,#ffd35a,#ff9f1a) !important;
    border-radius: 10px !important;
    box-shadow: 0 6px 18px rgba(255,166,0,.26) !important;
    font-size: 17px !important;
}
body.home .cdb-carousel-heading h2 {
    margin: 0 !important;
    color: #fff !important;
    font: 800 20px/1.15 Arial,Helvetica,sans-serif !important;
    text-transform: uppercase !important;
    letter-spacing: .35px !important;
}
body.home .cdb-carousel-heading h2::after {
    content: "";
    display: inline-block;
    width: 72px;
    height: 2px;
    margin: 0 0 5px 13px;
    background: linear-gradient(90deg,#ffbd00,transparent);
    vertical-align: middle;
}
body.home .cdb-carousel-heading p {
    margin: 5px 0 0 !important;
    color: #9ca4b2 !important;
    font: 400 11px/1.3 Arial,Helvetica,sans-serif !important;
}
body.home .cdb-carousel-heading__more {
    flex: 0 0 auto !important;
    padding: 9px 14px !important;
    color: #ffbd00 !important;
    background: rgba(255,189,0,.06) !important;
    border: 1px solid rgba(255,189,0,.52) !important;
    border-radius: 999px !important;
    text-decoration: none !important;
    font: 800 10px/1 Arial,Helvetica,sans-serif !important;
    text-transform: uppercase !important;
    transition: .22s ease !important;
}
body.home .cdb-carousel-heading__more:hover {
    color: #11131a !important;
    background: #ffbd00 !important;
    transform: translateY(-1px) !important;
}
body.home .marco-filas {
    height: 226px !important;
    margin: 0 !important;
    background: radial-gradient(circle at 50% -45%,rgba(255,189,0,.12),transparent 48%), #0d0f15 !important;
    border: 1px solid rgba(255,255,255,.07) !important;
    border-radius: 11px !important;
    box-shadow: inset 0 0 25px rgba(0,0,0,.52) !important;
    overflow: hidden !important;
}
body.home .jcarousel-container-horizontal {
    height: 206px !important;
    margin-left: 0 !important;
    padding: 10px 54px !important;
    position: relative !important;
}
body.home .marco-cinta .jcarousel-clip {
    height: 206px !important;
    overflow: hidden !important;
}
body.home #estrenos ul > li,
body.home .marco-cinta .jcarousel-item {
    width: 150px !important;
    height: 206px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
}
body.home #estrenos ul li a {
    display: block !important;
    position: relative !important;
    height: 196px !important;
    overflow: hidden !important;
    background: #181b24 !important;
    border: 1px solid rgba(255,189,0,.38) !important;
    border-radius: 9px !important;
    box-shadow: 0 7px 17px rgba(0,0,0,.4) !important;
    transform: translateZ(0) !important;
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}
body.home #estrenos ul li a:hover,
body.home #estrenos ul li a:focus {
    border-color: #ffbd00 !important;
    box-shadow: 0 11px 24px rgba(0,0,0,.55), 0 0 0 2px rgba(255,189,0,.12) !important;
    transform: translateY(-5px) scale(1.025) !important;
    outline: 0 !important;
}
body.home #estrenos ul li img,
body.home #estrenos img.panel {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: cover !important;
    position: relative !important;
    z-index: 1 !important;
    transition: filter .22s ease, transform .22s ease !important;
}
body.home #estrenos ul li a:hover img { transform: scale(1.035) !important; filter: brightness(.78) !important; }
body.home #estrenos ul a::before {
    content: "ESTRENO";
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 4;
    padding: 5px 7px;
    color: #11131a;
    background: linear-gradient(135deg,#ffd253,#ff9f1a);
    border-radius: 5px;
    font: 900 8px/1 Arial,Helvetica,sans-serif;
    letter-spacing: .3px;
    box-shadow: 0 4px 10px rgba(0,0,0,.3);
}
body.home #estrenos ul a:hover::after,
body.home #estrenos ul a:focus::after {
    content: attr(title) !important;
    display: flex !important;
    align-items: flex-end !important;
    position: absolute !important;
    inset: auto 0 0 !important;
    z-index: 3 !important;
    width: auto !important;
    min-height: 54px !important;
    padding: 24px 9px 9px !important;
    box-sizing: border-box !important;
    color: #fff !important;
    background: linear-gradient(to top,rgba(6,7,11,.98),rgba(6,7,11,0)) !important;
    text-align: left !important;
    text-shadow: 0 1px 2px #000 !important;
    font: 700 9px/1.25 Arial,Helvetica,sans-serif !important;
}
body.home .marco-cinta .jcarousel-next-horizontal,
body.home .marco-cinta .jcarousel-prev-horizontal {
    top: 50% !important;
    bottom: auto !important;
    width: 38px !important;
    height: 58px !important;
    margin-top: -29px !important;
    cursor: pointer !important;
    background: rgba(5,6,10,.86) !important;
    border: 1px solid rgba(255,189,0,.48) !important;
    border-radius: 10px !important;
    box-shadow: 0 6px 16px rgba(0,0,0,.42) !important;
    transition: .2s ease !important;
}
body.home .marco-cinta .jcarousel-next-horizontal { right: 8px !important; left: auto !important; }
body.home .marco-cinta .jcarousel-prev-horizontal { left: 8px !important; right: auto !important; }
body.home .marco-cinta .jcarousel-next-horizontal::after,
body.home .marco-cinta .jcarousel-prev-horizontal::after {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    color: #ffbd00;
    font: 900 32px/1 Arial,sans-serif;
}
body.home .marco-cinta .jcarousel-next-horizontal::after { content: "›"; }
body.home .marco-cinta .jcarousel-prev-horizontal::after { content: "‹"; }
body.home .marco-cinta .jcarousel-next-horizontal:hover,
body.home .marco-cinta .jcarousel-prev-horizontal:hover {
    background: #ffbd00 !important;
    transform: scale(1.05) !important;
}
body.home .marco-cinta .jcarousel-next-horizontal:hover::after,
body.home .marco-cinta .jcarousel-prev-horizontal:hover::after { color: #11131a !important; }

@media (max-width: 860px) {
    body.home #estrenos { padding: 15px 12px 16px !important; }
    body.home .cdb-carousel-heading h2::after { display: none; }
    body.home .jcarousel-container-horizontal { padding-left: 46px !important; padding-right: 46px !important; }
}
@media (max-width: 680px) {
    body.home .cdb-carousel-heading p { display: none !important; }
    body.home .cdb-carousel-heading h2 { font-size: 16px !important; }
    body.home .cdb-carousel-heading__icon { width: 31px !important; height: 31px !important; }
    body.home .marco-filas { height: 212px !important; }
    body.home .jcarousel-container-horizontal,
    body.home .marco-cinta .jcarousel-clip { height: 192px !important; }
    body.home #estrenos ul > li,
    body.home .marco-cinta .jcarousel-item { width: 135px !important; height: 192px !important; padding: 0 7px !important; }
    body.home #estrenos ul li a { height: 182px !important; }
}
@media (max-width: 480px) {
    body.home .cdb-carousel-heading__more { padding: 8px 10px !important; font-size: 9px !important; }
    body.home #estrenos { border-radius: 10px !important; }
}


/* CineDoblee PRO V36 - todas las secciones con estilo del carrusel */
body.home .home-section {
    margin: 0 0 30px !important;
    padding: 18px 18px 20px !important;
    background: linear-gradient(180deg, rgba(18,19,26,.99), rgba(9,10,15,.99)) !important;
    border: 1px solid rgba(255,189,0,.40) !important;
    border-radius: 14px !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.04) !important;
    overflow: hidden !important;
}
body.home .home-section__header {
    margin: 0 0 17px !important;
    padding: 0 4px 13px !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
}
body.home .home-section__header h2 {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: #fff !important;
    font: 800 19px/1.15 Arial,Helvetica,sans-serif !important;
    text-transform: uppercase !important;
    letter-spacing: .3px !important;
}
body.home .home-section__header h2::after {
    content: "";
    display: block;
    width: 68px;
    height: 2px;
    margin-left: 4px;
    background: linear-gradient(90deg,#ffbd00,transparent);
}
body.home .home-section__icon {
    display: grid !important;
    place-items: center !important;
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;
    background: linear-gradient(135deg,#ffd35a,#ff9f1a) !important;
    border-radius: 10px !important;
    box-shadow: 0 6px 18px rgba(255,166,0,.24) !important;
    color: #11131a !important;
    font-size: 16px !important;
}
body.home .home-section__more {
    padding: 9px 14px !important;
    color: #ffbd00 !important;
    background: rgba(255,189,0,.06) !important;
    border: 1px solid rgba(255,189,0,.46) !important;
    border-radius: 999px !important;
    text-decoration: none !important;
    font: 800 10px/1 Arial,Helvetica,sans-serif !important;
    transition: .22s ease !important;
}
body.home .home-section__more:hover {
    color: #11131a !important;
    background: #ffbd00 !important;
    transform: translateY(-1px) !important;
}
body.home .media-grid {
    gap: 20px 14px !important;
}
body.home .media-card {
    background: #11141c !important;
    border: 1px solid rgba(255,189,0,.28) !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 20px rgba(0,0,0,.38) !important;
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}
body.home .media-card:hover {
    border-color: #ffbd00 !important;
    box-shadow: 0 13px 28px rgba(0,0,0,.52), 0 0 0 2px rgba(255,189,0,.10) !important;
    transform: translateY(-6px) !important;
}
body.home .media-card__poster {
    background: #1b1f2a !important;
    border-radius: 9px 9px 0 0 !important;
}
body.home .media-card__poster::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 44%;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(to top,rgba(7,8,12,.62),transparent);
}
body.home .media-card__poster img {
    transition: transform .25s ease, filter .25s ease !important;
}
body.home .media-card:hover .media-card__poster img {
    transform: scale(1.045) !important;
    filter: brightness(.84) !important;
}
body.home .media-card__badge {
    top: 8px !important;
    left: 8px !important;
    padding: 5px 8px !important;
    color: #11131a !important;
    background: linear-gradient(135deg,#ffd253,#ff9f1a) !important;
    border: 0 !important;
    border-radius: 5px !important;
    box-shadow: 0 4px 10px rgba(0,0,0,.28) !important;
    letter-spacing: .3px !important;
}
body.home .media-card__overlay {
    z-index: 2 !important;
    background: linear-gradient(to top,rgba(6,7,11,.95),rgba(6,7,11,.08) 65%) !important;
    transition: opacity .22s ease !important;
}
body.home .media-card__overlay span {
    padding: 8px 13px !important;
    color: #11131a !important;
    background: #ffbd00 !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: 0 6px 16px rgba(0,0,0,.35) !important;
    font-weight: 800 !important;
}
body.home .media-card__body {
    padding: 11px 11px 12px !important;
    background: linear-gradient(180deg,#131722,#0e1118) !important;
}
body.home .media-card__body h3 {
    min-height: 36px !important;
    margin: 0 0 8px !important;
    font: 700 12px/17px Arial,Helvetica,sans-serif !important;
}
body.home .media-card__body h3 a {
    color: #f7f7f8 !important;
    text-decoration: none !important;
}
body.home .media-card__body h3 a:hover {
    color: #ffbd00 !important;
}
body.home .media-card__meta {
    padding-top: 8px !important;
    border-top: 1px solid rgba(255,255,255,.06) !important;
    color: #8f98a8 !important;
    font-size: 9px !important;
}
body.home .home-section__empty {
    color: #aeb5c1 !important;
    background: rgba(13,15,21,.86) !important;
    border-color: rgba(255,189,0,.28) !important;
}
@media (max-width: 680px) {
    body.home .home-section { padding: 15px 12px 16px !important; border-radius: 11px !important; }
    body.home .home-section__header h2 { font-size: 16px !important; }
    body.home .home-section__header h2::after { display: none !important; }
    body.home .home-section__icon { width: 31px !important; height: 31px !important; flex-basis: 31px !important; }
}
@media (max-width: 480px) {
    body.home .home-section__more { padding: 8px 10px !important; font-size: 9px !important; }
    body.home .media-grid { gap: 15px 10px !important; }
}

/* V37: encabezado, logo y menú modernizados en la misma línea visual oscura/dorada */
body #cabeza {
    position: relative !important;
    width: 100% !important;
    height: 152px !important;
    margin: 14px 0 10px !important;
    overflow: hidden !important;
    background: #0b0d13 !important;
    border: 1px solid rgba(255,189,0,.55) !important;
    border-radius: 14px !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.38), inset 0 0 0 1px rgba(255,255,255,.025) !important;
}
body #cabeza::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(90deg,rgba(255,189,0,.10),transparent 25%,transparent 75%,rgba(255,159,26,.09));
}
body #logo,
body #logo h1,
body #logo h1 a {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
}
body #logo h1 a {
    position: relative !important;
    z-index: 0 !important;
    display: block !important;
    float: none !important;
    max-width: none !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    border-radius: 13px !important;
    filter: saturate(.94) contrast(1.04) brightness(.90) !important;
    transition: filter .25s ease, transform .35s ease !important;
}
body #cabeza:hover #logo h1 a {
    filter: saturate(1.03) contrast(1.05) brightness(.98) !important;
    transform: scale(1.006) !important;
}

body #menu {
    position: relative !important;
    z-index: 9000 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    min-height: 54px !important;
    height: auto !important;
    margin: 0 0 22px !important;
    padding: 7px 9px !important;
    overflow: visible !important;
    text-align: left !important;
    background: linear-gradient(180deg,#151923 0%,#0b0e14 100%) !important;
    border: 1px solid rgba(255,189,0,.48) !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 26px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
body #menu::before {
    content: "";
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: -1px;
    height: 2px;
    pointer-events: none;
    background: linear-gradient(90deg,transparent,#ffbd00,transparent);
    opacity: .68;
}
body #menu > ul,
body #menu .menu {
    display: flex !important;
    align-items: center !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    scrollbar-width: thin;
    scrollbar-color: rgba(255,189,0,.62) rgba(255,255,255,.04);
}
body #menu li {
    display: block !important;
    flex: 0 0 auto !important;
    margin: 0 3px !important;
    padding: 0 !important;
    border: 0 !important;
    list-style: none !important;
}
body #menu ul li a {
    display: flex !important;
    align-items: center !important;
    min-height: 38px !important;
    padding: 0 11px !important;
    color: #eef0f5 !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    text-shadow: none !important;
    font: 800 9px/1 Arial,Helvetica,sans-serif !important;
    letter-spacing: .25px !important;
    transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease !important;
}
body #menu ul li a:hover,
body #menu ul li.current-menu-item > a,
body #menu ul li.current_page_item > a {
    color: #11131a !important;
    background: linear-gradient(135deg,#ffd75f,#ff9f1a) !important;
    border-color: #ffbd00 !important;
    box-shadow: 0 6px 16px rgba(255,174,0,.20) !important;
    transform: translateY(-1px) !important;
}

body .header-search {
    position: relative !important;
    z-index: 10000 !important;
    display: block !important;
    flex: 0 0 310px !important;
    width: 310px !important;
    margin: 0 0 0 10px !important;
}
body .header-search .search-form {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 3px !important;
    gap: 5px !important;
    background: rgba(255,255,255,.045) !important;
    border: 1px solid rgba(255,189,0,.30) !important;
    border-radius: 9px !important;
}
body .header-search input[type="text"],
body .header-search input[type="search"] {
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 34px !important;
    padding: 0 11px !important;
    color: #111111 !important;
    background: #ffffff !important;
    border: 1px solid #d8dbe2 !important;
    border-radius: 6px !important;
    outline: 0 !important;
    font-size: 11px !important;
}
body .header-search input[type="text"]::placeholder,
body .header-search input[type="search"]::placeholder { color: #8a8f98 !important; opacity: 1 !important; }
body .header-search input[type="text"]:focus,
body .header-search input[type="search"]:focus {
    border-color: rgba(255,189,0,.75) !important;
    box-shadow: 0 0 0 3px rgba(255,189,0,.09) !important;
}
body .header-search input[type="submit"] {
    flex: 0 0 auto !important;
    height: 34px !important;
    padding: 0 13px !important;
    color: #11131a !important;
    background: linear-gradient(135deg,#ffd75f,#ff9f1a) !important;
    border: 0 !important;
    border-radius: 6px !important;
    box-shadow: 0 5px 13px rgba(255,166,0,.18) !important;
    cursor: pointer !important;
    font: 800 10px/1 Arial,Helvetica,sans-serif !important;
}
body .header-search input[type="submit"]:hover { filter: brightness(1.07) !important; }
body .search-suggestions {
    top: calc(100% + 8px) !important;
    color: #eef1f5 !important;
    background: #11151e !important;
    border-color: rgba(255,189,0,.36) !important;
    border-radius: 10px !important;
    box-shadow: 0 18px 40px rgba(0,0,0,.55) !important;
}

@media (max-width: 1080px) {
    body #menu { flex-wrap: wrap !important; }
    body #menu > ul, body #menu .menu { flex: 1 1 100% !important; width: 100% !important; }
    body .header-search { flex: 0 0 360px !important; width: 360px !important; max-width: 100% !important; margin: 7px 0 0 auto !important; }
}
@media (max-width: 680px) {
    body #cabeza { height: 105px !important; margin-top: 8px !important; border-radius: 10px !important; }
    body #logo, body #logo h1, body #logo h1 a { height: 105px !important; }
    body #menu { min-height: 48px !important; margin-bottom: 16px !important; padding: 6px !important; border-radius: 10px !important; }
    body #menu ul li a { min-height: 34px !important; padding: 0 9px !important; font-size: 8px !important; }
    body .header-search { flex-basis: 100% !important; width: 100% !important; margin-top: 7px !important; }
}

/* CineDoblee PRO V38.2 - mostrar carátulas completas sin recortes */
body.home .media-card__poster {
    aspect-ratio: 13 / 20 !important;
    background: #090b10 !important;
}
body.home .media-card__poster img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
}
body.home .media-card:hover .media-card__poster img {
    transform: none !important;
    filter: brightness(.88) !important;
}
