/** Shopify CDN: Minification failed

Line 41:0 All "@import" rules must come first

**/
/* ═══════════════════════════════════════════════════════════════
   INLIMITED — Premium Design System
   Estilo: limpio, nórdico, profesional. Venta fácil y elegante.
═══════════════════════════════════════════════════════════════ */

/* ── Design Tokens ── */
:root {
  --il-bg:           oklch(98.5% 0.004 75);
  --il-surface:      oklch(100% 0 0);
  --il-ink:          oklch(14% 0.012 258);
  --il-ink-muted:    oklch(48% 0.010 258);
  --il-navy:         oklch(24% 0.065 258);
  --il-navy-hover:   oklch(30% 0.070 258);
  --il-accent:       oklch(62% 0.130 58);
  --il-accent-hover: oklch(56% 0.130 58);
  --il-border:       oklch(90% 0.005 258);
  --il-border-soft:  oklch(94% 0.003 258);

  --il-radius-sm:   4px;
  --il-radius-md:   8px;
  --il-radius-lg:   16px;

  --il-font-display: "Playfair Display", Georgia, serif;
  --il-font-body:    var(--font-body-family, system-ui, sans-serif);

  --il-ease-out:   cubic-bezier(0.16, 1, 0.3, 1);
  --il-ease-in:    cubic-bezier(0.7, 0, 0.84, 0);
  --il-spring:     cubic-bezier(0.34, 1.56, 0.64, 1);

  --il-shadow-sm:  0 1px 3px oklch(0% 0 0 / 0.06), 0 1px 2px oklch(0% 0 0 / 0.04);
  --il-shadow-md:  0 4px 16px oklch(0% 0 0 / 0.08), 0 2px 6px oklch(0% 0 0 / 0.04);
  --il-shadow-lg:  0 16px 48px oklch(0% 0 0 / 0.12), 0 4px 12px oklch(0% 0 0 / 0.06);
}

/* ── Google Fonts: Playfair Display ── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&display=swap');

/* ═══════════════════════════════════════════════════
   BASE & BODY
═══════════════════════════════════════════════════ */

