/*
 * PrimeFlix 3.64.79 · P239 · Web Premium System / Catálogos
 * Only Web desktop: Películas, Series y Anime.
 * Presentation-only: keeps the unified hero, TMDB, genre navigation, row core,
 * actions, swiper/native slider logic and Studio visibility settings unchanged.
 */
@media (min-width: 901px) {
  body.pf-wps-catalogs-p239 {
    --pf-cat-gutter:clamp(26px,3.35vw,66px);
    --pf-cat-ink:#07080d;
    --pf-cat-hairline:rgba(255,255,255,.09);
    --pf-cat-mute:rgba(232,227,241,.76);
    --pf-cat-shadow:0 22px 62px rgba(0,0,0,.52);
    background:#07080c;
  }

  /* HERO: same cinematic language as Home/individual, without a purple wash. */
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract {
    height:100svh;
    min-height:660px;
    max-height:1080px;
    overflow:hidden;
    isolation:isolate;
    background:#07080d;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract::after {
    content:"";
    position:absolute;
    inset:auto 0 0;
    height:clamp(90px,13vw,180px);
    z-index:4;
    background:linear-gradient(0deg,#07080c 3%,rgba(7,8,12,.82) 23%,transparent 96%);
    pointer-events:none;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-overlay {
    background:
      linear-gradient(90deg,rgba(5,6,10,.94) 0%,rgba(5,6,10,.77) 29%,rgba(5,6,10,.37) 57%,rgba(5,6,10,.16) 85%),
      linear-gradient(0deg,rgba(5,6,10,.92),rgba(5,6,10,.33) 28%,transparent 66%),
      linear-gradient(180deg,rgba(5,6,10,.14),transparent 24%);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-warp-fallback {
    opacity:.10;
    filter:blur(24px) saturate(.7);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-content {
    left:var(--pf-cat-gutter);
    right:auto;
    bottom:clamp(152px,19vh,225px);
    width:min(60%,810px);
    max-width:min(60%,810px);
    padding:0;
    z-index:12;
    background:none;
    border:0;
    box-shadow:none;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-kicker {
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-size:clamp(11px,.87vw,13px);
    color:rgba(245,241,252,.86);
    letter-spacing:.11em;
    font-weight:800;
    text-shadow:0 3px 18px #000;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-kicker::before {
    content:"";
    display:block;
    width:22px;
    height:3px;
    flex:none;
    border-radius:3px;
    background:var(--pf-wps-accent);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-pills {
    gap:8px;
    margin:12px 0 14px;
    align-items:center;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-pill {
    min-height:29px;
    border:1px solid rgba(255,255,255,.17);
    border-radius:8px;
    padding:4px 11px;
    font-size:clamp(11px,.85vw,13px);
    line-height:1.3;
    font-weight:750;
    color:#f5f2fb;
    background:rgba(13,15,22,.54);
    backdrop-filter:blur(9px);
    -webkit-backdrop-filter:blur(9px);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-pill-type {
    border-color:rgba(var(--pf-wps-accent-rgb),.45);
    color:var(--pf-wps-accent-2);
    background:rgba(var(--pf-wps-accent-rgb),.105);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-title {
    margin:0 0 15px;
    font-family:var(--pf-font-display,'Roboto',Arial,sans-serif);
    font-size:clamp(2.9rem,5.15vw,5.65rem);
    font-weight:950;
    letter-spacing:-.055em;
    line-height:1.04;
    max-width:100%;
    overflow-wrap:anywhere;
    color:#fff;
    text-shadow:0 6px 44px rgba(0,0,0,.62);
    text-wrap:balance;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-genres {
    gap:8px;
    margin:0 0 13px;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-genre {
    padding:6px 10px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:7px;
    background:rgba(255,255,255,.055);
    color:#ebe9f0;
    font-size:12px;
    font-weight:650;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-ov {
    max-width:670px;
    margin:11px 0 19px;
    font-size:clamp(14px,1.09vw,17px);
    line-height:1.58;
    color:#e0dfe5;
    text-shadow:0 2px 18px rgba(0,0,0,.55);
    -webkit-line-clamp:3;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-deck {
    max-width:min(620px,100%);
    gap:8px;
    margin:12px 0 14px;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-metric {
    border:1px solid rgba(255,255,255,.12);
    border-radius:12px;
    background:rgba(13,14,20,.47);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    min-width:0;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-actions {
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract :is(.pf-uhero-btn-play,.pf-uhero-btn-info,.pf-uhero-btn-trailer) {
    min-height:47px;
    justify-content:center;
    padding:10px 19px;
    border-radius:11px;
    font-size:14px;
    font-weight:850;
    letter-spacing:.01em;
    text-decoration:none;
    transition:transform .2s ease,background .2s ease,box-shadow .2s ease,border-color .2s ease;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-btn-play {
    color:#fff;
    border:1px solid rgba(255,255,255,.2);
    background:linear-gradient(125deg,var(--pf-wps-accent),color-mix(in srgb,var(--pf-wps-accent) 63%,#17111e));
    box-shadow:0 11px 31px rgba(var(--pf-wps-accent-rgb),.25);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-btn-info {
    color:#fff;
    border:1px solid rgba(255,255,255,.22);
    background:rgba(16,18,25,.61);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-btn-icon {
    min-width:47px;
    min-height:47px;
    border-radius:11px;
    border:1px solid rgba(255,255,255,.2);
    background:rgba(16,18,25,.63);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract :is(.pf-uhero-btn-play,.pf-uhero-btn-info,.pf-uhero-btn-icon):hover {
    transform:translateY(-2px);
    border-color:rgba(var(--pf-wps-accent-rgb),.52);
    box-shadow:0 14px 30px rgba(0,0,0,.3);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-poster {
    right:clamp(50px,7.2vw,145px);
    bottom:clamp(181px,23vh,275px);
    transform-origin:center center;
    filter:drop-shadow(-17px 23px 38px rgba(0,0,0,.65));
    pointer-events:none;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-poster img {
    width:clamp(150px,14vw,210px);
    aspect-ratio:2/3;
    object-fit:cover;
    border:1px solid rgba(255,255,255,.26);
    border-radius:15px;
    box-shadow:0 0 0 5px rgba(255,255,255,.025),-15px 26px 65px rgba(0,0,0,.52);
  }
  /* Bottom slots retain their original event handlers and selection state. */
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-queue {
    left:var(--pf-cat-gutter);
    right:calc(var(--pf-cat-gutter) + 47px);
    bottom:29px;
    z-index:21;
    gap:8px;
    max-width:none;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-qitem {
    border:1px solid rgba(255,255,255,.12);
    border-radius:14px;
    background:linear-gradient(160deg,rgba(26,26,34,.72),rgba(12,14,20,.68));
    box-shadow:0 8px 24px rgba(0,0,0,.18);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-qitem:hover,
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-qitem-active {
    border-color:rgba(var(--pf-wps-accent-rgb),.65);
    background:linear-gradient(140deg,rgba(var(--pf-wps-accent-rgb),.2),rgba(18,20,27,.85));
    box-shadow:0 8px 27px rgba(0,0,0,.29);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-qtitle {
    color:#f9f8fd;
    font-size:clamp(11px,.87vw,14px);
    font-weight:850;
    line-height:1.22;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-qeyebrow {
    color:var(--pf-wps-accent-2);
    font-size:11px;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-nav-wrap {
    right:var(--pf-cat-gutter);
    top:47%;
    transform:translateY(-50%);
    gap:9px;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-nav {
    background:rgba(15,17,23,.7);
    border:1px solid rgba(255,255,255,.18);
    backdrop-filter:blur(12px);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-nav:hover {
    background:rgba(var(--pf-wps-accent-rgb),.32);
    border-color:rgba(var(--pf-wps-accent-rgb),.6);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-dots {
    right:var(--pf-cat-gutter);
    bottom:124px;
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-dot-active {
    background:var(--pf-wps-accent);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-bar {
    background:linear-gradient(90deg,var(--pf-wps-accent),var(--pf-wps-accent-2));
  }

  /* Genre filters: their own slim elevated strip, no oversized purple slab. */
  body.pf-wps-catalogs-p239 .pfchips-wrap {
    position:relative;
    z-index:25;
    margin:0;
    padding:16px var(--pf-cat-gutter) 13px;
    background:linear-gradient(180deg,#0c0d13,rgba(10,11,17,.9));
    border-block:1px solid rgba(255,255,255,.058);
    box-shadow:0 15px 33px rgba(0,0,0,.13);
  }
  body.pf-wps-catalogs-p239 .pfchips-slider {width:100%;min-width:0;}
  body.pf-wps-catalogs-p239 .pfchips-slider .swiper-wrapper {align-items:center;}
  body.pf-wps-catalogs-p239 .pfchips-slide {width:auto;flex:0 0 auto;}
  body.pf-wps-catalogs-p239 .pfchip {
    min-height:37px;
    display:inline-flex;
    align-items:center;
    gap:7px;
    white-space:nowrap;
    padding:7px 14px;
    border:1px solid rgba(255,255,255,.095);
    border-radius:10px;
    background:rgba(255,255,255,.032);
    color:#c9c6d2;
    font-size:13px;
    font-weight:750;
    line-height:1.3;
    transition:background .18s ease,border-color .18s ease,color .18s ease;
  }
  body.pf-wps-catalogs-p239 .pfchip:hover,
  body.pf-wps-catalogs-p239 .pfchip.pfchip-active {
    border-color:rgba(var(--pf-wps-accent-rgb),.43);
    background:rgba(var(--pf-wps-accent-rgb),.13);
    color:#fff;
  }
  body.pf-wps-catalogs-p239 .pfchip:focus-visible,
  body.pf-wps-catalogs-p239 .pf-uhero :is(a,button):focus-visible {
    outline:2px solid var(--pf-wps-accent-2);
    outline-offset:3px;
  }
  body.pf-wps-catalogs-p239 .pfchip-dot {width:6px;height:6px;box-shadow:none;}

  /* Rows: full-width content and short, quietly tinted editorial sections. */
  body.pf-wps-catalogs-p239 .pf10-sect {
    --pf-cat-row-rgb:139,92,246;
    position:relative;
    width:100%;
    max-width:none;
    margin:0;
    padding:clamp(28px,3.3vw,48px) 0 clamp(22px,3vw,42px) !important;
    border-top:1px solid rgba(255,255,255,.045);
    background:
      radial-gradient(860px 300px at 7% 0%,rgba(var(--pf-cat-row-rgb),.075),transparent 75%),
      linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,0) 80%);
    overflow:visible!important;
    isolation:isolate;
  }
  body.pf-wps-catalogs-p239 .pf10-sect:nth-of-type(6n+1) {--pf-cat-row-rgb:139,92,246;}
  body.pf-wps-catalogs-p239 .pf10-sect:nth-of-type(6n+2) {--pf-cat-row-rgb:8,176,184;}
  body.pf-wps-catalogs-p239 .pf10-sect:nth-of-type(6n+3) {--pf-cat-row-rgb:219,155,53;}
  body.pf-wps-catalogs-p239 .pf10-sect:nth-of-type(6n+4) {--pf-cat-row-rgb:221,87,119;}
  body.pf-wps-catalogs-p239 .pf10-sect:nth-of-type(6n+5) {--pf-cat-row-rgb:78,144,216;}
  body.pf-wps-catalogs-p239 .pf10-sect:nth-of-type(6n+6) {--pf-cat-row-rgb:111,177,106;}
  body.pf-wps-catalogs-p239 .pf10-sect .pf-sect-head {
    padding:0 var(--pf-cat-gutter);
    margin-bottom:clamp(16px,2vw,25px);
    gap:20px;
    align-items:center;
    min-width:0;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf-sect-head > div:first-child {min-width:0;}
  body.pf-wps-catalogs-p239 .pf10-sect .pf-sect-title {
    display:flex;
    align-items:center;
    gap:11px;
    margin:0;
    min-width:0;
    font-family:var(--pf-font-display,'Roboto',Arial,sans-serif);
    font-size:clamp(20px,1.7vw,29px);
    font-weight:900;
    line-height:1.2;
    letter-spacing:-.025em;
    color:#f9f8fc;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf-sect-bar {
    width:4px;
    height:28px;
    flex:0 0 4px;
    background:linear-gradient(180deg,rgba(var(--pf-cat-row-rgb),.95),rgba(var(--pf-cat-row-rgb),.35))!important;
    box-shadow:0 0 18px rgba(var(--pf-cat-row-rgb),.24);
    border-radius:4px;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf-dyn-icon {
    flex:none;
    display:inline-grid;
    place-items:center;
    width:32px;height:32px;
    color:#f0ebf8;
    background:rgba(var(--pf-cat-row-rgb),.1);
    border:1px solid rgba(var(--pf-cat-row-rgb),.2);
    border-radius:9px;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf-dyn-icon svg {
    width:17px;
    height:17px;
    max-width:17px;
    max-height:17px;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf-dyn-text {
    min-width:0;
    color:#f9f8fc!important;
    font-size:inherit;
    font-weight:inherit;
    letter-spacing:inherit;
    line-height:inherit;
    text-shadow:none;
    background:none!important;
    -webkit-background-clip:border-box;
    background-clip:border-box;
    animation:none!important;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf10-see-all {
    white-space:nowrap;
    font-size:12px;
    font-weight:750;
    color:var(--pf-wps-accent-2);
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf-sect-nav {
    display:flex;
    align-items:center;
    gap:9px;
    flex:none;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf-sect-nav .pfn-btn {
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    max-width:40px!important;
    max-height:40px!important;
    flex:0 0 40px!important;
    background:rgba(23,24,35,.7);
    color:#eceaf3;
    border:1px solid rgba(255,255,255,.16);
    box-shadow:0 4px 14px rgba(0,0,0,.19);
    transition:background .18s ease,border-color .18s ease;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf-sect-nav .pfn-btn:hover {
    background:rgba(var(--pf-cat-row-rgb),.24);
    border-color:rgba(var(--pf-cat-row-rgb),.5);
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf10c-slider {
    width:100%!important;
    max-width:none!important;
    margin:0;
    padding:6px var(--pf-cat-gutter) 25px!important;
    scroll-padding-inline:var(--pf-cat-gutter);
    overflow-x:auto;
    overflow-y:hidden;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf10c-slider > .swiper-wrapper {
    align-items:center;
    min-width:100%;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf10c-slide {align-self:center;}
  body.pf-wps-catalogs-p239 .pf10-sect .pf10c-card {
    border:1px solid rgba(255,255,255,.11);
    border-radius:13px!important;
    box-shadow:0 12px 28px rgba(0,0,0,.24);
    background:#11111a;
    transition:border-color .24s ease,box-shadow .24s ease;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf10c-card:hover,
  body.pf-wps-catalogs-p239 .pf10-sect .pf10c-card:focus-within {
    border-color:rgba(var(--pf-cat-row-rgb),.55);
    box-shadow:0 18px 40px rgba(0,0,0,.46),0 0 0 1px rgba(var(--pf-cat-row-rgb),.2);
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf10c-badge {
    padding:5px 8px;
    border-radius:7px;
    font-size:10px;
    font-weight:850;
    letter-spacing:.02em;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf10c-info {padding:12px 15px 16px;}
  body.pf-wps-catalogs-p239 .pf10-sect .pf10c-title {
    font-size:clamp(16px,1.3vw,20px);
    line-height:1.15;
    font-weight:900;
    letter-spacing:-.025em;
    color:#fff;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf10c-desc {
    font-size:12px;
    line-height:1.48;
    color:#d2d0d9;
  }
  body.pf-wps-catalogs-p239 .pf10-sect .pf10c-actions .pf10c-btn {
    min-width:37px;
    min-height:37px;
    border-radius:9px;
  }
}

/* Compact laptops: keep text legible and avoid hero collisions/slot clipping. */
@media (min-width:901px) and (max-width:1190px){
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-content {
    width:min(66%,680px);
    max-width:min(66%,680px);
    bottom:clamp(146px,21vh,200px);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-title {font-size:clamp(2.45rem,4.65vw,4rem);}
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-poster {
    right:clamp(50px,6vw,80px);
    bottom:clamp(190px,24vh,240px);
  }
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-poster img {width:clamp(126px,12vw,150px);}
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-queue {right:var(--pf-cat-gutter);}
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-qcopy {display:none;}
}

/* At very wide viewport, keep readable measures without pulling rows inward. */
@media (min-width:1800px){
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-content {width:min(55%,840px);max-width:840px;}
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract .pf-uhero-queue {right:calc(var(--pf-cat-gutter) + 50px);}
}

@media (prefers-reduced-motion:reduce){
  body.pf-wps-catalogs-p239 .pf-uhero.pf-hero-catalog-desktop-contract :is(.pf-uhero-content,.pf-uhero-poster,.pf-uhero-bg,.pf-uhero-slide,.pf-uhero-actions,.pf-uhero-title) {
    animation:none!important;
    transition-duration:.01ms!important;
  }
  body.pf-wps-catalogs-p239 :is(.pfchip,.pf10c-card,.pfn-btn) {transition-duration:.01ms!important;}
}
