/**
 * Movies Theme - Main Stylesheet
 *
 * @package Movies_Theme
 */

/* ==========================================
   1. Local Font Faces & Core Reset
   ========================================== */
@font-face {
	font-family: 'Hanken Grotesk';
	src: url('../../fonts/HankenGrotesk-Regular.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Hanken Grotesk';
	src: url('../../fonts/HankenGrotesk-Medium.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Hanken Grotesk';
	src: url('../../fonts/HankenGrotesk-SemiBold.woff2') format('woff2');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Hanken Grotesk';
	src: url('../../fonts/HankenGrotesk-ExtraBold.woff2') format('woff2');
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Salsa';
	src: url('../../fonts/Salsa-Regular.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Parkinsans';
	src: url('../../fonts/Parkinsans-SemiBold.woff2') format('woff2');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

body {
	font-family: 'Hanken Grotesk', sans-serif;
	background: linear-gradient(135deg, #0a0a0f 0%, #0d0618 25%, #080d1a 55%, #0b1020 80%, #0a0a12 100%);
	background-attachment: fixed;
	color: #ffffff;
	line-height: 1.3;
	-webkit-font-smoothing: antialiased;
	min-height: 100vh;
}

a {
	color: #cbfc01;
	text-decoration: underline;
	transition: 0.3s all;
}

a:hover {
	color: #fff;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

/* Text selections matching original site */
::-moz-selection {
	color: #fff;
	background: #cbfc01;
}
::-webkit-selection {
	color: #fff;
	background: #cbfc01;
}
::selection {
	color: #fff;
	background: #cbfc01;
}

/* ==========================================
   2. Full-width Layout parent
   ========================================== */
.main-content-parent {
	background: transparent;
	width: 100%;
	max-width: 100%;
	margin: 0;
	min-height: 100vh;
	box-shadow: none;
	padding: 0;
}

/* ==========================================
   3. Header & SVG Stroked Logo (Rich Gradient & Glow Shadow)
   ========================================== */
.site-header {
	padding: 18px 0;
	margin-bottom: 0;
	background: linear-gradient(180deg, rgba(14, 6, 32, 0.98) 0%, rgba(8, 3, 20, 0.95) 100%);
	border-bottom: 1px solid rgba(180, 79, 255, 0.2);
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.8), 0 0 30px rgba(180, 79, 255, 0.15);
	position: sticky;
	top: 0;
	z-index: 1000;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
}

.site-header::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 3px;
	background: linear-gradient(90deg, #6e00ff, #b44fff 30%, #00e5ff 65%, #ff5e62 100%);
	z-index: 5;
}

.site-header .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: nowrap;
	gap: 20px;
}

.site-branding {
	max-width: 420px;
	flex-shrink: 0;
}

.navbar-brand {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
}

.logo-text-group {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	white-space: nowrap;
}

.logo-main-text {
	font-family: 'Salsa', 'Hanken Grotesk', sans-serif;
	font-size: 32px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1px;
	background: linear-gradient(135deg, #ff75df 0%, #b44fff 35%, #00e5ff 70%, #cbfc01 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	filter: drop-shadow(0 0 12px rgba(180, 79, 255, 0.6));
	line-height: 1;
}

.navbar-brand .end-txt {
	color: #00e5ff;
	font-family: 'Hanken Grotesk', sans-serif;
	font-size: 26px;
	font-weight: 800;
	text-transform: lowercase;
	white-space: nowrap;
	text-shadow: 0 0 14px rgba(0, 229, 255, 0.8), 0 0 5px rgba(0, 229, 255, 0.5);
	line-height: 1;
}
	font-weight: 400;
	flex-shrink: 1;
}

.sitelogotext {
	fill: none;
	stroke-width: 1.5px;
	stroke-linejoin: round;
	stroke-dasharray: 70px;
	stroke-dashoffset: 0;
	animation: stroke 6s linear infinite;
	font-size: 42px;
	text-transform: uppercase;
}

.sitelogotext:nth-child(5n+1) {
	stroke: #b44fff;
	animation-delay: -1.2s;
}

.sitelogotext:nth-child(5n+2) {
	stroke: #ff6ef7;
	animation-delay: -2.4s;
}

.sitelogotext:nth-child(5n+3) {
	stroke: #00e5ff;
	animation-delay: -3.6s;
}

.sitelogotext:nth-child(5n+4) {
	stroke: #cbfc01;
	animation-delay: -4.8s;
}

.sitelogotext:nth-child(5n+5) {
	stroke: #ff5e62;
	animation-delay: -6s;
}

@keyframes stroke {
	to {
		stroke-dashoffset: -400;
	}
}

/* Search Box */
.head-search {
	width: 50%;
	flex-grow: 1;
	max-width: 580px;
}

.head-search .search-form {
	display: flex;
	width: 100%;
	border-radius: 50px;
	overflow: hidden;
	border: 1px solid rgba(180,79,255,0.35);
	box-shadow: 0 0 20px rgba(180,79,255,0.2);
	transition: box-shadow 0.3s;
}

.head-search .search-form:focus-within {
	box-shadow: 0 0 30px rgba(0,229,255,0.4), 0 0 15px rgba(180,79,255,0.4);
	border-color: #00e5ff;
}

.head-search label {
	flex-grow: 1;
	position: relative;
}

.head-search .search-field {
	width: 100%;
	background: rgba(255,255,255,0.06);
	color: #fff;
	font-family: 'Hanken Grotesk', sans-serif;
	font-size: 14px;
	font-weight: 400;
	outline: 0;
	padding: 11px 18px;
	border: none;
}

.head-search .search-field::placeholder { color: rgba(200,200,255,0.5); }

.head-search .search-submit {
	font-family: 'Hanken Grotesk', sans-serif;
	font-weight: 700;
	font-size: 13px;
	text-align: center;
	text-transform: uppercase;
	padding: 11px 24px;
	background: linear-gradient(90deg, #b44fff, #00e5ff);
	color: #fff;
	cursor: pointer;
	border: none;
	letter-spacing: 0.5px;
	transition: all 0.3s;
	box-shadow: 0 4px 15px rgba(180, 79, 255, 0.3);
}

.head-search .search-submit:hover {
	background: linear-gradient(90deg, #c060ff, #33ebff);
	box-shadow: 0 0 20px rgba(0, 229, 255, 0.6);
}

.live-search-results-dropdown {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background-color: #111;
	border: 1px solid #333;
	border-top: none;
	z-index: 99999;
	max-height: 400px;
	overflow-y: auto;
}

.live-search-item {
	display: flex;
	align-items: center;
	padding: 10px;
	border-bottom: 1px solid #222;
}

.live-search-item:hover {
	background-color: #222;
}

.live-search-item img {
	width: 40px;
	height: 60px;
	object-fit: cover;
	margin-right: 15px;
	border-radius: 2px;
}

.live-search-info {
	flex-grow: 1;
}

.live-search-title {
	color: #ffffff;
	font-size: 14px;
	font-weight: 600;
}

.live-search-badge {
	display: inline-block;
	font-size: 10px;
	background-color: #cbfc01;
	color: #000;
	padding: 2px 6px;
	font-weight: bold;
	border-radius: 2px;
	margin-top: 3px;
}

/* ==========================================
   4. Big Navigation Pill Buttons
   ========================================== */
#header-social {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	padding: 16px 20px;
	gap: 12px;
	background: linear-gradient(180deg, rgba(8, 3, 20, 0.95) 0%, rgba(12, 5, 28, 0.98) 100%);
	border-bottom: 1px solid rgba(180, 79, 255, 0.15);
	box-shadow: inset 0 2px 10px rgba(0,0,0,0.6), 0 8px 25px rgba(0,0,0,0.6);
}

#header-social a {
	color: #FFF;
	text-decoration: none;
}

.headbt {
	color: #fff;
	padding: 10px 24px;
	text-align: center;
	text-decoration: none;
	display: inline-flex;
	font-size: 13px;
	margin: 0;
	transition: all 0.25s ease-in-out;
	cursor: pointer;
	min-width: 140px;
	justify-content: center;
	align-items: center;
	gap: 8px;
	border-radius: 50px;
	font-family: 'Hanken Grotesk', sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	font-weight: 700;
	border: 1px solid rgba(255,255,255,0.18);
	box-shadow: 0 4px 15px rgba(0,0,0,0.5), 0 0 10px rgba(180,79,255,0.25);
	backdrop-filter: blur(8px);
}

.headbt:hover {
	transform: translateY(-2px) scale(1.03);
	box-shadow: 0 8px 25px rgba(180,79,255,0.45), 0 0 20px rgba(0,229,255,0.35);
	filter: brightness(1.15);
}

.headbt strong {
	font-weight: 700;
}

/* Unique Rich Gradients & Neon Glows for Header Navigation Pill Buttons */
.headbt-pink-gradient {
	background: linear-gradient(135deg, #ff4fb2 0%, #c8008f 100%) !important;
	color: #ffffff !important;
	border: 1px solid #ff75df !important;
	box-shadow: 0 4px 18px rgba(255, 79, 178, 0.45), 0 0 12px rgba(200, 0, 143, 0.35) !important;
}
.headbt-pink-gradient:hover {
	background: linear-gradient(135deg, #ff70c2 0%, #e000a0 100%) !important;
	box-shadow: 0 8px 25px rgba(255, 79, 178, 0.65), 0 0 20px rgba(255, 117, 223, 0.5) !important;
	transform: translateY(-2px) scale(1.04) !important;
}

.headbt-blue-gradient {
	background: linear-gradient(135deg, #00b4db 0%, #0073e6 100%) !important;
	color: #ffffff !important;
	border: 1px solid #00d2ff !important;
	box-shadow: 0 4px 18px rgba(0, 180, 219, 0.45), 0 0 12px rgba(0, 115, 230, 0.35) !important;
}
.headbt-blue-gradient:hover {
	background: linear-gradient(135deg, #33c5e6 0%, #1a82f0 100%) !important;
	box-shadow: 0 8px 25px rgba(0, 210, 255, 0.65), 0 0 20px rgba(0, 180, 219, 0.5) !important;
	transform: translateY(-2px) scale(1.04) !important;
}

.headbt-green-gradient,
.btn-green-pill-htd {
	background: linear-gradient(135deg, #00e699 0%, #009966 100%) !important;
	color: #000000 !important;
	border: 1px solid #00ffaa !important;
	box-shadow: 0 4px 18px rgba(0, 230, 153, 0.45), 0 0 12px rgba(0, 153, 102, 0.35) !important;
}
.headbt-green-gradient:hover,
.btn-green-pill-htd:hover {
	background: linear-gradient(135deg, #1affab 0%, #00b377 100%) !important;
	color: #000000 !important;
	box-shadow: 0 8px 25px rgba(0, 255, 170, 0.65), 0 0 20px rgba(0, 230, 153, 0.5) !important;
	transform: translateY(-2px) scale(1.04) !important;
}

/* Mobile menu toggles hidden by default on desktop */
.menu-toggle,
.menu-close {
	display: none !important;
}

/* ==========================================
   5. Main Navigation tag buttons cloud
   ========================================== */
.header-menu {
	margin-bottom: 0;
	padding: 16px 0;
	background: linear-gradient(180deg, rgba(12, 5, 28, 0.98) 0%, rgba(6, 2, 16, 0.99) 100%);
	border-bottom: 1px solid rgba(180, 79, 255, 0.2);
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.85), 0 0 25px rgba(180, 79, 255, 0.12);
}

.header-menu-div ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
	gap: 4px;
}

.header-menu-div li {
	list-style: none;
}

.header-menu-div li a {
	color: #d0c8ff;
	display: inline-block;
	line-height: 22px;
	border-radius: 50px;
	background: rgba(180, 79, 255, 0.14);
	border: 1px solid rgba(180, 79, 255, 0.28);
	font-weight: 600;
	margin: 4px 5px;
	padding: 6px 18px;
	text-decoration: none;
	font-family: 'Hanken Grotesk', sans-serif;
	font-size: 13px;
	transition: all 0.25s ease-in-out;
	box-shadow: 0 3px 10px rgba(0,0,0,0.3);
}

.header-menu-div li a:hover,
.header-menu-div li.current-menu-item a {
	background: linear-gradient(90deg, #b44fff, #00e5ff);
	color: #ffffff;
	border-color: transparent;
	box-shadow: 0 0 20px rgba(180, 79, 255, 0.6), 0 4px 15px rgba(0, 229, 255, 0.4);
	transform: translateY(-2px);
}

/* ==========================================
   6. Announcement alert box (Header Description)
   ========================================== */
.header-alert-box {
	background: linear-gradient(135deg, rgba(18, 8, 38, 0.7) 0%, rgba(10, 4, 25, 0.9) 100%);
	border: 1px solid rgba(180, 79, 255, 0.2);
	border-radius: 12px;
	padding: 24px 28px;
	margin-top: 30px;
	margin-bottom: 35px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6), inset 0 1px 1px rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(10px);
}

.header-alert-box h1 {
	font-size: 22px;
	font-weight: 800;
	color: #ffffff;
	margin-bottom: 12px;
	letter-spacing: -0.3px;
}

.header-alert-box p {
	font-size: 14px;
	color: #a5b4fc;
	line-height: 1.7;
}

.header-alert-box p a {
	color: #00e5ff;
	font-weight: 600;
	text-decoration: none;
	transition: color 0.2s;
}

.header-alert-box p a:hover {
	color: #b44fff;
	text-decoration: underline;
}

/* ==========================================
   7. Homepage Section Headers
   ========================================== */
.homepage-section {
	margin-top: 35px;
	margin-bottom: 45px;
}

.section-title-bar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: linear-gradient(90deg, rgba(20, 8, 42, 0.9) 0%, rgba(12, 5, 28, 0.95) 100%);
	border: 1px solid rgba(180, 79, 255, 0.25);
	border-left: 4px solid #b44fff;
	border-radius: 10px;
	padding: 12px 22px;
	margin-top: 20px;
	margin-bottom: 28px;
	width: 100%;
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.6), 0 0 15px rgba(180, 79, 255, 0.1);
}

.section-title {
	color: #ffffff !important;
	font-size: 17px;
	background: transparent !important;
	padding: 4px 0 !important;
	margin: 0 !important;
	border-radius: 0 !important;
	font-family: 'Hanken Grotesk', sans-serif;
	font-weight: 800;
	letter-spacing: 0.3px;
	width: auto !important;
}

.section-read-more-btn {
	background: linear-gradient(90deg, rgba(180, 79, 255, 0.15), rgba(0, 229, 255, 0.15));
	color: #00e5ff !important;
	border: 1px solid rgba(0, 229, 255, 0.4);
	padding: 7px 18px;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	border-radius: 50px;
	transition: all 0.25s ease;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}

.section-read-more-btn:hover {
	background: linear-gradient(90deg, #b44fff, #00e5ff);
	color: #ffffff !important;
	border-color: transparent;
	box-shadow: 0 0 20px rgba(180, 79, 255, 0.5);
	transform: translateY(-1px);
}

.section-title i,
.section-title svg {
	margin-right: 8px;
	color: #00e5ff;
	font-size: 20px;
	vertical-align: middle;
	display: inline-block;
}

/* ==========================================
   8. Movie Grid & Card Layout
   ========================================== */
.movie-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 15px;
	margin-bottom: 30px;
}

.movie-card {
	background-color: #000000 !important;
	border-radius: 6px;
	overflow: hidden;
	position: relative;
	transition: transform 0.2s ease-in-out;
}

/* Customizer Accent Borders support */
.movie-card.accent-red {
	border: 2px solid #ef4444 !important;
}
.movie-card.accent-yellow {
	border: 2px solid #cbfc01 !important;
}
.movie-card.accent-green {
	border: 2px solid #22c55e !important;
}
.movie-card.accent-purple {
	border: 2px solid #a855f7 !important;
}
.movie-card.accent-orange {
	border: 2px solid #f97316 !important;
}
.movie-card.accent-gradient {
	border: 2px solid #00d0ff !important;
}
.movie-card.accent-solid {
	border: 2px solid #cbfc01 !important;
}

.movie-card figure {
	position: relative;
	overflow: hidden;
	margin: 0;
}

.movie-card img.movie-poster {
	width: 100% !important;
	height: 320px !important;
	object-fit: cover !important;
	object-position: top center !important;
	transition: .3s all;
}

.movie-card:hover img.movie-poster {
	transform: scale(1.15);
}

/* Quality badges & Play overlay on hover */
.movie-card .movie-quality-badge {
	position: absolute;
	right: 0;
	z-index: 1;
	background: linear-gradient(to right, #00d0ff 0, #cbfc01 100%);
	color: #000;
	padding: 3px 10px;
	top: 14px;
	font-size: 14px;
	font-family: 'Hanken Grotesk', sans-serif;
	font-weight: 500;
	border-radius: 0;
	box-shadow: none;
}

.movie-card .movie-coming-soon-badge {
	position: absolute;
	right: 0;
	top: 14px;
	z-index: 2;
	background: linear-gradient(to right, #00d0ff 0%, #cbfc01 100%);
	color: #000000;
	font-weight: 800;
	padding: 3px 10px;
	font-size: 13px;
	font-family: 'Inter', sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border-radius: 0;
	box-shadow: 0 2px 10px rgba(0, 208, 255, 0.3);
}

.single-poster-cs-badge {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 10;
	background: linear-gradient(to right, #00d0ff 0%, #cbfc01 100%);
	color: #000000;
	font-weight: 800;
	font-size: 12px;
	padding: 5px 12px;
	border-radius: 4px;
	box-shadow: 0 4px 15px rgba(0, 208, 255, 0.4);
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.cinemora-tag-coming-soon {
	background: linear-gradient(135deg, #ff0055 0%, #ff7700 100%);
	color: #ffffff;
	font-size: 11px;
	font-weight: 800;
	padding: 4px 10px;
	border-radius: 4px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	box-shadow: 0 2px 10px rgba(255, 0, 85, 0.4);
}

.video-icon {
	position: absolute;
	display: flex;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	justify-content: center;
	align-items: center;
	z-index: 1;
	background: rgba(0, 0, 0, 0.55);
	opacity: 0;
	visibility: hidden;
	transition: .3s all;
}

.video-icon svg {
	width: 70px;
	border: 1px solid #fff;
	border-radius: 100%;
}

.video-icon svg path {
	stroke: #fff;
	stroke-width: 1.5px;
}

.movie-card figure:hover .video-icon {
	opacity: 1;
	visibility: visible;
}

/* Card details bottom */
.movie-card .movie-card-title {
	text-align: center;
	font-size: 14px;
	line-height: 20px;
	padding: 15px 10px;
	margin: 0;
	background: transparent;
	font-family: 'Hanken Grotesk', sans-serif;
	font-weight: normal;
}

.movie-card .movie-card-title a {
	color: #fff;
	text-decoration: none;
	transition: color 0.2s;
}

.movie-card:hover .movie-card-title a {
	color: #cbfc01;
}

/* ==========================================
   9. Single Movie Details Layout
   ========================================== */
.movies-breadcrumbs {
	font-size: 13px;
	color: rgba(200,200,255,0.7);
	margin-bottom: 20px;
	background: rgba(0,0,0,0.35);
	padding: 8px 14px;
	border-radius: 50px;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	border: 1px solid rgba(255,255,255,0.1);
}

.movies-breadcrumbs a {
	color: rgba(200,200,255,0.7);
	text-decoration: none;
}

.movies-breadcrumbs a:hover {
	color: #b44fff;
}

.movies-breadcrumbs i {
	margin: 0 4px;
	font-size: 10px;
}

/* Detail backdrop banner styling */
.movie-backdrop-banner {
	height: 350px;
	background-size: cover;
	background-position: center;
	border-radius: 8px;
	margin-bottom: 30px;
	border: 1px solid #1f122e;
}

.single-movie-wrapper {
	background-color: #12081d;
	border: 1px solid #1f122e;
	border-radius: 6px;
	padding: 30px;
	margin-bottom: 35px;
}

.movie-detail-header-row {
	display: flex;
	gap: 30px;
	margin-bottom: 35px;
}

.movie-poster-column {
	width: 280px;
	flex-shrink: 0;
}

.movie-poster-column .poster-inner {
	border-radius: 6px;
	overflow: hidden;
	position: relative;
	box-shadow: 0 10px 25px rgba(0,0,0,0.5);
}

.movie-info-column {
	flex-grow: 1;
}

.movie-detail-title {
	font-size: 26px;
	font-weight: 800;
	color: #ffffff;
	margin-bottom: 15px;
	line-height: 1.3;
}

.movie-rating-badge {
	display: inline-block;
	background-color: #1f122e;
	border: 1px solid #3b2263;
	padding: 6px 15px;
	border-radius: 20px;
	font-size: 14px;
	margin-bottom: 25px;
}

.movie-rating-badge .star-color {
	color: #eab308;
	margin-right: 5px;
}

.movie-rating-badge span {
	color: #94a3b8;
}

/* Specs table details */
.movie-specs-table {
	width: 100%;
	border-collapse: collapse;
}

.movie-specs-table tr {
	border-bottom: 1px solid #1f122e;
}

.movie-specs-table tr:last-child {
	border-bottom: none;
}

.movie-specs-table th {
	text-align: left;
	width: 160px;
	padding: 10px 0;
	font-weight: 700;
	color: #94a3b8;
	font-size: 14px;
}

.movie-specs-table td {
	padding: 10px 0;
	color: #ffffff;
	font-size: 14px;
}

.text-accent {
	color: #a3e635 !important;
	font-weight: 700;
}

/* Story plot container */
.movie-plot-section,
.movie-cast-section,
.movie-screenshots-section,
.movie-downloads-box {
	margin-top: 35px;
	border-top: 1px solid #1f122e;
	padding-top: 25px;
}

.section-heading-detail {
	font-size: 17px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.section-heading-detail i {
	color: #b44fff;
	font-size: 16px;
}

.movie-content-wysiwyg {
	font-size: 15px;
	color: #cbd5e1;
	line-height: 1.8;
}

/* Cast cards */
.cast-cards-row {
	display: flex;
	gap: 15px;
	flex-wrap: wrap;
}

.cast-card {
	width: 120px;
	text-align: center;
}

.cast-avatar {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	overflow: hidden;
	margin: 0 auto 10px;
	border: 2px solid #3b2263;
	background-color: #1f122e;
}

.cast-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cast-avatar-fallback {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	color: #492a83;
}

.cast-meta .actor-name {
	display: block;
	font-size: 12px;
	font-weight: 700;
	color: #ffffff;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.cast-meta .actor-character {
	display: block;
	font-size: 10px;
	color: #94a3b8;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Screenshot gallery */
.screenshots-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 15px;
}

.screenshot-item-link {
	border-radius: 4px;
	overflow: hidden;
	border: 1px solid #1f122e;
	transition: transform 0.2s;
}

.screenshot-item-link:hover {
	transform: scale(1.03);
}

.screenshot-item-link img {
	width: 100%;
	aspect-ratio: 16/9;
	object-fit: cover;
}

/* ==========================================
   6. Download Boxes
   ========================================== */
.movie-downloads-box {
	background-color: #0c0413;
	border: 1px solid #28163f;
	border-radius: 6px;
	padding: 25px;
}

.download-section-title {
	font-size: 18px;
	font-weight: 800;
	color: #ffffff;
	margin-bottom: 20px;
	border-bottom: 1px solid #1f122e;
	padding-bottom: 12px;
}

.download-section-title i {
	color: #a3e635;
	margin-right: 8px;
}

.downloads-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.download-item-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #160a23;
	border: 1px solid #231238;
	padding: 15px 20px;
	border-radius: 4px;
	transition: border-color 0.2s;
}

.download-item-row:hover {
	border-color: #38bdf8;
}

.dl-details-left {
	display: flex;
	gap: 15px;
	align-items: center;
	flex-wrap: wrap;
}

.dl-badge-quality {
	background-color: #0ea5e9;
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 3px;
}

.dl-meta-audio,
.dl-meta-size,
.dl-meta-server {
	font-size: 13px;
	color: #e2e8f0;
}

.dl-meta-audio i,
.dl-meta-size i,
.dl-meta-server i {
	color: #00e5ff;
	margin-right: 5px;
}

.download-btn-primary {
	background-color: #e50914; /* Red button style */
	color: #ffffff;
	padding: 8px 20px;
	border-radius: 4px;
	font-size: 13px;
	font-weight: 700;
	display: inline-block;
	transition: background-color 0.2s;
}

.download-btn-primary:hover {
	background-color: #b90812;
	color: #ffffff;
}

/* ==========================================
   7. AJAX Filter Dashboard Elements
   ========================================== */
.archive-header-box {
	background-color: #12081d;
	border-left: 4px solid #00e5ff;
	padding: 20px;
	border-radius: 4px;
	margin-bottom: 25px;
}

.archive-main-title {
	font-size: 24px;
	font-weight: 800;
	color: #ffffff;
	margin-bottom: 5px;
}

.archive-subtitle {
	font-size: 14px;
	color: #94a3b8;
}

.movies-filter-dashboard-wrapper {
	background-color: #12081d;
	border: 1px solid #1f122e;
	padding: 20px;
	border-radius: 6px;
	margin-bottom: 30px;
}

.filters-grid-row {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 12px;
	margin-bottom: 15px;
}

.filter-item-col input,
.filter-item-col select {
	width: 100%;
	background-color: #1f122e;
	border: 1px solid #3b2263;
	padding: 10px;
	border-radius: 4px;
	color: #ffffff;
	outline: none;
	font-size: 13px;
}

.filter-item-col select option {
	background-color: #12081d;
	color: #ffffff;
}

.filter-submit-btn-row {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
}

.apply-filter-submit-btn {
	background-color: #a3e635;
	color: #000;
	border: none;
	padding: 8px 20px;
	border-radius: 4px;
	font-weight: 700;
	font-size: 13px;
	cursor: pointer;
	transition: background-color 0.2s;
}

.apply-filter-submit-btn:hover {
	background-color: #84cc16;
}

.reset-filter-btn {
	background-color: #1f122e;
	color: #ffffff;
	border: 1px solid #3b2263;
	padding: 8px 20px;
	border-radius: 4px;
	font-weight: 700;
	font-size: 13px;
	cursor: pointer;
	transition: background-color 0.2s;
}

.reset-filter-btn:hover {
	background-color: #2b1942;
}

/* ==========================================
   8. Pagination (Styled per Image 2)
   ========================================== */
.movies-pagination {
	margin-top: 45px;
	margin-bottom: 25px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.movies-pagination ul {
	display: flex;
	align-items: center;
	justify-content: center;
	list-style: none;
	gap: 10px;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
}

.movies-pagination li {
	display: inline-flex;
	margin: 0;
	padding: 0;
}

.movies-pagination li a,
.movies-pagination li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 46px;
	height: 46px;
	padding: 0 16px;
	background: #110f1a;
	border: 1px solid rgba(255, 255, 255, 0.15);
	color: #ffffff;
	font-family: 'Hanken Grotesk', sans-serif;
	font-size: 15px;
	font-weight: 700;
	border-radius: 10px;
	text-decoration: none;
	transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
	user-select: none;
}

.movies-pagination li a:hover {
	background: #191528;
	border-color: rgba(203, 252, 1, 0.5);
	color: #cbfc01;
	transform: translateY(-2px);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.6), 0 0 12px rgba(203, 252, 1, 0.25);
}

.movies-pagination li.active a,
.movies-pagination li.active span {
	background: #cbfc01 !important;
	color: #000000 !important;
	border-color: #cbfc01 !important;
	font-weight: 900 !important;
	box-shadow: 0 0 20px rgba(203, 252, 1, 0.6), 0 0 8px rgba(203, 252, 1, 0.4) !important;
	transform: scale(1.02);
}

.movies-pagination li span.ellipsis {
	background: #0e0a17;
	border: 1px solid rgba(255, 255, 255, 0.08);
	color: #8888a0;
	cursor: default;
	box-shadow: none;
}

.movies-pagination li a.prev-page,
.movies-pagination li a.next-page {
	padding: 0 20px;
	gap: 6px;
	font-weight: 700;
}

/* ==========================================
   9. Footer Styling Redesigned
   ========================================== */
.site-footer {
	margin-top: 60px;
	border-top: 1px solid #222;
	background-color: #111;
	padding: 60px 0 30px 0;
	width: 100%;
}

.footer-widgets-row {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1fr;
	gap: 40px;
	margin-bottom: 40px;
}

.footer-logo-container {
	margin-bottom: 25px;
}

.footer-neon-logo {
	font-size: 28px !important;
	padding: 5px 0 !important;
}

.footer-about-text {
	font-size: 14px;
	color: #888;
	line-height: 1.8;
}

.footer-column h3.widget-title {
	font-size: 15px;
	font-weight: 700;
	color: #ffffff;
	text-transform: uppercase;
	margin-bottom: 25px;
	letter-spacing: 1px;
	position: relative;
	padding-left: 12px;
	border-left: 3px solid #cbfc01;
}

.footer-links-list li,
.footer-column ul li {
	margin-bottom: 12px;
}

.footer-links-list li a,
.footer-column ul li a {
	color: #aaa;
	font-size: 14px;
	text-decoration: none;
	display: inline-block;
	transition: all 0.25s ease-in-out;
}

.footer-links-list li a:hover,
.footer-column ul li a:hover {
	color: #cbfc01;
	transform: translateX(6px);
}

.footer-policy-disclaimer {
	background-color: #191919;
	border: 1px solid #222;
	padding: 25px;
	font-size: 12px;
	color: #777;
	line-height: 1.8;
	border-radius: 8px;
	margin-bottom: 30px;
	text-align: center;
}

.footer-bottom-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-top: 1px solid #222;
	padding-top: 25px;
	font-size: 13px;
	color: #555;
}

.footer-bottom-row a {
	color: #888;
	text-decoration: none;
	transition: color 0.2s;
}

.footer-bottom-row a:hover {
	color: #cbfc01;
}

/* Related section */
.related-movies-container {
	margin-top: 40px;
	border-top: 1px solid #1f122e;
	padding-top: 30px;
}

.related-section-title {
	font-size: 18px;
	font-weight: 700;
	color: #ffffff;
	margin-bottom: 20px;
}

.related-section-title i {
	color: #ef4444;
	margin-right: 8px;
}

/* Ad center styling */
.movie-ad-container {
	display: flex;
	justify-content: center;
	margin: 20px 0;
	overflow: hidden;
}

.no-movies-found {
	text-align: center;
	padding: 60px 20px;
	background-color: #12081d;
	border-radius: 6px;
	color: #94a3b8;
}

/* ==========================================
   10. Professional Movie Review Page Styles
   ========================================== */

/* Main layout wrapper */
.movie-details-grid {
	display: grid;
	grid-template-columns: 8.2fr 3.8fr;
	gap: 30px;
	margin-top: 20px;
}

/* Hero Area (Top Part) */
.movie-hero-section {
	display: grid;
	grid-template-columns: 3.2fr 8.8fr;
	gap: 30px;
	background: #111;
	border-radius: 12px;
	padding: 25px;
	margin-bottom: 30px;
	border: 1px solid #222;
}

.movie-hero-poster {
	position: relative;
	border-radius: 8px;
	overflow: hidden;
	aspect-ratio: 2/3;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.movie-hero-poster img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Badge for Top Rated */
.top-rated-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background-color: #222;
	color: #cbfc01;
	padding: 6px 14px;
	font-size: 13px;
	font-weight: 700;
	border-radius: 20px;
	border: 1px solid #cbfc01;
	margin-bottom: 15px;
	text-transform: uppercase;
}

.movie-hero-title {
	font-size: 38px;
	font-weight: 800;
	color: #fff;
	margin-bottom: 10px;
	display: flex;
	align-items: center;
	gap: 15px;
}

.movie-bookmark-icon {
	color: #cbfc01;
	cursor: pointer;
	font-size: 24px;
	transition: 0.2s all;
}
.movie-bookmark-icon:hover {
	transform: scale(1.1);
}

.movie-meta-row {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #888;
	font-size: 14px;
	margin-bottom: 20px;
}

.movie-meta-row span {
	display: flex;
	align-items: center;
}

.movie-meta-separator {
	width: 4px;
	height: 4px;
	background-color: #555;
	border-radius: 50%;
	display: inline-block;
}

/* Ratings row */
.movie-ratings-row {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin-bottom: 25px;
	border-bottom: 1px solid #222;
	padding-bottom: 20px;
}

.rating-item {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 15px;
	font-weight: bold;
	color: #fff;
}

.rating-item span.gray-text {
	color: #888;
	font-weight: normal;
	font-size: 13px;
	margin-left: 2px;
}

/* Trailer & Action buttons */
.movie-hero-actions {
	display: flex;
	gap: 15px;
	margin-bottom: 25px;
}

.hero-btn-yellow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: linear-gradient(90deg, #b44fff, #6e3fff);
	color: #fff;
	border: none;
	padding: 12px 24px;
	border-radius: 50px;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	font-family: 'Hanken Grotesk', sans-serif;
	transition: all 0.3s ease;
	letter-spacing: 0.5px;
	text-decoration: none;
	box-shadow: 0 4px 20px rgba(180,79,255,0.35);
}

.hero-btn-yellow:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 30px rgba(180,79,255,0.5);
	background: linear-gradient(90deg, #c060ff, #7e50ff);
	color: #fff;
}

.hero-btn-outline {
	background: rgba(180,79,255,0.1);
	color: #c0a0ff;
	border: 1px solid rgba(180,79,255,0.4);
	padding: 12px 24px;
	font-weight: 600;
	border-radius: 50px;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	transition: all 0.3s ease;
	cursor: pointer;
	letter-spacing: 0.3px;
}

.hero-btn-outline:hover {
	background: rgba(180,79,255,0.2);
	border-color: #b44fff;
	color: #fff;
	transform: translateY(-2px);
}

.movie-plot-text {
	font-size: 15px;
	color: #ccc;
	line-height: 1.6;
	margin-bottom: 25px;
}

/* Key Info list */
.movie-info-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.info-list-row {
	display: grid;
	grid-template-columns: 2.2fr 9.8fr;
	font-size: 14px;
	line-height: 1.4;
}

.info-list-row .info-label {
	color: #888;
	font-weight: 500;
}

.info-list-row .info-value {
	color: #fff;
}

/* Video Box Trailer */
.trailer-box-container {
	background: #111;
	border: 1px solid #222;
	border-radius: 12px;
	padding: 20px;
	margin-bottom: 30px;
}

.section-heading-detail {
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.trailer-iframe-wrapper {
	position: relative;
	width: 100%;
	padding-top: 56.25%; /* 16:9 */
	border-radius: 12px;
	overflow: hidden;
	border: 1px solid rgba(180,79,255,0.2);
	box-shadow: 0 10px 40px rgba(0,0,0,0.5);
	background-color: #000;
}

.trailer-iframe-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	border: none;
}

/* Top Cast Block */
.cast-box-container {
	background: #111;
	border: 1px solid #222;
	border-radius: 12px;
	padding: 20px;
	margin-bottom: 30px;
}

.heading-row-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}

.heading-row-flex .view-all-link {
	color: #cbfc01;
	font-size: 13px;
	text-decoration: none;
}

.cast-grid-row {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 15px;
}

.cast-card-item {
	text-align: center;
	background: #191919;
	padding: 15px 10px;
	border-radius: 8px;
	border: 1px solid #2a2a2a;
}

.cast-avatar-circle {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	object-fit: cover;
	margin: 0 auto 10px auto;
	display: block;
	border: 2px solid #333;
}

.cast-actor-name {
	font-size: 13px;
	font-weight: bold;
	color: #fff;
	margin-bottom: 4px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.cast-char-name {
	font-size: 11px;
	color: #888;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* User Reviews Block */
.reviews-box-container {
	background: rgba(8,3,20,0.6);
	border: 1px solid rgba(180,79,255,0.14);
	border-radius: 14px;
	padding: 26px;
	margin-bottom: 28px;
	backdrop-filter: blur(6px);
}

.reviews-list-wrapper {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin-bottom: 25px;
}

.review-item-card {
	display: flex;
	gap: 15px;
	padding: 18px;
	background: rgba(255,255,255,0.03);
	border: 1px solid rgba(255,255,255,0.06);
	border-radius: 10px;
	margin-bottom: 12px;
	transition: border-color 0.25s;
}

.review-item-card:hover {
	border-color: rgba(180,79,255,0.25);
}

.review-avatar-bubble {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: linear-gradient(135deg, #b44fff, #00e5ff);
	color: #fff;
	font-size: 16px;
	font-weight: 800;
	display: flex;
	align-items: center;
	justify-content: center;
	text-transform: uppercase;
	flex-shrink: 0;
	box-shadow: 0 4px 12px rgba(180,79,255,0.35);
}

.review-card-content {
	flex-grow: 1;
}

.review-card-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-bottom: 6px;
}

.reviewer-name-txt {
	font-weight: bold;
	color: #fff;
	font-size: 14px;
}

.reviewer-rating-stars {
	color: #f5c518;
	font-size: 12px;
}

.review-date-txt {
	color: #505070;
	font-size: 11px;
}

.review-body-text {
	font-size: 14px;
	color: #ccc;
	line-height: 1.5;
	margin-bottom: 10px;
}

.review-actions-row {
	display: flex;
	gap: 15px;
	font-size: 12px;
	color: #888;
}

.review-actions-row span {
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 4px;
	transition: color 0.2s;
}

.review-actions-row span:hover {
	color: #cbfc01;
}

/* User Review Submission Form */
.review-submit-form-box {
	background: #191919;
	border: 1px solid #222;
	border-radius: 8px;
	padding: 20px;
	margin-top: 25px;
}

.review-submit-form-box h4 {
	font-size: 16px;
	color: #fff;
	margin-bottom: 15px;
	font-weight: bold;
}

.rating-select-wrapper {
	margin-bottom: 15px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.rating-select-wrapper label {
	color: #888;
	font-size: 14px;
}

.rating-select-wrapper select {
	background: #222;
	color: #fff;
	border: 1px solid #333;
	padding: 5px 10px;
	border-radius: 4px;
	outline: none;
}

.review-textarea {
	width: 100%;
	background: #222;
	color: #fff;
	border: 1px solid #333;
	padding: 10px;
	border-radius: 4px;
	height: 100px;
	resize: vertical;
	outline: none;
	font-family: inherit;
	margin-bottom: 15px;
}

.review-input-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 15px;
	margin-bottom: 15px;
}

.review-input-field {
	background: #222;
	color: #fff;
	border: 1px solid #333;
	padding: 10px;
	border-radius: 4px;
	outline: none;
	width: 100%;
}

/* Sidebar Widgets Layout */
.sidebar-widget-card {
	background: #111;
	border: 1px solid #222;
	border-radius: 12px;
	padding: 20px;
	margin-bottom: 25px;
}

.sidebar-widget-title {
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 1px solid #222;
}

/* Average Rating Graph Card */
.average-rating-container {
	text-align: center;
	margin-bottom: 20px;
}

.average-rating-large {
	font-size: 48px;
	font-weight: 800;
	color: #fff;
	line-height: 1;
	margin-bottom: 8px;
}

.average-rating-large span {
	font-size: 24px;
	color: #666;
	font-weight: 500;
}

.average-rating-stars {
	color: #eab308;
	font-size: 18px;
	margin-bottom: 5px;
}

.average-rating-count-txt {
	font-size: 12px;
	color: #888;
}

/* Rating Breakdown Graph */
.rating-breakdown-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.breakdown-row {
	display: flex;
	align-items: center;
	font-size: 12px;
	color: #aaa;
	gap: 10px;
}

.breakdown-label {
	width: 30px;
	display: flex;
	align-items: center;
	gap: 4px;
}

.breakdown-bar-bg {
	flex-grow: 1;
	height: 8px;
	background: #222;
	border-radius: 4px;
	overflow: hidden;
}

.breakdown-bar-fill {
	height: 100%;
	background-color: #cbfc01;
	border-radius: 4px;
}

.breakdown-percent {
	width: 35px;
	text-align: right;
	color: #888;
}

/* Share widget */
.share-links-row {
	display: flex;
	gap: 10px;
}

.share-link-circle {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	text-decoration: none;
	font-size: 16px;
	transition: transform 0.2s;
}

.share-link-circle:hover {
	transform: translateY(-3px);
}

.share-facebook { background-color: #3b5998; }
.share-twitter { background-color: #1da1f2; }
.share-whatsapp { background-color: #25d366; }
.share-copy { background-color: #444; }

/* Side Movie Info Widget */
.side-info-list {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.side-info-row {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.side-info-label {
	font-size: 12px;
	color: #888;
	text-transform: uppercase;
	font-weight: 600;
}

.side-info-value {
	font-size: 14px;
	color: #fff;
}

/* Side Related Movies Widget */
.side-related-list {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.side-related-item {
	display: flex;
	gap: 12px;
	text-decoration: none;
}

.side-related-poster {
	width: 55px;
	height: 80px;
	border-radius: 4px;
	object-fit: cover;
	border: 1px solid #222;
}

.side-related-info {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 4px;
}

.side-related-title {
	font-size: 13px;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	line-height: 1.3;
}

.side-related-item:hover .side-related-title {
	color: #cbfc01;
}

.side-related-meta {
	font-size: 11px;
	color: #888;
}

.side-related-rating {
	font-size: 11px;
	color: #eab308;
	display: flex;
	align-items: center;
	gap: 3px;
	font-weight: bold;
}

/* Responsive side grid layout adjustments */
@media (max-width: 1024px) {
	.movie-details-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.movie-hero-section {
		grid-template-columns: 1fr;
	}
	.cast-grid-row {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 480px) {
	.cast-grid-row {
		grid-template-columns: repeat(2, 1fr);
	}
	.review-input-row {
		grid-template-columns: 1fr;
	}
}

/* ==========================================
   11. Container paddings, Animations, Legal & Contacts
   ========================================== */

/* Container Layout with side paddings */
.container {
	max-width: 1200px;
	margin: 0 auto;
	padding-left: 30px;
	padding-right: 30px;
	width: 100%;
}

@media (max-width: 768px) {
	.container {
		padding-left: 15px;
		padding-right: 15px;
	}
}

/* Animations */
@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(15px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.homepage-section, 
.movie-hero-section, 
.movie-details-grid,
.archive-header-box,
.movies-filter-dashboard-wrapper,
.legal-page-card,
.contact-grid {
	animation: fadeIn 0.6s ease-in-out forwards;
}

/* Dynamic Hover Micro-animations */
.header-tags-cloud a,
.apply-filter-submit-btn,
.section-read-more-btn,
.hero-btn-yellow,
.hero-btn-outline {
	transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.header-tags-cloud a:hover {
	transform: scale(1.05);
	background-color: #cbfc01;
	color: #000;
	box-shadow: 0 4px 12px rgba(203, 252, 1, 0.3);
}

.movie-card {
	transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.movie-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.4);
	border-color: #cbfc01;
}

/* Legal Pages Styling */
.legal-page-card {
	background: #111;
	border: 1px solid #222;
	padding: 40px;
	border-radius: 12px;
	margin-top: 20px;
	margin-bottom: 40px;
}

.legal-page-title {
	font-size: 32px;
	font-weight: 800;
	color: #fff;
	margin-bottom: 25px;
	border-bottom: 1px solid #222;
	padding-bottom: 15px;
}

.legal-page-content {
	color: #ccc;
	font-size: 15px;
	line-height: 1.8;
}

.legal-page-content p {
	margin-bottom: 20px;
}

.legal-page-content h2, 
.legal-page-content h3 {
	color: #fff;
	margin-top: 30px;
	margin-bottom: 15px;
}

/* Contact Page Form styling */
.contact-grid {
	display: grid;
	grid-template-columns: 5fr 7fr;
	gap: 40px;
	margin-top: 20px;
	margin-bottom: 40px;
}

.contact-info-card {
	background: #111;
	border: 1px solid #222;
	padding: 40px;
	border-radius: 12px;
}

.contact-form-card {
	background: #111;
	border: 1px solid #222;
	padding: 40px;
	border-radius: 12px;
}

.contact-title {
	font-size: 28px;
	color: #fff;
	font-weight: 800;
	margin-bottom: 20px;
}

.contact-text {
	color: #ccc;
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 30px;
}

.contact-methods {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.contact-method-item {
	display: flex;
	align-items: center;
	gap: 15px;
}

.contact-icon-wrapper {
	width: 45px;
	height: 45px;
	background: #222;
	color: #cbfc01;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	border: 1px solid #333;
}

.contact-method-label {
	font-size: 12px;
	color: #888;
	text-transform: uppercase;
	font-weight: 600;
}

.contact-method-value {
	font-size: 15px;
	color: #fff;
	font-weight: bold;
}

/* Bottom Related Section Layout */
.bottom-related-section {
	margin-top: 40px;
	border-top: 1px solid #222;
	padding-top: 30px;
	margin-bottom: 20px;
}

.bottom-related-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.bottom-related-card {
	background: #111;
	border: 1px solid #222;
	border-radius: 8px;
	overflow: hidden;
	transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.bottom-related-card:hover {
	transform: translateY(-8px);
	border-color: #cbfc01;
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.4);
}

.bottom-related-link {
	text-decoration: none;
}

.bottom-related-poster-wrapper {
	position: relative;
	aspect-ratio: 2/3;
	overflow: hidden;
}

.bottom-related-poster-wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.bottom-related-rating-badge {
	position: absolute;
	top: 10px;
	right: 10px;
	background: rgba(0, 0, 0, 0.85);
	color: #eab308;
	padding: 4px 8px;
	font-size: 11px;
	font-weight: bold;
	border-radius: 4px;
	border: 1px solid rgba(234, 179, 8, 0.3);
}

.bottom-related-meta {
	padding: 12px;
}

.bottom-related-title {
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	margin-bottom: 5px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.bottom-related-year {
	font-size: 12px;
	color: #666;
}

@media (max-width: 768px) {
	.bottom-related-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 480px) {
	.bottom-related-grid {
		grid-template-columns: 1fr;
	}
}

/* ==========================================
   PREMIUM FOOTER REDESIGN
   ========================================== */
.site-footer {
	background: linear-gradient(180deg, #06020f 0%, #080316 40%, #0a0420 100%) !important;
	border-top: 1px solid rgba(180,79,255,0.2);
	box-shadow: 0 -10px 60px rgba(120,0,255,0.08);
	padding: 60px 0 0;
	position: relative;
	overflow: hidden;
}

.site-footer::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 2px;
	background: linear-gradient(90deg, transparent, #b44fff 30%, #00e5ff 70%, transparent);
}

.footer-widgets-row {
	display: grid;
	grid-template-columns: 1.8fr 1fr 1fr 1fr;
	gap: 40px;
	padding-bottom: 50px;
	border-bottom: 1px solid rgba(255,255,255,0.06);
}

.footer-column .widget-title {
	font-size: 13px;
	font-weight: 700;
	color: #b44fff;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 22px;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(180,79,255,0.2);
	position: relative;
}

.footer-column .widget-title::after {
	content: '';
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 35px;
	height: 2px;
	background: linear-gradient(90deg, #b44fff, #00e5ff);
}

.footer-links-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.footer-links-list li {
	margin-bottom: 10px;
}

.footer-links-list a {
	color: #9090b0;
	text-decoration: none;
	font-size: 14px;
	font-weight: 400;
	transition: all 0.25s ease;
	display: inline-flex;
	align-items: center;
	gap: 7px;
}

.footer-links-list a::before {
	content: '›';
	color: #b44fff;
	font-size: 16px;
	line-height: 1;
	opacity: 0;
	transform: translateX(-4px);
	transition: all 0.25s ease;
}

.footer-links-list a:hover {
	color: #fff;
	transform: translateX(5px);
}

.footer-links-list a:hover::before {
	opacity: 1;
	transform: translateX(0);
}

.footer-about-text {
	color: #7070a0;
	font-size: 13.5px;
	line-height: 1.8;
	margin-top: 15px;
	max-width: 280px;
}

.footer-logo-container {
	margin-bottom: 8px;
}

.footer-bottom-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 0;
	flex-wrap: wrap;
	gap: 10px;
}

.copyright-text {
	font-size: 13px;
	color: #504070;
}

.copyright-text a {
	color: #b44fff;
	text-decoration: none;
}

/* ==========================================
   MOVIE DETAILS HERO — FULL BACKDROP
   ========================================== */
.movie-hero-fullbg {
	position: relative;
	width: 100%;
	min-height: 480px;
	background-size: cover;
	background-position: center top;
	display: flex;
	align-items: flex-end;
	margin-bottom: 0;
	overflow: hidden;
}

.movie-hero-fullbg::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(to bottom,
		rgba(8,3,25,0.25) 0%,
		rgba(8,3,25,0.6) 50%,
		rgba(8,3,25,0.95) 85%,
		rgba(8,3,25,1) 100%);
}

.movie-hero-overlay-content {
	position: relative;
	z-index: 2;
	width: 100%;
	padding: 50px 0 40px;
}

.movie-hero-badge-row {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 16px;
}

.movie-genre-pill {
	background: linear-gradient(90deg, rgba(180,79,255,0.3), rgba(0,229,255,0.2));
	border: 1px solid rgba(180,79,255,0.4);
	color: #d0c8ff;
	font-size: 11px;
	font-weight: 600;
	padding: 4px 12px;
	border-radius: 50px;
	text-transform: uppercase;
	letter-spacing: 0.8px;
}

.movie-hero-main-title {
	font-size: clamp(28px, 4vw, 48px);
	font-weight: 800;
	color: #fff;
	line-height: 1.15;
	margin-bottom: 12px;
	text-shadow: 0 2px 20px rgba(0,0,0,0.8);
}

.movie-hero-short-desc {
	font-size: 15px;
	color: rgba(255,255,255,0.75);
	max-width: 700px;
	line-height: 1.7;
	margin-bottom: 20px;
}

.movie-hero-meta-pills {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	align-items: center;
}

.meta-pill {
	background: rgba(255,255,255,0.08);
	border: 1px solid rgba(255,255,255,0.12);
	color: #ccc;
	font-size: 12px;
	padding: 4px 12px;
	border-radius: 50px;
	font-weight: 500;
}

.meta-pill.imdb {
	background: rgba(245,197,24,0.15);
	border-color: rgba(245,197,24,0.35);
	color: #f5c518;
}

/* ==========================================
   MOVIE DETAIL BODY — PROFESSIONAL TABLE
   ========================================== */
.movie-detail-body {
	display: grid;
	grid-template-columns: 260px 1fr;
	gap: 35px;
	padding: 0 0 30px;
}

.movie-poster-sticky {
	flex-shrink: 0;
}

.movie-poster-sticky img {
	width: 100%;
	border-radius: 10px;
	box-shadow: 0 20px 60px rgba(0,0,0,0.7), 0 0 0 1px rgba(180,79,255,0.2);
	display: block;
}

.movie-info-body {
	flex-grow: 1;
}

.movie-section-title {
	font-size: 15px;
	font-weight: 700;
	color: #b44fff;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	margin-bottom: 18px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.movie-section-title::after {
	content: '';
	flex: 1;
	height: 1px;
	background: linear-gradient(90deg, rgba(180,79,255,0.4), transparent);
}

/* Professional Info Table */
.movie-info-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	margin-bottom: 30px;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid rgba(180,79,255,0.1);
}

.movie-info-table tr {
	transition: background 0.2s;
}

.movie-info-table tr:nth-child(even) {
	background: rgba(255,255,255,0.025);
}

.movie-info-table tr:hover {
	background: rgba(180,79,255,0.06);
}

.movie-info-table th {
	padding: 12px 18px;
	font-size: 12px;
	font-weight: 700;
	color: #9090b0;
	text-transform: uppercase;
	letter-spacing: 1px;
	width: 160px;
	white-space: nowrap;
	border-right: 1px solid rgba(180,79,255,0.1);
}

.movie-info-table td {
	padding: 12px 18px;
	font-size: 14px;
	color: #e0e0ff;
	font-weight: 400;
}

.movie-info-table td a {
	color: #b44fff;
	text-decoration: none;
}

.movie-info-table td a:hover {
	color: #00e5ff;
}

/* Cast Section */
.cast-grid-premium {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(90px, 1fr));
	gap: 15px;
	margin-top: 15px;
}

.cast-card-premium {
	text-align: center;
	cursor: pointer;
	transition: transform 0.25s ease;
}

.cast-card-premium:hover {
	transform: translateY(-5px);
}

.cast-avatar-circle {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	margin: 0 auto 8px;
	overflow: hidden;
	border: 2px solid rgba(180,79,255,0.4);
	background: linear-gradient(135deg, #1a0a2e, #0e1a30);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: border-color 0.25s;
}

.cast-card-premium:hover .cast-avatar-circle {
	border-color: #b44fff;
	box-shadow: 0 0 15px rgba(180,79,255,0.5);
}

.cast-avatar-circle img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cast-avatar-letter {
	font-size: 24px;
	font-weight: 800;
	color: #b44fff;
}

.cast-name-label {
	font-size: 11px;
	font-weight: 700;
	color: #ddd;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.cast-role-label {
	font-size: 10px;
	color: #666;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Ratings Circles */
.ratings-triple-row {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	margin-bottom: 25px;
}

.rating-circle-card {
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 12px;
	padding: 15px 22px;
	text-align: center;
	min-width: 110px;
}

.rating-circle-label {
	font-size: 10px;
	font-weight: 700;
	color: #777;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 6px;
}

.rating-circle-score {
	font-size: 28px;
	font-weight: 800;
	line-height: 1;
}

.rating-circle-score.imdb-color { color: #f5c518; }
.rating-circle-score.tomato-color { color: #ff4500; }
.rating-circle-score.audience-color { color: #00e5ff; }

/* ==========================================
   TRENDING ARTICLES PANEL
   ========================================== */
.trending-articles-section {
	margin-top: 40px;
	padding-top: 30px;
	border-top: 1px solid rgba(180,79,255,0.15);
}

.trending-articles-banner {
	background: linear-gradient(135deg, rgba(10,3,30,0.98) 0%, rgba(15,5,40,0.98) 100%);
	border: 1px solid rgba(180,79,255,0.2);
	border-radius: 14px;
	overflow: hidden;
	position: relative;
}

.trending-articles-banner::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 3px;
	background: linear-gradient(90deg, #b44fff, #00e5ff, #ff5e62);
}

.trending-articles-header {
	padding: 20px 25px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid rgba(255,255,255,0.06);
}

.trending-articles-heading {
	font-size: 18px;
	font-weight: 800;
	color: #fff;
	display: flex;
	align-items: center;
	gap: 10px;
}

.trending-fire-icon {
	font-size: 20px;
}

.trending-articles-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
}

.trending-article-card {
	position: relative;
	cursor: pointer;
	overflow: hidden;
	border-right: 1px solid rgba(255,255,255,0.05);
	border-bottom: 1px solid rgba(255,255,255,0.05);
	transition: background 0.3s ease;
}

.trending-article-card:hover {
	background: rgba(180,79,255,0.06);
}

.trending-article-card:nth-child(3n) {
	border-right: none;
}

.trending-article-inner {
	padding: 20px 22px;
	display: flex;
	gap: 15px;
	align-items: flex-start;
}

.trending-article-number {
	font-size: 36px;
	font-weight: 900;
	color: rgba(180,79,255,0.2);
	line-height: 1;
	flex-shrink: 0;
	min-width: 40px;
}

.trending-article-content {
	flex: 1;
}

.trending-article-tag {
	display: inline-block;
	font-size: 10px;
	font-weight: 700;
	color: #b44fff;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 6px;
}

.trending-article-title {
	font-size: 14px;
	font-weight: 700;
	color: #e0e0f0;
	line-height: 1.4;
	margin-bottom: 6px;
	transition: color 0.2s;
}

.trending-article-card:hover .trending-article-title {
	color: #b44fff;
}

.trending-article-excerpt {
	font-size: 12px;
	color: #606080;
	line-height: 1.5;
}

.trending-article-card-arrow {
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%) translateX(8px);
	color: #b44fff;
	opacity: 0;
	transition: all 0.25s ease;
	font-size: 18px;
}

.trending-article-card:hover .trending-article-card-arrow {
	opacity: 1;
	transform: translateY(-50%) translateX(0);
}

/* ==========================================
   ARTICLE FULL PAGE MODAL
   ========================================== */
.article-modal-overlay {
	position: fixed;
	inset: 0;
	z-index: 99999;
	background: rgba(0,0,0,0.85);
	backdrop-filter: blur(6px);
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.35s ease;
}

.article-modal-overlay.active {
	opacity: 1;
	pointer-events: all;
}

.article-modal-sidebar {
	width: 480px;
	max-width: 100vw;
	height: 100vh;
	background: linear-gradient(180deg, #0c0420 0%, #08031a 100%);
	border-left: 1px solid rgba(180,79,255,0.25);
	display: flex;
	flex-direction: column;
	transform: translateX(100%);
	transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
	overflow: hidden;
}

.article-modal-overlay.active .article-modal-sidebar {
	transform: translateX(0);
}

.article-modal-topbar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 18px 24px;
	border-bottom: 1px solid rgba(180,79,255,0.15);
	background: rgba(180,79,255,0.06);
}

.article-modal-site-name {
	font-size: 13px;
	font-weight: 700;
	color: #b44fff;
	text-transform: uppercase;
	letter-spacing: 1.5px;
}

.article-modal-close {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: rgba(255,255,255,0.07);
	border: 1px solid rgba(255,255,255,0.1);
	color: #fff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	transition: all 0.2s ease;
	line-height: 1;
}

.article-modal-close:hover {
	background: rgba(255,94,98,0.25);
	border-color: #ff5e62;
	color: #ff5e62;
}

.article-modal-scroll {
	flex: 1;
	overflow-y: auto;
	padding: 30px 28px 40px;
	scrollbar-width: thin;
	scrollbar-color: rgba(180,79,255,0.4) transparent;
}

.article-modal-scroll::-webkit-scrollbar {
	width: 4px;
}

.article-modal-scroll::-webkit-scrollbar-thumb {
	background: rgba(180,79,255,0.4);
	border-radius: 4px;
}

.article-modal-category {
	font-size: 11px;
	font-weight: 700;
	color: #b44fff;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	margin-bottom: 12px;
}

.article-modal-title {
	font-size: 22px;
	font-weight: 800;
	color: #fff;
	line-height: 1.3;
	margin-bottom: 16px;
}

.article-modal-meta {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	font-size: 12px;
	color: #606080;
	margin-bottom: 25px;
	padding-bottom: 20px;
	border-bottom: 1px solid rgba(255,255,255,0.06);
}

.article-modal-body {
	font-size: 15px;
	color: #b0b0d0;
	line-height: 1.9;
}

.article-modal-body p {
	margin-bottom: 18px;
}

.article-modal-body h3 {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	margin: 25px 0 12px;
}

.article-modal-backdrop-close {
	position: fixed;
	inset: 0;
	z-index: -1;
}

/* Section wrapper inside single */
.single-movie-main-wrapper {
	background: rgba(8,3,20,0.7);
	border: 1px solid rgba(180,79,255,0.1);
	border-radius: 14px;
	overflow: hidden;
	margin-bottom: 30px;
	backdrop-filter: blur(8px);
}

.single-movie-body-padding {
	padding: 30px;
}

/* Reviews section */
.reviews-box-container {
	margin-top: 35px;
	border-top: 1px solid rgba(180,79,255,0.1);
	padding-top: 28px;
}

.section-heading-detail {
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.section-heading-detail i {
	color: #b44fff;
}

/* Review cards */
.review-item-card {
	display: flex;
	gap: 15px;
	padding: 18px;
	background: rgba(255,255,255,0.03);
	border: 1px solid rgba(255,255,255,0.06);
	border-radius: 10px;
	margin-bottom: 14px;
	transition: border-color 0.25s;
}

.review-item-card:hover {
	border-color: rgba(180,79,255,0.25);
}

.review-avatar-bubble {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: linear-gradient(135deg, #b44fff, #00e5ff);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	font-size: 16px;
	color: #fff;
	flex-shrink: 0;
}

.reviewer-rating-stars {
	color: #f5c518;
	font-size: 12px;
}

.review-date-txt {
	font-size: 11px;
	color: #505070;
	margin-left: 8px;
}

.review-submit-form-box {
	background: rgba(180,79,255,0.04);
	border: 1px solid rgba(180,79,255,0.15);
	border-radius: 12px;
	padding: 24px;
	margin-top: 25px;
}

.review-textarea {
	width: 100%;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.1);
	border-radius: 8px;
	color: #fff;
	padding: 14px;
	font-size: 14px;
	font-family: inherit;
	min-height: 100px;
	resize: vertical;
	margin: 12px 0;
	transition: border-color 0.2s;
}

.review-textarea:focus {
	outline: none;
	border-color: rgba(180,79,255,0.5);
}

.review-input-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin-bottom: 14px;
}

.review-input-field {
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.1);
	border-radius: 8px;
	color: #fff;
	padding: 11px 14px;
	font-size: 14px;
	font-family: inherit;
	width: 100%;
	transition: border-color 0.2s;
}

.review-input-field:focus {
	outline: none;
	border-color: rgba(180,79,255,0.5);
}

/* Hero btn premium */
.hero-btn-yellow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: linear-gradient(90deg, #b44fff, #6e3fff);
	color: #fff;
	border: none;
	padding: 12px 24px;
	border-radius: 50px;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	font-family: inherit;
	transition: all 0.3s ease;
	letter-spacing: 0.5px;
	text-decoration: none;
	box-shadow: 0 4px 20px rgba(180,79,255,0.35);
}

.hero-btn-yellow:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 30px rgba(180,79,255,0.5);
	background: linear-gradient(90deg, #c060ff, #7e50ff);
	color: #fff;
}

/* Sidebar widgets */
.movie-details-sidebar .sidebar-widget-card {
	background: rgba(255,255,255,0.03);
	border: 1px solid rgba(180,79,255,0.12);
	border-radius: 12px;
	padding: 20px;
	margin-bottom: 20px;
}

/* ==========================================
   CINEMORA / IMDB PRO ULTRA PREMIUM LAYOUT
   ========================================== */
.cinemora-single-main {
	background-color: #0d0e12;
	color: #ffffff;
	min-height: 100vh;
}

.cinemora-hero-section {
	position: relative;
	width: 100%;
	min-height: 480px;
	background-size: cover;
	background-position: center top;
	border-bottom: 1px solid #1a1c23;
}

.cinemora-hero-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to right, rgba(13,14,18,0.96) 0%, rgba(13,14,18,0.85) 45%, rgba(13,14,18,0.45) 100%), linear-gradient(to bottom, rgba(13,14,18,0.2) 0%, #0d0e12 100%);
	z-index: 1;
}

.cinemora-hero-container {
	position: relative;
	z-index: 2;
	display: flex;
	gap: 35px;
	align-items: flex-start;
	padding: 40px 0;
}

.cinemora-hero-poster-box {
	width: 260px;
	flex-shrink: 0;
}

.cinemora-poster-frame {
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 20px 50px rgba(0,0,0,0.85);
	position: relative;
	border: 1px solid rgba(255,255,255,0.12);
}

.cinemora-hero-img {
	width: 100%;
	aspect-ratio: 2/3;
	object-fit: cover;
	display: block;
}

.cinemora-poster-trailer-btn {
	position: absolute;
	bottom: 0; left: 0; right: 0;
	background: rgba(15,16,22,0.92);
	border-top: 1px solid rgba(255,255,255,0.15);
	color: #fff !important;
	text-align: center;
	padding: 13px 10px;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	backdrop-filter: blur(10px);
	transition: background 0.2s;
	letter-spacing: 0.8px;
}

.cinemora-poster-trailer-btn:hover {
	background: rgba(225,29,72,0.9);
}

.cinemora-hero-details {
	flex: 1;
}

.cinemora-hero-top-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
}

.cinemora-breadcrumbs {
	font-size: 12px;
	color: #6c7280;
}

.cinemora-breadcrumbs a {
	color: #9ca3af;
	text-decoration: none;
}

.cinemora-breadcrumbs a:hover {
	color: #e11d48;
}

.cinemora-tag-featured {
	background: #e11d48;
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	padding: 3px 8px;
	border-radius: 3px;
	letter-spacing: 1px;
}

.cinemora-movie-title {
	font-size: 42px;
	font-weight: 800;
	color: #ffffff;
	margin-bottom: 8px;
	line-height: 1.1;
	letter-spacing: -0.5px;
}

.cinemora-meta-line {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 14px;
	color: #9ca3af;
	margin-bottom: 20px;
}

.cinemora-meta-line .dot {
	color: #374151;
}

.cinemora-badge-pg {
	border: 1px solid #374151;
	padding: 1px 6px;
	border-radius: 3px;
	font-size: 11px;
	font-weight: 700;
	color: #d1d5db;
}

.cinemora-ratings-row {
	display: flex;
	gap: 30px;
	margin-bottom: 22px;
	background: rgba(255,255,255,0.03);
	border: 1px solid rgba(255,255,255,0.06);
	border-radius: 10px;
	padding: 14px 20px;
	width: fit-content;
}

.cinemora-score-box {
	display: flex;
	align-items: center;
	gap: 10px;
}

.cinemora-score-box .star-icon {
	color: #f59e0b;
	font-size: 26px;
}

.cinemora-score-box .tomato-icon,
.cinemora-score-box .popcorn-icon {
	font-size: 24px;
}

.cinemora-score-box .score-val {
	line-height: 1.2;
}

.cinemora-score-box .score-val strong {
	font-size: 20px;
	font-weight: 800;
	color: #fff;
}

.cinemora-score-box .score-val .scale {
	font-size: 12px;
	color: #6b7280;
}

.cinemora-score-box .score-sub {
	font-size: 11px;
	color: #6b7280;
}

.cinemora-actions-row {
	display: flex;
	gap: 12px;
	margin-bottom: 22px;
}

.btn-cinemora-red {
	background: #e11d48;
	color: #fff !important;
	padding: 11px 22px;
	border-radius: 6px;
	font-weight: 700;
	font-size: 13px;
	border: none;
	cursor: pointer;
	text-decoration: none;
	transition: all 0.2s ease;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.btn-cinemora-red:hover {
	background: #f43f5e;
	transform: translateY(-1px);
}

.btn-cinemora-dark {
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.12);
	color: #e5e7eb !important;
	padding: 11px 22px;
	border-radius: 6px;
	font-weight: 600;
	font-size: 13px;
	cursor: pointer;
	transition: all 0.2s;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.btn-cinemora-dark:hover {
	background: rgba(255,255,255,0.12);
	color: #fff !important;
}

.cinemora-hero-synopsis {
	font-size: 14px;
	color: #9ca3af;
	line-height: 1.7;
	margin-bottom: 24px;
	max-width: 750px;
}

.cinemora-hero-specs-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px 40px;
	max-width: 700px;
}

.cinemora-hero-specs-grid .spec-item {
	font-size: 13px;
	display: flex;
	gap: 12px;
}

.cinemora-hero-specs-grid .spec-item .lbl {
	color: #6b7280;
	width: 90px;
	flex-shrink: 0;
}

.cinemora-hero-specs-grid .spec-item .val {
	color: #e5e7eb;
}

/* Tabs Bar Sticky */
.cinemora-tabs-bar {
	background: #121318;
	border-bottom: 1px solid #1f222a;
	position: sticky;
	top: 0;
	z-index: 100;
}

.cinemora-tabs-list {
	display: flex;
	gap: 32px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.cinemora-tabs-list li {
	margin: 0;
}

.cinemora-tabs-list li a {
	display: inline-block;
	padding: 16px 0;
	font-size: 13px;
	font-weight: 700;
	color: #9ca3af;
	text-decoration: none;
	position: relative;
	letter-spacing: 0.5px;
}

.cinemora-tabs-list li.active a,
.cinemora-tabs-list li a:hover {
	color: #fff;
}

.cinemora-tabs-list li.active a::after {
	content: '';
	position: absolute;
	bottom: 0; left: 0; right: 0;
	height: 3px;
	background: #e11d48;
}

/* Main Body Layout */
.cinemora-body-container {
	padding: 35px 0 60px;
}

.cinemora-main-grid {
	display: grid;
	grid-template-columns: 1fr 340px;
	gap: 30px;
	align-items: start;
}

.cinemora-primary-col {
	display: flex;
	flex-direction: column;
	gap: 25px;
}

.cinemora-row-2col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.cinemora-card {
	background: #121318;
	border: 1px solid #1f222a;
	border-radius: 10px;
	overflow: hidden;
	padding: 22px;
}

.cinemora-card-header {
	margin-bottom: 18px;
	border-bottom: 1px solid #1f222a;
	padding-bottom: 12px;
}

.cinemora-card-header h3 {
	font-size: 13px;
	font-weight: 800;
	color: #ffffff;
	letter-spacing: 1px;
	margin: 0;
}

.flex-between {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.view-all-link {
	font-size: 12px;
	color: #e11d48;
	text-decoration: none;
	font-weight: 700;
}

.view-all-link:hover {
	color: #f43f5e;
}

.cinemora-video-wrapper {
	position: relative;
	padding-top: 56.25%;
	border-radius: 8px;
	overflow: hidden;
	background: #000;
}

.cinemora-video-wrapper iframe {
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	border: none;
}

/* Dedicated Rumble Video Player Container (16:9 Widescreen W-100 Ratio) */
.rumble-video-container {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	height: 0;
	border-radius: 8px;
	overflow: hidden;
	background: #000000;
	border: 1px solid rgba(180, 79, 255, 0.2);
}

.rumble-video-container iframe,
.rumble-video-container video,
.rumble-video-container div,
.rumble-video-container object,
.rumble-video-container embed {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	border: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.no-trailer-placeholder {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: #4b5563;
}

.no-trailer-placeholder i {
	font-size: 48px;
	margin-bottom: 10px;
}

.cinemora-video-caption {
	font-size: 12px;
	color: #9ca3af;
	margin-top: 10px;
	font-weight: 600;
}

.cinemora-breakdown-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.breakdown-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 13px;
	color: #d1d5db;
}

.breakdown-item .stars {
	color: #f59e0b;
	font-size: 12px;
}

.breakdown-item .num {
	font-weight: 700;
	color: #fff;
}

.user-rating-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 18px;
	padding-top: 14px;
	border-top: 1px solid #1f222a;
	font-size: 13px;
	color: #d1d5db;
}

.user-rating-footer .red-stars {
	color: #e11d48;
	font-size: 14px;
}

.cinemora-story-text {
	font-size: 14.5px;
	color: #9ca3af;
	line-height: 1.8;
}

/* Video Switcher Pills */
.video-switcher-pills {
	display: flex;
	gap: 8px;
}

.video-pill-btn {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.12);
	color: #9ca3af;
	font-size: 11px;
	font-weight: 700;
	padding: 5px 12px;
	border-radius: 50px;
	cursor: pointer;
	transition: all 0.2s ease;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-family: inherit;
}

.video-pill-btn:hover,
.video-pill-btn.active {
	background: #e11d48;
	color: #ffffff !important;
	border-color: transparent;
	box-shadow: 0 4px 12px rgba(225, 29, 72, 0.4);
}

/* Cast Grid - Fixed Uniform Sizing */
.cinemora-cast-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	align-items: flex-start;
	justify-content: flex-start;
}

.cinemora-cast-card {
	width: 90px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	transition: transform 0.25s ease;
}

.cinemora-cast-card:hover {
	transform: translateY(-4px);
}

.cast-thumb-box {
	width: 85px;
	height: 85px;
	min-width: 85px;
	min-height: 85px;
	border-radius: 50%;
	overflow: hidden;
	background: linear-gradient(135deg, #1a1c23 0%, #0d0e12 100%);
	margin-bottom: 8px;
	border: 2px solid rgba(225, 29, 72, 0.4);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.6);
	transition: all 0.25s ease;
}

.cinemora-cast-card:hover .cast-thumb-box {
	border-color: #e11d48;
	box-shadow: 0 0 18px rgba(225, 29, 72, 0.6);
}

.cast-thumb-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
	display: block;
}

.cast-initial-fallback {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 26px;
	font-weight: 800;
	color: #ffffff;
	background: linear-gradient(135deg, #e11d48 0%, #be123c 100%);
	text-shadow: 0 2px 6px rgba(0,0,0,0.4);
	border-radius: 50%;
}

.cast-name {
	font-size: 12px;
	font-weight: 700;
	color: #ffffff;
	text-align: center;
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.cast-role {
	font-size: 11px;
	color: #9ca3af;
	text-align: center;
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Gallery photos */
.cinemora-gallery-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
}

.gallery-photo-item {
	border-radius: 8px;
	overflow: hidden;
	aspect-ratio: 16/9;
	display: block;
	border: 1px solid #1f222a;
}

.gallery-photo-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s;
}

.gallery-photo-item:hover img {
	transform: scale(1.05);
}

/* Reviews List & Form */
.cinemora-reviews-list {
	display: flex;
	flex-direction: column;
	gap: 15px;
	margin-bottom: 25px;
}

.cinemora-review-item {
	display: flex;
	gap: 15px;
	background: rgba(255,255,255,0.02);
	border: 1px solid #1f222a;
	padding: 16px;
	border-radius: 8px;
}

.review-avatar {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: #e11d48;
	color: #fff;
	font-size: 16px;
	font-weight: 800;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.review-top-meta {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 6px;
}

.review-top-meta .author-name {
	font-size: 13px;
	color: #fff;
}

.review-top-meta .stars-val {
	color: #f59e0b;
	font-size: 12px;
}

.review-top-meta .date-val {
	font-size: 11px;
	color: #6b7280;
}

.review-body p {
	font-size: 13.5px;
	color: #9ca3af;
	line-height: 1.6;
	margin: 0;
}

.no-reviews-txt {
	font-size: 13px;
	color: #6b7280;
}

.cinemora-review-form-container {
	background: rgba(255,255,255,0.02);
	border: 1px solid #1f222a;
	border-radius: 8px;
	padding: 20px;
}

.form-title {
	font-size: 14px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 16px;
}

.form-row-rating {
	margin-bottom: 14px;
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 13px;
	color: #9ca3af;
}

.cinemora-select,
.cinemora-input {
	background: #1a1c23;
	border: 1px solid #2a2d37;
	color: #fff;
	padding: 10px 14px;
	border-radius: 6px;
	font-size: 13px;
	width: 100%;
	outline: none;
}

.cinemora-input.textarea {
	min-height: 90px;
	resize: vertical;
	margin-bottom: 14px;
}

.form-grid-2col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin-bottom: 14px;
}

.submit-btn {
	width: 100%;
	justify-content: center;
}

/* Similar Movies Grid (Small & Compact 4-Card Layout) */
.cinemora-similar-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.similar-movie-card {
	width: 100%;
	min-width: 0;
	text-align: center;
	background: rgba(255, 255, 255, 0.02);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 8px;
	padding: 8px;
	transition: all 0.25s ease;
}

.similar-movie-card:hover {
	background: rgba(180, 79, 255, 0.08);
	border-color: rgba(180, 79, 255, 0.35);
	transform: translateY(-2px);
	box-shadow: 0 6px 18px rgba(0,0,0,0.5);
}

.similar-movie-card a {
	text-decoration: none;
	display: block;
}

.similar-movie-card .poster-thumb {
	position: relative;
	border-radius: 6px;
	overflow: hidden;
	height: 145px !important;
	width: 100%;
	margin-bottom: 6px;
	background: #15171e;
	border: 1px solid rgba(255,255,255,0.05);
}

.similar-movie-card .poster-thumb img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	display: block !important;
	transition: transform 0.3s ease;
}

.similar-movie-card:hover .poster-thumb img {
	transform: scale(1.08);
}

.similar-movie-card .rating-badge {
	position: absolute;
	bottom: 5px; right: 5px;
	background: rgba(0,0,0,0.85);
	color: #f59e0b;
	font-size: 10px;
	font-weight: 700;
	padding: 2px 6px;
	border-radius: 4px;
	backdrop-filter: blur(4px);
}

.similar-movie-card .title-txt {
	font-size: 11.5px;
	font-weight: 700;
	color: #ffffff;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin-top: 4px;
}

.similar-movie-card .year-txt {
	font-size: 10.5px;
	color: #8a94a6;
}

/* Footer Social Icons */
.footer-social-icons-row {
	display: flex;
	gap: 10px;
	margin-top: 16px;
	flex-wrap: wrap;
}

.footer-soc-btn {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(180, 79, 255, 0.25);
	color: #d0c8ff !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	text-decoration: none;
	transition: all 0.25s ease;
}

.footer-soc-btn:hover {
	transform: translateY(-3px);
	color: #ffffff !important;
	box-shadow: 0 0 15px rgba(180, 79, 255, 0.5);
}

.footer-soc-btn.telegram:hover { background: #0088cc; border-color: transparent; }
.footer-soc-btn.facebook:hover { background: #1877f2; border-color: transparent; }
.footer-soc-btn.twitter:hover { background: #000000; border-color: #333; }
.footer-soc-btn.instagram:hover { background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888); border-color: transparent; }
.footer-soc-btn.youtube:hover { background: #ff0000; border-color: transparent; }
.footer-soc-btn.discord:hover { background: #5865f2; border-color: transparent; }

.similar-movie-card .title-txt {
	font-size: 12px;
	font-weight: 700;
	color: #fff;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.similar-movie-card .year-txt {
	font-size: 11px;
	color: #6b7280;
}

/* Sidebar Styles */
.cinemora-sidebar-col {
	display: flex;
	flex-direction: column;
	gap: 20px;
	position: sticky;
	top: 70px;
}

.cinemora-sidebar-card {
	background: #121318;
	border: 1px solid #1f222a;
	border-radius: 10px;
	padding: 20px;
}

.sidebar-title {
	font-size: 13px;
	font-weight: 800;
	color: #ffffff;
	letter-spacing: 0.8px;
	margin-bottom: 16px;
	padding-bottom: 10px;
	border-bottom: 1px solid #1f222a;
}

.watch-platforms-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-bottom: 16px;
}

.platform-item {
	display: flex;
	align-items: center;
	gap: 12px;
}

.platform-item .icon {
	width: 36px;
	height: 36px;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	color: #fff;
	flex-shrink: 0;
}

.platform-item .icon.prime { background: #00a8e1; }
.platform-item .icon.apple { background: #000; border: 1px solid #333; }
.platform-item .icon.google { background: #ea4335; }

.platform-item .info strong {
	font-size: 13px;
	color: #fff;
	display: block;
}

.platform-item .info span {
	font-size: 11px;
	color: #6b7280;
	display: block;
}

.btn-sidebar-outline {
	background: transparent;
	border: 1px solid #2a2d37;
	color: #d1d5db;
	padding: 10px 16px;
	border-radius: 6px;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.2s;
}

.btn-sidebar-outline:hover {
	background: #1a1c23;
	border-color: #374151;
	color: #fff;
}

.w-100 {
	width: 100%;
}

.sidebar-info-table {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.sidebar-info-table .info-row {
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	padding-bottom: 8px;
	border-bottom: 1px solid rgba(255,255,255,0.03);
}

.sidebar-info-table .info-row:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.sidebar-info-table .info-row .lbl {
	color: #6b7280;
}

.sidebar-info-table .info-row .val {
	color: #e5e7eb;
	font-weight: 600;
	text-align: right;
}

.tags-cloud {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.tag-capsule {
	background: #1a1c23;
	border: 1px solid #2a2d37;
	color: #9ca3af;
	font-size: 11px;
	padding: 4px 10px;
	border-radius: 50px;
}

.sidebar-subtext {
	font-size: 12px;
	color: #6b7280;
	margin-bottom: 14px;
	line-height: 1.5;
}

/* ==========================================
   TOP TRENDING ARTICLES BANNER & MODAL STYLES
   ========================================== */
.cinemora-articles-banner-card {
	margin-top: 25px;
}

.article-badge-top {
	background: linear-gradient(90deg, #b44fff, #00e5ff);
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	padding: 3px 10px;
	border-radius: 4px;
	letter-spacing: 1px;
}

.cinemora-articles-banner-grid {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.cinemora-article-banner-item {
	display: flex;
	gap: 18px;
	background: rgba(255,255,255,0.025);
	border: 1px solid rgba(180,79,255,0.15);
	border-radius: 10px;
	overflow: hidden;
	padding: 14px;
	cursor: pointer;
	transition: all 0.25s ease;
}

.cinemora-article-banner-item:hover {
	background: rgba(180,79,255,0.08);
	border-color: rgba(180,79,255,0.4);
	transform: translateY(-2px);
	box-shadow: 0 8px 25px rgba(0,0,0,0.6);
}

.article-banner-thumb {
	width: 140px;
	height: 95px;
	flex-shrink: 0;
	border-radius: 8px;
	overflow: hidden;
	position: relative;
}

.article-banner-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.article-overlay-gradient {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, transparent 60%);
}

.article-category-tag {
	position: absolute;
	bottom: 6px; left: 6px;
	background: rgba(180,79,255,0.85);
	color: #fff;
	font-size: 9px;
	font-weight: 800;
	padding: 2px 6px;
	border-radius: 3px;
}

.article-banner-content {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.article-banner-title {
	font-size: 15px;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 6px 0;
	line-height: 1.3;
}

.article-banner-excerpt {
	font-size: 12.5px;
	color: #9ca3af;
	margin: 0 0 8px 0;
	line-height: 1.5;
}

.article-banner-meta {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 11px;
	color: #6b7280;
}

.btn-read-article {
	color: #00e5ff;
	font-weight: 700;
	font-size: 11px;
	letter-spacing: 0.5px;
}

.btn-read-article i {
	margin-left: 4px;
	transition: transform 0.2s;
}

.cinemora-article-banner-item:hover .btn-read-article i {
	transform: translateX(4px);
}

/* Article Modal Popup */
.article-modal-overlay {
	position: fixed;
	inset: 0;
	background: rgba(4, 2, 12, 0.85);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
	padding: 20px;
}

.article-modal-overlay.active {
	opacity: 1;
	visibility: visible;
}

.article-modal-container {
	background: #121318;
	border: 1px solid rgba(180,79,255,0.3);
	border-radius: 16px;
	max-width: 650px;
	width: 100%;
	overflow: hidden;
	box-shadow: 0 25px 60px rgba(0,0,0,0.9), 0 0 40px rgba(180,79,255,0.2);
	position: relative;
	transform: scale(0.9);
	transition: transform 0.3s ease;
}

.article-modal-overlay.active .article-modal-container {
	transform: scale(1);
}

.article-modal-close {
	position: absolute;
	top: 15px; right: 15px;
	background: rgba(0,0,0,0.75);
	border: 1px solid rgba(255,255,255,0.2);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	padding: 6px 14px;
	border-radius: 50px;
	cursor: pointer;
	z-index: 10;
	transition: all 0.2s;
}

.article-modal-close:hover {
	background: #e11d48;
	border-color: transparent;
}

.article-modal-header {
	position: relative;
	height: 240px;
	overflow: hidden;
}

.article-modal-header img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.article-modal-title-box {
	position: absolute;
	bottom: 0; left: 0; right: 0;
	padding: 20px;
	background: linear-gradient(to top, rgba(18,19,24,1) 0%, rgba(18,19,24,0.7) 60%, transparent 100%);
}

.modal-cat-tag {
	background: #b44fff;
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	padding: 3px 8px;
	border-radius: 3px;
	margin-bottom: 6px;
	display: inline-block;
}

.article-modal-title-box h2 {
	font-size: 22px;
	font-weight: 800;
	color: #fff;
	margin: 0;
	line-height: 1.25;
}

.article-modal-body {
	padding: 24px;
	font-size: 14.5px;
	color: #c0c0d8;
	line-height: 1.8;
}

.article-modal-footer {
	padding: 16px 24px 24px;
	border-top: 1px solid rgba(255,255,255,0.06);
	display: flex;
	justify-content: flex-end;
}

/* ==========================================
   INTERACTIVE UI ENHANCEMENTS
   (Loading Bar, Favorites Drawer, Back-To-Top)
   ========================================== */

/* Top Loading Progress Bar */
.top-loading-bar {
	position: fixed;
	top: 0; left: 0;
	height: 3px;
	width: 0%;
	background: linear-gradient(90deg, #6e00ff, #b44fff, #00e5ff, #ff5e62);
	z-index: 999999;
	opacity: 0;
	box-shadow: 0 0 10px rgba(0, 229, 255, 0.8);
	transition: opacity 0.3s ease;
}

/* Header Search Container & Saved Button */
.head-search-container {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 55%;
	max-width: 620px;
}

.btn-header-saved-drawer {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(180, 79, 255, 0.3);
	color: #ffffff;
	padding: 10px 16px;
	border-radius: 50px;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 8px;
	transition: all 0.25s ease;
	flex-shrink: 0;
}

.btn-header-saved-drawer:hover {
	background: rgba(180, 79, 255, 0.2);
	border-color: #b44fff;
	transform: translateY(-1px);
	box-shadow: 0 0 15px rgba(180, 79, 255, 0.4);
}

#favCountBadge {
	background: #e11d48;
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	padding: 2px 7px;
	border-radius: 50px;
}

/* Card Heart Favorite Button */
.card-fav-btn {
	position: absolute;
	top: 10px; left: 10px;
	z-index: 5;
	background: rgba(0, 0, 0, 0.7);
	border: 1px solid rgba(255, 255, 255, 0.2);
	color: #ffffff;
	width: 32px; height: 32px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	cursor: pointer;
	backdrop-filter: blur(4px);
	transition: all 0.2s ease;
}

.card-fav-btn:hover,
.card-fav-btn.active {
	background: #e11d48;
	border-color: transparent;
	color: #ffffff;
	transform: scale(1.1);
	box-shadow: 0 4px 12px rgba(225, 29, 72, 0.5);
}

/* Live Search Autocomplete styling */
.live-search-header-tag {
	padding: 8px 14px;
	font-size: 10px;
	font-weight: 800;
	color: #b44fff;
	letter-spacing: 1px;
	background: rgba(180, 79, 255, 0.08);
	border-bottom: 1px solid rgba(180, 79, 255, 0.15);
}

.live-search-meta {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 4px;
}

.ls-meta-year {
	font-size: 11px;
	color: #8a94a6;
}

.ls-meta-star {
	font-size: 11px;
	color: #f59e0b;
	font-weight: 700;
}

/* Favorites Slide-Out Drawer Panel */
.favorites-drawer-overlay {
	position: fixed;
	inset: 0;
	background: rgba(4, 2, 12, 0.75);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	z-index: 999999;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
}

.favorites-drawer-overlay.active {
	opacity: 1;
	visibility: visible;
}

.favorites-drawer-panel {
	position: fixed;
	top: 0; right: 0; bottom: 0;
	width: 360px;
	max-width: 90%;
	background: #121318;
	border-left: 1px solid rgba(180, 79, 255, 0.25);
	box-shadow: -10px 0 40px rgba(0,0,0,0.9);
	display: flex;
	flex-direction: column;
	transform: translateX(100%);
	transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
	z-index: 1000000;
}

.favorites-drawer-overlay.active .favorites-drawer-panel {
	transform: translateX(0);
}

.favorites-drawer-header {
	padding: 20px;
	border-bottom: 1px solid #1f222a;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.favorites-drawer-header h3 {
	font-size: 14px;
	font-weight: 800;
	color: #ffffff;
	letter-spacing: 0.5px;
	margin: 0;
}

.favorites-drawer-close {
	background: transparent;
	border: none;
	color: #9ca3af;
	font-size: 24px;
	cursor: pointer;
	line-height: 1;
}

.favorites-drawer-close:hover { color: #fff; }

.favorites-drawer-body {
	flex: 1;
	overflow-y: auto;
	padding: 20px;
}

.empty-fav-msg {
	font-size: 13px;
	color: #6b7280;
	text-align: center;
	margin-top: 40px;
	line-height: 1.6;
}

.fav-drawer-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.fav-drawer-item {
	display: flex;
	align-items: center;
	gap: 12px;
	background: rgba(255,255,255,0.03);
	border: 1px solid rgba(255,255,255,0.06);
	padding: 10px;
	border-radius: 8px;
}

.fav-item-thumb {
	width: 45px;
	height: 62px;
	border-radius: 6px;
	object-fit: cover;
}

.fav-item-info {
	flex: 1;
	overflow: hidden;
}

.fav-item-title {
	font-size: 12.5px;
	font-weight: 700;
	color: #ffffff;
	text-decoration: none;
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.fav-item-title:hover { color: #b44fff; }

.fav-item-remove {
	background: transparent;
	border: none;
	color: #6b7280;
	font-size: 18px;
	cursor: pointer;
	padding: 4px;
}

.fav-item-remove:hover { color: #e11d48; }

.favorites-drawer-footer {
	padding: 16px 20px;
	border-top: 1px solid #1f222a;
}

.btn-clear-favorites {
	width: 100%;
	background: rgba(225, 29, 72, 0.12);
	border: 1px solid rgba(225, 29, 72, 0.3);
	color: #f43f5e;
	padding: 10px;
	border-radius: 6px;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.2s;
}

.btn-clear-favorites:hover {
	background: #e11d48;
	color: #ffffff;
}

/* Floating Back to Top Button */
.back-to-top-btn {
	position: fixed;
	bottom: 30px; right: 30px;
	width: 45px; height: 45px;
	border-radius: 50%;
	background: linear-gradient(135deg, #b44fff, #6e3fff);
	color: #ffffff;
	border: none;
	box-shadow: 0 8px 25px rgba(180, 79, 255, 0.5);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	transform: translateY(20px);
	transition: all 0.3s ease;
}

.back-to-top-btn.show {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.back-to-top-btn:hover {
	background: linear-gradient(135deg, #c060ff, #00e5ff);
	transform: translateY(-4px) scale(1.08);
	box-shadow: 0 12px 30px rgba(0, 229, 255, 0.6);
}

/* ==========================================
   CONTACT FORM 7 & CONTACT PAGE STYLING
   ========================================== */
.wpcf7-form p {
	margin-bottom: 16px;
	font-size: 13px;
	color: #9ca3af;
	font-weight: 600;
}

.wpcf7-form label {
	display: block;
	margin-bottom: 6px;
	color: #d0c8ff;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	width: 100%;
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form textarea,
.wpcf7-form select,
.wpcf7-form-control-wrap input,
.wpcf7-form-control-wrap textarea {
	width: 100% !important;
	background: #1a1c23 !important;
	border: 1px solid rgba(180, 79, 255, 0.3) !important;
	color: #ffffff !important;
	padding: 12px 18px !important;
	border-radius: 8px !important;
	font-size: 14px !important;
	font-family: 'Hanken Grotesk', sans-serif !important;
	outline: none !important;
	box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
	transition: all 0.25s ease !important;
	box-sizing: border-box !important;
}

.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form textarea:focus,
.wpcf7-form-control-wrap input:focus,
.wpcf7-form-control-wrap textarea:focus {
	border-color: #00e5ff !important;
	box-shadow: 0 0 20px rgba(0, 229, 255, 0.4) !important;
	background: #20232d !important;
}

.wpcf7-form textarea {
	min-height: 140px;
	resize: vertical;
}

.wpcf7-form input[type="submit"],
.wpcf7-submit {
	width: 100% !important;
	background: linear-gradient(90deg, #b44fff, #00e5ff) !important;
	color: #ffffff !important;
	border: none !important;
	padding: 14px 28px !important;
	border-radius: 50px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
	cursor: pointer !important;
	box-shadow: 0 4px 20px rgba(180, 79, 255, 0.4) !important;
	transition: all 0.25s ease !important;
	margin-top: 10px !important;
}

.wpcf7-form input[type="submit"]:hover,
.wpcf7-submit:hover {
	background: linear-gradient(90deg, #c060ff, #33ebff) !important;
	box-shadow: 0 0 25px rgba(0, 229, 255, 0.6) !important;
	transform: translateY(-2px) !important;
}



/* ==========================================
   ULTRA-PREMIUM MOVIE DOWNLOADS BOX STYLING
   ========================================== */
.movie-downloads-box {
	background: rgba(18, 19, 24, 0.95);
	border: 1px solid rgba(180, 79, 255, 0.25);
	border-radius: 12px;
	padding: 24px;
	margin-top: 10px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5), inset 0 0 20px rgba(180, 79, 255, 0.05);
}

.download-section-title {
	font-size: 16px;
	font-weight: 800;
	color: #ffffff;
	letter-spacing: 0.8px;
	margin-bottom: 20px;
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	display: flex;
	align-items: center;
	gap: 10px;
}

.download-section-title i {
	color: #e11d48;
}

.downloads-list {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.download-item-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 10px;
	padding: 14px 18px;
	transition: all 0.25s ease;
	flex-wrap: wrap;
	gap: 12px;
}

.download-item-row:hover {
	background: rgba(180, 79, 255, 0.06);
	border-color: rgba(180, 79, 255, 0.4);
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4);
}

.dl-details-left {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.dl-badge-quality {
	background: linear-gradient(135deg, #e11d48, #be123c);
	color: #ffffff;
	font-size: 12px;
	font-weight: 800;
	padding: 4px 12px;
	border-radius: 6px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	box-shadow: 0 4px 12px rgba(225, 29, 72, 0.3);
}

.dl-meta-audio {
	background: rgba(0, 229, 255, 0.1);
	border: 1px solid rgba(0, 229, 255, 0.3);
	color: #00e5ff;
	font-size: 12px;
	font-weight: 700;
	padding: 4px 12px;
	border-radius: 6px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.dl-meta-size {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	color: #d1d5db;
	font-size: 12px;
	font-weight: 600;
	padding: 4px 10px;
	border-radius: 6px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.dl-meta-server {
	background: rgba(180, 79, 255, 0.1);
	border: 1px solid rgba(180, 79, 255, 0.3);
	color: #d0c8ff;
	font-size: 12px;
	font-weight: 600;
	padding: 4px 10px;
	border-radius: 6px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.dl-action-right {
	flex-shrink: 0;
}

.download-btn-primary {
	background: linear-gradient(90deg, #10b981, #059669);
	color: #ffffff !important;
	padding: 10px 22px;
	border-radius: 50px;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	box-shadow: 0 4px 15px rgba(16, 185, 129, 0.35);
	transition: all 0.25s ease;
	letter-spacing: 0.5px;
}

.download-btn-primary:hover {
	background: linear-gradient(90deg, #34d399, #10b981);
	transform: translateY(-2px);
}

/* Transparent Video Play Trigger Overlay */
.video-play-trigger-overlay {
	position: absolute;
	inset: 0;
	z-index: 10;
	background: rgba(0, 0, 0, 0.001);
	cursor: pointer;
}

/* ==========================================
   VIDEO PLAY POPUP AD MODAL STYLES (Ultra Clean)
   ========================================== */
.video-ad-popup-overlay {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	background: rgba(4, 2, 12, 0.88) !important;
	backdrop-filter: blur(14px) !important;
	-webkit-backdrop-filter: blur(14px) !important;
	z-index: 99999999 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.35s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.35s cubic-bezier(0.4, 0, 0.2, 1);
	padding: 15px;
	box-sizing: border-box;
}

.video-ad-popup-overlay.active {
	opacity: 1 !important;
	visibility: visible !important;
}

.video-ad-popup-container {
	background: #110e19 !important;
	border: 1px solid rgba(180, 79, 255, 0.55) !important;
	border-radius: 16px !important;
	max-width: 92vw !important;
	width: auto !important;
	display: inline-block !important;
	overflow: hidden !important;
	box-shadow: 0 25px 70px rgba(0, 0, 0, 0.95), 0 0 50px rgba(180, 79, 255, 0.4) !important;
	position: relative !important;
	margin: auto !important;
	transform: scale(0.94);
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.video-ad-popup-overlay.active .video-ad-popup-container {
	transform: scale(1);
}

.video-ad-header {
	padding: 10px 14px !important;
	background: linear-gradient(90deg, #181226, #0e0a19) !important;
	border-bottom: 1px solid rgba(180, 79, 255, 0.25) !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	gap: 15px !important;
}

.video-ad-label {
	font-size: 11px !important;
	font-weight: 800 !important;
	color: #00e5ff !important;
	letter-spacing: 0.8px !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
}

.video-ad-close-btn {
	background: linear-gradient(90deg, #e11d48, #f43f5e) !important;
	border: none !important;
	color: #ffffff !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	padding: 5px 14px !important;
	border-radius: 50px !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
	box-shadow: 0 4px 15px rgba(225, 29, 72, 0.5) !important;
	font-family: inherit !important;
	letter-spacing: 0.5px !important;
	white-space: nowrap !important;
}

.video-ad-close-btn.disabled,
.video-ad-close-btn[disabled] {
	background: rgba(255, 255, 255, 0.1) !important;
	color: #9ca3af !important;
	cursor: not-allowed !important;
	box-shadow: none !important;
}

.video-ad-close-btn:not(.disabled):hover {
	background: linear-gradient(90deg, #f43f5e, #fb7185) !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 0 20px rgba(244, 63, 94, 0.7) !important;
}

.video-ad-body {
	padding: 8px !important;
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	background: #090612 !important;
	overflow: visible !important;
	width: 100% !important;
	min-height: auto !important;
	max-height: none !important;
	box-sizing: border-box !important;
}

.video-ad-body img,
.video-ad-body iframe,
.video-ad-body script,
.video-ad-body div,
.video-ad-body ins,
.video-ad-body a {
	max-width: 100% !important;
	height: auto !important;
	max-height: none !important;
	object-fit: contain !important;
	display: block !important;
	margin: 0 auto !important;
}

/* Sidebar Ad Widget Card (Integrated Title Header, Full Width, No Cropping) */
.ad-sidebar-card-clean {
	background: #121318 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 12px !important;
	overflow: visible !important;
	margin-bottom: 20px !important;
	width: 100% !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4) !important;
	height: auto !important;
	max-height: none !important;
}

.sidebar-ad-title-bar {
	padding: 10px 14px !important;
	background: rgba(255, 255, 255, 0.03) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	color: #00e5ff !important;
	letter-spacing: 1px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
}

.sidebar-ad-content-box {
	padding: 8px !important;
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	width: 100% !important;
	overflow: visible !important;
	height: auto !important;
	max-height: none !important;
	box-sizing: border-box !important;
}

.sidebar-ad-content-box img,
.sidebar-ad-content-box iframe,
.sidebar-ad-content-box div,
.sidebar-ad-content-box ins,
.sidebar-ad-content-box a {
	max-width: 100% !important;
	width: 100% !important;
	height: auto !important;
	max-height: none !important;
	object-fit: contain !important;
	display: block !important;
	border-radius: 6px !important;
	margin: 0 auto !important;
}

/* Universal Responsive Ad Container Fix (No Overflow, No Cropping on Any Screen) */
.movie-ad-container,
.ad-sidebar,
.ad-single_top,
.ad-single_bottom,
.ad-above_footer,
.ad-video_popup_ad,
.ad-sidebar-widget-card {
	max-width: 100% !important;
	overflow: visible !important;
	display: block !important;
	text-align: center !important;
	box-sizing: border-box !important;
	margin-left: auto !important;
	margin-right: auto !important;
	height: auto !important;
	max-height: none !important;
}

.movie-ad-container img,
.movie-ad-container iframe,
.movie-ad-container script,
.movie-ad-container div,
.movie-ad-container ins,
.movie-ad-container a {
	max-width: 100% !important;
	height: auto !important;
	max-height: none !important;
	object-fit: contain !important;
	box-sizing: border-box !important;
	margin: 0 auto !important;
}

/* Complete Mobile Responsive Styling (< 768px Devices) */
@media screen and (max-width: 768px) {
	.cinemora-main-grid {
		grid-template-columns: 1fr !important;
		gap: 20px !important;
	}

	.cinemora-row-2col {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	.video-ad-popup-container {
		max-width: 94% !important;
		width: 94% !important;
	}
}

/* ==========================================
   MONETIZED MULTI-STEP DOWNLOAD FUNNEL PRO STYLES
   ========================================== */
.download-funnel-card-pro {
	background: #110e19 !important;
	border: 1px solid rgba(180, 79, 255, 0.35) !important;
	border-radius: 20px !important;
	overflow: hidden !important;
	box-shadow: 0 25px 65px rgba(0, 0, 0, 0.9) !important;
	margin: 25px auto !important;
	max-width: 920px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.funnel-top-bar {
	padding: 16px 24px !important;
	background: linear-gradient(90deg, #181226, #0e0a19) !important;
	border-bottom: 1px solid rgba(180, 79, 255, 0.25) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 15px !important;
	flex-wrap: wrap !important;
}

.funnel-top-bar.emerald {
	background: linear-gradient(90deg, #064e3b, #042f2e) !important;
	border-bottom: 1px solid rgba(16, 185, 129, 0.3) !important;
}

.funnel-step-badge {
	font-size: 11px !important;
	font-weight: 800 !important;
	padding: 5px 14px !important;
	border-radius: 50px !important;
	letter-spacing: 0.8px !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
}

.funnel-step-badge.step-1 {
	background: rgba(0, 229, 255, 0.15) !important;
	color: #00e5ff !important;
	border: 1px solid rgba(0, 229, 255, 0.35) !important;
}

.funnel-step-badge.step-2 {
	background: rgba(180, 79, 255, 0.15) !important;
	color: #b44fff !important;
	border: 1px solid rgba(180, 79, 255, 0.35) !important;
}

.funnel-step-badge.final {
	background: rgba(16, 185, 129, 0.2) !important;
	color: #10b981 !important;
	border: 1px solid rgba(16, 185, 129, 0.4) !important;
}

.btn-how-to-guide-link {
	color: #9ca3af !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: color 0.25s ease !important;
}

.btn-how-to-guide-link:hover {
	color: #00e5ff !important;
	text-decoration: underline !important;
}

.funnel-hero-box {
	padding: 30px !important;
	display: grid !important;
	grid-template-columns: 200px 1fr !important;
	gap: 30px !important;
	align-items: center !important;
}

.funnel-poster-wrap img {
	width: 100% !important;
	height: auto !important;
	border-radius: 14px !important;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.7) !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	display: block !important;
}

.funnel-movie-title {
	font-size: 24px !important;
	font-weight: 800 !important;
	color: #ffffff !important;
	margin: 0 0 4px 0 !important;
	line-height: 1.3 !important;
}

.funnel-movie-sub {
	font-size: 13px !important;
	color: #9ca3af !important;
	margin: 0 0 20px 0 !important;
}

.funnel-status-card {
	background: rgba(255, 255, 255, 0.03) !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 12px !important;
	padding: 14px 18px !important;
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	margin-bottom: 20px !important;
}

.status-spin-icon {
	font-size: 24px !important;
	color: #00e5ff !important;
}

.funnel-status-card strong {
	display: block !important;
	font-size: 14px !important;
	color: #ffffff !important;
}

.funnel-status-card span {
	font-size: 12px !important;
	color: #9ca3af !important;
}

.funnel-timer-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	padding: 8px 22px !important;
	border-radius: 50px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	margin: 0 auto 18px auto !important;
	width: max-content !important;
	box-sizing: border-box !important;
}

.funnel-timer-badge.cyan {
	background: rgba(0, 229, 255, 0.1) !important;
	border: 1px dashed #00e5ff !important;
	color: #00e5ff !important;
}

.funnel-timer-badge.purple {
	background: rgba(180, 79, 255, 0.1) !important;
	border: 1px dashed #b44fff !important;
	color: #b44fff !important;
}

.funnel-btn-wrap {
	width: 100% !important;
	max-width: 420px !important;
}

.btn-funnel-action {
	width: 100% !important;
	background: linear-gradient(90deg, #e11d48, #f43f5e) !important;
	border: none !important;
	color: #ffffff !important;
	padding: 14px 28px !important;
	border-radius: 50px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
	box-shadow: 0 8px 25px rgba(225, 29, 72, 0.45) !important;
	font-family: inherit !important;
	letter-spacing: 0.8px !important;
}

.btn-funnel-action.purple {
	background: linear-gradient(90deg, #8b5cf6, #a855f7) !important;
	box-shadow: 0 8px 25px rgba(139, 92, 246, 0.45) !important;
}

.btn-funnel-action.disabled,
.btn-funnel-action[disabled] {
	background: rgba(255, 255, 255, 0.08) !important;
	color: #9ca3af !important;
	cursor: not-allowed !important;
	box-shadow: none !important;
}

.btn-funnel-action:not(.disabled):hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 12px 35px rgba(225, 29, 72, 0.7) !important;
}

.funnel-ad-slot-middle {
	padding: 20px !important;
	border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
	text-align: center !important;
}

/* Final Downloads Table PRO */
.funnel-final-header {
	padding: 25px 30px 10px 30px !important;
}

.final-table-wrapper-pro {
	padding: 10px 30px 30px 30px !important;
	overflow-x: auto !important;
}

.cinemora-dl-table-pro {
	width: 100% !important;
	border-collapse: separate !important;
	border-spacing: 0 10px !important;
	text-align: left !important;
}

.cinemora-dl-table-pro th {
	padding: 12px 18px !important;
	color: #00e5ff !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	letter-spacing: 1px !important;
	text-transform: uppercase !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.cinemora-dl-table-pro tbody tr {
	background: rgba(255, 255, 255, 0.02) !important;
	border-radius: 12px !important;
	transition: background 0.25s ease !important;
}

.cinemora-dl-table-pro tbody tr:hover {
	background: rgba(255, 255, 255, 0.05) !important;
}

.cinemora-dl-table-pro td {
	padding: 16px 18px !important;
	vertical-align: middle !important;
}

.dl-badge-quality-pro {
	background: rgba(180, 79, 255, 0.15) !important;
	border: 1px solid rgba(180, 79, 255, 0.4) !important;
	color: #b44fff !important;
	padding: 5px 12px !important;
	border-radius: 6px !important;
	font-size: 12px !important;
	font-weight: 800 !important;
}

.dl-audio-txt {
	color: #e2e8f0 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
}

.dl-size-txt {
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 800 !important;
}

.dl-server-txt-pro {
	color: #9ca3af !important;
	font-size: 12px !important;
}

.btn-dl-now-pro {
	background: linear-gradient(90deg, #10b981, #059669) !important;
	color: #ffffff !important;
	padding: 9px 22px !important;
	border-radius: 50px !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	box-shadow: 0 6px 20px rgba(16, 185, 129, 0.4) !important;
	transition: all 0.25s ease !important;
}

.btn-dl-now-pro:hover {
	background: linear-gradient(90deg, #34d399, #10b981) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 10px 25px rgba(16, 185, 129, 0.6) !important;
	color: #ffffff !important;
}

/* How To Download Modal Styles */
.how-to-dl-modal-overlay {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	background: rgba(4, 2, 12, 0.88) !important;
	backdrop-filter: blur(14px) !important;
	-webkit-backdrop-filter: blur(14px) !important;
	z-index: 99999999 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	opacity: 0;
	visibility: hidden;
	transition: all 0.35s ease !important;
	padding: 15px !important;
	box-sizing: border-box !important;
}

.how-to-dl-modal-overlay.active {
	opacity: 1 !important;
	visibility: visible !important;
}

.how-to-dl-modal-card {
	background: #110e19 !important;
	border: 1px solid rgba(0, 229, 255, 0.4) !important;
	border-radius: 20px !important;
	max-width: 500px !important;
	width: 95% !important;
	overflow: hidden !important;
	box-shadow: 0 25px 70px rgba(0, 0, 0, 0.95) !important;
}

.how-to-dl-header {
	padding: 16px 20px !important;
	background: linear-gradient(90deg, #181226, #0e0a19) !important;
	border-bottom: 1px solid rgba(0, 229, 255, 0.2) !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	color: #00e5ff !important;
	font-size: 12px !important;
	font-weight: 800 !important;
}

.how-to-dl-close {
	background: none !important;
	border: none !important;
	color: #ffffff !important;
	font-size: 24px !important;
	cursor: pointer !important;
}

.how-to-dl-body {
	padding: 24px 20px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
}

.guide-step-item {
	display: flex !important;
	gap: 14px !important;
	align-items: flex-start !important;
}

.step-num {
	width: 32px !important;
	height: 32px !important;
	border-radius: 50% !important;
	background: linear-gradient(135deg, #e11d48, #f43f5e) !important;
	color: #ffffff !important;
	font-weight: 800 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 14px !important;
	flex-shrink: 0 !important;
}

.step-text strong {
	display: block !important;
	color: #ffffff !important;
	font-size: 14px !important;
	margin-bottom: 2px !important;
}

.step-text p {
	font-size: 12px !important;
	color: #9ca3af !important;
	margin: 0 !important;
}

.how-to-dl-footer {
	padding: 16px 20px !important;
	background: rgba(255, 255, 255, 0.02) !important;
	text-align: center !important;
}

/* ==========================================
   EXACT DOWNLOAD FUNNEL DESIGN MATCHING USER IMAGE 2
   ========================================== */
.dl-page-main-wrapper {
	max-width: 1000px !important;
	margin: 0 auto !important;
	width: 100% !important;
}

/* Top Hero Movie Card */
.dl-hero-movie-card {
	background: linear-gradient(135deg, rgba(17, 14, 25, 0.95), rgba(11, 8, 19, 0.98)) !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 18px !important;
	padding: 25px !important;
	display: grid !important;
	grid-template-columns: 240px 1fr !important;
	gap: 25px !important;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.8) !important;
	margin-bottom: 30px !important;
}

.dl-hero-poster-wrap {
	position: relative !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.dl-hero-poster-wrap img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
}

.dl-badge-hd {
	position: absolute !important;
	top: 10px !important;
	left: 10px !important;
	background: #ec4899 !important;
	color: #ffffff !important;
	font-size: 10px !important;
	font-weight: 800 !important;
	padding: 3px 8px !important;
	border-radius: 4px !important;
	z-index: 2 !important;
}

.dl-badge-imdb {
	position: absolute !important;
	top: 10px !important;
	right: 10px !important;
	background: rgba(0, 0, 0, 0.75) !important;
	border: 1px solid #eab308 !important;
	color: #eab308 !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	padding: 3px 8px !important;
	border-radius: 6px !important;
	z-index: 2 !important;
}

.dl-hero-title {
	font-size: 26px !important;
	font-weight: 800 !important;
	color: #ffffff !important;
	margin: 0 0 12px 0 !important;
}

.dl-hero-badges-row {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin-bottom: 14px !important;
}

.dl-tag-badge {
	font-size: 11px !important;
	font-weight: 700 !important;
	padding: 4px 10px !important;
	border-radius: 6px !important;
}

.dl-tag-badge.pink {
	background: #c026d3 !important;
	color: #ffffff !important;
}

.dl-tag-badge.dark {
	background: rgba(255, 255, 255, 0.06) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	color: #cbd5e1 !important;
}

.dl-hero-meta-list p {
	font-size: 12px !important;
	color: #94a3b8 !important;
	margin: 0 0 4px 0 !important;
}

.dl-hero-meta-list strong {
	color: #e2e8f0 !important;
}

.dl-hero-synopsis {
	font-size: 12px !important;
	color: #94a3b8 !important;
	line-height: 1.6 !important;
	margin: 12px 0 18px 0 !important;
}

.dl-hero-btns-row {
	display: flex !important;
	gap: 12px !important;
}

.btn-dl-hero-play {
	background: linear-gradient(90deg, #d946ef, #3b82f6) !important;
	color: #ffffff !important;
	padding: 10px 22px !important;
	border-radius: 8px !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	box-shadow: 0 4px 15px rgba(217, 70, 239, 0.4) !important;
}

.btn-dl-hero-fav {
	background: rgba(255, 255, 255, 0.03) !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	color: #ffffff !important;
	padding: 10px 22px !important;
	border-radius: 8px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
}

/* Digital Glass Timer Section */
.dl-timer-digital-section {
	text-align: center !important;
	margin: 30px 0 !important;
}

.digital-timer-title {
	font-size: 18px !important;
	font-weight: 800 !important;
	color: #ffffff !important;
	margin: 0 0 16px 0 !important;
}

.digital-timer-boxes {
	display: flex !important;
	justify-content: center !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
}

.timer-box-item {
	background: rgba(255, 255, 255, 0.03) !important;
	border: 1px solid rgba(180, 79, 255, 0.3) !important;
	border-radius: 12px !important;
	padding: 14px 20px !important;
	min-width: 80px !important;
	box-shadow: inset 0 0 15px rgba(180, 79, 255, 0.1) !important;
}

.timer-box-item strong {
	display: block !important;
	font-size: 28px !important;
	font-weight: 800 !important;
	color: #ffffff !important;
	line-height: 1 !important;
	margin-bottom: 4px !important;
}

.timer-box-item span {
	font-size: 10px !important;
	font-weight: 800 !important;
	color: #94a3b8 !important;
	letter-spacing: 1px !important;
}

/* Stepper Progress Bar */
.dl-stepper-progress-bar {
	margin: 30px 0 40px 0 !important;
}

.stepper-track {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	max-width: 600px !important;
	margin: 0 auto !important;
	position: relative !important;
}

.stepper-step {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 8px !important;
	z-index: 2 !important;
}

.step-circle {
	width: 42px !important;
	height: 42px !important;
	border-radius: 50% !important;
	background: #1e1b2e !important;
	border: 2px solid #475569 !important;
	color: #94a3b8 !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.stepper-step.active .step-circle {
	background: #a855f7 !important;
	border-color: #c084fc !important;
	color: #ffffff !important;
	box-shadow: 0 0 20px rgba(168, 85, 247, 0.6) !important;
}

.stepper-step.completed .step-circle {
	background: #10b981 !important;
	border-color: #34d399 !important;
	color: #ffffff !important;
}

.stepper-step span {
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #94a3b8 !important;
}

.stepper-step.active span {
	color: #ffffff !important;
}

.stepper-line {
	flex-grow: 1 !important;
	height: 3px !important;
	background: #334155 !important;
	margin: 0 15px !important;
	margin-top: -24px !important;
}

.stepper-line.active {
	background: linear-gradient(90deg, #a855f7, #10b981) !important;
}

/* Radio Cards Grid */
.dl-options-section {
	text-align: center !important;
	margin-bottom: 40px !important;
}

.dl-section-title {
	font-size: 16px !important;
	font-weight: 800 !important;
	color: #ffffff !important;
	margin: 0 0 20px 0 !important;
}

.dl-radio-cards-grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)) !important;
	gap: 16px !important;
	max-width: 800px !important;
	margin: 0 auto 25px auto !important;
}

.dl-radio-card {
	background: rgba(255, 255, 255, 0.02) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 12px !important;
	padding: 16px !important;
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
}

.dl-radio-card input {
	display: none !important;
}

.radio-custom-icon {
	width: 18px !important;
	height: 18px !important;
	border-radius: 50% !important;
	border: 2px solid #64748b !important;
	display: inline-block !important;
	position: relative !important;
}

.dl-radio-card.active {
	background: rgba(168, 85, 247, 0.1) !important;
	border-color: #a855f7 !important;
	box-shadow: 0 0 20px rgba(168, 85, 247, 0.3) !important;
}

.dl-radio-card.active .radio-custom-icon {
	border-color: #a855f7 !important;
	background: #a855f7 !important;
}

.radio-card-info {
	text-align: left !important;
}

.radio-card-info strong {
	display: block !important;
	font-size: 14px !important;
	color: #ffffff !important;
}

.radio-card-info span {
	font-size: 11px !important;
	color: #94a3b8 !important;
}

.dl-action-button-wrap {
	max-width: 600px !important;
	margin: 0 auto !important;
}

.btn-step-continue-purple {
	width: 100% !important;
	background: linear-gradient(90deg, #4338ca, #6d28d9, #4338ca) !important;
	border: none !important;
	color: #ffffff !important;
	padding: 15px 30px !important;
	border-radius: 8px !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	cursor: pointer !important;
	box-shadow: 0 8px 25px rgba(109, 40, 217, 0.5) !important;
	transition: all 0.25s ease !important;
	font-family: inherit !important;
}

.btn-step-continue-purple.disabled,
.btn-step-continue-purple[disabled] {
	background: rgba(255, 255, 255, 0.08) !important;
	color: #64748b !important;
	cursor: not-allowed !important;
	box-shadow: none !important;
}

.btn-step-continue-purple:not(.disabled):hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 12px 35px rgba(109, 40, 217, 0.7) !important;
}

/* Related Movies Grid */
.related-movies-grid {
	display: grid !important;
	grid-template-columns: repeat(6, 1fr) !important;
	gap: 16px !important;
}

.movie-card-mini {
	background: #110e19 !important;
	border: 1px solid rgba(255, 255, 255, 0.06) !important;
	border-radius: 10px !important;
	overflow: hidden !important;
	transition: transform 0.25s ease !important;
}

.movie-card-mini:hover {
	transform: translateY(-4px) !important;
}

.mini-poster-wrap {
	position: relative !important;
}

.mini-poster-wrap img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
}

.mini-hd-badge {
	position: absolute !important;
	top: 6px !important;
	left: 6px !important;
	background: #ec4899 !important;
	color: #fff !important;
	font-size: 9px !important;
	font-weight: 800 !important;
	padding: 2px 6px !important;
	border-radius: 3px !important;
}

.mini-rating-badge {
	position: absolute !important;
	bottom: 6px !important;
	right: 6px !important;
	background: rgba(0, 0, 0, 0.75) !important;
	color: #eab308 !important;
	font-size: 10px !important;
	font-weight: 800 !important;
	padding: 2px 6px !important;
	border-radius: 4px !important;
}

.mini-movie-title {
	font-size: 11px !important;
	font-weight: 700 !important;
	color: #e2e8f0 !important;
	padding: 8px !important;
	margin: 0 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

/* Verification Checks List */
.verification-checks-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	max-width: 600px !important;
	margin: 0 auto 25px auto !important;
}

.v-check-item {
	background: rgba(16, 185, 129, 0.08) !important;
	border: 1px solid rgba(16, 185, 129, 0.3) !important;
	border-radius: 10px !important;
	padding: 12px 18px !important;
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	font-size: 13px !important;
	color: #e2e8f0 !important;
}

.v-icon {
	color: #10b981 !important;
	font-size: 18px !important;
}

/* Final Exact Download Table */
.final-table-wrapper-exact {
	max-width: 900px !important;
	margin: 0 auto !important;
	overflow-x: auto !important;
}

.exact-dl-table {
	width: 100% !important;
	border-collapse: separate !important;
	border-spacing: 0 8px !important;
	text-align: left !important;
}

.exact-dl-table th {
	padding: 12px 16px !important;
	color: #a855f7 !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	letter-spacing: 1px !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.exact-dl-table tbody tr {
	background: rgba(255, 255, 255, 0.02) !important;
	border-radius: 10px !important;
}

.exact-dl-table td {
	padding: 14px 16px !important;
	vertical-align: middle !important;
}

.exact-quality-badge {
	background: rgba(168, 85, 247, 0.15) !important;
	border: 1px solid rgba(168, 85, 247, 0.4) !important;
	color: #c084fc !important;
	padding: 4px 10px !important;
	border-radius: 6px !important;
	font-size: 12px !important;
	font-weight: 800 !important;
}

.btn-exact-download-now {
	background: linear-gradient(90deg, #10b981, #059669) !important;
	color: #ffffff !important;
	padding: 8px 20px !important;
	border-radius: 50px !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	box-shadow: 0 4px 15px rgba(16, 185, 129, 0.4) !important;
}

@media screen and (max-width: 900px) {
	.dl-hero-movie-card {
		grid-template-columns: 1fr !important;
	}
	.dl-hero-poster-wrap img {
		max-width: 180px !important;
		margin: 0 auto !important;
	}
	.related-movies-grid {
		grid-template-columns: repeat(3, 1fr) !important;
	}
}

@media screen and (max-width: 600px) {
	.related-movies-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

/* ==========================================
   ULTRA CLEAN NUMERIC PAGINATION STYLING
   ========================================== */
.movies-pagination {
	margin: 35px 0 !important;
	text-align: center !important;
	width: 100% !important;
}

.movies-pagination ul {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 auto !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
}

.movies-pagination li {
	display: inline-block !important;
	margin: 0 !important;
	padding: 0 !important;
}

.movies-pagination li a,
.movies-pagination li span {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 44px !important;
	height: 44px !important;
	padding: 0 16px !important;
	background: #110e19 !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	border-radius: 8px !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	text-decoration: none !important;
	transition: all 0.25s ease !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4) !important;
}

.movies-pagination li.active a,
.movies-pagination li.active span {
	background: #cbfc01 !important;
	color: #000000 !important;
	border-color: #cbfc01 !important;
	box-shadow: 0 0 20px rgba(203, 252, 1, 0.6) !important;
}

.movies-pagination li a:hover {
	background: #b44fff !important;
	color: #ffffff !important;
	border-color: #b44fff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 0 20px rgba(180, 79, 255, 0.6) !important;
}

/* ==========================================================================
   Universal Side-by-Side Country Navigation Bar & Genre Sub-Bar
   ========================================================================== */
.universal-nav-container {
	padding: 16px 0 !important;
	background: linear-gradient(180deg, rgba(12, 5, 28, 0.98) 0%, rgba(6, 2, 16, 0.99) 100%) !important;
	border-bottom: 1px solid rgba(180, 79, 255, 0.2) !important;
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.85), 0 0 25px rgba(180, 79, 255, 0.12) !important;
}

.universal-nav-container a {
	text-decoration: none !important;
	border-bottom: none !important;
}

.universal-country-bar-wrap {
	width: 100%;
	margin-top: 15px;
	margin-bottom: 12px;
	position: relative;
}

.universal-country-bar {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 10px !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	-webkit-overflow-scrolling: touch !important;
	scrollbar-width: none !important;
	-ms-overflow-style: none !important;
	padding-bottom: 8px;
}

.universal-country-bar::-webkit-scrollbar {
	display: none !important;
	height: 0 !important;
}

.country-btn {
	flex: 0 0 auto !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 10px 20px !important;
	background: linear-gradient(135deg, rgba(20, 10, 38, 0.9), rgba(12, 6, 24, 0.95)) !important;
	border: 1px solid rgba(225, 29, 72, 0.3) !important;
	border-radius: 30px !important;
	color: #e2e8f0 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	white-space: nowrap !important;
	text-decoration: none !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3) !important;
}

.country-btn i {
	color: #e11d48;
	font-size: 14px;
	transition: transform 0.3s ease;
}

.country-btn:hover {
	background: linear-gradient(135deg, #e11d48 0%, #9333ea 100%) !important;
	color: #ffffff !important;
	border-color: #e11d48 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 0 20px rgba(225, 29, 72, 0.5) !important;
}

.country-btn:hover i {
	color: #ffffff;
	transform: scale(1.15);
}

.country-btn.active {
	background: linear-gradient(135deg, #e11d48 0%, #7e22ce 100%) !important;
	color: #ffffff !important;
	border-color: #e11d48 !important;
	box-shadow: 0 0 25px rgba(225, 29, 72, 0.6) !important;
}

.genre-sub-bar-wrap {
	width: 100%;
	margin-bottom: 20px;
}

.genre-sub-bar {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 8px !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	-webkit-overflow-scrolling: touch !important;
	scrollbar-width: none !important;
	-ms-overflow-style: none !important;
	padding-bottom: 6px;
}

.genre-sub-bar::-webkit-scrollbar {
	display: none !important;
	height: 0 !important;
}

@media (min-width: 1024px) {
	.universal-country-bar,
	.genre-sub-bar {
		flex-wrap: wrap !important;
		overflow-x: visible !important;
		padding-bottom: 0 !important;
	}
}

.genre-pill-btn {
	flex: 0 0 auto !important;
	display: inline-block !important;
	padding: 7px 16px !important;
	background: rgba(255, 255, 255, 0.05) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 20px !important;
	color: #cbd5e1 !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	white-space: nowrap !important;
	text-decoration: none !important;
	transition: all 0.25s ease !important;
}

.genre-pill-btn:hover,
.genre-pill-btn.active {
	background: rgba(147, 51, 234, 0.25) !important;
	border-color: #9333ea !important;
	color: #ffffff !important;
	box-shadow: 0 0 12px rgba(147, 51, 234, 0.4) !important;
}

/* ==========================================================================
   Big Movie Download Button & 2-Step Code Verification Download Box
   ========================================================================== */
.btn-big-download-hero {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px !important;
	padding: 14px 28px !important;
	background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
	color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	letter-spacing: 0.5px !important;
	border-radius: 8px !important;
	text-decoration: none !important;
	box-shadow: 0 4px 20px rgba(16, 185, 129, 0.4) !important;
	transition: all 0.3s ease !important;
	animation: pulseGreenGlow 2s infinite;
}

.btn-big-download-hero:hover {
	background: linear-gradient(135deg, #059669 0%, #047857 100%) !important;
	color: #ffffff !important;
	transform: translateY(-3px) scale(1.02) !important;
	box-shadow: 0 8px 25px rgba(16, 185, 129, 0.6) !important;
}

@keyframes pulseGreenGlow {
	0% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7); }
	70% { box-shadow: 0 0 0 15px rgba(16, 185, 129, 0); }
	100% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0); }
}

.code-verify-box-wrapper {
	background: rgba(15, 7, 32, 0.95);
	border: 1px solid rgba(147, 51, 234, 0.3);
	border-radius: 12px;
	padding: 25px 20px;
	margin-top: 20px;
	text-align: center;
}

.code-verify-input-group {
	display: flex;
	max-width: 460px;
	margin: 15px auto 0;
	gap: 10px;
}

.code-verify-input {
	flex: 1;
	background: rgba(0, 0, 0, 0.5);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 6px;
	padding: 12px 16px;
	color: #ffffff;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 2px;
	text-align: center;
	outline: none;
	transition: border-color 0.25s;
}

.code-verify-input:focus {
	border-color: #9333ea;
	box-shadow: 0 0 12px rgba(147, 51, 234, 0.5);
}

.btn-code-verify-submit {
	padding: 12px 24px;
	background: linear-gradient(135deg, #9333ea 0%, #6b21a8 100%);
	border: none;
	border-radius: 6px;
	color: #ffffff;
	font-weight: 800;
	font-size: 14px;
	cursor: pointer;
	transition: all 0.25s;
}

.btn-code-verify-submit:hover {
	background: linear-gradient(135deg, #7e22ce 0%, #581c87 100%);
	transform: translateY(-2px);
	box-shadow: 0 4px 15px rgba(147, 51, 234, 0.4);
}

/* Mobile Responsive download tables */
@media (max-width: 768px) {
	.exact-dl-table,
	.exact-dl-table thead,
	.exact-dl-table tbody,
	.exact-dl-table tr,
	.exact-dl-table td {
		display: block !important;
		width: 100% !important;
	}
	.exact-dl-table thead {
		display: none !important;
	}
	.exact-dl-table tr {
		margin-bottom: 15px !important;
		border: 1px solid rgba(255,255,255,0.15) !important;
		border-radius: 8px !important;
		background: rgba(255, 255, 255, 0.02) !important;
		padding: 12px 10px !important;
	}
	.exact-dl-table td {
		border: none !important;
		padding: 8px 10px !important;
		display: flex !important;
		justify-content: space-between !important;
		align-items: center !important;
		font-size: 13px !important;
		text-align: right !important;
	}
	.exact-dl-table td::before {
		content: attr(data-label) !important;
		float: left !important;
		font-weight: 800 !important;
		color: #9ca3af !important;
		text-transform: uppercase !important;
		letter-spacing: 0.5px !important;
	}
	.btn-exact-download-now {
		width: auto !important;
		display: inline-flex !important;
	}
}

/* Movie Grid & Header Responsiveness Overrides */
@media (max-width: 1024px) {
	.movie-grid {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 12px !important;
	}
	.movie-card img.movie-poster {
		height: 250px !important;
	}
}

@media (max-width: 768px) {
	.movie-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 10px !important;
	}
	.movie-card img.movie-poster {
		height: 220px !important;
	}
	.site-header {
		padding: 10px 0 !important;
	}
	.site-branding {
		margin-bottom: 10px !important;
		width: 100% !important;
		text-align: center !important;
		display: flex !important;
		justify-content: center !important;
	}
	.head-search-container {
		width: 100% !important;
		margin-top: 10px !important;
		justify-content: space-between !important;
	}
	.head-search {
		width: 80% !important;
	}
}

/* Sidebar Ad Cards & Interstitial Popup styling overrides */
.ad-sidebar-card-clean {
	background: rgba(15, 7, 32, 0.95);
	border: 1px solid rgba(147, 51, 234, 0.25);
	border-radius: 12px;
	margin-bottom: 25px;
	overflow: hidden;
	box-shadow: 0 4px 20px rgba(0,0,0,0.5);
}

.sidebar-ad-title-bar {
	background: linear-gradient(90deg, #9333ea, #e11d48);
	padding: 8px 15px;
	font-size: 11px;
	font-weight: 800;
	color: #ffffff;
	text-transform: uppercase;
	letter-spacing: 1px;
	display: flex;
	align-items: center;
	gap: 6px;
}

.sidebar-ad-content-box {
	padding: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(0,0,0,0.2);
}

/* Interstitial Popup styling overrides */
.interstitial-popup-modal {
	backdrop-filter: blur(12px);
	transition: all 0.3s ease;
}

.interstitial-popup-content {
	animation: slideDownIn 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@keyframes slideDownIn {
	from {
		transform: translateY(-50px) scale(0.95);
		opacity: 0;
	}
	to {
		transform: translateY(0) scale(1);
		opacity: 1;
	}
}

/* Movie Details Page Mobile Responsiveness Overrides */
@media (max-width: 768px) {
	.cinemora-hero-container {
		flex-direction: column !important;
		align-items: center !important;
		text-align: center !important;
		padding: 20px 10px !important;
	}
	.cinemora-hero-poster {
		max-width: 200px !important;
		margin: 0 auto 20px !important;
		float: none !important;
	}
	.cinemora-hero-details {
		width: 100% !important;
		padding: 0 !important;
	}
	.cinemora-meta-line {
		justify-content: center !important;
		flex-wrap: wrap !important;
		gap: 6px !important;
	}
	.cinemora-ratings-row {
		display: grid !important;
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 8px !important;
		width: 100% !important;
		margin-bottom: 20px !important;
	}
	.cinemora-score-box {
		padding: 10px 5px !important;
		flex-direction: column !important;
		gap: 4px !important;
		text-align: center !important;
		align-items: center !important;
	}
	.cinemora-score-box .star-icon,
	.cinemora-score-box .tomato-icon,
	.cinemora-score-box .popcorn-icon {
		font-size: 18px !important;
		margin-right: 0 !important;
		margin-bottom: 4px !important;
	}
	.cinemora-actions-row {
		display: grid !important;
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 8px !important;
		width: 100% !important;
		margin-bottom: 20px !important;
	}
	.cinemora-actions-row a,
	.cinemora-actions-row button {
		font-size: 11px !important;
		padding: 12px 6px !important;
		text-align: center !important;
		justify-content: center !important;
		margin: 0 !important;
		width: 100% !important;
		min-width: 0 !important;
	}
	.btn-big-download-hero {
		grid-column: span 2 !important;
	}
	.cinemora-similar-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 10px !important;
	}
	.cinemora-main-grid {
		grid-template-columns: 1fr !important;
		gap: 20px !important;
	}
	.cinemora-primary-col {
		width: 100% !important;
		max-width: 100% !important;
	}
	.cinemora-sidebar-col {
		width: 100% !important;
		max-width: 100% !important;
	}
}








