/* Final NexMods storefront layer. Native SellAuth forms and account handlers remain intact. */
:root{--nm-ease:cubic-bezier(.22,1,.36,1);--nm-focus:#ff5274}
html{scroll-padding-top:110px}
body{font-family:'Outfit','Segoe UI',system-ui,sans-serif}
a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,a,input,select,textarea{touch-action:manipulation}
:where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--nm-focus);outline-offset:4px}
::selection{background:rgba(255,0,51,.28);color:#fff}
.nm-nav-logo{width:auto!important;height:25px!important;object-fit:contain}
.nm-nav-navbar{box-shadow:0 8px 32px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.025)}
.nm-nav-link{position:relative;transition:color .2s,background .2s,border-color .2s,box-shadow .2s}
.nm-nav-loginButton{background:#ff0033;border-color:#ff0033!important;color:#fff!important;box-shadow:0 3px 18px rgba(255,0,51,.15)}
.nm-nav-loginButton:hover{background:#e6002e!important;box-shadow:0 5px 24px rgba(255,0,51,.25)}
.nm-nav-mobileMenu{transform-origin:top center;animation:nm-menu-enter .22s var(--nm-ease) both}
.nm-floating-container{box-shadow:0 5px 24px rgba(255,0,51,.22)}
.nm-cat-section{max-width:1200px;padding:2rem 2rem 6rem}
.nm-cat-section .nm-cat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.nm-cat-section .nm-cat-card,.nm-cat-section .nm-cat-card:first-child{grid-column:auto;min-height:0;aspect-ratio:16/9}
.nm-cat-section .nm-cat-image{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--nm-ease)}
.nm-cat-section .nm-cat-card:hover .nm-cat-image{transform:scale(1.045)}
.nm-cat-explore{display:flex;align-items:center;gap:.5rem}
.nm-cat-explore svg{width:15px;height:15px;transition:transform .25s var(--nm-ease)}
.nm-cat-card:hover .nm-cat-explore svg{transform:translateX(4px)}
.nm-best-card,.nm-list-card{height:100%;border-color:rgba(255,255,255,.08);backface-visibility:hidden}
.nm-best-image,.nm-list-image{transition:transform .65s var(--nm-ease)}
.nm-best-card:hover .nm-best-image,.nm-list-card:hover .nm-list-image{transform:scale(1.05)}
.nm-best-cardLink:focus-visible,.nm-list-cardLink:focus-visible{border-radius:14px}
.nm-best-cardLink:focus-visible .nm-best-cardOverlay{opacity:1}
.nm-list-cardContent,.nm-best-cardContent{position:relative}
.nm-list-statusTextBadge,.nm-list-customBadge{max-width:calc(100% - 20px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nm-store-search input{transition:border-color .2s,box-shadow .2s}
.nm-store-search input:focus{border-color:rgba(255,0,51,.5);box-shadow:0 0 0 3px rgba(255,0,51,.08)}
.nm-pdp-description .editor img,.nm-information .editor img{max-width:100%;height:auto}
.nm-pdp-description .editor{overflow-wrap:anywhere}
.nm-pdp-infoSection .variant{transition:border-color .2s,background .2s,box-shadow .2s}
.nm-pdp-infoSection .variant.active{box-shadow:0 0 0 1px rgba(255,0,51,.18),0 4px 18px rgba(255,0,51,.04)}
.nm-pay-method:focus-visible{outline-offset:3px}
.nm-pay-input:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(255,0,51,.09)}
.nm-pay-modal{isolation:isolate}
.nm-faq-item{transition:border-color .25s,background .25s}
.nm-faq-item[open] .nm-faq-icon{color:#ff0033}
.nm-faq-questionHeader{min-height:64px;align-items:center}
.nm-faq-questionHeader:focus-visible{border-radius:9px;outline-offset:-4px}
.nm-foot-footer{padding:4rem 0 2rem}
.nm-foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:4rem;margin-bottom:3.5rem}
.nm-foot-brand-link{display:inline-flex;flex-direction:column;align-items:flex-start;text-decoration:none;color:#fff}
.nm-foot-logo{height:40px;width:auto;display:block;margin-bottom:.75rem}
.nm-foot-logoText{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 1rem;line-height:1.3}
.nm-foot-description{max-width:300px;color:#a9a2aa;line-height:1.7;margin:0}
.nm-foot-column h2{font-size:1.1rem;font-weight:650;color:#fff;margin:0 0 1.5rem}
.nm-foot-column a{display:block;width:fit-content;font-size:.94rem;line-height:1.55;margin:0 0 .8rem;color:#a9a2aa;text-decoration:none;transition:color .2s,translate .2s}
.nm-foot-column a:hover{color:#ff0033;translate:3px 0}
.nm-foot-bottom{border-top:1px solid rgba(255,255,255,.05);padding-top:2rem;color:#a9a2aa;text-align:center;font-size:.9rem}
.nm-foot-bottom p{margin:0}
.nm-foot-tools{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.5rem 1.25rem;margin:1.25rem 0 0;font-size:.76rem;color:#77717b}
.nm-foot-tools a{color:inherit;text-decoration:none}.nm-foot-tools a:hover{color:#fff}
.nm-information-title{letter-spacing:-.035em}
.nm-information-empty{padding:2rem;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.02)}
.nm-information-empty p{margin:0 0 1rem}
.nm-acc-panel,.nm-dashboard-stat{transition:border-color .2s,box-shadow .2s}
.nm-acc-panel:focus-within{border-color:rgba(255,255,255,.14)}
.nm-acc-search input{min-width:0}
@keyframes nm-menu-enter{from{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(hover:hover) and (pointer:fine){
 html.nm-motion .nm-magnetic,html.nm-motion .nm-magnetic:hover{transform:translate3d(var(--nm-hover-x,0px),var(--nm-hover-y,0px),0) scale(var(--nm-hover-scale,1));transition:background .2s,border-color .2s,box-shadow .25s,color .2s;will-change:auto}
 html.nm-motion .nm-magnetic:hover{--nm-hover-scale:1.025}
 html.nm-motion .nm-magnetic:active{--nm-hover-scale:.975}
 html.nm-motion .nm-magnetic:disabled{transform:none!important}
 html.nm-motion .nm-pointer-card,html.nm-motion .nm-pointer-card:hover{transform:perspective(1000px) rotateX(var(--nm-hover-x,0deg)) rotateY(var(--nm-hover-y,0deg)) translateY(var(--nm-hover-lift,0px));transition:box-shadow .3s,border-color .3s,background .3s}
 html.nm-motion .nm-pointer-card:hover{--nm-hover-lift:-3px;box-shadow:0 14px 34px rgba(0,0,0,.22),0 0 0 1px rgba(255,0,51,.05);border-color:rgba(255,0,51,.3)}
 .nm-primary-btn,.nm-pay-primary{background-image:radial-gradient(120px circle at var(--nm-pointer-x,50%) var(--nm-pointer-y,50%),rgba(255,255,255,.12),transparent 75%)}
}
@media(min-width:1500px){.nm-hero-container{max-width:1400px}}
@media(max-width:1000px){.nm-foot-grid{gap:2rem;grid-template-columns:1.6fr 1fr 1fr 1fr}}
@media(max-width:768px){
 html{scroll-padding-top:95px}
 .nm-nav-navbarContainer{padding:0 80px 0 16px;align-items:stretch}
 .nm-nav-navbar,.nm-nav-mobileMenu{width:100%}
 .nm-hero-hero{margin-top:0;min-height:80svh;padding:112px 0 48px}
 .nm-hero-statsContainer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:2.5rem}
 .nm-hero-statItem{min-width:0}
 .nm-hero-statValue{font-size:clamp(1.2rem,5.5vw,1.6rem);letter-spacing:-.04em}
 .nm-hero-statLabel{font-size:.58rem;letter-spacing:.09em}
 .nm-cat-section{padding:2rem 1.25rem 4rem}
 .nm-cat-section .nm-cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
 .nm-cat-section .nm-cat-card:first-child{grid-column:auto}
 .nm-cat-overlay{padding:1.25rem!important}.nm-cat-cardTitle{font-size:1.1rem}
 .nm-cat-explore{opacity:1;transform:none;font-size:.75rem}
 .nm-foot-grid{grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:2.5rem}
 .nm-foot-container{padding-inline:1.25rem}
 .nm-foot-brand{grid-column:1/-1}.nm-foot-description{max-width:330px}
 .nm-faq-questionHeader{min-height:60px}
 .nm-list-page{padding-inline:1.25rem}
 .nm-pay-input{font-size:16px}
}
@media(max-width:480px){
 .nm-cat-section .nm-cat-grid{grid-template-columns:1fr;gap:1rem}
 .nm-cat-cardTitle{font-size:1.35rem}
 .nm-foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem 1.25rem}
 .nm-foot-column h2{font-size:1rem;margin-bottom:1rem}
 .nm-foot-column a{font-size:.86rem}
 .nm-foot-tools{gap:.5rem 1rem}
 .nm-pay-footer{padding-bottom:max(1.25rem,env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 html.nm-motion .nm-magnetic,html.nm-motion .nm-pointer-card{transform:none!important;transition:none!important}
 .nm-nav-mobileMenu{animation:none}.nm-foot-column a:hover{translate:none}
}
