
:root{
  --nvma-tan:#f5efe4;
  --nvma-ink:#29231e;
  --nvma-muted:#665f57;
  --nvma-purple:#6a4d9b;
  --nvma-purple-light:#8b6dbe;
  --nvma-purple-deep:#543a82;
  --nvma-blue:#7ac0eb;
  --nvma-gold:#d6b65c;
}

.nvma-shell{
  position:relative;
  overflow:hidden;
  max-width:1180px;
  margin:38px auto 70px;
  padding:0 20px;
  color:var(--nvma-ink);
}

.nvma-shell::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-180px;
  top:-210px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(122,192,235,.20),rgba(139,109,190,.10) 45%,transparent 70%);
  filter:blur(4px);
  pointer-events:none;
}

.nvma-shell::after{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  left:-190px;
  bottom:-230px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(214,182,92,.14),transparent 68%);
  pointer-events:none;
}

.nvma-shell *{box-sizing:border-box}

.nvma-hero,
.nvma-account-panel,
.nvma-footer{
  position:relative;
  z-index:2;
}

.nvma-hero{
  overflow:hidden;
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:58px;
  align-items:center;
  padding:clamp(42px,7vw,72px);
  border-radius:40px;
  background:
    linear-gradient(107deg,
      rgba(84,58,130,.98) 0%,
      rgba(106,77,155,.95) 28%,
      rgba(106,77,155,.68) 45%,
      rgba(139,109,190,.31) 60%,
      rgba(245,239,228,.60) 80%,
      rgba(245,239,228,.79) 100%);
  border:1px solid rgba(255,255,255,.66);
  box-shadow:0 42px 80px rgba(45,37,31,.18),0 15px 34px rgba(106,77,155,.16),inset 0 1px 0 rgba(255,255,255,.94);
  backdrop-filter:blur(23px) saturate(120%);
}

.nvma-hero::after,
.nvma-account-panel::after,
.nvma-footer::after{
  content:"";
  position:absolute;
  right:22px;
  top:22px;
  width:54px;
  height:54px;
  border-top:2px solid rgba(214,182,92,.84);
  border-right:2px solid rgba(214,182,92,.84);
  pointer-events:none;
}

.nvma-eyebrow{
  display:inline-flex;
  padding:8px 14px;
  border-radius:999px;
  color:#8d6c2c;
  background:rgba(245,239,228,.68);
  border:1px solid rgba(214,182,92,.28);
  font-size:12px;
  font-weight:800;
  letter-spacing:2px;
  text-transform:uppercase;
}

.nvma-hero .nvma-eyebrow{
  color:#f5dfa7;
  background:rgba(255,255,255,.12);
  border-color:rgba(214,182,92,.30);
}

.nvma-hero h1{
  margin:18px 0 15px;
  color:#fff;
  font-size:clamp(38px,5vw,64px);
  line-height:1.04;
}

.nvma-hero p{
  max-width:650px;
  margin:0;
  color:rgba(255,255,255,.89);
  font-size:17px;
  line-height:1.78;
}

