	/* ═══════════════════════════════════════════════════════
	   NHOA NAVAS — Menu CSS
	═══════════════════════════════════════════════════════ */

	:root {
	  --nn-cream: #F0EDE6;
	  --nn-dark:  #1C1A17;
	  --nn-muted: #9A9188;
	  --nn-serif: 'Cormorant Garamond', Georgia, serif;
	  --nn-sans:  'Space Grotesk', system-ui, sans-serif;
	  --nn-expo:  cubic-bezier(0.16, 1, 0.3, 1);
	  --nn-wipe:  cubic-bezier(0.77, 0, 0.175, 1);
	}

	/* ── Hamburguesa ── */
	.nn-menu-toggle {
	  background: none;
	  border: none;
	  cursor: pointer;
	  width: 36px;
	  height: 36px;
	  display: flex;
	  flex-direction: column;
	  justify-content: center;
	  align-items: center;
	  gap: 6px;
	  padding: 4px;
	  position: relative;
	  z-index: 10010;
	}
	.nn-menu-toggle:hover,
	.nn-menu-toggle:active,
	.nn-menu-toggle.is-open,
	.nn-menu-toggle:focus,
	.nn-menu-toggle:focus-visible {
	  background: none !important;
	  box-shadow: none !important;
	  outline: none !important;
	}
	.nn-menu-toggle span {
	  display: block;
	  background: var(--nn-dark);
	  height: 1px;
	  width: 28px;
	  transform-origin: center center;
	  transition: transform 0.5s var(--nn-expo), opacity 0.3s ease;
	}
	.nn-menu-toggle.is-open span:nth-child(1) { transform: translateY(3.5px) rotate(45deg); }
	.nn-menu-toggle.is-open span:nth-child(2) { transform: translateY(-3.5px) rotate(-45deg); }

	/* ── Overlay menú ── */
	.nn-menu-overlay {
	  position: fixed;
	  inset: 0;
	  background: var(--global-palette9);
	  z-index: 10000;
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  align-items: start;
	  padding: 100px clamp(24px, 4vw, 60px) 60px;
	  clip-path: inset(0 0 100% 0);
	  transition: clip-path 0.75s var(--nn-wipe);
	  pointer-events: none;
	}
	.nn-menu-overlay.is-open {
	  clip-path: inset(0 0 0% 0);
	  pointer-events: all;
	}

	/* Logo */
	.nn-menu-logo {
	  position: absolute;
	  top: 7.25%;
	  left: 1.9em;
	  display: flex;
	  align-items: center;
	  text-decoration: none;
	}
	.nn-menu-logo img { max-width: 200px!important; }

	/* ── Imagen lateral ── */
	.nn-menu-image {
	  position: absolute;
	  left: clamp(24px, 4vw, 60px);
	  bottom: clamp(40px, 8vh, 100px);
	  width: clamp(180px, 18vw, 260px);
	  aspect-ratio: 3 / 4;
	  overflow: hidden;
	  pointer-events: none;
	}
	.nn-menu-image img {
	  position: absolute;
	  inset: 0;
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	  transition: opacity 0.55s var(--nn-expo), transform 0.55s var(--nn-expo);
	}
	.nn-menu-image img.img-back  { opacity: 1; transform: scale(1); }
	.nn-menu-image img.img-front { opacity: 0; transform: scale(1.04); }
	.nn-menu-image img.img-front.active { opacity: 1; transform: scale(1); }

	@keyframes nn-kenburns {
	  0%   { transform: scale(1); }
	  100% { transform: scale(1.06); }
	}
	.nn-menu-image img.img-back {
	  animation: nn-kenburns 8s ease-in-out infinite alternate;
	}

	/* ── Nav grid ── */
	.nn-nav {
	  grid-column: 2;
	  display: grid;
	  grid-template-columns: repeat(4, 1fr);
	  gap: clamp(24px, 3vw, 40px) clamp(16px, 2vw, 24px);
	  align-content: start;
	}
	.nn-nav-item { display: flex; flex-direction: column; gap: 10px; }
	.nn-nav-num {
	  font-family: var(--nn-sans);
	  font-size: 11px;
	  font-weight: 300;
	  color: var(--nn-muted);
	  opacity: 0;
	  transform: translateY(16px);
	  transition: opacity 0.55s var(--nn-expo), transform 0.55s var(--nn-expo), color 0.35s ease;
	}
	.nn-nav-link {
	  font-weight: 400;
	  font-size: clamp(12px, 1.8vw, 12px);
	  text-transform: uppercase;
	  color: var(--nn-dark);
	  text-decoration: none !important;
	  display: block;
	  line-height: 1.15;
	  position: relative;
	  overflow: hidden;
	  opacity: 0;
	  transform: translateY(22px);
	  transition: opacity 0.55s var(--nn-expo), transform 0.55s var(--nn-expo);
	}
	.nn-nav-link .label-main,
	.nn-nav-link .label-hover {
	  display: block;
	  transition: transform 0.5s var(--nn-expo);
	  white-space: nowrap;
	  text-decoration: none;
	}
	.nn-nav-link .label-hover {
	  position: absolute;
	  top: 0; left: 0;
	  color: var(--nn-muted);
	  transform: translateY(105%);
	}
	.nn-nav-link:hover .label-main  { transform: translateY(-105%); }
	.nn-nav-link:hover .label-hover { transform: translateY(0); }
	.nn-nav-item:hover .nn-nav-num  { color: var(--nn-dark); }

	/* ── Stagger entrada ── */
	.nn-menu-overlay.is-open .nn-nav-num,
	.nn-menu-overlay.is-open .nn-nav-link { opacity: 1; transform: translateY(0); }
	.nn-nav-num, .nn-nav-link { transition-delay: 0s !important; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(1) .nn-nav-num  { transition-delay: 0.15s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(1) .nn-nav-link { transition-delay: 0.19s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(2) .nn-nav-num  { transition-delay: 0.22s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(2) .nn-nav-link { transition-delay: 0.26s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(3) .nn-nav-num  { transition-delay: 0.29s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(3) .nn-nav-link { transition-delay: 0.33s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(4) .nn-nav-num  { transition-delay: 0.36s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(4) .nn-nav-link { transition-delay: 0.40s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(5) .nn-nav-num  { transition-delay: 0.43s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(5) .nn-nav-link { transition-delay: 0.47s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(6) .nn-nav-num  { transition-delay: 0.50s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(6) .nn-nav-link { transition-delay: 0.54s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(7) .nn-nav-num  { transition-delay: 0.57s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(7) .nn-nav-link { transition-delay: 0.61s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(8) .nn-nav-num  { transition-delay: 0.64s; }
	.nn-menu-overlay.is-open .nn-nav-item:nth-child(8) .nn-nav-link { transition-delay: 0.68s; }

	/* ── Mobile menú ── */
	@media (max-width: 768px) {
	  .nn-menu-overlay { grid-template-columns: 1fr; padding: 90px 24px 40px; }
	  .nn-nav { grid-column: 1; grid-template-columns: repeat(2, 1fr); gap: 28px 20px; }
	  .nn-menu-image { display: none; }
		.nn-nav {
	  align-content: center!important;
	}
	}
	@media (max-width: 480px) { .nn-nav-link { font-size: 14px; } }
	@media (prefers-reduced-motion: reduce) {
	  .nn-menu-overlay, .nn-nav-num, .nn-nav-link,
	  .nn-menu-toggle span, .nn-menu-image img,
	  .nn-nav-link .label-main, .nn-nav-link .label-hover {
		transition: none !important; animation: none !important;
	  }
	}

	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Acordeón
	═══════════════════════════════════════════ */





	.nn-acordeon { position:relative;width: 100%; z-index:10; background:#FAF5EE!important;}
	.nn-acordeon-item { border-top: 0.5px solid #2E2822; }
	.nn-acordeon-item:last-child { border-bottom: 0.5px solid #2E2822; }

	.nn-acordeon-trigger,
	.nn-acordeon-trigger:hover,
	.nn-acordeon-trigger:focus,
	.nn-acordeon-trigger:active,
	.nn-acordeon-trigger:focus-visible {
	  width: 100%;
	  background: none !important;
	  background-color: transparent !important;
	  border: none !important;
	  box-shadow: none !important;
	  outline: none !important;
	  color: inherit !important;
	  padding: 28px 0 !important;
	  margin: 0 !important;
	  cursor: pointer;
	  display: flex !important;
	  align-items: center !important;
	  justify-content: space-between !important;
	  gap: 24px;
	  text-align: left;
	  border-radius: 0 !important;
	}
	.nn-acordeon-header {
	  display: flex;
	  align-items: baseline;
	  gap: clamp(24px, 5vw, 80px);
	  flex: 1;
	}
	.nn-acordeon-num { flex-shrink: 0; opacity: 0.4; }
	.nn-acordeon-titulo em { font-style: normal; opacity: 0.45; }
	.nn-acordeon-icon { width: 16px; height: 16px; position: relative; flex-shrink: 0; }
	.nn-acordeon-icon::before,
	.nn-acordeon-icon::after {
	  content: '';
	  position: absolute;
	  background: currentColor;
	  top: 50%; left: 50%;
	  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1);
	}
	.nn-acordeon-icon::before { width: 14px; height: 1px; transform: translate(-50%, -50%); }
	.nn-acordeon-icon::after  { width: 1px; height: 14px; transform: translate(-50%, -50%); }
	.nn-acordeon-item.is-open .nn-acordeon-icon::after {
	  transform: translate(-50%, -50%) rotate(90deg);
	  opacity: 0;
	}
	.nn-acordeon-body {
	  display: grid;
	  grid-template-rows: 0fr;
	  transition: grid-template-rows 0.65s cubic-bezier(0.16, 1, 0.3, 1);
	}
	.nn-acordeon-item.is-open .nn-acordeon-body { grid-template-rows: 1fr; }
	.nn-acordeon-inner { overflow: hidden; }
	.nn-acordeon-contenido {
	  max-width: 50%;
	  margin-left: auto;
	  padding-bottom: 40px;
	  padding-right: 80px;
	  opacity: 0;
	  transform: translateY(8px);
	  transition: opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1) 0.2s,
				  transform 0.5s cubic-bezier(0.16, 1, 0.3, 1) 0.2s;
	}
	.nn-acordeon-item.is-open .nn-acordeon-contenido { opacity: 1; transform: translateY(0); }
	.nn-acordeon-contenido p { line-height: 1.8; opacity: 0.7; margin-bottom: 1.1em; }
	.nn-acordeon-contenido p:last-child { margin-bottom: 0; }

	@media (max-width: 768px) {

	  .nn-acordeon-contenido {
		max-width: 100%;
		margin-left: 0;
		padding-right: 0;
		padding-bottom: 24px;
	  }
	  .nn-acordeon-header {
		gap: 12px;
	  }
	}

	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Tratamientos Tabs
	═══════════════════════════════════════════ */

	.nn-tratamientos { width: 100%; color: #F9F5EE; }

	.nn-trat-tabs {
	  display: flex;
	  justify-content: center;
	  gap: clamp(24px, 4vw, 60px);
	  padding-bottom: clamp(16px, 2vw, 28px);
	}
	.nn-trat-tab {
	  background: none !important;
	  border: none !important;
	  box-shadow: none !important;
	  outline: none !important;
	  color: #F9F5EE !important;
	  cursor: pointer;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  gap: 40px;
	  padding: 0 !important;
	  border-radius: 0 !important;
	  max-width: 266px;
	  text-align: center;
	}
	.nn-trat-tab:hover,
	.nn-trat-tab:focus,
	.nn-trat-tab:active,
	.nn-trat-tab:focus-visible {
	  background: none !important;
	  box-shadow: none !important;
	  outline: none !important;
	  color: #F9F5EE !important;
	}
	.nn-trat-circle {
	  width: 15px;
	  height: 15px;
	  border-radius: 50%;
	  border: 1px solid #F9F5EE;
	  display: block;
	  transition: background 0.4s cubic-bezier(0.16, 1, 0.3, 1), transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
	  opacity: 0.4;
	}
	.nn-trat-tab.is-active .nn-trat-circle { background: #F9F5EE; opacity: 1; transform: scale(1.15); }
	.nn-trat-tab-titulo {
	  opacity: 0.4;
	  text-transform: uppercase;
	  transition: opacity 0.4s ease;
	  line-height: 1.3;
	}
	.nn-trat-tab.is-active .nn-trat-tab-titulo { opacity: 1; }
	.nn-trat-divider {
	  width: 100%;
	  height: 1px;
	  background: #F9F5EE;
	  opacity: 0.15;
	  margin-bottom: clamp(32px, 4vw, 56px);
	}

	/* ── Panel con fadein ── */
	@keyframes nn-fadein {
	  from { opacity: 0; }
	  to   { opacity: 1; }
	}
	.nn-trat-panel {
	  display: none;
	  grid-template-columns: 1fr 1fr;
	  gap: clamp(32px, 5vw, 80px);
	}
	.nn-trat-panel.is-active {
	  display: grid;
	  animation: nn-fadein 0.6s ease forwards;
	}

	.nn-trat-left { display: flex; flex-direction: column; gap: 16px; }
	.nn-trat-tags { opacity: 0.5; font-weight:200; margin: 0 !important; color: #F9F5EE; }
	.nn-trat-subtitulo {
	  text-transform: uppercase;
	  line-height: 1.3;
	  margin: 0;
	  font-style: normal !important;
	  color: #F9F5EE;
	}
	.nn-trat-precio { color: #F9F5EE; }
	.nn-trat-cta { color: #F9F5EE; text-decoration: none; }
	.nn-trat-right {
	  opacity: 0.75;
	  line-height: 1.8;
	  color: #F9F5EE;
	  display: -webkit-box;
	  -webkit-line-clamp: 30;
	  -webkit-box-orient: vertical;
	  max-height: 300px;
	  overflow: hidden;
	}
	.nn-trat-right p { margin-bottom: 1.1em; color: #F9F5EE; }
	.nn-trat-right p:last-child { margin-bottom: 0; }

	@media (max-width: 768px) {
	  .nn-trat-tabs {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 20px 16px;
		justify-items: start;
	  }
	  .nn-trat-tab {
		flex-direction: row;
		align-items: flex-start;
		gap: 10px;
		max-width: 100%;
		text-align: left;
	  }
	  .nn-trat-circle {
		width: 11px;
		height: 11px;
		min-width: 11px;
		min-height: 11px;
		flex-shrink: 0;
		border-radius: 50%;
	  }
	  .nn-trat-tab-titulo {
		font-size: 11px;
		line-height: 1.4;
	  }
		.nn-trat-subtitulo{ font-size:10px;}
	  .nn-trat-panel.is-active {
		grid-template-columns: 1fr;
		gap: 24px;
	  }
	  .nn-trat-right { display: none; }
	}

	/*seccion gift card home*/
	@media(max-width:767px){
	.gift-card-section{
	border-top:0.5px solid black;
		opacity:0.6;
	}
		.img-gift{
			padding-top:60px;
		}
	}
	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Formulario de contacto
	═══════════════════════════════════════════ */

	.elementor-form .elementor-form-fields-wrapper { gap: 0 !important; counter-reset: form-counter !important; }
	.elementor-form .elementor-field-group {
	  display: grid !important;
	  grid-template-columns: clamp(40px, 5vw, 80px) 1fr !important;
	  align-items: start !important;
	  border-top: 0.5px solid #2E2822 !important;
	  position: relative !important;
	  counter-increment: form-counter !important;
	  padding-top: 25px;
	  padding-bottom: 20px;
	}
	.elementor-form .elementor-field-group::before {
	  content: counter(form-counter, decimal-leading-zero) !important;
	  opacity: 0.8 !important;
	  align-self: start !important;
	}
	.elementor-form .elementor-field-label { display: none !important; }
	.elementor-form .elementor-field-textual {
	  background: none !important;
	  border: none !important;
	  border-radius: 0 !important;
	  box-shadow: none !important;
	  outline: none !important;
	  padding: 0 !important;
	  width: 100% !important;
	  color: inherit !important;
	  opacity: 0.8 !important;
	}
	.elementor-form .elementor-field-textual::placeholder {
	  color: inherit !important;
	  text-transform: uppercase !important;
	  font-size: 12px;
	}
	.elementor-form .elementor-field-textual:focus {
	  background: none !important;
	  border: none !important;
	  box-shadow: none !important;
	  outline: none !important;
	  opacity: 1 !important;
	}
	.elementor-field-textual { min-height: auto !important; }
	.elementor-field-group .elementor-field-textual { vertical-align: top !important; }
	.elementor-form textarea.elementor-field-textual { resize: none !important; min-height: 120px !important; }
	.elementor-form .elementor-button {
	  background: none !important;
	  border: none !important;
	  box-shadow: none !important;
	  border-radius: 0 !important;
	  padding: 0 !important;
	  color: inherit !important;
	  text-decoration: underline !important;
	  cursor: pointer !important;
	  margin-top: 32px !important;
	  display: inline-block !important;
	}
	.elementor-form .elementor-button:hover { background: none !important; opacity: 0.6 !important; }
	.elementor-form .elementor-button .elementor-button-icon { display: none !important; }
	.elementor-form .elementor-field-type-submit {
	  border: none !important;
	  padding: 0 !important;
	  display: block !important;
	  counter-increment: none !important;
	}
	.elementor-form .elementor-field-type-submit::before { display: none !important; }
	.elementor-form .elementor-field-type-textarea { border-bottom: 0.5px solid #2E2822 !important; }
	.elementor-button-text { font-size: 12px; }

	@media (max-width: 768px) {
	  .elementor-form .elementor-field-group { grid-template-columns: 36px 1fr !important; }
	}

	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Lista productos con popup
	═══════════════════════════════════════════ */

	.nn-lista { width: 100%; }
	.nn-lista-items { list-style: none; margin: 0; padding: 0; }
	.nn-lista-item {
	  border-top: 1px solid rgba(0,0,0,0.12);
	  position: relative;
	  cursor: pointer;
	}
	.nn-lista-item:last-child { border-bottom: 1px solid rgba(0,0,0,0.12); }
	.nn-lista-item-inner {
	  display: flex;
	  align-items: center;
	  justify-content: space-between;
	  gap: 12px;
	  padding: 12px 0;
	}
	.nn-lista-item-texto { display: flex; flex-direction: column; flex: 1; }
	.nn-lista-titulo { display: block; text-transform: uppercase; }
	.nn-lista-tags { display: block; opacity: 0.4; }
	.nn-lista-arrow {
	  display: flex;
	  align-items: center;
	  flex-shrink: 0;
	  opacity: 1;
	  transform: translateX(-4px);
	  transition: transform 0.3s ease;
	}
	.nn-lista-item:hover .nn-lista-arrow { transform: translateX(0); }
	/* ── Descripción subcategoría en lista — recortada ── */
	.nn-lista-cat-item .nn-lista-tags {
	  display: -webkit-box;
	  -webkit-line-clamp: 2;
	  -webkit-box-orient: vertical;
	  overflow: hidden;
	  max-width: 50%;
	}
	.nn-lista-hover-img {
	  position: fixed;
	  width: 180px;
	  aspect-ratio: 3 / 4;
	  overflow: hidden;
	  pointer-events: none;
	  opacity: 0;
	  transform: scale(0.96) translateY(8px);
	  transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1), transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
	  z-index: 100;
	  top: 0; left: 0;
	}
	.nn-lista-hover-img img { width: 100%; height: 100%; object-fit: cover; }
	.nn-lista-item:hover .nn-lista-hover-img { opacity: 1; transform: scale(1) translateY(0); }

	.nn-popup-overlay {
	  position: fixed;
	  inset: 0;
	  background: rgba(240, 237, 230, 0.7);
	  backdrop-filter: blur(8px);
	  -webkit-backdrop-filter: blur(8px);
	  z-index: 9000;
	  opacity: 0;
	  visibility: hidden;
	  transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s linear 0.4s;
	}
	.nn-popup-overlay.is-open {
	  opacity: 1; visibility: visible;
	  transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s linear 0s;
	}
	.nn-popup {
	  position: fixed;
	  top: 50%; left: 50%;
	  transform: translate(-50%, -48%);
	  width: min(680px, 90vw);
	  max-height: 80vh;
	  overflow-y: auto;
	  background: var(--global-palette9, #F0EDE6);
	  z-index: 9001;
	  padding: clamp(32px, 4vw, 56px);
	  opacity: 0;
	  visibility: hidden;
	  transition: opacity 0.45s cubic-bezier(0.16, 1, 0.3, 1),
				  transform 0.45s cubic-bezier(0.16, 1, 0.3, 1),
				  visibility 0s linear 0.45s;
	}
	.nn-popup.is-open {
	  opacity: 1; visibility: visible;
	  transform: translate(-50%, -50%);
	  transition: opacity 0.45s cubic-bezier(0.16, 1, 0.3, 1),
				  transform 0.45s cubic-bezier(0.16, 1, 0.3, 1),
				  visibility 0s linear 0s;
	}
	.nn-popup-close {
	  position: absolute;
	  top: 24px; right: 24px;
	  width: 24px; height: 24px;
	  background: none !important;
	  border: none !important;
	  box-shadow: none !important;
	  cursor: pointer;
	  padding: 0 !important;
	}
	.nn-popup-close::before,
	.nn-popup-close::after {
	  content: '';
	  position: absolute;
	  top: 50%; left: 50%;
	  width: 16px; height: 1px;
	  background: currentColor;
	}
	.nn-popup-close::before { transform: translate(-50%, -50%) rotate(45deg); }
	.nn-popup-close::after  { transform: translate(-50%, -50%) rotate(-45deg); }
	.nn-popup-meta { opacity: 0.5; margin-bottom: 24px;  text-transform: uppercase; }
	.nn-popup-titulo { text-transform: uppercase;  margin-bottom: 8px; }
	.nn-popup-tags { opacity: 0.4; margin-bottom: 0;  }
	.nn-popup-divider { height: 1px; background: rgba(0,0,0,0.12); margin: 20px 0; }
	.nn-popup-desc { opacity: 0.75; line-height: 1.8; margin-bottom: 12px; }
	.nn-popup-contenido { opacity: 0.75; line-height: 1.8; }
	.nn-popup-contenido p { margin-bottom: 1em; }
	.nn-popup-contenido p:last-child { margin-bottom: 0; }
	.nn-popup-footer { margin-top: 28px; }
	.nn-popup-btn-precio {
	  display: inline-block;
	  padding: 10px 20px;
	  border: 1px solid currentColor;
	  text-decoration: none;
	  color: inherit;
	  text-transform: uppercase;
	  transition: background 0.3s ease, color 0.3s ease;
	}
	.nn-popup-btn-precio:hover {
	  background: currentColor;
	  color: var(--global-palette9, #F0EDE6);
	}
	/* ── Lista grid 2 columnas ── */
	.nn-lista-grid .nn-lista-items {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  gap: 24px;
	}

	.nn-lista-grid .nn-lista-item {
	  border: 1px solid rgba(0,0,0,0.12);
	  border-top: none;
	  padding: 24px;
	}

	.nn-lista-grid .nn-lista-item:first-child,
	.nn-lista-grid .nn-lista-item:nth-child(2) {
	  border-top: 1px solid rgba(0,0,0,0.12);
	}

	/* Último item impar ocupa todo el ancho */
	.nn-lista-grid .nn-lista-item:last-child:nth-child(odd) {
	  grid-column: 1 / -1;
	}
	.nn-lista-num {
	  opacity: 0.4;
	  margin-bottom: 8px;
	  display: block;
	}
	.nn-lista-grid-desc {
	  opacity: 0.6;
	  line-height: 1.7;
	  margin-top: 16px;
	  padding-top: 16px;
	  border-top: 1px solid rgba(0,0,0,0.08);
	}
	/* ── Lista grid El Santuario — colores ── */
	.nn-lista-grid .nn-lista-item {
	  border-color: #CEC6B9 !important;
	}
	.nn-lista-grid .nn-lista-num,
	.nn-lista-grid .nn-lista-tags,
	.nn-lista-grid .nn-lista-grid-desc {
	  color: #CEC6B9;
	}
	.nn-lista-grid .nn-lista-titulo {
	  color: #F9F5EE;
	}
	.nn-lista-grid .nn-lista-arrow {
	  color: #F9F5EE;
	}
	.nn-lista-grid .nn-lista-item:first-child,
	.nn-lista-grid .nn-lista-item:nth-child(2) {
	  border-top: 0.5px solid #CEC6B9 !important;
	}
	.nn-lista-grid .nn-lista-item {
	  border: 0.5px solid #CEC6B9 !important;
	}
	@media (max-width: 768px) {
	  .nn-lista-grid .nn-lista-items {
		grid-template-columns: 1fr;
		  padding: 20px !important;
	  }

	  .nn-lista-hover-img { display: none; }
	  .nn-popup { width: 92vw; padding: 28px 20px; max-height: 85vh; }
	
  .nn-popup-close {
    top: 16px;
    right: 16px;
    z-index: 10;
    background: var(--global-palette9, #F0EDE6) !important;
    width: 32px;
    height: 32px;
  }
  .nn-popup-cats-header {
    padding-top: 32px;
  }
}

	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Lista categorias + popup products
	   Añadir a custom.css
	═══════════════════════════════════════════ */

	/* ── Popup categorias — más ancho para lista ── */
	.nn-popup-cats {
	  width: min(800px, 92vw) !important;
	  max-height: 85vh;
	}

	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Popup cats actualizado
	   Reemplaza/añade al final de custom.css
	═══════════════════════════════════════════ */

	/* ── Header popup: breadcrumb + desc ── */
	.nn-popup-cats-header {
	  display: flex;
	  flex-direction: column;
	  gap: 12px;
	  margin-bottom: 0;
	  padding-bottom: 70px;
	}

	.nn-popup-cats-breadcrumb {
	  display: flex;
	  align-items: center;
	  gap: 8px;
	  text-transform: uppercase;
		font-size:11px;
	}

	/* Segmentos del breadcrumb */
	.nn-popup-cats-breadcrumb .nn-bread-madre {
	  opacity: 0.35;
	}
	.nn-popup-cats-breadcrumb .nn-bread-sep {
	  opacity: 0.35;
	}
	.nn-popup-cats-breadcrumb .nn-bread-actual {
	  opacity: 1;
	}

	/* Descripcion subcategoria — max 5 lineas */
	.nn-popup-cats-desc {
	  opacity: 0.6;
	  line-height: 1.7;
	  margin: 0;
	  display: -webkit-box;
	  -webkit-line-clamp: 5;
	  -webkit-box-orient: vertical;
	  overflow: hidden;
	}

	/* ── Body scrollable ── */
	.nn-popup-cats-body {
	  overflow-y: auto;
	  max-height: calc(85vh - 160px);
	  margin-top: 0;
	}

	/* ── Loading ── */
	.nn-popup-loading {
	  opacity: 0.4;
	  padding: 32px 0;
	  text-align: center;
	}

	/* ── Popup apertura con fade ── */
	.nn-popup,
	.nn-popup-detail {
	  transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1),
				  transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
				  visibility 0s linear 0.4s;
	}
	.nn-popup.is-open,
	.nn-popup-detail.is-open {
	  transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1),
				  transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
				  visibility 0s linear 0s;
	}

	/* ── Hover productos en popup — highlight sutil ── */
	.nn-popup-product-item {
	  transition: background 0.25s ease, padding-left 0.25s ease;
	}
	.nn-popup-product-item:hover {
	  padding-left: 8px;
	}

	/* ── Hover items lista exterior ── */
	.nn-lista-cat-item {
	  transition: background 0.25s ease, padding-left 0.25s ease;
	}
	.nn-lista-cat-item:hover {
	  padding-left: 8px;
	}
	/* ── Body scrollable ── */
	.nn-popup-cats-body {
	  overflow-y: auto;
	  max-height: calc(85vh - 120px);
	}

	/* ── Loading ── */
	.nn-popup-loading {
	  opacity: 0.4;
	  padding: 24px 0;
	  text-align: center;
	}

	/* ── Lista de productos dentro del popup ── */
	.nn-popup-products-list {
	  list-style: none;
	  margin: 0;
	  padding: 0;
	}

	.nn-popup-product-item {
	  border-top: 1px solid rgba(0,0,0,0.12);
	  cursor: pointer;
	}
	.nn-popup-product-item:last-child {
	  border-bottom: 1px solid rgba(0,0,0,0.12);
	}

	/* ── Popup de producto (segundo nivel) ── */
	.nn-popup-detail {
	  position: fixed;
	  top: 50%;
	  left: 50%;
	  transform: translate(-50%, -48%);
	  width: min(680px, 90vw);
	  max-height: 80vh;
	  overflow-y: auto;
	  background: var(--global-palette9, #F0EDE6);
	  z-index: 9002;
	  padding: clamp(32px, 4vw, 56px);
	  opacity: 0;
	  visibility: hidden;
	  transition: opacity 0.45s cubic-bezier(0.16, 1, 0.3, 1),
				  transform 0.45s cubic-bezier(0.16, 1, 0.3, 1),
				  visibility 0s linear 0.45s;
	}
	.nn-popup-detail.is-open {
	  opacity: 1;
	  visibility: visible;
	  transform: translate(-50%, -50%);
	  transition: opacity 0.45s cubic-bezier(0.16, 1, 0.3, 1),
				  transform 0.45s cubic-bezier(0.16, 1, 0.3, 1),
				  visibility 0s linear 0s;
	}
	.nn-popup-detail-close {
	  position: absolute;
	  top: 24px; right: 24px;
	  width: 24px; height: 24px;
	  background: none !important;
	  border: none !important;
	  box-shadow: none !important;
	  cursor: pointer;
	  padding: 0 !important;
	}
	.nn-popup-detail-close::before,
	.nn-popup-detail-close::after {
	  content: '';
	  position: absolute;
	  top: 50%; left: 50%;
	  width: 16px; height: 1px;
	  background: currentColor;
	}
	.nn-popup-detail-close::before { transform: translate(-50%, -50%) rotate(45deg); }
	.nn-popup-detail-close::after  { transform: translate(-50%, -50%) rotate(-45deg); }

	.nn-popup-detail-titulo { text-transform: uppercase; margin-bottom: 8px; }
	.nn-popup-detail-tags { opacity: 0.4; margin-bottom: 0; }
	.nn-popup-detail-divider { height: 1px; background: rgba(0,0,0,0.12); margin: 20px 0; }
	.nn-popup-detail-desc { opacity: 0.75; line-height: 1.8; margin-bottom: 12px; }
	.nn-popup-detail-contenido { opacity: 0.75; line-height: 1.8; }
	.nn-popup-detail-contenido p { margin-bottom: 1em; }
	.nn-popup-detail-contenido p:last-child { margin-bottom: 0; }
	.nn-popup-detail-footer { margin-top: 28px; }
	.nn-popup-detail-btn {
	  display: inline-block;
	  padding: 10px 20px;
	  border: 1px solid currentColor;
	  text-decoration: none;
	  color: inherit;
	  text-transform: uppercase;
	  transition: background 0.3s ease, color 0.3s ease;
	}
	.nn-popup-detail-btn:hover {
	  background: currentColor;
	  color: var(--global-palette9, #F0EDE6);
	}

	@media (max-width: 768px) {
	  .nn-popup-cats { width: 92vw !important; padding: 28px 20px; }
	  .nn-popup-detail { width: 92vw; padding: 28px 20px; }
	}
	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Lista cats con imagen lateral
	   Añadir al final de custom.css
	═══════════════════════════════════════════ */

	/* ── Wrapper 2 columnas ── */
	.nn-lista-cats-wrapper {
	  width: 100%;
	}

	.nn-lista-cats-con-imagen {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  gap: clamp(40px, 6vw, 100px);
	  align-items: center;
	}

	/* ── Columna imagen ── */
	.nn-lista-cats-imagen {
	  display: flex;
	  align-items: center;
	  justify-content: center;
	}

	.nn-lista-cats-img-inner {
	  position: relative;
	  width: clamp(200px, 22vw, 320px);
	  aspect-ratio: 3 / 4;
	}

	.nn-cats-img {
	  position: absolute;
	  inset: 0;
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	  opacity: 0;
	  transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1);
	}

	.nn-cats-img.is-visible {
	  opacity: 1;
	}
	.nn-lista-cats-con-imagen.nn-imagen-izquierda {
	  grid-template-columns: 1fr 1fr;
	}

	.nn-lista-cats-con-imagen.nn-imagen-izquierda .nn-lista-cats-imagen {
	  order: -1;
	}
	/* ── Mobile ── */
	@media (max-width: 768px) {
	  .nn-lista-cats-con-imagen {
		grid-template-columns: 1fr;
	  }
	  .nn-lista-cats-imagen {
		display: none;
	  }
	}


	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Shop
	   Añadir a custom.css
	═══════════════════════════════════════════ */

	/* ── Contenedor ── */
	.nhoa-shop.site-container {
	  max-width: none !important;
	  padding: 30px !important;
	  width: 100% !important;
	}


	/* ── Intro ── */
	.nhoa-shop-intro {
	  display: flex;
	  align-items: flex-start;
	  justify-content: space-between;
	  gap: 40px;
	  padding-top: clamp(40px, 6vw, 80px);
	  padding-bottom: 32px;
	}

	.nhoa-shop-intro-left {
	  flex: 1;
	  max-width: 40%;
	}

	.nhoa-shop-supertitulo {
	  display: block;
	  text-transform: uppercase;
	  font-size:11px;
	  opacity: 0.4;
	}

	.nhoa-shop-titulo {
	  text-transform: uppercase;
	  margin: 0 0 16px;
	  line-height: 1.2;
	}



	.nhoa-shop-desc {
	  opacity: 0.6;
	  line-height: 1.8;
	  margin: 0 0 8px;
	  transition: all 0.4s ease;
	}
	.nhoa-shop-desc-wrap {
	  max-width: 620px;
	}


	.nhoa-shop-desc-wrap {
	  position: relative;
	}

	.nhoa-shop-desc {
	  max-height: 8.8em;
	  overflow-y: auto;
	  padding-right: 14px;
	  scrollbar-width: thin;
	  scrollbar-color: rgba(28, 26, 23, 0.22) transparent;
	}

	/* Scrollbar fina en Chrome/Safari */
	.nhoa-shop-desc::-webkit-scrollbar {
	  width: 2px;
	}

	.nhoa-shop-desc::-webkit-scrollbar-track {
	  background: transparent;
	}

	.nhoa-shop-desc::-webkit-scrollbar-thumb {
	  background: rgba(28, 26, 23, 0.22);
	  border-radius: 20px;
	}

	/* Fade inferior elegante */
	.nhoa-shop-desc-wrap::after {
	  content: '';
	  position: absolute;
	  left: 0;
	  right: 14px;
	  bottom: 0;
	  height: 34px;
	  pointer-events: none;
	  background: linear-gradient(
		to bottom,
		rgba(240, 237, 230, 0),
		var(--global-palette9, #F0EDE6)
	  );
	}
	/* ── Filtros ── */
	.nhoa-shop-intro-right {
	  display: flex;
	  flex-direction: column;
	  align-items: flex-end;
	  gap: 16px;
	  padding-top: 8px;
	  position: relative;
	}

	.nhoa-filtro-toggle {
	  display: flex;
	  align-items: center;
	  gap: 8px;
	  background: none !important;
	  border: none !important;
	  box-shadow: none !important;
	  cursor: pointer;
	  color: var(--nn-dark, #1C1A17) !important;
	  text-transform: uppercase;
	  padding: 0 !important;
	  opacity: 1 !important;
	  align-self: flex-end;
		font-size:11px;
	}

	.nhoa-shop-filtro {
	  display: none;
	  opacity: 0;
	  transform: translateY(-8px);
	}

	.nhoa-shop-filtro.is-open {
	  display: flex;
	  align-items: center;
	  gap: clamp(11px, 1vw, 20px);
	  flex-wrap: nowrap;
	  overflow-x: auto;
	  scrollbar-width: none;
	  padding-bottom: 4px;
	  justify-content: flex-end;
		  animation: nhoa-filtro-in 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;

	}
	@keyframes nhoa-filtro-in {
	  from { opacity: 0; transform: translateY(-8px); }
	  to   { opacity: 1; transform: translateY(0); }
	}
	.nhoa-shop-filtro.is-open::-webkit-scrollbar { display: none; }

	/* ── Estilo filtros ── */
	.nhoa-filtro-btn {
	  text-decoration: none !important;
	  color: inherit;
	  text-transform: uppercase;
	  opacity: 0.35;
	  transition: opacity 0.3s ease;
	  white-space: nowrap;
	  flex-shrink: 0;
		font-size:11px;
	}

	.nhoa-filtro-btn:hover { opacity: 0.7; }
	.nhoa-filtro-btn.is-active { opacity: 1; }

	/* ── Divisor ── */
	.nhoa-shop-divider {
	  height: 1px;
	  background: rgba(0,0,0,0.1);
	  margin-bottom: 48px;
	}

	/* ── Grid 4 columnas ── */
	.nhoa-shop-grid {
	  display: grid;
	  grid-template-columns: repeat(4, 1fr);
	  gap: clamp(32px, 4vw, 56px) clamp(16px, 2vw, 24px);
	  margin-bottom: 64px;
	}

	/* ── Card ── */
	.nhoa-producto-card {
	  display: flex;
	  flex-direction: column;
	  gap: 12px;
	}

	.nhoa-card-imagen-link { display: block; text-decoration: none; }

	.nhoa-card-imagen {
	  width: 100%;
	  aspect-ratio: 3 / 4;
	  overflow: hidden;
	  background: var(--global-palette9, #F0EDE6);
	}

	.nhoa-card-imagen img {
	  width: 100%;
	  height: 100% !important;
	  max-width: 100% !important;
	  object-fit: cover !important;
	  padding: 0 !important;
	  transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
	}

	.nhoa-producto-card:hover .nhoa-card-imagen img {
	  transform: scale(1.04);
	}

	.nhoa-card-sin-imagen { background: rgba(0,0,0,0.06); }

	.nhoa-card-info {
	  display: flex;
	  flex-direction: column;
	  gap: 4px;
	  flex: 1;
	}

	.nhoa-card-cat {
	  text-transform: uppercase;
	  opacity: 0.4;
	  display: block;
	}

	.nhoa-card-titulo-link { text-decoration: none; color: inherit; }

	.nhoa-card-titulo {
	  text-transform: uppercase;
	  margin: 0;
	  line-height: 1.3;
	}

	.nhoa-card-tags {
		text-transform:uppercase;
	  opacity: 0.45;
	  margin: 0;
	  line-height: 1.5;
	}

	/* Footer precio + botón */
	.nhoa-card-footer {
	  display: flex;
	  align-items: center;
	  justify-content: space-between;
	  gap: 12px;
	  margin-top: auto;
	  padding-top: 13px;
		padding-bottom:12px;
	  border-top: 1px solid rgba(0,0,0,0.08);
	}

	.nhoa-card-precio {
	  display: flex;
	  flex-direction: row;
	  gap: 1px;
	}

	.nhoa-card-precio .woocommerce-Price-amount { font-weight: 400; }

	.nhoa-precio-label {
	  opacity: 0.45;
	  display: block;
	}

	.nhoa-card-btn {
	  display: inline-block;
	  padding: 5px 10px;
	  border: 1px solid currentColor;
	  text-decoration: none;
	  color: inherit;
	  text-transform: uppercase;
	  white-space: nowrap;
	  flex-shrink: 0;
	  transition: background 0.3s ease, color 0.3s ease;
		font-size:11px;
		  transition:  opacity 0.3s ease;
	}

	.nhoa-card-btn:hover {
	  background: transparent;
	  color: black;
		opacity:0.5;
	}

	/* ── Paginación ── */
	.nhoa-shop-paginacion {
	  display: flex;
	  justify-content: center;
	  padding: 40px 0;
	}

	.nhoa-shop-paginacion .page-numbers {
	  display: inline-flex;
	  align-items: center;
	  justify-content: center;
	  min-width: 36px;
	  height: 36px;
	  padding: 0 8px;
	  text-decoration: none;
	  color: inherit;
	  opacity: 0.4;
	  transition: opacity 0.3s ease;
	}

	.nhoa-shop-paginacion .page-numbers.current,
	.nhoa-shop-paginacion .page-numbers:hover { opacity: 1; }

	

	/* ── Empty ── */
	.nhoa-shop-empty { padding: 80px 0; text-align: center; opacity: 0.5; }

	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Shop fade in suave
	═══════════════════════════════════════════ */

	@keyframes nhoa-shop-fade-in {
	  from {
		opacity: 0;
		transform: translateY(14px);
	  }
	  to {
		opacity: 1;
		transform: translateY(0);
	  }
	}

	.nhoa-shop {
	  animation: nhoa-shop-fade-in 0.75s cubic-bezier(0.16, 1, 0.3, 1) both;
	}

	/* Fade más fino para las cards */
	.nhoa-producto-card {
	  opacity: 0;
	  transform: translateY(16px);
	  animation: nhoa-shop-card-in 0.7s cubic-bezier(0.16, 1, 0.3, 1) both;
	}

	@keyframes nhoa-shop-card-in {
	  from {
		opacity: 0;
		transform: translateY(16px);
	  }
	  to {
		opacity: 1;
		transform: translateY(0);
	  }
	}

	/* Stagger suave por productos */
	.nhoa-producto-card:nth-child(1) { animation-delay: 0.05s; }
	.nhoa-producto-card:nth-child(2) { animation-delay: 0.10s; }
	.nhoa-producto-card:nth-child(3) { animation-delay: 0.15s; }
	.nhoa-producto-card:nth-child(4) { animation-delay: 0.20s; }
	.nhoa-producto-card:nth-child(5) { animation-delay: 0.25s; }
	.nhoa-producto-card:nth-child(6) { animation-delay: 0.30s; }
	.nhoa-producto-card:nth-child(7) { animation-delay: 0.35s; }
	.nhoa-producto-card:nth-child(8) { animation-delay: 0.40s; }
	.nhoa-producto-card:nth-child(9) { animation-delay: 0.45s; }
	.nhoa-producto-card:nth-child(10) { animation-delay: 0.50s; }
	.nhoa-producto-card:nth-child(11) { animation-delay: 0.55s; }
	.nhoa-producto-card:nth-child(12) { animation-delay: 0.60s; }

	@media (prefers-reduced-motion: reduce) {
	  .nhoa-shop,
	  .nhoa-producto-card {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
	  }
	}
	/* ── Responsive ── */
	@media (max-width: 1100px) {
	  .nhoa-shop-grid { grid-template-columns: repeat(3, 1fr); }
	  .nhoa-shop-intro { flex-direction: column; gap: 24px; }
	  .nhoa-shop-intro-left { max-width: 100%; }
	  .nhoa-shop-intro-right { width: 100%; justify-content: flex-start; }
	}

	@media (max-width: 768px) {
		  .nhoa-producto-card {
    height: 100%;
  }
  .nhoa-card-imagen {
    aspect-ratio: 3 / 4 !important;
    height: auto !important;
  }
  .nhoa-card-imagen img {
    object-fit: cover !important;
    padding: 0 !important;
  }
  /* Alinear grid para que las filas no se desajusten */
  .nhoa-shop-grid {
    align-items: start !important;
  }
	  .nhoa-shop-grid { grid-template-columns: repeat(2, 1fr)!important; }
		.nhoa-card-cat{font-size:10px;}
	.nhoa-shop-grid {
    align-items: start !important;
    grid-auto-rows: auto !important;
  }
}
.nhoa-card-tags{ font-size:10px;}


	  .nhoa-shop-intro-right {
		overflow: hidden;
	  }

	  .nhoa-shop-filtro.is-open {
		width: 100%;
		justify-content: flex-start !important;
		overflow-x: auto;
		overflow-y: hidden;
		flex-wrap: nowrap;
		padding-right: 45px;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	  }

	  .nhoa-shop-filtro.is-open::-webkit-scrollbar {
		display: none;
	  }

	  .nhoa-filtro-btn {
		flex-shrink: 0;
	  }

	@media (max-width: 768px) {
  .nhoa-shop.site-container {
    padding: 16px !important;
  }
  .nhoa-shop-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px 10px !important;
  }
}

	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Single Product
	   Añadir a custom.css
	═══════════════════════════════════════════ */

	/* Label importe */
	.nhoa-single-product .variations th label {
	  font-weight: 400 !important;
	  text-transform: uppercase !important;
	  text-align: left !important;
	  padding-right: 16px;
	}

	/* Tabla variaciones alineada izquierda */
	.nhoa-single-product .variations {
	  width: 100%;
	}
	.nhoa-single-product .variations td,
	.nhoa-single-product .variations th {
	  text-align: left !important;
	  vertical-align: middle;
	  padding: 8px 0;
	}

	/* Select limpio */
	.nhoa-single-product .variations select {
	  background: none !important;
	  border: none !important;
	  border-bottom: 1px solid currentColor !important;
	  border-radius: 0 !important;
	  box-shadow: none !important;
	  padding: 8px 0 !important;
	  width: 100% !important;
	  color: inherit !important;
	  appearance: none !important;
	  -webkit-appearance: none !important;
	  cursor: pointer;
	  opacity: 0.8;
	}
	.nhoa-single-product .variations select:focus {
	  outline: none !important;
	  opacity: 1;
	}

	/* Quitar reset link */
	.nhoa-single-product .reset_variations {
	  display: none !important;
	}
	.nhoa-single-product.site-container {
	  max-width: none !important;
	  width: 100% !important;
	  padding: 0 !important;
	}

	/* ── Layout principal ── */
	.nhoa-single-main {
	  display: grid;
	  grid-template-columns: 1fr 1px minmax(480px, 640px);
	  gap: clamp(48px, 7vw, 90px);
	  align-items: stretch;
	  padding: 12px clamp(40px, 6vw, 90px) clamp(60px, 8vw, 120px);
	}
	/* ── Imagen ── */
	.nhoa-single-image {
	  width: 100%;
	  aspect-ratio: 3 / 4;
		height:80vh;
	  overflow: hidden;
	  background: rgba(0,0,0,0.04);
	}
	.nhoa-single-image img {
	  width: 100%;
	  height: 80vh!important;
	  object-fit: cover;
	}

	/* ── Divisor vertical ── */
	.nhoa-single-divider {
	  width: 1px;
	  background: rgba(0,0,0,0.1);
	  align-self: stretch;
	}

	/* ── Info columna ── */
	.nhoa-single-info {
	  display: flex;
	  flex-direction: column;
	  gap: 40px;
	}

	.nhoa-single-title {
	  text-transform: uppercase;
	  margin: 0 0 6px;
	  line-height: 1.2;
	}

	.nhoa-single-meta {
	  opacity: 0.4;
	  margin: 0 0 24px;
	  line-height: 1.5;
		text-transform:uppercase;
	}

	.nhoa-single-desc-corta {
	  opacity: 0.7;
	  line-height: 1.8;
	}
	.nhoa-single-desc-corta p { margin: 0 0 1.2em; }
	.nhoa-single-desc-corta p:last-child { margin-bottom: 0; }

	/* ── Precio ── */
	.nhoa-single-price {
	  display: flex;
	  flex-direction: row;
	  gap: 2px;
	  margin-bottom: 20px;
	}
	.nhoa-single-price .woocommerce-Price-amount { font-weight: 400; }
	.nhoa-single-price-label { opacity: 0.45; display: block; }

	/* ── Botón WooCommerce ── */
	.nhoa-single-product .single_add_to_cart_button,
	.nhoa-single-product .button.alt {
	  display: flex !important;
	  align-items: center !important;
	  justify-content: center !important;
	  width: 100% !important;
	  border: 1px solid currentColor !important;
	  padding: 12px 18px !important;
	  text-decoration: none !important;
	  color: inherit !important;
	  text-transform: uppercase !important;
	  background: transparent !important;
	  border-radius: 0 !important;
	  box-shadow: none !important;
	  font-size: inherit !important;
	  transition: opacity 0.3s ease !important;
	  cursor: pointer !important;
	  margin-bottom: 0 !important;
	}
	.nhoa-single-product .single_add_to_cart_button:hover,
	.nhoa-single-product .button.alt:hover {
	  background: transparent !important;
	  color: black !important;
	  opacity: 0.7 !important;
	}

	/* Ocultar quantity input */
	.nhoa-single-product .quantity { display: none !important; }
.wc-block-checkout-empty svg, .wc-block-cart__empty-cart__title.with-empty-cart-icon:before{ display:none!important;}
	/* ── Acordeones ── */
	.nhoa-single-accordions {
	  margin-top: 40px;
	}
	.nhoa-single-accordion {
	  border-top: 1px solid rgba(0,0,0,0.1);
	}
	.nhoa-single-accordion:last-child {
	  border-bottom: 1px solid rgba(0,0,0,0.1);
	}
	.nhoa-single-accordion summary {
	  list-style: none;
	  cursor: pointer;
	  padding: 14px 0;
	  display: flex;
	  align-items: center;
	  justify-content: space-between;
	  gap: 20px;
	  text-transform: uppercase;
	  user-select: none;
	}
	.nhoa-single-accordion summary::-webkit-details-marker { display: none; }
	.nhoa-single-plus {
	  transition: transform 0.35s ease;
	  flex-shrink: 0;
	}
	.nhoa-single-accordion[open] .nhoa-single-plus { transform: rotate(45deg); }
	.nhoa-single-accordion-content {
	  padding: 0 0 20px;
	  opacity: 0.65;
	  line-height: 1.8;
	}
	.nhoa-single-accordion-content p { margin: 0 0 1em; }
	.nhoa-single-accordion-content p:last-child { margin-bottom: 0; }

	.nhoa-sacc-item { border-top: 1px solid rgba(0,0,0,0.1); }
	.nhoa-sacc-item:last-child { border-bottom: 1px solid rgba(0,0,0,0.1); }
	.nhoa-sacc-trigger {
	  width: 100%;
	  background: none !important;
	  border: none !important;
	  box-shadow: none !important;
	  padding: 14px 0 !important;
	  display: flex !important;
	  align-items: center !important;
	  justify-content: space-between !important;
	  gap: 20px;
	  text-transform: uppercase;
	  cursor: pointer;
	  color: inherit !important;
	  text-align: left;
	}
	.nhoa-sacc-icon {
	  transition: transform 0.35s ease;
	  flex-shrink: 0;
	}
	.nhoa-sacc-item.is-open .nhoa-sacc-icon { transform: rotate(45deg); }

	.nhoa-sacc-content {
	  overflow: hidden;
	  opacity: 0;
	  line-height: 1.8;
	  padding: 0 0 20px;
	  transition: opacity 0.6s ease 0.1s;
	}
	.nhoa-sacc-item.is-open .nhoa-sacc-content {
	  opacity: 0.65;
	}
	.nhoa-sacc-body {
	  max-height: 0;
	  overflow: hidden;
	  transition: max-height 0.6s cubic-bezier(0.16, 1, 0.3, 1);
	}
	.nhoa-sacc-item.is-open .nhoa-sacc-body {
	  max-height: 600px;
	}
	.nhoa-sacc-item.is-open .nhoa-sacc-content { padding-bottom: 20px; }
	.nhoa-sacc-content p { margin: 0 0 1em; }
	.nhoa-sacc-content p:last-child { margin-bottom: 0; }

	/* ── Te recomendamos ── */
	.nhoa-single-related {
	  padding: clamp(60px, 8vw, 100px) clamp(40px, 6vw, 90px);
	  border-top: 1px solid rgba(0,0,0,0.08);
	}
	.nhoa-single-related-title {
	  text-align: center;
	  text-transform: uppercase;
	  margin: 0 0 clamp(40px, 5vw, 64px);
	}

	/* ── Fade entrada global ── */
	.nhoa-single-product,
	.nhoa-single-main,
	.nhoa-single-image,
	.nhoa-single-info,
	.nhoa-single-related {
	  animation: nhoa-page-in 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
	}

	.nhoa-single-image { animation-delay: 0.1s; opacity: 0; }
	.nhoa-single-info  { animation-delay: 0.25s; opacity: 0; }
	.nhoa-single-related { animation-delay: 0.4s; opacity: 0; }

	@keyframes nhoa-page-in {
	  from { opacity: 0; transform: translateY(16px); }
	  to   { opacity: 1; transform: translateY(0); }
	}

	/* ── Responsive ── */
	@media (max-width: 1100px) {
		.nhoa-single-image {
		height: auto !important;
	  }
	  .nhoa-single-image img {
		height: 100% !important;
	  }
	  .nhoa-single-accordions {
		margin-top: 0 !important;
	  }
	  .nhoa-single-main {
		grid-template-columns: 1fr;
		gap: 40px;
		padding: 40px 24px 60px;
	  }
	  .nhoa-single-divider { display: none; }
	  .nhoa-single-image { aspect-ratio: 4 / 3; }
	}

	@media (max-width: 768px) {
	  .nhoa-single-related { padding: 40px 24px; }
	  .nhoa-single-image { aspect-ratio: 1 / 1; }
	}



	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Galería producto cosmético
	   Añadir al final de custom.css
	═══════════════════════════════════════════ */

	.nhoa-single-image-wrap { width: 100%; }

	/* Galería */
	.nhoa-single-gallery {
	  display: flex;
	  flex-direction: column;
	  gap: 12px;
	  position: sticky;
	  top: 24px;
	}

	.nhoa-gallery-main {
	  width: 100%;
	  aspect-ratio: 1 / 1;
	  overflow: hidden;
	  background: rgba(0,0,0,0.03);
	}

	.nhoa-gallery-main-img {
	  width: 100%;
	  height: 100%;
	  object-fit: contain;
	  transition: opacity 0.2s ease;
	}

	.nhoa-gallery-thumbs {
	  display: flex;
	  gap: 8px;
	  flex-wrap: wrap;
	}

	.nhoa-gallery-thumb {
	  width: 64px;
	  height: 64px;
	  overflow: hidden;
	  cursor: pointer;
	  opacity: 0.4;
	  transition: opacity 0.3s ease;
	  border: 1px solid transparent;
	  flex-shrink: 0;
	}

	.nhoa-gallery-thumb:hover,
	.nhoa-gallery-thumb.is-active {
	  opacity: 1;
	  border-color: rgba(0,0,0,0.2);
	}

	.nhoa-gallery-thumb img {
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	}
	.nhoa-gallery-main-img {
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	  transition: opacity 0.2s ease;
	}
	/* Cards de productos cosméticos — contain en vez de cover */
	.nhoa-card-imagen img {
	  width: 100%;
	  height: 100%;
	  object-fit: contain;
	  padding: 12px;
	  transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
	}
	/*volver a shop*/
	.nhoa-single-back {
		padding: 24px clamp(40px, 6vw, 90px) 0;
	}
	.nhoa-single-back a {
		text-decoration: none;
		color: inherit;
		opacity: 0.4;
		transition: opacity 0.3s ease;
		text-transform: uppercase;
		font-size:11px;
	}
	.nhoa-single-back a:hover { opacity: 1; }
	/* Descripción visible para productos */
	.nhoa-single-desc-larga {
	  opacity: 0.65;
	  line-height: 1.8;
	  margin-top: 16px;
	  padding-top: 16px;
	  border-top: 1px solid rgba(0,0,0,0.08);
	}
	.nhoa-single-desc-larga p { margin: 0 0 1em; }
	.nhoa-single-desc-larga p:last-child { margin-bottom: 0; }

	@media (max-width: 1100px) {
	  .nhoa-single-gallery { position: static; }
	  .nhoa-gallery-main { aspect-ratio: 4 / 3; }
	}


	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Diagnóstico Quiz COMPLETO
	   Reemplaza TODO el bloque del diagnóstico en custom.css
	═══════════════════════════════════════════ */

	.nhoa-diag { width: 100%; }

	/* ── Progreso ── */
	.nhoa-diag-progress {
	  width: 100%; height: 1px;
	  background: rgba(0,0,0,0.1);
	  margin-bottom: clamp(48px, 6vw, 80px);
	}
	.nhoa-diag-progress-bar {
	  height: 1px; background: currentColor; width: 0%;
	  transition: width 0.5s cubic-bezier(0.16, 1, 0.3, 1);
	}

	/* ── Steps: solo uno visible a la vez ── */
	.nhoa-diag-quiz {
	  max-width: 760px; margin: 0 auto;
	  padding: 0px;
	}
	.nhoa-diag-step { display: none !important; }
	.nhoa-diag-step.is-active {
	  display: block !important;
	  animation: nhoa-step-in 0.5s cubic-bezier(0.16, 1, 0.3, 1) forwards;
	}
	@keyframes nhoa-step-in {
	  from { opacity: 0; transform: translateY(12px); }
	  to   { opacity: 1; transform: translateY(0); }
	}
	.nhoa-diag-num {
	  display: block; opacity: 0.35; margin-bottom: 16px;
	  font-size: inherit; list-style: none;
	}
	.nhoa-diag-pregunta {
	  text-transform: uppercase; 
	  margin: 0 0 40px; line-height: 1.4;
	}

	/* ── Opciones ── */
	.nhoa-diag-opciones {
	  list-style: none !important;
	  margin: 0 0 48px !important;
	  padding: 0 !important;
	}
	.nhoa-diag-opciones li::before { display: none !important; }
	.nhoa-diag-opcion {
	  display: flex; align-items: center; gap: 16px;
	  padding: 14px 0; border-top: 1px solid rgba(0,0,0,0.08);
	  cursor: pointer; transition: opacity 0.3s ease;
	  list-style: none !important;
	}
	.nhoa-diag-opcion:last-child { border-bottom: 1px solid rgba(0,0,0,0.08); }
	.nhoa-diag-opcion:hover { opacity: 0.7; }
	.nhoa-diag-opcion.is-selected .nhoa-diag-check { background: currentColor; }
	.nhoa-diag-check {
	  width: 14px; height: 14px; flex-shrink: 0;
	  border: 1px solid currentColor;
	  transition: background 0.3s ease;
	}
	.nhoa-diag-label { text-transform: uppercase; }

	/* ── Nav ── */
	.nhoa-diag-nav { display: flex; align-items: center; justify-content: space-between; }
	.nhoa-diag-prev,
	.nhoa-diag-next {
	  background: none !important; border: 1px solid currentColor !important;
	  box-shadow: none !important; padding: 0 !important;
	  cursor: pointer; color: inherit !important; opacity: 0.4;
	  transition: opacity 0.3s ease;
	  width: 36px; height: 36px;
	  display: flex !important; align-items: center; justify-content: center;
	  border-radius: 50% !important; font-size: 16px;
	}
	.nhoa-diag-prev:hover, .nhoa-diag-next:hover { opacity: 1; }

	/* ── Formulario custom ── */
	.nhoa-diag-form-wrap {
	  min-height: 60vh;
	  display: flex; align-items: center; justify-content: center;
		justify-items: center;
	}
	.nhoa-diag-form-inner {
	  max-width: 480px; width: 100%;
	  padding: clamp(48px, 6vw, 80px) clamp(24px, 4vw, 60px);
	  text-align: center;
	}
	.nhoa-diag-form-titulo {
	  text-transform: uppercase; margin: 0 0 12px;
	}
	.nhoa-diag-form-texto { opacity: 0.6; line-height: 1.8; margin: 0 0 32px; }
	.nhoa-diag-form-campos {
	  display: flex; flex-direction: column; gap: 16px;
	}
	.nhoa-diag-form-campos input {
	  background: none;
	  border: none;
	  border-bottom: 1px solid rgba(0,0,0,0.2);
	  padding: 12px 0;
	  width: 100%;
	  color: inherit;
	  text-transform: uppercase;
	  outline: none;
	}
	.nhoa-diag-form-campos input::placeholder { color: inherit; opacity: 0.4; }
	.nhoa-diag-form-campos input:focus { border-bottom-color: currentColor; }
	#nhoa-form-submit {
	  background: none !important;
	  border: 1px solid currentColor !important;
	  box-shadow: none !important;
	  padding: 12px 28px !important;
	  cursor: pointer; color: inherit !important;
	  text-transform: uppercase; 
	  margin-top: 8px; transition: opacity 0.3s ease;
	}
	#nhoa-form-submit:hover { opacity: 0.5; }
	.nhoa-diag-form-error { opacity: 0.5; margin: 0; }

	/* ── Resultado ── */
	.nhoa-diag-resultado {
	  animation: nhoa-step-in 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
	}

	/* ── Hero puerta ── */
	.nhoa-diag-puerta-hero {
	  width: 100%; min-height: 80vh;
	  background-size: cover; background-position: center;
	  display: flex; align-items: center; justify-content: center;
	  position: relative;
	}
	.nhoa-diag-puerta-hero::before {
	  content: ''; position: absolute; inset: 0;
	  background: rgba(20,18,15,0.72);
	}
	.nhoa-diag-puerta-hero-inner {
	  position: relative; z-index: 1;
	  text-align: center; color: #F0EDE6;
	  padding: clamp(40px, 6vw, 80px) clamp(24px, 4vw, 60px);
	  max-width: 680px;
	  display: flex; flex-direction: column; align-items: center; gap: 12px;
	}
	.nhoa-diag-puerta-img-small {
	  width: clamp(80px, 8vw, 110px);
	  aspect-ratio: 3 / 4; object-fit: cover; margin-bottom: 20px;
	}
	.nhoa-diag-puerta-label {
	  text-transform: uppercase; 
	  opacity: 0.6; margin: 0; color: #F0EDE6;
	}
	.nhoa-diag-puerta-nombre {
	  text-transform: uppercase; 
	  margin: 0; line-height: 1.1; color: #F0EDE6;
	}
	.nhoa-diag-puerta-subtitulo {
	  opacity: 0.55; margin: 0;
	  text-transform: uppercase; color: #F0EDE6;
	}
	.nhoa-diag-puerta-texto {
	  opacity: 0.8; line-height: 1.8; margin: 12px 0 0;
	  max-width: 520px; color: #F0EDE6;
	}

	/* ── Tratamientos ── */
	.nhoa-diag-rec-wrap {
	   margin: 0 auto;
	  padding: clamp(48px, 6vw, 80px) clamp(24px, 4vw, 60px);
	}
	.nhoa-diag-rec-label {
	  display: block; text-transform: uppercase; 
	  opacity: 0.35; margin-bottom: 4px;
	}
	.nhoa-diag-rec-perfil {
	  display: block; text-transform: uppercase; 
	  opacity: 0.6; margin-bottom: 4px;
	}
	.nhoa-diag-rec-titulo {
	  text-transform: uppercase;  margin: 0 0 40px;
	}
	.nhoa-diag-tratamientos-grid {
	  display: flex; flex-direction: column; gap: 0;
	  margin-bottom: 56px;
	}
	.nhoa-diag-trat-card { border-top: 1px solid rgba(0,0,0,0.08); }
	.nhoa-diag-trat-card:last-child { border-bottom: 1px solid rgba(0,0,0,0.08); }
	.nhoa-diag-trat-link {
	  text-decoration: none; color: inherit;
	  display: grid;
	  grid-template-columns: 1fr 80px 120px;
	  align-items: center;
	  gap: 24px; padding: 20px 0;
	  transition: opacity 0.3s ease;
	}
	.nhoa-diag-trat-link:hover { opacity: 0.7; }
	.nhoa-diag-trat-info { display: flex; flex-direction: column; gap: 2px; }
	.nhoa-diag-trat-nombre {
	  text-transform: uppercase; 
	  margin: 0px!important; line-height: 1.3;
	}
	.nhoa-diag-trat-tags {
	  text-transform: capitalize;
	  opacity: 0.4; display: block; line-height: 1.4;
		font-size:11px;
	}
	.nhoa-diag-trat-img {
	  width: 110px; height: 140px;
	  overflow: hidden; flex-shrink: 0;
	  background: rgba(0,0,0,0.04);
	}
	.nhoa-diag-trat-img img { width: 100%; height: 100%; object-fit: cover; }
	.nhoa-diag-reservar {
	  text-align: right;
	 font-style: normal !important;
	  display: block; transition: opacity 0.3s ease;
	}
	.nhoa-diag-trat-link:hover .nhoa-diag-reservar { opacity: 1; }

	/* ── "También en" oculto ── */
	.nhoa-diag-tambien-wrap { display: none !important; }

	/* ── Slider productos ── */
	.nhoa-diag-productos-section {
	  padding: clamp(40px, 5vw, 64px) clamp(24px, 4vw, 60px) 0;
	}
	.nhoa-diag-productos-header {
	  display: flex; flex-direction: column; gap: 4px;
	  margin-bottom: 32px;
	}
	.nhoa-diag-productos-rec {
	  text-transform: uppercase; 
	  opacity: 0.35; display: block;
	}
	.nhoa-diag-productos-titulo {
	  text-transform: uppercase;  margin: 0;
	}
	.nhoa-diag-slider {
	  overflow-x: auto; overflow-y: hidden;
	  scrollbar-width: none; -webkit-overflow-scrolling: touch;
	  margin-left: calc(clamp(24px, 4vw, 60px) * -1);
	  margin-right: calc(clamp(24px, 4vw, 60px) * -1);
	  padding-left: clamp(24px, 4vw, 60px);
	}
	.nhoa-diag-slider::-webkit-scrollbar { display: none; }
	.nhoa-diag-slider-track {
	  display: flex; gap: 20px; width: max-content;
	  padding-right: clamp(24px, 4vw, 60px); padding-bottom: 32px;
	}
	.nhoa-diag-slider-line { height: 1px; background: rgba(0,0,0,0.12); margin-top: 0; }

	/* Card producto slider */
	.nhoa-diag-prod { width: calc(25vw - 40px); min-width: 200px; max-width: 280px; flex-shrink: 0; }
	.nhoa-diag-prod-link { text-decoration: none; color: inherit; display: flex; flex-direction: column; }
	.nhoa-diag-prod-img {
	  width: 100%; aspect-ratio: 3 / 4;
	  overflow: hidden; background: rgba(0,0,0,0.03); margin-bottom: 12px;
	}
	.nhoa-diag-prod-img img {
	  width: 100% !important; height: 100% !important;
	  object-fit: cover !important; padding: 0 !important;
	}
	.nhoa-diag-prod-row {
	  display: flex; align-items: baseline;
	  justify-content: space-between; gap: 12px; margin-bottom: 4px;
	}
	.nhoa-diag-prod-nombre {
	  text-transform: uppercase; 
	  margin: 0; line-height: 1.3; flex: 1;
	}
	.nhoa-diag-prod-precio { opacity: 0.6; white-space: nowrap; flex-shrink: 0; }
	.nhoa-diag-prod-precio .woocommerce-Price-amount { font-weight: 400; }
	.nhoa-diag-prod-tags {
	  text-transform: capitalize;
	  opacity: 0.4; display: block; line-height: 1.4;
	}
	.nhoa-diag-prod-desc { display: none; }

	/* ── CTA ── */
	.nhoa-diag-cta {
	  text-align: center;
	  padding: clamp(48px, 6vw, 80px) clamp(24px, 4vw, 60px);
	  display: flex; flex-direction: column; align-items: center; gap: 20px;
	}
	.nhoa-diag-cta p { opacity: 0.6; margin: 0; }
	.nhoa-diag-cta-btn {
	  display: inline-block; border: 1px solid currentColor;
	  padding: 10px 28px; text-decoration: none; color: inherit;
	  text-transform: uppercase; transition: opacity 0.3s ease;
	}
	.nhoa-diag-cta-btn:hover { opacity: 0.5; }
	.nhoa-diag-reiniciar {
	  background: none !important; border: none !important;
	  box-shadow: none !important; padding: 0 !important;
	  cursor: pointer; color: inherit !important;
	  opacity: 0.35; text-decoration: underline; transition: opacity 0.3s ease;
	}
	.nhoa-diag-reiniciar:hover { opacity: 0.7; }

	/* ── Responsive ── */
	@media (max-width: 1024px) {
	  .nhoa-diag-prod { width: calc(33vw - 32px); }
	}
	@media (max-width: 768px) {
	  .nhoa-diag-trat-link { grid-template-columns: 1fr 80px; }
	  .nhoa-diag-reservar { display: none; }
	  .nhoa-diag-prod { width: 200px; }
	}
.nhoa-diag-form-campos input {
    font-size: 16px !important;
  }
	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Blog slider horizontal
	   Añadir al final de custom.css
	═══════════════════════════════════════════ */

	.nhoa-blog-slider {
	  width: 100vw;
	  margin-left: calc(50% - 50vw);
	  overflow-x: auto;
	  overflow-y: hidden;
	  scrollbar-width: none;
	  -webkit-overflow-scrolling: touch;
	  cursor: grab;
	}
	.nhoa-blog-slider::-webkit-scrollbar { display: none; }
	.nhoa-blog-slider.is-dragging { cursor: grabbing; }

	.nhoa-blog-track {
	  display: flex;
	  width: max-content;
	}

	.nhoa-blog-item {
	  position: relative;
	  width: 33.333vw;
	  height: 80vh;
	  flex-shrink: 0;
	  background-size: cover;
	  background-position: center;
	  background-color: rgba(0,0,0,0.15);
	  text-decoration: none;
	  color: #F0EDE6;
	  display: flex;
	  flex-direction: column;
	  justify-content: flex-end;
	  padding: clamp(24px, 3vw, 40px);
	  overflow: hidden;
	  transition: filter 0.4s ease;
	}
	.nhoa-blog-item::before {
	  content: '';
	  position: absolute;
	  inset: 0;
	  background: linear-gradient(to top, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.1) 50%, transparent 100%);
	  transition: opacity 0.4s ease;
	}
	.nhoa-blog-item:hover::before {
	  opacity: 0.7;
	}
	.nhoa-blog-num {
	  position: absolute;
	  top: clamp(24px, 3vw, 40px);
	  left: clamp(24px, 3vw, 40px);
	  opacity: 0.6;
	  z-index: 1;
	}
	.nhoa-blog-titulo {
	  position: relative;
	  z-index: 1;
	  text-transform: uppercase;
	  line-height: 1.3;
	}

	/* ── Drag to scroll JS ── */

	@media (max-width: 768px) {
	  .nhoa-blog-item {
		width: 80vw;
		height: 60vh;
	  }
	}


	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Single Blog
	═══════════════════════════════════════════ */

	.nhoa-blog-single {
	  width: 100%;
	  background: var(--global-palette9, #F0EDE6);
	  color: var(--nn-dark, #1C1A17);
	}

	.nhoa-blog-layout {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  min-height: calc(100vh - 80px);
	}

	.nhoa-blog-image {
	  width: 100%;
	  height: 100%;
	  min-height: calc(100vh - 80px);
	  overflow: hidden;
	}

	.nhoa-blog-image img {
	  width: 100%;
	  height: 100%;
	  min-height: calc(100vh - 80px);
	  object-fit: cover;
	  display: block;
	}

	.nhoa-blog-content {
	  padding: clamp(70px, 7vw, 120px) clamp(50px, 6vw, 110px);
	  display: flex;
	  flex-direction: column;
	}

	.nhoa-blog-meta {
	  display: flex;
	  flex-direction: column;
	  gap: 28px;
	  margin-bottom: clamp(80px, 10vw, 150px);
	}

	.nhoa-blog-num {
	  font-size: 14px;
	  line-height: 1;
	  opacity: 0.85;
	}

	.nhoa-blog-cat {
	  text-transform: uppercase;
	  font-size: 14px;
	  line-height: 1.4;
	}

	.nhoa-blog-text {
	  max-width: 560px;
	}

	.nhoa-blog-text p {
	  margin: 0 0 2em;
	  line-height: 1.75;
	  opacity: 0.82;
	}

	.nhoa-blog-text p:last-child {
	  margin-bottom: 0;
	}

	.nhoa-blog-text h1,
	.nhoa-blog-text h2,
	.nhoa-blog-text h3,
	.nhoa-blog-text h4 {
	  text-transform: uppercase;
	  font-weight: inherit;
	  margin: 0 0 1.5em;
	  line-height: 1.2;
	}

	.nhoa-blog-text img {
	  max-width: 100%;
	  height: auto;
	}

	/* Navegación anterior / siguiente */

	.nhoa-blog-nav {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  border-top: 0.5px solid rgba(28, 26, 23, 0.25);
	  border-bottom: 0.5px solid rgba(28, 26, 23, 0.25);
	}

	.nhoa-blog-nav-item {
	  min-height: 160px;
	  padding: clamp(28px, 4vw, 52px);
	  display: flex;
	  flex-direction: column;
	  justify-content: space-between;
	  gap: 36px;
	}

	.nhoa-blog-prev {
	  border-right: 0.5px solid rgba(28, 26, 23, 0.25);
	}

	.nhoa-blog-next {
	  text-align: right;
	  align-items: flex-end;
	}

	.nhoa-blog-nav-item span {
	  display: block;
	  text-transform: uppercase;
	  font-size: 11px!important;
	  opacity: 0.45;
	}

	.nhoa-blog-nav-item a {
	  color: inherit;
	  text-decoration: none;
	  text-transform: uppercase;
	  font-size: 12px;
	  line-height: 1.15;
	  max-width: 460px;
	  transition: opacity 0.3s ease;
	}

	.nhoa-blog-nav-item a:hover {
	  opacity: 0.45;
	}

	/* Fade in suave blog */
	@keyframes nhoa-fade-in {
	  from {
		opacity: 0;
		transform: translateY(12px);
	  }
	  to {
		opacity: 1;
		transform: translateY(0);
	  }
	}

	.nhoa-blog-image,
	.nhoa-blog-content,
	.nhoa-blog-nav {
	  opacity: 0;
	  animation: nhoa-fade-in 0.8s cubic-bezier(0.16, 1, 0.3, 1) both;
	}

	.nhoa-blog-image {
	  animation-delay: 0.05s;
	}

	.nhoa-blog-content {
	  animation-delay: 0.18s;
	}

	.nhoa-blog-nav {
	  animation-delay: 0.28s;
	}

	/* Responsive */

	@media (max-width: 900px) {
	  .nhoa-blog-layout {
		grid-template-columns: 1fr;
	  }

	  .nhoa-blog-image {
		min-height: auto;
		height: 70vh;
	  }

	  .nhoa-blog-image img {
		min-height: auto;
		height: 100%;
	  }

	  .nhoa-blog-content {
		padding: 48px 24px 70px;
	  }

	  .nhoa-blog-meta {
		gap: 20px;
		margin-bottom: 70px;
	  }

	  .nhoa-blog-text {
		max-width: none;
	  }

	  .nhoa-blog-nav {
		grid-template-columns: 1fr;
	  }

	  .nhoa-blog-prev {
		border-right: none;
		border-bottom: 0.5px solid rgba(28, 26, 23, 0.25);
	  }

	  .nhoa-blog-next {
		text-align: left;
		align-items: flex-start;
	  }

	  .nhoa-blog-nav-item {
		min-height: 130px;
		padding: 28px 24px;
	  }
	}


	/* ═══════════════════════════════════════════
	   NHOA NAVAS — Footer
	═══════════════════════════════════════════ */

	.nhoa-footer-inner {
	  display: grid;
		grid-template-columns: 140px 1.7fr 1.7fr 1.3fr .4fr;  gap: 38px;
	  align-items: start;
	  padding: clamp(48px, 6vw, 72px) 0 clamp(32px, 4vw, 48px);
	  color: #FAF5EE;
	}
	.nhoa-footer-contacto li:nth-child(2),
	.nhoa-footer-contacto li:nth-child(3) {
	  display: flex;
	  align-items: baseline;
	  gap: 6px;
	}

	.nhoa-footer-contacto li:nth-child(2) .nhoa-footer-sublabel,
	.nhoa-footer-contacto li:nth-child(3) .nhoa-footer-sublabel {
	  margin: 0;
	}
	/* Logo */
	.nhoa-footer-logo a { display: block; }
	.nhoa-footer-logo img {
	  filter: brightness(0) invert(1);
	  opacity: 0.9;
	  width: 36px;
	  height: auto;
	  display: block;
	}


	/* Columnas */
	.nhoa-footer-col {
	  display: flex;
	  flex-direction: column;
	  align-items: flex-start;
	  font-style: normal;
	  text-align: left;
	}

	/* Label */
	.nhoa-footer-label {
	  display: block;
	  text-transform: uppercase;
	  margin-bottom: 16px;
	  font-size: 11px;
	  color: #F0EDE6;
	  letter-spacing: 0;
	  text-align: left;
	}
	.nhoa-footer-horario span{ opacity: 0.7;}
	.nhoa-footer-sublabel {
	  display: block;
	  font-size: 11px;
	  text-transform: uppercase;
	  opacity: 0.4;
	  margin-bottom: 3px;
	  color: #F0EDE6;
	  letter-spacing: 0;
	}

	/* Listas */
	.nhoa-footer-col ul,
	.nhoa-footer-social {
	  list-style: none;
	  margin: 0;
	  padding: 0;
	  display: flex;
	  flex-direction: column;
	  gap: 10px;
	  width: 100%;
	  text-align: left;
	}

	/* Links servicios */

	.nhoa-footer-col[aria-label="Servicios"] ul {
	  display: grid;
	grid-template-columns: 1.4fr .8fr;  grid-template-rows: repeat(3, auto);
	  grid-auto-flow: column;
	  column-gap: 48px;
	  row-gap: 12px;
	}
	.nhoa-footer-col ul li a {
	  text-decoration: none;
	  color: #F0EDE6;
	  opacity: 0.7;
	  line-height: 1.6;
	  transition: opacity 0.3s ease;
	  letter-spacing: 0;
	  display: block;
	  text-align: left;
	}
	.nhoa-footer-col ul li a:hover { opacity: 1; }

	/* Contacto */
	.nhoa-footer-contacto ul { gap: 18px; }
	.nhoa-footer-contacto li {
	  text-align: left;
	}
	.nhoa-footer-contacto ul {
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  column-gap: 24px;
	  row-gap: 18px;
	}
	.nhoa-footer-contacto li:nth-child(1) {
	  grid-column: 1;
	  grid-row: 1 / span 2;
	}

	.nhoa-footer-contacto li:nth-child(2) {
	  grid-column: 2;
	  grid-row: 1;
	}

	.nhoa-footer-contacto li:nth-child(3) {
	  grid-column: 2;
	  grid-row: 2;
	}
	.nhoa-footer-contacto a {
	  text-decoration: none;
	  color: #F0EDE6;
	  opacity: 0.7;
	  line-height: 1.6;
	  transition: opacity 0.3s ease;
	  letter-spacing: 0;
	  text-align: left;
	}
	.nhoa-footer-contacto a:hover { opacity: 1; }

	/* Horario */
	.nhoa-footer-horario { gap: 8px !important; }
	.nhoa-footer-horario li {
	  display: grid;
	  grid-template-columns:1fr 1fr ;
	  gap: 1px;
	  text-align: left;
	}
	.nhoa-footer-horario-dia {
	  color: #F0EDE6;
	  opacity: 0.7;
	}
	.nhoa-footer-horario-hora {
	  color: #F0EDE6;
	  opacity: 0.45;
	  font-size: 0.9em;
	}

	/* Redes */
	.nhoa-footer-social { margin-top: 0; }
	.nhoa-footer-social li a {
	  text-decoration: none;
	  color: #F0EDE6;
	  opacity: 0.7;
	  transition: opacity 0.3s ease;
	  letter-spacing: 0;
	  text-align: left;
	  display: block;
	}
	.nhoa-footer-social li a:hover { opacity: 1; }

	/* Bottom */
	.nhoa-footer-bottom {
		width: 100%;
	  display: flex;
	  align-items: center;
	  justify-content: space-between;
	  gap: 24px;
	  padding: 20px 0 0;
	  color: #F0EDE6;
	  opacity: 0.4;
	  grid-column: 1 / -1;
		  border-top: 1px solid rgba(240,237,230,0.1);

	}
	.nhoa-footer-bottom nav ul {
	  list-style: none;
	  margin: 0; padding: 0;
	  display: flex;
	  gap: 20px;
	  flex-wrap: nowrap;
	}
	.widget-area ul {
		padding-left: 0px!important;
	}
	.nhoa-footer-bottom nav ul li a {
	  text-decoration: none;
	  color: #F0EDE6;
	  text-transform: uppercase;
	  font-size: 11px;
	  transition: opacity 0.3s ease;
	  letter-spacing: 0;
	}
	.nhoa-footer-bottom nav ul li a:hover { opacity: 0.7; }
	.nhoa-footer-bottom p, .nhoa-footer-bottom a {
	  margin: 0;
	  font-size: 11px;
	  color: #F0EDE6!important;
	  letter-spacing: 0;
	  white-space: nowrap;
	}
	.nhoa-footer-credit a { color: #F0EDE6; text-decoration: none; }

	/* Responsive */
	@media (max-width: 1024px) {
	  .nhoa-footer-inner {
		grid-template-columns: 1fr 1fr;
		gap: 36px;
	  }
	  .nhoa-footer-logo { grid-column: 1 / -1; }
	}
	@media (max-width: 768px) {
	  .nhoa-footer-inner { grid-template-columns: 1fr; gap: 32px; }
	  .nhoa-footer-bottom { flex-direction: column; align-items: flex-start; gap: 12px; }
	  .nhoa-footer-bottom p { white-space: normal; }
	}

	/*carrito*/
	.woocommerce.widget_shopping_cart a.remove{
		color:#000!important;
	}
	.kadence-header-cart.header-navigation ul ul a:not(.button), .woocommerce.widget_shopping_cart .total, .woocommerce .widget_shopping_cart .total{
		font-weight:500!important;
		text-transform:uppercase!important;
	}
	.quantity{
		font-size:11px!important;
	}

	.woocommerce.widget_shopping_cart .total, .woocommerce .widget_shopping_cart .total{
		margin-top:20px!important;
	}
	.wc-block-components-totals-item__label, .wp-block-woocommerce-cart .wc-block-components-button__text{
		font-size:13px!important;
		text-transform:uppercase!important;
	}

	a.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained:hover{
		background:transparent!important;
		color:black!important;
		box-shadow:none!important;
	}



	/* ── WooCommerce Checkout Block — campos con recuadro ── */
	.wc-block-components-text-input input,
	.wc-blocks-components-select__container {
	  background: transparent !important;
	  border: 0.5px solid rgba(0,0,0,0.25) !important;
	  border-radius: 0 !important;
	  box-shadow: none !important;
	  font-size: 13px !important;
	  color: inherit !important;
	}

	.wc-block-components-text-input input:focus,
	.wc-blocks-components-select__select:focus {
	  outline: none !important;
	  border-color: currentColor !important;
	  box-shadow: none !important;
	}

	.wc-blocks-components-select__select, .wc-block-components-title.wc-block-components-title, .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title .wc-block-components-checkout-order-summary__title-text,.wc-block-components-totals-footer-item .wc-block-components-totals-item__label, .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
	  background: transparent !important;
	  border: none !important;
	  box-shadow: none !important;
	  font-size: 13px !important;
	}
	.wc-block-components-address-form-wrapper input, .wc-block-components-address-form-wrapper label{font-size:12px!important;}
	.wc-block-components-sidebar.wc-block-checkout__sidebar.wp-block-woocommerce-checkout-totals-block.is-sticky.is-large .wp-block-woocommerce-checkout-order-summary-block{
		border-radius:0px!important;
	}
	.woocommerce .woocommerce-message, .woocommerce .woocommerce-error, .woocommerce .woocommerce-info{
		display:none!important;
	}
	.kadence-header-cart.header-navigation ul ul a.remove:hover{
		background: #CEC6B9!important;
	}
	@media (max-width: 768px) {
	  .nn-lista-cats-con-imagen.nn-imagen-izquierda {
		grid-template-columns: 1fr;
	  }
	  .nn-lista-cats-con-imagen.nn-imagen-izquierda .nn-lista-cats-imagen {
		display: none;
	  }
		.nn-lista-cats-con-imagen {
		grid-template-columns: 1fr;
		gap: 0;
	  }

	  /* Imagen arriba, lista abajo */
	  .nn-lista-cats-imagen {
		display: block;
		order: -1;
		width: 50%;
		  margin-left:auto;
		aspect-ratio: 2 / 3;
		position: relative;
		margin-bottom: 40px;
	  }
	  .nn-lista-cats-con-imagen.nn-imagen-izquierda .nn-lista-cats-imagen {
		order: -1;
	  }
	  .nn-lista-cats-img-inner {
		width: 100%;
		height: 100%;
		position: relative;
	  }

	  /* Sin padding lista */
	  .nn-lista-cats .nn-lista-items,
	  .nn-lista-cats .nn-lista-item-inner {
		padding-left: 0 !important;
		margin-left: 0 !important;
	  }
		.nn-lista-cats-con-imagen.nn-imagen-izquierda .nn-lista-cats-imagen {
		display: block !important;
		width: 50%;
		margin-left: auto;
		margin-bottom: 40px;
	  }
	}
	/* ── Trustindex Reviews ── */
	.ti-stars { display: none !important; }

	.ti-reviews-container-wrapper {
	  font-family: 'Switzer Variable', system-ui, sans-serif !important;
	}

	.ti-name {
	  font-size: 11px !important;
	  font-weight: 400 !important;
	  text-transform: uppercase !important;
	  font-family: 'Switzer Variable', system-ui, sans-serif !important;
	}

	.ti-review-text-container {
	  font-size: 12px !important;
	  font-weight: 400 !important;
	  font-family: 'Switzer Variable', system-ui, sans-serif !important;
	  overflow: hidden !important;
	  position: relative !important;
	  scrollbar-width: none !important;
	}
	.ti-review-text-container::-webkit-scrollbar { display: none !important; }

	/* Fade inferior solo cuando hay más texto */
	.ti-read-more:not([style*="opacity: 0"]) + .ti-review-text-container::after,
	.ti-review-text-container:not(:last-child)::after {
	  content: '';
	  position: absolute;
	  left: 0; right: 0; bottom: 0;
	  height: 34px;
	  pointer-events: none;
	  background: linear-gradient(to bottom, transparent, var(--global-palette9, #F0EDE6));
	}
	
	@media (max-width: 768px) {
	  /* Descripción sin recortar */
	  .nn-popup-cats-desc {
		-webkit-line-clamp: unset !important;
		overflow: visible !important;
		display: block !important;
	  }

	  /* Sin margen izquierda en lista productos del popup */
	  .nn-popup-products-list {
		padding-left: 0 !important;
		margin-left: 0 !important;
	  }
	  .nn-popup-product-item {
		padding-left: 0 !important;
	  }
	  .nn-lista-item-inner {
		padding-left: 0 !important;
	  }
		.kadence-svg-iconset svg{
			width:18px!important;
			height:18px!important;
		}
	}

.header-cart-wrap.kadence-header-cart{
	padding-bottom:10px;
}


/* ═══════════════════════════════════════════
   NHOA NAVAS — Reviews propias
═══════════════════════════════════════════ */
.nhoa-reviews-wrap {
  position: relative;
  padding: 0 clamp(40px, 5vw, 64px);
}

.nhoa-reviews-slider {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-mask-image: linear-gradient(to right, transparent 0, black 48px, black calc(100% - 48px), transparent 100%);
  mask-image: linear-gradient(to right, transparent 0, black 48px, black calc(100% - 48px), transparent 100%);
}
.nhoa-reviews-slider::-webkit-scrollbar { display: none; }
.nhoa-reviews-slider.is-dragging { cursor: grabbing; scroll-snap-type: none; }

.nhoa-reviews-track {
  display: flex;
  gap: clamp(28px, 3vw, 48px);
  width: max-content;
  padding: 40px 8px;
}

.nhoa-review-item {
  width: clamp(220px, 20vw, 280px);
  flex-shrink: 0;
  text-align: center;
  scroll-snap-align: start;
  padding-left: clamp(24px, 2.5vw, 40px);
  border-left: 0.5px solid rgba(0, 0, 0, 0.1);
  opacity: 0;
  transform: translateY(16px);
  animation: nhoa-review-in 0.7s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.nhoa-review-item:first-child {
  border-left: none;
  padding-left: 0;
}

@keyframes nhoa-review-in {
  from { opacity: 0; transform: translateY(16px); }
  to   { opacity: 1; transform: translateY(0); }
}

.nhoa-review-name {
  font-family: 'Switzer Variable', system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin: 0 0 14px !important;
  color: inherit;
}

.nhoa-review-text-wrap {
  position: relative;
  max-height: 6.4em;
  overflow-y: auto;
  padding-right: 8px;
  scrollbar-width: thin;
  scrollbar-color: rgba(28, 26, 23, 0.22) transparent;
}
.nhoa-review-text-wrap::-webkit-scrollbar { width: 2px; }
.nhoa-review-text-wrap::-webkit-scrollbar-track { background: transparent; }
.nhoa-review-text-wrap::-webkit-scrollbar-thumb {
  background: rgba(28, 26, 23, 0.22);
  border-radius: 20px;
}

.nhoa-review-text {
  font-family: 'Switzer Variable', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.6;
}
.nhoa-review-text p { margin: 0; }



@media (prefers-reduced-motion: reduce) {
  .nhoa-review-item { animation: none !important; opacity: 1 !important; transform: none !important; }
}

@media (max-width: 768px) {
  .nhoa-reviews-wrap { padding: 0 16px; }
  .nhoa-review-item { width: 220px; }
  .nhoa-reviews-track { gap: 28px; padding: 32px 8px; }
  .nhoa-reviews-slider {
    -webkit-mask-image: none;
    mask-image: none;
  }
}

/*aceptacion quiz*/
.nhoa-diag-form-consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  text-align: left;
  cursor: pointer;
  margin-top: 4px;
}
.nhoa-diag-form-consent input[type="checkbox"] {
  margin-top: 3px;
  flex-shrink: 0;
  accent-color: currentColor;
  width: 15px;
  height: 15px;
}
.nhoa-diag-form-consent span {
  font-size: 11px;
  line-height: 1.6;
  opacity: 0.65;
}
.nhoa-diag-form-consent a {
  color: inherit;
  text-decoration: underline;
}



/* ═══════════════════════════════════════════
   NHOA NAVAS — Aviso de Cookies
═══════════════════════════════════════════ */
#nn-cookies-banner {
  position: fixed;
  left: 24px;
  right: 24px;
  bottom: 24px;
  max-width: 640px;
  margin: 0 auto;
  z-index: 999997;
  background: #2E2822;
  color: #E6DDD4;
  padding: 20px 24px;
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
  box-shadow: 0 10px 40px rgba(0,0,0,0.18);
  opacity: 0;
  transform: translateY(16px);
  pointer-events: none;
  transition: opacity 0.6s ease, transform 0.6s ease;
}
#nn-cookies-banner.show {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.nn-cookies-text {
  font-family: "Switzer Variable", Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 1.6;
  color: rgba(230, 221, 212, 0.75);
  margin: 0;
  flex: 1;
  min-width: 220px;
}
.nn-cookies-text a {
  color: #E6DDD4;
  text-decoration: underline;
}
#nn-cookies-accept {
  font-family: "Switzer Variable", Arial, Helvetica, sans-serif;
  font-size: 11px;
  text-transform: uppercase;
  background: #E6DDD4;
  color: #2E2822;
  border: none;
  padding: 11px 24px;
  cursor: pointer;
  flex-shrink: 0;
  transition: opacity 0.3s ease;
}
#nn-cookies-accept:hover {
  opacity: 0.8;
}
@media (max-width: 600px) {
  #nn-cookies-banner {
    left: 12px;
    right: 12px;
    bottom: 12px;
    padding: 18px;
    flex-direction: column;
    align-items: flex-start;
  }
  #nn-cookies-accept {
    width: 100%;
  }
}