body {
  background: #0B0B0F;
}
.wp-block-group.is-style-card,
.nupass-card {
  background: #14141B;
  border-radius: 20px;
}
.nupass-shell {
  max-width: 1380px;
  margin: 0 auto;
}

.nupass-site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  backdrop-filter: blur(16px);
}

.nupass-header-row {
  gap: 1rem;
}

.nupass-header-brand {
  gap: 0.75rem;
  min-width: max-content;
}

.nupass-main-nav {
  flex: 1 1 auto;
  justify-content: center;
}

.nupass-main-nav .wp-block-navigation-item__content {
  font-weight: 500;
  opacity: 0.95;
}

.nupass-header-actions-shell {
  min-width: max-content;
  gap: 0.75rem;
}

.nupass-header-actions-mobile-wrap {
  display: none;
}

.nupass-header-actions-desktop-wrap,
.nupass-header-actions-mobile-wrap {
  margin: 0;
}

.nupass-header-actions-desktop-wrap .nupass-header-actions,
.nupass-header-actions-mobile-wrap .nupass-mobile-header-actions {
  margin: 0;
}

@media (min-width: 961px) {
  .nupass-header-actions-mobile-wrap,
  .nupass-mobile-header-actions {
    display: none !important;
  }

  .nupass-header-actions-desktop-wrap,
  .nupass-header-actions {
    display: flex !important;
  }
}

@media (max-width: 960px) {
  .nupass-header-row {
    flex-wrap: nowrap;
  }

  .nupass-main-nav {
    justify-content: flex-end;
  }

  .nupass-header-actions-desktop-wrap,
  .nupass-header-actions {
    display: none !important;
  }

  .nupass-header-actions-mobile-wrap,
  .nupass-mobile-header-actions {
    display: flex !important;
    align-items: center;
  }
}

@media (max-width: 640px) {
  .nupass-header-brand .wp-block-site-title {
    display: none;
  }
}

/* =========================
   NUPASS 1.6.0 VISUAL PASS
   CSS-only refresh over the stable theme structure.
   ========================= */
body.home,
body.blog,
body.archive.post-type-archive-nupass_event {
  background:
    radial-gradient(circle at 85% 12%, rgba(255, 0, 206, 0.12), transparent 18%),
    radial-gradient(circle at 8% 38%, rgba(255, 0, 206, 0.08), transparent 22%),
    #08080C;
}

body.home .wp-site-blocks,
body.blog .wp-site-blocks,
body.archive.post-type-archive-nupass_event .wp-site-blocks {
  overflow-x: hidden;
}

body.home .wp-block-group.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
body.home .wp-block-group.is-layout-constrained,
body.blog .wp-block-group.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
body.archive.post-type-archive-nupass_event .wp-block-group.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: 1180px;
}

.nupass-site-header {
  background: rgba(8, 8, 12, 0.74);
  border-bottom-color: rgba(255,255,255,0.06);
  box-shadow: 0 8px 40px rgba(0,0,0,0.22);
}

.nupass-header-row {
  min-height: 74px;
  max-width: 1180px;
  margin: 0 auto;
  padding-inline: 20px;
}

.nupass-header-brand .custom-logo,
.nupass-header-brand img {
  border-radius: 14px;
}

.nupass-main-nav .wp-block-navigation__container {
  gap: 0.45rem;
}

.nupass-main-nav .wp-block-navigation-item__content {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 0.55rem 0.95rem;
  border-radius: 999px;
  color: rgba(245,247,250,0.92);
  text-decoration: none;
  transition: background-color .18s ease, color .18s ease, opacity .18s ease;
}

.nupass-main-nav .wp-block-navigation-item__content:hover,
.nupass-main-nav .current-menu-item > .wp-block-navigation-item__content,
.nupass-main-nav .current-menu-ancestor > .wp-block-navigation-item__content {
  opacity: 1;
  color: #fff;
  background: rgba(255,255,255,0.05);
}

.nupass-header-actions-shell .wp-block-button__link,
.nupass-header-actions-shell .wp-element-button,
.nupass-header-actions-shell a.wp-element-button {
  box-shadow: 0 14px 34px rgba(255,0,206,0.22);
}

body.home main.wp-block-group {
  padding-bottom: 2.25rem;
}

/* Hero: first section on front page */
body.home main.wp-block-group > .wp-block-group:nth-of-type(1) {
  position: relative;
  max-width: 1180px;
  margin: 0 auto;
  padding: clamp(3rem, 6vw, 5rem) 20px clamp(2.5rem, 5vw, 4rem);
  isolation: isolate;
}

body.home main.wp-block-group > .wp-block-group:nth-of-type(1)::before {
  content: '';
  position: absolute;
  right: -4%;
  top: 1rem;
  width: min(38vw, 420px);
  aspect-ratio: 1;
  border-radius: 38% 62% 56% 44% / 48% 40% 60% 52%;
  background: radial-gradient(circle at 36% 38%, rgba(255, 0, 206, 0.34), rgba(255, 0, 206, 0.08) 38%, transparent 72%);
  filter: blur(2px);
  z-index: -1;
}

body.home main.wp-block-group > .wp-block-group:nth-of-type(1) h1 {
  max-width: 11ch;
  margin: 0 auto 1rem;
  font-size: clamp(2.8rem, 8vw, 5.35rem);
  letter-spacing: -0.06em;
  line-height: 0.93;
}

body.home main.wp-block-group > .wp-block-group:nth-of-type(1) p {
  max-width: 42rem;
  margin-inline: auto;
  color: rgba(245,247,250,0.78);
  font-size: clamp(1rem, 1.9vw, 1.16rem);
}

body.home main.wp-block-group > .wp-block-group:nth-of-type(1) .wp-block-buttons {
  justify-content: center;
  margin-top: 1.35rem;
}

body.home main.wp-block-group > .wp-block-group:nth-of-type(1) .wp-block-button__link,
body.home main.wp-block-group > .wp-block-group:nth-of-type(1) .wp-element-button {
  box-shadow: 0 18px 50px rgba(255,0,206,0.24);
}

/* Shared front-page sections */
body.home main.wp-block-group > .wp-block-group:nth-of-type(2),
body.home main.wp-block-group > .wp-block-group:nth-of-type(3),
body.home main.wp-block-group > .wp-block-group:nth-of-type(4) {
  max-width: 1180px;
  margin: 0 auto;
  padding: 1rem 20px 2rem;
}

body.home main.wp-block-group > .wp-block-group:nth-of-type(2) > h2,
body.home main.wp-block-group > .wp-block-group:nth-of-type(3) > h2,
body.home main.wp-block-group > .wp-block-group:nth-of-type(4) > h2 {
  font-size: clamp(1.85rem, 4vw, 2.8rem);
  letter-spacing: -0.04em;
  margin-bottom: 1rem;
}

/* Events grid cards */
body.home .wp-block-query .wp-block-post-template,
body.archive.post-type-archive-nupass_event .wp-block-query .wp-block-post-template {
  gap: 1.25rem;
}

body.home .wp-block-query .wp-block-post-template > *,
body.archive.post-type-archive-nupass_event .wp-block-query .wp-block-post-template > * {
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,0.08);
  background: linear-gradient(180deg, rgba(20,20,27,0.98), rgba(12,12,18,0.98));
  box-shadow: 0 22px 60px rgba(0,0,0,0.34);
}

body.home .wp-block-query .wp-block-post-featured-image,
body.archive.post-type-archive-nupass_event .wp-block-query .wp-block-post-featured-image {
  margin: 0;
}

body.home .wp-block-query .wp-block-post-featured-image img,
body.archive.post-type-archive-nupass_event .wp-block-query .wp-block-post-featured-image img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

body.home .wp-block-query .wp-block-post-template > * > .wp-block-group:last-child,
body.archive.post-type-archive-nupass_event .wp-block-query .wp-block-post-template > * > .wp-block-group:last-child {
  padding: 1rem 1rem 1.15rem;
}

body.home .wp-block-query h3,
body.archive.post-type-archive-nupass_event .wp-block-query h3 {
  font-size: 1.28rem;
  line-height: 1.12;
}

body.home .wp-block-query .wp-block-post-title a,
body.archive.post-type-archive-nupass_event .wp-block-query .wp-block-post-title a {
  color: var(--wp--preset--color--text);
  text-decoration: none;
}

body.home .wp-block-query .wp-block-post-title a:hover,
body.archive.post-type-archive-nupass_event .wp-block-query .wp-block-post-title a:hover {
  color: var(--wp--preset--color--primary);
}

/* Producer CTA */
body.home main.wp-block-group > .wp-block-group:nth-of-type(3) {
  padding-top: 0.5rem;
}

body.home main.wp-block-group > .wp-block-group:nth-of-type(3) > div {
  padding: clamp(1.5rem, 3vw, 2.25rem);
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(255,0,206,0.14), rgba(255,255,255,0.04));
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow: 0 20px 64px rgba(0,0,0,0.26);
}

/* FAQ */
body.home main.wp-block-group > .wp-block-group:nth-of-type(4) .wp-block-details {
  padding: 1rem 1.05rem;
  border-radius: 18px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
}

body.home main.wp-block-group > .wp-block-group:nth-of-type(4) summary {
  cursor: pointer;
  font-weight: 700;
}

/* Generic footer styling using current markup */
footer .wp-block-group.has-surface-background-color.has-background {
  max-width: 1180px;
  margin: 2.5rem auto 0;
  padding: 1.4rem 20px 2.2rem;
  border-top: 1px solid rgba(255,255,255,0.08);
  background: transparent !important;
}

footer .wp-block-group.has-surface-background-color.has-background p {
  color: rgba(245,247,250,0.66);
}

/* Interior polish */
.single-nupass_event .wp-block-group.is-style-card,
.single-nupass_event .nupass-card,
.page .wp-block-group.is-style-card,
.page .nupass-card {
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow: 0 18px 42px rgba(0,0,0,0.22);
}

@media (max-width: 960px) {
  .nupass-header-row {
    flex-wrap: wrap;
    justify-content: space-between;
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
  }

  .nupass-main-nav {
    order: 3;
    width: 100%;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 0.35rem;
  }

  .nupass-main-nav .wp-block-navigation__container {
    flex-wrap: nowrap;
  }

  .nupass-main-nav .wp-block-navigation-item__content {
    white-space: nowrap;
  }

  .nupass-header-actions-shell {
    margin-left: auto;
  }
}

@media (max-width: 781px) {
  body.home main.wp-block-group > .wp-block-group:nth-of-type(1) {
    padding-top: 2.25rem;
    padding-bottom: 2.1rem;
  }

  body.home main.wp-block-group > .wp-block-group:nth-of-type(1)::before {
    width: 260px;
    right: -16%;
    top: -1.2rem;
    opacity: 0.9;
  }

  body.home .wp-block-query .wp-block-post-template,
  body.archive.post-type-archive-nupass_event .wp-block-query .wp-block-post-template {
    grid-template-columns: 1fr !important;
  }

  body.home main.wp-block-group > .wp-block-group:nth-of-type(2),
  body.home main.wp-block-group > .wp-block-group:nth-of-type(3),
  body.home main.wp-block-group > .wp-block-group:nth-of-type(4) {
    padding-inline: 16px;
  }
}

