/* Filmverse Style Fixes v1.3.7
   Readable titles over post images: white text + cinematic gradient scrim.
   (The gradient scrim + positioning also exist in the WPCode "Filmverse makeover fixes"
   snippet; rules here are identical and harmless if both load.) */

.cm-single-slide {
    position: relative !important;
}

.cm-single-slide::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(to top, rgba(0,0,0,.82) 0%, rgba(0,0,0,.45) 45%, rgba(0,0,0,.05) 75%, transparent 100%) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.cm-slide-content {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 2 !important;
    padding: 22px !important;
}

.cm-slide-content .cm-entry-title a {
    color: #fff !important;
    text-shadow: 0 2px 12px rgba(0,0,0,.6) !important;
}

.cm-slide-content .cm-below-entry-meta,
.cm-slide-content .cm-below-entry-meta a {
    color: rgba(255,255,255,.88) !important;
}

.cm-highlighted-posts .cm-post {
    position: relative !important;
}

.cm-highlighted-posts .cm-post::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(to top, rgba(0,0,0,.82) 0%, rgba(0,0,0,.4) 50%, transparent 80%) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.cm-highlighted-posts .cm-post-content {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 2 !important;
    padding: 16px !important;
}

.cm-highlighted-posts .cm-post-content .cm-entry-title a {
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.6) !important;
}

/* ============ v1.3.6 — Date bar + header banner removed ============
   The theme sets .cm-entry-summary p{font-size:1.4rem} directly on paragraphs,
   which beats any inherited size from the parent div — so the rule must target
   the <p> elements themselves. Verified against the live HTML + stylesheet. */

html body.single-post .cm-entry-summary p{
  font-size:18px !important;
  line-height:1.85 !important;
}

/* Homepage/archive/search card excerpts: easier to scan */
html body .blog .cm-entry-summary p, html body .archive .cm-entry-summary p,
html body .home .cm-entry-summary p, html body .search .cm-entry-summary p{
  font-size:17px !important;
  line-height:1.7 !important;
}

@media (max-width:768px){
  html body.single-post .cm-entry-summary p{ font-size:16px !important; }
  html body.single-post h1.cm-entry-title{ font-size:20px !important; }
}

/* Single-article headline: slightly smaller than the theme default 4rem/40px
   on all screen sizes (owner request 2026-10-16). The max is capped below the
   default so it can never render bigger; it shrinks on narrow screens. */
html body.single-post h1.cm-entry-title{
  font-size:clamp(24px,3vw,30px) !important;
}

/* Source credit line under each article: ~25% smaller (owner request 2026-10-16).
   The source line is always a paragraph whose only child is an <em>
   ("Source: ..."), so em:only-child targets it precisely. Relative sizing
   keeps the reduction proportional on mobile too. */
html body.single-post .cm-entry-summary p > em:only-child{
  font-size:75% !important;
}

/* Remove the top date bar and the header ad banner (owner request 2026-10-16).
   display:none collapses the space so the page content moves up. */
.cm-top-bar{ display:none !important; }
#header-right-sidebar{ display:none !important; }

/* ============ v1.3.7 — Homepage slider Previous/Next buttons ============
   Always visible (not hover-only), big enough to tap on mobile.
   Colour: Filmverse accent red #C1121F. */
.cm-featured-category-slider{ position:relative !important; }
.fv-slider-nav{
  position:absolute !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  z-index:60 !important;
  width:46px !important;
  height:46px !important;
  border-radius:50% !important;
  background:rgba(193,18,31,.94) !important;
  color:#fff !important;
  border:2px solid rgba(255,255,255,.9) !important;
  box-shadow:0 2px 10px rgba(0,0,0,.45) !important;
  font-size:30px !important;
  line-height:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  padding:0 0 4px 0 !important;
  opacity:1 !important;
}
.fv-slider-nav--prev{ left:12px !important; }
.fv-slider-nav--next{ right:12px !important; }
.fv-slider-nav:hover, .fv-slider-nav:focus{
  background:#8f0d18 !important;
  outline:2px solid #fff !important;
}
@media (max-width:768px){
  .fv-slider-nav{ width:40px !important; height:40px !important; font-size:26px !important; }
  .fv-slider-nav--prev{ left:8px !important; }
  .fv-slider-nav--next{ right:8px !important; }
}

/* ============ v1.3.7 — Uniform homepage image frames ============
   Every homepage image sits in the same landscape frame and is cropped
   cleanly to fill it (object-fit: cover) — no stretching, no uneven
   heights, no slide-to-slide size jumps when a source image is small
   or portrait-shaped. (Portrait posters still centre-crop; the lasting
   cure is landscape featured images at upload time.) */
.home .cm-single-slide img{
  width:100% !important;
  aspect-ratio:800/445 !important;
  object-fit:cover !important;
  display:block !important;
}
.home .cm-posts .cm-featured-image img{
  width:100% !important;
  aspect-ratio:780/445 !important;
  object-fit:cover !important;
  display:block !important;
}
.home .cm-featured-posts .cm-first-post img{
  width:100% !important;
  aspect-ratio:390/205 !important;
  object-fit:cover !important;
  display:block !important;
}
.home .cm-highlighted-posts .cm-post img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}
