/** Shopify CDN: Minification failed

Line 496:0 Unexpected "}"
Line 512:0 Unexpected "}"

**/
/* Universo Grow · Nave 3D (fase A). Sección de desplazamiento con lienzo fijo. */
/* Cabecera propia, fijada al viewport sticky de esta sección exclusivamente. */
body:has(.ug-nave [data-ug-header]) .shopify-section-group-header-group{display:none}
.ug-nave-header{position:absolute;inset:0 0 auto;z-index:30;height:64px;background:rgb(12 28 20 / 86%);color:#f1eee3;border-bottom:1px solid #f1eee329;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);font:500 14px/1.2 var(--font-body-family,Arial,sans-serif)}
.ug-nave-header nav{display:flex;align-items:center;gap:24px;height:100%;padding:0 28px;max-width:1800px;margin:auto}
.ug-nave-header a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;color:inherit;text-decoration:none;white-space:nowrap}
.ug-nave-header a:hover{color:#d3f78b}.ug-nave-header a:focus-visible{outline:2px solid #d3f78b;outline-offset:4px;border-radius:4px}
.ug-nave-header .ug-nave-header__brand{margin-right:18px;font-size:18px;font-weight:800;letter-spacing:-.6px}.ug-nave-header__brand span{color:#d3f78b}
.ug-nave-header__brand img{display:block;width:auto;max-width:180px;height:auto;max-height:40px;object-fit:contain}
.ug-nave-header .ug-nave-header__account{margin-left:auto;min-width:44px}
.ug-nave-header svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ug-nave-header [data-ug-cart-count]{display:grid;place-items:center;min-width:23px;height:23px;padding:0 5px;border-radius:99px;background:#d3f78b;color:#0c1c14;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}
.ug-nave:has([data-ug-header]) .ug-nave__overlay{padding-top:80px}
.ug-nave:has([data-ug-header]) .ug-nave__copy{max-height:calc(100svh - 170px);overflow:auto}
.ug-nave:has([data-ug-header]) .ug-nave__note{top:70px}
/* Top-layer panels leave the permanent navigation legible and unobstructed. */
body:has([data-ug-header]) .ug-catalogo-dialog,body:has([data-ug-header]) .ug-section-picker{top:80px;bottom:16px;margin:auto;max-height:calc(100dvh - 96px)}
body:has([data-ug-header]) .ug-catalogo-dialog::backdrop,body:has([data-ug-header]) .ug-section-picker::backdrop,.ug-header-search::backdrop{top:64px}
.ug-header-search{box-sizing:border-box;position:fixed;inset:80px 16px auto;margin:0 auto;width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 96px);overflow:auto;overscroll-behavior:contain;padding:24px;border:1px solid #f1eee340;border-radius:16px;background:#0c1c14f5;color:#f1eee3;font:14px/1.5 var(--font-body-family,Arial,sans-serif);box-shadow:0 20px 80px #0006}
.ug-header-search::backdrop{background:#06110c80;backdrop-filter:blur(4px)}
.ug-header-search__bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.ug-header-search h2{font-size:24px;margin:0;color:inherit}.ug-header-search__bar button{font-size:26px;background:transparent;color:inherit}
.ug-header-search form{display:flex;gap:8px;margin-top:20px}.ug-header-search input{min-width:0;flex:1;font:inherit;font-size:16px;background:#f1eee3;color:#0c1c14;border:0;border-radius:8px;padding:12px}
.ug-header-search button{min-height:44px;min-width:44px;border:0;border-radius:8px;cursor:pointer}.ug-header-search [type=submit]{background:#0c1c14;color:#fff;border:1px solid #f1eee366;font:600 14px/1.3 inherit;padding:10px 16px}.ug-header-search a{color:inherit}
.ug-header-search :focus-visible{outline:2px solid #d3f78b;outline-offset:4px}.ug-header-search__results{display:grid;gap:8px}.ug-header-search__results a{display:flex;align-items:center;gap:12px;min-height:56px;padding:8px;border:1px solid #f1eee326;border-radius:8px;text-decoration:none}.ug-header-search__results img{object-fit:contain;background:#f1eee3;border-radius:4px}.ug-header-search__results small{display:block;color:#d3f78b}.ug-header-search>a:not([hidden]){display:inline-flex;align-items:center;min-height:44px;margin-top:12px}
@media(max-width:749px){.ug-nave-header nav{gap:12px;padding:0 12px}.ug-nave-header .ug-nave-header__brand{font-size:15px;margin-right:auto;gap:4px}.ug-nave-header__brand img{max-width:132px}.ug-nave-header .ug-nave-header__desktop{display:none}.ug-nave-header .ug-nave-header__search span{display:none}.ug-nave-header .ug-nave-header__search .ug-nave-header__lupa{display:block}.ug-nave-header .ug-nave-header__search{min-width:36px;justify-content:center}.ug-nave-header .ug-nave-header__cart{gap:6px}.ug-nave-header [data-ug-sections]{font-size:13px}.ug-header-search{padding:18px}}
@media(max-width:749px),(max-height:500px){.ug-nave:has([data-ug-header]) .ug-nave__bubble:not(.ug-nave__bubble--categories){top:76px!important;max-height:calc(50svh - 76px)}.ug-nave:has([data-ug-header]) .ug-nave__bubble--categories{max-height:min(15rem,calc(50svh - 30px))}}
@media(max-width:749px){.ug-nave:has([data-ug-header]) .ug-nave__bubble--categories{bottom:152px;max-height:min(150px,calc(50svh - 96px))}}
@media(min-width:750px) and (max-height:500px){.ug-nave:has([data-ug-header]) .ug-nave__bubble{width:calc(50% - 24px);max-height:calc(100svh - 172px)!important}.ug-nave:has([data-ug-header]) .ug-nave__bubble--categories{left:auto!important;right:12px;top:76px!important;bottom:auto}}
.ug-nave {
  --ug-nave-screens: 4;
  --ug-progress: 0;
  --ug-cream: #f1eee3;
  --ug-lime: #d3f78b;
  --ug-ink: #0c1c14;
  position: relative;
  display: block;
  height: 100vh;
  height: 100svh;
  min-height: 40rem;
  background: #0c1c14;
  color: var(--ug-cream);
  font-family: var(--font-body-family);
}
/* The long scroll belongs to the running experience. With JavaScript disabled
   or the boot script unavailable, the poster stays a normal usable cover. */
.ug-nave[data-render-mode="3d"] {
  height: calc(var(--ug-nave-screens) * 100vh);
  height: calc(var(--ug-nave-screens) * 100svh);
}
.ug-nave:not([data-render-mode="3d"]):not([data-render-mode="video"]) .ug-nave__loading,
.ug-nave:not([data-render-mode="3d"]):not([data-render-mode="video"]) .ug-nave__progress,
.ug-nave:not([data-render-mode="3d"]):not([data-render-mode="video"]) .ug-scroll-hint { display: none; }
.ug-nave *, .ug-nave *::before, .ug-nave *::after { box-sizing: border-box; }
.ug-nave__sticky {
  position: sticky;
  top: 0;
  height: 100vh;
  height: 100svh;
  overflow: hidden;
  isolation: isolate;
  background: #b9c8d3;
}
.ug-nave__poster,
.ug-nave__canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.ug-nave__poster {
  object-fit: cover;
  object-position: 50% 62%;
  transform-origin: 50% 66%;
  transform: scale(calc(1 + var(--ug-progress) * 0.9)) translateY(calc(var(--ug-progress) * -4%));
  transition: opacity .6s ease;
  will-change: transform;
}
.ug-nave__canvas { opacity: 0; }
/* Maqueta anotada: tarjetas HTML y trazos vectoriales, sin peticiones nuevas. */
.ug-avisos{position:absolute;inset:0;z-index:8;pointer-events:none;transition:opacity .25s;color:var(--ug-cream)}
.ug-avisos[hidden],.ug-aviso[hidden]{display:none!important}
.ug-avisos__lineas{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.ug-avisos__lineas polyline{fill:none;stroke:#c9f27a;stroke-width:1.75;stroke-opacity:.95;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1}
.ug-avisos__lineas circle{fill:#d9ff8f;stroke:#0b140e;stroke-width:2}
/* Sobre la lona negra las tarjetas deben leerse de un vistazo: panel verde claramente más claro que el fondo, borde lima y texto grande. */
.ug-aviso{position:absolute;width:clamp(215px,18.5vw,300px);padding:clamp(12px,1.05vw,17px) clamp(14px,1.2vw,19px);background:linear-gradient(135deg,#21392c,#15251c);border:1px solid #c9f27a73;border-left:4px solid #c9f27a;border-radius:3px 12px 12px 3px;opacity:0;box-shadow:0 0 0 1px #c9f27a1f,0 14px 36px #000c}
.ug-aviso__etiqueta{display:block;color:#c9f27a;font:700 clamp(11px,.85vw,13px)/1.4 var(--font-body-family);letter-spacing:.14em;margin-bottom:6px}
.ug-aviso__titulo{display:block;color:#fff;font:600 clamp(17px,1.4vw,22px)/1.2 var(--font-body-family);text-decoration:none;text-wrap:balance}
.ug-aviso p{font:400 clamp(13px,1vw,15px)/1.45 var(--font-body-family);color:#dfe9dc;margin:6px 0 0}
.ug-aviso a,.ug-aviso.is-pulsable{pointer-events:auto}.ug-aviso.is-pulsable{cursor:pointer}.ug-aviso.is-pulsable:focus-visible{outline:2px solid #d3f78b;outline-offset:4px}.ug-aviso a:focus-visible{outline:2px solid #d3f78b;outline-offset:5px;border-radius:2px}.ug-aviso a:hover{color:#d3f78b}
.ug-avisos.is-visible polyline{animation:ug-trazo .42s ease forwards;animation-delay:var(--aviso-delay)}
.ug-avisos.is-visible .ug-aviso{animation:ug-aviso .4s ease forwards;animation-delay:calc(var(--aviso-delay) + .24s)}
@keyframes ug-trazo{to{stroke-dashoffset:0}}@keyframes ug-aviso{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.ug-avisos,.ug-aviso{transition:none!important;animation:none!important}.ug-avisos.is-visible .ug-aviso{opacity:1}.ug-avisos.is-visible polyline{animation:none;stroke-dashoffset:0}}
.ug-nave--3d .ug-nave__canvas { opacity: 1; }
.ug-nave--3d .ug-nave__poster { opacity: 0; visibility: hidden; transition: none; pointer-events: none; }
.ug-nave--fallback .ug-nave__canvas { display: none; }

.ug-nave__overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: 1fr auto;
  padding: clamp(1.6rem, 4vw, 4rem);
  pointer-events: none;
}
.ug-nave__copy {
  align-self: end;
  min-width: 0;
  overflow-wrap: anywhere;
  max-width: 62rem;
  padding: clamp(1.6rem, 2.4vw, 2.6rem) clamp(1.8rem, 2.6vw, 3rem);
  border: 1px solid rgb(241 238 227 / 22%);
  border-radius: 1.2rem;
  background: rgb(12 28 20 / 62%);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 2rem 6rem rgb(0 0 0 / 25%);
  opacity: 0;
  visibility: hidden;
  transform: translateY(1.2rem);
  transition: opacity .45s ease, transform .45s ease;
  pointer-events: none;
}
.ug-nave__copy[data-active] { opacity: 1; visibility: visible; transform: none; pointer-events: auto; }
.ug-nave__copy + .ug-nave__copy { position: absolute; left: clamp(1.6rem, 4vw, 4rem); right: clamp(1.6rem, 4vw, 4rem); bottom: clamp(4.4rem, 8vw, 6.6rem); max-width: 62rem; }
.ug-nave__eyebrow { display: flex; align-items: center; gap: 1rem; margin: 0 0 1.4rem; font-size: 1.1rem; letter-spacing: .22em; font-weight: 600; color: var(--ug-lime); }
.ug-nave__eyebrow > span { width: 2.2rem; height: 1px; background: currentColor; }
.ug-nave__title { margin: 0; font-family: var(--font-heading-family); font-weight: 500; font-size: clamp(3rem, 4.6vw, 6rem); line-height: 1.04; letter-spacing: -.05em; text-wrap: balance; color: var(--ug-cream); }
.ug-nave__text { margin: 1.4rem 0 0; max-width: 46rem; font-size: 1.6rem; line-height: 1.6; color: #d6dfd3; }
.ug-nave__actions { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2rem; }
.ug-nave__button { display: inline-flex; align-items: center; gap: 1.4rem; min-height: 5rem; padding: 1.2rem 1.8rem; border: 1px solid rgb(210 227 199 / 35%); border-radius: .6rem; font-size: 1.4rem; font-weight: 600; text-decoration: none; color: var(--ug-cream); background: rgb(12 26 19 / 55%); transition: background .2s ease; }
.ug-nave__button--primary { background: var(--ug-lime); border-color: var(--ug-lime); color: #142117; }
.ug-nave__button:focus-visible { outline: 3px solid var(--ug-cream); outline-offset: 4px; }

/* Indicación de scroll antigua (texto + flecha): sustituida por .ug-scroll-hint (indicador-scroll.js). */
.ug-nave__hint { display: none !important; }

/* Indicador de scroll animado (tools/web3d/app/indicador-scroll.js). Se crea dentro de .ug-nave__sticky. */
.ug-scroll-hint {
  position: absolute;
  z-index: 3;
  left: 50%;
  bottom: max(2rem, env(safe-area-inset-bottom, 0px) + 1.4rem);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .2rem;
  padding: .9rem 1.6rem 1rem;
  border: 1px solid rgb(201 242 122 / 38%);
  border-radius: 1.6rem;
  background: rgb(12 28 20 / 84%);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: var(--ug-cream);
  font-family: var(--font-body-family);
  font-size: 1.2rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, .8rem);
  transition: opacity .6s ease, transform .6s ease, visibility 0s linear .6s;
  pointer-events: none;
  user-select: none;
}
.ug-scroll-hint[data-visible] { opacity: 1; visibility: visible; transform: translate(-50%, 0); transition-delay: 0s; pointer-events:auto; cursor:pointer; }
.ug-scroll-hint:focus-visible { outline: 3px solid #d3f78b; outline-offset: 5px; }
/* El texto invita a entrar («Desliza hacia abajo para entrar en nuestra tienda»): dos líneas equilibradas. */
.ug-scroll-hint { white-space: normal; max-width: 34rem; text-align: center; text-wrap: balance; line-height: 1.55; }
.ug-scroll-hint { transition: opacity .6s ease, transform .9s cubic-bezier(.2, .8, .2, 1), background-color .5s ease, border-color .5s ease, box-shadow .5s ease, visibility 0s linear .6s; }
/* Llamada de atención (indicador-scroll.js, data-spotlight): a los 2 s de aparecer crece y sube al centro
   de la pantalla unos segundos, y vuelve a su sitio. La cabecera fija ocupa 6,4 rem: el centro visible queda algo más abajo. */
.ug-scroll-hint[data-visible][data-spotlight] {
  z-index: 9; /* por encima de los avisos y sus líneas mientras está en el centro */
  transform: translate(-50%, calc(-50svh + 50% + 2rem + 3.2rem)) scale(1.7);
  background: rgb(12 28 20 / 92%);
  border-color: rgb(201 242 122 / 70%);
  box-shadow: 0 2rem 6rem rgb(0 0 0 / 65%), 0 0 0 1px rgb(201 242 122 / 20%);
}
.ug-scroll-hint__icons { position: relative; width: 6.4rem; height: 6.4rem; }
.ug-scroll-hint__icon { position: absolute; inset: 0; display: none; color: rgb(241 238 227 / 82%); }
.ug-scroll-hint[data-mode="mouse"] .ug-scroll-hint__icon[data-icon="mouse"],
.ug-scroll-hint[data-mode="trackpad"] .ug-scroll-hint__icon[data-icon="trackpad"],
.ug-scroll-hint[data-mode="touch"] .ug-scroll-hint__icon[data-icon="touch"] { display: block; }
.ug-scroll-hint__svg { display: block; width: 100%; height: 100%; overflow: visible; }
.ug-scroll-hint__label { opacity: .85; }
.ug-scroll-hint__label::after { content: " ↓"; }
.ug-scroll-hint[data-mode="touch"] .ug-scroll-hint__label::after { content: " ↑"; }
/* Bucle de 2,4 s: la mano y la rueda/los dedos recorren el gesto y vuelven en fundido. */
.ug-scroll-hint[data-visible] .ug-scroll-hint__hand,
.ug-scroll-hint[data-visible] .ug-scroll-hint__wheel { animation: ug-scroll-hint-down 2.4s cubic-bezier(.45, 0, .25, 1) infinite; }
.ug-scroll-hint[data-visible] .ug-scroll-hint__hand--touch { animation-name: ug-scroll-hint-up; }
.ug-scroll-hint[data-visible] .ug-scroll-hint__arrow,
.ug-scroll-hint[data-visible] .ug-scroll-hint__trail { animation: ug-scroll-hint-pulse 2.4s ease-in-out infinite; }
.ug-scroll-hint__hand, .ug-scroll-hint__wheel { transform-box: fill-box; transform-origin: center; }
@keyframes ug-scroll-hint-down {
  0% { transform: translateY(-3px); opacity: 0; }
  18% { transform: translateY(-3px); opacity: 1; }
  62% { transform: translateY(6px); opacity: 1; }
  80% { transform: translateY(6px); opacity: 0; }
  100% { transform: translateY(-3px); opacity: 0; }
}
@keyframes ug-scroll-hint-up {
  0% { transform: translateY(4px); opacity: 0; }
  18% { transform: translateY(4px); opacity: 1; }
  62% { transform: translateY(-7px); opacity: 1; }
  80% { transform: translateY(-7px); opacity: 0; }
  100% { transform: translateY(4px); opacity: 0; }
}
@keyframes ug-scroll-hint-pulse { 0%, 15% { opacity: .35; } 55% { opacity: 1; } 85%, 100% { opacity: .35; } }
/* En el interior la barra del catálogo ocupa el centro inferior: el indicador sube por encima. */
.ug-nave[data-interior] .ug-scroll-hint { bottom: 15.5rem; }
/* Con pantallas estrechas la tarjeta de texto también está abajo: mientras el indicador es visible,
   la superposición reserva su altura para que la tarjeta no quede tapada. */
@media screen and (max-width: 1099px) {
  .ug-nave__overlay { transition: padding-bottom .6s ease; }
  .ug-nave[data-scroll-hint]:not([data-interior]) .ug-nave__overlay { padding-bottom: 13.6rem; }
}
@media screen and (max-width: 749px) {
  .ug-scroll-hint { padding: .7rem 1.3rem .8rem; font-size: 1rem; }
  .ug-scroll-hint__icons { width: 5.4rem; height: 5.4rem; }
  .ug-nave[data-scroll-hint]:not([data-interior]) .ug-nave__overlay { padding-bottom: 12.2rem; }
}

.ug-nave__progress {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: .3rem;
  background: rgb(255 255 255 / 15%);
  z-index: 3;
}
.ug-nave__progress > span { display: block; height: 100%; width: 100%; background: var(--ug-lime); transform: scaleX(0); transform-origin: left; }

.ug-nave__loading {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 60;
}
/* The joint owns the only fade. Keep the world and old poster fully covered. */
.ug-nave__loading .ug-joint { background: radial-gradient(ellipse at 50% 45%, #122b1e 0%, #08140e 65%, #020805 100%); }
.ug-nave__loading .ug-joint__phase { position: absolute; top: calc(50% + 85px); left: 16px; right: 16px; text-align: center; font: 12px/1.5 var(--font-body-family, Arial, sans-serif); color: #bccdbd; }
.ug-nave:is([data-render-mode="3d"],[data-render-mode="video"]):not(.ug-nave--3d):not(.ug-nave--fallback) .ug-nave__overlay { visibility: hidden; }
.ug-nave__loading[hidden], .ug-nave--fallback .ug-nave__loading { display: none; }
@media (min-width: 750px) {
  .ug-nave:has(.ug-nave__section-bubble:not([hidden])) .ug-scroll-hint { visibility: hidden; opacity: 0; }
}
.ug-nave__note { position: absolute; right: 1.2rem; top: 1rem; z-index: 3; font-size: 1rem; letter-spacing: .12em; color: rgb(241 238 227 / 65%); text-transform: uppercase; }

@media (prefers-reduced-motion: reduce) {
  .ug-nave__poster { transform: none; transition: none; will-change: auto; }
  .ug-nave__copy, .ug-nave__canvas, .ug-nave__loading > span, .ug-nave__button, .ug-nave__overlay { transition: none; }
  /* Movimiento mínimo: sólo un pulso de opacidad lento; la mano y la rueda quedan quietas. */
  .ug-scroll-hint { transition: opacity .3s ease, visibility 0s linear .3s; transform: translate(-50%, 0); }
  .ug-scroll-hint[data-visible][data-spotlight] { transform: translate(-50%, 0); }
  .ug-scroll-hint[data-visible] .ug-scroll-hint__hand,
  .ug-scroll-hint[data-visible] .ug-scroll-hint__wheel { animation: none; }
  .ug-scroll-hint[data-visible] .ug-scroll-hint__arrow,
  .ug-scroll-hint[data-visible] .ug-scroll-hint__trail { animation-duration: 4s; }
}
@media screen and (max-width: 749px) {
  .ug-nave__copy { max-width: none; }
  .ug-nave__text { font-size: 1.4rem; }
  .ug-nave__poster { object-position: 50% 70%; }
}

/* Bocadillo de la recepcionista */
.ug-nave__bubble {
  position: absolute;
  z-index: 4;
  left: 50%; top: 42%;
  width: min(36rem, calc(100% - 3.2rem));
  transform: translate(-50%, -100%);
  padding: 1.6rem 1.8rem 1.4rem;
  border-radius: 1.4rem 1.4rem 1.4rem .3rem;
  background: rgb(241 238 227 / 96%);
  color: #14231a;
  box-shadow: 0 2rem 5rem rgb(0 0 0 / 35%);
  font-family: var(--font-body-family);
  pointer-events: auto;
}
.ug-nave__bubble--anchored { transform: translate(0, -100%); }
.ug-nave__bubble::after { content: ""; position: absolute; left: 1.2rem; bottom: -1.1rem; border: .6rem solid transparent; border-top-color: rgb(241 238 227 / 96%); border-left-color: rgb(241 238 227 / 96%); }
.ug-nave__bubble-name { margin: 0 0 .4rem; font-size: .95rem; letter-spacing: .18em; text-transform: uppercase; color: #3d6b48; }
.ug-nave__bubble-text { margin: 0 0 1.2rem; font-family: var(--font-heading-family); font-size: 2rem; line-height: 1.25; letter-spacing: -.02em; }
.ug-nave__search { display: flex; gap: .6rem; }
.ug-nave__search input[type="search"] { flex: 1; min-width: 0; padding: 1rem 1.2rem; border: 1px solid #b9c4b2; border-radius: .7rem; font-size: 1.6rem; background: #fff; color: #14231a; }
.ug-nave__search input[type="search"]:focus-visible { outline: 3px solid #d3f78b; outline-offset: 2px; }
.ug-nave__search button { width: 4.4rem; border: 0; border-radius: .7rem; background: #0c1c14; color: #fff; font-size: 1.8rem; cursor: pointer; }
.ug-nave__status { margin: 1rem 0 0; font-size: 1.25rem; line-height: 1.5; color: #3b4a40; min-height: 1.2em; }
.ug-nave__results { display: grid; gap: .5rem; margin-top: .6rem; max-height: 26rem; overflow: auto; }
.ug-nave__result { display: flex; align-items: center; gap: 1rem; padding: .5rem .6rem; border-radius: .7rem; background: #fff; color: #14231a; text-decoration: none; border: 1px solid #e1e5da; }
.ug-nave__result > span:last-child { min-width: 0; overflow-wrap: anywhere; }
.ug-nave__result:hover, .ug-nave__result:focus-visible { border-color: #1b3d2d; }
.ug-nave__result img, .ug-nave__result-noimg { width: 4.8rem; height: 4.8rem; max-width:48px; max-height:48px; border-radius: .5rem; object-fit: cover; background: #eef0e8; flex-shrink: 0; }
.ug-nave__result strong { display: block; font-size: 1.3rem; line-height: 1.3; font-weight: 600; }
.ug-nave__result em { font-style: normal; font-size: 1.2rem; color: #3d6b48; }
.ug-nave__result--all { justify-content: center; background: #0c1c14; color: #fff; border-color: #0c1c14; font-weight: 600; font-size: 1.3rem; }
@media screen and (max-width: 749px) {
  .ug-nave__bubble, .ug-nave__bubble--anchored { left: 1.6rem !important; right: 1.6rem; top: auto !important; bottom: 9rem; width: auto; transform: none; }
  .ug-nave__bubble::after { display: none; }
  .ug-nave__results { max-height: 16rem; }
}

/* Recorrido completo: contenido compacto para conservar la vista del mundo. */
.ug-nave__copy { max-width: 38rem; padding: 1.7rem 2rem; border-radius: 1.5rem; background: rgb(12 28 20 / 78%); }
.ug-nave__title { font-size: clamp(2.4rem,3vw,3.8rem); line-height: 1.05; }
.ug-nave__text { font-size: 1.35rem; }
.ug-nave[data-interior] .ug-nave__copy { display: none; }
/* La tarjeta de bienvenida («Entra en la nave de Universo Grow») ya no se muestra en la portada 3D (pedido de
   Manel): la sustituyen los avisos y el indicador «Desliza hacia abajo para entrar en nuestra tienda».
   Se conserva en la portada sin 3D (imagen fija), donde es el único acceso al catálogo. */
.ug-nave:is([data-render-mode="3d"],[data-render-mode="video"]) .ug-nave__copy[data-stage="0"] { display: none; }
.ug-nave__bubble { left: 2.4rem; top: 36%; width: min(32rem,28vw); transform: none; padding: 1.6rem; max-height: 56vh; overflow: auto; }
.ug-nave__bubble--categories { left: auto; right: 2.4rem; border-radius: 1.4rem 1.4rem .3rem 1.4rem; }
.ug-nave__bubble--categories::after { left: auto; right: 1.2rem; }
.ug-nave__bubble-text { font-size: 1.75rem; line-height: 1.35; }
.ug-nave__bubble[hidden], .ug-nave__catalog[hidden] { display: none !important; }
.ug-nave__catalog { position: absolute; z-index: 5; left: 50%; bottom: 2.2rem; transform: translateX(-50%); display: flex; align-items: center; gap: 1.8rem; padding: 1.2rem 1.8rem; border: 1px solid #536554; border-radius: 1.2rem; background: rgb(12 28 20 / 94%); color: #f1eee3; max-width: calc(100% - 3.2rem); font-size: 1.35rem; }
.ug-nave__catalog-count { color: #d3f78b; white-space: nowrap; font-size: 1rem; letter-spacing: .13em; }
/* Barra de números de sección (catalogo-ui.js): salto directo a cualquiera de las 15. Debajo, un «porro» que se
   consume hasta la sección actual, con la brasa y su humo en ella. */
.ug-nave__catalog { flex-direction: column; align-items: stretch; gap: 1rem; padding: 1.2rem 1.6rem 1.3rem; }
.ug-nave__catalog-info { display: flex; align-items: center; justify-content: space-between; gap: 1.8rem; }
.ug-nave__rail { display: flex; align-items: flex-start; gap: .6rem; }
.ug-nave__rail-title { align-self: center; margin: 0 .8rem 1rem 0; color: #d3f78b; font-size: 1rem; letter-spacing: .13em; text-transform: uppercase; white-space: nowrap; }
.ug-nave__rail-track { position: relative; display: flex; gap: .5rem; padding-bottom: 1.3rem; }
.ug-nave__rail-track::before { content: ""; position: absolute; left: 1.7rem; right: 1.7rem; bottom: .25rem; height: .4rem; border-radius: .4rem; background: linear-gradient(90deg, #d3f78b 0 calc(var(--ug-rail, 0) * 100%), rgb(241 238 227 / 16%) calc(var(--ug-rail, 0) * 100%) 100%); }
.ug-nave__rail-ember { position: absolute; z-index: 1; bottom: -.05rem; left: calc(1.7rem + (100% - 3.4rem) * var(--ug-rail, 0)); width: 1rem; height: 1rem; margin-left: -.5rem; border-radius: 50%; background: radial-gradient(circle, #fff3b0 0 25%, #ff9d2e 45%, #e0521a 70%, transparent 72%); box-shadow: 0 0 1rem .2rem rgb(255 138 42 / 60%); opacity: 0; transition: left .8s cubic-bezier(.2, .8, .2, 1), opacity .3s ease; pointer-events: none; }
.ug-nave__rail-track[data-active] .ug-nave__rail-ember { opacity: 1; }
.ug-nave__rail-ember::before, .ug-nave__rail-ember::after { content: ""; position: absolute; left: 50%; bottom: 80%; width: .7rem; height: .7rem; margin-left: -.35rem; border-radius: 50%; background: #e9efe6; filter: blur(.25rem); opacity: 0; animation: ug-rail-humo 2.8s ease-out infinite; }
.ug-nave__rail-ember::after { animation-delay: 1.4s; }
@keyframes ug-rail-humo { 0% { transform: translate(0, 0) scale(.6); opacity: 0; } 20% { opacity: .45; } 100% { transform: translate(.7rem, -1.6rem) scale(1.7); opacity: 0; } }
.ug-nave__rail-chip { position: relative; flex: none; width: 3.4rem; height: 3.4rem; padding: 0; border: 1px solid rgb(83 101 84 / 60%); border-radius: 50%; background: #0e2018; color: #dfe9dc; font: 600 1.2rem/1 var(--font-body-family); cursor: pointer; transition: transform .2s ease, background-color .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease; }
.ug-nave__rail-chip.is-visited { border-color: rgb(211 247 139 / 45%); color: #d3f78b; }
.ug-nave__rail-chip:hover, .ug-nave__rail-chip:focus-visible { transform: translateY(-.3rem); border-color: #d3f78b; color: #fff; }
.ug-nave__rail-chip[aria-current] { background: #d3f78b; border-color: #d3f78b; color: #10261a; transform: scale(1.14); box-shadow: 0 0 0 .3rem rgb(211 247 139 / 16%); }
/* Nombre de la sección al pasar el ratón o al recibir el foco. */
.ug-nave__rail-chip::after { content: attr(data-name); position: absolute; z-index: 2; left: 50%; bottom: calc(100% + 1rem); transform: translate(-50%, .4rem); padding: .6rem 1rem; border-radius: .8rem; background: #f1eee3; color: #10261a; font: 600 1.25rem/1.2 var(--font-body-family); white-space: nowrap; opacity: 0; pointer-events: none; transition: opacity .15s ease, transform .15s ease; box-shadow: 0 .6rem 2rem rgb(0 0 0 / 55%); }
.ug-nave__rail-chip:hover::after, .ug-nave__rail-chip:focus-visible::after { opacity: 1; transform: translate(-50%, 0); }
.ug-nave__rail-step { flex: none; width: 2.8rem; height: 3.4rem; padding: 0; border: 0; border-radius: .8rem; background: none; color: #d3f78b; font: 400 2.4rem/1 var(--font-body-family); cursor: pointer; }
.ug-nave__rail-step:hover { background: #315237; }
.ug-nave__rail-chip:focus-visible, .ug-nave__rail-step:focus-visible { outline: 2px solid #d3f78b; outline-offset: 3px; }
@media screen and (max-width: 989px) { .ug-nave__rail-title { display: none; } }
@media screen and (max-width: 749px) { .ug-nave__rail { max-width: 100%; } .ug-nave__rail-track { overflow-x: auto; scrollbar-width: none; } .ug-nave__rail-chip::after { display: none; } }
@media (prefers-reduced-motion: reduce) { .ug-nave__rail-ember, .ug-nave__rail-chip, .ug-nave__rail-chip::after { transition: none; } .ug-nave__rail-ember::before, .ug-nave__rail-ember::after { animation: none; } }
.ug-nave__catalog-link { color: #f1eee3; text-decoration: none; font-weight: 600; white-space: nowrap; }
.ug-nave__catalog summary { cursor: pointer; white-space: nowrap; color: #d3f78b; }
.ug-nave__catalog-list { position: absolute; bottom: calc(100% + 1rem); right: 0; padding: 1rem; min-width: 28rem; max-height: 62vh; overflow: auto; border-radius: 1rem; background: #122a1f; box-shadow: 0 1rem 4rem #0008; display: grid; }
.ug-nave__catalog-list a { color: #f1eee3; text-decoration: none; padding: .75rem 1rem; border-radius: .4rem; }
.ug-nave__catalog-list a:hover,.ug-nave__catalog-list a:focus-visible { background: #315237; }
.ug-nave__catalog a:focus-visible,.ug-nave__catalog summary:focus-visible { outline: 2px solid #d3f78b; outline-offset: 4px; }
@media(max-width:749px) {
 .ug-nave__copy { max-width: 29rem; padding: 1.4rem; }
 .ug-nave__title { font-size: 2.5rem; }
 .ug-nave__copy .ug-nave__text { display:none; }
 .ug-nave__bubble { left:1rem!important;right:auto;top:1rem!important;bottom:auto;width:calc(100% - 2rem);max-height:30vh; }
 /* Reserve separate vertical space for the search bubble at short heights or
    enlarged text, keeping both scrollable panels readable without overlap. */
 .ug-nave__bubble--categories { top:auto!important;bottom:min(8rem,14svh);max-height:min(15rem,calc(70svh - 3rem - min(8rem,14svh))); }
 .ug-nave__bubble-text { font-size:1.4rem; }
 .ug-nave__catalog { gap: .8rem; flex-wrap: wrap; width: calc(100% - 2rem); bottom:1rem; padding:1rem; }
 .ug-nave__catalog-link { white-space:normal;flex:1; }
 .ug-nave__catalog details { width:100%;font-size:1.15rem; }
 .ug-nave__catalog-list { min-width:0;width:100%; }
}

.ug-nave__section-bubble{position:absolute;z-index:6;width:310px;max-width:calc(100% - 32px);padding:15px 18px;border:1px solid #829960;border-radius:16px;background:#11271ef5;color:#f4f1e5;box-shadow:0 8px 30px #0004;font:16px/1.45 var(--font-body-family,Arial,sans-serif);pointer-events:auto}
.ug-nave__section-bubble[hidden]{display:none!important}
.ug-nave__section-bubble:after{content:"";position:absolute;bottom:-10px;left:50%;width:18px;height:18px;background:#11271e;transform:rotate(45deg);border-right:1px solid #829960;border-bottom:1px solid #829960}
.ug-nave__section-guide-name{display:block;color:#ccec91;font-size:12px;margin-bottom:7px}
.ug-nave__section-bubble a{display:block;color:inherit;text-decoration:none}
.ug-nave__section-bubble a:hover{text-decoration:underline;text-underline-offset:4px}
.ug-nave__section-bubble a:focus-visible{outline:2px solid #d3f78b;outline-offset:4px}
@media(max-width:600px){.ug-nave__section-bubble{font-size:14px;width:270px;padding:12px 15px}}

/* A fixed-image fallback takes one view, including failure in the interior. */
.ug-nave.ug-nave--fallback { height:100vh; height:100svh; min-height:40rem; }
.ug-nave--fallback .ug-nave__sticky { position:relative; height:100%; min-height:inherit; }
.ug-nave--fallback .ug-nave__poster { transform:none; will-change:auto; }
.ug-nave--fallback .ug-nave__copy { display:none; }
.ug-nave--fallback .ug-nave__copy[data-stage="0"] { display:block; opacity:1; visibility:visible; transform:none; pointer-events:auto; }
.ug-nave--fallback .ug-scroll-hint,
.ug-nave--fallback .ug-nave__progress,
.ug-nave--fallback .ug-nave__bubble,
.ug-nave--fallback .ug-nave__catalog,
.ug-nave--fallback .ug-nave__section-bubble { display:none!important; }
.ug-nave [hidden] { display:none!important; }
.ug-nave__catalog { padding-bottom:max(1.2rem,env(safe-area-inset-bottom)); }
.ug-nave__catalog--expanded { z-index:7; }
.ug-nave__catalog-link { display:flex; align-items:center; min-height:44px; }
.ug-nave__catalog-list { max-width:calc(100vw - 3.2rem); max-height:min(62vh,calc(100svh - 14rem)); overscroll-behavior:contain; }
.ug-nave__catalog-list a { display:flex; align-items:center; min-height:44px; overflow-wrap:anywhere; }
.ug-nave__catalog summary { min-height:44px; display:list-item; padding-top:11px; padding-bottom:11px; }
.ug-nave__section-bubble { overflow-wrap:anywhere; }
.ug-nave__section-route-note { display:block; margin-top:8px; color:#d5dfcb; font-size:12px; line-height:1.4; }
@media(max-height:520px) {
 .ug-nave__catalog { bottom:1rem; }
 .ug-nave__catalog-list { max-height:calc(100svh - 12rem); }
 .ug-nave__section-bubble { padding:10px 14px; font-size:14px; }
 .ug-nave__section-guide-name { margin-bottom:4px; }
}
/* Diálogo del guía: búsqueda de sección y salida a la colección normal. */
.ug-nave__section-bubble .ug-nave__section-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:12px}
.ug-nave__section-search label{grid-column:1/-1;font-weight:750;font-size:19px;line-height:1.2}
.ug-nave__section-search input{min-width:0;width:100%;min-height:44px;border:1px solid #0c1c1455;border-radius:8px;padding:8px 10px;background:#faf9f5;color:#0c1c14;font:inherit;font-size:13px}
.ug-nave__section-search button{min-height:44px;padding:8px 12px;border:1px solid #f1eee34d;border-radius:8px;background:#0c1c14;color:#fff;font:inherit;cursor:pointer}
.ug-nave__section-bubble>p{margin:12px 0 8px;font-size:13px;line-height:1.4}
/* Subcategorías de la sección (las del menú de la tienda): abren el catálogo ya filtrado. */
.ug-nave__section-bubble>p.ug-nave__section-subs-title{margin:12px 0 6px;font-size:12px;font-weight:700;opacity:.85}
.ug-nave__section-subs{display:flex;flex-wrap:wrap;gap:6px}
.ug-nave__section-sub{display:inline-flex;align-items:center;min-height:30px;padding:4px 10px;border:1px solid #0c1c1440;border-radius:30px;background:#faf9f5;color:#0c1c14;font:inherit;font-size:12.5px;line-height:1.2;text-decoration:none;cursor:pointer;pointer-events:auto}
@media (hover:hover){.ug-nave__section-sub:hover{background:#0c1c14;border-color:#f1eee366;color:#fff}}
.ug-nave__section-bubble a.ug-nave__section-full{display:flex;align-items:center;justify-content:center;padding:10px 12px;min-height:44px;border:1px solid #f1eee34d;border-radius:8px;background:#0c1c14;color:#fff;font-size:14px;font-weight:600;line-height:1.3;text-decoration:none}
.ug-nave__section-quick{display:block;width:100%;min-height:44px;margin-top:4px;border:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:3px;font:inherit;font-size:12px;cursor:pointer}
.ug-nave__section-bubble :focus-visible{outline:3px solid #48752e;outline-offset:3px}
.ug-nave__section-bubble[data-side="right"]:after{left:-10px;top:24px;bottom:auto;border:0;border-bottom:1px solid #829960;border-left:1px solid #829960}
.ug-nave__section-bubble[data-side="left"]:after{left:auto;right:-10px;top:24px;bottom:auto;border:0;border-top:1px solid #829960;border-right:1px solid #829960}
.ug-nave__section-bubble[data-side="below"]:after{top:-10px;bottom:auto;border:0;border-top:1px solid #829960;border-left:1px solid #829960}
@media(max-height:500px){.ug-nave__section-bubble{max-height:calc(100dvh - 130px);overflow:auto;overscroll-behavior:contain}.ug-nave__section-bubble:after{display:none}}
.ug-nave__fallback-catalog{display:none;max-width:420px;pointer-events:auto;font-size:14px;margin-top:14px;background:#0c1c14ed;border-radius:10px;color:#f1eee3;text-align:left}
.ug-nave--fallback .ug-nave__fallback-catalog{display:block}
.ug-nave__fallback-catalog summary{padding:12px 16px;min-height:44px;cursor:pointer;color:#d3f78b}
.ug-nave__fallback-catalog nav{max-height:180px;overflow:auto;overscroll-behavior:contain;padding:0 10px 10px}
.ug-nave__fallback-catalog a{display:flex;align-items:center;min-height:44px;padding:8px;color:inherit;text-decoration:none}
.ug-nave__fallback-catalog a:hover{background:#d3f78b22}
@media(max-width:749px){.ug-nave__section-search input{font-size:16px}}
/* SVG gestures need layout to resolve transform-box:fill-box on each frame.
   They have no purpose behind a modal whose camera input is paused. */
.ug-nave[data-catalog-open] .ug-scroll-hint{display:none}

/* Selector compartido: recepción y barra del recorrido. Colores de los rótulos 3D. */
.ug-nave__choose-section{appearance:none;border:1px solid #f1eee34d;border-radius:999px;background:#0c1c14;color:#fff;font:600 14px/1.2 inherit;font-family:inherit;font-size:14px;font-weight:600;min-height:44px;padding:12px 20px;cursor:pointer;white-space:nowrap}
.ug-nave__bubble--categories .ug-nave__choose-section{margin-top:12px}
.ug-section-picker{box-sizing:border-box;overflow-x:hidden;overflow-y:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;width:min(860px,calc(100vw - 32px));max-height:calc(100svh - 32px);padding:28px;border:1px solid #b8c2a6;border-radius:22px;background:#f4f0e5;color:#0f2c1f;box-shadow:0 24px 90px #061a1466;font-family:inherit;overscroll-behavior:contain}
.ug-section-picker::backdrop{background:#071a15b8;backdrop-filter:blur(5px)}
.ug-section-picker__header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.ug-section-picker__title{margin:0;color:inherit;font:600 30px/1.2 inherit;font-family:inherit;font-size:30px;letter-spacing:-.025em}
.ug-section-picker__close{flex:none;width:44px;height:44px;border:1px solid #bcc6b0;border-radius:50%;background:transparent;color:inherit;font-size:28px;cursor:pointer}
.ug-section-picker__caption{margin:8px 0 24px;font-size:15px;line-height:1.5;color:#52634e}
.ug-section-picker__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ug-section-picker__section{display:flex;align-items:center;gap:12px;text-align:left;min-height:82px;padding:14px;border:1px solid #cad0bd;border-radius:12px;background:#fffdf5;color:#0f2c1f;font:inherit;cursor:pointer;transition:background .15s,border-color .15s}
.ug-section-picker__number{display:grid;place-items:center;flex:none;width:38px;height:42px;border-radius:7px;background:#0f2c1f;color:#dff2c8;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}
.ug-section-picker__name{flex:1;font-size:14px;font-weight:600;line-height:1.25}
.ug-section-picker__arrow{color:#536a43;font-size:18px}
.ug-section-picker__section:hover,.ug-section-picker__section[aria-current]{background:#e6edcf;border-color:#7b925e}
.ug-section-picker button:focus-visible,.ug-nave__choose-section:focus-visible{outline:3px solid #608438;outline-offset:3px}
@media(max-width:600px){.ug-section-picker{padding:18px;border-radius:16px}.ug-section-picker__title{font-size:24px}.ug-section-picker__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ug-section-picker__section{min-height:76px;padding:10px;gap:8px}.ug-section-picker__number{width:30px;height:36px;font-size:16px}.ug-section-picker__arrow{display:none}.ug-section-picker__name{font-size:13px}.ug-nave__catalog .ug-nave__choose-section{width:100%}}
/* The completed exterior stays visible while the entrance waits for its models. */
.ug-nave__interior-wait{position:absolute;right:16px;bottom:22px;z-index:25;width:190px;height:105px;border-radius:12px;background:#172018eb;color:#edf3dd;padding:10px;font-size:13px}
.ug-nave__interior-wait .ug-joint{position:absolute;inset:0;width:100%;height:100%;min-height:0;background:transparent}
.ug-nave__interior-wait .ug-joint__stage{height:65px;min-height:0;margin:0;width:160px}
.ug-nave__interior-wait .ug-joint__roll{height:18px;top:35%}
.ug-nave__interior-wait .ug-joint__caption{position:absolute;font-size:10px;bottom:8px;margin:0;gap:8px;letter-spacing:.02em;white-space:nowrap}

/* Portada en vídeo (nave-video.js): el recorrido grabado ocupa el lugar del lienzo 3D. La nave mide una pantalla:
   los gestos sobre ella reproducen el tramo siguiente o anterior; tras la última sección, la página sigue. */
.ug-nave[data-render-mode="video"] { height: 100vh; height: 100svh; }
.ug-nave[data-render-mode="video"] .ug-nave__canvas { display: none; }
.ug-nave__video { position: absolute; inset: 0; overflow: hidden; background: #050806; opacity: 0; transition: opacity .6s ease; }
.ug-nave[data-render-mode="video"].ug-nave--3d .ug-nave__video, .ug-nave__video.is-visible { opacity: 1; }
/* Portada mixta: el vídeo entra sobre el 3D (mismo fotograma de partida) con un fundido corto y sin fondo propio. */
.ug-nave[data-hibrido] .ug-nave__video { background: transparent; transition: opacity .25s ease; }
.ug-nave__video video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; opacity: 0; pointer-events: none; }
.ug-nave__video video.is-activo { opacity: 1; }
.ug-nave__video video.is-fundido { animation: ug-video-fundido .4s ease; }
@keyframes ug-video-fundido { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .ug-nave__video video.is-fundido { animation: none; } }


/* Bocadillo con subcategorías: se ven todas de una vez, sin desplazamiento. Para que quepan, el bocadillo es más
   ancho, los botones más compactos y la frase «¿O prefieres…?» se omite (el botón de debajo ya lo dice). */
.ug-nave__section-bubble--subs{width:400px}
.ug-nave__section-bubble--subs>p:not(.ug-nave__section-subs-title){display:none}
.ug-nave__section-bubble--subs a.ug-nave__section-full{margin-top:12px}
.ug-nave__section-bubble[data-side="above"]:after{top:auto;bottom:-10px;border:0;border-bottom:1px solid #829960;border-right:1px solid #829960}
@media (min-width:601px) and (max-height:760px){
 .ug-nave__section-bubble--subs{width:420px;padding:11px 14px}
 .ug-nave__section-bubble--subs .ug-nave__section-search{margin-top:8px}
 .ug-nave__section-bubble--subs .ug-nave__section-search label{font-size:17px}
 .ug-nave__section-bubble--subs>p.ug-nave__section-subs-title{margin:9px 0 5px}
 .ug-nave__section-bubble--subs a.ug-nave__section-full{margin-top:9px;min-height:40px;padding:7px 12px}
 .ug-nave__section-bubble--subs .ug-nave__section-quick{min-height:34px;margin-top:2px}
}
}
}

/* Arranque limpio. Con JavaScript activo, la imagen fija de la nave y su tarjeta no se enseñan mientras arranca el
   recorrido: solo el fondo oscuro, y el vídeo entra desde él. Si el arranque no llega en 4 s, aparecen (y sin
   JavaScript o en la versión sencilla se ven siempre). */
html.js .ug-nave[data-modo]:not([data-render-mode]) .ug-nave__poster { opacity: 0; animation: ug-arranque-tardio .4s ease 4s forwards; }
/* La tarjeta «Entra en la nave» es de la versión sencilla: mientras arranca el recorrido no se enseña. */
html.js .ug-nave[data-modo]:not([data-render-mode]) .ug-nave__overlay { opacity: 0; }
@keyframes ug-arranque-tardio { to { opacity: 1; } }
.ug-nave[data-render-mode="video"] .ug-nave__poster { opacity: 0; visibility: hidden; transition: none; }
/* En vídeo el cargador solo aparece si la carga se alarga (conexión lenta). */
.ug-nave[data-render-mode="video"]:not(.ug-nave--3d) .ug-nave__loading { opacity: 0; animation: ug-arranque-tardio .3s ease .7s forwards; }
/* Detrás del vídeo, el negro del universo (el gris azulado de .ug-nave__sticky es el cielo del diseño antiguo y
   se veía un instante mientras el vídeo aparecía). */
.ug-nave[data-modo="video"]:not(.ug-nave--fallback) .ug-nave__sticky, .ug-nave[data-render-mode="video"] .ug-nave__sticky { background: #050806; }
}
/* Con el bocadillo de una sección a la vista, el indicador de deslizar no asoma por detrás (también en móvil). */
.ug-nave:has(.ug-nave__section-bubble:not([hidden])) .ug-scroll-hint { visibility: hidden; opacity: 0; }

/* ======================= MÓVIL (pantalla estrecha) =======================
   Todo lo de este bloque afecta solo a pantallas de hasta 600 px de ancho (749 px para los avisos): el ordenador
   no cambia. Medidas en px: no dependen del tamaño de letra del tema. */
/* Flechas ↗ como texto, no como emoji (iOS las pintaba como un cuadro azul). */
.ug-nave, .ug-catalogo-dialog, .ug-section-picker, .ug-header-search { font-variant-emoji: text; }
@media (max-width:749px){
 /* Avisos alrededor de la nave: tarjetas compactas en dos columnas, arriba y abajo de la nave (avisos-nave.js). */
 .ug-aviso{padding:7px 9px 8px;border-left-width:3px;border-radius:3px 10px 10px 3px;box-shadow:0 0 0 1px #c9f27a1f,0 8px 20px #000a}
 .ug-aviso__etiqueta{font-size:9px;letter-spacing:.12em;margin-bottom:3px;line-height:1.3}
 .ug-aviso__titulo{font-size:13.5px;line-height:1.2}
 .ug-aviso p{font-size:11.5px;line-height:1.35;margin-top:3px}
 .ug-avisos__lineas polyline{stroke-width:1.4}
 .ug-avisos__lineas circle{r:4}
 /* Indicador de deslizar: una pastilla pequeña abajo, que no tapa los avisos; dentro de la nave no hace falta
    (lo dice Leo y cada sección tiene su barra). */
 .ug-scroll-hint{flex-direction:row;gap:8px;max-width:min(250px,calc(100% - 150px));padding:6px 12px 6px 8px;border-radius:999px;font-size:9.5px;letter-spacing:.1em;line-height:1.35;text-align:left;bottom:max(14px,env(safe-area-inset-bottom,0px) + 10px)}
 .ug-scroll-hint__icons{flex:none;width:26px;height:26px}
 .ug-scroll-hint[data-visible][data-spotlight]{transform:translate(-50%,calc(-50svh + 50% + 46px)) scale(1.28)}
 .ug-nave[data-interior] .ug-scroll-hint{display:none}
}
@media (max-width:600px){
 /* Barra de números: compacta, en dos filas bajas. --ug-hueco-chat reserva el sitio del botón flotante de chat
    de la tienda (WhatsApp), que si no tapa «Todas las secciones». */
 .ug-nave__catalog{--ug-hueco-chat:58px;width:calc(100% - 16px);max-width:none;bottom:max(8px,env(safe-area-inset-bottom,0px));gap:3px;padding:7px 9px 8px;border-radius:14px;flex-wrap:nowrap}
 .ug-nave__rail{gap:2px;align-items:center}
 .ug-nave__rail-step{width:22px;height:32px;font-size:20px;margin-bottom:9px}
 .ug-nave__rail-track{gap:5px;padding:3px 3px 10px;flex:1;min-width:0}
 .ug-nave__rail-track::before{left:16px;right:16px;bottom:2px;height:3px}
 .ug-nave__rail-ember{width:8px;height:8px;margin-left:-4px;bottom:-1px;left:calc(16px + (100% - 32px) * var(--ug-rail, 0))}
 .ug-nave__rail-chip{width:31px;height:31px;font-size:11.5px}
 .ug-nave__rail-chip[aria-current]{transform:scale(1.08);box-shadow:0 0 0 2px rgb(211 247 139 / 18%)}
 .ug-nave__catalog-info{gap:8px;justify-content:flex-start;padding-right:var(--ug-hueco-chat)}
 .ug-nave__catalog-count{font-size:9.5px;letter-spacing:.1em}
 .ug-nave__catalog-link{display:block;flex:1;min-width:0;min-height:0;font-size:12.5px;line-height:32px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .ug-nave__catalog .ug-nave__choose-section{width:auto;flex:none;min-height:32px;padding:6px 12px;font-size:12px}
 /* Mostrador: los dos bocadillos de Leo, compactos; uno bajo la cabecera y otro justo encima de la barra. */
 .ug-nave:has([data-ug-header]) .ug-nave__bubble{padding:10px 12px;border-radius:14px;left:8px!important;width:calc(100% - 16px);box-shadow:0 8px 24px rgb(0 0 0 / 30%)}
 .ug-nave:has([data-ug-header]) .ug-nave__bubble:not(.ug-nave__bubble--categories){top:72px!important;max-height:none}
 .ug-nave:has([data-ug-header]) .ug-nave__bubble--categories{bottom:calc(max(8px,env(safe-area-inset-bottom,0px)) + 95px);max-height:none;display:flex;align-items:center;gap:10px}
 .ug-nave__bubble-name{font-size:9px;margin-bottom:2px}
 .ug-nave__bubble-text{font-size:14px;line-height:1.3;margin-bottom:8px}
 .ug-nave__bubble--categories .ug-nave__bubble-name{display:none}
 .ug-nave__bubble--categories .ug-nave__bubble-text{margin:0;font-size:13px;flex:1}
 .ug-nave__bubble--categories .ug-nave__choose-section{margin:0;flex:none;min-height:34px;padding:6px 12px;font-size:12.5px}
 .ug-nave__bubble input{font-size:16px}   /* con menos de 16 px, iOS amplía la página al escribir */
 /* Secciones: bocadillo compacto encima del guía, que queda a la vista. */
 .ug-nave__section-bubble{padding:9px 12px 10px;font-size:13px;border-radius:14px}
 .ug-nave__section-bubble--subs{width:calc(100% - 20px);max-width:calc(100% - 20px);display:flex;flex-direction:column;max-height:var(--ug-bubble-max,none)}
 .ug-nave__section-bubble--subs>*{flex:none}
 .ug-nave__section-guide-name{font-size:10.5px;margin-bottom:1px}
 .ug-nave__section-bubble .ug-nave__section-search{margin-top:3px;gap:6px}
 .ug-nave__section-search label{font-size:14.5px}
 .ug-nave__section-search input{min-height:36px;padding:5px 10px;font-size:16px}
 .ug-nave__section-search button{min-height:36px;padding:5px 11px;font-size:13px}
 .ug-nave__section-bubble>p{display:none}
 .ug-nave__section-bubble--subs .ug-nave__section-subs{flex:0 1 auto;min-height:0;gap:4px;margin-top:7px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}
 .ug-nave__section-subs::-webkit-scrollbar{display:none}
 .ug-nave__section-sub{font-size:11.5px;padding:3px 8px;min-height:28px}
 .ug-nave__section-bubble a.ug-nave__section-full,.ug-nave__section-bubble--subs a.ug-nave__section-full{margin-top:7px;min-height:34px;padding:6px 10px;font-size:13px}
 .ug-nave__section-quick{display:none}
}
@media (max-width:600px){
 .ug-nave__status:empty,.ug-nave__results:empty{display:none}
 .ug-nave__status{margin-top:6px;font-size:12px}
 .ug-nave__results{max-height:min(150px,26svh)}
 .ug-nave__search input{min-height:40px}
 .ug-nave__section-bubble a.ug-nave__section-full,.ug-nave__section-bubble--subs a.ug-nave__section-full{min-height:32px;padding:5px 10px}
 /* Si no caben todas las subcategorías sin tapar al guía, la lista se desliza y se desvanece por abajo. */
 .ug-nave__section-subs.is-desplazable{-webkit-mask-image:linear-gradient(#000 calc(100% - 18px),transparent);mask-image:linear-gradient(#000 calc(100% - 18px),transparent);padding-bottom:10px}
}
/* Móvil con poca altura útil (barras del navegador): los avisos se quedan en etiqueta y título para caber los cinco. */
@media (max-width:749px) and (max-height:740px){
 .ug-aviso p{display:none}
}
@media (max-width:600px){
 /* El tema puede traer separación entre letras: aquí se anula para que las medidas sean las previstas. */
 .ug-nave__section-bubble,.ug-nave__section-bubble input,.ug-nave__section-bubble button,.ug-nave__catalog,.ug-nave__catalog button,.ug-nave__bubble,.ug-nave__bubble input,.ug-nave__bubble button,.ug-aviso,.ug-aviso__titulo,.ug-aviso p{letter-spacing:0}
 .ug-nave__section-bubble{padding:8px 12px 9px}
 .ug-nave__section-guide-name{line-height:1.2}
 .ug-nave__section-search label{line-height:1.2}
}
/* Móvil muy bajo: el segundo bocadillo de Leo taparía el mostrador; la barra ya ofrece «Todas las secciones». */
@media (max-width:600px) and (max-height:600px){
 .ug-nave .ug-nave__bubble--categories{display:none!important}
}

/* Buscar en la cabecera: texto en ordenador, lupa en móvil. */
.ug-nave-header__lupa{display:none;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
@media (max-width:600px){
 /* Secciones: la barra de números queda en una sola fila (el nombre ya está en el cartel y en el bocadillo, y
    «Secciones» está en la cabecera): así el guía cabe entero por encima. */
 .ug-nave__catalog:not(.ug-nave__catalog--overview) .ug-nave__catalog-info{display:none}
 /* Bocadillo: el nombre del guía va en la misma línea que su pregunta. */
 .ug-nave__section-bubble--subs .ug-nave__section-guide-name{display:none}
 .ug-nave__section-search label[data-guia]::before{content:attr(data-guia) " · ";font-weight:400;color:#d3f78b}
 /* Leo: con resultados a la vista, su lista aprovecha la pantalla y el segundo bocadillo se retira. */
 .ug-nave__results{max-height:calc(100svh - 372px)}
 .ug-nave:has(.ug-nave__results:not(:empty)) .ug-nave__bubble--categories{display:none!important}
}

/* «Toca para entrar» (nave-video.js): el teléfono no deja arrancar el vídeo solo (ahorro de batería o de datos).
   Se ve la nave fija y un botón; el toque arranca el recorrido. */
.ug-nave[data-toque] .ug-nave__poster { opacity: 1; visibility: visible; animation: none; }
.ug-nave[data-toque] .ug-nave__video { background: transparent; }
.ug-nave__toque { position: absolute; z-index: 9; left: 50%; bottom: 18%; transform: translateX(-50%); min-height: 48px; padding: 12px 26px; border: 0; border-radius: 999px; background: #0c1c14; color: #fff; border: 1px solid #f1eee366; font: 700 16px/1.2 var(--font-body-family, Arial, sans-serif); letter-spacing: 0; box-shadow: 0 10px 30px rgb(0 0 0 / 55%); cursor: pointer; animation: ug-toque 1.8s ease-in-out infinite; }
.ug-nave__toque[hidden] { display: none; }
@keyframes ug-toque { 0%, 100% { transform: translateX(-50%) scale(1); } 50% { transform: translateX(-50%) scale(1.06); } }
@media (prefers-reduced-motion: reduce) { .ug-nave__toque { animation: none; } }

/* iOS dibuja su propio botón ▶ sobre un vídeo que no puede arrancar solo: no se muestra (ya hay «Toca para entrar»). */
.ug-nave__video video::-webkit-media-controls-start-playback-button, .ug-nave__video video::-webkit-media-controls { display: none !important; -webkit-appearance: none; }

/* Resultados de Leo mientras llega la búsqueda nueva: se quedan, atenuados. */
.ug-nave__results[aria-busy="true"] { opacity: .55; transition: opacity .15s ease; }
@media (max-width:600px){
 /* Móvil: al escribir o con resultados, Leo se calla para que la lista suba y quepa encima del teclado. */
 .ug-nave__bubble:not(.ug-nave__bubble--categories):focus-within .ug-nave__bubble-text,
 .ug-nave__bubble:has(.ug-nave__results:not(:empty)) .ug-nave__bubble-text{display:none}
 .ug-nave:has(.ug-nave__bubble:not(.ug-nave__bubble--categories):focus-within) .ug-nave__bubble--categories{display:none!important}
 .ug-nave__result{padding:6px 8px;gap:10px}
 .ug-nave__result img,.ug-nave__result-noimg{width:40px;height:40px}
 .ug-nave__result strong{font-size:13px;line-height:1.25}
 .ug-nave__result em{font-size:12px}
}
@media (max-width:600px){
 .ug-nave__bubble:not(.ug-nave__bubble--categories):focus-within .ug-nave__bubble-name,
 .ug-nave__bubble:has(.ug-nave__results:not(:empty)) .ug-nave__bubble-name{margin-bottom:8px}
}

@media (max-width:600px){
 /* Móvil, buscando con Leo: el bocadillo sube arriba del todo (por encima de la cabecera) y cada resultado es una
    fila baja, para que quepan varios entre el campo y el teclado. La altura exacta la pone el script. */
 .ug-nave:has([data-ug-header]) .ug-nave__bubble:not(.ug-nave__bubble--categories):focus-within{top:6px!important;z-index:40;padding-top:8px;box-shadow:0 12px 40px rgb(0 0 0 / 55%)}
 .ug-nave__bubble:not(.ug-nave__bubble--categories):focus-within .ug-nave__bubble-name{display:none}
 .ug-nave__bubble:has(.ug-nave__result:not(.ug-nave__result--all)) .ug-nave__status{display:none}
 .ug-nave__results{gap:4px;margin-top:6px;overscroll-behavior:contain}
 .ug-nave__result{padding:4px 8px;gap:9px;min-height:44px}
 .ug-nave__result img,.ug-nave__result-noimg{width:36px;height:36px}
 .ug-nave__result > span:last-child{display:flex;align-items:baseline;gap:8px;min-width:0;flex:1}
 .ug-nave__result strong{flex:1;min-width:0;font-size:13px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 .ug-nave__result em{flex:none;font-size:12.5px;font-weight:600;white-space:nowrap}
 .ug-nave__result--all{justify-content:center;font-size:13px;font-weight:600;min-height:40px}
}

/* Página sujeta (nave-video.js, data-pagina-fija): un dedo sobre la nave no arrastra la página; las listas con
   desplazamiento propio (resultados, subcategorías) siguen deslizándose y no «tiran» de la página al llegar a su fin. */
.ug-nave[data-pagina-fija] .ug-nave__sticky { touch-action: pinch-zoom; }
.ug-nave[data-pagina-fija] .ug-nave__results, .ug-nave[data-pagina-fija] .ug-nave__section-subs, .ug-nave[data-pagina-fija] .ug-nave__bubble, .ug-nave[data-pagina-fija] .ug-nave__section-bubble { overscroll-behavior: contain; touch-action: pan-y pinch-zoom; }
/* Portada en vídeo: sin barra de desplazamiento lateral (la página solo se desliza al final del recorrido, y que
   apareciera y desapareciera movería el vídeo). La rueda, el teclado y el dedo siguen funcionando. */
html:has(.ug-nave[data-render-mode="video"]) { scrollbar-width: none; }
html:has(.ug-nave[data-render-mode="video"])::-webkit-scrollbar { display: none; }
/* ======================= PORTÁTILES (pantalla de hasta 900 px de alto) =======================
   La barra de números ocupaba 128 px de alto (un 17 % de una pantalla de 768): aquí queda en unos 90. Los bocadillos
   y los avisos, algo más pequeños. Las pantallas grandes (1080p) y el móvil no cambian. */
@media (min-width:601px) and (max-height:900px){
 .ug-nave__catalog{padding:.7rem 1.2rem .8rem;gap:.4rem;font-size:1.15rem;bottom:1.4rem;border-radius:1rem}
 .ug-nave__rail{gap:.4rem}
 .ug-nave__rail-title{font-size:.9rem;margin:0 .6rem .8rem 0}
 .ug-nave__rail-track{gap:.4rem;padding-bottom:1rem}
 .ug-nave__rail-track::before{height:.3rem;bottom:.2rem}
 .ug-nave__rail-chip{width:2.8rem;height:2.8rem;font-size:1.05rem}
 .ug-nave__rail-chip[aria-current]{transform:scale(1.1)}
 .ug-nave__rail-step{width:2.4rem;height:2.8rem;font-size:2rem}
 .ug-nave__catalog-info{gap:1.2rem}
 .ug-nave__catalog-count{font-size:.9rem}
 .ug-nave__catalog-link{min-height:32px;font-size:1.2rem}
 .ug-nave__catalog .ug-nave__choose-section{min-height:32px;padding:6px 14px;font-size:12.5px}
 /* Avisos del exterior */
 .ug-aviso{width:clamp(200px,16vw,260px);padding:10px 13px}
 .ug-aviso__etiqueta{font-size:10px;margin-bottom:4px}
 .ug-aviso__titulo{font-size:clamp(14px,1.2vw,18px)}
 .ug-aviso p{font-size:clamp(11px,.85vw,13px)}
 /* Leo en el mostrador */
 .ug-nave__bubble{width:min(28rem,26vw);padding:1.3rem 1.5rem 1.2rem}
 .ug-nave__bubble-text{font-size:1.5rem;margin-bottom:1rem}
 .ug-nave__search input[type="search"]{padding:.8rem 1rem;font-size:1.45rem}
 .ug-nave__search button{width:4rem;font-size:1.6rem}
 .ug-nave__bubble--categories .ug-nave__choose-section{min-height:38px;padding:9px 16px;font-size:13px}
 /* Guías de las secciones */
 .ug-nave__section-bubble{padding:12px 15px;font-size:14px}
 .ug-nave__section-bubble--subs{width:380px}
 .ug-nave__section-guide-name{font-size:12px}
 .ug-nave__section-search label{font-size:16px}
 .ug-nave__section-search input{min-height:38px;padding:6px 9px;font-size:12.5px}
 .ug-nave__section-search button{min-height:38px;padding:6px 10px;font-size:13px}
 .ug-nave__section-bubble>p.ug-nave__section-subs-title{font-size:11.5px;margin:10px 0 5px}
 .ug-nave__section-sub{font-size:11.5px;padding:3px 9px;min-height:27px}
 .ug-nave__section-bubble a.ug-nave__section-full{min-height:38px;padding:8px 10px;font-size:13px}
 .ug-nave__section-quick{min-height:36px;font-size:11.5px}
 /* Indicador de deslizar */
 .ug-scroll-hint{font-size:1.05rem;padding:.7rem 1.3rem .8rem;max-width:30rem}
 .ug-scroll-hint__icons{width:5rem;height:5rem}
}

/* Todos los botones iguales (Manel, 06/10): verde oscuro con texto blanco; los que van sobre fondo oscuro llevan un
   borde claro para distinguirse. El lima queda para acentos (número de la sección, contador del carrito, etiquetas). */
.ug-nave__choose-section:hover, .ug-nave__section-bubble a.ug-nave__section-full:hover, .ug-nave__section-search button:hover, .ug-nave__search button:hover, .ug-nave__toque:hover { background: #1b3d2d; }
.ug-nave__choose-section:focus-visible, .ug-nave__toque:focus-visible { outline: 3px solid #d3f78b; outline-offset: 3px; }

@media (max-width:600px){
 /* Barra verde en móvil (Manel, 06/10: «los números tienen que ir en display… no tienen que ir en 2 filas»): los 15
    números en UNA sola fila, todos a la vista, sin flechas ni desplazamiento lateral (se reparten el ancho de la
    barra); el porro de progreso sigue debajo. La fila inferior con «Todas las secciones» también dentro de las
    secciones, como en el ordenador. */
 .ug-nave__catalog{padding:6px 8px 7px}
 .ug-nave__rail{gap:0}
 .ug-nave__rail-step{display:none}
 .ug-nave__rail-track{gap:2px;justify-content:space-between;overflow:visible;padding:2px 0 10px}
 .ug-nave__rail-track::before{left:10px;right:10px}
 .ug-nave__rail-ember{left:calc(10px + (100% - 20px) * var(--ug-rail, 0))}
 .ug-nave__rail-chip{box-sizing:border-box;flex:1 1 0;min-width:0;width:auto;max-width:26px;height:auto;aspect-ratio:1;padding:0;font-size:10px;letter-spacing:-.02em}
 .ug-nave__rail-chip[aria-current]{transform:scale(1.14)}
 .ug-nave__catalog:not(.ug-nave__catalog--overview) .ug-nave__catalog-info{display:flex}
 .ug-nave__catalog-info{margin-top:4px}
 .ug-nave__catalog .ug-nave__choose-section{min-height:30px;padding:5px 11px}
 .ug-nave__catalog-link{line-height:30px}
}

/* Dentro de la nave (mostrador): el aviso «Desliza» se hace pequeño y baja hasta justo encima de la barra verde,
   para no tapar a Leo en portátiles (Manel, 08/10). Sigue visible; en móvil lo dice ya el bocadillo de Leo. */
@media (min-width:601px){
 .ug-nave[data-dentro] .ug-scroll-hint{flex-direction:row;gap:.8rem;padding:.5rem 1.5rem .5rem .8rem;max-width:44rem;font-size:1.05rem;line-height:1.3;letter-spacing:.12em;border-radius:999px;bottom:calc(var(--ug-barra-top,15rem) + 1rem)}
 .ug-nave[data-dentro] .ug-scroll-hint__icons{flex:none;width:3rem;height:3rem}
}
@media (max-width:600px){ .ug-nave[data-dentro] .ug-scroll-hint{display:none} }

/* «Qué opinan los compradores» (Manel, 08/10): solo en el exterior, arriba en el centro; abre la ventana de opiniones. */
.ug-resenas-boton{position:absolute;z-index:6;left:50%;top:8.4rem;transform:translateX(-50%);display:none;align-items:center;gap:.8rem;min-height:4rem;padding:.8rem 1.8rem .8rem 1.4rem;border:1px solid #f1eee366;border-radius:999px;background:rgb(12 28 20 / 88%);color:#fff;font:600 1.35rem/1.2 var(--font-body-family,inherit);letter-spacing:.02em;white-space:nowrap;cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.ug-resenas-boton:hover{background:#1b3d2d}
.ug-resenas-boton:focus-visible{outline:3px solid #d3f78b;outline-offset:3px}
.ug-resenas-boton__estrella{color:#d3f78b;font-size:1.7rem;line-height:1}
.ug-nave[data-parada="0"][data-reveal="complete"] .ug-resenas-boton{display:inline-flex}
.ug-nave[data-toque] .ug-resenas-boton,.ug-nave[data-typing] .ug-resenas-boton{display:none}
@media (max-width:600px){.ug-resenas-boton{top:76px;min-height:36px;padding:6px 14px 6px 11px;font-size:12.5px}.ug-resenas-boton__estrella{font-size:15px}}

/* «Lo que más se mueve» (Manel, 08/10): desplegable de la cabecera a la derecha de Ofertas con «Más vendidos»,
   «Ofertas» y «Novedades»; botones con llama y brillo que pasa de uno a otro («ruleta»). En móvil solo la llama. */
.ug-nave-header__mueve{position:relative;margin-left:-6px}
.ug-nave-header__mueve summary{list-style:none;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 4px;color:inherit;cursor:pointer;white-space:nowrap;user-select:none}
.ug-nave-header__mueve summary::-webkit-details-marker{display:none}
.ug-nave-header__mueve summary:hover,.ug-nave-header__mueve[open] summary{color:#d3f78b}
.ug-nave-header__mueve summary:focus-visible{outline:2px solid #d3f78b;outline-offset:3px;border-radius:6px}
.ug-nave-header__mueve summary .ug-nave__atajo-llama{width:18px;height:18px}
.ug-nave-header__mueve-panel{position:absolute;z-index:45;top:calc(100% + 6px);left:0;display:flex;flex-direction:column;gap:6px;width:210px;padding:12px 14px 14px;border:1px solid #536554;border-radius:14px;background:rgb(12 28 20 / 96%);color:#f1eee3;box-shadow:0 14px 40px rgb(0 0 0 / 45%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.ug-nave__atajos-title{margin:0 0 4px;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#d3f78b}
.ug-nave__atajo{position:relative;display:flex;align-items:center;gap:8px;min-height:40px;padding:6px 12px 6px 10px;border:1px solid #f1eee34d;border-radius:999px;background:#0c1c14;color:#fff;font-size:13.5px;font-weight:600;line-height:1.2;text-decoration:none;animation:ug-atajo-ruleta 4.8s ease-in-out infinite;animation-delay:calc(var(--i,0) * 1.6s)}
.ug-nave-header .ug-nave__atajo{min-height:40px;justify-content:flex-start}
.ug-nave__atajo:hover{background:#1b3d2d;color:#fff}
.ug-nave__atajo:focus-visible{outline:3px solid #d3f78b;outline-offset:3px}
.ug-nave__atajo-llama{flex:none;width:19px;height:19px;color:#ff9d2e;filter:drop-shadow(0 0 4px rgb(255 140 30 / 70%));animation:ug-llama 1.1s ease-in-out infinite alternate;animation-delay:calc(var(--i,0) * -.37s);transform-origin:50% 90%}
@keyframes ug-atajo-ruleta{0%,34%,100%{box-shadow:0 0 0 0 rgb(255 157 46 / 0);border-color:#f1eee34d}10%{box-shadow:0 0 0 3px rgb(255 157 46 / 35%),0 0 20px rgb(255 120 30 / 60%);border-color:#ffb24a}}
@keyframes ug-llama{from{transform:scale(.9) rotate(-5deg)}to{transform:scale(1.1) rotate(5deg)}}
@media (prefers-reduced-motion:reduce){.ug-nave__atajo,.ug-nave__atajo-llama{animation:none}}
@media (max-width:600px){
 .ug-nave-header__mueve{margin-left:0}
 .ug-nave-header__mueve summary{min-width:36px;justify-content:center;padding:0}
 .ug-nave-header__mueve summary .ug-nave__atajo-llama{width:22px;height:22px}
 .ug-nave-header__mueve-texto{display:none}
 .ug-nave-header__mueve-panel{left:auto;right:-8px;width:min(230px,calc(100vw - 24px))}
}

/* Manta que se desenrolla al abrir «Lo que más se mueve» (también cuando se abre sola al llegar a la recepción). */
.ug-nave-header__mueve[open] .ug-nave-header__mueve-panel{transform-origin:50% 0;animation:ug-manta .9s cubic-bezier(.2,.8,.2,1) both}
.ug-nave-header__mueve[open] .ug-nave__atajos-title{animation:ug-manta-item .45s ease-out both;animation-delay:.2s}
.ug-nave-header__mueve[open] .ug-nave__atajo{animation:ug-manta-item .5s ease-out both,ug-atajo-ruleta 4.8s ease-in-out infinite;animation-delay:calc(.3s + var(--i,0) * .14s),calc(.6s + var(--i,0) * 1.6s)}
@keyframes ug-manta{from{clip-path:inset(0 0 100% 0 round 14px);transform:translateY(-12px)}to{clip-path:inset(0 0 0 0 round 14px);transform:none}}
@keyframes ug-manta-item{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ug-nave-header__mueve[open] .ug-nave-header__mueve-panel,.ug-nave-header__mueve[open] .ug-nave__atajos-title{animation:none}.ug-nave-header__mueve[open] .ug-nave__atajo{animation:none}}

/* Sin parada en el exterior, «Qué opinan los compradores» se ofrece también en la recepción: arriba a la derecha en
   ordenador (el desplegable de la cabecera cae a la izquierda) y, en móvil, encima del bocadillo inferior de Leo. */
.ug-nave[data-parada="1"][data-reveal="complete"] .ug-resenas-boton{display:inline-flex;left:auto;right:2.4rem;transform:none}
@media (max-width:600px){
 .ug-nave[data-parada="1"][data-reveal="complete"] .ug-resenas-boton{left:50%;right:auto;top:auto;bottom:calc(max(8px,env(safe-area-inset-bottom,0px)) + 182px);transform:translateX(-50%)}
}

/* Móvil (Manel, 08/10): «al lado del carrito el buscador y a la izquierda el fuego»: Secciones · 🔥 · lupa · carrito. */
@media (max-width:600px){
 .ug-nave-header__mueve{order:1}
 .ug-nave-header__search{order:2}
 .ug-nave-header__cart{order:3}
}

/* Lo que hay debajo de la nave (la portada antigua, el pie) no existe mientras se recorre la nave: aparece solo al
   llegar a la última sección (Manel, 13/10: «la parte de abajo de la web no debe de salir hasta el final»). También
   mientras carga. Si la portada cae al modo sencillo (ug-nave--fallback), se ve todo como siempre. */
body:has(.ug-nave[data-pagina-fija]) main .shopify-section:not(:has(.ug-nave)),
body:has(.ug-nave[data-pagina-fija]) .shopify-section-group-footer-group,
body:has(.ug-nave[data-modo="video"]:not(.ug-nave--fallback):not([data-reveal="complete"])) main .shopify-section:not(:has(.ug-nave)),
body:has(.ug-nave[data-modo="video"]:not(.ug-nave--fallback):not([data-reveal="complete"])) .shopify-section-group-footer-group { display: none !important; }
/* Móvil: la nave ocupa la pantalla visible real (cambia al plegarse la barra del navegador). */
.ug-nave[data-render-mode="video"] { height: 100svh; height: 100dvh; }


/* Chat movil: sitio reservado junto a la fila inferior, sin cubrir las secciones. */
@media (max-width:749px) {
 .ug-nave__catalog { --ug-hueco-chat:100px; }
  body:has(.ug-nave) shopify-chat::part(activator) { position:fixed!important; right:16px!important; bottom:max(4px,env(safe-area-inset-bottom,0px))!important; }
  }
  

/* The search panel is independent of the video and scrolling scene. */
html.ug-search-open{overflow:hidden;overscroll-behavior:none}
.ug-header-search[open]{position:fixed;top:max(104px,env(safe-area-inset-top));bottom:auto;left:16px;right:16px;margin:0 auto;transform:none;max-height:calc(100dvh - 124px);display:flex;flex-direction:column;overflow:hidden}
.ug-header-search__bar,.ug-header-search form,.ug-header-search>p,.ug-header-search>a{flex:none}
.ug-header-search__results{min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;max-height:min(440px,50dvh)}
.ug-header-search__results a{flex-shrink:0;background:#fff;color:#10251b;border-color:#dce5df}
.ug-header-search__results small{color:#2f5928;font-size:14px;font-weight:650}
.ug-header-search__results img{flex:none;background:#fff}
.ug-header-search__bar button{flex:none}
@media(max-width:749px){.ug-header-search[open]{top:max(76px,env(safe-area-inset-top));max-height:calc(100dvh - 92px);padding:16px}.ug-header-search h2{font-size:21px}.ug-header-search form{margin-top:14px}.ug-header-search__results{max-height:46dvh}.ug-header-search input{font-size:16px}}
