/*
Theme Name: PrimeTV Pass
Theme URI: https://example.com/primestream-usa
Author: PrimeTV Pass
Description: A cinematic, conversion-focused streaming service landing page for the US market.
Version: 1.0.5
Text Domain: primestream-usa
*/

@font-face {
	font-family: "Manrope";
	src: url("assets/fonts/manrope.woff2") format("woff2");
	font-weight: 200 800;
	font-display: swap;
}

:root {
	--bg: #02050b;
	--bg-deep: #000208;
	--surface: #050d18;
	--surface-2: #091827;
	--line: rgba(91, 187, 255, 0.16);
	--text: #f6fbff;
	--muted: #93a9bd;
	--accent: #087cf0;
	--accent-2: #24b7ff;
	--cyan: #52e1ff;
	--pink: #3f9dff;
	--green: #64d9ff;
	--max: 1200px;
	--radius: 22px;
	--shadow: 0 28px 90px rgba(0, 0, 0, 0.38);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body {
	margin: 0;
	background: var(--bg);
	color: var(--text);
	font-family: "Manrope", ui-sans-serif, system-ui, sans-serif;
	font-size: 16px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select { font: inherit; }
button { color: inherit; }
.container { width: min(calc(100% - 40px), var(--max)); margin-inline: auto; }
.section { padding: 112px 0; position: relative; }
.icon { width: 1.15em; height: 1.15em; flex: none; }
.skip-link { position: fixed; z-index: 9999; top: -100px; left: 12px; padding: 10px 16px; background: #fff; color: #000; border-radius: 8px; }
.skip-link:focus { top: 12px; }
.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 54px;
	padding: 0 25px;
	border: 1px solid transparent;
	border-radius: 12px;
	background: linear-gradient(135deg, #7468ff, #496df8);
	box-shadow: 0 12px 34px rgba(86, 96, 255, 0.28);
	font-weight: 750;
	letter-spacing: -0.01em;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
}
.button:hover { transform: translateY(-2px); box-shadow: 0 18px 42px rgba(86, 96, 255, 0.4); }
.button .icon { transition: transform .25s ease; }
.button:hover .icon { transform: translateX(3px); }
.button-sm { min-height: 42px; padding: 0 18px; border-radius: 10px; font-size: 14px; }
.button-outline { background: rgba(255,255,255,.025); border-color: var(--line); box-shadow: none; }
.button-outline:hover { border-color: rgba(105, 92, 255, .8); background: rgba(105, 92, 255, .1); box-shadow: none; }
.section-conversion-cta { width:max-content; max-width:100%; display:flex; align-items:center; justify-content:center; gap:20px; margin:28px auto 0; padding:10px 10px 10px 18px; border:1px solid rgba(65,190,255,.2); border-radius:14px; background:rgba(5,22,37,.72); box-shadow:0 12px 32px rgba(0,0,0,.16); }
.section-conversion-cta > span { color:#a9c4d7; font-size:11px; font-weight:650; }
.section-conversion-cta .button { white-space:nowrap; }
.kicker, .eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: #9ca2ff;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .15em;
	text-transform: uppercase;
}
.section-heading { margin-bottom: 52px; }
.section-heading h2, .device-copy h2, .comparison-copy h2, .faq-bar h2 {
	margin: 10px 0 0;
	font-size: clamp(35px, 4vw, 58px);
	line-height: 1.08;
	letter-spacing: -.045em;
}
.section-heading h2 span, .device-copy h2 span, .comparison-copy h2 span, .faq-bar h2 span { color: #858aff; }
.section-heading p { max-width: 600px; margin: 18px auto 0; color: var(--muted); font-size: 17px; }
.section-heading.centered { max-width: 760px; margin-left: auto; margin-right: auto; text-align: center; }
.split-heading { display: grid; grid-template-columns: 1.15fr .7fr; align-items: end; gap: 70px; }
.split-heading p { margin: 0 0 6px; }

/* Header */
.site-header {
	position: fixed;
	z-index: 1000;
	top: 0;
	left: 0;
	width: 100%;
	border-bottom: 1px solid transparent;
	transition: background .25s ease, border-color .25s ease, backdrop-filter .25s ease;
}
.site-header.scrolled { background: rgba(4, 7, 18, .82); border-color: var(--line); backdrop-filter: blur(18px); }
.header-inner { height: 82px; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 11px; }
.brand-mark { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; background: linear-gradient(145deg, #766bff, #436cf4); box-shadow: 0 8px 25px rgba(94, 88, 255, .3); transform: skewX(-7deg); }
.brand-mark .icon { width: 18px; height: 18px; fill: white; stroke: none; transform: skewX(7deg); }
.brand-name { font-size: 21px; font-weight: 800; letter-spacing: -.045em; }
.brand-name span { color: #7d82ff; }
.site-nav { display: flex; align-items: center; gap: 34px; color: #bec6d8; font-size: 14px; font-weight: 650; }
.site-nav > a:not(.button) { transition: color .2s; }
.site-nav > a:not(.button):hover { color: white; }
.cart-link { position: relative; display: grid; place-items: center; width: 37px; height: 37px; padding: 0 !important; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.035); }
.cart-link .icon { width: 17px; height: 17px; }
.cart-count { position: absolute; right: -7px; top: -7px; min-width: 17px; height: 17px; display: grid; place-items: center; padding: 0 4px; border: 2px solid var(--bg-deep); border-radius: 10px; background: var(--accent); color: #fff; font-size: 8px; font-weight: 900; }
.menu-toggle { display: none; width: 42px; height: 42px; padding: 0; border: 1px solid var(--line); background: var(--surface); border-radius: 10px; place-items: center; }
.menu-toggle .icon { width: 21px; height: 21px; }
.menu-close { display: none; }

/* Hero */
.hero { min-height: 920px; position: relative; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; background: var(--bg-deep); }
.hero::before { content: ""; position: absolute; z-index: 2; inset: 0; opacity: .13; background-image: linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px); background-size: 70px 70px; mask-image: linear-gradient(to bottom, #000, transparent 82%); }
.hero-glow { position: absolute; width: 600px; height: 600px; left: -320px; top: 70px; border-radius: 50%; background: rgba(78, 68, 255, .22); filter: blur(100px); }
.hero-inner { position: relative; z-index: 4; min-height: 785px; display: flex; align-items: center; justify-content: center; padding-top: 92px; padding-bottom: 30px; }
.hero-copy { position: relative; z-index: 3; width: 100%; max-width: 880px; text-align: center; }
@media (min-width:601px) {
	.hero-copy { top: -12px; }
	.hero-visual img { translate: 0 -12px; }
}
.eyebrow { color: #c3c8dc; letter-spacing: .11em; }
.live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--pink); box-shadow: 0 0 0 5px rgba(255,75,125,.13), 0 0 18px var(--pink); animation: pulse 2s infinite; }
@keyframes pulse { 50% { box-shadow: 0 0 0 8px rgba(255,75,125,0), 0 0 24px var(--pink); } }
.hero h1 { max-width: 880px; margin: 20px auto 22px; font-size: clamp(52px, 6.4vw, 88px); line-height: .98; letter-spacing: -.064em; text-shadow: 0 8px 40px rgba(0,0,0,.55); }
.hero h1 span { display: block; color: transparent; background: linear-gradient(90deg, #8b86ff, #5bc7ff); background-clip: text; -webkit-background-clip: text; }
.hero-lead { max-width: 670px; margin: 0 auto; color: #c7cede; font-size: 18px; line-height: 1.75; text-shadow: 0 3px 20px rgba(0,0,0,.8); }
.hero-actions { display: flex; align-items: center; justify-content: center; gap: 28px; margin-top: 32px; }
.text-link { display: inline-flex; align-items: center; gap: 11px; color: #d7dced; font-weight: 700; font-size: 14px; }
.play-ring { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; }
.play-ring .icon { width: 15px; fill: currentColor; stroke: none; }
.hero-trust { display: flex; justify-content: center; gap: 24px; margin-top: 28px; color: #a9b3c7; font-size: 12px; font-weight: 650; }
.hero-trust span { display: flex; align-items: center; gap: 6px; }
.hero-trust .icon { color: var(--green); }
.hero-visual { position: absolute; z-index: 1; inset: 0; width: 100vw; max-width: none; height: 100%; }
.hero-visual::before { content: ""; position: absolute; z-index: 2; inset: 0; background: linear-gradient(180deg, rgba(2,4,12,.3) 0%, rgba(3,5,14,.45) 48%, #03050e 100%), radial-gradient(circle at center, rgba(5,8,23,.18) 0%, rgba(3,5,14,.74) 82%); }
.hero-visual img { width: 100vw; max-width: none; height: 100%; object-fit: cover; object-position: center; opacity: .96; transform: scale(1.025); }
.now-playing { display: none; }
.playing-icon { width: 37px; height: 37px; display: grid; place-items: center; border-radius: 10px; color: #d6d2ff; background: rgba(105,92,255,.2); }
.now-playing small { display: block; color: #ff668e; font-size: 8px; font-weight: 800; letter-spacing: .13em; }
.now-playing strong { display: block; font-size: 12px; }
.now-playing > i { align-self: flex-end; width: 2px; height: 11px; margin-left: 1px; background: #706cff; animation: sound 1s ease-in-out infinite alternate; }
.now-playing > i:nth-of-type(2) { height: 19px; animation-delay: -.35s; }
.now-playing > i:nth-of-type(3) { height: 7px; animation-delay: -.7s; }
@keyframes sound { to { height: 4px; opacity: .5; } }
.hero-stats { position: relative; z-index: 4; display: grid; grid-template-columns: repeat(4, 1fr); padding: 25px 0 28px; border-top: 1px solid rgba(255,255,255,.16); }
.hero-stats > div { padding-left: 34px; border-left: 1px solid var(--line); }
.hero-stats > div:first-child { padding-left: 0; border-left: 0; }
.hero-stats strong { display: block; font-size: 25px; letter-spacing: -.04em; }
.hero-stats strong span { color: #746dff; }
.hero-stats small { color: #78849c; font-size: 11px; text-transform: uppercase; letter-spacing: .09em; }
.hero-stats-mobile { display: none; }
.ticker { position: relative; z-index: 5; overflow: hidden; border-block: 1px solid var(--line); background: #070b19; }
.ticker-track { width: max-content; min-width: 100%; display: flex; justify-content: center; align-items: center; gap: 30px; min-height: 65px; padding-inline: 25px; color: #6d7891; font-size: 13px; font-weight: 800; letter-spacing: .16em; }
.ticker-track i { width: 4px; height: 4px; background: #4e59a7; border-radius: 50%; }

/* Live sports gallery */
.sports-gallery-section { overflow: hidden; background: radial-gradient(circle at 50% 0, rgba(83,68,211,.13), transparent 34%), var(--bg-deep); }
.sports-marquee { overflow: hidden; padding-block: 6px 18px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); }
.sports-marquee-track { width: max-content; display: flex; will-change: transform; animation: sports-scroll 36s linear infinite; }
.sports-marquee:hover .sports-marquee-track, .sports-marquee:focus-within .sports-marquee-track { animation-play-state: paused; }
.sports-marquee-group { display: flex; gap: 17px; padding-right: 17px; }
.sport-image-card { position: relative; width: 280px; min-width: 280px; min-height: 410px; overflow: hidden; border: 1px solid var(--line); border-radius: 21px; background: var(--surface); box-shadow: 0 18px 55px rgba(0,0,0,.25); isolation: isolate; }
.sport-image-card img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .55s cubic-bezier(.2,.7,.2,1), filter .55s ease; }
.sport-image-card:hover img { transform: scale(1.055); filter: saturate(1.12); }
.sport-card-shade { position: absolute; z-index: 1; inset: 0; background: linear-gradient(180deg, rgba(2,4,13,.08) 35%, rgba(3,5,14,.94) 100%); }
.sport-image-card::after { content: ""; position: absolute; z-index: 2; inset: 0; border-radius: inherit; box-shadow: inset 0 0 0 1px rgba(255,255,255,.025); pointer-events: none; }
.sport-live { position: absolute; z-index: 3; left: 18px; top: 18px; display: inline-flex; align-items: center; gap: 6px; padding: 6px 9px; border: 1px solid rgba(255,255,255,.16); border-radius: 7px; background: rgba(5,8,23,.62); backdrop-filter: blur(9px); color: #eef1fb; font-size: 8px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.sport-live i { width: 6px; height: 6px; border-radius: 50%; background: #ff466d; box-shadow: 0 0 10px #ff466d; }
.sport-card-copy { position: absolute; z-index: 3; left: 22px; right: 22px; bottom: 21px; display: flex; align-items: end; justify-content: space-between; gap: 12px; }
.sport-card-copy strong { font-size: 30px; line-height: 1; letter-spacing: -.055em; }
.sport-card-copy small { max-width: 95px; color: #a6b0c5; font-size: 9px; line-height: 1.45; text-align: right; text-transform: uppercase; letter-spacing: .07em; }
.sports-disclaimer { margin: 20px 0 0; color: #4f5b74; font-size: 9px; text-align: center; }
@keyframes sports-scroll { to { transform: translateX(-50%); } }

/* Trending movie ranking */
.trending-movies-section { padding-block:76px; overflow:hidden; background: radial-gradient(circle at 82% 5%, rgba(70,133,255,.13), transparent 26%), #070b19; }
.trending-title-row { display:grid; grid-template-columns:110px 1fr; gap:28px; align-items:center; margin-bottom:28px; }
.trending-number { height:95px; display:flex; align-items:center; justify-content:center; gap:4px; border-right:1px solid var(--line); line-height:.8; }
.trending-number small { align-self: flex-start; margin-top: 22px; color: #fff; font-size: 19px; font-weight: 900; text-transform: uppercase; transform: rotate(-90deg); }
.trending-number strong { color:transparent; background:linear-gradient(160deg,#ffe66f,#ff9d32); background-clip:text; -webkit-background-clip:text; font-size:76px; letter-spacing:-.1em; }
.trending-title-row h2 { margin:6px 0 5px; font-size:clamp(34px,4vw,52px); line-height:1; letter-spacing:-.055em; }
.trending-title-row h2 span { color: #7e83ff; }
.trending-title-row p { max-width: 680px; margin: 0; color: var(--muted); font-size: 14px; }
.movie-marquee { overflow:hidden; padding:5px 0 14px; -webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent); mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent); }
.movie-marquee-track { width:max-content; display:flex; will-change:transform; animation:movie-scroll 58s linear infinite; }
.movie-marquee:hover .movie-marquee-track,.movie-marquee:focus-within .movie-marquee-track { animation-play-state:paused; }
.movie-marquee-group { display:flex; gap:12px; padding-right:12px; }
.movie-rank-card { width:180px; min-width:180px; overflow:hidden; border:1px solid var(--line); border-radius:16px; background:#0b1122; transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease; }
.movie-rank-card:hover { transform: translateY(-7px); border-color: rgba(115,107,255,.52); box-shadow: 0 22px 55px rgba(0,0,0,.36); }
.movie-poster { position: relative; aspect-ratio: 2/3; overflow: hidden; background: #10162a; }
.movie-poster::after { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(180deg, rgba(2,4,12,.02) 35%, rgba(3,5,14,.96) 100%); }
.movie-poster img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s cubic-bezier(.2,.7,.2,1); }
.movie-rank-card:hover .movie-poster img { transform: scale(1.045); }
.movie-rank { position: absolute; z-index: 3; left: 12px; top: 0; width: 38px; height: 52px; display: grid; place-items: center; padding-bottom: 7px; clip-path: polygon(0 0,100% 0,100% 78%,50% 100%,0 78%); background: linear-gradient(180deg,#766aff,#4d65ec); color: #fff; font-size: 20px; font-weight: 900; }
.movie-rank-card:nth-child(2n) .movie-rank { background: linear-gradient(180deg,#ff813d,#e74d35); }
.movie-rank-card:nth-child(3n) .movie-rank { background: linear-gradient(180deg,#27c993,#178d7d); }
.movie-included { position: absolute; z-index: 3; right: 10px; top: 11px; display: flex; align-items: center; gap: 4px; padding: 5px 7px; border: 1px solid rgba(255,255,255,.15); border-radius: 6px; background: rgba(3,6,17,.62); backdrop-filter: blur(8px); color: #dce3f2; font-size: 7px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.movie-included .icon { width: 9px; height: 9px; color: var(--green); }
.movie-poster-copy { position: absolute; z-index: 3; left: 15px; right: 15px; bottom: 14px; }
.movie-poster-copy h3 { margin: 0 0 4px; font-size: 17px; line-height: 1.08; letter-spacing: -.035em; }
.movie-poster-copy p { margin: 0; color: #8d9ab3; font-size: 8px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.movie-score-row { min-height:50px; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 11px; }
.movie-score-row > div { display: flex; align-items: center; gap: 7px; }
.movie-score-row strong { color: #68e6b1; font-size: 17px; }
.movie-score-row small { max-width: 47px; color: #5f6c84; font-size: 6px; line-height: 1.2; text-transform: uppercase; }
.movie-stars { color: #ffc84b; font-size: 10px; letter-spacing: 1px; }
.movie-package-cta { display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; gap:18px; margin-top:20px; padding:17px 20px; border:1px solid rgba(111,103,255,.33); border-radius:18px; background:radial-gradient(circle at 10% 0,rgba(104,91,255,.16),transparent 38%),#0b1124; }
.movie-cta-icon { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 13px; background: linear-gradient(145deg,#756aff,#4c6af3); box-shadow: 0 10px 30px rgba(88,89,255,.28); }
.movie-cta-icon .icon { width: 18px; height: 18px; fill: white; stroke: none; }
.movie-package-cta > div:nth-child(2) span { display: block; color: #8f9bb4; font-size: 10px; text-transform: uppercase; letter-spacing: .09em; }
.movie-package-cta > div:nth-child(2) strong { display: block; margin-top: 3px; font-size: 16px; }
.movie-cta-price { padding: 0 23px; border-inline: 1px solid var(--line); }
.movie-cta-price small { display: block; color: #68758e; font-size: 8px; text-transform: uppercase; letter-spacing: .1em; }
.movie-cta-price strong { font-size: 23px; letter-spacing: -.04em; }
.movie-cta-price em { color: #79849b; font-size: 10px; font-style: normal; }
.movie-score-note { margin: 14px 0 0; color: #48546c; font-size: 8px; text-align: center; }
@keyframes movie-scroll { to { transform:translateX(-50%); } }

/* Features */
.features-section { background: #070b19; }
.feature-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.feature-card { min-height: 325px; position: relative; overflow: hidden; padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); background: linear-gradient(145deg, rgba(255,255,255,.035), rgba(255,255,255,.012)); transition: transform .3s ease, border-color .3s ease; }
.feature-card:hover { transform: translateY(-6px); border-color: rgba(119,115,255,.42); }
.feature-card.featured { background: radial-gradient(circle at 18% 0, rgba(94,84,255,.2), transparent 50%), #0c1227; }
.feature-number { position: absolute; right: 22px; top: 18px; color: rgba(255,255,255,.16); font-size: 12px; font-weight: 800; }
.icon-box { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 52px; border: 1px solid rgba(130,122,255,.25); border-radius: 14px; background: rgba(96, 86, 255, .1); color: #9994ff; }
.icon-box .icon { width: 23px; height: 23px; }
.feature-card h3 { margin: 0 0 12px; font-size: 18px; letter-spacing: -.025em; }
.feature-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.75; }
.signal-bars { position: absolute; right: 23px; bottom: 22px; height: 21px; display: flex; align-items: end; gap: 3px; }
.signal-bars i { width: 3px; height: 30%; border-radius: 2px; background: #6b67ff; }
.signal-bars i:nth-child(2) { height: 45%; }.signal-bars i:nth-child(3) { height: 65%; }.signal-bars i:nth-child(4) { height: 83%; }.signal-bars i:nth-child(5) { height: 100%; }

/* Content */
.content-section { background: radial-gradient(circle at 50% 20%, rgba(86,68,200,.11), transparent 35%), var(--bg-deep); }
.content-grid { display: grid; grid-template-columns: 1.15fr .85fr .85fr; gap: 18px; }
.content-card { min-height: 480px; position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: 25px; background: #0a1020; box-shadow: 0 20px 60px rgba(0,0,0,.2); }
.content-art { position: relative; height: 58%; overflow: hidden; }
.content-art::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, #0a1020, transparent 45%); }
.football-art { padding: 30px; background: radial-gradient(circle at 70% 20%, #bd3843, transparent 30%), linear-gradient(135deg, #3a0812, #121842 55%, #050713); }
.football-art::before { content: ""; position: absolute; width: 160px; height: 250px; left: 44%; top: 20px; border-radius: 60% 50% 45% 45%; transform: rotate(-8deg); background: linear-gradient(145deg, #192239, #050711); box-shadow: 0 0 0 12px rgba(255,255,255,.035), 80px 10px 130px rgba(255,54,75,.36); }
.football-art span { position: relative; z-index: 2; display: inline-block; padding: 4px 9px; border-radius: 4px; color: white; background: #ee3453; font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.football-art b { position: absolute; z-index: 2; left: 30px; bottom: 42px; font-size: 34px; line-height: .83; letter-spacing: -.06em; font-style: italic; transform: skewX(-7deg); }
.cinema-art { background: radial-gradient(circle at 70% 30%, #e98c48, transparent 3%, #4d3e73 21%, #13162b 51%, #070917 72%); }
.moon { position: absolute; top: 30px; right: 45px; width: 54px; height: 54px; border-radius: 50%; background: #ffd9a5; box-shadow: 0 0 44px rgba(255,190,122,.6); }
.mountains { position: absolute; left: -10%; right: -10%; bottom: -20px; height: 70%; background: linear-gradient(155deg, transparent 33%, #17172b 34% 48%, transparent 49%), linear-gradient(205deg, transparent 33%, #090b18 34% 58%, transparent 59%); }
.family-art { background: radial-gradient(circle at 30% 30%, #303d97, transparent 22%), radial-gradient(circle at 73% 62%, #81297c, transparent 20%), linear-gradient(140deg, #101735, #080917); }
.planet { position: absolute; left: 50%; top: 45%; width: 120px; height: 120px; border-radius: 50%; transform: translate(-50%,-50%); background: linear-gradient(145deg, #ff9c7c, #8f4cea 55%, #352e87); box-shadow: -20px 20px 70px rgba(113,81,255,.6); }
.planet::after { content:""; position: absolute; inset: 43% -37%; height: 16px; border: 7px solid rgba(233,219,255,.78); border-radius: 50%; transform: rotate(-15deg); }
.family-art i { position: absolute; width: 3px; height: 3px; border-radius: 50%; background: white; box-shadow: 0 0 8px white; }
.family-art i:nth-child(2) { left: 20%; top: 23%; }.family-art i:nth-child(3) { right: 20%; top: 32%; }.family-art i:nth-child(4) { left: 28%; bottom: 23%; }
.content-card-copy { position: relative; z-index: 3; padding: 20px 28px 29px; }
.content-card-copy > span { display: flex; align-items: center; gap: 8px; color: #969aff; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
.content-card-copy h3 { margin: 10px 0 8px; font-size: 21px; letter-spacing: -.035em; }
.content-card-copy p { margin: 0; color: var(--muted); font-size: 13px; }

/* Devices */
.devices-section { overflow: hidden; background: #070b19; }
.device-layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 70px; align-items: center; }
.device-copy h2 { margin-bottom: 24px; }
.device-copy > p { max-width: 530px; color: var(--muted); }
.check-list { display: grid; gap: 13px; margin: 28px 0 30px; padding: 0; list-style: none; color: #c4cce0; font-size: 14px; }
.check-list li { display: flex; align-items: center; gap: 11px; }
.check-list .icon { color: var(--green); }
.text-link.accent { color: #969aff; }
.text-link.accent .icon { transition: transform .2s; }.text-link.accent:hover .icon { transform: translateX(4px); }
.device-stage { position: relative; min-height: 540px; perspective: 1200px; }
.ambient-ring { position: absolute; width: 450px; height: 450px; left: 50%; top: 48%; transform: translate(-50%,-50%); border: 1px solid rgba(96,91,255,.24); border-radius: 50%; box-shadow: inset 0 0 100px rgba(73,76,255,.08), 0 0 100px rgba(73,76,255,.05); }
.ambient-ring::before, .ambient-ring::after { content:""; position:absolute; inset: 70px; border: 1px solid rgba(93,109,255,.16); border-radius: 50%; }.ambient-ring::after { inset: 135px; }
.tv-device { position: absolute; z-index: 2; width: 530px; left: 52%; top: 49%; transform: translate(-50%,-50%) rotateY(-5deg); }
.tv-screen { position: relative; height: 300px; overflow: hidden; padding: 24px; border: 8px solid #161b29; border-radius: 16px; background: radial-gradient(circle at 70% 35%, #ff9d5c, transparent 8%, #824766 23%, #173168 48%, #08142d 70%); box-shadow: 0 25px 60px rgba(0,0,0,.6); }
.tv-screen::after { content:""; position:absolute; inset:0; background: linear-gradient(100deg, rgba(255,255,255,.07), transparent 26%); }
.screen-badge { position:relative; z-index:2; display:inline-block; padding: 4px 8px; border-radius: 5px; background:rgba(0,0,0,.4); font-size:10px; font-weight:800; }
.screen-sun { position:absolute; right:70px; top:65px; width:55px; height:55px; border-radius:50%; background:#ffc383; box-shadow:0 0 60px #ff8d62; }
.screen-ridge { position:absolute; left:-10%; right:-10%; bottom:-20%; height:65%; background:linear-gradient(155deg, transparent 35%, #10152b 36% 52%, transparent 53%),linear-gradient(205deg, transparent 35%, #080b19 36% 59%, transparent 60%); }
.tv-screen strong { position:absolute; z-index:2; left:28px; bottom:25px; font-size:24px; letter-spacing:-.04em; }
.tv-stand { width: 120px; height: 55px; margin: 0 auto; border-bottom: 7px solid #232938; clip-path: polygon(38% 0,62% 0,70% 86%,100% 86%,100% 100%,0 100%,0 86%,30% 86%); background:#161c2a; }
.phone-device { position:absolute; z-index:4; right:28px; bottom:45px; width:118px; height:230px; padding:7px; border-radius:24px; background:#202736; box-shadow:0 22px 55px rgba(0,0,0,.65); transform:rotate(5deg); }
.phone-screen { height:100%; display:flex; flex-direction:column; justify-content:flex-end; padding:15px; border-radius:18px; background:radial-gradient(circle at 65% 18%, #dc324e, transparent 21%),linear-gradient(145deg,#131a48,#070917); }
.phone-screen small { color:#ff6582; font-size:7px; font-weight:900; }.phone-screen b { font-size:15px; line-height:.95; font-style:italic; }
.device-tag { position:absolute; z-index:5; padding:8px 13px; border:1px solid var(--line); border-radius:9px; background:rgba(9,14,31,.8); backdrop-filter:blur(10px); color:#aeb8cf; font-size:10px; font-weight:700; }
.tag-one { left:20px; top:90px; }.tag-two { right:10px; top:150px; }

/* Pricing */
.pricing-section { background: radial-gradient(circle at 50% 30%, rgba(80,60,220,.13), transparent 35%), var(--bg-deep); }
.device-selector { width: max-content; display: flex; gap: 5px; margin: 0 auto 34px; padding: 5px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.025); }
.device-selector button { min-width: 112px; padding: 10px 17px; border: 0; border-radius: 9px; background: transparent; color: var(--muted); font-size: 13px; font-weight: 650; cursor: pointer; transition: .2s ease; }
.device-selector button strong { color: inherit; }
.device-selector button.active { color: white; background: #23234c; box-shadow: 0 5px 15px rgba(0,0,0,.2); }
.pricing-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 15px; align-items: stretch; }
.price-card { position: relative; display: flex; flex-direction: column; padding: 29px 24px 24px; border: 1px solid var(--line); border-radius: 20px; background: linear-gradient(160deg, rgba(255,255,255,.035), rgba(255,255,255,.012)); transition: transform .25s ease, border-color .25s ease; }
.price-card:hover { transform: translateY(-5px); border-color: rgba(128,120,255,.42); }
.price-card.popular { border-color: rgba(111,103,255,.72); background: radial-gradient(circle at 50% 0, rgba(104,91,255,.2), transparent 43%), #0c1126; box-shadow: 0 25px 80px rgba(45,39,160,.17); }
.popular-label { position:absolute; top:-13px; left:50%; transform:translateX(-50%); width:max-content; padding:5px 13px; border-radius:20px; background:linear-gradient(90deg,#7468ff,#586bfa); font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.11em; }
.price-top { display:flex; align-items:flex-start; justify-content:space-between; min-height:55px; }
.plan-screen-selector { display:grid; grid-template-columns:repeat(3,1fr); gap:3px; margin:7px 0 0; padding:3px; border:1px solid var(--line); border-radius:10px; background:rgba(0,0,0,.18); }
.plan-screen-selector button { min-width:0; min-height:35px; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:1px; padding:3px; border:0; border-radius:7px; background:transparent; color:#7f96ab; cursor:pointer; transition:background .2s ease,color .2s ease,box-shadow .2s ease; }
.plan-screen-selector button strong { font-size:12px; line-height:1; }
.plan-screen-selector button small { font-size:6px; font-weight:750; line-height:1; text-transform:uppercase; letter-spacing:.05em; }
.plan-screen-selector button.active { color:#fff; background:linear-gradient(135deg,#0b8dff,#1554d7); box-shadow:0 5px 15px rgba(8,124,240,.25); }
.plan-kicker { color:#757f98; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.14em; }
.price-card h3 { margin:1px 0 0; font-size:18px; }
.save-badge { padding:4px 7px; border:1px solid rgba(87,230,165,.22); border-radius:6px; color:var(--green); background:rgba(87,230,165,.06); font-size:8px; font-weight:800; text-transform:uppercase; }
.price { display:flex; align-items:flex-start; margin:18px 0 0; line-height:1; }
.plan-screen-selector + .price { margin-top:14px; }
.price > span { margin:6px 3px 0 0; color:#adb6cd; font-size:16px; }
.price strong { font-size:41px; letter-spacing:-.065em; }
.price small { align-self:flex-end; margin:0 0 4px 6px; color:#66738d; font-size:9px; font-weight:800; }
.monthly { min-height:22px; margin-top:8px; color:#68758e; font-size:11px; }.monthly span { color:#aab3c7; font-weight:700; }
.price-divider { height:1px; margin:20px 0; background:var(--line); }
.price-card ul { display:grid; gap:11px; margin:0 0 25px; padding:0; list-style:none; color:#aeb8cc; font-size:11px; }
.price-card li { display:flex; align-items:center; gap:8px; }.price-card li .icon { color:var(--green); width:13px; height:13px; }
.plan-button { width:100%; min-height:47px; margin-top:auto; padding:0 12px; font-size:12px; }
.checkout-trust-badges { display:block; width:min(72%, 168px); height:auto; margin:12px auto 0; object-fit:contain; opacity:.9; }
.guarantee { display:flex; align-items:center; justify-content:center; gap:5px; margin:13px 0 0; color:#5e6b85; font-size:8px; }.guarantee .icon { color:#7983a0; }
.pricing-note { max-width:610px; display:flex; align-items:center; gap:14px; margin:32px auto 0; padding:16px 20px; border:1px solid rgba(87,230,165,.14); border-radius:14px; background:rgba(87,230,165,.035); }
.pricing-note > span { width:35px; height:35px; display:grid; place-items:center; flex:none; border-radius:10px; color:var(--green); background:rgba(87,230,165,.08); }.pricing-note p { margin:0; color:#8e9ab2; font-size:11px; }.pricing-note strong { color:#cbd4e4; }

/* Savings calculator */
.savings-section { padding-block:72px; background:radial-gradient(circle at 50% 0, rgba(36,183,255,.14), transparent 44%), #030a14; }
.savings-shell { position:relative; max-width:980px; margin-inline:auto; padding:28px; overflow:hidden; border:1px solid rgba(82,225,255,.32); border-radius:22px; background:linear-gradient(145deg, #073456, #031625 68%); box-shadow:0 24px 70px rgba(0,0,0,.4), 0 0 45px rgba(24,161,241,.08); }
.savings-shell::before { content:""; position:absolute; top:-120px; right:-80px; width:270px; height:270px; border-radius:50%; background:rgba(36,183,255,.12); filter:blur(45px); pointer-events:none; }
.savings-heading { position:relative; display:flex; align-items:center; gap:14px; margin-bottom:20px; text-align:left; }
.savings-heading > div { max-width:570px; }
.savings-heading h2 { margin:1px 0 4px; font-size:36px; line-height:1.05; letter-spacing:-.05em; }
.savings-heading h2 span { color:#55d9ff; }
.savings-heading p { margin:0; color:#c4dbea; font-size:13px; }
.savings-icon { width:46px; height:46px; display:grid; place-items:center; flex:none; border:1px solid rgba(82,225,255,.45); border-radius:14px; color:#7fe7ff; background:rgba(82,225,255,.12); font-size:22px; font-weight:850; box-shadow:0 0 28px rgba(48,196,255,.16); }
.savings-guide { display:flex; align-items:center; gap:9px; margin-left:auto; padding:9px 12px; border:1px solid rgba(107,225,255,.28); border-radius:999px; background:rgba(0,7,14,.48); color:#dff8ff; font-size:10px; line-height:1.25; white-space:nowrap; }
.savings-guide i { width:8px; height:8px; flex:none; border-radius:50%; background:#55e7a2; box-shadow:0 0 0 5px rgba(85,231,162,.12), 0 0 16px rgba(85,231,162,.75); animation:savings-signal 1.8s ease-in-out infinite; }
.savings-guide strong { display:block; color:#68dcff; font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.savings-service-grid { position:relative; display:grid; grid-template-columns:repeat(4, 1fr); gap:9px; }
.savings-service-card { position:relative; min-height:96px; display:flex; align-items:flex-start; gap:10px; padding:14px 12px; border:2px solid transparent; border-radius:12px; color:#122334; background:#edf7fc; cursor:pointer; box-shadow:0 7px 18px rgba(0,0,0,.15); transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.savings-service-card:hover { transform:translateY(-2px); border-color:#55bdf5; background:#fff; box-shadow:0 12px 25px rgba(0,0,0,.2); }
.savings-service-card:has(input:checked) { border-color:#27bff4; background:#fff; box-shadow:0 0 0 2px rgba(76,204,245,.12), 0 10px 24px rgba(0,0,0,.18); }
.savings-service-card input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.savings-service-card input:focus-visible + .savings-check { outline:3px solid rgba(8,124,240,.28); outline-offset:3px; }
.savings-check { width:21px; height:21px; display:grid; place-items:center; flex:none; border:2px solid #54a9d7; border-radius:5px; background:#fff; }
.savings-service-card input:checked + .savings-check { border-color:#0789d7; background:#0789d7; }
.savings-service-card input:checked + .savings-check::after { content:""; width:9px; height:5px; border-left:2px solid #fff; border-bottom:2px solid #fff; transform:rotate(-45deg) translateY(-1px); }
.savings-service-copy { min-width:0; display:flex; flex-direction:column; }
.savings-service-copy strong { color:#075b92; font-size:11px; font-weight:850; line-height:1.25; text-transform:uppercase; letter-spacing:.015em; }
.savings-service-copy b { margin-top:3px; color:#087fc3; font-size:16px; line-height:1.15; }
.savings-service-copy b small { color:inherit; font-size:11px; }
.savings-service-copy > small { margin-top:4px; overflow:hidden; color:#51697b; font-size:8px; line-height:1.3; }
.savings-action-row { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:14px; }
.savings-action-row > p { display:flex; align-items:center; gap:8px; margin:0; color:#a9c8db; font-size:10px; }
.savings-action-row > p span { color:#72e4ff; font-size:16px; text-shadow:0 0 14px rgba(114,228,255,.8); }
.button.savings-calculate { position:relative; min-width:280px; min-height:54px; overflow:hidden; border-color:rgba(142,233,255,.42); border-radius:12px; background:linear-gradient(135deg,#00a6f7,#0757df); color:#fff; box-shadow:0 12px 32px rgba(0,135,241,.3); }
.savings-calculate::after { content:""; position:absolute; top:-70%; left:-35%; width:28%; height:240%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent); transform:rotate(20deg); animation:savings-shine 2.8s ease-in-out infinite; }
.savings-calculate > span { display:flex; flex-direction:column; align-items:flex-start; position:relative; z-index:1; line-height:1.1; }
.savings-calculate strong { font-size:13px; text-transform:uppercase; letter-spacing:.06em; }
.savings-calculate small { margin-top:3px; color:#ccefff; font-size:9px; font-weight:700; }
.savings-calculate .icon { position:relative; z-index:1; }
.button.savings-calculate:hover { background:linear-gradient(135deg,#14baff,#1267ee); box-shadow:0 16px 38px rgba(0,151,255,.42); }
.savings-results { display:grid; grid-template-columns:1fr 1.05fr; margin-top:16px; overflow:hidden; border:1px solid rgba(255,255,255,.2); border-radius:15px; background:rgba(9,88,145,.72); }
.savings-comparison { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:10px; padding:20px; }
.savings-comparison > div { display:flex; flex-direction:column; align-items:center; text-align:center; }
.savings-comparison span { color:#d9effc; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.savings-comparison strong { margin-top:1px; color:#fff; font-size:27px; line-height:1.2; letter-spacing:-.045em; }
.savings-comparison small { color:#a9d7ef; font-size:8px; text-transform:uppercase; letter-spacing:.08em; }
.savings-versus { width:31px; height:31px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.25); border-radius:50%; background:rgba(0,0,0,.15); }
.savings-total { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:18px 20px; color:#183147; background:#f7fbff; text-align:center; }
.savings-total > span { color:#187bac; font-size:9px; font-weight:850; text-transform:uppercase; letter-spacing:.09em; }
.savings-total > strong { margin-top:1px; color:#037ec5; font-size:34px; line-height:1.08; letter-spacing:-.055em; }
.savings-total > small { margin:3px 0 11px; color:#4d687a; font-size:9px; }
.savings-total .button { min-width:245px; min-height:43px; font-size:11px; }
.savings-disclaimer { margin:9px 0 0; color:#8fb5ca; font-size:8px; text-align:center; }
.savings-results.is-updating { animation:savings-pop .32s ease; }
@keyframes savings-pop { 50% { transform:scale(1.008); box-shadow:0 14px 34px rgba(0,0,0,.18); } }
@keyframes savings-shine { 0%,55% { left:-35%; opacity:0; } 65% { opacity:1; } 90%,100% { left:120%; opacity:0; } }
@keyframes savings-signal { 50% { transform:scale(1.2); box-shadow:0 0 0 8px rgba(85,231,162,0),0 0 20px rgba(85,231,162,.9); } }

/* Steps and comparison */
.how-section { padding-block:88px; overflow:hidden; background:radial-gradient(circle at 50% 0,rgba(36,183,255,.12),transparent 40%),#070b19; }
.how-heading { max-width:720px; margin:0 auto 36px; text-align:center; }
.how-heading h2 { margin:8px 0 10px; font-size:clamp(34px,4vw,50px); line-height:1.05; letter-spacing:-.05em; }
.how-heading h2 span { color:#56ceff; }
.how-heading p { max-width:610px; margin:0 auto; color:var(--muted); font-size:14px; }
.steps { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; }
.step { min-height:215px; position:relative; padding:24px 18px 20px; border:1px solid var(--line); border-radius:17px; background:linear-gradient(150deg,rgba(255,255,255,.035),rgba(255,255,255,.012)); transition:transform .25s ease,border-color .25s ease,background .25s ease; }
.step:hover { transform:translateY(-5px); border-color:rgba(65,190,255,.48); background:linear-gradient(150deg,rgba(23,139,211,.13),rgba(255,255,255,.012)); }
.step::after { content:""; position:absolute; z-index:2; left:calc(100% + 1px); top:47px; width:12px; height:1px; background:linear-gradient(90deg,#239ddd,#52d9ff); }
.step:last-child::after { display:none; }
.step > span { position:absolute; right:15px; top:14px; color:rgba(132,220,255,.42); font-size:10px; font-weight:900; letter-spacing:.08em; }
.step > i { width:45px; height:45px; display:grid; place-items:center; margin-bottom:24px; border:1px solid rgba(71,197,255,.22); border-radius:13px; color:#69d7ff; background:rgba(28,159,230,.1); box-shadow:0 9px 24px rgba(0,0,0,.16); font-style:normal; }.step > i .icon { width:21px;height:21px; }
.step h3 { margin:0 0 8px; font-size:15px; line-height:1.25; }.step p { margin:0; color:#8fa5b9; font-size:10px; line-height:1.55; }
.how-cta { width:max-content; max-width:100%; display:flex; align-items:center; justify-content:center; gap:22px; margin:24px auto 0; padding:9px 10px 9px 17px; border:1px solid rgba(71,197,255,.2); border-radius:14px; background:rgba(3,18,31,.65); }
.how-cta > span { display:flex; align-items:center; gap:7px; color:#b9d3e3; font-size:10px; }.how-cta > span .icon { color:#62e3aa; }
.comparison-section { background:var(--bg-deep); }
.comparison-card { display:grid; grid-template-columns:.82fr 1.18fr; gap:70px; align-items:center; padding:65px 70px; border:1px solid var(--line); border-radius:28px; background:radial-gradient(circle at 0 0, rgba(104,89,255,.14), transparent 40%),#090e20; box-shadow:var(--shadow); }
.comparison-copy h2 { font-size:44px; }.comparison-copy p { margin:20px 0 28px; color:var(--muted); font-size:14px; }
.comparison-table { border:1px solid var(--line); border-radius:15px; overflow:hidden; }
.comparison-table > div { display:grid; grid-template-columns:1.4fr .8fr .8fr; min-height:51px; align-items:center; border-top:1px solid var(--line); color:#96a2ba; font-size:11px; }
.comparison-table > div:first-child { border-top:0; }.comparison-table span,.comparison-table b,.comparison-table em { height:100%; display:flex; align-items:center; justify-content:center; padding:10px 13px; border-left:1px solid var(--line); font-style:normal; text-align:center; }.comparison-table span:first-child { justify-content:flex-start; border-left:0; }
.comparison-table b { color:var(--green); background:rgba(99,91,255,.07); }.comparison-table b .icon { width:15px;height:15px; }.comparison-table em { color:#727e97; }
.comparison-head { background:rgba(255,255,255,.025); font-size:10px!important; text-transform:uppercase; letter-spacing:.08em; }.comparison-head b { color:#a9a6ff; }

/* FAQ / CTA / footer */
.faq-section { padding-block:72px; background:#070b19; }
.faq-bar { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:18px; padding:17px 20px; border:1px solid var(--line); border-radius:16px; background:linear-gradient(135deg,rgba(36,183,255,.07),rgba(255,255,255,.018)); }
.faq-bar-copy { display:flex; align-items:center; gap:20px; min-width:0; }
.faq-bar .kicker { flex:none; white-space:nowrap; }
.faq-bar h2 { margin:0; font-size:clamp(22px,2.7vw,34px); line-height:1.05; letter-spacing:-.04em; }
.faq-support { flex:none; min-height:44px; padding:0 18px; gap:9px; white-space:nowrap; }
.faq-support .icon { width:17px; height:17px; }
.accordion { max-width:100%; }
.accordion details { border-bottom:1px solid var(--line); }.accordion details:first-child { border-top:1px solid var(--line); }
.accordion summary { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:20px; cursor:pointer; list-style:none; font-size:15px; font-weight:700; }.accordion summary::-webkit-details-marker { display:none; }
.accordion summary span { position:relative; width:25px;height:25px; flex:none; border:1px solid var(--line); border-radius:50%; }.accordion summary span::before,.accordion summary span::after { content:""; position:absolute; left:7px;right:7px;top:11px;height:1px;background:#b2bbcf; }.accordion summary span::after { transform:rotate(90deg); transition:transform .2s; }.accordion details[open] summary span::after { transform:rotate(0); }
.accordion details p { max-width:670px; margin:-4px 50px 25px 0; color:var(--muted); font-size:13px; }
.final-cta { position:relative; overflow:hidden; padding:105px 0; border-top:1px solid var(--line); background:#050816; }
.final-cta::before { content:"";position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:55px 55px; }
.final-orb { position:absolute;border-radius:50%;filter:blur(90px); }.orb-one { width:380px;height:380px;left:4%;top:10%;background:rgba(55,81,238,.18); }.orb-two { width:320px;height:320px;right:5%;bottom:-20%;background:rgba(187,54,135,.14); }
.final-cta-inner { position:relative;z-index:2;text-align:center; }.final-cta h2 { max-width:830px;margin:12px auto 15px;font-size:clamp(38px,5vw,65px);line-height:1.05;letter-spacing:-.055em; }.final-cta p { max-width:650px;margin:0 auto 30px;color:var(--muted); }.final-cta-inner > div { display:flex;align-items:center;justify-content:center;gap:22px; }.final-cta-inner > div > span { display:flex;align-items:center;gap:7px;color:#7c88a1;font-size:11px; }.final-cta-inner > div > span .icon { color:var(--green); }
.site-footer { padding:70px 0 25px;border-top:1px solid var(--line);background:var(--bg-deep); }
.footer-grid { display:grid;grid-template-columns:1.6fr .65fr .8fr 1fr;gap:65px;padding-bottom:55px; }.footer-brand p,.footer-grid > div:last-child p { max-width:310px;margin:20px 0;color:#6e7a94;font-size:12px; }.footer-grid h3 { margin:4px 0 18px;color:#aeb7ca;font-size:11px;text-transform:uppercase;letter-spacing:.12em; }.footer-grid > div:not(.footer-brand) > a:not(.button) { display:block;margin:10px 0;color:#71809a;font-size:12px;transition:color .2s; }.footer-grid > div:not(.footer-brand) > a:not(.button):hover { color:white; }.footer-bottom { display:flex;justify-content:space-between;padding-top:23px;border-top:1px solid var(--line);color:#4f5c76;font-size:10px; }
.default-content { min-height:70vh;padding-top:150px;padding-bottom:80px; }

/* WooCommerce */
.store-page { min-height: 75vh; padding-top: 140px; padding-bottom: 100px; }
.store-page .woocommerce-products-header__title,
.store-page > h1 { margin: 0 0 35px; font-size: clamp(38px, 5vw, 64px); letter-spacing: -.05em; }
.woocommerce .woocommerce-breadcrumb { margin-bottom: 25px; color: var(--muted); font-size: 12px; }
.woocommerce .woocommerce-breadcrumb a { color: #9995ff; }
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering { margin-bottom: 30px; color: var(--muted); font-size: 12px; }
.woocommerce .woocommerce-ordering select { min-height: 42px; padding: 0 38px 0 13px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); color: var(--text); }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin: 0; }
.woocommerce ul.products::before,
.woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product { width: auto; float: none; margin: 0; padding: 25px; border: 1px solid var(--line); border-radius: 19px; background: linear-gradient(160deg, rgba(255,255,255,.04), rgba(255,255,255,.015)); }
.woocommerce ul.products li.product a img { display:block; width:100%; aspect-ratio:1; margin:0 0 18px; border:1px solid var(--line); border-radius:14px; object-fit:cover; background:var(--surface); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0; color: var(--text); font-size: 18px; line-height: 1.35; }
.woocommerce ul.products li.product .price { margin: 18px 0; color: #9a96ff; font-size: 23px; font-weight: 800; }
.woocommerce ul.products li.product .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: 0 20px; border-radius: 10px; background: linear-gradient(135deg, #7468ff, #496df8); color: #fff; font-size: 13px; font-weight: 750; }
.woocommerce div.product { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; }
.woocommerce div.product div.images,
.woocommerce div.product div.summary { width: auto; float: none; }
.woocommerce div.product div.images { min-height:420px; display:grid; place-items:center; overflow:hidden; padding:14px; border:1px solid var(--line); border-radius:22px; background:radial-gradient(circle,rgba(35,164,238,.18),transparent 55%),var(--surface); }
.woocommerce div.product div.images::after { display:none; }
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper { display:block; width:100%; margin:0; }
.woocommerce div.product div.images .woocommerce-product-gallery__image,
.woocommerce div.product div.images .woocommerce-product-gallery__image a { display:block; width:100%; line-height:0; }
.woocommerce div.product div.images .woocommerce-product-gallery__image img { display:block; width:100%; height:auto; max-height:none; margin:0; border-radius:15px; object-fit:contain; object-position:center; }
.woocommerce div.product .product_title { font-size: clamp(34px,4vw,55px); line-height: 1.08; letter-spacing: -.05em; }
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: #9b97ff; font-size: 30px; font-weight: 800; }
.woocommerce div.product .woocommerce-product-details__short-description { color: var(--muted); }
.woocommerce div.product form.cart { display: flex; gap: 10px; }
.woocommerce .quantity .qty { min-height: 46px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); color: #fff; }
.woocommerce div.product .woocommerce-tabs { grid-column: 1/-1; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-color: var(--line); }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border-color: var(--line); background: var(--surface); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: var(--surface-2); color: #fff; }
.woocommerce-message,
.woocommerce-info,
.woocommerce-error { border: 1px solid var(--line); border-top-color: var(--accent); border-radius: 12px; background: var(--surface); color: #dfe4f1; }
.woocommerce-message::before,
.woocommerce-info::before { color: #9d99ff; }
.woocommerce table.shop_table { overflow: hidden; border-color: var(--line); border-radius: 14px; }
.woocommerce table.shop_table th,
.woocommerce table.shop_table td { border-color: var(--line); }
.woocommerce table.shop_table a { color: #aaa7ff; }
.woocommerce-cart table.cart img { display:block; width:64px; border-radius:9px; }
.woocommerce-cart table.cart .product-thumbnail { width:80px; }
.woocommerce a.remove { width:34px; height:34px; display:inline-grid; place-items:center; border:1px solid rgba(255,255,255,.14); border-radius:50%; background:rgba(255,255,255,.035); color:#8fa8bb!important; font-size:0; line-height:1; transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease; }
.woocommerce a.remove::before { content:"×"; font-size:24px; font-weight:400; line-height:1; transform:translateY(-1px); }
.woocommerce a.remove:hover { border-color:rgba(255,91,126,.55); background:rgba(255,73,114,.1); color:#ff7595!important; transform:scale(1.05); }
.wc-block-cart-item__remove-link { width:34px; height:34px; display:inline-grid!important; place-items:center; padding:0!important; overflow:hidden; border:1px solid rgba(255,255,255,.14)!important; border-radius:50%; background:rgba(255,255,255,.035)!important; color:#8fa8bb!important; font-size:0!important; text-decoration:none!important; }
.wc-block-cart-item__remove-link::before { content:"×"; font-size:24px; line-height:1; transform:translateY(-1px); }
.wc-block-cart-item__remove-link:hover { border-color:rgba(255,91,126,.55)!important; background:rgba(255,73,114,.1)!important; color:#ff7595!important; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single { min-height: 47px; padding: 10px 13px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); color: #fff; }
.select2-container--default .select2-selection--single .select2-selection__rendered { color: #fff; line-height: 25px; }
.select2-dropdown { border-color: var(--line); background: var(--surface); color: #fff; }
.woocommerce-checkout #payment { background: var(--surface); }
.woocommerce-checkout #payment ul.payment_methods { border-color: var(--line); }
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout { color: var(--text); }
.wc-block-components-sidebar,
.wc-block-components-totals-wrapper,
.wc-block-cart-items,
.wc-block-checkout__terms,
.wc-block-checkout__actions { border-color: var(--line) !important; }
.wc-block-components-product-name,
.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value,
.wc-block-components-order-summary-item__description { color: var(--text) !important; }
.wc-block-components-product-metadata,
.wc-block-components-totals-coupon__content,
.wc-block-checkout__shipping-method-option { color: var(--muted); }
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-address-form select,
.wc-block-components-textarea { border-color: var(--line) !important; border-radius: 9px !important; background: var(--surface) !important; color: var(--text) !important; }
.wc-block-components-text-input label,
.wc-block-components-combobox .wc-block-components-combobox-control label { color: var(--muted) !important; }
.wc-block-components-button:not(.is-link) { min-height: 50px; border: 0; border-radius: 10px; background: linear-gradient(135deg, #7468ff, #496df8); color: #fff; font-weight: 800; }
.wc-block-components-order-summary { border-color: var(--line) !important; border-radius: 13px; background: rgba(255,255,255,.018); }
.wc-block-components-order-summary-item { border-color: var(--line) !important; }
.wc-block-components-order-summary-item__image > img { border-radius: 8px; background: var(--surface-2); }
.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 { padding: 25px; border: 1px solid var(--line); border-radius: 15px; background: rgba(255,255,255,.02); }
.woocommerce-account .woocommerce-MyAccount-navigation { width: 24%; }
.woocommerce-account .woocommerce-MyAccount-content { width: 72%; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; border: 1px solid var(--line); border-radius: 13px; list-style: none; overflow: hidden; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; padding: 12px 15px; border-bottom: 1px solid var(--line); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background: rgba(105,92,255,.14); color: #aaa7ff; }

/* Motion */
.reveal { opacity:0; transform:translateY(20px); transition:opacity .65s ease,transform .65s ease; }.reveal.visible { opacity:1;transform:none; }
@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.live-dot,.now-playing>i{animation:none} }
@media (prefers-reduced-motion: reduce) { .sports-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.sports-marquee-track{animation:none;will-change:auto} }
@media (prefers-reduced-motion: reduce) { .movie-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.movie-marquee-track{animation:none;will-change:auto} }

@media (max-width: 1100px) {
	.hero-copy{width:100%}.sports-card-grid{grid-template-columns:repeat(3,1fr)}.sport-image-card:nth-child(5){grid-column:auto}.movie-ranking-grid{grid-template-columns:repeat(4,1fr)}.movie-package-cta{grid-template-columns:auto 1fr auto}.movie-package-cta .button{grid-column:2/-1}.feature-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1.2fr .8fr}.content-card.family{grid-column:1/-1;min-height:390px}.family .content-art{height:62%}.savings-service-grid{grid-template-columns:repeat(2,1fr)}.pricing-grid{grid-template-columns:repeat(2,1fr);gap:20px}.device-layout{gap:20px}.tv-device{width:460px}.phone-device{right:0}.comparison-card{gap:40px;padding:50px 45px}.faq-layout{gap:55px}
}

@media (max-width: 820px) {
	.section{padding:82px 0}.site-nav{position:fixed;inset:82px 0 auto;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:18px 20px 25px;border-bottom:1px solid var(--line);background:rgba(4,7,18,.98);transform:translateY(-130%);opacity:0;pointer-events:none;transition:.3s ease}.site-nav.open{transform:none;opacity:1;pointer-events:auto}.site-nav>a{padding:14px}.site-nav .button{margin-top:8px}.menu-toggle{display:grid}.menu-toggle.active .menu-open{display:none}.menu-toggle.active .menu-close{display:block}.hero{min-height:920px}.hero-inner{min-height:760px;height:auto;align-items:center;padding-top:120px}.hero-copy{width:100%;max-width:680px}.hero-visual{inset:0;width:100%;height:100%;opacity:1}.hero-visual img{object-position:62% center}.hero-visual::before{background:linear-gradient(180deg,rgba(3,5,14,.35),rgba(3,5,14,.58) 50%,#03050e 100%),radial-gradient(circle at center,rgba(3,5,14,.18),rgba(3,5,14,.7) 90%)}.hero-stats{grid-template-columns:repeat(2,1fr);gap:20px}.hero-stats>div:nth-child(3){padding-left:0;border-left:0}.ticker-track{justify-content:flex-start}.split-heading{grid-template-columns:1fr;gap:20px}.split-heading p{margin:0}.trending-title-row{grid-template-columns:100px 1fr;gap:25px}.trending-number{height:100px}.trending-number strong{font-size:75px}.movie-ranking-grid{grid-template-columns:repeat(3,1fr)}.device-layout{grid-template-columns:1fr}.device-stage{min-height:500px}.pricing-grid{grid-template-columns:repeat(2,1fr)}.comparison-card{grid-template-columns:1fr}.faq-layout{grid-template-columns:1fr}.faq-intro{position:static}.steps{grid-template-columns:1fr}.step{min-height:230px;border-left:0;border-top:1px solid var(--line)}.step:first-child{border-top:0}.footer-grid{grid-template-columns:1.3fr 1fr 1fr;gap:40px}.footer-grid>div:last-child{grid-column:1/-1}
}

@media (max-width: 600px) {
	.container{width:min(calc(100% - 28px),var(--max))}.header-inner{height:72px}.site-nav{inset:72px 0 auto}.hero{min-height:900px}.hero-inner{min-height:735px;height:auto;padding-top:105px;padding-bottom:25px}.hero h1{font-size:48px}.hero-lead{font-size:16px}.hero-actions{align-items:center;flex-direction:column;gap:18px}.hero-trust{flex-direction:column;align-items:center;gap:8px}.hero-visual{inset:0;width:100%;height:100%}.hero-visual img{object-position:68% center;transform:scale(1.04)}.hero-stats{padding-top:20px}.hero-stats>div{padding-left:16px}.hero-stats strong{font-size:21px}.ticker-track{gap:19px;min-height:57px}.section-heading{margin-bottom:38px}.section-heading h2,.device-copy h2,.comparison-copy h2,.faq-intro h2{font-size:36px}.sports-card-grid{display:flex;gap:13px;margin-right:-14px;padding-right:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.sports-card-grid::-webkit-scrollbar{display:none}.sport-image-card{min-width:76vw;min-height:420px;scroll-snap-align:start}.trending-title-row{grid-template-columns:1fr;gap:5px}.trending-number{height:auto;justify-content:flex-start;border-right:0}.trending-number small{align-self:center;margin:0;transform:none}.trending-number strong{font-size:64px}.trending-title-row h2{font-size:40px}.movie-ranking-grid{grid-template-columns:repeat(2,1fr);gap:12px}.movie-poster-copy h3{font-size:14px}.movie-poster-copy p{font-size:7px}.movie-score-row{padding:8px}.movie-stars{font-size:8px}.movie-package-cta{grid-template-columns:auto 1fr;padding:20px}.movie-cta-price{grid-column:1/-1;padding:15px 0;border-inline:0;border-block:1px solid var(--line)}.movie-package-cta .button{grid-column:1/-1}.feature-grid,.content-grid,.pricing-grid{grid-template-columns:1fr}.feature-card{min-height:285px}.icon-box{margin-bottom:38px}.content-card,.content-card.family{min-height:430px;grid-column:auto}.savings-shell{padding:24px 17px}.savings-heading{justify-content:flex-start;gap:12px}.savings-icon{width:44px;height:44px;border-radius:13px}.savings-heading h2{font-size:38px}.savings-heading p{font-size:12px}.savings-service-grid{grid-template-columns:1fr;gap:10px}.savings-service-card{min-height:126px;padding:19px 16px}.savings-comparison{grid-template-columns:1fr;gap:14px;padding:23px 18px}.savings-versus{width:34px;height:34px}.savings-comparison strong{font-size:34px}.savings-total{padding:25px 16px}.savings-total>strong{font-size:38px}.savings-total .button{width:100%;min-width:0;padding-inline:14px;font-size:11px}.device-stage{min-height:390px;margin-top:15px}.tv-device{width:340px}.tv-screen{height:200px;padding:16px}.screen-sun{right:45px;top:42px;width:40px;height:40px}.tv-screen strong{left:20px;bottom:18px;font-size:18px}.phone-device{width:85px;height:170px;right:-2px;bottom:32px;border-radius:18px}.phone-screen{border-radius:13px;padding:9px}.ambient-ring{width:330px;height:330px}.tag-one{left:0;top:55px}.tag-two{right:-5px;top:100px}.device-selector{width:100%;overflow-x:auto;justify-content:flex-start}.device-selector button{min-width:105px}.price-card{padding:30px}.comparison-card{padding:35px 22px}.comparison-table{overflow-x:auto}.comparison-table>div{min-width:500px}.final-cta-inner>div{flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.hero-stats small{font-size:9px}
}

@media (max-width: 600px) {
	.faq-section{padding-block:54px}.faq-bar{align-items:stretch;flex-direction:column;gap:14px;padding:16px}.faq-bar-copy{display:block}.faq-bar h2{margin-top:6px;font-size:26px}.faq-support{width:100%}.sports-marquee{margin-inline:-14px;padding-inline:14px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
}

@media (max-width: 900px) {
	.woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }
	.woocommerce div.product { grid-template-columns: 1fr; }
	.woocommerce div.product div.images { min-height: 280px; }
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content { width: 100%; float: none; }
}

@media (max-width: 540px) {
	.woocommerce ul.products { grid-template-columns: 1fr; }
	.store-page { padding-top: 110px; }
}

/* Black + electric-blue palette refinements */
.brand-mark,
.movie-cta-icon { background: linear-gradient(145deg, #12a9ff, #0755d9); box-shadow: 0 8px 25px rgba(16, 139, 255, .3); }
.button,
.wc-block-components-button:not(.is-link) { background: linear-gradient(135deg, #0b8dff, #1554d7); box-shadow: 0 12px 34px rgba(8, 124, 240, .28); }
.button:hover { box-shadow: 0 18px 42px rgba(8, 124, 240, .4); }
.button-outline:hover { border-color: rgba(36, 183, 255, .8); background: rgba(36, 183, 255, .1); }
.kicker, .eyebrow, .accent { color: #65cfff; }
.brand-name span { color: #4db9ff; }
.hero h1 span,
.section-heading h2 span,
.device-copy h2 span,
.comparison-copy h2 span,
.faq-bar h2 span,
.trending-title-row h2 span { background: linear-gradient(90deg, #f8fcff, #41beff); color: transparent; background-clip: text; -webkit-background-clip: text; }
.live-dot { background: #39a9ff; box-shadow: 0 0 0 5px rgba(57, 169, 255, .12); }
.icon-box { border-color: rgba(36, 183, 255, .25); background: rgba(36, 183, 255, .1); color: #67d5ff; }
.price-card.popular { border-color: rgba(36, 183, 255, .72); background: radial-gradient(circle at 50% 0, rgba(36, 183, 255, .2), transparent 43%), #061423; box-shadow: 0 25px 80px rgba(8, 92, 160, .2); }
.popular-label { background: linear-gradient(90deg, #0b8dff, #21c5ff); }
.movie-rank-card .movie-rank { background: linear-gradient(145deg, #0b8dff, #1554d7); }

/* Floating support chat */
.support-chat-widget { position:fixed; z-index:1200; right:22px; bottom:22px; min-height:62px; display:flex; align-items:center; gap:11px; padding:8px 17px 8px 8px; border:1px solid rgba(111,224,255,.38); border-radius:18px; background:rgba(3,18,31,.94); box-shadow:0 16px 48px rgba(0,0,0,.48),0 0 30px rgba(15,153,255,.16); backdrop-filter:blur(16px); transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.support-chat-widget:hover { transform:translateY(-4px); border-color:rgba(111,224,255,.72); box-shadow:0 20px 55px rgba(0,0,0,.55),0 0 36px rgba(15,153,255,.28); }
.support-chat-widget:focus-visible { outline:3px solid rgba(82,225,255,.4); outline-offset:4px; }
.support-chat-icon { position:relative; width:46px; height:46px; display:grid; place-items:center; flex:none; border-radius:14px; color:#fff; background:linear-gradient(145deg,#19bbff,#0865de); box-shadow:0 8px 24px rgba(10,137,239,.4); }
.support-chat-icon .icon { width:23px; height:23px; }
.support-chat-icon i { position:absolute; right:-2px; top:-2px; width:11px; height:11px; border:2px solid #051423; border-radius:50%; background:#50e395; box-shadow:0 0 12px rgba(80,227,149,.85); animation:chat-online 2s ease-in-out infinite; }
.support-chat-copy { display:flex; flex-direction:column; line-height:1.2; }
.support-chat-copy small { color:#66e3a5; font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.support-chat-copy strong { margin-top:3px; color:#f5fbff; font-size:13px; white-space:nowrap; }
@keyframes chat-online { 50% { transform:scale(1.18); box-shadow:0 0 0 6px rgba(80,227,149,0),0 0 17px rgba(80,227,149,.9); } }

/* Compact savings calculator responsiveness */
@media (max-width:1100px) { .savings-shell .savings-service-grid{grid-template-columns:repeat(4,1fr)} }
@media (max-width:820px) {
	.savings-shell{padding:24px}.savings-heading{align-items:flex-start;flex-wrap:wrap}.savings-heading>div{flex:1;min-width:260px}.savings-guide{margin-left:60px}.savings-shell .savings-service-grid{grid-template-columns:repeat(2,1fr)}.savings-results{grid-template-columns:1fr}.savings-action-row{align-items:stretch;flex-direction:column;gap:10px}.button.savings-calculate{width:100%}
}
@media (max-width:600px) {
	.savings-section{padding-block:54px}.savings-shell{padding:20px 14px;border-radius:18px}.savings-heading{gap:10px;margin-bottom:16px}.savings-heading>div{min-width:calc(100% - 56px)}.savings-heading h2{font-size:30px}.savings-heading p{font-size:11px}.savings-guide{width:100%;justify-content:center;margin:2px 0 0}.savings-shell .savings-service-grid{grid-template-columns:repeat(2,1fr);gap:7px}.savings-service-card{min-width:0;min-height:99px;padding:12px 9px;gap:7px}.savings-check{width:19px;height:19px}.savings-service-copy strong{font-size:9px}.savings-service-copy b{font-size:15px}.savings-service-copy>small{font-size:7px}.savings-action-row>p{justify-content:center}.button.savings-calculate{min-width:0}.savings-results{grid-template-columns:1fr}.savings-comparison{grid-template-columns:1fr auto 1fr;gap:7px;padding:17px 10px}.savings-comparison strong{font-size:24px}.savings-total{padding:18px 12px}.savings-total>strong{font-size:31px}.support-chat-widget{right:12px;bottom:12px;min-height:54px;padding:6px 13px 6px 6px;border-radius:16px}.support-chat-icon{width:41px;height:41px;border-radius:12px}.support-chat-copy strong{font-size:11px}.support-chat-copy small{font-size:8px}
}
@media (prefers-reduced-motion:reduce) { .savings-guide i,.savings-calculate::after,.support-chat-icon i{animation:none} }

@media (max-width:1000px) {
	.steps{grid-template-columns:repeat(3,1fr)}.step::after{display:none}
}
@media (max-width:820px) {
	.how-section{padding-block:70px}.steps{grid-template-columns:repeat(2,1fr)}.step,.step:first-child{min-height:190px;border:1px solid var(--line)}
}
@media (max-width:600px) {
	.how-heading{margin-bottom:25px}.how-heading h2{font-size:32px}.how-heading p{font-size:12px}.steps{grid-template-columns:1fr;gap:9px}.step,.step:first-child{min-height:0;padding:18px 58px 18px 70px}.step>i{position:absolute;left:15px;top:18px;width:40px;height:40px;margin:0}.step>span{right:15px;top:17px}.step h3{font-size:14px}.step p{font-size:10px}
}

@media (max-width:600px) {
	.trending-movies-section{padding-block:52px}.trending-title-row{margin-bottom:20px}.movie-marquee{margin-inline:-14px;padding-inline:14px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.movie-marquee::-webkit-scrollbar{display:none}.movie-marquee:active .movie-marquee-track{animation-play-state:paused}.movie-rank-card{width:150px;min-width:150px}.movie-poster-copy{left:11px;right:11px;bottom:10px}.movie-poster-copy h3{font-size:12px}.movie-included{right:7px;top:8px}.movie-rank{left:8px;width:32px;height:44px;font-size:17px}.movie-score-row strong{font-size:14px}.movie-stars{font-size:7px}.movie-package-cta{margin-top:15px;padding:16px}
	.sports-marquee-group{gap:12px;padding-right:12px}.sport-image-card{width:150px;min-width:150px;height:225px;min-height:225px;border-radius:16px}
}

/* Plan selection popup */
body.plan-modal-open{overflow:hidden}.plan-modal[hidden]{display:none}.plan-modal{position:fixed;z-index:2500;inset:0;display:grid;place-items:center;padding:22px;background:rgba(0,4,10,.78);backdrop-filter:blur(12px);opacity:0;transition:opacity .22s ease}.plan-modal.open{opacity:1}.plan-modal-panel{position:relative;width:min(940px,100%);max-height:calc(100vh - 44px);overflow-y:auto;padding:30px;border:1px solid rgba(83,205,255,.32);border-radius:24px;background:radial-gradient(circle at 50% 0,rgba(23,158,233,.18),transparent 35%),#05111d;box-shadow:0 35px 110px rgba(0,0,0,.72);transform:translateY(16px) scale(.985);transition:transform .22s ease}.plan-modal.open .plan-modal-panel{transform:none}.plan-modal-close{position:absolute;z-index:2;right:16px;top:16px;width:40px;height:40px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.035);color:#b9cddd;font-size:25px;line-height:1;cursor:pointer}.plan-modal-close:hover{border-color:rgba(255,96,130,.52);color:#ff7898;background:rgba(255,73,114,.08)}.plan-modal-heading{max-width:650px;margin:0 auto 19px;text-align:center}.plan-modal-heading h2{margin:5px 0 6px;font-size:clamp(30px,4vw,43px);line-height:1.05;letter-spacing:-.05em}.plan-modal-heading h2 span{color:#53cbff}.plan-modal-heading p{margin:0;color:#9bb3c7;font-size:12px}.plan-modal-devices{width:max-content;max-width:100%;display:flex;gap:5px;margin:0 auto 20px;padding:5px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025)}.plan-modal-devices button{min-width:105px;padding:9px 14px;border:0;border-radius:8px;background:transparent;color:#92a9bc;font-size:11px;font-weight:750;cursor:pointer}.plan-modal-devices button.active{color:#fff;background:#087ce4;box-shadow:0 7px 18px rgba(8,124,228,.27)}.plan-modal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.plan-modal-card{position:relative;display:flex;flex-direction:column;padding:20px 16px 16px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(155deg,rgba(255,255,255,.045),rgba(255,255,255,.014));text-align:center}.plan-modal-card.featured{border-color:rgba(65,190,255,.68);background:radial-gradient(circle at 50% 0,rgba(36,183,255,.17),transparent 50%),#071b2d}.plan-modal-popular{position:absolute;left:50%;top:-9px;padding:3px 9px;border-radius:999px;background:linear-gradient(90deg,#078bf1,#20b9f3);color:#fff;font-size:7px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transform:translateX(-50%);white-space:nowrap}.plan-modal-card h3{margin:2px 0 10px;font-size:16px}.plan-modal-price{display:flex;align-items:flex-start;justify-content:center;color:#fff;line-height:1}.plan-modal-price sup{margin-top:5px;color:#75d9ff;font-size:12px}.plan-modal-price strong{font-size:30px;letter-spacing:-.06em}.plan-modal-card>small{min-height:31px;margin:5px 0 13px;color:#8da8ba;font-size:8px;line-height:1.4}.plan-modal-card .button{width:100%;min-height:40px;margin-top:auto;padding-inline:10px;font-size:9px}.plan-modal-trust{display:flex;align-items:center;justify-content:center;gap:7px;margin:17px 0 0;color:#8eabba;font-size:9px;text-align:center}.plan-modal-trust .icon{color:#55dda1}
@media (max-width:820px){.plan-modal-grid{grid-template-columns:repeat(2,1fr)}.plan-modal-panel{padding:27px 20px}}
@media (max-width:600px){.plan-modal{padding:9px}.plan-modal-panel{max-height:calc(100vh - 18px);padding:25px 14px 18px;border-radius:18px}.plan-modal-close{right:10px;top:10px;width:36px;height:36px}.plan-modal-heading{padding-inline:25px}.plan-modal-heading h2{font-size:29px}.plan-modal-heading p{font-size:10px}.plan-modal-devices{width:100%}.plan-modal-devices button{min-width:0;flex:1;padding-inline:6px}.plan-modal-grid{grid-template-columns:1fr;gap:8px}.plan-modal-card{padding:15px}.plan-modal-card h3{margin-bottom:5px}.plan-modal-price strong{font-size:27px}.plan-modal-card>small{min-height:0;margin:3px 0 10px}.plan-modal-trust{align-items:flex-start}}

/* Phone-first centering and touch-friendly layout */
@media (max-width:600px) {
	html,body{width:100%;max-width:100%;overflow-x:hidden}.container{width:min(calc(100% - 28px),var(--max))}.section{padding-block:58px}.site-nav{text-align:center}.site-nav>a{width:100%;text-align:center}.site-nav .cart-link{width:44px;margin:10px auto 0}.site-nav .button{width:100%}
	.hero{min-height:850px}.hero-inner{min-height:700px;padding-top:96px}.hero-copy{margin-inline:auto;text-align:center}.hero h1{font-size:clamp(40px,12vw,48px);line-height:1.02}.hero-lead{max-width:500px;margin-inline:auto;font-size:15px}.hero-actions{width:100%;margin-top:25px}.hero-actions .button{width:min(100%,320px)}.hero-trust{justify-content:center;text-align:center}.hero-stats{text-align:center}.hero-stats>div,.hero-stats>div:nth-child(3){padding-left:0;border-left:0}.hero-stats>div:nth-child(even){border-left:1px solid var(--line)}
	.section-heading,.split-heading,.sports-gallery-section .split-heading{text-align:center}.split-heading>div,.split-heading>p{margin-inline:auto}.split-heading p{max-width:560px}.kicker{justify-content:center}.trending-title-row{text-align:center}.trending-number{justify-content:center}.trending-title-row p{margin-inline:auto}.sports-disclaimer{text-align:center}
	.movie-package-cta{display:flex;align-items:center;flex-direction:column;gap:14px;text-align:center}.movie-cta-icon{margin-inline:auto}.movie-cta-price{width:100%;padding:13px 0}.movie-package-cta .button{width:100%}
	.savings-heading{align-items:center;flex-direction:column;text-align:center}.savings-heading>div{min-width:0}.savings-icon{margin-inline:auto}.savings-guide{margin-inline:auto}.savings-action-row{text-align:center}.savings-action-row>p{width:100%}.savings-calculate>span{align-items:center}
	.device-selector{width:100%;justify-content:center;overflow:visible}.device-selector button{min-width:0;flex:1;padding-inline:8px}.price-card{text-align:center}.price-top{min-height:0;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px}.price{justify-content:center}.price-card ul{max-width:270px;margin-left:auto;margin-right:auto;text-align:left}.pricing-note{align-items:flex-start;text-align:left}
	.step,.step:first-child{padding:20px;text-align:center}.step>i{position:static;margin:0 auto 12px}.step>span{top:14px;right:14px}.how-cta{width:100%;align-items:stretch;flex-direction:column;gap:10px;padding:14px;text-align:center}.how-cta>span{justify-content:center}.how-cta .button{width:100%}.comparison-card{text-align:center}.comparison-copy .button{width:100%}.comparison-table{text-align:left}.faq-bar,.faq-bar-copy{text-align:center}.faq-bar-copy{width:100%}.accordion{text-align:left}
	.site-footer{text-align:center}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-brand,.footer-grid>div:last-child{grid-column:auto}.footer-brand .brand{justify-content:center}.footer-brand p,.footer-grid>div:last-child p{margin-left:auto;margin-right:auto}.footer-grid .button{width:min(100%,280px)}.footer-bottom{align-items:center;gap:6px;text-align:center}
	.store-page{padding-top:100px;padding-bottom:65px;text-align:center}.store-page .woocommerce-products-header__title,.store-page>h1{font-size:38px}.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{float:none;text-align:center}.woocommerce .woocommerce-ordering select{width:100%;max-width:320px}.woocommerce ul.products{grid-template-columns:1fr}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{text-align:center;padding:18px}.woocommerce ul.products li.product a img{max-width:420px;margin-inline:auto}.woocommerce ul.products li.product .button{width:100%}.woocommerce div.product{gap:28px;text-align:center}.woocommerce div.product div.images{min-height:0}.woocommerce div.product div.summary{margin:0}.woocommerce div.product .product_title{font-size:36px}.woocommerce div.product form.cart{justify-content:center}.woocommerce div.product form.cart .button{width:100%}.woocommerce div.product .woocommerce-tabs{text-align:left}.woocommerce-cart table.cart img{width:48px}.woocommerce form .form-row{text-align:left}.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{text-align:left}
	.section-conversion-cta{width:100%;align-items:stretch;flex-direction:column;gap:10px;padding:14px;text-align:center}.section-conversion-cta .button{width:100%}
}

/* Compact homepage sections: less copy, faster path to the offer */
body.home .section{padding-block:52px}.compact-section-heading{max-width:820px;margin:0 auto 24px;text-align:center}.compact-section-heading h2{margin:0;font-size:clamp(25px,2.8vw,36px);line-height:1.08;letter-spacing:-.045em}.compact-section-heading h2 span,.compact-comparison-copy h2 span{background:linear-gradient(90deg,#f8fcff,#41beff);color:transparent;background-clip:text;-webkit-background-clip:text}.trending-movies-section .compact-section-heading{margin-bottom:22px}.savings-heading-compact{margin-bottom:16px}.savings-heading-compact h2{margin:0;font-size:30px}.compact-comparison-copy h2{margin:0 0 18px;font-size:32px}.faq-bar h2{font-size:28px}.device-selector{margin-bottom:24px}
@media (max-width:600px){body.home .section{padding-block:38px}.compact-section-heading{margin-bottom:17px}.compact-section-heading h2{font-size:24px}.savings-heading-compact{margin-bottom:13px}.savings-heading-compact h2{font-size:27px}.compact-comparison-copy h2{font-size:27px}.faq-bar h2{font-size:24px}}

/* Short phone hero: trust and proof stay on single horizontal rows */
@media (max-width:600px){.hero{min-height:740px}.hero-inner{min-height:610px;padding-top:90px;padding-bottom:15px}.hero-actions{gap:13px;margin-top:21px}.hero-trust{width:100%;flex-direction:row;justify-content:center;gap:12px;margin-top:19px;font-size:8px;line-height:1.2;white-space:nowrap}.hero-trust span{gap:4px}.hero-trust .icon{width:11px;height:11px}.hero-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:14px 0 16px;text-align:center}.hero-stats>div,.hero-stats>div:nth-child(3),.hero-stats>div:nth-child(even){min-width:0;padding:0 4px;border-left:1px solid var(--line)}.hero-stats>div:first-child{border-left:0}.hero-stats strong{font-size:18px;line-height:1.1}.hero-stats small{display:block;margin-top:4px;font-size:7px;line-height:1.25;letter-spacing:.04em}}

@media (max-width:600px){.hero{min-height:620px}.hero-inner{min-height:545px;padding-top:32px;padding-bottom:8px}.hero-visual img{transform:translateY(-24px) scale(1.04)}.hero h1{margin:14px auto}.hero-lead{max-width:360px;font-size:13px;line-height:1.45;text-wrap:balance;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.hero-actions{gap:0;margin-top:14px}.hero-stats-desktop{display:none}.hero-stats-mobile{display:grid;width:100%;margin:6px 0 0;padding:9px 0 3px}.hero-trust{margin-top:8px}.sports-gallery-section{padding-top:24px}}
