/* NORYX — Página Home (escopo .nx-home). Carregada só neste template. */
.nx-home * {box-sizing:border-box; margin:0; padding:0;}
.nx-home .wrap {max-width:1200px; margin:0 auto; padding-left:24px; padding-right:24px;}
.nx-home .hero {border-bottom:1px solid var(--noryx-line);}
.nx-home .hero .in {max-width:1200px; margin:0 auto; padding:64px 24px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:56px; align-items:center;}
.nx-home .hero .in > * {min-width:0;}
@media(max-width:860px) {
.nx-home .hero .in {grid-template-columns:1fr; gap:36px; padding:44px 24px;}
}
.nx-home .hero .eyebrow {display:inline-flex; align-items:center; gap:8px; font-family:var(--mono); font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--noryx-blue); background:rgba(27,77,134,.07); padding:6px 12px; border-radius:999px; margin-bottom:24px;}
.nx-home .hero h1 {font-size:clamp(36px,5vw,58px); font-weight:700; letter-spacing:-.035em; line-height:1.02; margin-bottom:20px;}
.nx-home .hero p {font-size:18px; color:var(--noryx-ink-soft); max-width:460px; margin-bottom:30px; font-weight:300; line-height:1.55;}
.nx-home .hero .ctas {display:flex; gap:12px; flex-wrap:wrap;}
.nx-home .btn-primary {background:var(--noryx-navy); color:#fff; border:none; padding:15px 26px; border-radius:var(--noryx-radius-sm); font-family:inherit; font-size:14.5px; font-weight:600; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; gap:8px;}
.nx-home .btn-primary:hover {background:var(--noryx-blue);}
.nx-home .btn-ghost {background:transparent; color:var(--noryx-ink); border:1px solid var(--noryx-line-2); padding:15px 24px; border-radius:var(--noryx-radius-sm); font-size:14.5px; font-weight:600; text-decoration:none; display:inline-flex; align-items:center; gap:8px;}
.nx-home .hero-visual {aspect-ratio:1/1; border-radius:16px; background:radial-gradient(circle at 30% 25%,#fff,transparent 60%),linear-gradient(160deg,#E8EDF4,#C4D0E0); border:1px solid var(--noryx-line); position:relative; display:flex; align-items:center; justify-content:center; overflow:hidden;}
.nx-home .vial {filter:drop-shadow(0 24px 34px rgba(20,26,31,.2));}
.nx-home .vial .cap {margin:0 auto; background:linear-gradient(90deg,#9AA0A8,#EDEFF2 24%,#B9BEC6 52%,#EDEFF2 78%,#8E949C); border-radius:5px 5px 3px 3px;}
.nx-home .vial .neck {margin:2px auto 0; background:linear-gradient(90deg,#D7D2C6,#F2EFE7 50%,#D0CBBE);}
.nx-home .vial .body {border-radius:8px 8px 12px 12px; border:1px solid rgba(255,255,255,.6); position:relative; background:linear-gradient(90deg,rgba(255,255,255,.05),rgba(255,255,255,.6) 14%,rgba(214,224,232,.4) 32%,rgba(255,255,255,.15) 54%,rgba(180,195,208,.35) 76%,rgba(120,135,150,.3)), linear-gradient(180deg,#F3F5F7,#E1E7EE);}
.nx-home .vial .powder {position:absolute; left:6px; right:6px; bottom:6px; height:32%; background:linear-gradient(180deg,#fff,#F1F0EC); border-radius:0 0 10px 10px;}
.nx-home .hero-visual .vial {width:150px;}
.nx-home .hero-visual .vial .cap {height:36px;width:74px;}
.nx-home .hero-visual .vial .neck {height:16px;width:60px;}
.nx-home .hero-visual .vial .body {height:250px;}
.nx-home .hero-visual .floatcard {position:absolute; background:rgba(255,255,255,.9); backdrop-filter:blur(8px); border:1px solid var(--noryx-line); border-radius:12px; padding:12px 15px; font-family:var(--mono); font-size:11px; box-shadow:0 10px 30px rgba(20,35,58,.1);}
.nx-home .hero-visual .fc1 {top:22px; right:22px;}
.nx-home .hero-visual .fc2 {bottom:22px; left:22px;}
.nx-home .hero-visual .floatcard .l {color:var(--noryx-muted); font-size:9.5px; letter-spacing:.08em;}
.nx-home .hero-visual .floatcard .v {color:var(--noryx-blue); font-weight:600; font-size:13px; margin-top:2px;}
.nx-home .hero-visual .floatcard .v.g {color:var(--noryx-green);}
.nx-home .trustbar {border-bottom:1px solid var(--noryx-line); background:var(--noryx-paper-2);}
.nx-home .trustbar .in {max-width:1200px; margin:0 auto; padding:22px 24px; display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
@media(max-width:700px) {
.nx-home .trustbar .in {grid-template-columns:1fr 1fr;}
}
.nx-home .tbi {display:flex; align-items:center; gap:11px;}
.nx-home .tbi .i {width:34px; height:34px; border-radius:50%; background:#fff; border:1px solid var(--noryx-line); display:flex; align-items:center; justify-content:center; color:var(--noryx-blue); flex-shrink:0;}
.nx-home .tbi .i svg {width:17px; height:17px;}
.nx-home .tbi .t {font-size:13px; font-weight:600;}
.nx-home .tbi .s {font-size:11.5px; color:var(--noryx-muted);}
.nx-home .sec {padding:72px 0;}
.nx-home .sec.alt {background:var(--noryx-paper-2); border-top:1px solid var(--noryx-line); border-bottom:1px solid var(--noryx-line);}
.nx-home .sh {display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:40px; flex-wrap:wrap; gap:16px;}
.nx-home .sh .eb {font-family:var(--mono); font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--noryx-blue); margin-bottom:12px;}
.nx-home .sh h2 {font-size:clamp(26px,3.6vw,38px); font-weight:700; letter-spacing:-.025em;}
.nx-home .sh h2 em {font-style:normal; color:var(--noryx-blue);}
.nx-home .sh p {font-size:14.5px; color:var(--noryx-ink-soft); max-width:360px;}
.nx-home .link-arrow {color:var(--noryx-blue); font-size:14px; font-weight:600; text-decoration:none; display:inline-flex; gap:6px; align-items:center; white-space:nowrap;}
.nx-home .cats {display:grid; grid-template-columns:repeat(5,1fr); gap:14px;}
@media(max-width:900px) {
.nx-home .cats {grid-template-columns:1fr 1fr;}
}
.nx-home .cat {border:1px solid var(--noryx-line); border-radius:14px; padding:22px; text-decoration:none; color:var(--noryx-ink); transition:box-shadow .2s, border-color .2s; background:#fff;}
.nx-home .cat:hover {border-color:var(--noryx-blue); box-shadow:0 10px 30px rgba(20,35,58,.06);}
.nx-home .cat .ci {width:36px; height:36px; border-radius:10px; background:rgba(27,77,134,.08); color:var(--noryx-blue); display:flex; align-items:center; justify-content:center; margin-bottom:40px;}
.nx-home .cat .ci svg {width:19px; height:19px;}
.nx-home .cat .cn {font-size:16px; font-weight:600; letter-spacing:-.01em;}
.nx-home .cat .cc {font-size:11.5px; color:var(--noryx-muted); margin-top:3px;}
.nx-home .prods {display:grid; grid-template-columns:repeat(4,1fr); gap:18px;}
@media(max-width:900px) {
.nx-home .prods {grid-template-columns:1fr 1fr;}
}
.nx-home .pc {border:1px solid var(--noryx-line); border-radius:var(--noryx-radius); overflow:hidden; background:#fff; transition:box-shadow .2s, transform .2s;}
.nx-home .pc:hover {box-shadow:0 16px 40px rgba(20,26,31,.08); transform:translateY(-3px);}
.nx-home .pc .img {aspect-ratio:1/1; background:var(--noryx-paper-2); position:relative; display:flex; align-items:center; justify-content:center;}
.nx-home .pc .disc {position:absolute; top:12px; left:12px; z-index:3; background:var(--noryx-blue); color:#fff; font-size:11px; font-weight:700; padding:4px 9px; border-radius:var(--noryx-radius-sm);}
.nx-home .pc .img .vial {width:68px;}
.nx-home .pc .img .vial .cap {height:20px;width:40px;}
.nx-home .pc .img .vial .neck {height:9px;width:32px;}
.nx-home .pc .img .vial .body {height:112px;}
.nx-home .pc .b {padding:16px;}
.nx-home .pc .ct {font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--noryx-muted);}
.nx-home .pc .nm {font-size:18px; font-weight:600; letter-spacing:-.015em; margin-top:5px;}
.nx-home .pc .pchip {display:inline-flex; align-items:center; gap:6px; margin-top:10px; font-size:11px; font-weight:600; color:var(--noryx-blue); background:rgba(27,77,134,.07); padding:5px 10px; border-radius:999px; white-space:nowrap;}
.nx-home .pc .pchip svg {width:12px; height:12px;}
.nx-home .pc .rate {display:flex; align-items:center; gap:6px; margin-top:10px; font-size:12px; color:var(--noryx-muted);}
.nx-home .pc .rate .s {color:var(--noryx-gold);}
.nx-home .pc .foot {display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:14px; padding-top:14px; border-top:1px solid var(--noryx-line);}
.nx-home .pc .foot .price {flex:1 1 auto; min-width:0; white-space:nowrap; font-size:17px; font-weight:700;}
.nx-home .pc .foot .price .amount {font-size:17px; font-weight:700; white-space:nowrap;}
.nx-home .pc .price .now {font-size:19px; font-weight:700;}
.nx-home .pc .price .old {font-size:12.5px; color:var(--noryx-muted); text-decoration:line-through; margin-left:6px;}
/* a.button do Woo/Shoptimizer nasce position:absolute + opacity:0 (efeito
   quick-add) e caía EM CIMA do preço — forçar fluxo normal. */
.nx-home .pc .foot .add,
.nx-home .pc .foot a.button,
.nx-home .pc .foot .added_to_cart {
  position:static !important; opacity:1 !important; visibility:visible !important;
  transform:none !important; margin:0 !important; width:auto !important;
  flex:0 0 auto; background:var(--noryx-navy) !important; color:#fff !important;
  border:none !important; border-radius:var(--noryx-radius-sm) !important;
  padding:9px 15px !important; font-size:13px !important; font-weight:600 !important;
  line-height:1.2 !important; cursor:pointer; white-space:nowrap;
}
.nx-home .pc .foot a.button:hover, .nx-home .pc .foot .add:hover {background:var(--noryx-blue) !important;}
/* screen-reader span injetado como irmão do botão: fora do fluxo */
.nx-home .pc .foot .screen-reader-text {position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden;}
@media(max-width:560px) {
.nx-home .pc .foot {flex-direction:column; align-items:stretch; gap:10px;}
.nx-home .pc .add, .nx-home .pc .foot a.button {width:100% !important; padding:10px !important; text-align:center;}
}
.nx-home .why {display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
@media(max-width:800px) {
.nx-home .why {grid-template-columns:1fr;}
}
.nx-home .wc {border:1px solid var(--noryx-line); border-radius:14px; padding:26px; background:#fff;}
.nx-home .wc .wi {width:44px; height:44px; border-radius:11px; background:var(--noryx-navy); color:#fff; display:flex; align-items:center; justify-content:center; margin-bottom:18px;}
.nx-home .wc .wi svg {width:22px; height:22px;}
.nx-home .wc h3 {font-size:18px; font-weight:600; letter-spacing:-.01em; margin-bottom:8px;}
.nx-home .wc p {font-size:14px; color:var(--noryx-ink-soft); line-height:1.6;}
.nx-home .pmini {background:var(--noryx-navy); color:#fff;}
.nx-home .pmini .in {max-width:1200px; margin:0 auto; padding:64px 24px;}
.nx-home .pmini .sh h2 {color:#fff;}
.nx-home .pmini .sh .eb {color:#8FB4DC;}
.nx-home .pmini .sh p {color:rgba(255,255,255,.6);}
.nx-home .pmini .link-arrow {color:#8FB4DC;}
.nx-home .pflow {display:grid; grid-template-columns:repeat(5,1fr); gap:0; margin-top:8px;}
@media(max-width:800px) {
.nx-home .pflow {grid-template-columns:1fr;}
}
.nx-home .pstep {padding:24px 18px; border-right:1px solid rgba(255,255,255,.1);}
.nx-home .pstep:last-child {border-right:none;}
@media(max-width:800px) {
.nx-home .pstep {border-right:none; border-bottom:1px solid rgba(255,255,255,.1);}
}
.nx-home .pstep .pn {font-family:var(--mono); font-size:11px; color:#8FB4DC; margin-bottom:14px;}
.nx-home .pstep h4 {font-size:16px; font-weight:600; margin-bottom:8px;}
.nx-home .pstep p {font-size:12.5px; color:rgba(255,255,255,.55); line-height:1.5;}
.nx-home .qbox {border:1px solid var(--noryx-line); border-radius:16px; overflow:hidden; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); background:#fff;}
.nx-home .qbox > * {min-width:0;}
@media(max-width:760px) {
.nx-home .qbox {grid-template-columns:1fr;}
}
.nx-home .qbox .qt {padding:40px;}
.nx-home .qbox .qt .eb {font-family:var(--mono); font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--noryx-blue); margin-bottom:12px;}
.nx-home .qbox .qt h2 {font-size:28px; font-weight:700; letter-spacing:-.02em; margin-bottom:12px;}
.nx-home .qbox .qt p {font-size:14.5px; color:var(--noryx-ink-soft); margin-bottom:20px; line-height:1.6;}
.nx-home .qbox .qsearch {display:flex; gap:10px; flex-wrap:wrap;}
.nx-home .qbox .qsearch input {flex:1; min-width:160px; border:1px solid var(--noryx-line-2); border-radius:var(--noryx-radius-sm); padding:13px 15px; font-family:inherit; font-size:14px; outline:none;}
.nx-home .qbox .qsearch button {background:var(--noryx-navy); color:#fff; border:none; border-radius:var(--noryx-radius-sm); padding:0 22px; font-family:inherit; font-size:13.5px; font-weight:600; cursor:pointer;}
/* Painel navy (ticket de verificação) — as cores de texto (branco/azul-soft)
   vêm dos aliases on-dark do noryx.css; fundo claro aqui quebrava o contraste. */
.nx-home .qbox .qv {background:var(--noryx-navy); border-left:1px solid var(--noryx-line); padding:32px; display:flex; flex-direction:column; justify-content:center; gap:10px;}
@media(max-width:760px) {
.nx-home .qbox .qv {border-left:none; border-top:1px solid rgba(255,255,255,.15);}
}
.nx-home .qrow {display:flex; justify-content:space-between; font-size:13px; padding:9px 0; border-bottom:1px solid rgba(255,255,255,.12);}
.nx-home .qrow:last-child {border-bottom:none;}
.nx-home .qrow .k {font-family:var(--mono); font-size:10.5px; letter-spacing:.06em; text-transform:uppercase; color:var(--noryx-blue-soft);}
.nx-home .qrow .val {font-family:var(--mono); font-weight:600; color:#fff;}
.nx-home .qrow .val.blue {color:var(--noryx-blue-soft);}
.nx-home .qrow .val.ok {color:#7CE0AC;}
.nx-home .wholesale {background:var(--noryx-navy); color:#fff; border-radius:16px; padding:44px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:28px; align-items:center;}
.nx-home .wholesale > * {min-width:0;}
@media(max-width:760px) {
.nx-home .wholesale {grid-template-columns:1fr;}
}
.nx-home .wholesale .eb {font-family:var(--mono); font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:#8FB4DC; margin-bottom:12px;}
.nx-home .wholesale h2 {font-size:28px; font-weight:700; letter-spacing:-.02em; margin-bottom:10px;}
.nx-home .wholesale p {font-size:14.5px; color:rgba(255,255,255,.65); max-width:520px; line-height:1.6;}
.nx-home .wholesale .wbtn {background:#fff; color:var(--noryx-navy); text-decoration:none; padding:15px 28px; border-radius:var(--noryx-radius-sm); font-size:14.5px; font-weight:600; white-space:nowrap; display:inline-block;}
.nx-home .revs {display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
@media(max-width:800px) {
.nx-home .revs {grid-template-columns:1fr;}
}
.nx-home .rev {border:1px solid var(--noryx-line); border-radius:14px; padding:26px; background:#fff;}
.nx-home .rev .s {color:var(--noryx-gold); letter-spacing:1.5px; margin-bottom:14px;}
.nx-home .rev .q {font-size:15px; line-height:1.6; margin-bottom:18px; font-weight:300;}
.nx-home .rev .who {display:flex; align-items:center; gap:11px;}
.nx-home .rev .av {width:38px; height:38px; border-radius:50%; background:var(--noryx-paper-2); border:1px solid var(--noryx-line); display:flex; align-items:center; justify-content:center; font-weight:600; font-size:13px; color:var(--noryx-ink-soft);}
.nx-home .rev .nm {font-size:13.5px; font-weight:600; display:flex; align-items:center; gap:7px;}
.nx-home .rev .rl {font-size:11.5px; color:var(--noryx-muted);}
.nx-home .rev .vf {margin-left:auto; font-size:10.5px; color:var(--noryx-green); font-weight:600;}
.nx-home .nl {background:var(--noryx-navy); color:#fff;}
.nx-home .nl .in {max-width:1200px; margin:0 auto; padding:52px 24px; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:44px; align-items:center;}
.nx-home .nl .in > * {min-width:0;}
@media(max-width:820px) {
.nx-home .nl .in {grid-template-columns:1fr; gap:22px;}
}
.nx-home .nl .k {font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:#8FB4DC; margin-bottom:12px;}
.nx-home .nl h3 {font-size:27px; font-weight:600; letter-spacing:-.02em; line-height:1.1;}
.nx-home .nl p {font-size:14px; color:rgba(255,255,255,.6); margin-top:10px; max-width:420px;}
.nx-home .nl-field {display:flex; background:#fff; border-radius:var(--noryx-radius-sm); overflow:hidden;}
.nx-home .nl-field input {flex:1; border:none; padding:16px 18px; font-family:inherit; font-size:14.5px; outline:none; color:var(--noryx-ink); min-width:0;}
.nx-home .nl-field button {border:none; background:var(--noryx-blue); color:#fff; padding:0 26px; font-family:inherit; font-size:14px; font-weight:600; cursor:pointer; white-space:nowrap;}
.nx-home .nl small {display:block; margin-top:11px; font-size:11.5px; color:rgba(255,255,255,.45);}
.nx-home .foot {background:var(--noryx-paper-2); border-top:1px solid var(--noryx-line);}
.nx-home .foot .in {max-width:1200px; margin:0 auto; padding:56px 24px 0;}
.nx-home .foot-top {display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr 1fr; gap:36px;}
@media(max-width:980px) {
.nx-home .foot-top {grid-template-columns:1fr 1fr 1fr;}
.nx-home .foot-brand {grid-column:1/-1;}
}
@media(max-width:560px) {
.nx-home .foot-top {grid-template-columns:1fr 1fr;}
}
.nx-home .foot-brand .bw {font-weight:700; font-size:22px; letter-spacing:.28em; padding-left:.28em; margin-bottom:14px;}
.nx-home .foot-brand .bt {font-size:13.5px; color:var(--noryx-ink-soft); max-width:280px; line-height:1.6; margin-bottom:18px;}
.nx-home .contact-row {display:flex; flex-direction:column; gap:9px; margin-bottom:18px;}
.nx-home .contact-row a {display:flex; align-items:center; gap:10px; font-size:13.5px; color:var(--noryx-ink-soft); text-decoration:none;}
.nx-home .contact-row a .ci {width:28px; height:28px; border-radius:8px; background:#fff; border:1px solid var(--noryx-line); display:flex; align-items:center; justify-content:center; color:var(--noryx-blue);}
.nx-home .contact-row a .ci svg {width:14px; height:14px;}
.nx-home .social {display:flex; gap:10px;}
.nx-home .social a {width:36px; height:36px; border-radius:50%; background:#fff; border:1px solid var(--noryx-line); display:flex; align-items:center; justify-content:center; color:var(--noryx-ink-soft); text-decoration:none;}
.nx-home .social a svg {width:16px; height:16px;}
.nx-home .foot-col h5 {font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--noryx-muted); margin-bottom:16px; font-weight:600;}
.nx-home .foot-col a {display:block; font-size:13.5px; color:var(--noryx-ink-soft); text-decoration:none; margin-bottom:11px;}
.nx-home .foot-col a:hover {color:var(--noryx-ink);}
.nx-home .foot-col a .newtag {font-size:9px; letter-spacing:.08em; background:var(--noryx-blue); color:#fff; padding:1px 6px; border-radius:4px; margin-left:6px;}
.nx-home .foot-strip {max-width:1200px; margin:44px auto 0; padding:24px; border-top:1px solid var(--noryx-line); display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap;}
.nx-home .trust-mini {display:flex; gap:20px; flex-wrap:wrap;}
.nx-home .trust-mini .tm {display:flex; align-items:center; gap:8px; font-size:12.5px; color:var(--noryx-ink-soft);}
.nx-home .trust-mini .tm .i {width:26px; height:26px; border-radius:50%; background:#fff; border:1px solid var(--noryx-line); display:flex; align-items:center; justify-content:center; color:var(--noryx-blue);}
.nx-home .trust-mini .tm .i svg {width:14px; height:14px;}
.nx-home .pays {display:flex; gap:8px; flex-wrap:wrap;}
.nx-home .pays .pay {height:30px; padding:0 10px; border:1px solid var(--noryx-line); background:#fff; border-radius:6px; display:flex; align-items:center; font-size:11px; font-weight:700; color:var(--noryx-ink-soft);}
.nx-home .pays .pix {color:#32BCAD;}
.nx-home .pays .btc {color:#F7931A;}
.nx-home .ruo-band {max-width:1200px; margin:0 auto; padding:22px 24px; border-top:1px solid var(--noryx-line);}
.nx-home .ruo-band .ruo {font-size:12px; line-height:1.6; color:var(--noryx-muted); max-width:920px;}
.nx-home .ruo-band .ruo b {color:var(--noryx-ink-soft); letter-spacing:.06em;}
.nx-home .foot-bottom {background:var(--noryx-paper-2); border-top:1px solid var(--noryx-line);}
.nx-home .foot-bottom .in {max-width:1200px; margin:0 auto; padding:20px 24px; display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap;}
.nx-home .foot-bottom .legal {display:flex; gap:18px; flex-wrap:wrap;}
.nx-home .foot-bottom .legal a {font-size:12.5px; color:var(--noryx-ink-soft); text-decoration:none;}
.nx-home .foot-bottom .cp {font-size:12px; color:var(--noryx-muted);}
