/*
Theme Name: KissCartoonGuide Child Theme V3.0 – Black
Description: KissCartoonGuide custom layer for Kadence with responsive post archives and search/category/genre results.
Author: KissCartoonGuide
Version: 3.0.0
Text Domain: kisscartoonguide-child
Template: kadence
*/

/* Keep Kadence header/footer dimensions and Customizer output untouched.
   Only the page canvas gets a dark fallback background. */
html,
body {
  background-color: #101317;
}

:root{
  --mtw-red:#DF301C;
  --mtw-red-hover:#F0442F;
  --mtw-orange:#FF9100;
  --mtw-orange-hover:#FFAA33;
  --mtw-cream:#FFF1D1;
  --mtw-cyan:#00B7CD;
  --mtw-cyan-hover:#25D2E8;
  --mtw-green:#2ECC71;

  /* softer body palette: low glare, clear hierarchy */
  --mtw-body-bg:#101317;
  --mtw-body-surface:#15191E;
  --mtw-body-card:#191E24;
  --mtw-body-card-2:#1C2229;
  --mtw-body-border:#2A3037;
  --mtw-body-border-soft:#242A31;
  --mtw-body-text:#EEE9DF;
  --mtw-body-copy:#CFC9BE;
  --mtw-body-muted:#9F998F;
  --mtw-body-dim:#777169;
}

/* KADENCE HEADER — sticky at the top while remaining in normal document flow.
   This keeps the body content below the header instead of sliding underneath it. */
#masthead,
.site-header {
  position: sticky;
  top: 0;
  z-index: 9999;
}

/* Keep the WordPress admin bar from covering the sticky header when logged in. */
.admin-bar #masthead,
.admin-bar .site-header {
  top: 32px;
}

@media (max-width: 782px) {
  .admin-bar #masthead,
  .admin-bar .site-header {
    top: 46px;
  }
}

/* BODY ONLY — deliberately does not recolor header/site title/page-title */
.mtw-page{
  background:var(--mtw-body-bg);
  padding:42px 0 78px;
}

.mtw-page-inner{
  width:min(1160px, calc(100% - 40px));
  margin:0 auto;
}

.mtw-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
  margin:0 0 24px;
  color:var(--mtw-body-muted);
  font-size:13px;
  line-height:1.5;
}

.mtw-breadcrumb a{
  color:var(--mtw-cyan);
  text-decoration:none;
}
.mtw-breadcrumb a:hover,
.mtw-breadcrumb a:focus-visible{ color:var(--mtw-cyan-hover); text-decoration:underline; }

.mtw-movie{ margin:0; }

.mtw-hero{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:34px;
  align-items:start;
  padding:24px;
  background:var(--mtw-body-surface);
  border:1px solid var(--mtw-body-border-soft);
  border-radius:18px;
}

.mtw-poster{
  overflow:hidden;
  border:1px solid var(--mtw-body-border);
  border-radius:13px;
  background:#0C0F12;
  box-shadow:0 12px 28px rgba(0,0,0,.20);
}

.mtw-poster img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:2/3;
  object-fit:cover;
}

.mtw-kicker{
  margin:3px 0 9px;
  color:var(--mtw-orange);
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

/* Page title colour is intentionally inherited from the existing theme. */
.mtw-title{
  margin:0 0 14px!important;
  max-width:760px;
  font-size:clamp(34px,5vw,58px)!important;
  line-height:1.03!important;
  letter-spacing:-.035em!important;
}

.mtw-rating{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 16px;
  color:var(--mtw-orange);
}
.mtw-rating strong{ color:var(--mtw-body-text); font-size:19px; }
.mtw-rating span:last-child{ color:var(--mtw-body-muted); font-weight:650; font-size:14px; }

.mtw-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px 0;
  margin:0 0 15px;
  color:var(--mtw-body-copy);
  font-size:14px;
}
.mtw-meta span{
  padding:0 12px;
  border-right:1px solid var(--mtw-body-border);
}
.mtw-meta span:first-child{ padding-left:0; }
.mtw-meta span:last-child{ border-right:0; }

.mtw-genres{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:0 0 20px;
}
.mtw-genres a{
  padding:6px 10px;
  border:1px solid var(--mtw-body-border);
  border-radius:999px;
  background:rgba(255,255,255,.02);
  color:var(--mtw-body-copy);
  text-decoration:none;
  font-size:12px;
  font-weight:700;
}
.mtw-genres a:hover,
.mtw-genres a:focus-visible{
  border-color:var(--mtw-cyan);
  color:var(--mtw-cyan-hover);
  background:rgba(0,183,205,.06);
}

/* Movie action CTAs intentionally removed. */

.mtw-verdict{
  max-width:760px;
  padding:16px 18px;
  border:1px solid var(--mtw-body-border-soft);
  border-left:3px solid var(--mtw-orange);
  border-radius:10px;
  background:var(--mtw-body-card);
  color:var(--mtw-body-copy);
  font-size:15px;
  line-height:1.72;
}
.mtw-verdict b{ display:block; margin-bottom:3px; color:var(--mtw-body-text); font-size:13px; }