body {
  background-color: var(--il-bg) !important;
  color: var(--il-ink) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ═══════════════════════════════════════════════════
   HEADER — Sticky con blur
═══════════════════════════════════════════════════ */

.section-header {
  position: sticky !important;
  top: 0;
  z-index: 100;
  transition: background 0.3s var(--il-ease-out),
              box-shadow 0.3s var(--il-ease-out);
}

.header {
  background: oklch(100% 0 0 / 0.90) !important;
  backdrop-filter: blur(20px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
  border-bottom: 1px solid var(--il-border-soft) !important;
  transition: padding 0.3s var(--il-ease-out),
              box-shadow 0.3s var(--il-ease-out) !important;
}

.header.scrolled,
.scrolled-past-header .header {
  box-shadow: var(--il-shadow-sm) !important;
}

/* Logo */
.header__heading-logo {
  transition: opacity 0.2s ease !important;
}
.header__heading-logo:hover { opacity: 0.7 !important; }

/* Header más estrecho en PC para dar más protagonismo al producto */
@media (min-width: 990px) {
  .header-wrapper .header {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
}

/* ═══════════════════════════════════════════════════
   BOTÓN AÑADIR A LA CESTA — navy sólido, texto blanco
   (corrige texto navy invisible sobre fondo navy)
═══════════════════════════════════════════════════ */
.product-form__submit,
.product-form__submit.button--secondary {
  background-color: var(--il-navy) !important;
  border: 1px solid var(--il-navy) !important;
  color: #fff !important;
  border-radius: var(--il-radius-sm) !important;
  font-weight: 600 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  font-size: 15px !important;
  min-height: 60px !important;
  padding: 18px 24px !important;
  transition: background-color 0.2s var(--il-ease-out),
              transform 0.1s var(--il-ease-out) !important;
}
.product-form__submit *,
.product-form__submit span {
  color: #fff !important;
}
.product-form__submit:hover:not([disabled]) {
  background-color: var(--il-navy-hover) !important;
  border-color: var(--il-navy-hover) !important;
}
.product-form__submit:active:not([disabled]) {
  transform: scale(0.99) !important;
}
.product-form__submit[disabled] {
  opacity: 0.55 !important;
}

/* Nav links */
.header__menu-item,
.header__menu-item .link {
  font-size: 0.95rem !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  color: var(--il-ink) !important;
  position: relative;
  transition: color 0.2s ease !important;
}

.header__menu-item .link::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 1px;
  background: var(--il-ink);
  transition: width 0.3s var(--il-ease-out);
}

.header__menu-item .link:hover::after,
.header__menu-item .link:focus::after {
  width: 100%;
}

/* Cart icon */
.header__icon--cart {
  transition: transform 0.2s var(--il-spring) !important;
}
.header__icon--cart:hover {
  transform: scale(1.12) !important;
}

/* Cart badge */
.cart-count-bubble {
  background: var(--il-navy) !important;
  color: #fff !important;
  font-size: 0.6rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

/* ═══════════════════════════════════════════════════
   ANNOUNCEMENT BAR
═══════════════════════════════════════════════════ */

.announcement-bar {
  background: var(--il-navy) !important;
  padding: 10px 0 !important;
}

.announcement-bar__message,
.announcement-bar__message a {
  color: oklch(95% 0.005 75) !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
}

/* ═══════════════════════════════════════════════════
   TIPOGRAFÍA — Sistema de escala premium
═══════════════════════════════════════════════════ */

h1, h2, h3,
.h1, .h2, .h3 {
  font-family: var(--il-font-display) !important;
  font-weight: 500 !important;
  line-height: 1.18 !important;
  letter-spacing: -0.02em !important;
  color: var(--il-ink) !important;
}

.title--primary,
.section-heading,
.collection__title,
.featured-collection .title,
.collection-list .title,
.rich-text__heading {
  font-family: var(--il-font-display) !important;
  font-weight: 500 !important;
  font-size: clamp(1.8rem, 4vw, 3rem) !important;
  letter-spacing: -0.025em !important;
  text-transform: none !important;
  line-height: 1.15 !important;
  color: var(--il-ink) !important;
}

/* Subtítulos de sección */
.featured-collection .subtitle,
.collection-list .subtitle,
.rich-text__text {
  font-size: 1rem !important;
  color: var(--il-ink-muted) !important;
  line-height: 1.65 !important;
  max-width: 55ch !important;
}

/* ═══════════════════════════════════════════════════
   BOTONES — Premium con micro-interacciones
═══════════════════════════════════════════════════ */

.button,
.btn {
  border-radius: var(--il-radius-sm) !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 14px 28px !important;
  transition: transform 0.2s var(--il-spring),
              box-shadow 0.2s ease,
              background 0.2s ease !important;
  position: relative;
  overflow: hidden;
}

.button::before {
  content: '';
  position: absolute;
  inset: 0;
  background: oklch(100% 0 0 / 0);
  transition: background 0.2s ease;
}

.button:hover::before {
  background: oklch(100% 0 0 / 0.08);
}

.button:active {
  transform: scale(0.97) !important;
}

.button--primary {
  background: var(--il-navy) !important;
  border-color: var(--il-navy) !important;
  color: #fff !important;
  box-shadow: var(--il-shadow-sm) !important;
}

.button--primary:hover {
  background: var(--il-navy-hover) !important;
  border-color: var(--il-navy-hover) !important;
  box-shadow: var(--il-shadow-md) !important;
  transform: translateY(-1px) !important;
}

.button--secondary {
  background: transparent !important;
  border: 1.5px solid var(--il-navy) !important;
  color: var(--il-navy) !important;
}

.button--secondary:hover {
  background: var(--il-navy) !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
}

/* ═══════════════════════════════════════════════════
   HERO / IMAGE BANNER
═══════════════════════════════════════════════════ */

.banner {
  position: relative;
  overflow: hidden;
}

.banner__content {
  z-index: 2;
}

.banner__heading {
  font-family: var(--il-font-display) !important;
  font-size: clamp(2.5rem, 7vw, 5.5rem) !important;
  font-weight: 500 !important;
  letter-spacing: -0.03em !important;
  line-height: 1.05 !important;
  text-wrap: balance;
}

.banner__box {
  background: oklch(100% 0 0 / 0.88) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border: 1px solid oklch(100% 0 0 / 0.5) !important;
  border-radius: var(--il-radius-lg) !important;
  padding: 2.5rem !important;
}

/* ═══════════════════════════════════════════════════
   TARJETAS DE PRODUCTO — Limpia y con hover elegante
═══════════════════════════════════════════════════ */

.card-wrapper {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

.card {
  border-radius: var(--il-radius-md) !important;
  border: 1px solid var(--il-border-soft) !important;
  box-shadow: none !important;
  overflow: hidden;
  background: var(--il-surface) !important;
  transition: box-shadow 0.35s var(--il-ease-out),
              transform 0.35s var(--il-ease-out),
              border-color 0.35s ease !important;
  will-change: transform, box-shadow;
}

.card-wrapper:hover .card {
  box-shadow: var(--il-shadow-lg) !important;
  transform: translateY(-4px) !important;
  border-color: transparent !important;
}

/* Imagen producto */
.card__media {
  overflow: hidden !important;
  background: var(--il-bg) !important;
}

.card__media img {
  transition: transform 0.6s var(--il-ease-out) !important;
  display: block;
  width: 100%;
  will-change: transform;
}

.card-wrapper:hover .card__media img {
  transform: scale(1.06) !important;
}

/* Info del producto */
.card__information {
  padding: 1rem 1.25rem 1.25rem !important;
}

.card__heading {
  margin-bottom: 0.4rem !important;
}

.card__heading a {
  font-size: 0.88rem !important;
  font-weight: 500 !important;
  color: var(--il-ink) !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  line-height: 1.4 !important;
}

.card-wrapper:hover .card__heading a {
  color: var(--il-navy) !important;
}

/* Precio */
.price__regular .price-item,
.price__sale .price-item,
.price__regular,
.price {
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  color: var(--il-ink) !important;
}

.price__sale .price-item--sale {
  color: var(--il-accent) !important;
}

/* Quick add button */
.quick-add__submit {
  background: var(--il-navy) !important;
  color: #fff !important;
  border-radius: 0 0 var(--il-radius-md) var(--il-radius-md) !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  border: none !important;
  padding: 14px !important;
  width: 100% !important;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.25s ease,
              transform 0.25s var(--il-ease-out),
              background 0.2s ease !important;
}

.card-wrapper:hover .quick-add__submit {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

.quick-add__submit:hover {
  background: var(--il-navy-hover) !important;
}

/* Badge sale */
.badge {
  border-radius: var(--il-radius-sm) !important;
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

.badge--sale,
.price__badge-sale {
  background: var(--il-accent) !important;
  color: #fff !important;
}

/* ═══════════════════════════════════════════════════
   SECCIÓN FEATURED COLLECTION
═══════════════════════════════════════════════════ */

.featured-collection {
  background: var(--il-bg) !important;
}

.featured-collection .collection__view-all {
  margin-top: 2.5rem;
}

/* ═══════════════════════════════════════════════════
   RICH TEXT / SECCIONES DE CONTENIDO
═══════════════════════════════════════════════════ */

.rich-text {
  padding: 5rem 0 !important;
}

.rich-text__wrapper--center {
  text-align: center;
  max-width: 680px;
  margin: 0 auto;
}

/* ═══════════════════════════════════════════════════
   IMAGE WITH TEXT
═══════════════════════════════════════════════════ */

.image-with-text__media {
  border-radius: var(--il-radius-lg) !important;
  overflow: hidden !important;
}

.image-with-text__media img {
  transition: transform 0.7s var(--il-ease-out) !important;
}

.image-with-text__media:hover img {
  transform: scale(1.04) !important;
}

.image-with-text__heading {
  font-family: var(--il-font-display) !important;
  font-size: clamp(1.6rem, 3.5vw, 2.5rem) !important;
  font-weight: 500 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.2 !important;
}

/* ═══════════════════════════════════════════════════
   NEWSLETTER
═══════════════════════════════════════════════════ */

.newsletter {
  background: var(--il-navy) !important;
  border-radius: var(--il-radius-lg) !important;
  margin: 2rem auto !important;
  max-width: calc(var(--page-width) - 4rem) !important;
}

.newsletter__heading {
  color: #fff !important;
  font-family: var(--il-font-display) !important;
  font-size: clamp(1.5rem, 3vw, 2.2rem) !important;
  letter-spacing: -0.02em !important;
}

.newsletter .field__input {
  border-radius: var(--il-radius-sm) !important;
  border: none !important;
  background: oklch(100% 0 0 / 0.12) !important;
  color: #fff !important;
}

.newsletter .field__input::placeholder {
  color: oklch(80% 0 0 / 0.6) !important;
}

.newsletter .button--primary {
  background: var(--il-accent) !important;
  border-color: var(--il-accent) !important;
}

.newsletter .button--primary:hover {
  background: var(--il-accent-hover) !important;
  border-color: var(--il-accent-hover) !important;
}

/* ═══════════════════════════════════════════════════
   CART DRAWER
═══════════════════════════════════════════════════ */

cart-drawer {
  --cart-drawer-width: min(480px, 100vw) !important;
}

.cart-drawer {
  border-radius: var(--il-radius-lg) 0 0 var(--il-radius-lg) !important;
  box-shadow: var(--il-shadow-lg) !important;
}

.cart-drawer__header {
  border-bottom: 1px solid var(--il-border) !important;
  padding: 1.5rem 2rem !important;
}

.cart-drawer__heading {
  font-family: var(--il-font-display) !important;
  font-size: 1.3rem !important;
  font-weight: 500 !important;
  letter-spacing: -0.01em !important;
}

/* ═══════════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════════ */

.footer {
  background: var(--il-navy) !important;
  color: oklch(88% 0.005 75) !important;
  padding-top: 4rem !important;
}

.footer a,
.footer .link {
  color: oklch(75% 0.005 75) !important;
  text-decoration: none !important;
  font-size: 0.85rem !important;
  transition: color 0.2s ease !important;
}

.footer a:hover,
.footer .link:hover {
  color: oklch(95% 0.005 75) !important;
}

.footer__content-top {
  border-bottom: 1px solid oklch(100% 0 0 / 0.08) !important;
  padding-bottom: 3rem !important;
}

.footer__content-bottom {
  padding: 1.5rem 0 !important;
  color: oklch(55% 0.005 75) !important;
  font-size: 0.78rem !important;
}

.footer-block__heading {
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: oklch(65% 0.005 75) !important;
  margin-bottom: 1.2rem !important;
}

/* Social icons */
.social-icons .icon {
  transition: transform 0.2s var(--il-spring),
              opacity 0.2s ease !important;
  opacity: 0.7;
}

.social-icons .list-social__item a:hover .icon {
  transform: scale(1.2) !important;
  opacity: 1 !important;
}

/* Payment icons */
.footer__payment {
  opacity: 0.5;
  transition: opacity 0.2s ease;
}
.footer__payment:hover { opacity: 0.8; }

/* ═══════════════════════════════════════════════════
   COLECCIONES — List grid
═══════════════════════════════════════════════════ */

.collection-list__item .card--media {
  border-radius: var(--il-radius-lg) !important;
  overflow: hidden !important;
  transition: box-shadow 0.35s var(--il-ease-out),
              transform 0.35s var(--il-ease-out) !important;
}

.collection-list__item .card--media:hover {
  box-shadow: var(--il-shadow-lg) !important;
  transform: translateY(-4px) !important;
}

.collection-list__item .card__heading {
  font-family: var(--il-font-display) !important;
  font-size: 1.1rem !important;
  font-weight: 500 !important;
  letter-spacing: -0.01em !important;
}

/* ═══════════════════════════════════════════════════
   ANIMACIONES DE SCROLL — Reveal suave
═══════════════════════════════════════════════════ */

.il-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.7s var(--il-ease-out),
              transform 0.7s var(--il-ease-out);
}

.il-reveal.il-visible {
  opacity: 1;
  transform: translateY(0);
}

.il-reveal-delay-1 { transition-delay: 0.1s; }
.il-reveal-delay-2 { transition-delay: 0.2s; }
.il-reveal-delay-3 { transition-delay: 0.3s; }
.il-reveal-delay-4 { transition-delay: 0.4s; }

/* Stagger en grid de productos */
.grid .grid__item:nth-child(1) .card-wrapper { transition-delay: 0s; }
.grid .grid__item:nth-child(2) .card-wrapper { transition-delay: 0.07s; }
.grid .grid__item:nth-child(3) .card-wrapper { transition-delay: 0.14s; }
.grid .grid__item:nth-child(4) .card-wrapper { transition-delay: 0.21s; }

/* ═══════════════════════════════════════════════════
   PÁGINA DE PRODUCTO
═══════════════════════════════════════════════════ */

.product__title {
  font-family: var(--il-font-display) !important;
  font-size: clamp(1.6rem, 3vw, 2.4rem) !important;
  font-weight: 500 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.2 !important;
}

.product__price {
  font-size: 1.2rem !important;
  font-weight: 600 !important;
  color: var(--il-ink) !important;
}

.product-form__submit {
  background: var(--il-navy) !important;
  border-color: var(--il-navy) !important;
  border-radius: var(--il-radius-sm) !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  padding: 18px 32px !important;
  transition: transform 0.2s var(--il-spring),
              box-shadow 0.2s ease,
              background 0.2s ease !important;
}

.product-form__submit:hover {
  background: var(--il-navy-hover) !important;
  border-color: var(--il-navy-hover) !important;
  transform: translateY(-1px) !important;
  box-shadow: var(--il-shadow-md) !important;
}

.product-form__submit:active {
  transform: scale(0.98) translateY(0) !important;
}

/* Media gallery */
.product__media-item {
  border-radius: var(--il-radius-md) !important;
  overflow: hidden !important;
}

/* ═══════════════════════════════════════════════════
   COLECCIÓN — Página de colección
═══════════════════════════════════════════════════ */

.collection-hero__title {
  font-family: var(--il-font-display) !important;
  font-size: clamp(2rem, 5vw, 4rem) !important;
  font-weight: 500 !important;
  letter-spacing: -0.03em !important;
}

/* ═══════════════════════════════════════════════════
   BÚSQUEDA PREDICTIVA
═══════════════════════════════════════════════════ */

.predictive-search {
  border-radius: 0 0 var(--il-radius-md) var(--il-radius-md) !important;
  border: 1px solid var(--il-border) !important;
  box-shadow: var(--il-shadow-md) !important;
  overflow: hidden !important;
}

/* ═══════════════════════════════════════════════════
   SELECTS & INPUTS
═══════════════════════════════════════════════════ */

.select__select,
.field__input,
input[type="text"],
input[type="email"],
textarea {
  border-radius: var(--il-radius-sm) !important;
  border-color: var(--il-border) !important;
  transition: border-color 0.2s ease,
              box-shadow 0.2s ease !important;
}

.select__select:focus,
.field__input:focus,
input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus {
  border-color: var(--il-navy) !important;
  box-shadow: 0 0 0 3px oklch(24% 0.065 258 / 0.12) !important;
  outline: none !important;
}

/* ═══════════════════════════════════════════════════
   MENÚ MÓVIL
═══════════════════════════════════════════════════ */

#menu-drawer,
#menu-drawer.gradient,
.menu-drawer__submenu,
.menu-drawer__inner-container,
.menu-drawer__navigation-container,
.menu-drawer__navigation {
  background: #ffffff !important;
  background-image: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.menu-drawer__navigation a,
.menu-drawer .header__menu-item,
.menu-drawer a,
.menu-drawer span,
.menu-drawer button,
.menu-drawer .link {
  color: var(--il-ink) !important;
  opacity: 1 !important;
}

/* ═══════════════════════════════════════════════════
   MEGA MENU DESKTOP
═══════════════════════════════════════════════════ */

.mega-menu__content,
.mega-menu__content.gradient,
details[open] .mega-menu__content {
  background: #ffffff !important;
  background-image: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-top: 1px solid var(--il-border-soft) !important;
  box-shadow: var(--il-shadow-md) !important;
}

.mega-menu__link,
.mega-menu__link--level-2,
.mega-menu__content a {
  color: var(--il-ink) !important;
  font-size: 0.88rem !important;
  transition: color 0.2s ease !important;
}

.mega-menu__link:hover,
.mega-menu__link--level-2:hover {
  color: var(--il-navy) !important;
}

/* ═══════════════════════════════════════════════════
   SLIDESHOW
═══════════════════════════════════════════════════ */

.slideshow__slide {
  overflow: hidden;
}

.slideshow .banner__heading {
  font-family: var(--il-font-display) !important;
  font-size: clamp(2.2rem, 6vw, 5rem) !important;
  font-weight: 500 !important;
  letter-spacing: -0.03em !important;
  line-height: 1.08 !important;
}

/* ═══════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════ */

@media (max-width: 749px) {
  .grid--2-col-tablet-down .grid__item { width: 50%; }

  .banner__heading {
    font-size: clamp(1.8rem, 9vw, 3rem) !important;
  }

  .card {
    border-radius: var(--il-radius-sm) !important;
  }

  .newsletter {
    border-radius: var(--il-radius-md) !important;
    margin: 1rem !important;
  }
}

/* ═══════════════════════════════════════════════════
   REDUCED MOTION
═══════════════════════════════════════════════════ */

@media (prefers-reduced-motion: reduce) {
  .il-reveal,
  .card,
  .card__media img,
  .button,
  .quick-add__submit {
    transition: none !important;
    animation: none !important;
  }

  .il-reveal {
    opacity: 1 !important;
    transform: none !important;
  }
}