.nvma-hero-art{
  position:relative;
  min-height:360px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.nvma-main-orbit{
  position:absolute;
  width:300px;
  height:300px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 0 0 32px rgba(122,192,235,.035),0 0 0 66px rgba(139,109,190,.028);
}

.nvma-main-orbit::before{
  content:"";
  position:absolute;
  width:14px;
  height:14px;
  top:31px;
  right:42px;
  border-radius:50%;
  background:rgba(214,182,92,.88);
  box-shadow:0 0 20px rgba(214,182,92,.38);
}

.nvma-membership-glass{
  position:relative;
  z-index:2;
  width:min(100%,340px);
  padding:34px;
  border-radius:28px;
  background:linear-gradient(145deg,rgba(255,255,255,.54),rgba(245,239,228,.45));
  border:1px solid rgba(255,255,255,.42);
  box-shadow:0 30px 56px rgba(45,31,64,.22),inset 0 1px 0 rgba(255,255,255,.55);
  backdrop-filter:blur(22px);
  color:#fff;
}

.nvma-membership-kicker{
  display:block;
  margin-bottom:18px;
  color:#f5dfa7;
  font-size:11px;
  letter-spacing:1.8px;
  font-weight:800;
}

.nvma-membership-glass strong{
  display:block;
  margin-bottom:8px;
  font-size:25px;
}

.nvma-membership-glass > span:last-child{
  color:rgba(255,255,255,.82);
}

.nvma-resource-section{
  position:relative;
  z-index:2;
  padding:70px 0 10px;
}

.nvma-section-heading{
  max-width:780px;
  margin-bottom:32px;
}

.nvma-section-heading h2{
  margin:14px 0 10px;
  font-size:clamp(30px,4vw,48px);
  line-height:1.08;
}

.nvma-section-heading p{
  margin:0;
  color:var(--nvma-muted);
  line-height:1.75;
}

.nvma-resource-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.nvma-resource-card{
  position:relative;
  overflow:hidden;
  min-height:240px;
  padding:28px;
  border-radius:26px;
  color:var(--nvma-ink)!important;
  text-decoration:none!important;
  background:linear-gradient(145deg,rgba(255,255,255,.62),rgba(245,239,228,.70));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 26px 50px rgba(46,38,31,.10),0 8px 20px rgba(106,77,155,.06),inset 0 1px 0 rgba(255,255,255,.94);
  backdrop-filter:blur(18px);
  transition:.3s ease;
}

.nvma-resource-card::before{
  content:"";
  position:absolute;
  inset:9px;
  border-radius:18px;
  background:
    radial-gradient(circle at 100% 0%,rgba(122,192,235,.16),transparent 38%),
    radial-gradient(circle at 0% 100%,rgba(139,109,190,.09),transparent 43%);
  border:1px solid rgba(255,255,255,.22);
}

.nvma-resource-card::after{
  content:"";
  position:absolute;
  right:17px;
  top:17px;
  width:44px;
  height:44px;
  border-top:2px solid rgba(214,182,92,.76);
  border-right:2px solid rgba(214,182,92,.76);
}

.nvma-resource-card:hover{
  transform:translateY(-7px);
  box-shadow:0 34px 60px rgba(46,38,31,.15),0 11px 25px rgba(106,77,155,.09);
}

.nvma-resource-number,
.nvma-resource-copy{
  position:relative;
  z-index:2;
}

.nvma-resource-number{
  display:inline-flex;
  min-width:42px;
  height:34px;
  padding:0 11px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,var(--nvma-purple),var(--nvma-purple-light));
  font-size:12px;
  font-weight:800;
  letter-spacing:1.2px;
}

.nvma-resource-copy small{
  display:block;
  margin-top:28px;
  color:#8d6c2c;
  font-size:11px;
  font-weight:800;
  letter-spacing:1.4px;
  text-transform:uppercase;
}

.nvma-resource-copy h3{
  margin:7px 0 8px;
  font-size:23px;
}

.nvma-resource-copy p{
  margin:0;
  color:var(--nvma-muted);
  line-height:1.65;
}

.nvma-resource-link{
  display:inline-flex;
  margin-top:17px;
  padding:8px 13px;
  border-radius:999px;
  color:#65508d;
  background:linear-gradient(90deg,rgba(122,192,235,.14),rgba(139,109,190,.11));
  font-weight:800;
}

.nvma-account-panel{
  overflow:hidden;
  margin-top:54px;
  padding:clamp(32px,5vw,52px);
  border-radius:30px;
  background:linear-gradient(145deg,rgba(255,255,255,.62),rgba(245,239,228,.69));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 28px 54px rgba(46,38,31,.11),0 8px 20px rgba(106,77,155,.06),inset 0 1px 0 rgba(255,255,255,.94);
  backdrop-filter:blur(18px);
}

.nvma-woocommerce-wrap{
  margin-top:28px;
  padding:24px;
  border-radius:22px;
  background:rgba(255,255,255,.38);
  border:1px solid rgba(139,109,190,.12);
}

