/* Shared visual refinement. Payment, delivery and access controls remain independent. */
body{--polish-line:rgba(190,155,239,.19);--polish-muted:#bbb2cb}
body:not(.admin-authenticated){-webkit-font-smoothing:antialiased}
body:not(.admin-authenticated) :is(.page-hero,.intro){text-wrap:balance}
body:not(.admin-authenticated) :is(.lead,.product-summary,.package-description){color:var(--polish-muted);line-height:1.7}
body:not(.admin-authenticated) :is(.product-catalog-card,.package-card,.package-full-card,.heist-card,.top-seller-card){border:1px solid var(--polish-line);box-shadow:0 12px 40px rgba(0,0,0,.22);background:linear-gradient(145deg,rgba(30,18,44,.86),rgba(12,10,20,.96));border-radius:20px}
body:not(.admin-authenticated) :is(.product-card-body,.package-card-body){padding:24px}
body:not(.admin-authenticated) :is(.product-catalog-card,.package-card) h3{letter-spacing:-.025em;line-height:1.3}
body:not(.admin-authenticated) :is(.price,.pricing,.plan-price){font-variant-numeric:tabular-nums}
body:not(.admin-authenticated) :is(.plan-select,.product-plan-selector,select){border-color:rgba(186,140,240,.3);border-radius:10px}
body:not(.admin-authenticated) :is(.product-plan-note,.plan-selector-note){font-size:14px;line-height:1.6;color:#bfb2cf}
body:not(.admin-authenticated) .local-plan-dropdown{border-color:rgba(190,155,239,.25);border-radius:12px;background:#130d1e}
body:not(.admin-authenticated) .local-plan-dropdown>summary{padding:14px 16px;min-height:54px}
body:not(.admin-authenticated) .local-plan-notice{color:#beb0ce;font-size:14px;line-height:1.6;min-height:23px}
body:not(.admin-authenticated) .local-plan-price{font-variant-numeric:tabular-nums;letter-spacing:-.025em}
body:not(.admin-authenticated) :is(.is-loading,.is-unknown){text-shadow:none!important}
body:not(.admin-authenticated) :is(.live-stock-badge.is-loading,.live-stock-text.is-loading){color:#c8b6df!important;background:rgba(163,119,222,.07)!important;border-color:rgba(182,136,239,.2)!important;box-shadow:none!important}
body:not(.admin-authenticated) :is(.btn,.product-buy,.checkout-btn){transition:background-color .18s,border-color .18s,box-shadow .18s,transform .18s}
body:not(.admin-authenticated) :is(.btn,.product-buy,.checkout-btn):focus-visible{outline:2px solid #d6abff;outline-offset:4px}
#products-content #category-grid{gap:24px}
#products-content #category-grid>.card{border-color:rgba(179,134,233,.22);border-radius:19px;box-shadow:0 12px 32px #0003;isolation:isolate}
#products-content #category-grid>.card>.price{background:rgba(22,14,35,.91)!important;border:1px solid rgba(210,171,255,.32);backdrop-filter:blur(8px);padding:7px 11px!important;border-radius:9px!important;font-variant-numeric:tabular-nums}
#products-content #category-grid>.card .arrow{background:#b97cf0;color:#100916;border:0;box-shadow:0 4px 16px #ad6be31c}
#products-content #category-grid>.card .card-copy{padding-bottom:5px}
#products-content #category-grid>.card .card-copy small{color:#cdc2dc}
#products-content>.search{background:rgba(20,13,31,.7);border-color:rgba(193,147,250,.25);border-radius:13px}
.footer.site-footer{border-top-color:rgba(197,158,246,.17)!important}
.site-footer .footer-column a{transition:color .18s}
@media(hover:hover) and (pointer:fine){body:not(.admin-authenticated) :is(.product-catalog-card,.package-card,.heist-card){transition:border-color .2s,box-shadow .2s,transform .2s}body:not(.admin-authenticated) :is(.product-catalog-card,.package-card,.heist-card):hover{border-color:#9872b8;transform:translateY(-3px);box-shadow:0 18px 45px #0005}}
@media(max-width:760px){
 body:not(.admin-authenticated) :is(.product-card-body,.package-card-body){padding:20px}
 #products-content #category-grid{gap:18px}
 body.admin-authenticated .sidebar{padding:12px 16px!important;gap:12px!important}
 body.admin-authenticated .logo-block{padding:0 0 10px!important}
 body.admin-authenticated .sidebar-release-card{margin:0!important;padding:10px 12px!important;min-height:0!important}
 body.admin-authenticated .sidebar-release-head{margin:0!important;gap:8px!important;cursor:pointer}
 body.admin-authenticated .sidebar-release-head strong{font-size:12px!important}
 body.admin-authenticated .sidebar-release-head::after{content:'Details +';font:500 10px/1.4 system-ui;color:#c4a8d9}
 body.admin-authenticated .sidebar-release-card.is-expanded .sidebar-release-head::after{content:'Details −'}
 body.admin-authenticated .sidebar-release-card:not(.is-expanded) :is(.sidebar-release-grid,p){display:none!important}
 body.admin-authenticated .sidebar-release-card.is-expanded .sidebar-release-grid{margin-top:9px!important}
 body.admin-authenticated .topbar{min-height:0!important;padding-bottom:15px!important;margin-bottom:18px!important;gap:12px!important}
 body.admin-authenticated .topbar h1{font-size:25px!important}
 body.admin-authenticated .topbar p{font-size:12px!important;margin-top:5px!important}
 body.admin-authenticated .topbar-actions{gap:7px!important}
 body.admin-authenticated .health-pill{min-height:30px!important;padding:4px 8px!important;font-size:8px!important}
 body.admin-authenticated .admin-language-field select{width:125px!important;min-height:38px!important;font-size:12px!important}
 body.admin-authenticated .stat-card{padding:16px!important;min-height:112px!important}
 body.admin-authenticated .stat-card>strong{font-size:27px!important}
}
@media(prefers-reduced-motion:reduce){body:not(.admin-authenticated) :is(.product-catalog-card,.package-card,.heist-card,.btn,.product-buy,.checkout-btn){transition:none!important;transform:none!important}}

/* Homepage motion concept: small entrance offsets and an occasional text-only shine. */
@keyframes heroTextEntrance{
 from{opacity:0;transform:translate3d(0,var(--hero-enter-offset,12px),0)}
 to{opacity:1;transform:translate3d(0,0,0)}
}
@keyframes heroTextLightSweep{
 0%,12%{background-position:150% 0,0 0}
 34%,100%{background-position:-150% 0,0 0}
}
.mg-storefront .home-hero.hero-text-motion .hero-heading-line{
 animation:heroTextEntrance .72s cubic-bezier(.2,.7,.2,1) both;
 animation-delay:.04s;
}
.mg-storefront .home-hero.hero-text-motion .hero-heading-line:nth-child(2){animation-delay:.13s}
.mg-storefront .home-hero.hero-text-motion .hero-heading-line:nth-child(3){animation-delay:.22s}
.mg-storefront .home-hero.hero-text-motion .home-hero-copy>.lead{
 animation:heroTextEntrance .75s cubic-bezier(.2,.7,.2,1) .33s both;
}
.mg-storefront .home-hero.hero-text-motion h1 .hero-heading-line.grad{
 background-image:linear-gradient(110deg,transparent 39%,rgba(255,255,255,.8) 48%,rgba(255,255,255,.95) 50%,transparent 59%),linear-gradient(105deg,#e5caff 0%,#b475ff 65%,#8852d8 100%)!important;
 background-size:250% 100%,100% 100%;
 background-repeat:no-repeat;
 background-position:150% 0,0 0;
 background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;
 animation:heroTextEntrance .72s cubic-bezier(.2,.7,.2,1) .13s both,heroTextLightSweep 7.2s cubic-bezier(.4,0,.2,1) 1.1s infinite;
}
.mg-storefront .home-hero.hero-text-motion.hero-text-paused :is(.hero-heading-line,.home-hero-copy>.lead){animation-play-state:paused}
@media(max-width:680px){
 .mg-storefront .home-hero.hero-text-motion{--hero-enter-offset:8px}
 .mg-storefront .home-hero.hero-text-motion .hero-heading-line{animation-duration:.6s}
 .mg-storefront .home-hero.hero-text-motion .home-hero-copy>.lead{animation-duration:.65s}
 .mg-storefront .home-hero.hero-text-motion h1 .hero-heading-line.grad{animation-duration:.6s,8.4s}
}
@media(prefers-reduced-motion:reduce){
 .mg-storefront .home-hero.hero-text-motion :is(.hero-heading-line,.home-hero-copy>.lead){animation:none!important;opacity:1!important;transform:none!important}
 .mg-storefront .home-hero.hero-text-motion h1 .hero-heading-line.grad{background-image:linear-gradient(105deg,#e5caff 0%,#b475ff 65%,#8852d8 100%)!important;background-size:100% 100%;background-position:0 0}
}

