/* Homepage-only refinement. Keep the original content, logo geometry and routes. */
.nvx-home-refine { --home-red:#ce2533; --home-line:rgba(231,234,239,.16); }
.nvx-home-refine .hero__col { transform:none; }
.nvx-home-refine .hero__title { font-family:"Estedad",var(--f-ui),sans-serif; font-weight:750; line-height:1.5; letter-spacing:0; text-wrap:balance; }
.nvx-home-refine .wall__g { line-height:1.95; color:#ced0d6; }
.nvx-home-refine .sig { opacity:.85; gap:12px; }
.nvx-home-refine .sig__u { letter-spacing:.12em; font-size:10px; }
.nvx-home-refine .cta-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; max-width:440px; gap:10px; margin-top:24px; align-items:stretch; }
.nvx-home-refine .cta-row .hcta { width:100%; max-width:none; min-width:0; min-height:48px; padding:12px 10px; box-sizing:border-box; justify-content:center; text-align:center; white-space:nowrap; border-radius:12px; font-size:12px; letter-spacing:0; border-color:var(--home-line); background:rgba(17,19,24,.78); color:#f1f2f5; }
.nvx-home-refine .cta-row .hcta--main { grid-column:1/-1; min-height:54px; font-size:14px; font-weight:700; background:linear-gradient(145deg,#d02a37,#a91d2a); border:1px solid #e55c67; box-shadow:inset 0 1px 0 rgba(255,255,255,.19),0 10px 25px rgba(80,9,17,.22); color:#fff; }
.nvx-home-refine .cta-row .hcta--main svg { color:inherit; }
.nvx-home-refine .cta-row .hcta:hover { border-color:#da6470; background-color:#242027; }
.nvx-home-refine .cta-row .hcta--main:hover { background:linear-gradient(145deg,#d93845,#ba2330); }
.nvx-home-refine .cta-row .hcta:active { transform:translateY(1px); }
.nvx-home-refine a:focus-visible,.nvx-home-refine button:focus-visible { outline:2px solid #f1a3ac; outline-offset:5px; }
.nvx-home-refine .lang { padding:8px 12px; gap:10px; border:1px solid var(--home-line); border-radius:14px; background:rgba(14,15,19,.94); box-shadow:0 6px 24px rgba(0,0,0,.15); }
.nvx-home-refine .lang button { min-height:32px; }
.nvx-home-refine .hindex { gap:12px; perspective:1000px; }
.nvx-home-refine .hindex a { width:100%; box-sizing:border-box; aspect-ratio:auto; border-radius:14px; border-color:rgba(225,227,234,.19); background:#15171c; min-height:124px; box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 12px 28px rgba(0,0,0,.22); transform:perspective(850px) rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg)); transition:transform .24s ease-out,border-color .24s,box-shadow .24s; }
.nvx-home-refine .hindex__tv::after { background:linear-gradient(180deg,rgba(9,10,14,.14) 0%,rgba(9,10,14,.12) 30%,rgba(9,10,14,.88) 72%,#090a0e 100%); }
.nvx-home-refine .hindex a>span { color:#f7f7f8; font-family:"Estedad",var(--f-ui),sans-serif; font-size:12px; font-weight:650; line-height:1.6; text-shadow:0 2px 5px rgba(0,0,0,.8); }
.nvx-home-refine .hindex a:hover,.nvx-home-refine .hindex a:focus-visible { border-color:rgba(226,104,116,.7); box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 20px 30px rgba(0,0,0,.3); }
.nvx-home-refine .band { padding-top:clamp(56px,7vw,92px); }
.nvx-home-refine .band__title { text-wrap:balance; line-height:1.55; letter-spacing:0; }
.nvx-home-refine .band__sub { line-height:2; color:#bfc2c9; max-width:65ch; }
.nvx-home-refine .tile { border-color:rgba(225,227,234,.14); border-radius:16px; background:linear-gradient(145deg,rgba(33,34,40,.86),rgba(13,15,20,.94)); }
.nvx-home-refine .tile__body { padding:18px; }
.nvx-home-refine .tile__title { line-height:1.75; text-wrap:pretty; }
.nvx-home-refine .tile:hover { border-color:rgba(216,96,110,.6); }
.nvx-home-refine .tile__frame img { transition:transform .55s cubic-bezier(.2,.65,.3,1); }
.nvx-home-refine .tile:hover .tile__frame img { transform:scale(1.035); }
.nvx-home-refine .band__cta { min-height:44px; display:inline-flex; align-items:center; }
.nvx-home-refine .cue { display:none; }
/* Real brand artwork is visible until the WebGL entrance is complete. */
.nvx-home-refine .home-mark-fallback { pointer-events:none; margin:0; position:absolute; top:90px; left:5%; width:38%; display:grid; place-items:center; opacity:1; transition:opacity .6s; }
.nvx-home-refine .home-mark-fallback img { display:block; width:100%; height:auto; max-width:520px; aspect-ratio:1; object-fit:contain; mix-blend-mode:screen; }
.nvx-stage-ready .nvx-home-refine .home-mark-fallback,
html.nvx-stage-ready[lang="en"] .nvx-home-refine .home-mark-fallback { opacity:0!important; visibility:hidden!important; }
.nvx-home-refine .home-skip { position:fixed; top:12px; left:12px; z-index:100; transform:translateY(-160%); padding:12px 18px; background:#f2f3f5; color:#16171b; border-radius:8px; }
.nvx-home-refine .home-skip:focus { transform:none; }
@media(min-width:1100px){
 .nvx-home-refine .hero { padding-inline:clamp(24px,3vw,56px); }
 .nvx-home-refine .hero__col { padding-block:clamp(82px,11vh,112px) 8px; max-width:530px; }
 .nvx-home-refine .hero__title { font-size:clamp(27px,2.55vw,40px); }
 .nvx-home-refine .wall__w { font-size:clamp(54px,5vw,78px); }
 .nvx-home-refine .hindex { margin-top:32px; }
 html.nostage .nvx-home-refine .hero { grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-rows:1fr auto; padding-top:0; }
 html.nostage .nvx-home-refine .hero__col { align-items:flex-start; justify-self:start; text-align:start; }
 html.nostage .nvx-home-refine .hindex { grid-column:1/-1; }
}
@media(min-width:621px) and (max-width:1099px){
 .nvx-home-refine .hindex { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media(max-width:1099px){
 .nvx-home-refine .hero__col { width:100%; max-width:640px; align-self:center; align-items:center; text-align:center; }
 .nvx-home-refine .hero { text-align:center; }
 .nvx-home-refine .sig { margin-top:22px; justify-content:center; }
 .nvx-home-refine .cta-row { margin-inline:auto; }
 .nvx-home-refine .home-mark-fallback,html[lang="en"] .nvx-home-refine .home-mark-fallback { width:min(70vw,330px); left:50%; right:auto; top:68px; transform:translateX(-50%); }
 html.nostage .nvx-home-refine .hero { padding-top:calc(min(70vw,330px) + 78px); }
}
@media(max-width:620px){
 .nvx-home-refine .hero__title { font-size:clamp(25px,6.6vw,34px); }
 .nvx-home-refine .cta-row { max-width:400px; margin-top:20px; }
 .nvx-home-refine .cta-row .hcta { font-size:11px; padding:10px 6px; gap:6px; }
 .nvx-home-refine .cta-row .hcta--main { font-size:13px; }
 .nvx-home-refine .cta-row .hcta svg { width:16px; flex:none; }
 .nvx-home-refine .hindex { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:32px; }
 .nvx-home-refine .hindex a { min-height:128px; }
 .nvx-home-refine .lang { top:12px; padding:5px 9px; }
 .nvx-home-refine .band__head { grid-template-areas:'eyebrow' 'title' 'sub' 'path' 'cta'; grid-template-columns:1fr; }
 .nvx-home-refine .band__cta { justify-self:start; }
}
@media(max-width:620px) and (max-height:740px){
 .nvx-home-refine .hero { padding-top:calc(var(--logo-bottom) + 20px); }
 .nvx-home-refine .sig { padding-block:0; margin-top:12px; }
 .nvx-home-refine .wall__led { margin-top:10px; }
 .nvx-home-refine .cta-row { margin-top:14px; }
}
@media(prefers-reduced-motion:reduce){
 .nvx-home-refine .hindex a,.nvx-home-refine .tile,.nvx-home-refine .tile__frame img { transition:none; transform:none; }
 .nvx-home-refine .home-mark-fallback { transition:none; }
 .nvx-home-refine .tile:hover .tile__frame img { transform:none; }
}
