/* The Nexus V65 — storefront refinement + Rift Experience bridge.
   Purposeful motion only; future ad slots remain animation-free. */
:root{--nx65-green:#45f882;--nx65-bg:#050b0f;--nx65-panel:#081116;--nx65-line:rgba(255,255,255,.075);--nx65-muted:#899992;--nx65-ease:cubic-bezier(.2,.78,.22,1)}

/* Header / brand --------------------------------------------------------- */
.th-header .nx-brand-lockup>a{position:relative;isolation:isolate;gap:11px!important}
.th-header .nx-brand-lockup>a::before{content:"";position:absolute;left:-7px;top:50%;width:52px;height:52px;transform:translateY(-50%) scale(.72);border-radius:16px;background:radial-gradient(circle,rgba(69,248,130,.17),transparent 68%);opacity:0;transition:.35s var(--nx65-ease);z-index:-1}
.th-header .nx-brand-lockup>a:hover::before,.th-header .nx-brand-lockup>a:focus-visible::before{opacity:1;transform:translateY(-50%) scale(1)}
.th-header .nx-brand-lockup img{filter:drop-shadow(0 0 0 rgba(69,248,130,0));transition:transform .38s var(--nx65-ease),filter .38s ease!important}
.th-header .nx-brand-lockup>a:hover img{transform:translateY(-1px) rotate(-2deg) scale(1.035)!important;filter:drop-shadow(0 0 12px rgba(69,248,130,.25))}
.th-header .nx-brand-copy strong{position:relative;letter-spacing:.01em}
.th-header .nx-brand-copy strong::after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:1px;background:linear-gradient(90deg,var(--nx65-green),transparent);transition:right .35s var(--nx65-ease)}
.th-header .nx-brand-lockup>a:hover .nx-brand-copy strong::after{right:10%}
.th-header .nx-brand-copy small{transition:color .25s ease,letter-spacing .35s var(--nx65-ease);color:rgba(69,248,130,.72)!important}
.th-header .nx-brand-lockup>a:hover .nx-brand-copy small{color:var(--nx65-green)!important;letter-spacing:.16em!important}

/* V64 nav indicator, refined into a lighter underline/glass signal. */
.nx64-nav-indicator{height:2px!important;bottom:7px!important;border:0!important;border-radius:99px!important;background:linear-gradient(90deg,transparent,var(--nx65-green) 22%,var(--nx65-green) 78%,transparent)!important;box-shadow:0 0 18px rgba(69,248,130,.22)!important}
.nx64-nav-track>li>a.nx64-current{background:transparent!important;border-color:transparent!important;box-shadow:none!important;color:var(--nx65-green)!important}
.nx64-nav-track>li>a::before{content:"";position:absolute;inset:7px 4px;border-radius:12px;background:rgba(69,248,130,.045);opacity:0;transform:scale(.94);transition:.22s ease;z-index:-1}
.nx64-nav-track>li>a:hover::before,.nx64-nav-track>li>a:focus-visible::before{opacity:1;transform:scale(1)}