.mtw-provider-strip{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 18px;
  margin:18px 0 0;
  padding:11px 14px;
  border:1px solid var(--mtw-body-border-soft);
  border-radius:14px;
  background:var(--mtw-body-card);
}
.mtw-provider-group{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.mtw-provider-group-label{
  color:var(--mtw-body-muted);
  font-size:10px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mtw-provider-icons{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.mtw-provider-icon{
  display:inline-flex;
  width:38px;
  height:38px;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px solid var(--mtw-body-border-soft);
  border-radius:12px;
  background:var(--mtw-body-surface);
  box-shadow:0 3px 10px rgba(0,0,0,.12);
}
.mtw-provider-icon img{
  display:block;
  width:27px;
  height:27px;
  object-fit:contain;
}
.mtw-watch-provider{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  color:inherit;
  text-decoration:none;
}
.mtw-watch-item .mtw-watch-provider:hover .mtw-platform,
.mtw-watch-item .mtw-watch-provider:focus-visible .mtw-platform{
  color:var(--mtw-cyan);
}
.mtw-watch-provider img{
  display:block;
  flex:0 0 34px;
  width:34px;
  height:34px;
  object-fit:contain;
}
.mtw-watch-provider .mtw-platform{
  overflow-wrap:anywhere;
}

.mtw-section{
  width:100%;
  max-width:850px;
  margin:52px auto 0;
  scroll-margin-top:24px;
}
.mtw-section--wide{ max-width:none; }

.mtw-section h2{
  margin:0 0 15px!important;
  color:var(--mtw-body-text)!important;
  font-size:28px!important;
  line-height:1.2!important;
  letter-spacing:-.02em;
}

.mtw-copy{
  color:var(--mtw-body-copy);
  font-size:16px;
  line-height:1.78;
  text-wrap:pretty;
}
.mtw-copy p{ margin:0 0 1em; }
.mtw-copy p:last-child{ margin-bottom:0; }
.mtw-copy h3{ margin:27px 0 9px; color:var(--mtw-body-text); font-size:20px; }

.mtw-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.mtw-card,
.mtw-watch-card{
  background:var(--mtw-body-card);
  border:1px solid var(--mtw-body-border-soft);
  border-radius:13px;
}

.mtw-card{ padding:20px; }
.mtw-card h3{ margin:0 0 8px; color:var(--mtw-body-text); font-size:17px; }
.mtw-card p{ margin:0; color:var(--mtw-body-copy); line-height:1.7; }

.mtw-details{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  overflow:hidden;
  border:1px solid var(--mtw-body-border-soft);
  border-radius:13px;
  background:var(--mtw-body-card);
}
.mtw-detail{ padding:17px 18px; border-bottom:1px solid var(--mtw-body-border-soft); }
.mtw-detail:nth-child(odd){ border-right:1px solid var(--mtw-body-border-soft); }
.mtw-label{
  display:block;
  margin-bottom:4px;
  color:var(--mtw-orange);
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mtw-value{ color:var(--mtw-body-copy); line-height:1.6; }

.mtw-watch-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.mtw-watch-card{ position:relative; padding:20px; overflow:hidden; }
.mtw-watch-card::before{
  content:"";
  position:absolute;
  top:0; left:0; right:0;
  height:2px;
  background:var(--mtw-cyan);
  opacity:.75;
}
.mtw-watch-card h3{ margin:0 0 12px; color:var(--mtw-body-text); font-size:18px; }
.mtw-watch-list{ list-style:none; padding:0; margin:0; }
.mtw-watch-item{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:11px 0;
  border-top:1px solid var(--mtw-body-border-soft);
}
.mtw-watch-item:first-child{ padding-top:0; border-top:0; }
.mtw-platform{ color:var(--mtw-body-copy); font-weight:700; line-height:1.5; }

.mtw-related{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.mtw-related a{
  display:block;
  overflow:hidden;
  background:var(--mtw-body-card);
  border:1px solid var(--mtw-body-border-soft);
  border-radius:12px;
  text-decoration:none!important;
  transition:border-color .16s ease,transform .16s ease;
}
.mtw-related a:hover,.mtw-related a:focus-visible{ border-color:var(--mtw-cyan); transform:translateY(-2px); }
.mtw-related img{ display:block; width:100%; height:auto; aspect-ratio:2/3; object-fit:cover; }
.mtw-related-title{ padding:12px; color:var(--mtw-body-text); font-size:14px; font-weight:800; line-height:1.4; }

/* Body-focused focus treatment; no header styling here. */
.mtw-page a:focus-visible,
.mtw-page button:focus-visible,
.mtw-page input:focus-visible,
.mtw-page textarea:focus-visible,
.mtw-page select:focus-visible{
  outline:3px solid var(--mtw-cream)!important;
  outline-offset:3px!important;
}

@media (max-width:980px){
  .mtw-page{ padding:34px 0 64px; }
  .mtw-page-inner{ width:min(100% - 30px, 900px); }
  .mtw-hero{ grid-template-columns:250px minmax(0,1fr); gap:26px; padding:20px; }
  .mtw-watch-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mtw-related{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:720px){
  .mtw-page{ padding:24px 0 52px; }
  .mtw-page-inner{ width:min(100% - 20px, 680px); }
  .mtw-breadcrumb{ margin-bottom:16px; font-size:12px; }
  .mtw-hero{ grid-template-columns:1fr; gap:20px; padding:16px; border-radius:15px; }
  .mtw-poster{ width:min(58vw,230px); margin:0 auto; }
  .mtw-kicker{ margin-top:0; }
  .mtw-title{ font-size:clamp(31px,9vw,45px)!important; line-height:1.06!important; }
  .mtw-meta{ font-size:13px; }
  .mtw-meta span{ padding:0 9px; }
  .mtw-genres{ margin-bottom:17px; }
  .mtw-buttons{ gap:8px; margin-bottom:18px; }
  .mtw-btn{ flex:1 1 0; min-width:0; min-height:45px; padding:0 12px; }
  .mtw-verdict{ padding:14px 15px; font-size:14px; line-height:1.68; }
  .mtw-section{ margin-top:40px; }
  .mtw-section h2{ margin-bottom:12px!important; font-size:24px!important; }
  .mtw-copy{ font-size:15px; line-height:1.74; }
  .mtw-grid,.mtw-watch-grid{ grid-template-columns:1fr; gap:11px; }
  .mtw-card,.mtw-watch-card{ padding:16px; }
  .mtw-details{ grid-template-columns:1fr; }
  .mtw-detail:nth-child(odd){ border-right:0; }
  .mtw-detail{ padding:14px 15px; }
  .mtw-related{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .mtw-related-title{ padding:10px; font-size:13px; }
}

@media (max-width:420px){
  .mtw-page-inner{ width:calc(100% - 16px); }
  .mtw-hero{ padding:13px; }
  .mtw-poster{ width:min(62vw,220px); }
  .mtw-buttons{ display:grid; grid-template-columns:1fr 1fr; }
  .mtw-btn{ width:100%; }
  .mtw-related{ gap:8px; }
}

@media (prefers-reduced-motion:reduce){
  .mtw-btn,.mtw-related a{ transition:none; }
  .mtw-btn:hover,.mtw-related a:hover{ transform:none; }
}

/* FINAL ACCESSIBILITY PATCH — body content only */
.mtw-page .mtw-title{
  color:#F7F2E8 !important;
  text-shadow:none !important;
}

.mtw-page .mtw-hero{
  color:#EEE8DD;
}

/* Make the keyboard skip link genuinely focusable while hidden visually. */
a.skip-link.screen-reader-text{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  clip:rect(1px,1px,1px,1px) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  border:0 !important;
  background:#FFF1D1 !important;
  color:#111317 !important;
  z-index:999999 !important;
}

a.skip-link.screen-reader-text:focus,
a.skip-link.screen-reader-text:focus-visible{
  top:12px !important;
  left:12px !important;
  width:auto !important;
  height:auto !important;
  min-width:170px !important;
  padding:11px 14px !important;
  margin:0 !important;
  overflow:visible !important;
  clip:auto !important;
  clip-path:none !important;
  white-space:normal !important;
  border:2px solid #111317 !important;
  border-radius:8px !important;
  box-shadow:0 4px 16px rgba(0,0,0,.3) !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:1.25 !important;
  text-decoration:none !important;
}

@media (max-width:720px){
  .mtw-page .mtw-title{
    font-size:clamp(30px,9vw,42px) !important;
    line-height:1.08 !important;
    letter-spacing:-.025em !important;
  }
}

/* =========================================================
   ARCHIVE — shares the single-page body design language
   ========================================================= */
.mtw-archive-page{
  background:var(--mtw-body-bg,#101317);
  padding:42px 0 78px;
}

.mtw-archive-inner{
  width:min(1160px,calc(100% - 40px));
  margin:0 auto;
}

.mtw-archive-header{
  padding:28px 30px 30px;
  background:var(--mtw-body-surface,#15191E);
  border:1px solid var(--mtw-body-border-soft,#242A31);
  border-radius:18px;
}

.mtw-archive-title{
  margin:0!important;
  color:var(--mtw-body-text,#EEE9DF)!important;
  font-size:clamp(38px,5vw,62px)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
}

.mtw-archive-description{
  max-width:780px;
  margin:16px 0 0;
  color:var(--mtw-body-copy,#CFC9BE);
  font-size:17px;
  line-height:1.72;
}

.mtw-archive-description p{
  margin:0 0 10px;
}
.mtw-archive-description p:last-child{ margin-bottom:0; }

.mtw-archive-section{
  width:100%;
  margin:48px auto 0;
}

.mtw-archive-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin:0 0 18px;
}

.mtw-archive-section-head h2{
  margin:4px 0 0!important;
  color:var(--mtw-body-text,#EEE9DF)!important;
  font-size:30px!important;
  line-height:1.15!important;
  letter-spacing:-.02em;
}

.mtw-archive-count{
  color:var(--mtw-body-muted,#9F998F);
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
}

.mtw-archive-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:16px;
}

.mtw-archive-card{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--mtw-body-border,#2A3037);
  border-radius:14px;
  background:var(--mtw-body-card,#191E24);
  transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}

.mtw-archive-card:hover{
  border-color:var(--mtw-cyan,#00B7CD);
  transform:translateY(-3px);
  box-shadow:0 12px 26px rgba(0,0,0,.22);
}

.mtw-archive-card a{
  display:block;
  color:inherit;
  text-decoration:none;
}

.mtw-archive-poster{
  position:relative;
  aspect-ratio:2/3;
  overflow:hidden;
  background:#0C0F12;
  border-bottom:2px solid var(--mtw-red,#DF301C);
}

.mtw-archive-image{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.mtw-archive-placeholder{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  background:linear-gradient(145deg,#1B2025,#0D1013);
  color:#777169;
  font-size:28px;
  font-weight:900;
  letter-spacing:.08em;
}

.mtw-archive-info{
  padding:13px 13px 15px;
}

.mtw-archive-card-title{
  margin:0!important;
  color:#FFF!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:760!important;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}

.mtw-archive-card-meta{
  margin-top:6px;
  color:var(--mtw-body-dim,#777169);
  font-size:13px;
  line-height:1.3;
}

.mtw-archive-page .navigation.pagination{
  display:flex;
  justify-content:center;
  margin-top:44px;
}

.mtw-archive-page .navigation.pagination .nav-links{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:8px;
}

.mtw-archive-page .navigation.pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  padding:0 13px;
  border:1px solid var(--mtw-body-border,#2A3037);
  border-radius:10px;
  background:var(--mtw-body-surface,#15191E);
  color:var(--mtw-body-copy,#CFC9BE);
  text-decoration:none;
  font-size:14px;
  font-weight:750;
}

.mtw-archive-page .navigation.pagination .page-numbers:hover,
.mtw-archive-page .navigation.pagination .page-numbers:focus-visible,
.mtw-archive-page .navigation.pagination .page-numbers.current{
  border-color:var(--mtw-red,#DF301C);
  background:rgba(223,48,28,.09);
  color:#FFF;
}

.mtw-archive-empty{
  margin-top:44px;
  padding:34px;
  border:1px dashed var(--mtw-body-border,#2A3037);
  border-radius:14px;
  background:var(--mtw-body-surface,#15191E);
}

.mtw-archive-empty h2{
  margin:0 0 10px!important;
  color:var(--mtw-body-text,#EEE9DF)!important;
  font-size:28px!important;
}

.mtw-archive-empty p{
  margin:0 0 18px;
  color:var(--mtw-body-copy,#CFC9BE);
  font-size:16px;
}

@media (min-width:768px) and (max-width:1023px){
  .mtw-archive-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
  }
}

@media (min-width:1024px){
  .mtw-archive-grid{
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:16px;
  }
}

@media (max-width:767px){
  .mtw-archive-page{
    padding:26px 0 54px;
  }

  .mtw-archive-inner{
    width:calc(100% - 24px);
  }

  .mtw-archive-header{
    padding:22px 18px 24px;
    border-radius:14px;
  }

  .mtw-archive-title{
    font-size:clamp(34px,10vw,46px)!important;
  }

  .mtw-archive-description{
    margin-top:14px;
    font-size:15px;
    line-height:1.65;
  }

  .mtw-archive-section{
    margin-top:36px;
  }

  .mtw-archive-section-head{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
  }

  .mtw-archive-section-head h2{
    font-size:25px!important;
  }

  .mtw-archive-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }

  .mtw-archive-info{
    padding:10px 9px 12px;
  }

  .mtw-archive-card-title{
    font-size:14px!important;
  }

  .mtw-archive-card-meta{
    font-size:12px;
  }

  .mtw-archive-page .navigation.pagination{
    margin-top:32px;
  }

  .mtw-archive-page .navigation.pagination .page-numbers{
    min-width:38px;
    min-height:38px;
    font-size:13px;
  }
}

@media (prefers-reduced-motion:reduce){
  .mtw-archive-card{ transition:none; }
}

/* =========================================================
   BLOG / POSTS PAGE — Movie card grid
   Desktop 6 | Tablet 4 | Mobile 2
   ========================================================= */
.mtw-blog-page{
  background:var(--mtw-body-bg,#101317);
  padding:42px 0 78px;
}

.mtw-blog-inner{
  width:min(1280px,calc(100% - 48px));
  margin:0 auto;
}

.mtw-blog-header{
  margin-top:0;
  padding:28px 30px 30px;
  background:var(--mtw-body-surface,#15191E);
  border:1px solid var(--mtw-body-border-soft,#242A31);
  border-radius:18px;
}

.mtw-blog-header h1{
  margin:0!important;
  color:var(--mtw-body-text,#EEE9DF)!important;
  font-size:clamp(40px,5vw,64px)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
}

.mtw-blog-header p{
  max-width:760px;
  margin:14px 0 0;
  color:var(--mtw-body-copy,#CFC9BE);
  font-size:17px;
  line-height:1.7;
}

.mtw-blog-results{
  margin-top:48px;
}

.mtw-blog-results-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  margin-bottom:18px;
}

.mtw-blog-results-head h2{
  margin:4px 0 0!important;
  color:var(--mtw-body-text,#EEE9DF)!important;
  font-size:30px!important;
  line-height:1.15!important;
}

.mtw-blog-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:16px;
}

.mtw-blog-card{
  min-width:0;
  overflow:hidden;
  background:var(--mtw-body-card,#191E24);
  border:1px solid var(--mtw-body-border,#2A3037);
  border-radius:14px;
  transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}

.mtw-blog-card:hover{
  border-color:var(--mtw-cyan,#00B7CD);
  transform:translateY(-3px);
  box-shadow:0 12px 26px rgba(0,0,0,.22);
}

.mtw-blog-card a{
  display:block;
  color:inherit;
  text-decoration:none;
}

.mtw-blog-poster{
  position:relative;
  overflow:hidden;
  aspect-ratio:2/3;
  background:#0C0F12;
  border-bottom:2px solid var(--mtw-red,#DF301C);
}

.mtw-blog-image{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.mtw-blog-placeholder{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  background:linear-gradient(145deg,#1B2025,#0D1013);
  color:#777169;
  font-size:28px;
  font-weight:900;
  letter-spacing:.08em;
}

.mtw-blog-info{
  padding:12px 12px 14px;
}

.mtw-blog-info h3{
  margin:0!important;
  color:#FFF!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:780!important;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}

.mtw-blog-meta{
  margin-top:6px;
  color:var(--mtw-body-dim,#777169);
  font-size:13px;
  line-height:1.3;
}

.mtw-blog-page .navigation.pagination{
  display:flex;
  justify-content:center;
  margin-top:42px;
}

.mtw-blog-page .navigation.pagination .nav-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px;
}

.mtw-blog-page .navigation.pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  padding:0 13px;
  border:1px solid var(--mtw-body-border,#2A3037);
  border-radius:10px;
  background:var(--mtw-body-surface,#15191E);
  color:var(--mtw-body-copy,#CFC9BE);
  text-decoration:none;
  font-size:14px;
  font-weight:750;
}

.mtw-blog-page .navigation.pagination .page-numbers:hover,
.mtw-blog-page .navigation.pagination .page-numbers:focus-visible,
.mtw-blog-page .navigation.pagination .page-numbers.current{
  border-color:var(--mtw-red,#DF301C);
  background:rgba(223,48,28,.09);
  color:#FFF;
}

.mtw-blog-empty{
  padding:34px;
  border:1px dashed var(--mtw-body-border,#2A3037);
  border-radius:14px;
  background:var(--mtw-body-surface,#15191E);
}

.mtw-blog-empty h2{
  margin:0 0 10px!important;
  color:var(--mtw-body-text,#EEE9DF)!important;
}

.mtw-blog-empty p{
  margin:0;
  color:var(--mtw-body-copy,#CFC9BE);
  font-size:16px;
}

@media (min-width:768px) and (max-width:1100px){
  .mtw-blog-inner{ width:min(100% - 36px, 1000px); }
  .mtw-blog-grid{ grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
}

@media (max-width:767px){
  .mtw-blog-page{ padding:26px 0 54px; }
  .mtw-blog-inner{ width:calc(100% - 24px); }
  .mtw-blog-header{ padding:22px 18px 24px; border-radius:14px; }
  .mtw-blog-header h1{ font-size:clamp(34px,10vw,46px)!important; }
  .mtw-blog-header p{ font-size:15px; line-height:1.65; }
  .mtw-blog-results{ margin-top:36px; }
  .mtw-blog-results-head h2{ font-size:25px!important; }
  .mtw-blog-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .mtw-blog-info{ padding:10px 9px 12px; }
  .mtw-blog-info h3{ font-size:14px!important; }
  .mtw-blog-meta{ font-size:12px; }
}

/* Blog page search + cleaner centered header */
.mtw-blog-header{
  text-align:center;
}
.mtw-blog-header h1{
  text-align:center;
}
.mtw-blog-header p{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.mtw-blog-search{
  display:flex;
  width:min(100%,680px);
  margin:22px auto 0;
  border:1px solid #3A424B;
  border-radius:999px;
  overflow:hidden;
  background:#111519;
}
.mtw-blog-search input{
  min-width:0;
  flex:1;
  min-height:52px;
  padding:0 18px;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:#FFF!important;
  font-size:16px!important;
}
.mtw-blog-search input::placeholder{ color:#777D84; }
.mtw-blog-search button{
  min-height:52px;
  padding:0 22px;
  border:0!important;
  background:var(--mtw-red,#DF301C)!important;
  color:#FFF!important;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}

@media (max-width:767px){
  .mtw-blog-search input{ font-size:14px!important; }
  .mtw-blog-search button{ padding:0 15px; font-size:12px; }
}

/* Blog page: remove WordPress 'Blog' presentation and make the top section a useful movie finder. */
.mtw-blog-header{
  text-align:center;
  padding:32px 34px 34px!important;
}
.mtw-blog-header h1{
  max-width:900px;
  margin:0 auto!important;
  text-align:center;
  font-size:clamp(42px,5vw,68px)!important;
}
.mtw-blog-header p{
  max-width:760px;
  margin:15px auto 0!important;
  text-align:center;
}
.mtw-blog-search{
  display:flex;
  width:min(100%,680px);
  margin:24px auto 0;
  border:1px solid #3A424B;
  border-radius:999px;
  overflow:hidden;
  background:#111519;
  box-shadow:0 10px 26px rgba(0,0,0,.14);
}
.mtw-blog-search:focus-within{
  border-color:var(--mtw-red,#DF301C);
  box-shadow:0 0 0 4px rgba(223,48,28,.10),0 12px 28px rgba(0,0,0,.18);
}
.mtw-blog-search input{
  min-width:0;
  flex:1;
  min-height:54px;
  padding:0 20px;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:#FFF!important;
  font-size:16px!important;
}
.mtw-blog-search input::placeholder{ color:#777D84; }
.mtw-blog-search button{
  min-height:54px;
  padding:0 24px;
  border:0!important;
  background:var(--mtw-red,#DF301C)!important;
  color:#FFF!important;
  font-size:13px;
  font-weight:820;
  letter-spacing:.04em;
  cursor:pointer;
}

/* Desktop breathing room and stronger type. */
@media (min-width:1024px){
  .mtw-blog-inner{ width:min(1280px,calc(100% - 96px)); }
  .mtw-blog-page{ padding:48px 0 84px; }
  .mtw-blog-results{ margin-top:56px; }
}

@media (max-width:767px){
  .mtw-blog-header{ padding:24px 17px 26px!important; }
  .mtw-blog-header h1{ font-size:clamp(36px,10vw,50px)!important; }
  .mtw-blog-header p{ font-size:15px; }
  .mtw-blog-search input{ min-height:50px; padding:0 14px; font-size:14px!important; }
  .mtw-blog-search button{ min-height:50px; padding:0 15px; font-size:12px; }
}


/* Single-movie provider strip: consolidated final rules. */
.mtw-hero .mtw-provider-strip{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,max-content));
  justify-content:start;
  align-items:stretch;
  gap:10px;
  width:100%;
  max-width:none;
  margin:18px 0 0;
  padding:10px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:16px;
  background:rgba(255,255,255,.035);
  box-shadow:0 8px 24px rgba(0,0,0,.12);
}
.mtw-hero .mtw-provider-group{
  display:flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  min-width:0;
  gap:10px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:13px;
  background:rgba(255,255,255,.045);
}
.mtw-hero .mtw-provider-group-label{
  width:auto;
  flex:0 0 auto;
  margin:0;
  color:rgba(255,255,255,.68);
  font-size:11px;
  font-weight:800;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mtw-hero .mtw-provider-icons{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex:0 1 auto;
  min-width:0;
  flex-wrap:wrap;
  gap:7px;
}
.mtw-hero .mtw-provider-icon{
  display:inline-flex;
  position:relative;
  width:62px;
  height:62px;
  flex:0 0 62px;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  padding:0;
  border:1px solid rgba(255,255,255,.11);
  border-radius:14px;
  background:rgba(0,0,0,.18);
  box-shadow:0 4px 12px rgba(0,0,0,.18);
  text-decoration:none;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.mtw-hero .mtw-provider-icon:hover,
.mtw-hero .mtw-provider-icon:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.22);
  box-shadow:0 8px 18px rgba(0,0,0,.22);
}
.mtw-hero .mtw-provider-icon img{
  display:block;
  width:80px;
  height:80px;
  max-width:none;
  max-height:none;
  flex:0 0 auto;
  object-fit:contain;
}
.mtw-hero .mtw-provider-icon::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
}

/* Single-movie watch section: retain the existing presentation, with duplicates removed. */
.mtw-watch-grid{ align-items:stretch; }
.mtw-watch-card{ min-width:0; }
.mtw-watch-provider{
  min-height:52px;
  padding:8px 10px;
  border:1px solid var(--mtw-body-border-soft);
  border-radius:12px;
  background:var(--mtw-body-card);
  transition:border-color .18s ease,transform .18s ease,background .18s ease;
}
.mtw-watch-item .mtw-watch-provider:hover,
.mtw-watch-item .mtw-watch-provider:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.035);
}
.mtw-watch-provider img{
  width:42px;
  height:42px;
  flex-basis:42px;
  object-fit:contain;
}

@media (max-width:720px){
  .mtw-hero .mtw-provider-strip{
    grid-template-columns:1fr;
    gap:8px;
    padding:8px;
    margin-top:14px;
    border-radius:14px;
  }
  .mtw-hero .mtw-provider-group{
    width:100%;
    max-width:none;
    min-width:0;
    gap:9px;
    padding:8px;
    border-radius:12px;
  }
  .mtw-hero .mtw-provider-group-label{
    flex:0 0 48px;
    width:48px;
    font-size:10px;
  }
  .mtw-hero .mtw-provider-icons{
    flex:1 1 auto;
    gap:6px;
  }
  .mtw-hero .mtw-provider-icon{
    width:58px;
    height:58px;
    flex-basis:58px;
    border-radius:13px;
  }
  .mtw-hero .mtw-provider-icon img{
    width:75px;
    height:75px;
  }
}

@media (max-width:420px){
  .mtw-hero .mtw-provider-strip{ padding:7px; }
  .mtw-hero .mtw-provider-group{ padding:7px; }
  .mtw-hero .mtw-provider-group-label{
    flex-basis:44px;
    width:44px;
    font-size:9px;
  }
  .mtw-hero .mtw-provider-icon{
    width:54px;
    height:54px;
    flex-basis:54px;
    border-radius:12px;
  }
  .mtw-hero .mtw-provider-icon img{
    width:70px;
    height:70px;
  }
}

/* Movie FAQ + spoiler warning */
.mtw-spoiler-warning{
  margin:0 0 18px;
  padding:12px 14px;
  border:1px solid var(--mtw-body-border);
  border-radius:10px;
  background:var(--mtw-body-card);
  color:var(--mtw-body-copy);
  font-size:14px;
  line-height:1.6;
}
.mtw-faq{
  display:grid;
  gap:10px;
}
.mtw-faq-item{
  border:1px solid var(--mtw-body-border-soft);
  border-radius:12px;
  background:var(--mtw-body-surface);
  overflow:hidden;
}
.mtw-faq-item summary{
  cursor:pointer;
  padding:16px 18px;
  color:var(--mtw-body-text);
  font-weight:800;
  line-height:1.5;
  list-style-position:inside;
}
.mtw-faq-answer{
  padding:0 18px 16px;
  color:var(--mtw-body-copy);
  line-height:1.75;
}
.mtw-faq-answer p:last-child{margin-bottom:0;}


/* Related Movies: 6 desktop / 4 tablet / 2 mobile */
.mtw-related-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:24px;
}
@media (max-width: 1024px){
  .mtw-related-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media (max-width: 767px){
  .mtw-related-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
  }
}

/* Homepage body contrast fix.
 * Body content only: header and footer remain controlled by Kadence.
 */
body.home #primary,
body.home .site-main {
  color:#f2f2f2 !important;
}

body.home .mtw-homepage {
  background:#0b0b0b !important;
  color:#f2f2f2 !important;
}

body.home .mtw-title,
body.home .mtw-homepage h2,
body.home .mtw-homepage h3 {
  color:#ffffff !important;
}

body.home .mtw-description,
body.home .mtw-home-description,
body.home .mtw-home-section > div > p,
body.home .mtw-home-guides > div > p,
body.home .mtw-home-feature-box p,
body.home .mtw-home-guide-grid p {
  color:#c7c7c7 !important;
}

body.home .mtw-home-kicker,
body.home .mtw-home-small-label {
  color:#bdbdbd !important;
}

body.home .mtw-home-view-all,
body.home .mtw-home-guide-grid a > span,
body.home .mtw-home-feature-box > span,
body.home .mtw-home-genre-grid a {
  color:#f2f2f2 !important;
}

body.home .mtw-home-genre-grid a:hover,
body.home .mtw-home-genre-grid a:focus-visible,
body.home .mtw-home-view-all:hover,
body.home .mtw-home-view-all:focus-visible,
body.home .mtw-home-guide-grid a:hover,
body.home .mtw-home-guide-grid a:focus-visible,
body.home .mtw-home-feature-box:hover,
body.home .mtw-home-feature-box:focus-visible {
  color:#ffffff !important;
}

/* =========================================================
   HOMEPAGE FORM / SEARCH CONTRAST AUDIT — v29
   The hero sits over a movie image, so transparent inputs can
   become unreadable. Keep every homepage form control dark,
   high-contrast and consistent across browsers.
   ========================================================= */
body.home .mtw-homepage,
body.home .mtw-homepage input,
body.home .mtw-homepage button,
body.home .mtw-homepage select,
body.home .mtw-homepage textarea {
  color-scheme: dark;
}

body.home .mtw-home-search,
body.home .mtw-search {
  display:flex;
  align-items:stretch;
  width:min(680px,100%);
  min-height:54px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.28);
  border-radius:14px;
  background:rgba(8,10,12,.94);
  box-shadow:0 10px 28px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.03);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:border-color .18s ease,box-shadow .18s ease;
}

body.home .mtw-home-search:focus-within,
body.home .mtw-search:focus-within {
  border-color:#ff5a4a;
  box-shadow:0 0 0 3px rgba(255,90,74,.22),0 10px 28px rgba(0,0,0,.34);
}

body.home .mtw-home-search input,
body.home .mtw-search input {
  flex:1;
  min-width:0;
  min-height:52px;
  margin:0;
  padding:0 18px;
  border:0 !important;
  outline:0 !important;
  background:#080a0c !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  caret-color:#ff6b5b;
  font-size:15px;
  font-weight:600;
  line-height:1.4;
  opacity:1 !important;
  box-shadow:none !important;
}

body.home .mtw-home-search input::placeholder,
body.home .mtw-search input::placeholder {
  color:#c5c9ce !important;
  opacity:1 !important;
  -webkit-text-fill-color:#c5c9ce !important;
}

body.home .mtw-home-search input::selection,
body.home .mtw-search input::selection {
  background:#b52a20;
  color:#ffffff;
}

body.home .mtw-home-search input:-webkit-autofill,
body.home .mtw-home-search input:-webkit-autofill:hover,
body.home .mtw-home-search input:-webkit-autofill:focus,
body.home .mtw-search input:-webkit-autofill,
body.home .mtw-search input:-webkit-autofill:hover,
body.home .mtw-search input:-webkit-autofill:focus {
  -webkit-text-fill-color:#ffffff !important;
  -webkit-box-shadow:0 0 0 1000px #080a0c inset !important;
  box-shadow:0 0 0 1000px #080a0c inset !important;
  caret-color:#ff6b5b;
}

body.home .mtw-home-search button,
body.home .mtw-search button {
  flex:0 0 auto;
  min-height:52px;
  min-width:126px;
  margin:0;
  padding:0 20px;
  border:0 !important;
  border-left:1px solid rgba(255,255,255,.12) !important;
  border-radius:0 !important;
  background:#df301c !important;
  color:#ffffff !important;
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
  cursor:pointer;
  box-shadow:none !important;
}

body.home .mtw-home-search button:hover,
body.home .mtw-home-search button:focus-visible,
body.home .mtw-search button:hover,
body.home .mtw-search button:focus-visible {
  background:#f0442f !important;
  color:#ffffff !important;
}

body.home .mtw-home-search button:focus-visible,
body.home .mtw-search button:focus-visible,
body.home .mtw-home-search input:focus-visible,
body.home .mtw-search input:focus-visible {
  outline:3px solid rgba(255,255,255,.9) !important;
  outline-offset:-3px;
}

/* Keep the compact mobile search usable without text becoming cramped. */
@media (max-width:767px){
  body.home .mtw-home-search,
  body.home .mtw-search{
    flex-direction:column;
    width:100%;
    border-radius:14px;
  }
  body.home .mtw-home-search input,
  body.home .mtw-search input{
    min-height:52px;
    padding:0 15px;
  }
  body.home .mtw-home-search button,
  body.home .mtw-search button{
    width:100%;
    min-height:48px;
    border-left:0 !important;
    border-top:1px solid rgba(255,255,255,.12) !important;
  }
}


/* v29: FRONT PAGE contrast fix — must beat inline Page Editor styles */
body.home .mtw-search {
  background: #0b0c0e !important;
  border: 1px solid #666 !important;
}
body.home .mtw-search input,
body.home .mtw-search input[type="search"] {
  background: #111317 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  caret-color: #ff4a4a !important;
}
body.home .mtw-search input::placeholder {
  color: #d2d2d2 !important;
  opacity: 1 !important;
}
body.home .mtw-search input:focus {
  background: #15171b !important;
  color: #ffffff !important;
}
body.home .mtw-search:focus-within {
  border-color: #e04444 !important;
  box-shadow: 0 0 0 3px rgba(224,68,68,.28) !important;
}
body.home .mtw-search button {
  background: #b31b1b !important;
  color: #ffffff !important;
}
body.home .mtw-search button:hover,
body.home .mtw-search button:focus-visible {
  background: #d12a2a !important;
  color: #ffffff !important;
}
@media (max-width: 767px) {
  body.home .mtw-search input,
  body.home .mtw-search input[type="search"] {
    background: #111317 !important;
  }
}


/* MTW V30 PERFORMANCE-SAFE OVERRIDES */
.mtw-movie-card .mtw-poster{aspect-ratio:2/3;overflow:hidden;}
.mtw-movie-card .mtw-poster img{display:block;width:100%;height:100%;object-fit:cover;}
@media(max-width:767px){.mtw-genre-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
@media(max-width:430px){.mtw-genre-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
.mtw-phase-a,.mtw-phase-a *{box-sizing:border-box;}


/* v41.0.2 — final body-only soft-dark palette
   Header/footer remain controlled by Kadence. */
body.home #primary .mtw-homepage,
body.home .mtw-homepage {
  background:#11151a !important;
}
body.home .mtw-homepage .mtw-home-section,
body.home .mtw-home-discovery {
  background:#11151a !important;
}
body.home .mtw-home-movie-card,
body.home .mtw-home-feature-box,
body.home .mtw-home-guide-grid a,
body.home .mtw-home-link-card,
body.home .mtw-home-genre-grid a {
  background:#191e24 !important;
}
body.home .mtw-home-genre-grid a:hover,
body.home .mtw-home-view-all:hover,
body.home .mtw-home-guide-grid a:hover,
body.home .mtw-home-feature-box:hover {
  background:#20262d !important;
}


/* v41.0.3 — homepage accessibility and paint optimization */
body.home #primary,
body.home .entry-content,
body.home .mtw-homepage{
  background:#11151a!important;
  color:#eef2f5!important;
}
body.home .mtw-homepage .mtw-home-kicker,
body.home .mtw-homepage .mtw-home-small-label,
body.home .mtw-homepage .mtw-category-card__label,
body.home .mtw-homepage .mtw-discovery-card__eyebrow{
  color:#ffb14e!important;
  text-shadow:0 1px 3px rgba(0,0,0,.8);
}
body.home .mtw-homepage .mtw-home-description,
body.home .mtw-homepage .mtw-home-hero-desc,
body.home .mtw-homepage .mtw-category-card__description,
body.home .mtw-homepage .mtw-discovery-card__description{
  color:#eef1f4!important;
}
body.home .mtw-homepage .mtw-home-hero h1,
body.home .mtw-homepage .mtw-home-section h2,
body.home .mtw-homepage .mtw-home-section h3,
body.home .mtw-homepage .mtw-category-card__title,
body.home .mtw-homepage .mtw-discovery-card__title{
  color:#fff!important;
}
body.home .mtw-homepage .mtw-home-section:not(.mtw-home-hero){
  content-visibility:auto;
  contain-intrinsic-size:700px;
}
body.home .mtw-homepage img{max-width:100%}

/* v2.4 — true black site/content background */
html,
body,
body.home #primary,
body.home .site-main,
body.home .entry-content,
.mtw-page,
body.home .mtw-homepage,
body.home #primary .mtw-homepage,
body.home .mtw-homepage .mtw-home-section,
body.home .mtw-home-discovery {
  background-color:#000000 !important;
}
