/* Presentation enhancements shared by the existing home and gaming pages. */
body{--polish-accent:#b54d1d;--polish-glow:#e8a57d;--polish-line:#b54d1d45}
body.gaming-page{--polish-accent:#eea9d8;--polish-glow:#ae96e6;--polish-line:#eea9d855}
.reading-progress{position:fixed;inset:0 0 auto;height:3px;z-index:1001;pointer-events:none;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--polish-accent),var(--polish-glow));box-shadow:0 0 10px var(--polish-line)}
.hero,.gaming-hero{position:relative;isolation:isolate}
.hero:before,.gaming-hero:before{content:'';position:absolute;z-index:-1;pointer-events:none;inset:-30px -3% 0;background:radial-gradient(ellipse at 84% 30%,#e8a57d20,transparent 58%),radial-gradient(ellipse at 5% 80%,#a3bbb11a,transparent 55%)}
.gaming-hero:before{background:radial-gradient(ellipse at 80% 35%,#a58be321,transparent 60%),radial-gradient(ellipse at 10% 90%,#8cddcc0c,transparent 60%)}
.home-photo-note{box-shadow:0 12px 32px #10233f15;border:1px solid #ffffff90}
.media-skeleton{position:absolute;inset:0;pointer-events:none;z-index:1;border-radius:inherit;background:linear-gradient(110deg,#e8e9e3 25%,#f5f5f0 43%,#e8e9e3 62%);background-size:240% 100%;animation:skeleton-light 1.8s ease-in-out infinite}
.gaming-page .media-skeleton{background-image:linear-gradient(110deg,#172039 25%,#29304b 43%,#172039 62%)}
.media-skeleton.is-loaded{opacity:0;transition:opacity .25s;animation:none}
@keyframes skeleton-light{from{background-position:100% 0}to{background-position:-100% 0}}
.button,.nav-cta,.text-link,.top-phone{transition:background-color .22s,color .22s,border-color .22s,box-shadow .22s,transform .22s}
.button,.nav-cta,.mobile-actions a{justify-content:center!important;text-align:center;gap:0!important}
.button .ui-icon,.nav-cta .ui-icon,.mobile-actions .ui-icon{display:none!important}
.button>span:has(.ui-icon),.nav-cta>span:has(.ui-icon),.mobile-actions a>span:has(.ui-icon){display:none!important}
.button:hover,.button:focus-visible,.nav-cta:hover,.nav-cta:focus-visible{box-shadow:0 0 0 3px var(--polish-line),0 0 26px var(--polish-line),0 8px 24px #10233f12;filter:brightness(1.06)}
.button:focus-visible,.nav-cta:focus-visible{outline:2px solid var(--polish-accent);outline-offset:5px}
.header nav>a[aria-current="location"]:not(.nav-cta){text-decoration:underline;text-decoration-color:var(--polish-accent);text-decoration-thickness:2px;text-underline-offset:8px}
.service-card,.news-card,.price-card,.gaming-service-card{transition:border-color .25s,box-shadow .25s,transform .3s cubic-bezier(.22,1,.36,1);box-shadow:0 3px 14px #10233f04}
.service-card:focus-within,.news-card:focus-within,.price-card:focus-within{border-color:var(--polish-accent)!important;box-shadow:0 12px 30px #10233f12}
.news-card{overflow:hidden}.news-card img{transition:transform .6s cubic-bezier(.22,1,.36,1)}
.questions details{transition:background-color .2s,border-color .2s}.questions details[open]{background:#ffffff70;border-color:var(--polish-line)}
.gaming-page .questions details[open]{background:#eea9d808}
@media(hover:hover) and (pointer:fine){
 .service-card:hover,.news-card:hover,.price-card:hover,.gaming-service-card:hover{transform:translateY(-5px);border-color:var(--polish-accent)!important;box-shadow:0 15px 38px #10233f14}
 .gaming-page .service-card:hover,.gaming-page .news-card:hover{box-shadow:0 15px 38px #0003}
 .news-card:hover img{transform:scale(1.035)}
 .top-phone:hover{box-shadow:0 0 0 3px var(--polish-line)}
}
@media(prefers-reduced-motion:reduce){
 .media-skeleton{animation:none}.media-skeleton.is-loaded{transition:none}
 .button,.nav-cta,.text-link,.top-phone,.button .ui-icon,.nav-cta .ui-icon,.text-link .ui-icon,.service-card,.news-card,.price-card,.gaming-service-card,.news-card img{transition:none!important;transform:none!important}
}

.news-media-frame{position:relative;overflow:hidden;height:190px}.news-media-frame>img{display:block;width:100%;height:100%;object-fit:cover}@media(max-width:700px){.news-media-frame{height:200px}}

/* Ambient movement and pointer light retain each page's existing palette. */
.home-consumer .hero:before{animation:ambient-drift 12s ease-in-out infinite alternate}
.home-consumer .hero h1 .serif{background:linear-gradient(105deg,#b54d1d 25%,#d7804a 50%,#b54d1d 75%);background-size:220% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:headline-light 9s ease-in-out infinite}
.home-consumer .home-photo-note{animation:note-float 6s ease-in-out infinite}
.gaming-page:before,.gaming-page:after{animation:none;filter:none;background-position:left top}
.gaming-page .gaming-showcase{box-shadow:0 24px 65px #0004,0 0 32px #eea9d81a;animation:setup-glow 7s ease-in-out infinite alternate}
.gaming-page .showcase-symbol{animation:star-turn 16s ease-in-out infinite;filter:drop-shadow(0 0 9px #eea9d880)}
.gaming-page .showcase-bottom h2 span{ text-shadow:0 0 28px #eea9d84a}
.gaming-page .launch-campaign:before{background-size:220% 100%;animation:headline-light 6s linear infinite}
.motion-light{position:relative;isolation:isolate;--light-x:50%;--light-y:50%}
.motion-light:after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;background:radial-gradient(360px circle at var(--light-x) var(--light-y),#df986028,transparent 70%);opacity:0;transition:opacity .35s}
.gaming-page .motion-light:after{background:radial-gradient(350px circle at var(--light-x) var(--light-y),#eea9d827,transparent 70%)}
.motion-light:hover:after,.motion-light:focus-within:after{opacity:1}
.motion-control{display:block;margin:20px auto;padding:9px 15px;border:1px solid currentColor;border-radius:20px;background:transparent;color:inherit;font:inherit;font-size:12px;opacity:.8;cursor:pointer}
.motion-control:hover,.motion-control:focus-visible{opacity:1;box-shadow:0 0 16px var(--polish-line)}
@keyframes ambient-drift{to{transform:translate(-18px,18px) scale(1.06);opacity:.6}}
@keyframes headline-light{0%,100%{background-position:100% 50%}50%{background-position:0 50%}}
@keyframes note-float{50%{translate:0 -7px}}
@keyframes setup-glow{to{border-color:#eea9d8;box-shadow:0 24px 65px #0004,0 0 40px #eea9d82e}}
@keyframes star-turn{0%,70%,100%{rotate:0deg;scale:1}85%{rotate:90deg;scale:1.15}}
body.motion-quiet *,body.motion-quiet:before,body.motion-quiet:after,body.motion-quiet *:before,body.motion-quiet *:after{animation-play-state:paused!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.home-consumer .hero:before,.home-consumer .hero h1 .serif,.home-consumer .home-photo-note,.gaming-page:before,.gaming-page:after,.gaming-page .gaming-showcase,.gaming-page .showcase-symbol,.gaming-page .launch-campaign:before{animation:none!important}.motion-light:after{display:none}}
@media(max-width:760px){.gaming-page:before,.gaming-page:after{filter:drop-shadow(0 0 3px #ee89d8)}.home-consumer .home-photo-note{animation:none}}
.fix-promise{font-weight:800;color:#10233f;font-size:18px;margin:20px 0}.fix-promise>span{display:inline-grid;place-items:center;background:#dfeade;color:#315b43;border-radius:50%;width:26px;height:26px;margin-right:6px}.fix-promise small{display:block;max-width:440px;font-size:12px;font-weight:400;line-height:1.6;color:#566777;margin-top:7px}.home-consumer .hero h1>span{background:linear-gradient(105deg,#b54d1d 25%,#d7804a 50%,#b54d1d 75%);background-size:220% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:headline-light 9s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.home-consumer .hero h1>span{animation:none}}
@media(max-width:700px){.seniors-banner>div{flex-wrap:wrap}.seniors-banner>div>span{display:block;order:3;width:100%;font-size:12px;line-height:1.3}.seniors-banner>div{gap:3px 10px}}
/* Particles follow the same paths and tile dimensions as the fixed pattern. */
.line-particles{position:fixed;top:100px;bottom:0;left:0;width:clamp(24px,calc((100vw - 1280px)/2),150px);overflow:hidden;pointer-events:none;z-index:0;opacity:.95}.line-particles-right{left:auto;right:0;transform:scaleX(-1)}
.line-particles svg{display:block;width:160px;height:880px;max-width:none;overflow:visible}
.line-particles path{fill:none;stroke:#fff0fc;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:18 982;filter:drop-shadow(0 0 3px #ffb5ec) drop-shadow(0 0 8px #ff6cda) drop-shadow(0 0 14px #e890ff);animation:line-travel 12s linear infinite}
.line-particles path:nth-child(2){animation-delay:-4s;animation-duration:16s}.line-particles path:nth-child(3){animation-delay:-8s;animation-duration:14s}.line-particles-right path{animation-delay:-6s}
@keyframes line-travel{to{stroke-dashoffset:-1000}}
@media(max-width:1340px){.line-particles{width:22px}.line-particles svg{width:110px;height:605px}}
@media(max-width:760px){.line-particles{top:85px;width:10px}.line-particles svg{width:85px;height:468px}.gaming-page:before,.gaming-page:after{filter:none}}
@media(prefers-reduced-motion:reduce){.line-particles{display:none}}
