* { box-sizing: border-box; }
html, body { margin: 0; background: #050507; color: #fff; font-family: Arial, Helvetica, sans-serif; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; }
.lfx-page {
	min-height: 100vh;
	background:
		radial-gradient(circle at top left, rgba(229, 9, 20, .28), transparent 30%),
		radial-gradient(circle at top right, rgba(245, 198, 107, .10), transparent 28%),
		linear-gradient(180deg, #09090d 0%, #050507 72%);
	overflow: hidden;
}
.lfx-wrap { width: min(1180px, calc(100% - 32px)); margin: 0 auto; }
.lfx-hero { min-height: 78vh; display: grid; place-items: center; padding: 76px 0 58px; position: relative; }
.lfx-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(5,5,7,.96), rgba(5,5,7,.72), rgba(5,5,7,.96)),
		repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 88px);
	opacity: .7;
}
.lfx-hero-inner { position: relative; z-index: 1; text-align: center; }
.lfx-kicker {
	display: inline-flex; padding: 9px 15px; border: 1px solid rgba(245,198,107,.35);
	border-radius: 999px; background: rgba(245,198,107,.08); color: #ffe3a1;
	font-size: 13px; font-weight: 900; text-transform: uppercase; letter-spacing: .12em;
}
.lfx-logo {
	margin: 26px auto 8px; max-width: 1100px; font-size: clamp(42px, 8vw, 96px); line-height: .9;
	letter-spacing: -.045em; font-weight: 1000; text-transform: uppercase; color: #e50914;
	text-shadow: 0 0 22px rgba(229,9,20,.45), 0 22px 60px rgba(0,0,0,.7);
}
.lfx-subtitle { max-width: 760px; margin: 0 auto 28px; color: #b7b7c2; font-size: clamp(18px, 2.5vw, 24px); line-height: 1.55; }
.lfx-actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.lfx-button {
	display: inline-flex; align-items: center; justify-content: center; min-height: 54px; padding: 16px 26px;
	border-radius: 999px; background: linear-gradient(135deg, #e50914, #b20710); font-weight: 1000;
	text-transform: uppercase; letter-spacing: .04em; box-shadow: 0 18px 48px rgba(229,9,20,.34);
}
.lfx-button.secondary { background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.12); box-shadow: none; }
.lfx-benefits { padding: 0 0 22px; margin-top: -34px; position: relative; z-index: 2; }
.lfx-benefit-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.lfx-benefit-card {
	min-height: 82px; display: grid; align-content: center; gap: 5px; padding: 13px 14px;
	border: 1px solid rgba(255,255,255,.12); border-radius: 16px;
	background: linear-gradient(135deg, rgba(229,9,20,.16), rgba(255,255,255,.055)), rgba(255,255,255,.045);
	box-shadow: 0 14px 34px rgba(0,0,0,.26);
}
.lfx-benefit-card h3 { margin: 0; font-size: 14px; line-height: 1.05; font-weight: 1000; text-transform: uppercase; letter-spacing: -.02em; }
.lfx-benefit-card p { margin: 0; color: #b7b7c2; font-size: 12px; line-height: 1.2; }
.lfx-section { padding: 52px 0; }
.lfx-benefits + .lfx-section { padding-top: 34px; }
#atrizes { padding-bottom: 38px; }
#atrizes + .lfx-section { padding-top: 38px; }
.lfx-section-title { margin: 0 0 14px; font-size: clamp(30px, 5vw, 58px); line-height: 1; letter-spacing: -.05em; text-transform: uppercase; }
.lfx-section-lead { max-width: 720px; margin: 0 0 24px; color: #b7b7c2; font-size: 18px; line-height: 1.55; }
.lfx-center { text-align: center; }
.lfx-center .lfx-section-lead { margin-left: auto; margin-right: auto; }
.lfx-photo-carousels { display: grid; gap: 28px; }
.lfx-photo-carousel { min-width: 0; }
.lfx-photo-carousel-title { margin: 0 0 12px; font-size: clamp(22px, 3vw, 34px); line-height: 1; letter-spacing: -.04em; text-transform: uppercase; }
.lfx-actress-rail {
	display: grid; grid-auto-flow: column; grid-auto-columns: minmax(230px, 278px); gap: 16px;
	overflow-x: auto; overflow-y: hidden; padding: 2px 4px 18px; margin-inline: -4px;
	scroll-snap-type: x mandatory; scroll-padding-left: 4px; scrollbar-width: thin;
	scrollbar-color: rgba(229,9,20,.62) rgba(255,255,255,.08);
}
.lfx-actress-rail::-webkit-scrollbar { height: 6px; }
.lfx-actress-rail::-webkit-scrollbar-track { background: rgba(255,255,255,.08); border-radius: 999px; }
.lfx-actress-rail::-webkit-scrollbar-thumb { background: rgba(229,9,20,.72); border-radius: 999px; }
.lfx-actress-card {
	position: relative; min-height: 360px; aspect-ratio: 2 / 3; scroll-snap-align: start; border-radius: 26px; overflow: hidden;
	background: linear-gradient(180deg, #1d1d27, #14141b); border: 1px solid rgba(255,255,255,.12);
	box-shadow: 0 28px 90px rgba(0,0,0,.52);
}
.lfx-actress-card picture { display: block; width: 100%; height: 100%; }
.lfx-actress-card img { width: 100%; height: 100%; min-height: 360px; display: block; object-fit: cover; filter: saturate(1.05) contrast(1.04); }
.lfx-actress-info { position: absolute; inset: auto 0 0; padding: 22px; background: linear-gradient(180deg, transparent, rgba(0,0,0,.92)); }
.lfx-actress-info h3 { margin: 0 0 5px; font-size: 22px; }
.lfx-actress-info p { margin: 0; color: #b7b7c2; font-size: 14px; }
.lfx-watch-shell {
	max-width: 980px; margin: 0 auto; border: 1px solid rgba(255,255,255,.12); border-radius: 8px; overflow: hidden;
	background: linear-gradient(180deg, #121219, #08080c); box-shadow: 0 28px 90px rgba(0,0,0,.52); text-align: left;
}
.lfx-watch-header { padding: clamp(18px, 3vw, 30px); border-bottom: 1px solid rgba(255,255,255,.10); background: #111118; color: #fff; }
.lfx-watch-title { margin: 0; font-size: clamp(28px, 5vw, 52px); line-height: 1.08; letter-spacing: 0; font-weight: 1000; }
.lfx-watch-meta { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 14px; }
.lfx-watch-tag { display: inline-flex; min-height: 30px; padding: 5px 10px; border: 1px solid rgba(245,198,107,.35); border-radius: 8px; background: rgba(245,198,107,.08); color: #ffe3a1; font-size: 14px; font-weight: 900; }
.lfx-watch-player { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; background: #000; overflow: hidden; }
.lfx-watch-player::after {
	content: ""; position: absolute; top: 50%; left: 50%; z-index: 1; width: 0; height: 0;
	border-top: 12px solid transparent; border-bottom: 12px solid transparent; border-left: 18px solid #fff;
	transform: translate(-42%, -50%); pointer-events: none;
}
.lfx-watch-player.has-video::after { display: none; }
.lfx-watch-cover,
.lfx-watch-video,
.lfx-watch-embed { width: 100%; height: 100%; display: block; border: 0; object-fit: cover; }
.lfx-watch-cover { filter: saturate(1.08) contrast(1.05); }
.lfx-video-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; padding: 16px; border-top: 1px solid rgba(255,255,255,.08); background: #0d0d13; }
.lfx-video-card {
	display: block; width: 100%; padding: 0; border: 1px solid rgba(255,255,255,.12); border-radius: 8px;
	overflow: hidden; background: #15151d; color: #fff; text-align: left; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.lfx-video-card:hover { border-color: rgba(229,9,20,.72); transform: translateY(-2px); }
.lfx-video-card:focus-visible { outline: 3px solid rgba(245,198,107,.82); outline-offset: 3px; }
.lfx-video-card.is-active { border-color: #e50914; box-shadow: 0 12px 30px rgba(229,9,20,.26); }
.lfx-video-thumb-media { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #111; }
.lfx-video-thumb-media::before {
	content: ""; position: absolute; top: 50%; left: 50%; z-index: 1; width: 44px; height: 44px;
	border: 1px solid rgba(255,255,255,.34); border-radius: 50%; background: rgba(5,5,7,.72); transform: translate(-50%, -50%); pointer-events: none;
}
.lfx-video-thumb-media::after {
	content: ""; position: absolute; top: 50%; left: 50%; z-index: 1; width: 0; height: 0;
	border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left: 12px solid #fff;
	transform: translate(-34%, -50%); pointer-events: none;
}
.lfx-video-thumb-media img { width: 100%; height: 100%; display: block; object-fit: cover; filter: saturate(1.02) contrast(1.05); transition: transform .25s ease; }
.lfx-video-card:hover .lfx-video-thumb-media img { transform: scale(1.025); }
.lfx-video-thumb-placeholder {
	display: grid; width: 100%; height: 100%; place-items: center; padding: 10px;
	background: #15151d; color: #fff; font-size: clamp(18px, 3vw, 34px); font-weight: 900;
}
.lfx-video-overlay { display: grid; gap: 5px; min-height: 67px; padding: 12px 13px; border-top: 1px solid rgba(255,255,255,.08); background: #15151d; }
.lfx-video-info h3 { margin: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #fff; font-size: 16px; line-height: 1.15; letter-spacing: 0; }
.lfx-video-info p { margin: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #f5c66b; font-size: 11px; font-weight: 900; line-height: 1.1; letter-spacing: 0; text-transform: uppercase; }
.lfx-popup[hidden] { display: none; }
.lfx-popup { position: fixed; inset: 0; z-index: 2000; display: grid; place-items: center; padding: 20px; }
.lfx-popup-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.82); backdrop-filter: blur(5px); }
.lfx-popup-dialog {
	position: relative; z-index: 1; width: min(100%, 460px); padding: 34px 28px 28px; border: 1px solid rgba(255,255,255,.14);
	border-radius: 8px; background: #111118; color: #fff; text-align: center; box-shadow: 0 28px 80px rgba(0,0,0,.72);
}
.lfx-popup-close {
	position: absolute; top: 10px; right: 10px; display: grid; width: 40px; height: 40px; padding: 0; place-items: center;
	border: 0; border-radius: 50%; background: rgba(255,255,255,.08); color: #fff; font-size: 28px; line-height: 1;
}
.lfx-popup-kicker { color: #f5c66b; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.lfx-popup-dialog h2 { margin: 12px 0 8px; font-size: 30px; line-height: 1.08; }
.lfx-popup-dialog p { margin: 0 0 22px; color: #b7b7c2; font-size: 16px; line-height: 1.45; }
.lfx-popup-dialog p strong { color: #fff; }
.lfx-popup-countdown {
	display: grid; gap: 4px; margin: 0 0 20px; padding: 14px; border: 1px solid rgba(229,9,20,.48);
	border-radius: 8px; background: rgba(229,9,20,.10); text-align: center;
}
.lfx-popup-countdown span { color: #b7b7c2; font-size: 11px; font-weight: 900; text-transform: uppercase; }
.lfx-popup-countdown strong { color: #fff; font-size: 38px; line-height: 1; font-variant-numeric: tabular-nums; }
.lfx-popup-action { width: 100%; border-radius: 8px; }
body.lfx-modal-open { overflow: hidden; }
.lfx-mobile-preview-group { display: none; }
.lfx-footer { padding: 44px 0 56px; text-align: center; color: #777784; font-size: 13px; }
@media (max-width: 980px) {
	.lfx-benefit-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.lfx-actress-rail { grid-auto-columns: minmax(220px, 42vw); }
	.lfx-video-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
	.lfx-page { padding-bottom: 86px; }
	.lfx-wrap { width: min(100% - 32px, 1180px); }
	.lfx-mobile-preview-group {
		display: inline-flex; position: fixed; left: 50%; bottom: calc(14px + env(safe-area-inset-bottom, 0px));
		z-index: 1000; align-items: center; justify-content: center; width: min(calc(100% - 32px), 420px);
		min-height: 56px; padding: 15px 22px; border: 1px solid rgba(255,255,255,.22); border-radius: 999px;
		background: linear-gradient(135deg, #e50914, #b20710); color: #fff; font-size: 14px; font-weight: 1000;
		text-align: center; text-transform: uppercase; box-shadow: 0 16px 38px rgba(0,0,0,.58), 0 10px 28px rgba(229,9,20,.34);
		transform: translateX(-50%); -webkit-tap-highlight-color: transparent;
	}
	.lfx-mobile-preview-group:active { transform: translateX(-50%) scale(.98); }
	.lfx-hero { min-height: auto; padding: 56px 0 34px; }
	.lfx-actions, .lfx-button { width: 100%; }
	.lfx-benefits { margin-top: -12px; padding-bottom: 10px; }
	.lfx-section { padding: 30px 0; }
	.lfx-benefits + .lfx-section { padding-top: 18px; }
	#atrizes { padding-bottom: 18px; }
	#atrizes + .lfx-section { padding-top: 22px; }
	.lfx-section-title { margin-bottom: 8px; }
	.lfx-section-lead { margin-bottom: 18px; font-size: 16px; line-height: 1.42; }
	.lfx-benefit-grid { grid-template-columns: 1fr; gap: 7px; }
	.lfx-benefit-card { min-height: 54px; padding: 9px 12px; border-radius: 12px; }
	.lfx-benefit-card h3 { font-size: 12px; line-height: 1; }
	.lfx-benefit-card p { font-size: 10.5px; line-height: 1.12; }
	.lfx-photo-carousels { gap: 18px; }
	.lfx-photo-carousel-title { margin-bottom: 10px; font-size: 22px; }
	.lfx-actress-rail { grid-auto-columns: minmax(78%, 78%); gap: 12px; padding: 2px 16px 12px; margin-inline: -16px; scroll-padding-left: 16px; scrollbar-width: none; }
	.lfx-actress-rail::-webkit-scrollbar { display: none; }
	.lfx-actress-rail .lfx-actress-card { scroll-snap-align: start; }
	.lfx-actress-card, .lfx-actress-card img { min-height: 420px; }
	.lfx-watch-shell { margin-inline: -16px; border-left: 0; border-right: 0; border-radius: 0; }
	.lfx-watch-header { padding: 20px 16px 16px; }
	.lfx-watch-title { font-size: clamp(28px, 8vw, 42px); }
	.lfx-video-row {
		grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: minmax(76%, 76%); gap: 12px; padding: 12px 16px 16px;
		overflow-x: auto; scroll-padding-left: 16px; scroll-snap-type: x mandatory; scrollbar-width: none;
	}
	.lfx-video-row::-webkit-scrollbar { display: none; }
	.lfx-video-card { border-radius: 8px; scroll-snap-align: start; }
	.lfx-video-thumb-media { aspect-ratio: 16 / 9; }
	.lfx-video-overlay { gap: 4px; padding: 11px 12px; }
	.lfx-video-info h3 { font-size: 15px; }
	.lfx-video-info p { font-size: 10.5px; }
}
