*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif}.theme-dark{background:#070914;color:#f8fafc}a{text-decoration:none;color:inherit}.dc-wrap{width:92%;max-width:1240px;margin:0 auto}.dc-header{position:sticky;top:0;z-index:50;background:rgba(7,9,20,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}.dc-nav{height:74px;display:flex;align-items:center;justify-content:space-between;gap:30px}.dc-logo{font-size:28px;font-weight:950;letter-spacing:-.04em}.dc-logo span{color:#e11d48}.dc-nav nav{display:flex;gap:24px}.dc-nav nav a{color:#cbd5e1;font-weight:750}.dc-hero{position:relative;overflow:hidden;padding:84px 0 62px}.dc-glow{position:absolute;border-radius:999px;filter:blur(55px);opacity:.38}.dc-glow.one{width:380px;height:380px;background:#e11d48;left:-120px;top:40px}.dc-glow.two{width:420px;height:420px;background:#7c3aed;right:-120px;bottom:-120px}.dc-hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .72fr;gap:52px;align-items:center}.dc-kicker{display:inline-flex;background:rgba(225,29,72,.14);border:1px solid rgba(225,29,72,.35);padding:9px 14px;border-radius:999px;color:#fecdd3;font-weight:850}.dc-hero h1{font-family:Georgia,serif;font-size:70px;line-height:.96;margin:22px 0 20px;letter-spacing:-.055em}.dc-hero p{font-size:19px;line-height:1.7;color:#cbd5e1;max-width:680px}.dc-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.dc-btn{display:inline-flex;align-items:center;justify-content:center;background:#e11d48;color:#fff;border-radius:16px;padding:15px 22px;font-weight:950;box-shadow:0 16px 34px rgba(225,29,72,.28)}.dc-btn.secondary{background:rgba(255,255,255,.08);box-shadow:none;border:1px solid rgba(255,255,255,.14)}.dc-hero-card{display:block;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);border-radius:28px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.35);transform:rotate(1deg)}.dc-hero-card img{width:100%;height:520px;object-fit:cover;display:block}.dc-hero-card div{padding:22px}.dc-hero-card span,.dc-pill{display:inline-flex;background:var(--accent,#e11d48);color:#fff;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900}.dc-hero-card h2{margin:13px 0 6px;font-size:26px}.dc-hero-card p{font-size:14px;color:#cbd5e1}.dc-banner{margin:20px 0 10px;display:flex;justify-content:space-between;gap:18px;background:linear-gradient(135deg,rgba(225,29,72,.18),rgba(124,58,237,.15));border:1px solid rgba(255,255,255,.1);padding:20px;border-radius:22px;color:#fff}.dc-banner span{color:#cbd5e1}.dc-section{padding:58px 0}.dc-section-head{margin-bottom:26px}.dc-section-head h1,.dc-section-head h2{font-size:40px;margin:0 0 8px;letter-spacing:-.035em}.dc-section-head p{color:#94a3b8}.dc-genre-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.dc-genre{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:22px;font-weight:950}.dc-genre:before{content:'';display:block;width:42px;height:5px;background:var(--accent);border-radius:999px;margin-bottom:14px}.dc-layout{display:grid;grid-template-columns:1fr 330px;gap:36px}.dc-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.dc-story-card{background:#101827;border:1px solid rgba(255,255,255,.09);border-radius:24px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.22);transition:.2s}.dc-story-card:hover{transform:translateY(-5px);border-color:rgba(225,29,72,.4)}.dc-story-card img{width:100%;height:280px;object-fit:cover;display:block}.dc-story-body{padding:18px}.dc-story-body h3{font-size:22px;margin:13px 0 10px}.dc-story-body p{color:#cbd5e1;line-height:1.55}.dc-story-body small{color:#94a3b8}.dc-sidebar{position:sticky;top:94px;align-self:start;background:#101827;border:1px solid rgba(255,255,255,.09);border-radius:24px;padding:22px}.dc-rank{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}.dc-rank b{width:34px;height:34px;border-radius:12px;background:#e11d48;display:flex;align-items:center;justify-content:center}.dc-rank span{display:grid}.dc-rank small{color:#94a3b8;margin-top:4px}.dc-footer{text-align:center;color:#94a3b8;padding:42px 18px;border-top:1px solid rgba(255,255,255,.08)}.dc-footer a{color:#e11d48;font-weight:950}.dc-story-page{padding:56px 0}.dc-story-hero{display:grid;grid-template-columns:340px 1fr;gap:36px;align-items:center;background:#101827;border:1px solid rgba(255,255,255,.09);border-radius:28px;padding:28px}.dc-story-hero img{width:100%;border-radius:22px}.dc-story-hero h1{font-family:Georgia,serif;font-size:52px;line-height:1;margin:16px 0}.dc-story-hero p{color:#cbd5e1;line-height:1.7}.dc-muted{color:#94a3b8!important}.dc-chapter-list{display:grid;gap:12px}.dc-chapter-list a{display:flex;gap:14px;align-items:center;background:#101827;border:1px solid rgba(255,255,255,.08);padding:16px;border-radius:16px}.dc-chapter-list b{background:#e11d48;width:34px;height:34px;border-radius:12px;display:flex;align-items:center;justify-content:center}.reader-light{background:#f8f5f0;color:#1f1f1f}.reader-dark{background:#070914;color:#f8fafc}.reader-header{position:sticky;top:0;z-index:20;background:rgba(248,245,240,.92);backdrop-filter:blur(12px);display:flex;justify-content:space-between;align-items:center;padding:16px 5%;border-bottom:1px solid rgba(0,0,0,.08)}.reader-dark .reader-header{background:rgba(7,9,20,.92);border-bottom-color:rgba(255,255,255,.08)}.reader-header button{border:0;border-radius:999px;background:#111827;color:#fff;padding:10px 14px;font-weight:900}.reader-wrap{width:92%;max-width:850px;margin:34px auto}.reader-card{background:#fff;border-radius:24px;padding:42px;box-shadow:0 12px 40px rgba(0,0,0,.07)}.reader-dark .reader-card{background:#101827}.reader-card h1{font-family:Georgia,serif;font-size:42px;line-height:1.08;margin:18px 0 8px}.reader-sub{color:#777}.reader-content{font-family:Georgia,serif;font-size:20px;line-height:1.85}.reader-content p{margin:0 0 1.4em}.reader-nav{display:flex;justify-content:space-between;margin-top:34px;gap:14px}.reader-nav a{background:#e11d48;color:#fff;border-radius:14px;padding:13px 18px;font-weight:950}@media(max-width:980px){.dc-hero-grid,.dc-layout,.dc-story-hero{grid-template-columns:1fr}.dc-card-grid{grid-template-columns:repeat(2,1fr)}.dc-genre-grid{grid-template-columns:repeat(2,1fr)}.dc-sidebar{position:relative;top:0}.dc-hero h1{font-size:48px}.dc-hero-card img{height:420px}}@media(max-width:620px){.dc-nav{height:auto;padding:18px 0;display:block}.dc-nav nav{margin-top:14px;overflow:auto}.dc-card-grid{grid-template-columns:1fr}.dc-genre-grid{grid-template-columns:1fr}.dc-hero h1{font-size:40px}.dc-story-hero h1{font-size:38px}.reader-card{padding:26px}.reader-content{font-size:18px}.dc-story-card img{height:340px}}
/* DC FIX: responsive móvil 2 columnas para historias y géneros */
@media(max-width:620px){

  .dc-wrap{
    width:92% !important;
  }

  .dc-nav{
    padding:18px 0 14px !important;
  }

  .dc-logo{
    font-size:34px !important;
    display:block;
    margin-bottom:18px;
  }

  .dc-nav nav{
    display:grid !important;
    grid-template-columns:repeat(4, max-content) !important;
    gap:22px !important;
    overflow-x:auto !important;
    padding-bottom:4px;
  }

  .dc-nav nav a{
    font-size:19px !important;
    white-space:nowrap;
  }

  .dc-hero{
    padding:42px 0 34px !important;
  }

  .dc-hero h1{
    font-size:39px !important;
    line-height:1.03 !important;
  }

  .dc-hero p{
    font-size:16px !important;
    line-height:1.55 !important;
  }

  .dc-hero-grid{
    gap:28px !important;
  }

  .dc-hero-card img{
    height:330px !important;
  }

  .dc-hero-card h2{
    font-size:23px !important;
  }

  .dc-section{
    padding:34px 0 !important;
  }

  .dc-section-head h1,
  .dc-section-head h2{
    font-size:28px !important;
  }

  /* Historias: 2 en 2 */
  .dc-card-grid{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:14px !important;
  }

  .dc-story-card{
    border-radius:17px !important;
  }

  .dc-story-card img{
    height:205px !important;
  }

  .dc-story-body{
    padding:12px !important;
  }

  .dc-story-body h3{
    font-size:16px !important;
    line-height:1.15 !important;
    margin:9px 0 8px !important;
  }

  .dc-story-body p{
    font-size:13px !important;
    line-height:1.35 !important;
    margin:0 0 8px !important;
  }

  .dc-story-body small{
    font-size:11px !important;
    line-height:1.3 !important;
  }

  .dc-pill{
    font-size:10px !important;
    padding:5px 8px !important;
  }

  /* Categorías/géneros: 2 en 2 */
  .dc-genre-grid{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:13px !important;
  }

  .dc-genre{
    min-height:92px !important;
    padding:16px !important;
    border-radius:18px !important;
    font-size:17px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
  }

  .dc-genre:before{
    width:42px !important;
    height:5px !important;
    margin-bottom:13px !important;
  }

  .dc-layout{
    gap:28px !important;
  }

  .dc-sidebar{
    border-radius:20px !important;
    padding:18px !important;
  }

  .dc-rank{
    gap:10px !important;
  }

  .dc-rank strong{
    font-size:14px !important;
  }

  .dc-rank small{
    font-size:12px !important;
  }
}

/* Celulares muy angostos: mantener 2 columnas pero más compacto */
@media(max-width:390px){
  .dc-card-grid{
    gap:10px !important;
  }

  .dc-story-card img{
    height:180px !important;
  }

  .dc-story-body h3{
    font-size:15px !important;
  }

  .dc-story-body p{
    font-size:12px !important;
  }

  .dc-genre{
    min-height:84px !important;
    font-size:16px !important;
  }
}

/* DC FORCE FIX 20260523-071633: 2 columnas en móvil/tablet */
@media (max-width: 900px) {

  .dc-layout{
    display:block !important;
  }

  .dc-card-grid{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:12px !important;
  }

  .dc-story-card{
    width:100% !important;
    max-width:none !important;
    border-radius:16px !important;
  }

  .dc-story-card img{
    height:190px !important;
    width:100% !important;
    object-fit:cover !important;
  }

  .dc-story-body{
    padding:11px !important;
  }

  .dc-story-body h3{
    font-size:15px !important;
    line-height:1.12 !important;
    margin:8px 0 7px !important;
  }

  .dc-story-body p{
    font-size:12px !important;
    line-height:1.32 !important;
    margin:0 0 7px !important;
  }

  .dc-story-body small{
    font-size:10.5px !important;
    line-height:1.25 !important;
  }

  .dc-pill{
    font-size:9.5px !important;
    padding:5px 7px !important;
  }

  .dc-genre-grid{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:12px !important;
  }

  .dc-genre{
    width:100% !important;
    min-height:86px !important;
    padding:15px !important;
    font-size:16px !important;
    border-radius:17px !important;
  }

  .dc-genre:before{
    width:38px !important;
    height:5px !important;
    margin-bottom:12px !important;
  }

  .dc-sidebar{
    margin-top:28px !important;
  }
}

@media (max-width: 430px) {
  .dc-card-grid{
    gap:10px !important;
  }

  .dc-story-card img{
    height:165px !important;
  }

  .dc-story-body h3{
    font-size:14px !important;
  }

  .dc-story-body p{
    font-size:11.5px !important;
  }

  .dc-genre{
    min-height:80px !important;
    font-size:15px !important;
  }
}


/* DC FIX: hero móvil centrado + mejor adaptación visual */
@media (max-width: 620px){

  .dc-hero{
    padding: 32px 0 26px !important;
  }

  .dc-hero-grid{
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    align-items: center !important;
  }

  .dc-hero-grid > *:first-child{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }

  .dc-kicker{
    margin: 0 auto 10px auto !important;
    text-align: center !important;
  }

  .dc-hero h1{
    font-size: 34px !important;
    line-height: 1.04 !important;
    letter-spacing: -0.03em !important;
    max-width: 11ch !important;
    margin: 8px auto 14px auto !important;
    text-align: center !important;
  }

  .dc-hero p{
    font-size: 16px !important;
    line-height: 1.58 !important;
    max-width: 30ch !important;
    margin: 0 auto 18px auto !important;
    text-align: center !important;
  }

  .dc-actions{
    width: 100% !important;
    justify-content: center !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
  }

  .dc-actions .dc-btn{
    flex: 1 1 calc(50% - 6px) !important;
    min-width: 0 !important;
    padding: 15px 12px !important;
    text-align: center !important;
    border-radius: 16px !important;
    font-size: 15px !important;
  }

  .dc-hero-card{
    transform: none !important;
    margin: 0 auto !important;
    max-width: 100% !important;
    border-radius: 24px !important;
    overflow: hidden !important;
  }

  .dc-hero-card img{
    height: 250px !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
  }

  .dc-hero-card div{
    padding: 18px 16px !important;
    text-align: center !important;
  }

  .dc-hero-card h2{
    font-size: 24px !important;
    line-height: 1.08 !important;
    margin: 10px 0 8px !important;
    text-align: center !important;
  }

  .dc-hero-card p{
    font-size: 15px !important;
    line-height: 1.45 !important;
    max-width: 24ch !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  .dc-banner{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    text-align: center !important;
    padding: 16px !important;
  }

  .dc-banner b,
  .dc-banner span{
    display: block !important;
    text-align: center !important;
  }

  .dc-section-head h1,
  .dc-section-head h2{
    font-size: 30px !important;
    line-height: 1.08 !important;
  }

  .dc-section-head p{
    font-size: 15px !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 390px){

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

  .dc-hero p{
    font-size: 15px !important;
    max-width: 28ch !important;
  }

  .dc-actions .dc-btn{
    font-size: 14px !important;
    padding: 14px 10px !important;
  }

  .dc-hero-card img{
    height: 220px !important;
  }

  .dc-hero-card h2{
    font-size: 22px !important;
  }
}


/* DC PREMIUM ALIGN: web al 90%, hero y cards mejor amarradas al builder */
.dc-wrap{
  width:var(--dc-home-width,90%) !important;
  max-width:1500px !important;
}

.dc-hero-image-only{
  border-radius:30px;
  overflow:hidden;
  min-height:520px;
  box-shadow:0 24px 80px rgba(0,0,0,.38);
  border:1px solid rgba(255,255,255,.12);
}

.dc-hero-image-only img{
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:cover;
  display:block;
}

.dc-story-card img{
  background:#111827;
}

@media(max-width:900px){
  .dc-wrap{
    width:90% !important;
  }

  .dc-hero-image-only{
    min-height:340px;
    border-radius:24px;
  }

  .dc-hero-image-only img{
    min-height:340px;
  }
}

@media(max-width:620px){
  .dc-wrap{
    width:90% !important;
  }

  .dc-hero-grid{
    text-align:center;
  }

  .dc-hero-copy{
    align-items:center !important;
    text-align:center !important;
  }

  .dc-hero h1,
  .dc-hero p{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .dc-actions{
    justify-content:center !important;
  }

  .dc-hero-image-only{
    min-height:260px;
  }

  .dc-hero-image-only img{
    min-height:260px;
  }
}


/* DC HERO 30/70 tipo mockup magazine */
@media (min-width: 901px){

  .dc-hero{
    position:relative !important;
    min-height:430px !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    overflow:hidden !important;
    border-bottom:1px solid rgba(255,255,255,.08) !important;
    background:
      radial-gradient(circle at 0% 50%, rgba(225,29,72,.24), transparent 34%),
      linear-gradient(90deg, #070914 0%, #070914 30%, rgba(7,9,20,.98) 42%, rgba(7,9,20,.5) 62%, rgba(7,9,20,.08) 100%) !important;
  }

  .dc-hero .dc-glow{
    display:none !important;
  }

  .dc-hero-grid{
    position:relative !important;
    z-index:2 !important;
    min-height:430px !important;
    display:grid !important;
    grid-template-columns:32% 68% !important;
    align-items:center !important;
    gap:0 !important;
    width:100% !important;
    max-width:none !important;
    margin:0 auto !important;
    padding-left:4.5% !important;
    padding-right:0 !important;
  }

  .dc-hero-copy{
    position:relative !important;
    z-index:4 !important;
    max-width:520px !important;
    padding:54px 0 48px !important;
  }

  .dc-hero h1{
    font-size:58px !important;
    line-height:.96 !important;
    letter-spacing:-.055em !important;
    max-width:470px !important;
    margin:18px 0 16px !important;
  }

  .dc-hero h1::first-line{
    color:#fff !important;
  }

  .dc-hero p{
    font-size:18px !important;
    line-height:1.5 !important;
    max-width:455px !important;
    color:rgba(255,255,255,.88) !important;
  }

  .dc-actions{
    margin-top:24px !important;
  }

  .dc-btn{
    padding:14px 24px !important;
    border-radius:11px !important;
  }

  .dc-hero-bg{
    position:absolute !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:70% !important;
    z-index:1 !important;
    background-size:cover !important;
    background-position:center right !important;
    background-repeat:no-repeat !important;
  }

  .dc-hero-bg::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:
      linear-gradient(90deg, #070914 0%, rgba(7,9,20,.98) 10%, rgba(7,9,20,.80) 24%, rgba(7,9,20,.28) 46%, rgba(7,9,20,.04) 78%),
      linear-gradient(0deg, rgba(7,9,20,.30), rgba(7,9,20,.06)) !important;
    pointer-events:none !important;
  }

  .dc-hero-bg::after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:radial-gradient(circle at 100% 100%, rgba(124,58,237,.28), transparent 35%) !important;
    pointer-events:none !important;
  }
}

/* Tablet: mantiene imagen grande pero menos agresiva */
@media (min-width: 621px) and (max-width: 900px){

  .dc-hero{
    position:relative !important;
    padding:54px 0 !important;
    overflow:hidden !important;
    min-height:520px !important;
  }

  .dc-hero-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    min-height:430px !important;
  }

  .dc-hero-copy{
    position:relative !important;
    z-index:3 !important;
    max-width:620px !important;
  }

  .dc-hero-bg{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    background-size:cover !important;
    background-position:center right !important;
    opacity:.62 !important;
  }

  .dc-hero-bg::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:linear-gradient(90deg, #070914 0%, rgba(7,9,20,.88) 45%, rgba(7,9,20,.42) 100%) !important;
  }
}

/* Móvil: hero centrado con imagen como fondo suave */
@media (max-width: 620px){

  .dc-hero{
    position:relative !important;
    min-height:620px !important;
    padding:46px 0 34px !important;
    overflow:hidden !important;
    display:flex !important;
    align-items:center !important;
  }

  .dc-hero-grid{
    position:relative !important;
    z-index:3 !important;
    display:block !important;
    min-height:auto !important;
  }

  .dc-hero-copy{
    position:relative !important;
    z-index:4 !important;
    text-align:center !important;
    align-items:center !important;
  }

  .dc-hero h1{
    font-size:38px !important;
    line-height:1.02 !important;
    max-width:10.5ch !important;
    margin:16px auto 16px !important;
    text-align:center !important;
  }

  .dc-hero p{
    max-width:29ch !important;
    margin:0 auto !important;
    text-align:center !important;
  }

  .dc-actions{
    justify-content:center !important;
  }

  .dc-hero-bg{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    background-size:cover !important;
    background-position:center right !important;
    opacity:.48 !important;
  }

  .dc-hero-bg::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:
      linear-gradient(180deg, rgba(7,9,20,.42) 0%, rgba(7,9,20,.78) 52%, #070914 100%),
      linear-gradient(90deg, #070914 0%, rgba(7,9,20,.76) 52%, rgba(7,9,20,.42) 100%) !important;
  }

  .dc-hero-bg::after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:radial-gradient(circle at 15% 45%, rgba(225,29,72,.24), transparent 38%) !important;
  }
}

/* DC FIX FINAL: hero con imagen visible 30/70 */
.dc-hero{
  position:relative !important;
  overflow:hidden !important;
}

.dc-hero-bg{
  position:absolute !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:72% !important;
  z-index:1 !important;
  background-size:cover !important;
  background-position:center right !important;
  background-repeat:no-repeat !important;
  opacity:1 !important;
  display:block !important;
}

.dc-hero-bg::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(90deg, #070914 0%, rgba(7,9,20,.98) 10%, rgba(7,9,20,.82) 25%, rgba(7,9,20,.34) 48%, rgba(7,9,20,.06) 100%),
    linear-gradient(0deg, rgba(7,9,20,.18), rgba(7,9,20,.08)) !important;
  pointer-events:none !important;
}

.dc-hero-grid{
  position:relative !important;
  z-index:3 !important;
}

@media(min-width:901px){
  .dc-hero{
    min-height:430px !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    background:
      radial-gradient(circle at 0% 50%, rgba(225,29,72,.25), transparent 34%),
      #070914 !important;
  }

  .dc-hero-grid{
    min-height:430px !important;
    display:grid !important;
    grid-template-columns:32% 68% !important;
    gap:0 !important;
    align-items:center !important;
    width:100% !important;
    max-width:none !important;
    padding-left:4.5% !important;
    padding-right:0 !important;
  }

  .dc-hero-copy{
    max-width:520px !important;
    padding:54px 0 48px !important;
  }

  .dc-hero-spacer{
    display:block !important;
    min-height:430px !important;
  }

  .dc-hero h1{
    font-size:58px !important;
    line-height:.96 !important;
    max-width:470px !important;
    margin:18px 0 16px !important;
  }

  .dc-hero p{
    font-size:18px !important;
    line-height:1.5 !important;
    max-width:455px !important;
  }
}

@media(max-width:900px){
  .dc-hero-bg{
    inset:0 !important;
    width:100% !important;
    background-position:center right !important;
    opacity:.62 !important;
  }

  .dc-hero-bg::before{
    background:
      linear-gradient(180deg, rgba(7,9,20,.28) 0%, rgba(7,9,20,.78) 58%, #070914 100%),
      linear-gradient(90deg, #070914 0%, rgba(7,9,20,.70) 48%, rgba(7,9,20,.32) 100%) !important;
  }
}

@media(max-width:620px){
  .dc-hero{
    min-height:620px !important;
    padding:46px 0 34px !important;
    display:flex !important;
    align-items:center !important;
  }

  .dc-hero-grid{
    display:block !important;
  }

  .dc-hero-copy{
    text-align:center !important;
  }

  .dc-hero h1,
  .dc-hero p{
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .dc-actions{
    justify-content:center !important;
  }
}

/* DC FIX: hero más pegado entre texto e imagen */
@media(min-width:901px){

  .dc-hero{
    min-height:445px !important;
  }

  .dc-hero-grid{
    grid-template-columns:30% 70% !important;
    gap:0 !important;
    min-height:445px !important;
    padding-left:4.2% !important;
    padding-right:0 !important;
  }

  .dc-hero-copy{
    max-width:500px !important;
    padding:48px 0 42px !important;
    position:relative !important;
    z-index:4 !important;
  }

  .dc-hero h1{
    max-width:460px !important;
    font-size:62px !important;
    line-height:.95 !important;
    margin:16px 0 14px !important;
    letter-spacing:-.04em !important;
  }

  .dc-hero p{
    max-width:470px !important;
    font-size:17px !important;
    line-height:1.48 !important;
    margin-bottom:24px !important;
  }

  .dc-hero-bg{
    width:73% !important;
    right:0 !important;
    top:0 !important;
    bottom:0 !important;
    background-size:cover !important;
    background-position:center center !important;
  }

  .dc-hero-bg::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:
      linear-gradient(
        90deg,
        #070914 0%,
        rgba(7,9,20,.97) 10%,
        rgba(7,9,20,.84) 19%,
        rgba(7,9,20,.58) 28%,
        rgba(7,9,20,.24) 38%,
        rgba(7,9,20,.06) 48%,
        rgba(7,9,20,0) 60%
      ),
      linear-gradient(
        0deg,
        rgba(7,9,20,.18),
        rgba(7,9,20,.08)
      ) !important;
    pointer-events:none !important;
  }

  .dc-hero-spacer{
    min-height:445px !important;
  }
}

/* Afinado tablet */
@media(min-width:621px) and (max-width:900px){
  .dc-hero-bg{
    width:100% !important;
    background-position:center center !important;
    opacity:.78 !important;
  }

  .dc-hero-bg::before{
    background:
      linear-gradient(
        180deg,
        rgba(7,9,20,.28) 0%,
        rgba(7,9,20,.55) 34%,
        rgba(7,9,20,.78) 62%,
        #070914 100%
      ),
      linear-gradient(
        90deg,
        rgba(7,9,20,.80) 0%,
        rgba(7,9,20,.44) 45%,
        rgba(7,9,20,.16) 100%
      ) !important;
  }
}

/* DC HERO CINEMATICO INTEGRADO - NO GRID PARTIDO */
.dc-hero-cinematic{
  position:relative !important;
  min-height:520px !important;
  padding:0 !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  background:#050812 !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
}

.dc-hero-cinematic .dc-hero-scene{
  position:absolute !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:78% !important;
  z-index:1 !important;
  background-size:cover !important;
  background-position:center right !important;
  background-repeat:no-repeat !important;
  opacity:1 !important;
  transform:none !important;
}

.dc-hero-cinematic .dc-hero-shade{
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  background:
    linear-gradient(
      90deg,
      #050812 0%,
      #050812 18%,
      rgba(5,8,18,.94) 28%,
      rgba(5,8,18,.74) 39%,
      rgba(5,8,18,.42) 52%,
      rgba(5,8,18,.12) 68%,
      rgba(5,8,18,.02) 100%
    ),
    linear-gradient(
      180deg,
      rgba(5,8,18,.18) 0%,
      rgba(5,8,18,.03) 46%,
      rgba(5,8,18,.36) 100%
    ) !important;
  pointer-events:none !important;
}

.dc-hero-cinematic .dc-hero-glow{
  position:absolute !important;
  inset:0 !important;
  z-index:3 !important;
  background:
    radial-gradient(circle at 7% 48%, rgba(225,29,72,.32), transparent 34%),
    radial-gradient(circle at 93% 92%, rgba(124,58,237,.30), transparent 32%) !important;
  pointer-events:none !important;
}

.dc-hero-cinematic .dc-hero-content{
  position:relative !important;
  z-index:4 !important;
  width:90% !important;
  max-width:1500px !important;
  margin:0 auto !important;
  padding:74px 0 72px !important;
  display:block !important;
}

.dc-hero-cinematic .dc-kicker{
  display:inline-flex !important;
  background:rgba(225,29,72,.16) !important;
  border:1px solid rgba(225,29,72,.55) !important;
  color:#fff !important;
  border-radius:999px !important;
  padding:9px 16px !important;
  font-size:15px !important;
  font-weight:900 !important;
  margin-bottom:20px !important;
}

.dc-hero-cinematic h1{
  max-width:610px !important;
  margin:0 0 18px !important;
  font-family:Georgia,serif !important;
  font-size:70px !important;
  line-height:.94 !important;
  letter-spacing:-.055em !important;
  color:#fff !important;
}

.dc-hero-cinematic h1 span{
  display:block !important;
}

.dc-hero-cinematic h1 span:nth-child(2){
  color:#e11d48 !important;
}

.dc-hero-cinematic p{
  max-width:520px !important;
  margin:0 !important;
  color:rgba(255,255,255,.88) !important;
  font-size:19px !important;
  line-height:1.55 !important;
}

.dc-hero-cinematic .dc-actions{
  display:flex !important;
  gap:16px !important;
  flex-wrap:wrap !important;
  margin-top:26px !important;
}

.dc-hero-cinematic .dc-btn{
  border-radius:12px !important;
  padding:15px 28px !important;
  font-size:15px !important;
  font-weight:950 !important;
}

.dc-hero-cinematic .dc-btn.secondary{
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.22) !important;
}

/* Limpiar restos de hero viejo */
.dc-hero-cinematic .dc-hero-grid,
.dc-hero-cinematic .dc-hero-bg,
.dc-hero-cinematic .dc-hero-image-only,
.dc-hero-cinematic .dc-hero-card,
.dc-hero-cinematic .dc-glow{
  display:none !important;
}

/* Tablet */
@media(max-width:900px){
  .dc-hero-cinematic{
    min-height:560px !important;
  }

  .dc-hero-cinematic .dc-hero-scene{
    width:100% !important;
    background-position:center right !important;
    opacity:.72 !important;
  }

  .dc-hero-cinematic .dc-hero-shade{
    background:
      linear-gradient(
        180deg,
        rgba(5,8,18,.36) 0%,
        rgba(5,8,18,.68) 46%,
        #050812 100%
      ),
      linear-gradient(
        90deg,
        #050812 0%,
        rgba(5,8,18,.78) 48%,
        rgba(5,8,18,.28) 100%
      ) !important;
  }

  .dc-hero-cinematic .dc-hero-content{
    padding:70px 0 64px !important;
  }

  .dc-hero-cinematic h1{
    font-size:58px !important;
    max-width:560px !important;
  }

  .dc-hero-cinematic p{
    max-width:500px !important;
  }
}

/* Móvil */
@media(max-width:620px){
  .dc-hero-cinematic{
    min-height:660px !important;
    align-items:flex-end !important;
  }

  .dc-hero-cinematic .dc-hero-scene{
    width:100% !important;
    background-size:cover !important;
    background-position:center top !important;
    opacity:.58 !important;
  }

  .dc-hero-cinematic .dc-hero-shade{
    background:
      linear-gradient(
        180deg,
        rgba(5,8,18,.20) 0%,
        rgba(5,8,18,.52) 38%,
        #050812 82%,
        #050812 100%
      ),
      linear-gradient(
        90deg,
        rgba(5,8,18,.82) 0%,
        rgba(5,8,18,.46) 54%,
        rgba(5,8,18,.25) 100%
      ) !important;
  }

  .dc-hero-cinematic .dc-hero-content{
    width:90% !important;
    padding:250px 0 54px !important;
    text-align:center !important;
  }

  .dc-hero-cinematic .dc-kicker{
    font-size:13px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .dc-hero-cinematic h1{
    font-size:40px !important;
    line-height:1.02 !important;
    max-width:11ch !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }

  .dc-hero-cinematic p{
    font-size:16px !important;
    line-height:1.5 !important;
    max-width:31ch !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }

  .dc-hero-cinematic .dc-actions{
    justify-content:center !important;
    gap:12px !important;
  }

  .dc-hero-cinematic .dc-btn{
    flex:1 1 calc(50% - 6px) !important;
    min-width:0 !important;
    padding:14px 10px !important;
    font-size:14px !important;
  }
}

/* DC FIX DEFINITIVO: hero cinematográfico con IMG absoluta visible */
.dc-hero-cinematic{
  position:relative !important;
  min-height:520px !important;
  padding:0 !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  background:#050812 !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
}

.dc-hero-cinematic .dc-hero-scene,
.dc-hero-cinematic .dc-hero-bg,
.dc-hero-cinematic .dc-hero-grid,
.dc-hero-cinematic .dc-hero-image-only,
.dc-hero-cinematic .dc-hero-card{
  display:none !important;
}

.dc-hero-scene-img{
  display:block !important;
  position:absolute !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:78% !important;
  height:100% !important;
  z-index:1 !important;
  overflow:hidden !important;
}

.dc-hero-scene-img img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center right !important;
  opacity:1 !important;
}

.dc-hero-shade{
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  background:
    linear-gradient(
      90deg,
      #050812 0%,
      #050812 17%,
      rgba(5,8,18,.95) 26%,
      rgba(5,8,18,.74) 38%,
      rgba(5,8,18,.42) 50%,
      rgba(5,8,18,.12) 66%,
      rgba(5,8,18,.02) 100%
    ),
    linear-gradient(
      180deg,
      rgba(5,8,18,.10) 0%,
      rgba(5,8,18,.02) 48%,
      rgba(5,8,18,.28) 100%
    ) !important;
  pointer-events:none !important;
}

.dc-hero-glow{
  position:absolute !important;
  inset:0 !important;
  z-index:3 !important;
  background:
    radial-gradient(circle at 8% 48%, rgba(225,29,72,.30), transparent 34%),
    radial-gradient(circle at 95% 96%, rgba(124,58,237,.30), transparent 32%) !important;
  pointer-events:none !important;
}

.dc-hero-content{
  position:relative !important;
  z-index:4 !important;
  width:90% !important;
  max-width:1500px !important;
  margin:0 auto !important;
  padding:74px 0 72px !important;
}

.dc-hero-cinematic .dc-kicker{
  display:inline-flex !important;
  background:rgba(225,29,72,.16) !important;
  border:1px solid rgba(225,29,72,.55) !important;
  color:#fff !important;
  border-radius:999px !important;
  padding:9px 16px !important;
  font-size:15px !important;
  font-weight:900 !important;
  margin-bottom:20px !important;
}

.dc-hero-cinematic h1{
  max-width:610px !important;
  margin:0 0 18px !important;
  font-family:Georgia,serif !important;
  font-size:70px !important;
  line-height:.94 !important;
  letter-spacing:-.055em !important;
  color:#fff !important;
}

.dc-hero-cinematic h1 span{
  display:block !important;
}

.dc-hero-cinematic h1 span:nth-child(2){
  color:#e11d48 !important;
}

.dc-hero-cinematic p{
  max-width:520px !important;
  margin:0 !important;
  color:rgba(255,255,255,.88) !important;
  font-size:19px !important;
  line-height:1.55 !important;
}

.dc-hero-cinematic .dc-actions{
  display:flex !important;
  gap:16px !important;
  flex-wrap:wrap !important;
  margin-top:26px !important;
}

.dc-hero-cinematic .dc-btn{
  border-radius:12px !important;
  padding:15px 28px !important;
  font-size:15px !important;
  font-weight:950 !important;
}

.dc-hero-cinematic .dc-btn.secondary{
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.22) !important;
}

@media(max-width:900px){
  .dc-hero-cinematic{
    min-height:580px !important;
  }

  .dc-hero-scene-img{
    width:100% !important;
  }

  .dc-hero-scene-img img{
    object-position:center right !important;
    opacity:.72 !important;
  }

  .dc-hero-shade{
    background:
      linear-gradient(180deg, rgba(5,8,18,.25) 0%, rgba(5,8,18,.68) 48%, #050812 100%),
      linear-gradient(90deg, #050812 0%, rgba(5,8,18,.70) 48%, rgba(5,8,18,.24) 100%) !important;
  }
}

@media(max-width:620px){
  .dc-hero-cinematic{
    min-height:660px !important;
    align-items:flex-end !important;
  }

  .dc-hero-scene-img img{
    object-position:center top !important;
    opacity:.58 !important;
  }

  .dc-hero-content{
    padding:250px 0 54px !important;
    text-align:center !important;
  }

  .dc-hero-cinematic .dc-kicker{
    font-size:13px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .dc-hero-cinematic h1{
    font-size:40px !important;
    line-height:1.02 !important;
    max-width:11ch !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }

  .dc-hero-cinematic p{
    font-size:16px !important;
    line-height:1.5 !important;
    max-width:31ch !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
  }

  .dc-hero-cinematic .dc-actions{
    justify-content:center !important;
    gap:12px !important;
  }

  .dc-hero-cinematic .dc-btn{
    flex:1 1 calc(50% - 6px) !important;
    min-width:0 !important;
    padding:14px 10px !important;
    font-size:14px !important;
  }
}

/* DC FIX REAL: texto encima de la escena, no empujado a la derecha */
@media(min-width:901px){

  .dc-hero-cinematic{
    min-height:520px !important;
    height:520px !important;
    position:relative !important;
    display:block !important;
    overflow:hidden !important;
    background:#050812 !important;
  }

  .dc-hero-scene-img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    z-index:1 !important;
    display:block !important;
  }

  .dc-hero-scene-img img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center right !important;
    display:block !important;
  }

  .dc-hero-shade{
    position:absolute !important;
    inset:0 !important;
    z-index:2 !important;
    background:
      linear-gradient(
        90deg,
        #050812 0%,
        #050812 20%,
        rgba(5,8,18,.94) 31%,
        rgba(5,8,18,.72) 43%,
        rgba(5,8,18,.36) 55%,
        rgba(5,8,18,.08) 72%,
        rgba(5,8,18,.02) 100%
      ),
      radial-gradient(circle at 8% 50%, rgba(225,29,72,.28), transparent 36%),
      linear-gradient(180deg, rgba(5,8,18,.08), rgba(5,8,18,.22)) !important;
    pointer-events:none !important;
  }

  .dc-hero-glow{
    position:absolute !important;
    inset:0 !important;
    z-index:3 !important;
    pointer-events:none !important;
    background:radial-gradient(circle at 95% 96%, rgba(124,58,237,.28), transparent 34%) !important;
  }

  .dc-hero-content{
    position:absolute !important;
    left:10.5% !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:5 !important;
    width:520px !important;
    max-width:520px !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
  }

  .dc-hero-cinematic .dc-kicker{
    margin:0 0 18px 0 !important;
  }

  .dc-hero-cinematic h1{
    width:100% !important;
    max-width:520px !important;
    font-size:64px !important;
    line-height:.94 !important;
    letter-spacing:-.055em !important;
    margin:0 0 18px 0 !important;
    color:#fff !important;
  }

  .dc-hero-cinematic h1 span{
    display:block !important;
  }

  .dc-hero-cinematic h1 span:nth-child(2){
    color:#e11d48 !important;
  }

  .dc-hero-cinematic p{
    width:100% !important;
    max-width:480px !important;
    font-size:18px !important;
    line-height:1.5 !important;
    margin:0 !important;
    color:rgba(255,255,255,.90) !important;
  }

  .dc-hero-cinematic .dc-actions{
    margin-top:26px !important;
    display:flex !important;
    justify-content:flex-start !important;
    gap:14px !important;
  }
}

/* Tablet */
@media(min-width:621px) and (max-width:900px){

  .dc-hero-content{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    width:90% !important;
    max-width:620px !important;
    margin:0 auto !important;
    padding:80px 0 !important;
    z-index:5 !important;
  }

  .dc-hero-cinematic h1{
    font-size:56px !important;
    max-width:560px !important;
  }
}

/* Móvil */
@media(max-width:620px){

  .dc-hero-content{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    width:90% !important;
    max-width:90% !important;
    margin:0 auto !important;
    padding:250px 0 54px !important;
    z-index:5 !important;
    text-align:center !important;
  }

  .dc-hero-cinematic h1{
    font-size:40px !important;
    max-width:11ch !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .dc-hero-cinematic p{
    max-width:31ch !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* DC TUNE: mover texto del hero más a la izquierda */
@media(min-width:901px){
  .dc-hero-content{
    left:6.8% !important;
    width:560px !important;
    max-width:560px !important;
  }

  .dc-hero-cinematic h1{
    max-width:560px !important;
  }

  .dc-hero-cinematic p{
    max-width:500px !important;
  }
}

/* DC TUNE: texto hero un poco más a la izquierda */
@media(min-width:901px){
  .dc-hero-content{
    left:5.2% !important;
  }
}

/* DC TUNE: agrandar un poco más el título del hero */
@media (min-width: 901px){
  .dc-hero-content h1,
  .dc-hero-copy h1,
  .dc-hero-text h1,
  .dc-hero h1{
    font-size: 6.35rem !important;
    line-height: .92 !important;
    letter-spacing: -.04em !important;
  }
}

@media (min-width: 621px) and (max-width: 900px){
  .dc-hero-content h1,
  .dc-hero-copy h1,
  .dc-hero-text h1,
  .dc-hero h1{
    font-size: 4.8rem !important;
    line-height: .94 !important;
  }
}

@media (max-width: 620px){
  .dc-hero-content h1,
  .dc-hero-copy h1,
  .dc-hero-text h1,
  .dc-hero h1{
    font-size: 3.45rem !important;
    line-height: .95 !important;
  }
}

/* DC TUNE: título hero balanceado, no gigante */
@media (min-width: 901px){
  .dc-hero-cinematic h1,
  .dc-hero-content h1,
  .dc-hero h1{
    font-size: 4.95rem !important;
    line-height: .96 !important;
    letter-spacing: -.045em !important;
    max-width: 620px !important;
    margin-bottom: 18px !important;
  }

  .dc-hero-cinematic h1 span,
  .dc-hero-content h1 span,
  .dc-hero h1 span{
    display: block !important;
  }
}

@media (min-width: 621px) and (max-width: 900px){
  .dc-hero-cinematic h1,
  .dc-hero-content h1,
  .dc-hero h1{
    font-size: 4rem !important;
    line-height: .96 !important;
  }
}

@media (max-width: 620px){
  .dc-hero-cinematic h1,
  .dc-hero-content h1,
  .dc-hero h1{
    font-size: 2.75rem !important;
    line-height: 1.02 !important;
    max-width: 11.5ch !important;
  }
}

/* DC PROMO BANNER MITIENDAGRATIS */
.dc-promo-wrap{
  margin-top:28px !important;
  margin-bottom:34px !important;
}

.dc-promo-banner-link{
  display:block !important;
  width:100% !important;
  text-decoration:none !important;
}

.dc-promo-banner-img{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  border-radius:22px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 16px 44px rgba(0,0,0,.32) !important;
}

@media(max-width:620px){
  .dc-promo-wrap{
    margin-top:22px !important;
    margin-bottom:28px !important;
  }

  .dc-promo-banner-img{
    border-radius:16px !important;
  }
}

/* DC TUNE: banner MiTiendaGratis slim y responsive */
.dc-promo-wrap{
  width:90% !important;
  max-width:1500px !important;
  margin:34px auto 42px !important;
  padding:0 !important;
}

.dc-promo-banner-link{
  display:block !important;
  width:100% !important;
  overflow:hidden !important;
  border-radius:22px !important;
  border:1px solid rgba(225,29,72,.28) !important;
  box-shadow:0 18px 44px rgba(0,0,0,.34) !important;
  background:#070914 !important;
}

.dc-promo-banner-img{
  display:block !important;
  width:100% !important;
  height:190px !important;
  max-height:190px !important;
  object-fit:cover !important;
  object-position:center center !important;
  border-radius:0 !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Pantallas grandes */
@media(min-width:1500px){
  .dc-promo-banner-img{
    height:210px !important;
    max-height:210px !important;
  }
}

/* Laptop / tablet horizontal */
@media(max-width:1200px){
  .dc-promo-wrap{
    width:92% !important;
    margin:30px auto 38px !important;
  }

  .dc-promo-banner-img{
    height:170px !important;
    max-height:170px !important;
  }
}

/* Tablet */
@media(max-width:900px){
  .dc-promo-wrap{
    width:90% !important;
    margin:26px auto 34px !important;
  }

  .dc-promo-banner-link{
    border-radius:18px !important;
  }

  .dc-promo-banner-img{
    height:150px !important;
    max-height:150px !important;
    object-position:center center !important;
  }
}

/* Móvil: se enfoca más en el texto izquierdo */
@media(max-width:620px){
  .dc-promo-wrap{
    width:90% !important;
    margin:22px auto 30px !important;
  }

  .dc-promo-banner-link{
    border-radius:16px !important;
  }

  .dc-promo-banner-img{
    height:128px !important;
    max-height:128px !important;
    object-fit:cover !important;
    object-position:left center !important;
  }
}

/* Móvil angosto */
@media(max-width:390px){
  .dc-promo-banner-img{
    height:118px !important;
    max-height:118px !important;
    object-position:left center !important;
  }
}

/* DC TUNE: contador de historias por género */
.dc-genre{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:5px !important;
}

.dc-genre-name{
  display:block !important;
  font-weight:950 !important;
  color:#fff !important;
}

.dc-genre small{
  display:block !important;
  font-size:13px !important;
  line-height:1.25 !important;
  color:rgba(255,255,255,.68) !important;
  font-weight:700 !important;
}

@media(max-width:620px){
  .dc-genre{
    gap:4px !important;
  }

  .dc-genre small{
    font-size:11.5px !important;
  }
}

/* DC: contador real por género */
.dc-genre{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:5px !important;
}

.dc-genre-name{
  display:block !important;
  font-weight:950 !important;
  color:#fff !important;
}

.dc-genre small{
  display:block !important;
  font-size:13px !important;
  line-height:1.25 !important;
  color:rgba(255,255,255,.68) !important;
  font-weight:700 !important;
}

@media(max-width:620px){
  .dc-genre small{
    font-size:11.5px !important;
  }
}

/* DC FIX: contador de géneros amarrado, con color y separación */
.dc-genre{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  gap:0 !important;
  min-height:96px !important;
  padding:22px 24px !important;
}

.dc-genre-name{
  display:block !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:950 !important;
  line-height:1.1 !important;
  margin-top:4px !important;
}

.dc-genre-count{
  display:block !important;
  margin-top:9px !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:850 !important;
  color:var(--accent) !important;
  opacity:.95 !important;
  letter-spacing:.01em !important;
}

.dc-genre:hover .dc-genre-count{
  opacity:1 !important;
  filter:brightness(1.18) !important;
}

@media(max-width:620px){
  .dc-genre{
    min-height:86px !important;
    padding:16px !important;
  }

  .dc-genre-name{
    font-size:14.5px !important;
  }

  .dc-genre-count{
    margin-top:7px !important;
    font-size:11.5px !important;
  }
}

/* DC FINAL: contador de géneros real, color y separación */
.dc-genre{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:0 !important;
  min-height:98px !important;
  padding:22px 24px !important;
}

.dc-genre-name{
  display:block !important;
  color:#ffffff !important;
  font-weight:950 !important;
  font-size:16px !important;
  line-height:1.1 !important;
}

.dc-genre-count{
  display:inline-flex !important;
  margin-top:11px !important;
  color:var(--accent) !important;
  background:color-mix(in srgb, var(--accent) 14%, transparent) !important;
  border:1px solid color-mix(in srgb, var(--accent) 34%, transparent) !important;
  border-radius:999px !important;
  padding:4px 9px !important;
  font-size:12.5px !important;
  line-height:1 !important;
  font-weight:900 !important;
}

@supports not (color: color-mix(in srgb, red 50%, transparent)){
  .dc-genre-count{
    background:rgba(255,255,255,.06) !important;
    border:1px solid rgba(255,255,255,.12) !important;
  }
}

@media(max-width:620px){
  .dc-genre{
    min-height:88px !important;
    padding:16px !important;
  }

  .dc-genre-name{
    font-size:14.5px !important;
  }

  .dc-genre-count{
    margin-top:8px !important;
    font-size:11px !important;
    padding:4px 8px !important;
  }
}

/* DC HARD FIX: contador visible y separado */
.dc-genre{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  min-height:98px !important;
  padding:22px 24px !important;
}

.dc-genre-name{
  display:block !important;
  color:#fff !important;
  font-weight:950 !important;
  font-size:16px !important;
  line-height:1.1 !important;
}

.dc-genre-count{
  display:inline-flex !important;
  margin-top:12px !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  color:var(--accent) !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  font-size:12.5px !important;
  font-weight:950 !important;
  line-height:1 !important;
}

@media(max-width:620px){
  .dc-genre{
    min-height:88px !important;
    padding:16px !important;
  }

  .dc-genre-name{
    font-size:14.5px !important;
  }

  .dc-genre-count{
    margin-top:8px !important;
    font-size:11px !important;
    padding:4px 8px !important;
  }
}

/* DC STORY DARK PAGE + ACCORDION */
.dc-story-dark-page{
  padding-top:42px !important;
  padding-bottom:40px !important;
}

.dc-story-hero-premium{
  display:grid !important;
  grid-template-columns:340px 1fr !important;
  gap:34px !important;
  align-items:center !important;
  background:
    radial-gradient(circle at 12% 20%, rgba(225,29,72,.18), transparent 34%),
    linear-gradient(135deg, rgba(16,24,39,.96), rgba(5,8,18,.98)) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:30px !important;
  padding:26px !important;
  box-shadow:0 24px 80px rgba(0,0,0,.34) !important;
  overflow:hidden !important;
}

.dc-story-cover{
  border-radius:24px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 18px 50px rgba(0,0,0,.38) !important;
}

.dc-story-cover img{
  display:block !important;
  width:100% !important;
  height:460px !important;
  object-fit:cover !important;
}

.dc-story-info h1{
  font-family:Georgia,serif !important;
  font-size:56px !important;
  line-height:.98 !important;
  letter-spacing:-.045em !important;
  margin:18px 0 16px !important;
  color:#fff !important;
  max-width:780px !important;
}

.dc-story-info p{
  max-width:760px !important;
  color:rgba(255,255,255,.82) !important;
  font-size:18px !important;
  line-height:1.65 !important;
}

.dc-story-meta{
  display:flex !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  margin-top:18px !important;
}

.dc-story-meta span{
  display:inline-flex !important;
  padding:8px 12px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:rgba(255,255,255,.76) !important;
  font-size:13px !important;
  font-weight:800 !important;
}

.dc-chapters-section{
  padding-top:44px !important;
}

.dc-chapter-accordion{
  display:grid !important;
  gap:14px !important;
}

.dc-chapter-accordion-item{
  background:rgba(16,24,39,.86) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:22px !important;
  overflow:hidden !important;
  box-shadow:0 14px 40px rgba(0,0,0,.20) !important;
}

.dc-chapter-toggle{
  width:100% !important;
  display:grid !important;
  grid-template-columns:46px 1fr 38px !important;
  align-items:center !important;
  gap:14px !important;
  text-align:left !important;
  padding:18px 20px !important;
  background:transparent !important;
  border:0 !important;
  color:#fff !important;
  cursor:pointer !important;
}

.dc-chapter-number{
  width:42px !important;
  height:42px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:14px !important;
  background:#e11d48 !important;
  color:#fff !important;
  font-weight:950 !important;
}

.dc-chapter-title{
  font-size:18px !important;
  font-weight:950 !important;
  color:#fff !important;
}

.dc-chapter-icon{
  position:relative !important;
  width:34px !important;
  height:34px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  background:rgba(255,255,255,.06) !important;
}

.dc-chapter-icon::before,
.dc-chapter-icon::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:14px !important;
  height:2px !important;
  background:#fff !important;
  border-radius:999px !important;
  transform:translate(-50%,-50%) !important;
}

.dc-chapter-icon::after{
  transform:translate(-50%,-50%) rotate(90deg) !important;
}

.dc-chapter-accordion-item.is-open .dc-chapter-icon::after{
  opacity:0 !important;
}

.dc-chapter-content{
  display:none !important;
  padding:0 22px 24px 82px !important;
}

.dc-chapter-accordion-item.is-open .dc-chapter-content{
  display:block !important;
}

.dc-reader-content-dark{
  max-width:850px !important;
  color:rgba(255,255,255,.86) !important;
  font-family:Georgia,serif !important;
  font-size:20px !important;
  line-height:1.85 !important;
}

.dc-reader-content-dark p{
  margin:0 0 1.35em !important;
}

@media(max-width:900px){
  .dc-story-hero-premium{
    grid-template-columns:1fr !important;
  }

  .dc-story-cover img{
    height:420px !important;
  }

  .dc-story-info h1{
    font-size:44px !important;
  }

  .dc-chapter-content{
    padding:0 20px 22px 20px !important;
  }
}

@media(max-width:620px){
  .dc-story-dark-page{
    padding-top:28px !important;
  }

  .dc-story-hero-premium{
    padding:18px !important;
    border-radius:24px !important;
  }

  .dc-story-cover img{
    height:360px !important;
  }

  .dc-story-info h1{
    font-size:34px !important;
    line-height:1.05 !important;
  }

  .dc-story-info p{
    font-size:16px !important;
  }

  .dc-chapter-toggle{
    grid-template-columns:40px 1fr 34px !important;
    padding:15px !important;
    gap:10px !important;
  }

  .dc-chapter-number{
    width:36px !important;
    height:36px !important;
    border-radius:12px !important;
  }

  .dc-chapter-title{
    font-size:15px !important;
  }

  .dc-reader-content-dark{
    font-size:18px !important;
    line-height:1.78 !important;
  }
}

/* DC FIX: genres desktop 5 columns */
.dc-genre-grid{
  display:grid !important;
  grid-template-columns:repeat(5, minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:stretch !important;
}

.dc-genre{
  min-height:112px !important;
}

/* laptop */
@media (max-width:1400px){
  .dc-genre-grid{
    grid-template-columns:repeat(5, minmax(0,1fr)) !important;
  }
}

/* tablet grande */
@media (max-width:1180px){
  .dc-genre-grid{
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  }
}

/* tablet */
@media (max-width:980px){
  .dc-genre-grid{
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  }
}

/* móvil */
@media (max-width:620px){
  .dc-genre-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:13px !important;
  }
}
/* DC FIX END: genres desktop 5 columns */



/* DC FIX: hero estable sin corte */
.dc-hero{
  position:relative !important;
  min-height:470px !important;
  height:auto !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  overflow:hidden !important;
  background-position:center center !important;
  background-size:cover !important;
}

.dc-hero::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,
      rgba(5,8,18,.98) 0%,
      rgba(48,8,28,.92) 15%,
      rgba(22,10,25,.75) 33%,
      rgba(5,8,18,.28) 51%,
      rgba(5,8,18,.05) 70%,
      rgba(5,8,18,.16) 100%
    ) !important;
  z-index:1 !important;
}

.dc-hero .dc-wrap,
.dc-hero-inner{
  position:relative !important;
  z-index:2 !important;
  width:90% !important;
  max-width:1360px !important;
  margin:0 auto !important;
}

.dc-hero-content{
  position:relative !important;
  z-index:3 !important;
  max-width:520px !important;
  margin:0 !important;
  padding:72px 0 70px !important;
  transform:none !important;
}

.dc-hero-content h1{
  max-width:540px !important;
  margin:18px 0 22px !important;
  line-height:.98 !important;
}

.dc-hero-content p{
  max-width:520px !important;
}

.dc-hero-actions,
.dc-actions{
  margin-top:26px !important;
}

/* Ajuste para pantallas grandes: solo un poquito hacia el centro, sin cortar */
@media(min-width:1300px){
  .dc-hero-content{
    margin-left:4% !important;
  }
}

/* Móvil/tablet: que no se corte nunca */
@media(max-width:900px){
  .dc-hero{
    min-height:auto !important;
    align-items:flex-start !important;
    background-position:center center !important;
  }

  .dc-hero-content{
    margin-left:0 !important;
    padding:54px 0 52px !important;
    max-width:100% !important;
  }

  .dc-hero-content h1{
    max-width:100% !important;
  }
}
/* DC FIX END: hero estable sin corte */

/* DC FIX: hero content more left */
.dc-hero .dc-wrap,
.dc-hero-inner{
  width:90% !important;
  max-width:1500px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.dc-hero-content{
  margin-left:0 !important;
  padding-left:0 !important;
  max-width:540px !important;
  transform:translateX(-18px) !important;
}

/* En pantallas grandes, todavía un poco más a la izquierda */
@media(min-width:1300px){
  .dc-hero-content{
    margin-left:0 !important;
    transform:translateX(-34px) !important;
  }
}

/* En pantallas muy grandes, no exagerar */
@media(min-width:1700px){
  .dc-hero-content{
    transform:translateX(-42px) !important;
  }
}

/* Móvil: no mover hacia afuera */
@media(max-width:900px){
  .dc-hero-content{
    transform:none !important;
    margin-left:0 !important;
    padding-left:0 !important;
  }
}
/* DC FIX END: hero content more left */




















/* DC MOBILE HERO REAL CSS START */

/* Por defecto en PC: solo se ve el hero normal */
.dc-mobile-hero-real{
  display:none;
}

/* En responsive: ocultamos totalmente el hero desktop */
@media(max-width:900px){

  .dc-hero{
    display:none !important;
  }

  .dc-mobile-hero-real{
    display:block !important;
    position:relative;
    min-height:640px;
    overflow:hidden;
    background:#050816;
    border-bottom:1px solid rgba(255,255,255,.08);
  }

  .dc-mobile-hero-media{
    position:absolute;
    inset:0;
    z-index:1;
  }

  .dc-mobile-hero-media img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:center center;
  }

  .dc-mobile-hero-shade{
    position:absolute;
    inset:0;
    z-index:2;
    pointer-events:none;
    background:
      linear-gradient(180deg,
        rgba(5,8,18,.18) 0%,
        rgba(5,8,18,.28) 26%,
        rgba(70,8,36,.58) 56%,
        rgba(8,6,18,.96) 100%
      );
  }

  .dc-mobile-hero-content{
    position:relative;
    z-index:3;
    min-height:640px;
    width:88%;
    max-width:420px;
    margin:0 auto;
    padding:275px 0 44px;
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-end;
  }

  .dc-mobile-kicker{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(244,63,94,.78);
    color:#fff;
    background:rgba(65,8,30,.48);
    border-radius:999px;
    padding:9px 18px;
    font-size:13px;
    line-height:1;
    font-weight:900;
    box-shadow:0 10px 30px rgba(244,63,94,.16);
    margin-bottom:26px;
  }

  .dc-mobile-hero-content h1{
    margin:0;
    font-family:Georgia,serif;
    font-size:43px;
    line-height:.95;
    letter-spacing:-.045em;
    color:#fff;
    text-shadow:0 6px 28px rgba(0,0,0,.38);
  }

  .dc-mobile-hero-content h1 strong{
    display:block;
    color:#e91b4f;
    font-weight:inherit;
  }

  .dc-mobile-hero-content p{
    margin:24px auto 0;
    color:#fff;
    font-size:16px;
    line-height:1.48;
    max-width:360px;
    text-shadow:0 3px 18px rgba(0,0,0,.45);
  }

  .dc-mobile-hero-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    width:100%;
    margin-top:26px;
  }

  .dc-mobile-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:54px;
    border-radius:14px;
    font-weight:950;
    text-decoration:none;
    color:#fff;
    font-size:14px;
  }

  .dc-mobile-btn.primary{
    background:#e91b4f;
    box-shadow:0 18px 34px rgba(233,27,79,.24);
  }

  .dc-mobile-btn.secondary{
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.18);
  }
}

@media(max-width:520px){
  .dc-mobile-hero-real{
    min-height:625px;
  }

  .dc-mobile-hero-content{
    min-height:625px;
    padding-top:265px;
    width:86%;
  }

  .dc-mobile-hero-content h1{
    font-size:40px;
  }

  .dc-mobile-hero-content p{
    font-size:15.5px;
  }
}

@media(max-width:390px){
  .dc-mobile-hero-real{
    min-height:610px;
  }

  .dc-mobile-hero-content{
    min-height:610px;
    padding-top:250px;
  }

  .dc-mobile-hero-content h1{
    font-size:36px;
  }

  .dc-mobile-hero-actions{
    gap:10px;
  }

  .dc-mobile-btn{
    min-height:50px;
    font-size:13px;
  }
}

/* DC MOBILE HERO REAL CSS END */

























/* DC ADS FINAL CSS START */
.dc-final-ad{
  background:#050816 !important;
  padding:24px 0 18px !important;
}

.dc-final-ad-wrap{
  width:90% !important;
  max-width:1460px !important;
  margin:0 auto !important;
}

.dc-final-ad-link{
  position:relative !important;
  display:block !important;
  width:100% !important;
  background:#070b17 !important;
  border:1px solid rgba(233,30,99,.34) !important;
  border-radius:20px !important;
  overflow:hidden !important;
  box-shadow:0 18px 40px rgba(0,0,0,.22) !important;
  text-decoration:none !important;
}

.dc-final-ad-link img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#070b17 !important;
}

.dc-final-ad-label{
  position:absolute !important;
  top:10px !important;
  right:14px !important;
  z-index:8 !important;
  color:#fff !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.16em !important;
  line-height:1 !important;
  text-transform:uppercase !important;
  opacity:.92 !important;
  text-shadow:0 2px 8px rgba(0,0,0,.75) !important;
  pointer-events:none !important;
}

/* PC: solo el banner desktop */
@media(min-width:901px){
  .dc-final-ad-mobile{
    display:none !important;
  }

  .dc-final-ad-desktop{
    display:block !important;
  }
}

/* Responsive: solo los 2 banners mobile */
@media(max-width:900px){
  .dc-final-ad-desktop{
    display:none !important;
  }

  .dc-final-ad-mobile{
    display:block !important;
    padding:16px 0 10px !important;
  }

  .dc-final-ad-wrap{
    width:92% !important;
  }

  .dc-final-ad-link{
    border-radius:16px !important;
  }

  .dc-final-ad-label{
    top:8px !important;
    right:10px !important;
    font-size:8px !important;
    letter-spacing:.12em !important;
  }
}
/* DC ADS FINAL CSS END */


/* DC GLOBAL AD CSS START */
.dc-global-ad{
  background:#050816;
  padding:22px 0 18px;
}

.dc-global-ad-wrap{
  width:90%;
  max-width:1460px;
  margin:0 auto;
}

.dc-global-ad-link{
  position:relative;
  display:block;
  width:100%;
  background:#070b17;
  border:1px solid rgba(233,30,99,.34);
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 18px 40px rgba(0,0,0,.22);
  text-decoration:none;
}

.dc-global-ad-link img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:contain;
  object-position:center center;
  background:#070b17;
}