@media (max-width: 640px) {
  .nupass-site-header {
    backdrop-filter: blur(12px);
  }

  body.home main.wp-block-group > .wp-block-group:nth-of-type(1) h1 {
    font-size: clamp(2.35rem, 12vw, 3.15rem);
  }

  body.home main.wp-block-group > .wp-block-group:nth-of-type(1) p {
    font-size: 1rem;
  }

  body.home main.wp-block-group > .wp-block-group:nth-of-type(2) > h2,
  body.home main.wp-block-group > .wp-block-group:nth-of-type(3) > h2,
  body.home main.wp-block-group > .wp-block-group:nth-of-type(4) > h2 {
    font-size: 1.65rem;
  }

  body.home main.wp-block-group > .wp-block-group:nth-of-type(1) .wp-block-buttons .wp-block-button,
  body.home main.wp-block-group > .wp-block-group:nth-of-type(1) .wp-block-buttons .wp-element-button,
  .nupass-header-actions-shell .wp-block-button,
  .nupass-header-actions-shell .wp-element-button {
    width: 100%;
  }

  .nupass-header-actions-shell .wp-block-button__link,
  .nupass-header-actions-shell .wp-element-button {
    width: 100%;
    justify-content: center;
  }
}


/* ===== v1.6.2 dashboard shell hardening ===== */
.nupass-dashboard-page-shell{
  width:100%;
}
.nupass-dashboard-page-shell,
.nupass-dashboard-page-shell > .wp-block-post-content,
.nupass-dashboard-page-shell > .entry-content{
  max-width:none !important;
}
body:has(.nupass-dashboard-productor) .wp-site-blocks > main,
body:has(.nupass-dashboard-productor) main.wp-block-group,
body:has(.nupass-dashboard-productor) .nupass-dashboard-page-shell{
  max-width:none !important;
  width:100%;
  margin:0;
  padding-left:0;
  padding-right:0;
}
body:has(.nupass-dashboard-productor) .wp-block-post-content,
body:has(.nupass-dashboard-productor) .entry-content{
  max-width:none !important;
}
body:has(.nupass-dashboard-productor) .nupass-site-header,
body:has(.nupass-dashboard-productor) header.wp-block-group.nupass-site-header{
  display:block !important;
  visibility:visible !important;
}
@media (max-width: 900px){
  body:has(.nupass-dashboard-productor) .nupass-site-header{
    position:sticky;
    top:0;
  }
}


/* ===== v1.6.3 desktop/tablet dashboard shell stabilizer ===== */
body:has(.nupass-dashboard-productor){overflow-x:hidden}
body:has(.nupass-dashboard-productor) .wp-site-blocks,
body:has(.nupass-dashboard-productor) .wp-site-blocks > main,
body:has(.nupass-dashboard-productor) .nupass-dashboard-page-shell,
body:has(.nupass-dashboard-productor) .wp-block-post-content,
body:has(.nupass-dashboard-productor) .entry-content{min-width:0;overflow-x:hidden}


/* ===== v1.6.4 home spacing + header label polish ===== */
body.home .wp-site-blocks > main,
body.blog .wp-site-blocks > main,
body.archive.post-type-archive-nupass_event .wp-site-blocks > main{
  margin-top:0 !important;
  padding-top:0 !important;
}
body.home main.wp-block-group > .wp-block-group:nth-of-type(1){
  padding-top:clamp(2rem,4vw,3rem) !important;
  padding-bottom:clamp(2rem,4vw,3rem) !important;
}
body.home main.wp-block-group > .wp-block-group:nth-of-type(2),
body.home main.wp-block-group > .wp-block-group:nth-of-type(3),
body.home main.wp-block-group > .wp-block-group:nth-of-type(4){
  padding-top:.5rem !important;
}
.nupass-main-nav .wp-block-navigation-item__content,
.nupass-header-actions-shell a,
.nupass-header-actions-shell button{
  white-space:nowrap;
}


/* ===== v1.6.5 home container + header label polish ===== */
body.home .wp-site-blocks > main.wp-block-group{max-width:1280px;margin:0 auto;padding-inline:24px;box-sizing:border-box}
body.home main.wp-block-group > .wp-block-group:nth-of-type(1),
body.home main.wp-block-group > .wp-block-group:nth-of-type(2),
body.home main.wp-block-group > .wp-block-group:nth-of-type(3),
body.home main.wp-block-group > .wp-block-group:nth-of-type(4){max-width:1120px;margin-inline:auto}
body.home main.wp-block-group > .wp-block-group:nth-of-type(1){padding-top:2.25rem;padding-bottom:2rem}
body.home main.wp-block-group > .wp-block-group:nth-of-type(2),
body.home main.wp-block-group > .wp-block-group:nth-of-type(3),
body.home main.wp-block-group > .wp-block-group:nth-of-type(4){padding-top:1.25rem;padding-bottom:1.4rem}
body.home main.wp-block-group > .wp-block-group:nth-of-type(3) > div{max-width:860px;margin-inline:auto;text-align:center}
footer .wp-block-group.has-surface-background-color.has-background{margin-top:1rem;padding-top:1rem;padding-bottom:1.5rem}
@media (min-width:1200px){body.home .wp-site-blocks > main.wp-block-group{padding-inline:32px}}
@media (max-width:781px){body.home .wp-site-blocks > main.wp-block-group{padding-inline:16px}}