/* Home bento V2 ---------------------------------------------------------- */
.nx64-bento{margin-top:-34px!important}
.nx64-bento .nx40-shell{grid-template-columns:1.15fr .92fr .92fr!important;gap:14px!important}
.nx64-bento-card{min-height:190px!important;padding:24px!important;border-color:rgba(255,255,255,.085)!important;background:#071015!important;box-shadow:0 25px 70px rgba(0,0,0,.24)!important}
.nx64-bento-card--store{min-height:395px!important}
.nx64-bento-card--story{min-height:190px!important}
.nx64-bento-card .nx65-bento-art{position:absolute;inset:0;z-index:-3;background-position:center;background-size:cover;opacity:.28;filter:saturate(.82) contrast(1.03);transform:scale(1.015);transition:transform .7s var(--nx65-ease),opacity .5s ease}
.nx64-bento-card::before{z-index:-1!important;background:radial-gradient(circle,rgba(69,248,130,.13),transparent 67%)!important}
.nx64-bento-card::after{z-index:-2!important;background:linear-gradient(90deg,rgba(4,11,14,.98) 0%,rgba(4,11,14,.86) 48%,rgba(4,11,14,.35) 100%)!important}
.nx64-bento-card--store .nx65-bento-art{background-image:url('/assets/store/icons/_source/riot-star-guardian-ahri.jpg');background-position:62% center;opacity:.38}
.nx64-bento-card--rift .nx65-bento-art{background-image:url('/assets/img/blog/chengwei-pan-1.jpg');background-position:66% center;opacity:.29}
.nx64-bento-card--tournament .nx65-bento-art{background-image:url('/assets/img/video/gameplay-4.webp');background-position:center;opacity:.27}
.nx64-bento-card--story .nx65-bento-art{background-image:url('/assets/img/normal/kayle_.jpg');background-position:70% 38%;opacity:.25}
.nx64-bento-card:hover .nx65-bento-art{transform:scale(1.045);opacity:.38}
.nx64-bento-card--store:hover .nx65-bento-art{opacity:.47}
.nx64-bento-card>div:last-child{position:relative;z-index:2;max-width:70%}
.nx64-bento-card--store>div:last-child{max-width:72%}
.nx64-bento-card--story>div:last-child{max-width:68%}
.nx64-bento-eyebrow{font-size:9px!important;letter-spacing:.15em!important}
.nx64-bento-card h3{max-width:620px;font-size:clamp(27px,2.25vw,39px)!important;line-height:1.02!important}
.nx64-bento-card p{font-size:12.5px!important;color:rgba(220,232,226,.58)!important;max-width:520px!important}
.nx64-bento-go{padding:7px 0;color:var(--nx65-green)!important}

/* Store card V2 ---------------------------------------------------------- */
.nx64-store-page #storeGrid{--bs-gutter-x:16px;--bs-gutter-y:18px}
.nx64-store-page .nx-store-slide{display:flex}
.nx64-store-page .nx65-product-card{width:100%;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.08)!important;border-radius:18px!important;background:linear-gradient(180deg,#0a1318 0%,#071015 100%)!important;box-shadow:0 22px 54px rgba(0,0,0,.22)!important;text-align:left!important}
.nx65-product-media{position:relative;display:block;overflow:hidden;aspect-ratio:4/5;background:radial-gradient(circle at 50% 42%,rgba(69,248,130,.08),transparent 48%),#060d12}
.nx65-product-media>a{display:block;width:100%;height:100%}
.nx65-product-media img{display:block;width:100%;height:100%!important;object-fit:cover!important;object-position:center!important;padding:0!important;border-radius:0!important;background:transparent!important;transition:transform .62s var(--nx65-ease),filter .35s ease!important}
.nx65-product-media::after{content:"";position:absolute;inset:36% 0 0;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(5,11,15,.2) 32%,rgba(5,11,15,.91) 100%)}
.nx65-product-card:hover .nx65-product-media img{transform:scale(1.045);filter:saturate(1.08) contrast(1.02)}
.nx65-product-badges{position:absolute;z-index:4;left:12px;top:12px;display:flex;gap:6px;flex-wrap:wrap;max-width:calc(100% - 56px)}
.nx65-product-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(5,12,16,.82);backdrop-filter:blur(8px);color:#e9f2ed;font:800 8px/1 Poppins,sans-serif;text-transform:uppercase;letter-spacing:.055em}
.nx65-product-chip.category{border-color:rgba(69,248,130,.25);color:var(--nx65-green);background:rgba(7,32,19,.75)}
.nx65-product-chip.low{color:#ffd166;border-color:rgba(255,209,102,.28)}
.nx65-product-chip.out{color:#ff8790;border-color:rgba(255,90,105,.28)}
.nx65-product-chip.deal{color:#041008;background:var(--nx65-green);border-color:var(--nx65-green)}
.nx65-product-card .gc-wish{top:12px!important;right:12px!important;width:36px!important;height:36px!important;background:rgba(5,12,16,.82)!important;border-color:rgba(255,255,255,.14)!important;backdrop-filter:blur(8px)}
.nx65-product-body{display:flex;flex-direction:column;flex:1;padding:16px 16px 15px}
.nx65-product-title{margin:0!important;min-height:auto!important;font:800 20px/1.08 Rajdhani,Poppins,sans-serif!important;letter-spacing:-.01em}
.nx65-product-title a{color:#f5f8f6!important}
.nx65-product-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;color:rgba(220,231,226,.48);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.055em}
.nx65-product-meta span{display:inline-flex;align-items:center;gap:5px}
.nx65-product-meta i{color:var(--nx65-green)}
.nx65-product-price{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-top:15px;padding-top:13px;border-top:1px solid rgba(255,255,255,.06)}
.nx65-product-price>span{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}
.nx65-product-price small{color:rgba(220,231,226,.43);font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.nx65-product-price strong{color:var(--nx65-green);font:900 23px/1 Rajdhani,Poppins,sans-serif}
.nx65-product-price del{color:rgba(220,231,226,.35);font-size:10px}
.nx65-product-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:14px}
.nx65-product-actions .game-buy-btn{display:flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;margin:0!important;border-radius:11px!important;background:rgba(69,248,130,.09)!important;border:1px solid rgba(69,248,130,.34)!important;color:var(--nx65-green)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.055em!important}
.nx65-product-actions .nx65-view-btn{width:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.09);border-radius:11px;color:#c7d3cc;background:rgba(255,255,255,.025);transition:.2s ease}
.nx65-product-actions .nx65-view-btn:hover{border-color:rgba(69,248,130,.32);color:var(--nx65-green);transform:translateY(-1px)}
.nx65-product-card:hover{border-color:rgba(69,248,130,.24)!important;box-shadow:0 28px 75px rgba(0,0,0,.32),0 0 0 1px rgba(69,248,130,.04)!important}

/* Prevent V63 glare from making store cards noisy. */
.nx65-product-card.nx63-glare::before,.nx65-product-card.nx63-glare::after{opacity:.35!important}

@media(max-width:1199px){.nx64-bento .nx40-shell{grid-template-columns:1fr 1fr!important}.nx64-bento-card--store{min-height:280px!important}.nx64-bento-card--story{grid-column:span 2}.nx64-bento-card>div:last-child{max-width:74%}}
@media(max-width:991px){.nx64-bento .nx40-shell{grid-template-columns:1fr!important}.nx64-bento-card,.nx64-bento-card--store,.nx64-bento-card--story{min-height:190px!important;grid-column:auto!important}.nx64-bento-card>div:last-child{max-width:80%}.nx65-product-media{aspect-ratio:5/6}}
@media(max-width:767px){.nx64-bento-card>div:last-child{max-width:94%}.nx64-bento-card .nx65-bento-art{opacity:.2}.nx64-bento-card::after{background:linear-gradient(90deg,rgba(4,11,14,.98),rgba(4,11,14,.72))!important}.nx64-store-page #storeGrid{--bs-gutter-x:12px}.nx65-product-body{padding:13px}.nx65-product-title{font-size:18px!important}.nx65-product-price strong{font-size:20px}.nx65-product-meta{font-size:8px}.nx65-product-actions{grid-template-columns:1fr}.nx65-product-actions .nx65-view-btn{display:none}}
@media(prefers-reduced-motion:reduce){.th-header .nx-brand-lockup img,.nx64-bento-card .nx65-bento-art,.nx65-product-media img{transition:none!important;transform:none!important}}
.nx65-product-media--contain{padding:22px;background:radial-gradient(circle at 50% 42%,rgba(69,248,130,.1),transparent 47%),linear-gradient(160deg,#09161a,#060d11)}
.nx65-product-media--contain img{object-fit:contain!important;filter:drop-shadow(0 18px 30px rgba(0,0,0,.34))}
.nx65-product-card:hover .nx65-product-media--contain img{transform:scale(1.025)!important}
/* The store toolbar used to follow the page down. The owner asked for it to stop:
   it is a tall block - search field, eight category chips, two selects - and pinned
   over the grid it covered the first product row and made scrolling feel sticky in
   the bad sense. It scrolls away with the rest of the page now, at every width. */
.nx64-store-page .nx-store-toolbar{position:static!important;top:auto!important;margin-bottom:18px!important}
.nx64-store-page #storeGrid{position:relative;z-index:1}

/* V140 — equal product-card geometry. A two-line title must not push price/actions down and
   make one slide taller than its neighbour. */
.nx64-store-page .nx-store-slide { align-items: stretch; }
.nx64-store-page .nx65-product-card { height: 100%; min-height: 100%; }
.nx65-product-body { min-height: 184px; }
.nx65-product-title {
  min-height: 44px !important;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.nx65-product-meta { min-height: 20px; }
.nx65-product-price { margin-top: auto; }
@media(max-width:767px){
  .nx65-product-body { min-height: 164px; }
  .nx65-product-title { min-height: 40px !important; }
}