.dc-global-ad-label{
  position:absolute;
  top:10px;
  right:14px;
  z-index:8;
  color:#fff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.16em;
  line-height:1;
  text-transform:uppercase;
  opacity:.92;
  text-shadow:0 2px 8px rgba(0,0,0,.75);
  pointer-events:none;
}

.dc-story-main-ad{
  padding:18px 0 8px;
  background:transparent;
}

.dc-story-main-ad .dc-global-ad-wrap{
  width:100%;
  max-width:100%;
}

@media(max-width:900px){
  .dc-global-ad-wrap{
    width:92%;
  }

  .dc-global-ad-link{
    border-radius:16px;
  }

  .dc-global-ad-label{
    top:8px;
    right:10px;
    font-size:8px;
    letter-spacing:.12em;
  }
}
/* DC GLOBAL AD CSS END */


/* DC FIX: story ad below main */
.dc-story-main-ad{
  clear:both !important;
  width:100% !important;
  padding:26px 0 18px !important;
  background:#050816 !important;
}

.dc-story-main-ad .dc-global-ad-wrap{
  width:90% !important;
  max-width:1460px !important;
  margin:0 auto !important;
}

@media(max-width:900px){
  .dc-story-main-ad{
    padding:18px 0 12px !important;
  }

  .dc-story-main-ad .dc-global-ad-wrap{
    width:92% !important;
  }
}
/* DC FIX END: story ad below main */


.dc-story-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:100%;
  padding:4px 10px;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(255,215,128,.16), rgba(255,92,138,.14));
  color:#ffe6a8;
  border:1px solid rgba(255,218,150,.28);
  font-weight:800;
  letter-spacing:.01em;
  line-height:1.15;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
}

@media (max-width: 700px){
  .dc-story-badge{
    padding:3px 8px;
    font-size:11px;
  }
}
