:root{--accent:#d71920;--blue:#b51219;--burgundy:#d71920;--wine:#7a0f14;--rose:#f28b8f;--blush:#fde4e5}
.button-primary{background:var(--burgundy)!important;box-shadow:0 12px 30px rgba(215,25,32,.22)!important}.button-primary:hover{background:#a52d53!important}.brand-mark{background:var(--burgundy)!important}.hero h1 em,.section-label span:first-child,.arrow-link,.platform-label span,.plan-kicker,.cta-sparkle,.cta h2 em{color:var(--burgundy)!important}.pulse{background:var(--burgundy)!important;box-shadow:0 0 12px rgba(215,25,32,.45)!important}.popular{background:var(--burgundy)!important}
.art-glow{background:radial-gradient(circle,rgba(215,25,32,.46),rgba(90,10,16,.12) 60%,transparent 72%)!important}.phone-hero{border-color:#8f1118!important;background:linear-gradient(145deg,#ff9aa0,#d71920 35%,#2b070a 72%)!important;box-shadow:0 35px 70px rgba(62,8,12,.32),0 0 45px rgba(215,25,32,.3)!important}.phone-screen{background:#1a0507!important}.phone-feature{background:linear-gradient(160deg,rgba(100,6,12,.1),rgba(20,3,5,.78)),radial-gradient(circle at 76% 30%,#e34d55,#8f151d 37%,#2d070b 67%)!important}.phone-feature:after{border-color:rgba(255,176,180,.48)!important;box-shadow:0 0 0 22px rgba(255,100,108,.1),0 0 0 45px rgba(255,100,108,.06)!important}.phone-brand span span,.phone-section b,.series-row span,.series-row em{color:#ffb5b8!important}.phone-nav span:first-child{color:#ffb5b8!important}.phone-content{background:linear-gradient(160deg,#ffd0d3,#df6570 55%,#7a0f18)!important}.phone-content i{color:#ffe8e9!important}
.cta{background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(244,223,230,.92))!important;border-color:rgba(215,25,32,.24)!important}.plan-card.featured{background:linear-gradient(145deg,#7a1018,#4b0b10)!important;border-color:#df5d67!important}.plan-card.featured .button-primary{background:#ffd0d3!important;color:#650b10!important}.platform.disney span,.platform.apple span,.platform.paramount span{color:var(--burgundy)!important}.faq summary:after{color:var(--burgundy)!important}
.compat-tv,.compat-phone,.compat-laptop{background:#fbf7f8!important}.tv-screen{border-color:#9f1b24!important;background:linear-gradient(145deg,#f5e3e8,#d596aa 54%,#8b3b59)!important}.tv-screen span span,.laptop-nav span{color:var(--burgundy)!important}.tv-screen b{color:#6f1e3c!important}.iphone-visual{border-color:#710f14!important;background:#1e0813!important}.iphone-content{background:linear-gradient(160deg,#f3d1da,#df6570 55%,#7a0f18)!important}.laptop-screen{border-color:#b99aa4!important;background:linear-gradient(145deg,#fff6f8,#d8b9c3 60%)!important}.laptop-base{background:#c7aab4!important;box-shadow:0 8px 0 -3px #987080!important}
.device-main{background:linear-gradient(145deg,#32101f,#6e1e3e 56%,#421326)!important}.device-mobile{background:linear-gradient(145deg,#351324,#7b3651)!important}.device-desktop{background:linear-gradient(145deg,#21131a,#56303c)!important}.device-arrow,.compat-arrow{color:#9a3457!important}
.float-icon{background:#b51219!important;color:#f7d8e1!important}.check{background:#7a0f18!important;color:#ffdce5!important}
.trial-banner{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:60px;padding:42px 48px;border:1px solid rgba(215,25,32,.22);border-radius:24px;background:linear-gradient(105deg,rgba(255,255,255,.82),rgba(245,224,231,.92));box-shadow:0 18px 45px rgba(108,12,18,.1)}.trial-copy{position:relative;z-index:1}.trial-kicker{display:block;color:#d71920;font-size:9px;font-weight:700;letter-spacing:.16em}.trial-banner h2{font:600 clamp(31px,4vw,52px)/.95 "Space Grotesk";letter-spacing:-.07em;color:#182235;margin:12px 0 10px}.trial-banner h2 em{font-style:normal;color:#d71920}.trial-banner p{color:#657084;font-size:13px;margin:0;max-width:390px}.trial-banner .button{position:relative;z-index:1;flex:none}.trial-orbit{position:absolute;width:260px;height:260px;border:1px solid rgba(215,25,32,.19);border-radius:50%;right:80px;top:-95px;box-shadow:0 0 0 32px rgba(215,25,32,.05),0 0 0 66px rgba(215,25,32,.035)}@media(max-width:650px){.trial-banner{display:block;padding:32px 25px}.trial-banner .button{margin-top:24px}.trial-orbit{right:-100px;top:-45px}}
.desktop-nav a[href*="#experience"],.desktop-nav a[href*="#devices"]{display:none!important}

/* Shared phone layout: keep decorative artwork from creating horizontal scroll. */
html,body{max-width:100%;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto}
button,a,.button,input,select{touch-action:manipulation}
@media(max-width:600px){
  .container,.site-header{width:calc(100% - 32px);max-width:none}
  .announcement{min-height:32px;height:auto;padding:8px 16px;text-align:center;line-height:1.35}
  .site-header{height:68px;gap:12px}
  .brand{min-width:0;font-size:14px;white-space:nowrap}
  .header-actions{gap:8px;margin-left:auto}
  .header-actions .button{padding:9px 11px;font-size:11px;gap:7px;white-space:nowrap}
  .menu-toggle{flex:none}
  .menu-toggle span{background:var(--burgundy)!important;height:2px;border-radius:2px}
  .menu-toggle:focus-visible{outline:2px solid var(--burgundy);outline-offset:4px;border-radius:8px}
  .desktop-nav.mobile-open{top:101px;left:16px;right:16px;padding:16px;gap:2px}
  .desktop-nav.mobile-open{color:#182235;box-shadow:0 18px 40px rgba(108,12,18,.16)}
  .desktop-nav.mobile-open a{padding:12px 4px;font-size:14px}
  .hero{gap:18px;padding-top:35px;padding-bottom:45px}
  .hero h1{font-size:clamp(43px,13vw,58px);margin:22px 0 20px}
  .hero-lede{font-size:14px;line-height:1.6}
  .hero-actions{margin-top:26px;gap:14px}
  .hero-actions .button{padding:12px 15px}
  .trust-row{margin-top:32px;gap:9px;font-size:10px}
  .hero-art{width:100%;height:300px;margin:0}
  .art-grid{transform-origin:center center;transform:perspective(550px) rotateX(58deg) translateY(70px) scale(.72)}
  .phone-hero{width:215px;height:420px;transform:rotate(4deg) scale(.66);transform-origin:center}
  .hero-art .float-one{right:-2px;top:15px;transform:scale(.78);transform-origin:right top}
  .hero-art .float-two{left:-2px;bottom:5px;transform:scale(.78);transform-origin:left bottom}
  .platform-carousel{width:100%;padding:20px 0 24px}
  .platform-label{min-width:0}
  .platform-label span{font-size:8px}
  .platform-track{animation-duration:26s}
  .platform-set{gap:24px;padding-right:24px}
  .platform{font-size:14px!important}
  .platform.hbo,.platform.hulu,.platform.max{font-size:19px!important}
  .section{padding-top:72px}
  .intro h2,.devices h2,.plans h2,.faq h2{font-size:clamp(38px,12vw,52px)}
  .large-copy,.devices-head p,.plans-head p{font-size:15px;line-height:1.6}
  .feature-band{margin-top:34px;gap:24px}
  .feature-image{height:290px;border-radius:18px}
  .feature-caption{left:20px;bottom:20px}
  .feature-caption strong{font-size:21px}
  .feature-list{width:100%}
  .feature-item{grid-template-columns:25px minmax(0,1fr) 18px;gap:10px;padding:20px 0}
  .feature-item h3{font-size:18px}
  .feature-item p{font-size:12px;margin-top:7px}
  .device-grid{gap:10px;margin-top:30px}
  .device-card{min-width:0;height:250px;border-radius:18px;padding:17px}
  .device-card h3{font-size:23px}
  .device-chips{flex-wrap:wrap;max-width:85%}
  .device-chips span{font-size:8px;padding:5px 6px}
  .plan-grid{gap:12px;margin-top:30px}
  .plan-card{min-width:0;min-height:0;padding:22px;border-radius:18px}
  .plan-card h3{font-size:38px}
  .plan-card p{font-size:12px}
  .quote-section{padding:65px 0}
  .quote-section blockquote{font-size:29px}
  .cta{margin-top:38px;margin-bottom:70px;padding:55px 22px;border-radius:18px}
  .cta h2{font-size:clamp(40px,12vw,58px)}
  .footer-top{display:grid;grid-template-columns:1fr;gap:24px;padding:26px 0 38px}
  .footer-top p{order:initial;width:auto;margin:0}
  .footer-links{gap:8px 18px;font-size:12px}
  .footer-bottom{display:grid;grid-template-columns:1fr;gap:10px;padding-top:16px}
  .footer-bottom span:last-child{width:auto}
  .legal-links{gap:8px 14px}
  .legal-links a{display:inline-block;line-height:1.5}
  .legal-links a:not(:last-child):after{margin-left:14px}
}

:where(a, button, input, select, summary):focus-visible {
  outline: 3px solid #d71920;
  outline-offset: 3px;
}

/* SEO/performance polish: keep below-the-fold sections cheap to render and prevent mobile overflow. */
@media (min-width: 801px) {
  .feature-band, .compatibility, .plans, .faq, .cta, .quote-section { content-visibility: auto; contain-intrinsic-size: 1px 720px; }
}
@media (max-width: 800px) {
  .compatibility-grid, .brand-logos, .plan-grid, .faq-grid, .checkout-layout, .contact-grid, .setup-grid { min-width: 0; }
  .compatibility-head, .plans-head, .intro-grid, .faq-grid { width: 100%; }
  .brand-logos b { max-width: 100%; overflow-wrap: anywhere; }
  .button, .button-primary, .button-outline { min-height: 44px; }
  .footer, .legal-main, .checkout-main, .contact-main, .setup-main { overflow-wrap: anywhere; }
}

@media(max-width:380px){
  .container,.site-header{width:calc(100% - 24px)}
  .header-actions .button{padding-inline:9px}
  .hero h1{font-size:43px}
  .hero-art{height:275px}
  .phone-hero{transform:rotate(4deg) scale(.58)}
  .feature-image{height:260px}
  .feature-caption strong{font-size:19px}
}

/* Unified red button treatment */
.button,
.button-primary,
.button-bright,
.button-outline {
  background: #d71920 !important;
  border-color: #d71920 !important;
  color: #ffffff !important;
  box-shadow: 0 12px 30px rgba(215, 25, 32, .2) !important;
}

.button:hover,
.button-primary:hover,
.button-bright:hover,
.button-outline:hover {
  background: #b51219 !important;
  border-color: #b51219 !important;
  color: #ffffff !important;
  box-shadow: 0 15px 35px rgba(215, 25, 32, .28) !important;
}