/* ===== v1.6.6 mobile header cleanup ===== */
.nupass-mobile-nav-toggle{display:none}
.nupass-mobile-drawer[hidden]{display:none!important}
@media (max-width: 960px){
  .nupass-site-header{position:sticky;top:0;z-index:90}
  .nupass-header-row{min-height:64px;max-width:none;padding-inline:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:nowrap !important}
  .nupass-header-brand{flex:1 1 auto;min-width:0}
  .nupass-header-brand .wp-block-site-title{display:none !important}
  .nupass-header-brand .custom-logo,
  .nupass-header-brand img{height:28px;width:auto;max-width:130px;object-fit:contain;border-radius:0}
  .nupass-main-nav,
  .nupass-header-actions-shell,
  .nupass-header-actions-desktop-wrap,
  .nupass-header-actions-mobile-wrap{display:none !important}
  .nupass-mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.03);box-shadow:0 10px 24px rgba(0,0,0,.22);color:#fff;cursor:pointer;flex:0 0 auto}
  .nupass-mobile-nav-toggle span{display:block;width:16px;height:2px;background:#fff;border-radius:999px;margin:2px 0}

  .nupass-mobile-drawer{position:fixed;inset:0;z-index:9999}
  .nupass-mobile-drawer__backdrop{position:absolute;inset:0;background:rgba(5,5,8,.62);backdrop-filter:blur(4px);opacity:0;transition:opacity .22s ease}
  .nupass-mobile-drawer__panel{position:absolute;top:0;right:0;height:100%;width:min(88vw,360px);background:linear-gradient(180deg,rgba(13,13,18,.98),rgba(7,7,10,.995));border-left:1px solid rgba(255,255,255,.08);box-shadow:-18px 0 48px rgba(0,0,0,.36);padding:16px 16px 24px;transform:translateX(100%);transition:transform .22s ease;display:flex;flex-direction:column;overflow-y:auto}
  .nupass-mobile-drawer.is-open .nupass-mobile-drawer__backdrop{opacity:1}
  .nupass-mobile-drawer.is-open .nupass-mobile-drawer__panel{transform:translateX(0)}
  .nupass-mobile-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
  .nupass-mobile-drawer__brand{display:flex;align-items:center;gap:10px;min-width:0}
  .nupass-mobile-drawer__brand .wp-block-site-title{display:none!important}
  .nupass-mobile-drawer__brand .custom-logo,
  .nupass-mobile-drawer__brand img{height:28px;width:auto;max-width:122px;object-fit:contain;border-radius:0}
  .nupass-mobile-drawer__close{width:40px;height:40px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#fff;font-size:26px;line-height:1;cursor:pointer}
  .nupass-mobile-drawer__nav{display:flex;flex-direction:column;gap:14px}
  .nupass-mobile-drawer__group{display:flex;flex-direction:column;gap:10px}
  .nupass-mobile-drawer__group + .nupass-mobile-drawer__group{padding-top:4px}
  .nupass-mobile-drawer__link{display:flex;align-items:center;min-height:48px;padding:0 16px;border-radius:18px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.025);color:#f5f7fa;text-decoration:none;font-size:16px;font-weight:600;letter-spacing:-.01em}
  .nupass-mobile-drawer__link.is-cta{justify-content:center;min-height:52px;background:linear-gradient(180deg,#ff00ce,#e000b6);border-color:transparent;box-shadow:0 16px 36px rgba(255,0,206,.22)}
  .nupass-mobile-drawer__group.is-utility-group{margin-top:auto;padding-top:10px}
  .nupass-mobile-drawer__group.is-utility-group .nupass-mobile-drawer__link{font-size:15px;font-weight:500;min-height:44px;color:rgba(245,247,250,.88)}
  body.nupass-mobile-drawer-open{overflow:hidden}
}


/* ===== v1.6.7 desktop header center + Mis Tickets ===== */
@media (min-width: 961px){
  .nupass-header-row{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    align-items:center;
    column-gap:20px;
  }
  .nupass-header-brand{
    justify-self:start;
    min-width:0;
  }
  .nupass-main-nav{
    grid-column:2;
    justify-self:center;
    justify-content:center !important;
    flex:0 0 auto;
    min-width:max-content;
  }
  .nupass-header-actions-shell{
    grid-column:3;
    justify-self:end;
    margin-left:0;
    min-width:max-content;
  }
}


/* ===== v1.6.9 desktop header center + action polish ===== */
@media (min-width: 961px){
  .nupass-site-header{
    background: rgba(8,8,12,.82);
    border-bottom-color: rgba(255,255,255,.05);
    box-shadow: 0 10px 36px rgba(0,0,0,.24);
  }
  .nupass-header-row{
    position: relative;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    min-height: 84px;
    max-width: 1240px;
    padding-inline: 26px;
    gap: 20px;
    overflow: visible;
  }
  .nupass-header-brand{
    flex: 0 0 auto;
    min-width: 220px;
    z-index: 2;
  }
  .nupass-header-brand .custom-logo,
  .nupass-header-brand img{
    border-radius: 10px;
  }
  .nupass-main-nav{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: auto;
    flex: none;
    z-index: 1;
  }
  .nupass-main-nav .wp-block-navigation__container{
    display: flex;
    flex-wrap: nowrap !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
  }
  .nupass-main-nav .wp-block-navigation-item__content{
    min-height: 44px;
    padding: 0 16px;
    border-radius: 999px;
    font-size: .98rem;
    font-weight: 650;
    letter-spacing: -.01em;
    color: rgba(245,247,250,.92);
    background: transparent;
    border: 1px solid transparent;
  }
  .nupass-main-nav .wp-block-navigation-item__content:hover,
  .nupass-main-nav .current-menu-item > .wp-block-navigation-item__content,
  .nupass-main-nav .current-menu-ancestor > .wp-block-navigation-item__content{
    background: rgba(255,255,255,.045);
    border-color: rgba(255,255,255,.06);
  }

  .nupass-header-actions-shell{
    flex: 0 0 auto;
    min-width: max-content;
    justify-self: auto;
    margin-left: auto;
    z-index: 2;
  }
  .nupass-header-actions-desktop-wrap,
  .nupass-header-actions-shell .nupass-header-actions{
    display: flex !important;
    align-items: center;
    gap: 10px;
    flex-wrap: nowrap;
  }
  .nupass-header-actions-shell a,
  .nupass-header-actions-shell .wp-element-button,
  .nupass-header-actions-shell .wp-block-button__link{
    white-space: nowrap;
    text-decoration: none;
    transition: transform .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease, opacity .18s ease;
  }
  .nupass-header-actions-shell a:hover,
  .nupass-header-actions-shell .wp-element-button:hover,
  .nupass-header-actions-shell .wp-block-button__link:hover{
    transform: translateY(-1px);
  }
  .nupass-header-actions-shell .nupass-action-icon{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0 !important;
    border-radius: 999px;
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.08);
    color: rgba(245,247,250,.94) !important;
    box-shadow: none !important;
  }
  .nupass-header-actions-shell .nupass-action-icon svg,
  .nupass-header-actions-shell .nupass-action-icon i{
    width: 18px;
    height: 18px;
  }
  .nupass-header-actions-shell .nupass-action-secondary,
  .nupass-header-actions-shell .nupass-action-secondary.wp-element-button,
  .nupass-header-actions-shell .nupass-action-secondary .wp-block-button__link{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 18px !important;
    border-radius: 16px;
    background: rgba(255,255,255,.03) !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    color: #fff !important;
    box-shadow: none !important;
    font-weight: 700;
  }
  .nupass-header-actions-shell .nupass-action-primary,
  .nupass-header-actions-shell .nupass-action-primary.wp-element-button,
  .nupass-header-actions-shell .nupass-action-primary .wp-block-button__link{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 18px !important;
    border-radius: 16px;
    background: linear-gradient(180deg, #ff21d3 0%, #ff00ce 100%) !important;
    border: 0 !important;
    color: #fff !important;
    font-weight: 800;
    box-shadow: 0 14px 30px rgba(255,0,206,.22) !important;
  }
  .nupass-header-actions-shell .nupass-action-ghost{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 4px;
    color: rgba(245,247,250,.9) !important;
    opacity: .95;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    font-weight: 650;
  }
  .nupass-header-actions-shell .nupass-action-email{
    color: rgba(245,247,250,.72) !important;
    font-size: .94rem;
    padding-inline: 2px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  .nupass-header-actions-shell .nupass-action-danger{
    color: rgba(255,0,206,.95) !important;
    font-size: .94rem;
    font-weight: 700;
    padding-inline: 2px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
}

@media (min-width: 961px) and (max-width: 1180px){
  .nupass-header-row{
    padding-inline: 20px;
  }
  .nupass-header-brand{min-width: 180px;}
  .nupass-main-nav .wp-block-navigation-item__content{padding: 0 12px; font-size: .94rem;}
  .nupass-header-actions-desktop-wrap,
  .nupass-header-actions-shell .nupass-header-actions{gap: 8px;}
  .nupass-header-actions-shell .nupass-action-secondary,
  .nupass-header-actions-shell .nupass-action-primary{padding: 0 14px !important;}
  .nupass-header-actions-shell .nupass-action-email{max-width: 180px;overflow:hidden;text-overflow:ellipsis;}
}


/* ===== v1.7.0 desktop header refinement ===== */
@media (min-width: 961px){
  .nupass-site-header{
    background: rgba(8,8,12,.84);
    box-shadow: 0 12px 34px rgba(0,0,0,.24);
  }
  .nupass-header-row{
    display:grid !important;
    grid-template-columns: minmax(220px,1fr) auto minmax(220px,1fr);
    align-items:center;
    column-gap: 18px;
    row-gap: 0;
    min-height: 82px;
    max-width: 1280px;
    padding-inline: 22px;
  }
  .nupass-header-brand{
    grid-column:1;
    justify-self:start;
    min-width:0;
    gap:10px;
  }
  .nupass-main-nav{
    position: static !important;
    transform: none !important;
    left: auto !important;
    top: auto !important;
    grid-column:2;
    justify-self:center;
    align-self:center;
    width:auto;
    margin:0 auto;
    min-width:max-content;
  }
  .nupass-main-nav .wp-block-navigation__container{
    gap: 14px;
  }
  .nupass-main-nav .wp-block-navigation-item__content{
    min-height: 42px;
    padding: 0 12px;
    font-size: 1rem;
    font-weight: 700;
    color: rgba(245,247,250,.96);
  }
  .nupass-header-actions-shell{
    grid-column:3;
    justify-self:end;
    align-self:center;
    min-width:0;
    margin-left:0;
  }
  .nupass-header-actions-desktop-wrap,
  .nupass-header-actions-shell .nupass-header-actions{
    gap: 8px;
  }
  .nupass-header-actions-shell .nupass-action-icon{
    width: 40px;
    height: 40px;
    border-radius: 14px;
    background: rgba(255,255,255,.025);
    border-color: rgba(255,255,255,.09);
  }
  .nupass-header-actions-shell .nupass-action-secondary,
  .nupass-header-actions-shell .nupass-action-secondary.wp-element-button,
  .nupass-header-actions-shell .nupass-action-secondary .wp-block-button__link{
    min-height: 42px;
    padding: 0 16px !important;
    border-radius: 14px;
    background: rgba(255,255,255,.025) !important;
  }
  .nupass-header-actions-shell .nupass-action-primary,
  .nupass-header-actions-shell .nupass-action-primary.wp-element-button,
  .nupass-header-actions-shell .nupass-action-primary .wp-block-button__link{
    min-height: 42px;
    padding: 0 16px !important;
    border-radius: 14px;
    box-shadow: 0 12px 24px rgba(255,0,206,.2) !important;
  }
  .nupass-header-actions-shell .nupass-action-ghost,
  .nupass-header-actions-shell .nupass-action-email,
  .nupass-header-actions-shell .nupass-action-danger{
    font-size: .93rem;
  }
  .nupass-header-actions-shell .nupass-action-email{
    max-width: 170px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

@media (min-width: 961px) and (max-width: 1220px){
  .nupass-header-row{
    grid-template-columns: minmax(180px,1fr) auto minmax(180px,1fr);
    padding-inline:18px;
  }
  .nupass-main-nav .wp-block-navigation__container{gap: 8px;}
  .nupass-main-nav .wp-block-navigation-item__content{padding:0 10px;font-size:.95rem;}
  .nupass-header-actions-shell .nupass-action-email{display:none !important;}
}

@media (min-width: 961px) and (max-width: 1040px){
  .nupass-header-actions-shell .nupass-action-ghost{display:none !important;}
}

/* ===== v1.7.1 header RRPP + modern centered menu ===== */
@media (min-width: 961px){
  .nupass-site-header{
    background: rgba(7, 8, 13, .88);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
  }
  .nupass-header-row{
    position: relative !important;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    max-width: 1320px;
    min-height: 80px;
    padding-inline: 24px;
    gap: 18px;
  }
  .nupass-header-brand{
    flex: 0 0 245px;
    min-width: 0;
    z-index: 3;
  }
  .nupass-main-nav{
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    grid-column: auto !important;
    justify-self: auto !important;
    width: auto;
    min-width: 0;
    z-index: 2;
  }
  .nupass-main-nav .wp-block-navigation__container{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px !important;
    padding: 6px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 999px;
    background: rgba(255,255,255,.035);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.02), 0 12px 28px rgba(0,0,0,.18);
  }
  .nupass-main-nav .wp-block-navigation-item__content,
  .nupass-main-nav a.wp-block-navigation-item__content{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px !important;
    border-radius: 999px;
    font-size: .94rem;
    line-height: 1;
    font-weight: 760;
    letter-spacing: -.02em;
    color: rgba(245,247,250,.92) !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    transition: background-color .18s ease, border-color .18s ease, transform .18s ease, color .18s ease;
  }
  .nupass-main-nav .wp-block-navigation-item__content:hover,
  .nupass-main-nav .current-menu-item > .wp-block-navigation-item__content,
  .nupass-main-nav .current-menu-ancestor > .wp-block-navigation-item__content{
    background: rgba(255,255,255,.075) !important;
    border-color: rgba(255,255,255,.09) !important;
    color: #fff !important;
    transform: translateY(-1px);
  }
  .nupass-main-nav .nupass-main-nav-rrpp .wp-block-navigation-item__content{
    color: #fff !important;
    background: rgba(255,0,206,.12) !important;
    border-color: rgba(255,0,206,.22) !important;
  }
  .nupass-link-with-icon .nupass-link-icon{
    display:inline-flex;
    width:18px;
    height:18px;
    align-items:center;
    justify-content:center;
    flex:0 0 18px;
  }
  .nupass-link-with-icon .nupass-link-icon svg{
    display:block;
    width:18px;
    height:18px;
  }
  .nupass-link-with-icon .nupass-link-text{display:inline-block;}
  .nupass-header-actions-shell{
    flex: 0 1 420px;
    min-width: 0;
    margin-left: auto;
    z-index: 3;
  }
  .nupass-header-actions-desktop-wrap,
  .nupass-header-actions-shell .nupass-header-actions{
    justify-content: flex-end;
    gap: 7px !important;
    min-width:0;
  }
  .nupass-header-actions-shell .nupass-rrpp-action{order: -5;}
  .nupass-header-actions-shell .nupass-action-secondary,
  .nupass-header-actions-shell .nupass-action-secondary.wp-element-button,
  .nupass-header-actions-shell .nupass-action-secondary .wp-block-button__link{
    min-height: 40px;
    padding: 0 14px !important;
    border-radius: 999px;
    background: rgba(255,255,255,.04) !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    color: rgba(255,255,255,.94) !important;
  }
  .nupass-header-actions-shell .nupass-action-primary,
  .nupass-header-actions-shell .nupass-action-primary.wp-element-button,
  .nupass-header-actions-shell .nupass-action-primary .wp-block-button__link{
    min-height: 40px;
    padding: 0 15px !important;
    border-radius: 999px;
  }
  .nupass-header-actions-shell .nupass-action-icon{
    width: 40px;
    height: 40px;
    border-radius: 999px;
  }
  .nupass-header-actions-shell .nupass-action-email{
    max-width: 150px;
    font-size: .88rem;
  }
  .nupass-header-actions-shell .nupass-action-ghost,
  .nupass-header-actions-shell .nupass-action-danger{font-size: .88rem;}
}

@media (min-width: 961px) and (max-width: 1260px){
  .nupass-header-row{padding-inline:18px;}
  .nupass-header-brand{flex-basis: 205px;}
  .nupass-header-actions-shell{flex-basis: 370px;}
  .nupass-main-nav .wp-block-navigation-item__content,
  .nupass-main-nav a.wp-block-navigation-item__content{padding-inline: 11px !important;font-size:.9rem;}
  .nupass-header-actions-shell .nupass-action-email{display:none !important;}
}
@media (min-width: 961px) and (max-width: 1120px){
  .nupass-header-actions-shell .nupass-action-ghost,
  .nupass-header-actions-shell .nupass-action-danger{display:none !important;}
  .nupass-header-brand{flex-basis: 175px;}
  .nupass-header-actions-shell{flex-basis: 300px;}
}
@media (min-width: 961px) and (max-width: 1040px){
  .nupass-header-actions-shell .nupass-action-secondary:not(.nupass-rrpp-action){display:none !important;}
  .nupass-main-nav .wp-block-navigation__container{gap: 5px !important;}
}

/* ==========================================================
   NUPASS v1.7.3 - Header professional fix
   Objetivo: header bajo, centrado y sin quiebres visuales.
   ========================================================== */
:root{
  --nupass-header-height: 76px;
  --nupass-header-max: 1360px;
}

.wp-site-blocks > .nupass-site-header,
.wp-site-blocks > header.nupass-site-header,
.nupass-site-header,
header.wp-block-group.nupass-site-header{
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  background: rgba(7, 8, 13, .92) !important;
  border-bottom: 1px solid rgba(255,255,255,.065) !important;
  box-shadow: 0 14px 38px rgba(0,0,0,.30) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}

.nupass-site-header > .nupass-header-row,
header.wp-block-group.nupass-site-header > .nupass-header-row,
.nupass-site-header .nupass-header-row{
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: var(--nupass-header-max) !important;
  min-height: var(--nupass-header-height) !important;
  margin: 0 auto !important;
  padding: 0 28px !important;
  gap: 18px !important;
  overflow: visible !important;
}

.nupass-site-header .nupass-header-brand{
  min-width: 0 !important;
  gap: 10px !important;
  margin: 0 !important;
}
.nupass-site-header .nupass-header-brand .custom-logo,
.nupass-site-header .nupass-header-brand img{
  width: auto !important;
  max-width: 132px !important;
  max-height: 36px !important;
  object-fit: contain !important;
  border-radius: 8px !important;
}
.nupass-site-header .nupass-header-brand .wp-block-site-title,
.nupass-site-header .nupass-header-brand .wp-block-site-title a{
  margin: 0 !important;
  color: #fff !important;
  font-size: 1rem !important;
  font-weight: 850 !important;
  letter-spacing: -.03em !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

@media (min-width: 961px){
  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    display: grid !important;
    grid-template-columns: minmax(190px, 1fr) auto minmax(300px, 1fr) !important;
    align-items: center !important;
    justify-content: normal !important;
    flex-wrap: nowrap !important;
    row-gap: 0 !important;
  }
  .nupass-site-header .nupass-header-brand{
    grid-column: 1 !important;
    justify-self: start !important;
    align-self: center !important;
    flex: none !important;
    z-index: 3 !important;
  }
  .nupass-site-header .nupass-main-nav,
  .nupass-site-header .nupass-main-nav--v173{
    grid-column: 2 !important;
    justify-self: center !important;
    align-self: center !important;
    position: static !important;
    left: auto !important;
    top: auto !important;
    right: auto !important;
    transform: none !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    flex: none !important;
    z-index: 2 !important;
  }
  .nupass-site-header .nupass-main-nav .wp-block-navigation__container{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 6px !important;
    border: 1px solid rgba(255,255,255,.085) !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.045), 0 12px 30px rgba(0,0,0,.22) !important;
  }
  .nupass-site-header .nupass-main-nav .wp-block-navigation-item__content,
  .nupass-site-header .nupass-main-nav a.wp-block-navigation-item__content{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-height: 38px !important;
    padding: 0 14px !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: rgba(245,247,250,.94) !important;
    opacity: 1 !important;
    font-size: .91rem !important;
    font-weight: 780 !important;
    line-height: 1 !important;
    letter-spacing: -.02em !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }
  .nupass-site-header .nupass-main-nav .wp-block-navigation-item__content:hover,
  .nupass-site-header .nupass-main-nav .current-menu-item > .wp-block-navigation-item__content,
  .nupass-site-header .nupass-main-nav .current-menu-ancestor > .wp-block-navigation-item__content{
    color: #fff !important;
    background: rgba(255,255,255,.08) !important;
    border-color: rgba(255,255,255,.10) !important;
    transform: translateY(-1px) !important;
  }

  .nupass-site-header .nupass-header-actions-shell{
    grid-column: 3 !important;
    justify-self: end !important;
    align-self: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 8px !important;
    flex: none !important;
    z-index: 3 !important;
  }
  .nupass-site-header .nupass-header-actions-desktop-wrap,
  .nupass-site-header .nupass-header-actions-desktop-wrap > *,
  .nupass-site-header .nupass-header-actions,
  .nupass-site-header .nupass-header-actions-shell nav,
  .nupass-site-header .nupass-header-actions-shell .wp-block-buttons,
  .nupass-site-header .nupass-header-actions-shell .wp-block-group{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 7px !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .nupass-site-header .nupass-header-actions-mobile-wrap,
  .nupass-site-header .nupass-mobile-header-actions{
    display: none !important;
  }
  .nupass-site-header .nupass-header-actions-shell a,
  .nupass-site-header .nupass-header-actions-shell button,
  .nupass-site-header .nupass-header-actions-shell .wp-element-button,
  .nupass-site-header .nupass-header-actions-shell .wp-block-button__link,
  .nupass-site-header .nupass-header-action{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-height: 38px !important;
    height: 38px !important;
    padding: 0 13px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    line-height: 1 !important;
    font-size: .86rem !important;
    font-weight: 760 !important;
    letter-spacing: -.02em !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
  }
  .nupass-site-header .nupass-action-secondary,
  .nupass-site-header a.nupass-action-secondary,
  .nupass-site-header .nupass-header-action.nupass-action-secondary{
    color: rgba(255,255,255,.96) !important;
    border: 1px solid rgba(255,255,255,.105) !important;
    background: rgba(255,255,255,.045) !important;
    box-shadow: none !important;
  }
  .nupass-site-header .nupass-action-primary,
  .nupass-site-header a.nupass-action-primary,
  .nupass-site-header .nupass-header-action.nupass-action-primary{
    color: #fff !important;
    border: 1px solid rgba(255,0,206,.42) !important;
    background: linear-gradient(180deg, #ff27d5 0%, #ff00ce 100%) !important;
    box-shadow: 0 12px 24px rgba(255,0,206,.22) !important;
  }
  .nupass-site-header .nupass-rrpp-action,
  .nupass-site-header [data-nupass-rrpp-action="1"]{
    order: -7 !important;
    color: #fff !important;
    border-color: rgba(255,0,206,.30) !important;
    background: rgba(255,0,206,.13) !important;
  }
  .nupass-site-header .nupass-action-icon,
  .nupass-site-header a.nupass-action-icon,
  .nupass-site-header button.nupass-action-icon{
    width: 38px !important;
    min-width: 38px !important;
    max-width: 38px !important;
    padding: 0 !important;
    color: rgba(245,247,250,.94) !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    background: rgba(255,255,255,.04) !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }
  .nupass-site-header .nupass-action-ghost,
  .nupass-site-header .nupass-action-danger{
    width: 38px !important;
    min-width: 38px !important;
    max-width: 38px !important;
    padding: 0 !important;
    color: rgba(245,247,250,.84) !important;
    border: 1px solid rgba(255,255,255,.075) !important;
    background: rgba(255,255,255,.025) !important;
  }
  .nupass-site-header .nupass-action-danger{
    color: rgba(255,0,206,.96) !important;
  }
  .nupass-site-header .nupass-action-email,
  .nupass-site-header [data-nupass-email-action="1"]{
    display: none !important;
  }
  .nupass-site-header .nupass-action-icon .nupass-link-text,
  .nupass-site-header .nupass-action-ghost .nupass-link-text,
  .nupass-site-header .nupass-action-danger .nupass-link-text,
  .nupass-site-header .nupass-visually-hidden-label{
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
  }
  .nupass-site-header .nupass-link-icon,
  .nupass-site-header .nupass-link-icon svg,
  .nupass-site-header .nupass-header-action svg,
  .nupass-site-header .nupass-action-icon svg{
    display: block !important;
    width: 17px !important;
    height: 17px !important;
    flex: 0 0 17px !important;
  }
  .nupass-site-header .wc-block-mini-cart,
  .nupass-site-header .wp-block-woocommerce-mini-cart,
  .nupass-site-header .wc-block-mini-cart__button{
    display: none !important;
  }
}

@media (min-width: 961px) and (max-width: 1320px){
  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    grid-template-columns: minmax(170px, 1fr) auto minmax(260px, 1fr) !important;
    padding-inline: 20px !important;
  }
  .nupass-site-header .nupass-header-brand .wp-block-site-title{display:none !important;}
  .nupass-site-header .nupass-main-nav .wp-block-navigation-item__content,
  .nupass-site-header .nupass-main-nav a.wp-block-navigation-item__content{padding-inline: 11px !important;font-size:.88rem !important;}
  .nupass-site-header .nupass-header-actions-shell a,
  .nupass-site-header .nupass-header-actions-shell button,
  .nupass-site-header .nupass-header-action{font-size:.84rem !important;padding-inline:11px !important;}
}

@media (min-width: 961px) and (max-width: 1160px){
  .nupass-site-header .nupass-action-ghost,
  .nupass-site-header .nupass-action-danger,
  .nupass-site-header .nupass-header-actions-shell .nupass-action-secondary:not(.nupass-rrpp-action){
    display: none !important;
  }
  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    grid-template-columns: minmax(140px, 1fr) auto minmax(190px, 1fr) !important;
  }
}

@media (max-width: 960px){
  .nupass-site-header,
  header.wp-block-group.nupass-site-header{
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
    width: 100% !important;
    max-width: none !important;
  }
  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 64px !important;
    padding: 0 16px !important;
  }
  .nupass-site-header .nupass-header-brand{flex:1 1 auto !important;}
  .nupass-site-header .nupass-header-brand .wp-block-site-title{display:none !important;}
  .nupass-site-header .nupass-header-brand .custom-logo,
  .nupass-site-header .nupass-header-brand img{max-height:30px !important;max-width:132px !important;}
  .nupass-site-header .nupass-main-nav,
  .nupass-site-header .nupass-header-actions-shell,
  .nupass-site-header .nupass-header-actions-desktop-wrap,
  .nupass-site-header .nupass-header-actions-mobile-wrap{display:none !important;}
}


/* ==========================================================
   NUPASS v1.7.4 - Header stable one-line fix
   - Sin MutationObserver infinito.
   - Header escritorio en una sola línea.
   - Oculta email/nombre para evitar quiebres.
   ========================================================== */
@media (min-width: 961px){
  :root{--nupass-header-height:68px;--nupass-header-max:1360px;}

  .wp-site-blocks > .nupass-site-header,
  .wp-site-blocks > header.nupass-site-header,
  .nupass-site-header,
  header.wp-block-group.nupass-site-header{
    min-height:var(--nupass-header-height) !important;
    overflow:visible !important;
  }

  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    display:grid !important;
    grid-template-columns:minmax(150px,1fr) auto minmax(320px,1fr) !important;
    align-items:center !important;
    justify-content:normal !important;
    width:100% !important;
    max-width:var(--nupass-header-max) !important;
    min-height:var(--nupass-header-height) !important;
    height:var(--nupass-header-height) !important;
    padding:0 24px !important;
    margin:0 auto !important;
    gap:14px !important;
    row-gap:0 !important;
    flex-wrap:nowrap !important;
  }

  .nupass-site-header .nupass-header-brand{
    grid-column:1 !important;
    justify-self:start !important;
    align-self:center !important;
    display:inline-flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    min-width:0 !important;
    max-width:170px !important;
    overflow:hidden !important;
  }
  .nupass-site-header .nupass-header-brand .wp-block-site-title,
  .nupass-site-header .nupass-header-brand .wp-block-site-title a{
    font-size:.92rem !important;
    max-width:110px !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .nupass-site-header .nupass-main-nav,
  .nupass-site-header .nupass-main-nav--v173{
    grid-column:2 !important;
    justify-self:center !important;
    align-self:center !important;
    position:static !important;
    transform:none !important;
    left:auto !important;
    top:auto !important;
    right:auto !important;
    margin:0 !important;
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
  }
  .nupass-site-header .nupass-main-nav .wp-block-navigation__container{
    height:44px !important;
    padding:5px !important;
    gap:4px !important;
    flex-wrap:nowrap !important;
  }
  .nupass-site-header .nupass-main-nav .wp-block-navigation-item__content,
  .nupass-site-header .nupass-main-nav a.wp-block-navigation-item__content{
    min-height:34px !important;
    height:34px !important;
    padding:0 12px !important;
    font-size:.86rem !important;
    white-space:nowrap !important;
  }

  .nupass-site-header .nupass-header-actions-shell{
    grid-column:3 !important;
    justify-self:end !important;
    align-self:center !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-end !important;
    flex-wrap:nowrap !important;
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    height:44px !important;
    margin:0 !important;
    padding:0 !important;
    gap:6px !important;
    overflow:visible !important;
    font-size:0 !important;
    line-height:1 !important;
  }
  .nupass-site-header .nupass-header-actions-desktop-wrap,
  .nupass-site-header .nupass-header-actions-desktop-wrap > *,
  .nupass-site-header .nupass-header-actions,
  .nupass-site-header .nupass-header-actions-shell nav,
  .nupass-site-header .nupass-header-actions-shell .wp-block-buttons,
  .nupass-site-header .nupass-header-actions-shell .wp-block-group,
  .nupass-site-header .nupass-header-actions-shell > *{
    display:inline-flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-end !important;
    flex-wrap:nowrap !important;
    gap:6px !important;
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    height:44px !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
  }

  .nupass-site-header .nupass-header-actions-shell a,
  .nupass-site-header .nupass-header-actions-shell button,
  .nupass-site-header .nupass-header-actions-shell .wp-element-button,
  .nupass-site-header .nupass-header-actions-shell .wp-block-button__link,
  .nupass-site-header .nupass-header-action{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 auto !important;
    gap:7px !important;
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    padding:0 12px !important;
    margin:0 !important;
    border-radius:999px !important;
    font-size:.82rem !important;
    line-height:1 !important;
    white-space:nowrap !important;
    text-decoration:none !important;
    box-sizing:border-box !important;
    vertical-align:middle !important;
  }

  .nupass-site-header .nupass-action-primary,
  .nupass-site-header a.nupass-action-primary{
    color:#fff !important;
    background:linear-gradient(180deg,#ff27d5 0%,#ff00ce 100%) !important;
    border:1px solid rgba(255,0,206,.38) !important;
    box-shadow:0 10px 20px rgba(255,0,206,.20) !important;
  }
  .nupass-site-header .nupass-action-secondary,
  .nupass-site-header a.nupass-action-secondary{
    color:rgba(255,255,255,.96) !important;
    background:rgba(255,255,255,.045) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    box-shadow:none !important;
  }
  .nupass-site-header .nupass-action-icon,
  .nupass-site-header .nupass-action-ghost,
  .nupass-site-header .nupass-action-danger,
  .nupass-site-header a.nupass-action-icon,
  .nupass-site-header a.nupass-action-ghost,
  .nupass-site-header a.nupass-action-danger{
    width:36px !important;
    min-width:36px !important;
    max-width:36px !important;
    padding:0 !important;
    background:rgba(255,255,255,.035) !important;
    border:1px solid rgba(255,255,255,.085) !important;
    box-shadow:none !important;
  }
  .nupass-site-header .nupass-action-danger{color:#ff00ce !important;}
  .nupass-site-header .nupass-rrpp-action{order:-7 !important;}

  .nupass-site-header .nupass-action-email,
  .nupass-site-header [data-nupass-email-action="1"],
  .nupass-site-header .nupass-action-display-name{
    display:none !important;
  }

  .nupass-site-header .nupass-action-icon .nupass-link-text,
  .nupass-site-header .nupass-action-ghost .nupass-link-text,
  .nupass-site-header .nupass-action-danger .nupass-link-text,
  .nupass-site-header .nupass-visually-hidden-label{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
    clip:rect(0 0 0 0) !important;
    white-space:nowrap !important;
  }
  .nupass-site-header .nupass-link-icon,
  .nupass-site-header .nupass-link-icon svg,
  .nupass-site-header .nupass-header-action svg{
    display:block !important;
    width:16px !important;
    height:16px !important;
    flex:0 0 16px !important;
  }

  .nupass-site-header .wc-block-mini-cart,
  .nupass-site-header .wp-block-woocommerce-mini-cart,
  .nupass-site-header .wc-block-mini-cart__button{
    display:none !important;
  }
}

@media (min-width: 961px) and (max-width: 1180px){
  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    grid-template-columns:minmax(120px,1fr) auto minmax(230px,1fr) !important;
    padding-inline:18px !important;
    gap:10px !important;
  }
  .nupass-site-header .nupass-header-brand .wp-block-site-title{display:none !important;}
  .nupass-site-header .nupass-header-actions-shell .nupass-action-secondary:not(.nupass-rrpp-action),
  .nupass-site-header .nupass-header-actions-shell .nupass-action-primary:not(.nupass-rrpp-action){
    padding-inline:10px !important;
    font-size:.78rem !important;
  }
}

@media (min-width: 961px) and (max-width: 1040px){
  .nupass-site-header .nupass-header-actions-shell .nupass-action-secondary:not(.nupass-rrpp-action),
  .nupass-site-header .nupass-header-actions-shell .nupass-action-ghost,
  .nupass-site-header .nupass-header-actions-shell .nupass-action-danger{
    display:none !important;
  }
}

/* ==========================================================
   NUPASS v1.7.5 - Header logo only + desktop polish
   - Logo sin nombre del sitio.
   - Escritorio en una sola línea, más limpio y equilibrado.
   - Mobile se mantiene como v1.7.4, solo ocultando título.
   ========================================================== */
.nupass-site-header .nupass-header-brand .wp-block-site-title,
.nupass-site-header .nupass-header-brand .wp-block-site-title a,
.nupass-mobile-drawer__brand .wp-block-site-title,
.nupass-mobile-drawer__brand .wp-block-site-title a{
  display:none !important;
}

@media (min-width: 961px){
  :root{
    --nupass-header-height: 70px;
    --nupass-header-max: 1400px;
  }

  .wp-site-blocks > .nupass-site-header,
  .wp-site-blocks > header.nupass-site-header,
  .nupass-site-header,
  header.wp-block-group.nupass-site-header{
    min-height: var(--nupass-header-height) !important;
    background: rgba(6,7,12,.92) !important;
    border-bottom: 1px solid rgba(255,255,255,.065) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,.26) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
  }

  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    display:grid !important;
    grid-template-columns: minmax(88px, 1fr) auto minmax(360px, 1fr) !important;
    align-items:center !important;
    width:100% !important;
    max-width: var(--nupass-header-max) !important;
    height: var(--nupass-header-height) !important;
    min-height: var(--nupass-header-height) !important;
    margin:0 auto !important;
    padding:0 28px !important;
    gap:18px !important;
    row-gap:0 !important;
    flex-wrap:nowrap !important;
    overflow:visible !important;
  }

  .nupass-site-header .nupass-header-brand{
    grid-column:1 !important;
    justify-self:start !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    width:auto !important;
    max-width:118px !important;
    min-width:0 !important;
    gap:0 !important;
    overflow:hidden !important;
    flex:none !important;
  }

  .nupass-site-header .nupass-header-brand .custom-logo,
  .nupass-site-header .nupass-header-brand img{
    display:block !important;
    width:auto !important;
    height:26px !important;
    max-width:98px !important;
    max-height:26px !important;
    object-fit:contain !important;
    border-radius:0 !important;
    margin:0 !important;
  }

  .nupass-site-header .nupass-main-nav,
  .nupass-site-header .nupass-main-nav--v173,
  .nupass-site-header .nupass-main-nav--v175{
    grid-column:2 !important;
    justify-self:center !important;
    align-self:center !important;
    position:static !important;
    transform:none !important;
    left:auto !important;
    top:auto !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    flex:none !important;
  }

  .nupass-site-header .nupass-main-nav .wp-block-navigation__container{
    height:44px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex-wrap:nowrap !important;
    gap:5px !important;
    padding:5px !important;
    margin:0 !important;
    border:1px solid rgba(255,255,255,.085) !important;
    border-radius:999px !important;
    background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.026)) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 12px 28px rgba(0,0,0,.20) !important;
  }

  .nupass-site-header .nupass-main-nav .wp-block-navigation-item__content,
  .nupass-site-header .nupass-main-nav a.wp-block-navigation-item__content{
    min-height:34px !important;
    height:34px !important;
    padding:0 13px !important;
    gap:7px !important;
    border-radius:999px !important;
    font-size:.86rem !important;
    font-weight:760 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    letter-spacing:-.02em !important;
  }

  .nupass-site-header .nupass-header-actions-shell{
    grid-column:3 !important;
    justify-self:end !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    height:44px !important;
    margin:0 !important;
    padding:0 !important;
    gap:6px !important;
    overflow:visible !important;
    flex:none !important;
  }

  .nupass-site-header .nupass-header-actions-desktop-wrap,
  .nupass-site-header .nupass-header-actions-desktop-wrap > *,
  .nupass-site-header .nupass-header-actions,
  .nupass-site-header .nupass-header-actions-shell nav,
  .nupass-site-header .nupass-header-actions-shell .wp-block-buttons,
  .nupass-site-header .nupass-header-actions-shell .wp-block-group,
  .nupass-site-header .nupass-header-actions-shell > *{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    gap:6px !important;
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    height:44px !important;
    margin:0 !important;
    padding:0 !important;
  }

  .nupass-site-header .nupass-header-actions-shell a,
  .nupass-site-header .nupass-header-actions-shell button,
  .nupass-site-header .nupass-header-actions-shell .wp-element-button,
  .nupass-site-header .nupass-header-actions-shell .wp-block-button__link,
  .nupass-site-header .nupass-header-action{
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    padding:0 12px !important;
    margin:0 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 auto !important;
    gap:7px !important;
    border-radius:999px !important;
    font-size:.82rem !important;
    line-height:1 !important;
    white-space:nowrap !important;
    text-decoration:none !important;
    box-sizing:border-box !important;
  }

  .nupass-site-header .nupass-action-secondary,
  .nupass-site-header a.nupass-action-secondary{
    color:rgba(255,255,255,.96) !important;
    background:rgba(255,255,255,.045) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    box-shadow:none !important;
  }

  .nupass-site-header .nupass-action-primary,
  .nupass-site-header a.nupass-action-primary{
    color:#fff !important;
    background:linear-gradient(180deg,#ff27d5 0%,#ff00ce 100%) !important;
    border:1px solid rgba(255,0,206,.38) !important;
    box-shadow:0 10px 20px rgba(255,0,206,.20) !important;
  }

  .nupass-site-header .nupass-action-icon,
  .nupass-site-header .nupass-action-ghost,
  .nupass-site-header .nupass-action-danger,
  .nupass-site-header a.nupass-action-icon,
  .nupass-site-header a.nupass-action-ghost,
  .nupass-site-header a.nupass-action-danger{
    width:36px !important;
    min-width:36px !important;
    max-width:36px !important;
    padding:0 !important;
    background:rgba(255,255,255,.035) !important;
    border:1px solid rgba(255,255,255,.085) !important;
    box-shadow:none !important;
  }

  .nupass-site-header .nupass-action-danger{color:#ff00ce !important;}
  .nupass-site-header .nupass-action-email,
  .nupass-site-header [data-nupass-email-action="1"],
  .nupass-site-header .nupass-action-display-name{
    display:none !important;
  }
}

@media (min-width: 961px) and (max-width: 1160px){
  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    grid-template-columns:minmax(78px, .7fr) auto minmax(250px, 1fr) !important;
    padding-inline:18px !important;
    gap:10px !important;
  }
  .nupass-site-header .nupass-header-actions-shell .nupass-action-secondary:not(.nupass-rrpp-action),
  .nupass-site-header .nupass-header-actions-shell .nupass-action-ghost,
  .nupass-site-header .nupass-header-actions-shell .nupass-action-danger{
    display:none !important;
  }
}

@media (max-width: 960px){
  .nupass-site-header .nupass-header-brand .custom-logo,
  .nupass-site-header .nupass-header-brand img,
  .nupass-mobile-drawer__brand .custom-logo,
  .nupass-mobile-drawer__brand img{
    height:28px !important;
    width:auto !important;
    max-width:110px !important;
    object-fit:contain !important;
    border-radius:0 !important;
  }
}

/* ==========================================================
   NUPASS v1.7.6 - Header one-line surgical fix
   - Desktop: una sola línea real.
   - Oculta el bloque mobile en escritorio; no tocar mobile.
   - Evita que los wrappers internos de Gutenberg fuercen salto.
   ========================================================== */
@media (min-width: 961px){
  :root{
    --nupass-header-height: 68px;
    --nupass-header-max: 1400px;
  }

  .nupass-site-header,
  header.wp-block-group.nupass-site-header{
    min-height: var(--nupass-header-height) !important;
    height: var(--nupass-header-height) !important;
    overflow: visible !important;
  }

  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    display: grid !important;
    grid-template-columns: minmax(76px, 1fr) auto minmax(300px, 1fr) !important;
    align-items: center !important;
    justify-items: stretch !important;
    column-gap: 18px !important;
    row-gap: 0 !important;
    width: 100% !important;
    max-width: var(--nupass-header-max) !important;
    min-height: var(--nupass-header-height) !important;
    height: var(--nupass-header-height) !important;
    padding: 0 28px !important;
    margin: 0 auto !important;
    flex-wrap: nowrap !important;
    overflow: visible !important;
  }

  .nupass-site-header .nupass-header-brand{
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 112px !important;
    height: var(--nupass-header-height) !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    overflow: hidden !important;
  }

  .nupass-site-header .nupass-header-brand .wp-block-site-title,
  .nupass-site-header .nupass-header-brand .wp-block-site-title a{
    display: none !important;
  }

  .nupass-site-header .nupass-header-brand .custom-logo,
  .nupass-site-header .nupass-header-brand img{
    height: 24px !important;
    max-height: 24px !important;
    max-width: 92px !important;
    width: auto !important;
    object-fit: contain !important;
    border-radius: 0 !important;
    margin: 0 !important;
  }

  .nupass-site-header .nupass-main-nav,
  .nupass-site-header .nupass-main-nav--v173,
  .nupass-site-header .nupass-main-nav--v175{
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    align-self: center !important;
    position: static !important;
    transform: none !important;
    left: auto !important;
    top: auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .nupass-site-header .nupass-main-nav .wp-block-navigation__container{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    height: 42px !important;
    padding: 5px !important;
    gap: 5px !important;
    margin: 0 !important;
  }

  .nupass-site-header .nupass-main-nav .wp-block-navigation-item,
  .nupass-site-header .nupass-main-nav .wp-block-navigation-item__content,
  .nupass-site-header .nupass-main-nav a.wp-block-navigation-item__content{
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }

  .nupass-site-header .nupass-header-actions-shell{
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    align-self: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 6px !important;
    overflow: visible !important;
  }

  /* La clave: en escritorio nunca debe renderizarse el wrap mobile. */
  .nupass-site-header .nupass-header-actions-mobile-wrap,
  .nupass-site-header .nupass-mobile-header-actions,
  .nupass-site-header .nupass-header-actions-shell > .nupass-header-actions-mobile-wrap{
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  .nupass-site-header .nupass-header-actions-desktop-wrap,
  .nupass-site-header .nupass-header-actions-desktop-wrap > *,
  .nupass-site-header .nupass-header-actions,
  .nupass-site-header .nupass-header-actions-shell nav,
  .nupass-site-header .nupass-header-actions-shell .wp-block-buttons,
  .nupass-site-header .nupass-header-actions-shell .wp-block-group{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .nupass-site-header .nupass-header-actions-shell a,
  .nupass-site-header .nupass-header-actions-shell button,
  .nupass-site-header .nupass-header-actions-shell .wp-element-button,
  .nupass-site-header .nupass-header-actions-shell .wp-block-button__link,
  .nupass-site-header .nupass-header-action{
    flex: 0 0 auto !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .nupass-site-header .nupass-action-email,
  .nupass-site-header [data-nupass-email-action="1"],
  .nupass-site-header .nupass-action-display-name{
    display: none !important;
  }
}

@media (min-width: 961px) and (max-width: 1180px){
  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    grid-template-columns: minmax(64px, .8fr) auto minmax(210px, 1fr) !important;
    column-gap: 10px !important;
    padding-inline: 18px !important;
  }

  .nupass-site-header .nupass-main-nav .wp-block-navigation-item__content,
  .nupass-site-header .nupass-main-nav a.wp-block-navigation-item__content{
    padding-left: 10px !important;
    padding-right: 10px !important;
    font-size: .82rem !important;
  }

  .nupass-site-header .nupass-header-actions-shell a,
  .nupass-site-header .nupass-header-actions-shell button,
  .nupass-site-header .nupass-header-action{
    font-size: .78rem !important;
  }
}

@media (min-width: 961px) and (max-width: 1080px){
  .nupass-site-header .nupass-header-actions-shell .nupass-action-secondary:not(.nupass-rrpp-action):not(.nupass-action-primary){
    display: none !important;
  }
}


/* ==========================================================
   NUPASS v1.7.7 - Header line clean
   - Ajuste quirúrgico: elimina la línea horizontal del header en escritorio.
   - No toca mobile.
   ========================================================== */
@media (min-width: 961px){
  .wp-site-blocks > .nupass-site-header,
  .wp-site-blocks > header.nupass-site-header,
  .nupass-site-header,
  header.wp-block-group.nupass-site-header{
    border-bottom: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  .nupass-site-header::before,
  .nupass-site-header::after,
  header.wp-block-group.nupass-site-header::before,
  header.wp-block-group.nupass-site-header::after{
    display: none !important;
    content: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
  }
}


/* ===== v1.7.9 Premium single event page ===== */
body.single-nupass_event,
body.single-nupass_event .wp-site-blocks{
  background:
    radial-gradient(circle at 78% 10%, rgba(255,0,206,.17), transparent 28%),
    radial-gradient(circle at 6% 18%, rgba(255,0,206,.08), transparent 22%),
    linear-gradient(180deg,#08080d 0%,#050509 52%,#020204 100%) !important;
}
body.single-nupass_event .wp-site-blocks{overflow-x:hidden}
.nupass-event-page-v179{
  width:100%;
  max-width:none !important;
  margin:0 !important;
  padding: clamp(18px,3vw,38px) 16px clamp(72px,8vw,120px) !important;
}
.nupass-event-page-v179 > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.nupass-event-page-v179 .alignwide{
  max-width:1180px !important;
}
.nupass-event-hero-shell{
  display:grid !important;
  grid-template-columns:minmax(300px,420px) minmax(0,1fr);
  align-items:start;
  gap:clamp(24px,4vw,54px);
  width:100%;
  margin:0 auto !important;
  padding:clamp(14px,2vw,22px);
  border:1px solid rgba(255,255,255,.10);
  border-radius:34px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.070),rgba(255,255,255,.020)),
    rgba(12,12,17,.82);
  box-shadow:0 30px 120px rgba(0,0,0,.55);
  backdrop-filter:blur(18px);
}
.nupass-event-left-rail{
  position:sticky;
  top:104px;
  display:grid !important;
  gap:14px;
  align-self:start;
  margin:0 !important;
}
.nupass-event-poster-image{
  overflow:hidden;
  margin:0 !important;
  border:1px solid rgba(255,255,255,.13);
  border-radius:28px;
  background:#101016;
  box-shadow:0 24px 70px rgba(0,0,0,.44);
}
.nupass-event-poster-image img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3/4 !important;
  object-fit:cover;
  object-position:center;
}
.nupass-event-share-button{
  width:100%;
  min-height:62px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:0 18px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  background:rgba(255,255,255,.04);
  color:#fff;
  font:inherit;
  font-weight:800;
  cursor:pointer;
  transition:transform .18s ease, background-color .18s ease, border-color .18s ease;
}
.nupass-event-share-button:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.065);
  border-color:rgba(255,255,255,.16);
}
.nupass-event-share-button__icon{
  display:inline-grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  color:#ff8aee;
}
.nupass-event-share-button__arrow{margin-left:auto;color:rgba(255,255,255,.56);font-size:24px;line-height:1}
.nupass-event-content{
  min-width:0;
  margin:0 !important;
  padding:clamp(6px,1vw,12px) clamp(2px,1vw,8px) 0 !important;
}
.nupass-event-status-row{
  display:flex !important;
  align-items:center;
  gap:10px;
  margin:0 0 16px !important;
}
.nupass-event-status-row:empty{display:none!important}
.nupass-event-status-row .nupass-event-status-pill,
.nupass-event-status-row [class*="status"]{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 13px;
  border-radius:999px;
  border:1px solid rgba(255,0,206,.34);
  background:rgba(255,0,206,.13);
  color:#ffd6f8;
  font-size:12px;
  font-weight:850;
  letter-spacing:.02em;
}
.nupass-event-title{
  max-width:720px;
  margin:0 !important;
  color:#fff;
  font-family:var(--wp--preset--font-family--display, "Poppins", system-ui, sans-serif) !important;
  font-size:clamp(2.45rem,5.6vw,4.65rem) !important;
  line-height:.95 !important;
  letter-spacing:-.075em;
  font-weight:900 !important;
}
.nupass-event-presenter{
  display:flex !important;
  align-items:center;
  gap:10px;
  margin:18px 0 24px !important;
  color:rgba(255,255,255,.66);
  font-size:15px;
}
.nupass-event-presenter p,
.nupass-event-presenter .wp-block-post-author-name{
  margin:0 !important;
}
.nupass-event-presenter .wp-block-post-author-name,
.nupass-event-presenter-name{
  color:#fff;
  font-weight:800;
}
.nupass-event-presenter .wp-block-post-author-name:after{
  content:'›';
  display:inline-block;
  margin-left:10px;
  color:rgba(255,255,255,.55);
}
.nupass-event-meta-panel{
  display:grid !important;
  gap:12px;
  margin:0 0 26px !important;
}
.nupass-event-meta-panel > *{
  margin:0 !important;
}
.nupass-event-meta-panel [class*="nupass-event-meta"],
.nupass-event-meta-panel [class*="event-meta"],
.nupass-event-meta-panel .wp-block-nupass-event-meta{
  display:grid;
  gap:12px;
}
.nupass-event-meta-panel [class*="meta-item"],
.nupass-event-meta-panel [class*="event-date"],
.nupass-event-meta-panel [class*="event-location"],
.nupass-event-meta-panel p{
  border-radius:22px;
}
.nupass-event-meta-panel [class*="item"],
.nupass-event-meta-panel li,
.nupass-event-meta-panel p{
  color:rgba(255,255,255,.70);
}
.nupass-event-ticket-panel,
.nupass-event-details-panel{
  margin-top:28px !important;
  padding-top:24px !important;
  border-top:1px solid rgba(255,255,255,.08);
}
.nupass-event-ticket-panel{
  padding:20px !important;
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px;
  background:rgba(255,255,255,.045);
  box-shadow:0 22px 70px rgba(0,0,0,.26);
}
.nupass-event-details-panel + .nupass-event-ticket-panel{
  margin-top:32px !important;
}
.nupass-event-section-title{
  margin:0 0 14px !important;
  color:#fff;
  font-family:var(--wp--preset--font-family--display, "Poppins", system-ui, sans-serif) !important;
  font-size:clamp(1.55rem,3vw,2.15rem) !important;
  line-height:1 !important;
  letter-spacing:-.055em;
  font-weight:900 !important;
}
.nupass-event-ticket-panel > *:last-child,
.nupass-event-details-panel > *:last-child{margin-bottom:0!important}
.nupass-event-ticket-panel form,
.nupass-event-ticket-panel table,
.nupass-event-ticket-panel [class*="ticket"]{
  max-width:100%;
}
.nupass-event-ticket-panel [class*="ticket"]{
  border-radius:20px;
}
.nupass-event-ticket-panel button,
.nupass-event-ticket-panel .button,
.nupass-event-ticket-panel input[type="submit"],
.nupass-event-ticket-panel a.wp-element-button{
  border-radius:999px !important;
  background:linear-gradient(180deg,#ff21d3 0%,#ff00ce 100%) !important;
  color:#fff !important;
  border:0 !important;
  font-weight:900 !important;
  box-shadow:0 16px 44px rgba(255,0,206,.26) !important;
}
.nupass-event-ticket-panel input,
.nupass-event-ticket-panel select,
.nupass-event-ticket-panel textarea{
  border-radius:14px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:rgba(255,255,255,.06) !important;
  color:#fff !important;
}
.nupass-event-details-panel{
  color:rgba(255,255,255,.66);
}
.nupass-event-description{
  max-width:720px;
}
.nupass-event-description p,
.nupass-event-description li{
  color:rgba(255,255,255,.66);
  font-size:15px;
  line-height:1.85;
}
.nupass-event-description h1,
.nupass-event-description h2,
.nupass-event-description h3,
.nupass-event-description h4{
  color:#fff;
  font-family:var(--wp--preset--font-family--display, "Poppins", system-ui, sans-serif);
  letter-spacing:-.04em;
}
.nupass-event-description a{color:#ff7be9}
.nupass-event-details-panel .wp-block-image img,
.nupass-event-description img{
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
}
@media (max-width: 980px){
  .nupass-event-page-v179{
    width:min(760px,100%);
    margin:0 auto !important;
    padding:18px 13px 90px !important;
  }
  .nupass-event-hero-shell{
    grid-template-columns:1fr;
    gap:22px;
    border-radius:28px;
    padding:12px;
  }
  .nupass-event-left-rail{
    position:relative;
    top:auto;
  }
  .nupass-event-poster-image{border-radius:24px}
  .nupass-event-poster-image img{aspect-ratio:4/5 !important}
  .nupass-event-content{padding:8px 8px 14px !important}
  .nupass-event-title{font-size:clamp(2.15rem,9vw,3.55rem) !important}
  .nupass-event-ticket-panel{padding:16px !important;border-radius:24px}
}
@media (max-width: 620px){
  .nupass-event-page-v179{
    width:100%;
    max-width:none;
    padding:0 0 84px !important;
  }
  .nupass-event-hero-shell{
    border-radius:0;
    border-left:0;
    border-right:0;
    border-top:0;
    padding:0 0 18px;
    background:transparent;
    box-shadow:none;
  }
  .nupass-event-poster-image{
    border-radius:0 0 28px 28px;
    border-left:0;
    border-right:0;
    border-top:0;
  }
  .nupass-event-share-button{
    width:calc(100% - 28px);
    margin:0 auto;
  }
  .nupass-event-content{
    padding:16px 20px 0 !important;
  }
  .nupass-event-title{
    font-size:clamp(2.05rem,12vw,3.15rem) !important;
  }
  .nupass-event-presenter{margin-bottom:18px !important}
  .nupass-event-ticket-panel,
  .nupass-event-details-panel{
    margin-top:24px !important;
  }
  .nupass-event-ticket-panel{
    padding:16px !important;
    border-radius:24px;
  }
  .nupass-event-description p,
  .nupass-event-description li{
    font-size:14px;
    line-height:1.75;
  }
}



/* ===== v1.7.9 event page refinements =====
   - Fix nested/open status badge overlap.
   - Keep description before tickets without visual conflicts.
*/
.nupass-event-status-row .nupass-event-card-status-wrap{
  display:inline-flex !important;
  align-items:center !important;
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:0 !important;
}
.nupass-event-status-row .nupass-event-card-status-wrap .nupass-event-status-pill{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:32px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,0,206,.38) !important;
  background:rgba(255,0,206,.14) !important;
  color:#ffd6f8 !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:850 !important;
  letter-spacing:.02em !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}
.nupass-event-status-row > .wp-block-nupass-event-status-badge,
.nupass-event-status-row > div:not(.nupass-event-card-status-wrap){
  margin:0 !important;
}
.nupass-event-details-panel{
  margin-top:28px !important;
}
.nupass-event-details-panel + .nupass-event-ticket-panel{
  margin-top:32px !important;
}
@media (max-width:620px){
  .nupass-event-status-row{
    margin-bottom:12px !important;
  }
  .nupass-event-status-row .nupass-event-card-status-wrap .nupass-event-status-pill{
    min-height:30px !important;
    padding:0 12px !important;
    font-size:11px !important;
  }
}


/* ==========================================================
   NUPASS v1.7.10 - Header final cleanup
   - Elimina duplicado de icono Mi cuenta en escritorio.
   - Aumenta altura visual del header para que no se vea cortado.
   - Mantiene el flujo mobile existente: el menú mobile lo construye app.js.
   ========================================================== */
@media (min-width: 961px){
  :root{
    --nupass-header-height: 82px;
    --nupass-header-max: 1420px;
  }

  .wp-site-blocks > .nupass-site-header,
  .wp-site-blocks > header.nupass-site-header,
  .nupass-site-header,
  header.wp-block-group.nupass-site-header{
    height: var(--nupass-header-height) !important;
    min-height: var(--nupass-header-height) !important;
    max-height: var(--nupass-header-height) !important;
    overflow: hidden !important;
    background: rgba(6,7,12,.96) !important;
  }

  .nupass-site-header > .nupass-header-row,
  header.wp-block-group.nupass-site-header > .nupass-header-row,
  .nupass-site-header .nupass-header-row{
    height: var(--nupass-header-height) !important;
    min-height: var(--nupass-header-height) !important;
    max-height: var(--nupass-header-height) !important;
    display: grid !important;
    grid-template-columns: minmax(92px,1fr) auto minmax(300px,1fr) !important;
    align-items: center !important;
    padding: 0 32px !important;
    row-gap: 0 !important;
    overflow: hidden !important;
  }

  .nupass-site-header .nupass-header-brand,
  .nupass-site-header .nupass-main-nav,
  .nupass-site-header .nupass-header-actions-shell{
    grid-row: 1 !important;
    align-self: center !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .nupass-site-header .nupass-header-brand{
    height: var(--nupass-header-height) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    overflow: hidden !important;
  }

  .nupass-site-header .nupass-header-brand .custom-logo,
  .nupass-site-header .nupass-header-brand img{
    height: 28px !important;
    max-height: 28px !important;
    max-width: 96px !important;
    width: auto !important;
    object-fit: contain !important;
    object-position: left center !important;
    display: block !important;
  }

  .nupass-site-header .nupass-main-nav,
  .nupass-site-header .nupass-main-nav--v1710{
    height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .nupass-site-header .nupass-main-nav .wp-block-navigation__container{
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
    align-items: center !important;
  }

  .nupass-site-header .nupass-header-actions-shell{
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    overflow: visible !important;
  }

  .nupass-site-header .nupass-header-actions-desktop-wrap,
  .nupass-site-header .nupass-header-actions,
  .nupass-site-header .nupass-header-actions-desktop-wrap > *{
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
  }

  /* Duplicado visible: cualquier salida mobile o bloque suelto de cuenta debe desaparecer en desktop. */
  .nupass-site-header .nupass-header-actions-mobile-wrap,
  .nupass-site-header .nupass-mobile-header-actions,
  .nupass-site-header .nupass-mobile-account,
  .nupass-site-header .nupass-mobile-account-link,
  .nupass-site-header .nupass-mobile-user,
  .nupass-site-header .nupass-mobile-only,
  .nupass-site-header [class*="mobile-header"],
  .nupass-site-header [class*="mobile-account"],
  .nupass-site-header [data-nupass-mobile-action="1"]{
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }
}

@media (max-width: 960px){
  /* Mobile se mantiene igual: solo se asegura que el header no herede cortes de desktop. */
  .nupass-site-header,
  header.wp-block-group.nupass-site-header{
    overflow: visible !important;
    max-height: none !important;
  }
}


/* -------------------------------------------------------------------------
   Nupass v1.7.11 — Restore premium ticket cards on single event pages only.
   This belongs to the theme, not the Core. Keep Core logic intact.
   ------------------------------------------------------------------------- */
.single-nupass_event .nupass-event-ticket-panel{
  padding: clamp(18px, 2vw, 24px) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.045) !important;
  box-shadow: 0 22px 70px rgba(0,0,0,.26) !important;
}

.single-nupass_event .nupass-event-ticket-panel > .nupass-event-section-title,
.single-nupass_event .nupass-event-ticket-panel > h2,
.single-nupass_event .nupass-event-ticket-panel .wp-block-heading{
  margin: 0 0 16px !important;
  color: #fff !important;
  font-family: var(--wp--preset--font-family--display, "Poppins", system-ui, sans-serif) !important;
  font-size: clamp(1.55rem, 2.6vw, 2.15rem) !important;
  line-height: 1 !important;
  letter-spacing: -.055em !important;
  font-weight: 900 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-event-tickets-block{
  display: grid !important;
  gap: 14px !important;
  margin: 0 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card{
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 18px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.055) !important;
  color: #fff !important;
  box-shadow: none !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-main{
  min-width: 0 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-title-row{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 0 8px !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card h3{
  margin: 0 !important;
  color: #fff !important;
  font-family: var(--wp--preset--font-family--display, "Poppins", system-ui, sans-serif) !important;
  font-size: clamp(1rem, 1.6vw, 1.16rem) !important;
  line-height: 1.18 !important;
  letter-spacing: -.025em !important;
  font-weight: 900 !important;
  text-transform: none !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-status-pill{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,0,206,.34) !important;
  background: rgba(255,0,206,.13) !important;
  color: #ffd6f8 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  white-space: nowrap !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card p,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-reason{
  margin: 0 0 8px !important;
  color: rgba(255,255,255,.64) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta{
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 7px 12px !important;
  color: rgba(255,255,255,.70) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta strong{
  color: #fff !important;
  font-size: clamp(1.05rem, 1.8vw, 1.3rem) !important;
  line-height: 1 !important;
  letter-spacing: -.035em !important;
  font-weight: 900 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta span{
  color: rgba(255,255,255,.64) !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-action{
  justify-self: end !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 9px !important;
  margin: 0 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form input[type="number"]{
  width: 68px !important;
  min-height: 42px !important;
  height: 42px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  background: rgba(255,255,255,.075) !important;
  color: #fff !important;
  font: inherit !important;
  font-weight: 750 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button{
  min-height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg,#ff21d3 0%,#ff00ce 100%) !important;
  color: #fff !important;
  font-family: inherit !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-shadow: 0 14px 34px rgba(255,0,206,.22) !important;
  cursor: pointer !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button.is-disabled,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button:disabled{
  opacity: .52 !important;
  cursor: not-allowed !important;
  background: rgba(255,255,255,.16) !important;
  box-shadow: none !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-empty-state{
  padding: 18px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  background: rgba(255,255,255,.04) !important;
  color: rgba(255,255,255,.70) !important;
}

@media (max-width: 720px){
  .single-nupass_event .nupass-event-ticket-panel{
    padding: 16px !important;
    border-radius: 24px !important;
  }

  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    padding: 16px !important;
  }

  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-title-row{
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 8px !important;
  }

  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-action,
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form{
    width: 100% !important;
    justify-self: stretch !important;
  }

  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form{
    display: grid !important;
    grid-template-columns: 82px 1fr !important;
  }

  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button{
    width: 100% !important;
  }
}


/* -------------------------------------------------------------------------
   Nupass v1.7.12 — Final ticket buying UI.
   Objetivo: dejar el área de tickets igual a la referencia aprobada.
   Solo toca visual del bloque nupass/event-tickets en single event.
   ------------------------------------------------------------------------- */
.single-nupass_event .nupass-event-ticket-panel{
  margin-top: clamp(28px, 4vw, 46px) !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.single-nupass_event .nupass-event-ticket-panel > .nupass-event-section-title,
.single-nupass_event .nupass-event-ticket-panel > h2,
.single-nupass_event .nupass-event-ticket-panel .wp-block-heading{
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 26px !important;
  color: #fff !important;
  font-family: var(--wp--preset--font-family--display, "Poppins", system-ui, sans-serif) !important;
  font-size: clamp(2.3rem, 4.8vw, 3.75rem) !important;
  line-height: .94 !important;
  letter-spacing: -.065em !important;
  font-weight: 900 !important;
}

.single-nupass_event .nupass-event-ticket-panel > .nupass-event-section-title::before,
.single-nupass_event .nupass-event-ticket-panel > h2::before,
.single-nupass_event .nupass-event-ticket-panel .wp-block-heading::before{
  content: "🎟" !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: 10px !important;
  border: 1px solid rgba(255,0,206,.24) !important;
  background: linear-gradient(135deg, rgba(255,0,206,.16), rgba(255,255,255,.04)) !important;
  box-shadow: 0 14px 40px rgba(255,0,206,.12) !important;
  font-size: 19px !important;
  letter-spacing: 0 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-event-tickets-block{
  display: grid !important;
  gap: 24px !important;
  margin: 0 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card{
  position: relative !important;
  display: block !important;
  min-height: 214px !important;
  margin: 0 !important;
  padding: 30px 30px 42px !important;
  padding-right: clamp(230px, 28vw, 330px) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 24px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.012), rgba(255,255,255,0)), #040406 !important;
  color: #fff !important;
  box-shadow: 0 18px 60px rgba(0,0,0,.38) !important;
  overflow: hidden !important;
  opacity: 1 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card::before{
  content: "" !important;
  position: absolute !important;
  left: 30px !important;
  right: 30px !important;
  bottom: 24px !important;
  height: 12px !important;
  border-radius: 999px !important;
  background: #5b6270 !important;
  pointer-events: none !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card::after{
  content: "" !important;
  position: absolute !important;
  left: 30px !important;
  bottom: 24px !important;
  width: calc(100% - 60px) !important;
  max-width: calc(100% - 60px) !important;
  height: 12px !important;
  border-radius: 999px !important;
  background: #7cc943 !important;
  box-shadow: 0 0 24px rgba(124,201,67,.20) !important;
  pointer-events: none !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card.status-soldout,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card.status-closed,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card.status-disabled,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card.status-inactive{
  opacity: .64 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card.status-soldout::after,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card.status-closed::after,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card.status-disabled::after,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card.status-inactive::after{
  width: 0 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card.status-upcoming::after{
  background: #f5b942 !important;
  box-shadow: 0 0 24px rgba(245,185,66,.20) !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-main{
  position: static !important;
  display: block !important;
  min-width: 0 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-title-row{
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card h3{
  max-width: 760px !important;
  margin: 0 !important;
  color: #fff !important;
  font-family: var(--wp--preset--font-family--display, "Poppins", system-ui, sans-serif) !important;
  font-size: clamp(1.8rem, 3.2vw, 2.75rem) !important;
  line-height: 1.10 !important;
  letter-spacing: -.05em !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-status-pill{
  display: block !important;
  width: fit-content !important;
  min-height: 0 !important;
  margin: 30px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #fff !important;
  font-size: clamp(1.05rem, 1.9vw, 1.45rem) !important;
  line-height: 1.25 !important;
  font-weight: 500 !important;
  text-transform: none !important;
  white-space: normal !important;
}

.single-nupass_event .nupass-event-ticket-panel .status-soldout .nupass-ticket-status-pill,
.single-nupass_event .nupass-event-ticket-panel .status-closed .nupass-ticket-status-pill,
.single-nupass_event .nupass-event-ticket-panel .status-disabled .nupass-ticket-status-pill,
.single-nupass_event .nupass-event-ticket-panel .status-inactive .nupass-ticket-status-pill{
  display: none !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card p,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-reason{
  margin: 14px 0 0 !important;
  max-width: 760px !important;
  color: rgba(255,255,255,.58) !important;
  font-size: clamp(.9rem, 1.25vw, 1rem) !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-reason{
  display: none !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta{
  display: block !important;
  max-width: 820px !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  color: rgba(255,255,255,.90) !important;
  font-size: clamp(1rem, 1.9vw, 1.35rem) !important;
  line-height: 1.48 !important;
  font-weight: 500 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta strong{
  position: absolute !important;
  top: 30px !important;
  right: 30px !important;
  display: inline-flex !important;
  align-items: baseline !important;
  gap: 8px !important;
  color: #fff !important;
  font-size: clamp(1.95rem, 4vw, 2.75rem) !important;
  line-height: 1 !important;
  letter-spacing: -.05em !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta strong::after{
  content: "CLP" !important;
  font-size: .62em !important;
  font-weight: 800 !important;
  color: rgba(255,255,255,.94) !important;
  letter-spacing: -.02em !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta span{
  display: inline !important;
  margin-right: 8px !important;
  color: rgba(255,255,255,.90) !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-action{
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  width: 100% !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-stepper{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  height: 38px !important;
  min-width: 86px !important;
  padding: 0 9px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  background: rgba(255,255,255,.035) !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-stepper-btn{
  appearance: none !important;
  width: 22px !important;
  height: 24px !important;
  min-height: 0 !important;
  display: inline-grid !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: rgba(255,255,255,.88) !important;
  box-shadow: none !important;
  font-family: inherit !important;
  font-size: 1.35rem !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-stepper-btn:hover{
  color: #fff !important;
  background: rgba(255,255,255,.08) !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form input[type="number"]{
  width: 24px !important;
  min-width: 24px !important;
  max-width: 24px !important;
  height: 28px !important;
  min-height: 28px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #fff !important;
  box-shadow: none !important;
  appearance: textfield !important;
  -moz-appearance: textfield !important;
  font-family: inherit !important;
  font-size: 1.28rem !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  text-align: center !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form input[type="number"]::-webkit-outer-spin-button,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form input[type="number"]::-webkit-inner-spin-button{
  -webkit-appearance: none !important;
  margin: 0 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button{
  min-height: 38px !important;
  height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg,#ff00ce,#ff45dd) !important;
  color: #fff !important;
  font-family: inherit !important;
  font-size: 1.06rem !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-shadow: 0 10px 26px rgba(255,0,206,.24) !important;
  cursor: pointer !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button:hover{
  filter: brightness(1.06) !important;
  transform: translateY(-1px) !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button.is-disabled,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button:disabled{
  position: absolute !important;
  right: 30px !important;
  bottom: 66px !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #d86b6b !important;
  font-size: clamp(1.15rem, 2.2vw, 1.75rem) !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  opacity: 1 !important;
  cursor: default !important;
}

.single-nupass_event .nupass-event-ticket-panel .status-upcoming .nupass-ticket-buy-button.is-disabled,
.single-nupass_event .nupass-event-ticket-panel .status-upcoming .nupass-ticket-buy-button:disabled{
  color: #f5b942 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-empty-state{
  padding: 24px !important;
  border-radius: 22px !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  background: #040406 !important;
  color: rgba(255,255,255,.70) !important;
}

@media (max-width: 920px){
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card{
    padding-right: 30px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta strong{
    position: static !important;
    display: flex !important;
    width: fit-content !important;
    margin: 18px 0 0 !important;
  }
}

@media (max-width: 720px){
  .single-nupass_event .nupass-event-ticket-panel{
    margin-top: 30px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel > .nupass-event-section-title,
  .single-nupass_event .nupass-event-ticket-panel > h2,
  .single-nupass_event .nupass-event-ticket-panel .wp-block-heading{
    gap: 12px !important;
    margin-bottom: 18px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel > .nupass-event-section-title::before,
  .single-nupass_event .nupass-event-ticket-panel > h2::before,
  .single-nupass_event .nupass-event-ticket-panel .wp-block-heading::before{
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    font-size: 16px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-event-tickets-block{
    gap: 16px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card{
    min-height: 0 !important;
    padding: 22px 18px 40px !important;
    border-radius: 22px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card::before,
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card::after{
    left: 18px !important;
    right: 18px !important;
    bottom: 18px !important;
    max-width: calc(100% - 36px) !important;
    height: 10px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card::after{
    width: calc(100% - 36px) !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card h3{
    font-size: clamp(1.55rem, 8vw, 2.05rem) !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-status-pill{
    margin-top: 18px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta{
    font-size: 1rem !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta strong{
    font-size: 1.9rem !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-action,
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form{
    width: 100% !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form{
    display: flex !important;
    flex-wrap: wrap !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button:not(.is-disabled){
    flex: 1 1 140px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button.is-disabled,
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button:disabled{
    position: static !important;
    margin-left: auto !important;
    text-align: right !important;
  }
}

/* -------------------------------------------------------------------------
   Nupass v1.7.13 — Ticket UI refinement only.
   Solo ajustes estéticos del bloque de tickets: escala, barra y stock visible.
   No modifica flujos de compra, stock, QR, RRPP ni formularios.
   ------------------------------------------------------------------------- */
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card{
  min-height: 178px !important;
  padding: 24px 24px 36px !important;
  padding-right: clamp(205px, 26vw, 295px) !important;
  border-radius: 22px !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card::before{
  left: 24px !important;
  right: 24px !important;
  bottom: 20px !important;
  height: 10px !important;
  background: rgba(91,98,112,.70) !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card::after{
  left: 24px !important;
  bottom: 20px !important;
  width: calc(100% - 48px) !important;
  max-width: calc(100% - 48px) !important;
  height: 10px !important;
  background: linear-gradient(90deg, #7c3aed 0%, #ff00ce 52%, #ff7a18 100%) !important;
  box-shadow: 0 0 26px rgba(255,0,206,.20), 0 0 18px rgba(255,122,24,.14) !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card.status-upcoming::after{
  background: linear-gradient(90deg, #7c3aed 0%, #ff00ce 52%, #ff7a18 100%) !important;
  box-shadow: 0 0 26px rgba(255,0,206,.18), 0 0 18px rgba(255,122,24,.12) !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card h3{
  max-width: 700px !important;
  font-size: clamp(1.55rem, 2.65vw, 2.28rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -.048em !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-status-pill{
  margin-top: 22px !important;
  font-size: clamp(.95rem, 1.55vw, 1.18rem) !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card p,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-reason{
  max-width: 620px !important;
  font-size: clamp(.82rem, 1.05vw, .94rem) !important;
  line-height: 1.52 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta{
  max-width: 660px !important;
  margin-top: 8px !important;
  font-size: clamp(.92rem, 1.45vw, 1.08rem) !important;
  line-height: 1.45 !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta strong{
  top: 24px !important;
  right: 24px !important;
  font-size: clamp(1.72rem, 3.45vw, 2.35rem) !important;
}

/* Oculta solo el dato de stock visible en la tarjeta.
   En la estructura actual: strong precio + span cargo + span disponibles + span ventana. */
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta span:nth-of-type(2){
  display: none !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-action{
  margin-top: 16px !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form{
  gap: 10px !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-stepper{
  height: 34px !important;
  min-width: 78px !important;
  gap: 8px !important;
  padding: 0 8px !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-stepper-btn{
  width: 20px !important;
  height: 22px !important;
  font-size: 1.18rem !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-purchase-form input[type="number"]{
  width: 22px !important;
  min-width: 22px !important;
  max-width: 22px !important;
  height: 24px !important;
  min-height: 24px !important;
  font-size: 1.08rem !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button{
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 16px !important;
  font-size: .95rem !important;
}

.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button.is-disabled,
.single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button:disabled{
  right: 24px !important;
  bottom: 56px !important;
  font-size: clamp(1.05rem, 1.9vw, 1.45rem) !important;
}

@media (max-width: 920px){
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card{
    padding-right: 24px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta strong{
    margin-top: 14px !important;
  }
}

@media (max-width: 720px){
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card{
    padding: 20px 16px 34px !important;
    border-radius: 20px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card::before,
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card::after{
    left: 16px !important;
    right: 16px !important;
    bottom: 16px !important;
    max-width: calc(100% - 32px) !important;
    height: 9px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card::after{
    width: calc(100% - 32px) !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card h3{
    font-size: clamp(1.42rem, 7vw, 1.86rem) !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-status-pill{
    margin-top: 16px !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card p{
    font-size: .84rem !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta{
    font-size: .92rem !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-card-meta strong{
    font-size: 1.72rem !important;
  }
  .single-nupass_event .nupass-event-ticket-panel .nupass-ticket-buy-button:not(.is-disabled){
    flex: 0 1 auto !important;
  }
}
