/* Homepage enhancement only. Shared pages, content and controls keep their contract. */
.home-premium{--home-ease:cubic-bezier(.22,1,.36,1);--home-line:#b5d3ff1c;--home-surface:#101720;--home-muted:#a5b1c1;background:radial-gradient(ellipse 70% 500px at 50% 280px,#0c64bc14,transparent),radial-gradient(circle,#d8eaff0b .65px,transparent 1px) center top/20px 20px,#0d1015;color:#eff4fc;-webkit-font-smoothing:antialiased}
.home-premium .site-header{position:sticky;top:12px;z-index:20;width:min(1240px,calc(100% - 48px));margin-top:12px;border:1px solid #b5d3ff30;border-radius:18px;transition:background .35s,border-color .35s,box-shadow .35s}
.home-premium.home-scrolled .site-header{background:#101720e8;border-color:#b5d3ff38;box-shadow:inset 0 1px #f0f7ff08,0 8px 32px #00000028;backdrop-filter:blur(16px) saturate(130%)}
.home-premium .site-header nav{min-height:68px;padding:0 14px;gap:23px}
.home-premium .site-header .brand img{width:29px;height:34px}
.home-premium .nav-links{gap:23px}
.home-premium .site-header .nav-links a{position:relative;font-size:.82rem;font-weight:550;letter-spacing:-.01em;color:#bbc5d3;padding:9px 0;transition:color .2s}
.home-premium .nav-links a::after{content:'';position:absolute;bottom:2px;left:0;right:0;height:1px;transform:scaleX(0);transform-origin:left;background:#66bbff;transition:transform .3s var(--home-ease)}
.home-premium .nav-links a:hover{color:white;text-decoration:none}
.home-premium .nav-links a:hover::after,.home-premium .nav-links a:focus-visible::after{transform:scaleX(1)}
.home-premium .header-actions{gap:9px}
.home-premium .player-search{background:linear-gradient(180deg,#ffffff05,transparent),#171e27b8;border-color:#b6d3f21c;min-height:39px;width:222px;border-radius:10px}
.home-premium .player-search input{font-size:.79rem}
.home-premium .player-search-results button[aria-selected=true]{background:#188bff24;color:#e6f4ff}
.home-premium .header-login{min-height:39px;border-radius:10px;background:#171e27b8;border-color:#b6d3f21c;font-size:.79rem;font-weight:550}
.home-premium .site-header .header-actions .button{min-height:39px;border-radius:10px;padding:9px 17px;font-size:.79rem;font-weight:650}
.home-premium .home-page{overflow:clip}
.home-premium .swing-intro{position:relative;isolation:isolate;width:min(1280px,calc(100% - 48px));padding-top:64px;text-align:center;--hero-progress:0;--pointer-x:0;--pointer-y:0}
.home-ambience{position:absolute;z-index:-1;left:50%;top:-100px;width:1160px;height:830px;transform:translateX(-50%);pointer-events:none;background:radial-gradient(ellipse at 50% 39%,#107ce51b,transparent 58%);mask-image:linear-gradient(black 50%,transparent 95%)}
.home-ambience i{position:absolute;left:50%;top:45%;border:1px solid #3b9cfb16;border-radius:50%;width:900px;height:540px;transform:translate(-50%,-50%) rotate(-19deg);opacity:.65}
.home-ambience i:nth-child(2){width:1100px;height:650px;transform:translate(-50%,-50%) rotate(19deg);border-color:#72c2ff0c}
.home-ambience i:nth-child(3){width:650px;height:650px;border-color:#4ba7ff0a;transform:translate(-50%,-50%)}
.home-premium .swing-intro-emblem{width:48px;height:56px;margin:0 auto 20px;filter:drop-shadow(0 3px 22px #168bff30)}
.home-premium .swing-intro h1{position:relative;max-width:520px;margin:0 auto;line-height:1}
.home-premium .swing-intro .wordmark{width:100%;max-width:490px;height:auto;display:block;aspect-ratio:470/76}
.home-premium .swing-intro .swing-download{position:relative;margin-top:32px;min-height:49px;padding:13px 24px;border-radius:12px;font-size:.9rem;font-weight:650;letter-spacing:-.015em;transition:box-shadow .3s,translate .3s var(--home-ease),border-color .3s;background:radial-gradient(ellipse at 35% 0,#bbddff40,transparent 70%),linear-gradient(180deg,#2195f0bb,#0962cecc);border-color:#a9d8ff70;box-shadow:inset 0 1px 0 #e0f2ff99,inset 0 -1px #8ecbff33,0 6px 24px #0051af22}
.home-premium .button:hover{filter:none;translate:0 -2px;box-shadow:inset 0 1px #eff8ffc4,0 8px 28px #087be839}
.home-premium .swing-intro .swing-download,.home-premium .site-header .button.cyan{background:linear-gradient(180deg,#a7dbff12,transparent 48%),linear-gradient(145deg,#076dc4,#084e9f)}
.home-premium .button:active{translate:0 0;transition-duration:.1s}
.home-premium .button::after{display:none}
.home-premium a:focus-visible,.home-premium button:focus-visible{outline:2px solid #74c4ff;outline-offset:5px}
.home-premium .skip{z-index:100;left:16px;padding:10px 16px;border:1px solid #74c4ff;border-radius:8px;background:#101b29;color:#eaf4ff}
.home-premium .skip:focus{top:8px}
.home-scene{position:relative;perspective:1600px;margin-top:65px;padding:0 96px;--scene-lift:0px}
.home-premium .swing-preview{position:relative;z-index:2;margin:0;translate:none;border:1px solid #95caff4d;border-radius:20px;background:#081321;box-shadow:inset 0 1px 0 #ebf7ff18,0 34px 75px -28px #000000b3,0 0 70px -35px #1485e74d;transform:translate3d(calc(var(--pointer-x)*-3px),var(--scene-lift),0) rotateX(calc((1 - var(--hero-progress))*5deg));transform-origin:50% 65%;transition:border-color .3s,box-shadow .3s}
.home-premium .swing-preview img{position:relative;display:block;width:100%;height:auto;aspect-ratio:1918/1007}
.home-premium .swing-preview:hover{border-color:#9ed5ff85;box-shadow:0 40px 85px -28px #000000b3,0 0 85px -35px #1485e766}
.home-scene-side{position:absolute;z-index:1;width:240px;aspect-ratio:1.65;overflow:hidden;border:1px solid #74bfff35;border-radius:14px;background:#0b1823;box-shadow:0 18px 45px #0007;pointer-events:none;opacity:.72}
.home-scene-side img{display:block;width:100%;height:100%;object-fit:cover}
.home-scene-hud{left:0;top:25px;transform:translate3d(calc(var(--pointer-x)*8px),calc(var(--pointer-y)*5px + var(--scene-lift)*-.5),0) rotate(-9deg)}
.home-scene-packs{right:0;top:105px;transform:translate3d(calc(var(--pointer-x)*12px),calc(var(--pointer-y)*7px + var(--scene-lift)*-.8),0) rotate(9deg)}
.home-discover{display:grid;place-items:center;width:38px;height:38px;margin:32px auto 0;border:1px solid #bfdcff20;border-radius:50%;color:#8ba6c1;transition:color .2s,border-color .2s,background .2s}
.home-discover svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;transition:translate .3s var(--home-ease)}
.home-discover:hover{color:#bce1ff;border-color:#a9d7ff60;background:#248ae90a}
.home-discover:hover svg{translate:0 3px}
.home-motion-pending .swing-intro-emblem,.home-motion-pending #home-title,.home-motion-pending .swing-download{opacity:0}
.home-premium .home-highlights{position:relative;margin-top:110px;scroll-margin-top:112px}
.home-premium #highlights-title{scroll-margin-top:125px}
.home-premium .home-section-heading{gap:17px;margin-bottom:35px;align-items:flex-start}
.home-premium .home-section-heading h2{font-size:clamp(1.7rem,3.4vw,2.65rem);line-height:1.12;letter-spacing:-.055em;font-weight:600;max-width:520px;text-wrap:balance}
.home-premium .home-section-heading p{font-size:.96rem;margin-top:11px;line-height:1.6;color:var(--home-muted)}
.home-premium .home-heading-icon{margin-top:3px;border-radius:14px;width:46px;height:46px;background:linear-gradient(145deg,#1a2b3b7a,#15202c);border-color:#a4ceff22;box-shadow:inset 0 1px #d0e8ff0a}
.home-premium .home-highlight-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-premium .home-highlight{position:relative;isolation:isolate;overflow:hidden;min-width:0;padding:0;min-height:0;border-radius:22px;border-color:var(--home-line);background:linear-gradient(150deg,#1a29363d,transparent 60%),#111820;box-shadow:inset 0 1px #d3eaff08;transition:border-color .35s,box-shadow .35s,translate .5s var(--home-ease);--card-x:50%;--card-y:20%}
.home-premium .home-highlight::before{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(450px circle at var(--card-x) var(--card-y),#2088e01c,transparent 72%);opacity:0;transition:opacity .4s;pointer-events:none}
.home-premium .home-highlight:hover{transform:none;translate:0 -3px;border-color:#74baff50;box-shadow:inset 0 1px #d3eaff14,0 18px 38px -20px #0009}
.home-premium .home-highlight:hover::before,.home-premium .home-highlight:focus-within::before{opacity:1}
.home-feature-copy{position:relative;padding:33px 34px 26px}
.home-premium .home-card-icon{width:27px;height:27px;display:block;margin-bottom:22px;stroke:#52afff;opacity:.9}
.home-premium .home-card-label{font-size:.62rem;letter-spacing:.15em;font-weight:650;color:#7c99b5;line-height:1.4}
.home-premium .home-highlight h3{font-size:1.7rem;font-weight:550;line-height:1.16;letter-spacing:-.045em;max-width:420px;margin:12px 0 14px;text-wrap:balance;color:#eff5ff}
.home-premium .home-highlight p{font-size:.88rem;line-height:1.75;max-width:480px;margin:0 0 23px;color:var(--home-muted)}
.home-feature-copy>a{display:inline-flex;align-items:center;gap:7px;font-size:.77rem;font-weight:550;color:#7cc3ff;transition:color .2s}
.home-feature-copy>a:hover{color:#d4ebff;text-decoration:none}
.home-feature-copy>a span{display:inline-block;transition:translate .3s var(--home-ease)}
.home-feature-copy>a:hover span{translate:3px -3px}
.home-highlight-rendering{grid-column:auto}
.home-highlight-customization{grid-column:auto}
.home-highlight-customization .home-feature-copy{padding-bottom:29px}
.home-premium .home-updates{gap:28px;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);margin-top:115px;margin-bottom:90px;align-items:stretch}
.home-premium .home-section-heading-inline{align-items:center;margin-bottom:25px;min-height:38px;gap:12px}
.home-premium .home-section-heading-inline h2{font-size:1.55rem;letter-spacing:-.035em;font-weight:550}
.home-premium .home-section-heading-inline h2 svg{width:20px;height:20px;stroke:#63b5ff}
.home-premium .home-section-heading-inline>a{font-size:.72rem;white-space:nowrap;transition:color .2s}
.home-premium .home-news-card{height:calc(100% - 63px);border-radius:22px;background:#111820;border-color:var(--home-line);box-shadow:inset 0 1px #c0dfff08;transition:border-color .35s,box-shadow .35s}
.home-premium .home-news-card:hover{translate:none;border-color:#6bb6fa42;box-shadow:0 20px 44px -25px #0008}
.home-premium .home-news-image{aspect-ratio:2.03;background:#080f17}
.home-premium .home-news-image img{object-fit:cover;object-position:50% 43%;transition:transform 1s var(--home-ease)}
.home-premium .home-news-image:hover img{transform:scale(1.035)}
.home-premium .home-news-copy{padding:27px 30px 30px}
.home-premium .home-news-copy h3{font-size:1.75rem;line-height:1.18;font-weight:550;letter-spacing:-.045em;margin:13px 0}
.home-premium .home-news-copy p{font-size:.87rem;line-height:1.75;color:var(--home-muted)}
.home-premium .home-news-read{font-size:.76rem;font-weight:550;color:#7cc3ff}
.home-premium .home-community-card{border-radius:22px;border-color:var(--home-line);overflow:hidden;height:calc(100% - 63px);min-height:440px}
.home-premium .home-community-card iframe{min-height:440px}
.home-premium .site-footer{border:0;background:transparent;margin-top:30px;padding-top:0}
.home-premium .footer-glass-stage{border-radius:22px}
.home-premium .footer-banner{padding:36px 40px;border-radius:22px;min-height:167px;background:radial-gradient(ellipse 70% 100% at 15% 0,#d5edff12,transparent 75%),linear-gradient(125deg,#075da2eb,#064a8fe6 55%,#06438ceb);border-color:#9dd5ff52;box-shadow:inset 0 1px #dff3ff70,inset 0 -1px #72b7ed20,0 20px 55px -20px #0007}
.home-premium .footer-banner-copy>p{font-size:1.25rem;line-height:1.4;font-weight:550;letter-spacing:-.025em}
.home-premium .footer-banner-benefits{margin-top:17px;gap:18px}
.home-premium .footer-banner-benefits li{font-weight:500;font-size:.67rem;color:#d0e8ff}
.home-premium .footer-banner .button{font-size:.8rem;padding:12px 19px;border-radius:11px}
.home-premium .footer-bottom{padding-top:27px;padding-bottom:24px}
.home-premium .footer-legal-box{background:#1017209c;border-color:#94b2d41a;box-shadow:inset 0 1px #cfebff05;border-radius:14px}
.home-premium .footer-social-icons a{background:#131e2a80;border-color:#9ac9fc22;transition:translate .3s var(--home-ease),background .25s,border-color .25s}
.home-premium .footer-social-icons a:hover{translate:0 -3px;background:#19436b50;border-color:#8dccff66}
.home-premium .footer-legal-box,.home-premium .footer-legal-box p{color:#8290a1;font-size:.7rem}
.home-enhanced [data-home-reveal]:not(.is-entered){opacity:0}
.home-word{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.14em;margin-bottom:-.14em}
.home-word>span{display:inline-block}
@media(min-width:1001px){.home-premium .home-highlights,.home-premium .home-updates,.home-premium .footer-glass-stage{width:min(1120px,calc(100% - 80px))}}
@media(max-width:1100px){.home-scene{padding:0 38px}.home-scene-side{width:180px;opacity:.45}.home-scene-hud{left:-15px}.home-scene-packs{right:-15px}.home-premium .nav-links{gap:17px}}
@media(max-width:1000px){.home-premium .site-header{top:8px;margin-top:8px}.home-premium .site-header nav{padding:10px 12px;gap:10px 18px}.home-premium .site-header .nav-links{gap:30px}.home-premium .swing-intro{padding-top:45px}.home-premium .swing-intro h1{max-width:440px}.home-scene{margin-top:48px}}
@media(max-width:720px){.home-premium .site-header{width:calc(100% - 24px);border-radius:14px}.home-premium .swing-intro{width:calc(100% - 32px);padding-top:38px}.home-premium .swing-intro-emblem{width:40px;height:47px;margin-bottom:18px}.home-premium .swing-intro h1{width:min(350px,85%)}.home-premium .swing-intro .swing-download{margin-top:27px;min-height:47px;font-size:.85rem}.home-scene{padding:0;margin-top:40px}.home-scene-side{display:none}.home-premium .swing-preview{border-radius:13px;transform:none;box-shadow:0 18px 40px -14px #0009}.home-ambience{width:700px;height:600px;top:-80px;opacity:.7}.home-ambience i{width:600px;height:370px}.home-ambience i:nth-child(2){width:700px;height:450px}.home-ambience i:nth-child(3){width:450px;height:450px}.home-discover{margin-top:25px;width:34px;height:34px}}
@media(max-width:1000px){.home-premium .home-highlights{margin-top:85px}.home-feature-copy{padding:26px 26px 24px}.home-premium .home-highlight h3{font-size:1.5rem}.home-premium .home-updates{grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr);gap:22px}}
@media(max-width:760px){.home-premium .home-highlights{margin-top:70px}.home-premium .home-heading-icon{width:38px;height:38px;border-radius:12px}.home-premium .home-section-heading{gap:13px;margin-bottom:27px}.home-premium .home-section-heading h2{font-size:1.8rem;max-width:360px}.home-premium .home-section-heading p{font-size:.85rem;margin-top:10px}.home-premium .home-highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.home-highlight-rendering,.home-highlight-customization{grid-column:span 1}.home-feature-copy{padding:25px 23px}.home-premium .home-highlight h3{font-size:1.45rem}.home-premium .home-highlight p{font-size:.82rem}.home-premium .home-updates{margin-top:80px;grid-template-columns:1fr;gap:32px;margin-bottom:65px}.home-premium .home-section-heading-inline h2{font-size:1.45rem}.home-premium .home-news-card,.home-premium .home-community-card{height:auto}.home-premium .home-community-card,.home-premium .home-community-card iframe{min-height:340px;height:340px}.home-premium .home-news-copy{padding:24px}.home-premium .home-news-copy h3{font-size:1.6rem}.home-premium .footer-banner{padding:28px;gap:22px}.home-premium .footer-banner-copy>p{font-size:1.14rem}.home-premium .footer-banner-benefits{gap:10px;margin-top:12px}.home-premium .footer-banner-benefits li{font-size:.62rem}.home-premium .site-footer{margin-top:15px}.home-premium .footer-legal-box{font-size:.65rem}}
@media(max-width:540px){.home-premium .home-highlight-grid{grid-template-columns:1fr}.home-highlight-rendering,.home-highlight-customization{grid-column:1}.home-premium .home-highlight{border-radius:19px}.home-premium .home-highlight h3{font-size:1.65rem}.home-premium .home-card-icon{width:25px;height:25px;margin-bottom:18px}.home-feature-copy{padding:28px 27px}.home-premium .home-highlight p{font-size:.87rem}.home-premium .home-updates{margin-top:70px}.home-premium .footer-banner{padding:27px;gap:19px}.home-premium .footer-banner-copy>p{font-size:1.08rem}.home-premium .footer-banner .button{justify-self:start;min-width:155px}}
@media(max-width:720px){.home-premium #highlights-title{scroll-margin-top:145px}}
@media(max-width:540px){.home-premium .site-header nav{padding:8px;gap:8px}.home-premium .site-header .brand img{width:25px;height:29px}.home-premium .header-actions{gap:6px}.home-premium .site-header .header-actions .button,.home-premium .header-login{font-size:.7rem;padding:8px 10px;min-height:36px}.home-premium .header-login svg{display:none}.home-premium .player-search{width:auto;min-height:36px;padding:0 8px;gap:6px}.home-premium .player-search input{font-size:.7rem;padding:9px 0}.home-premium .player-search>svg{width:14px;height:14px}.home-premium .site-header .nav-links{gap:0;justify-content:space-between}.home-premium .site-header .nav-links a{font-size:.74rem;min-height:32px}.home-premium .swing-intro{padding-top:34px}}
@media(prefers-reduced-motion:reduce){.home-premium *,.home-premium *::before,.home-premium *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.home-premium .swing-preview,.home-scene-side{transform:none}.home-motion-pending .swing-intro-emblem,.home-motion-pending #home-title,.home-motion-pending .swing-download,.home-enhanced [data-home-reveal]:not(.is-entered){opacity:1}.home-premium .button:hover,.home-discover:hover svg,.home-premium .home-highlight:hover,.home-premium .footer-social-icons a:hover{translate:none}}
@media(prefers-reduced-transparency:reduce){.home-premium.home-scrolled .site-header{background:#101720;backdrop-filter:none}}

/* Three equally sized, icon-led cards. Links share the same baseline. */
.home-premium .home-highlight{display:flex;grid-column:auto;border-radius:18px}
.home-premium .home-highlight .home-feature-copy{display:flex;flex-direction:column;width:100%;padding:28px 26px}
.home-premium .home-highlight .home-card-icon{position:static;display:block;width:25px;height:25px;margin-bottom:22px;opacity:1}
.home-premium .home-highlight h3{font-size:1.18rem!important;line-height:1.3;letter-spacing:-.035em;margin:10px 0 12px}
.home-premium .home-highlight p{font-size:.84rem;line-height:1.75;margin-bottom:24px}
.home-premium .home-feature-copy>a{margin-top:auto;padding-top:2px}
@media(min-width:761px){.home-premium .home-highlight-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.home-premium .home-highlight-grid{grid-template-columns:1fr}.home-premium .home-highlight .home-feature-copy{padding:27px}.home-premium .home-highlight h3{font-size:1.3rem!important}}