.nv-member-account-design-active .woocommerce-MyAccount-navigation ul{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:0 0 25px;
  padding:0;
  list-style:none;
}

.nv-member-account-design-active .woocommerce-MyAccount-navigation li a{
  display:inline-flex;
  padding:10px 14px;
  border-radius:999px;
  color:#604d85;
  text-decoration:none;
  font-weight:700;
  background:rgba(245,239,228,.70);
  border:1px solid rgba(139,109,190,.13);
}

.nv-member-account-design-active .woocommerce-MyAccount-navigation li.is-active a,
.nv-member-account-design-active .woocommerce-MyAccount-navigation li a:hover{
  color:#fff;
  background:linear-gradient(135deg,var(--nvma-purple),var(--nvma-purple-light));
}

.nv-member-account-design-active .woocommerce-MyAccount-content{
  padding:22px;
  border-radius:18px;
  background:rgba(255,255,255,.52);
  border:1px solid rgba(255,255,255,.65);
}

.nv-member-account-design-active .woocommerce form.login,
.nv-member-account-design-active .woocommerce form.register,
.nv-member-account-design-active .woocommerce form.checkout_coupon{
  border:1px solid rgba(139,109,190,.15)!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.55)!important;
  box-shadow:0 18px 36px rgba(46,38,31,.07)!important;
}

.nv-member-account-design-active .woocommerce input.input-text,
.nv-member-account-design-active .woocommerce textarea{
  border:1px solid rgba(139,109,190,.16)!important;
  border-radius:13px!important;
  padding:13px 14px!important;
  background:rgba(255,255,255,.80)!important;
}

.nv-member-account-design-active .woocommerce button.button,
.nv-member-account-design-active .woocommerce a.button{
  border-radius:999px!important;
  color:#fff!important;
  background:linear-gradient(135deg,var(--nvma-purple),var(--nvma-purple-light))!important;
  padding:12px 20px!important;
}

.nvma-footer{
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  margin-top:54px;
  padding:42px;
  border-radius:30px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 10%,rgba(122,192,235,.18),transparent 32%),
    linear-gradient(145deg,#543a82,#6a4d9b 55%,#8b6dbe);
  box-shadow:0 38px 72px rgba(50,33,70,.20),inset 0 1px rgba(255,255,255,.18);
}

.nvma-footer .nvma-eyebrow{
  color:#f5dfa7;
  background:rgba(255,255,255,.10);
}

.nvma-footer h2{
  margin:13px 0 7px;
  color:#fff;
  font-size:clamp(28px,3vw,42px);
}

.nvma-footer p{
  max-width:720px;
  margin:0;
  color:rgba(255,255,255,.86);
}

.nvma-primary-button{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:12px 22px;
  border-radius:999px;
  color:#fff!important;
  text-decoration:none!important;
  font-weight:800;
  background:linear-gradient(135deg,#5c408b,#8b6dbe 72%,#7ac0eb);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 15px 30px rgba(45,31,64,.22);
}

.nvma-system-message{
  max-width:900px;
  margin:40px auto;
  padding:22px;
  border-radius:18px;
  background:#fff7df;
  border:1px solid rgba(214,182,92,.35);
}

@media(max-width:900px){
  .nvma-hero{
    grid-template-columns:1fr;
  }
  .nvma-resource-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .nvma-footer{
    display:block;
  }
  .nvma-primary-button{
    margin-top:24px;
  }
}

@media(max-width:620px){
  .nvma-shell{
    padding:0 12px;
  }
  .nvma-hero{
    padding:38px 24px;
    border-radius:30px;
  }
  .nvma-resource-grid{
    grid-template-columns:1fr;
  }
  .nvma-account-panel,
  .nvma-footer{
    padding:30px 22px;
    border-radius:24px;
  }
  .nvma-woocommerce-wrap{
    padding:16px;
  }
}

@media(prefers-reduced-motion:reduce){
  .nvma-resource-card{
    transition:none;
  }
  .nvma-resource-card:hover{
    transform:none;
  }
}
