/** Shopify CDN: Minification failed

Line 4799:19 Unexpected "{"
Line 4799:28 Expected ":"
Line 4803:19 Unexpected "{"
Line 4803:28 Expected ":"
Line 4809:19 Unexpected "{"
Line 4809:28 Expected ":"
Line 4815:19 Unexpected "{"
Line 4815:28 Expected ":"
Line 4816:19 Unexpected "{"
Line 4816:28 Expected ":"
... and 12 more hidden warnings

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:about-heat-home (INDEX:0) */
.about-heat {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 70vh;
    background: #fafaf8;
    color: #111;
  }

  .about-heat--dark {
    background: #111;
    color: #f0ede8;
  }

  .about-heat--reverse {
    direction: rtl;
  }

  .about-heat--reverse > * {
    direction: ltr;
  }

  /* Media */
  .about-heat__media {
    position: relative;
    overflow: hidden;
  }

  .about-heat__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  .about-heat__image--placeholder {
    background: #e8e5e0;
  }

  /* Content */
  .about-heat__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 7rem 8rem;
    gap: 2.4rem;
  }

  .about-heat__subheading {
    font-size: 1.1rem;
    font-weight: 500;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin: 0;
    opacity: 0.55;
  }

  .about-heat__heading {
    font-size: clamp(2.8rem, 4vw, 5rem);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: -0.01em;
    margin: 0;
  }

  .about-heat--dark .about-heat__heading {
    color: #f0ede8;
  }

  .about-heat__description {
    font-size: 1.5rem;
    line-height: 1.75;
    max-width: 52ch;
    opacity: 0.75;
    margin: 0;
  }

  .about-heat__description p {
    margin: 0 0 1em;
  }

  .about-heat__description p:last-child {
    margin-bottom: 0;
  }

  /* Button */
  .about-heat__button {
    display: inline-block;
    align-self: flex-start;
    padding: 1.2rem 3rem;
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    text-decoration: none;
    border: 1px solid currentColor;
    color: inherit;
    margin-top: 0.8rem;
    transition: background 0.25s ease, color 0.25s ease;
  }

  .about-heat__button:hover {
    background: currentColor;
  }

  .about-heat--dark .about-heat__button:hover {
    color: #111;
  }

  .about-heat:not(.about-heat--dark) .about-heat__button:hover {
    color: #fafaf8;
  }

  /* Tablet */
  @media (max-width: 989px) {
    .about-heat__content {
      padding: 5rem 4rem;
      gap: 2rem;
    }

    .about-heat__heading {
      font-size: clamp(2.4rem, 3.5vw, 3.6rem);
    }
  }

  /* Mobile */
  @media (max-width: 749px) {
    .about-heat {
      grid-template-columns: 1fr;
      min-height: unset;
      direction: ltr;
    }

    .about-heat--reverse > * {
      direction: ltr;
    }

    .about-heat__media {
      aspect-ratio: 4 / 3;
    }

    .about-heat__content {
      padding: 4rem 2rem;
      gap: 1.8rem;
    }

    .about-heat__button {
      align-self: stretch;
      text-align: center;
    }
  }
/* END_SECTION:about-heat-home */

/* START_SECTION:article-page (INDEX:3) */
/* ══════════════════════════════════
     BASE
  ══════════════════════════════════ */
  .article-page {
    background-color: var(--ap-bg);
    color: var(--ap-text);
    padding-bottom: 80px;
  }

  /* ══════════════════════════════════
     HEADER
  ══════════════════════════════════ */
  .article-page__header {
    background-color: var(--ap-header-bg);
    background-image: var(--ap-header-img, none);
    background-size: cover;
    background-position: center;
    padding: 150px 5rem 150px;
    position: relative;
    overflow: hidden;
    text-align: center;
    border-bottom: 2px solid #8E7C6E;
  }

  .article-page__header-overlay {
    position: absolute;
    inset: 0;
    background-color: var(--ap-header-overlay);
    pointer-events: none;
  }

  .article-page__header-content {
    position: relative;
    z-index: 1;
    max-width: var(--ap-content-width);
    margin: 0 auto;
  }

  .article-page__date {
    font-family: 'poppins', sans-serif;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #685A4F;
    margin: 0 0 8px;
  }

  .article-page__title {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 56px;
    line-height: 70px;
    letter-spacing: 0;
    margin: 0 0 16px;
    color: #2D3648;
  }

  .article-page__excerpt {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 22px;
    color: #685A4F;
    max-width: 410px;
    margin: 0 auto 16px;
  }

  .article-page__excerpt p { margin: 0; }

  /* Share */
  .article-page__share {
    margin-top: 8px;
  }

  .article-page__share-btn {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    text-decoration: none;
    color: #000000;
    border-bottom: 1px solid #000000;
    padding-bottom: 4px;
    display: inline-block;
    transition: opacity 0.2s;
  }

  .article-page__share-btn:hover { opacity: 0.5; }

  /* ══════════════════════════════════
     HERO IMAGE
  ══════════════════════════════════ */
  .article-page__hero {
    width: 100%;
    height: var(--ap-hero-height);
    overflow: hidden;
    background: #e8e3db;
  }

  .article-page__hero-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  /* ══════════════════════════════════
     ARTICLE BODY
  ══════════════════════════════════ */
  .article-page__body {
    padding: 64px 5rem 0;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .article-page__content {
    width: 100%;
    max-width: var(--ap-content-width);
  }

  /* ── Rich text styles ── */
  .article-page__content h1,
  .article-page__content h2,
  .article-page__content h3,
  .article-page__content h4 {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    line-height: 1.2;
    letter-spacing: -0.01em;
    color: #221E1E;
    margin: 2.5em auto 0.75em;
    max-width: 640px;
  }

  .article-page__content h2 { font-size: 32px; line-height: 38px; }
  .article-page__content h3 { font-size: 24px; line-height: 32px; }
  .article-page__content h4 { font-size: 18px; line-height: 26px; }

  .article-page__content > h2:first-child,
  .article-page__content > h3:first-child { margin-top: 0; }

  .article-page__content p {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    color: #5B4F48;
    margin: 0 auto 1.4em;
    max-width: 640px;
  }

  .article-page__content a {
    color: var(--ap-text);
    text-underline-offset: 3px;
    transition: opacity 0.2s;
  }

  .article-page__content a:hover { opacity: 0.6; }

  .article-page__content ul,
  .article-page__content ol {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.85;
    padding-left: 1.5em;
    margin: 0 0 1.4em;
    color: var(--ap-muted);
  }

  .article-page__content li { margin-bottom: 0.4em; }

  .article-page__content strong { font-weight: 500; color: var(--ap-text); }
  .article-page__content em { font-style: italic; }

  .article-page__content hr {
    border: none;
    border-top: 1px solid rgba(0,0,0,0.1);
    margin: 3em 0;
  }

  .article-page__content blockquote {
    border-left: 2px solid #8E7C6E;
    margin: 2.5em 0;
    padding: 0.5em 0 0.5em 1.5em;
    font-style: italic;
    color: var(--ap-muted);
  }
  .rte table{border: none!important; box-shadow: none!important;}
  .rte table tr{border: none!important;}
  .rte table td{border: none!important;}

  /* Images inside content — full bleed or centered */
  .article-page__content img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 2.5em auto;
  }

  /* ── Tags ── */
  .article-page__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 48px;
    width: 100%;
    max-width: var(--ap-content-width);
  }

  .article-page__tag {
    font-family: 'poppins', sans-serif;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--ap-text);
    border: 1px solid rgba(0,0,0,0.2);
    border-radius: 999px;
    padding: 5px 14px;
    transition: background 0.2s, color 0.2s;
  }

  .article-page__tag:hover {
    background: var(--ap-text);
    color: var(--ap-bg);
    border-color: var(--ap-text);
  }

  /* ── Back to blog ── */
  .article-page__back {
    margin-top: 48px;
    width: 100%;
    max-width: var(--ap-content-width);
    padding-top: 32px;
    border-top: 1px solid rgba(0,0,0,0.08);
  }

  .article-page__back-link {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--ap-text);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: opacity 0.2s;
  }

  .article-page__back-link:hover { opacity: 0.6; }

  /* ══════════════════════════════════
     RELATED ARTICLES
  ══════════════════════════════════ */
  .article-page__related {
    padding: 64px 5rem 0;
    border-top: 1px solid rgba(0,0,0,0.08);
    margin-top: 64px;
    width: 100%;
  }

  .article-page__related-eyebrow {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #685A4F;
    margin: 0 0 40px;
    text-align: center;
  }

  .article-page__related-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 40px;
  }

  .article-page__related-card {
    display: block;
    text-decoration: none;
    color: inherit;
  }

  .article-page__related-img-wrap {
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #e8e3db;
    margin-bottom: 14px;
  }

  .article-page__related-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.55s ease;
  }

  .article-page__related-card:hover .article-page__related-img {
    transform: scale(1.04);
  }

  .article-page__related-date {
    font-family: 'poppins', sans-serif;
    font-size: 11px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #685A4F;
    margin: 0 0 6px;
    opacity: 0.8;
  }

  .article-page__related-title {
    font-family: 'ivyjournal', serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 22px;
    margin: 0;
    color: var(--ap-text);
    transition: opacity 0.2s;
  }

  .article-page__related-card:hover .article-page__related-title { opacity: 0.6; }

  /* ══════════════════════════════════
     RESPONSIVE
  ══════════════════════════════════ */
  @media screen and (max-width: 989px) {
    .article-page__header { padding: 40px 3rem 48px; }
    .article-page__body { padding: 48px 3rem 0; }
    .article-page__related { padding: 48px 3rem 0; }

    .article-page__related-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 0 28px;
    }

    .article-page__related-grid .article-page__related-card:last-child {
      display: none;
    }
  }

  @media screen and (max-width: 749px) {
    .article-page__header { padding: 32px 1.5rem 40px; }
    .article-page__body { padding: 36px 1.5rem 0; }
    .article-page__related { padding: 40px 1.5rem 0; margin-top: 40px; }

    .article-page__hero { height: 260px; }

    .article-page__related-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 0 16px;
    }

    .article-page__content h2 { font-size: 22px; line-height: 30px; }
    .article-page__content p,
    .article-page__content ul,
    .article-page__content ol { font-size: 13px; }
  }
/* END_SECTION:article-page */

/* START_SECTION:bestsellers-products (INDEX:4) */
.bestsellers {
    background-color: var(--bestsellers-bg);
    color: var(--bestsellers-text);
    padding: 64px 0;
  }

  /* ── Header ── */
  .bestsellers__header {
    text-align: center;
    margin-bottom: 2.5rem;
    padding: 0 1.5rem;
  }

  .bestsellers__subheading {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin: 0 0 8px;
    opacity: 1;
  }

  .bestsellers__heading {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 40px;
    line-height: 52px;
    margin: 0 0 48px;
    letter-spacing: 0;
  }

  /* ── Slider outer wrapper ── */
  .bestsellers__slider-outer {
    position: relative;
    padding: 0 4rem;
    max-width: 1300px;
    margin: 0 auto;
  }

  /* ── Cards ── */
  .bestsellers__slide {
    padding: 0 12px;
  }

  .bestsellers__card {
    display: block;
    text-decoration: none;
    color: inherit;
  }

  .bestsellers__image-wrap {
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #f0ede9;
  }

  .bestsellers__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
  }

  .bestsellers__card:hover .bestsellers__image {
    transform: scale(1.03);
  }

  .bestsellers__image--placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .bestsellers__info {
    padding: 16px 0 24px;
    text-align: center;
  }

  .bestsellers__product-title {
    font-family: 'ivyjournal', sans-serif;
    font-size: 17px;
    font-weight: 400;
    margin: 0 0 8px;
    color: #2A2926;
  }

  .bestsellers__product-price {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 500;
    margin: 0;
    color: #6B6963;
  }

  .bestsellers__price--compare {
    opacity: 0.5;
    text-decoration: line-through;
    margin-right: 4px;
  }

  /* ── Arrows ── */
  .bestsellers__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(calc(-50% - 2rem));
    z-index: 2;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.5rem;
    color: var(--bestsellers-text);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s;
  }

  .bestsellers__arrow:hover {
    opacity: 0.5;
  }

  .bestsellers__arrow--prev { left: 0.5rem; }
  .bestsellers__arrow--next { right: 0.5rem; }

  /* ── Slick dots → styled as bars ── */
  .bestsellers__slider .slick-dots {
    position: relative;
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    list-style: none;
    margin: 1.75rem 0 0;
    padding: 0;
    bottom: auto;
  }

  .bestsellers__slider .slick-dots li {
    display: block;
    width: 100%;
    height: 2px;
    margin: 0;
    padding: 0 24px;
    margin: 0 -12px;
  }

  .bestsellers__slider .slick-dots li button {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    font-size: 0;
    background: #ccc;
    border: none;
    cursor: pointer;
    transition: background 0.25s;
  }

  .bestsellers__slider .slick-dots li button::before {
    display: none;
  }

  .bestsellers__slider .slick-dots li.slick-active button {
    background: var(--bestsellers-accent);
  }

  /* ── Footer CTA ── */
  .bestsellers__footer {
    text-align: center;
    margin-top: 52px;
    padding: 0 1.5rem;
  }

  .bestsellers__cta {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 1.4;
    text-transform: uppercase;
    text-decoration: none;
    color: #000000;
    border-bottom: 1px solid #000000;
    padding-bottom: 2px;
    display: inline-block;
    transition: opacity 0.2s;
  }

  .bestsellers__cta:hover {
    opacity: 0.55;
  }

  /* ── Responsive ── */
  @media screen and (max-width: 989px) {
    .bestsellers__slider-outer {
      padding: 0 3rem;
    }
  }

  @media screen and (max-width: 749px) {
    .bestsellers {
      padding: 3.5rem 0 3rem;
    }

    .bestsellers__slider-outer {
      padding: 0 1.25rem;
    }

    .bestsellers__slide {
      padding: 0 8px;
    }

    .bestsellers__arrow {
      display: none !important;
    }

    .bestsellers__slider .slick-dots li {
      width: 32px;
    }
  }
/* END_SECTION:bestsellers-products */

/* START_SECTION:bestsellers-slider (INDEX:5) */
.bestsellers {
    background-color: var(--bestsellers-bg);
    color: var(--bestsellers-text);
    padding: 64px 0;
  }

  /* ── Header ── */
  .bestsellers__header {
    text-align: center;
    margin-bottom: 2.5rem;
    padding: 0 1.5rem;
  }

  .bestsellers__subheading {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin: 0 0 8px;
    opacity: 1;
  }

  .bestsellers__heading {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 40px;
    line-height: 52px;
    margin: 0 0 48px;
    letter-spacing: 0;
  }

  /* ── Slider outer wrapper ── */
  .bestsellers__slider-outer {
    position: relative;
    padding: 0 4rem;
    max-width: 1300px;
    margin: 0 auto;
  }

  /* ── Cards ── */
  .bestsellers__slide {
    padding: 0 12px;
  }

  .bestsellers__card {
    display: block;
    text-decoration: none;
    color: inherit;
  }

  .bestsellers__image-wrap {
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #f0ede9;
  }

  .bestsellers__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
  }

  .bestsellers__card:hover .bestsellers__image {
    transform: scale(1.03);
  }

  .bestsellers__image--placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .bestsellers__info {
    padding: 16px 0 24px;
    text-align: center;
  }

  .bestsellers__product-title {
    font-family: 'ivyjournal', sans-serif;
    font-size: 17px;
    font-weight: 400;
    margin: 0 0 8px;
    color: #2A2926;
  }

  .bestsellers__product-price {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 500;
    margin: 0;
    color: #6B6963;
  }

  .bestsellers__price--compare {
    opacity: 0.5;
    text-decoration: line-through;
    margin-right: 4px;
  }

  /* ── Arrows ── */
  .bestsellers__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(calc(-50% - 2rem));
    z-index: 2;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.5rem;
    color: var(--bestsellers-text);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s;
  }

  .bestsellers__arrow:hover {
    opacity: 0.5;
  }

  .bestsellers__arrow--prev { left: 0.5rem; }
  .bestsellers__arrow--next { right: 0.5rem; }

  /* ── Slick dots → styled as bars ── */
  .bestsellers__slider .slick-dots {
    position: relative;
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    list-style: none;
    margin: 1.75rem 0 0;
    padding: 0;
    bottom: auto;
  }

  .bestsellers__slider .slick-dots li {
    display: block;
    width: 100%;
    height: 2px;
    margin: 0;
    padding: 0 24px;
    margin: 0 -12px;
  }

  .bestsellers__slider .slick-dots li button {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    font-size: 0;
    background: #ccc;
    border: none;
    cursor: pointer;
    transition: background 0.25s;
  }

  .bestsellers__slider .slick-dots li button::before {
    display: none;
  }

  .bestsellers__slider .slick-dots li.slick-active button {
    background: var(--bestsellers-accent);
  }

  /* ── Footer CTA ── */
  .bestsellers__footer {
    text-align: center;
    margin-top: 52px;
    padding: 0 1.5rem;
  }

  .bestsellers__cta {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 1.4;
    text-transform: uppercase;
    text-decoration: none;
    color: #000000;
    border-bottom: 1px solid #000000;
    padding-bottom: 2px;
    display: inline-block;
    transition: opacity 0.2s;
  }

  .bestsellers__cta:hover {
    opacity: 0.55;
  }

  /* ── Responsive ── */
  @media screen and (max-width: 989px) {
    .bestsellers__slider-outer {
      padding: 0 3rem;
    }
  }

  @media screen and (max-width: 749px) {
    .bestsellers {
      padding: 3.5rem 0 3rem;
    }

    .bestsellers__slider-outer {
      padding: 0 1.25rem;
    }

    .bestsellers__slide {
      padding: 0 8px;
    }

    .bestsellers__arrow {
      display: none !important;
    }

    .bestsellers__slider .slick-dots li {
      width: 32px;
    }
  }
/* END_SECTION:bestsellers-slider */

/* START_SECTION:blog-list (INDEX:6) */
/* ══════════════════════════════════
     BASE
  ══════════════════════════════════ */
  .blog-list {
    background-color: var(--bl-bg);
    color: var(--bl-text);
    padding-bottom: var(--bl-pb);
  }

  /* ══════════════════════════════════
     HEADER
  ══════════════════════════════════ */
  .blog-list__header-block {
    background-color: var(--bl-header-bg);
    background-image: var(--bl-header-img, none);
    background-size: cover;
    background-position: center;
    padding: 130px 5rem 80px;
    position: relative;
    overflow: hidden;
    text-align: center;
    border-bottom: 2px solid #8E7C6E!important;
  }

  .blog-list__header-overlay {
    position: absolute;
    inset: 0;
    background-color: var(--bl-header-overlay);
    pointer-events: none;
  }

  .blog-list__header-content {
    position: relative;
    z-index: 1;
  }

  .blog-list__eyebrow {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    margin: 0 0 12px;
    color: #685A4F;
  }

  .blog-list__title {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 56px;
    font-style: normal;
    font-weight: 300;
    line-height: 70px;
    margin: 0;
    color: #2D3648;
  }

  /* ══════════════════════════════════
     BODY
  ══════════════════════════════════ */
  .blog-list__body {
    padding: 64px 5rem 0;
  }

  /* ══════════════════════════════════
     GRID — 3 columnas con stagger
     Columna 1 (izq): odd  → flush top
     Columna 2 (centro): even → bajada
     Columna 3 (der): odd  → flush top
     El patrón visual del diseño usa 3 cols
     donde la del centro va desplazada abajo
  ══════════════════════════════════ */
  .blog-list__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 96px;
    padding-bottom: 0;
  }

  /* ── Cards ── */
  .blog-list__item {
    margin-bottom: 64px;
  }

  /* Odd (cols 1 y 3): flush al top */
  .blog-list__item--odd .blog-list__card {
    padding-top: 0;
  }

  /* Even (col 2): desplazada hacia abajo */
  .blog-list__item--even .blog-list__card {
    padding-top: var(--bl-stagger);
  }

  .blog-list__card {
    display: flex;
    flex-direction: column;
  }

  /* ── Número ── */
  .blog-list__number {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 48px;
    line-height: 60px;
    color: #8E7C6E;
    margin: 0 0 12px;
    letter-spacing: 0;
  }

  /* ── Imagen ── */
  .blog-list__img-link {
    display: block;
    overflow: hidden;
  }

  .blog-list__img-wrap {
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #e8e3db;
  }

  .blog-list__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.55s ease;
  }

  .blog-list__img-link:hover .blog-list__img {
    transform: scale(1.04);
  }

  .blog-list__img--placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* ── Meta ── */
  .blog-list__meta {
    padding-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  .blog-list__date {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    margin: 0;
    color: #685A4F;
    opacity: 0.8;
  }

  .blog-list__article-title {
    font-family: 'ivyjournal', serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 22px;
    margin: 0;
    text-decoration: none;
    color: var(--bl-text);
    transition: opacity 0.2s;
  }

  .blog-list__article-title:hover { opacity: 0.6; }

  /* ── Empty ── */
  .blog-list__empty {
    text-align: center;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    color: var(--bl-muted);
    padding: 80px 0;
  }

  /* ══════════════════════════════════
     PAGINATION
  ══════════════════════════════════ */
  .blog-list__pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding-top: 48px;
    border-top: 1px solid rgba(0,0,0,0.08);
    margin-top: 16px;
  }

  .blog-list__page-num {
    font-family: 'poppins', sans-serif;
    font-size: 13px;
    font-weight: 400;
    color: var(--bl-text);
    text-decoration: none;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid transparent;
    transition: background 0.2s;
  }

  .blog-list__page-num:hover { background: rgba(0,0,0,0.06); }
  .blog-list__page-num--active { border-color: var(--bl-text); font-weight: 600; }
  .blog-list__page-num--ellipsis { cursor: default; }

  .blog-list__page-btn {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid var(--bl-text);
    color: var(--bl-text);
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
  }

  .blog-list__page-btn:hover {
    background: var(--bl-text);
    color: var(--bl-bg);
  }

  /* ══════════════════════════════════
     RESPONSIVE
  ══════════════════════════════════ */
  @media screen and (max-width: 989px) {
    .blog-list__header-block { padding: 130px 3rem 44px; }
    .blog-list__body { padding: 48px 3rem 0; }

    .blog-list__grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 0 32px;
    }

    /* En 2 cols: col 1 = odd (arriba), col 2 = even (abajo) */
    .blog-list__item--odd .blog-list__card { padding-top: 0; }
    .blog-list__item--even .blog-list__card { padding-top: var(--bl-stagger); }
  }

  @media screen and (max-width: 749px) {
    .blog-list__header-block { padding: 130px 1.5rem 36px; }
    .blog-list__body { padding: 36px 1.5rem 0; }

    .blog-list__grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 0 20px;
    }

    /* Disable stagger on mobile */
    .blog-list__item--even .blog-list__card { padding-top: 0; }
    .blog-list__grid { padding-bottom: 0; }

    .blog-list__number { font-size: 32px; line-height: 40px; }
    .blog-list__article-title { font-size: 14px; }
    .blog-list__item { margin-bottom: 40px; }
  }
/* END_SECTION:blog-list */

/* START_SECTION:collection-heatblued (INDEX:15) */
/* ── Layout ── */
  .coll-hb {
    background: #fff;
    color: #111;
  }

  .coll-hb .page-width {
    max-width: 1400px;
    margin: 0 auto;
    padding-left: 4rem;
    padding-right: 4rem;
  }

  @media (max-width: 749px) {
    .coll-hb .page-width {
      padding-left: 1.6rem;
      padding-right: 1.6rem;
    }
  }

  /* ── Header ── */
  .coll-hb__header {
    padding-top: 5rem;
    padding-bottom: 3.2rem;
  }

  .coll-hb__title {
    font-size: clamp(2.8rem, 4vw, 4.8rem);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: -0.01em;
    margin: 0 0 1.6rem;
    max-width: 560px;
  }

  .coll-hb__description {
    font-size: 1.4rem;
    line-height: 1.7;
    color: #555;
    max-width: 540px;
    margin: 0;
  }

  .coll-hb__description p {
    margin: 0;
  }

  /* ── Toolbar: style the Dawn drawer facets to match the design ── */
  .coll-hb__toolbar {
    padding-top: 2rem;
    padding-bottom: 0;
  }

  /* Re-skin the drawer trigger buttons */
  .coll-hb__facets-wrapper .facets-container-drawer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid #e0ddd9;
    border-bottom: 1px solid #e0ddd9;
    padding: 1.2rem 0;
    gap: 1.2rem;
  }

  /* Filter button */
  .coll-hb__facets-wrapper .facets__open {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.8rem 1.6rem;
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    border: 1px solid #c9c6c2;
    border-radius: 2rem;
    background: #fff;
    color: #111;
    cursor: pointer;
    transition: border-color 0.2s ease;
    text-decoration: none;
  }

  .coll-hb__facets-wrapper .facets__open:hover {
    border-color: #111;
  }

  /* Sort button */
  .coll-hb__facets-wrapper .facets__sort {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.8rem 1.6rem;
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    border: 1px solid #c9c6c2;
    border-radius: 2rem;
    background: #fff;
    color: #111;
  }

  /* Active filter count badge */
  .coll-hb__facets-wrapper .facets__count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.8rem;
    height: 1.8rem;
    padding: 0 0.4rem;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 50%;
    background: #111;
    color: #fff;
  }

  /* ── Product grid ── */
  .coll-hb__grid {
    position: relative;
    display: grid;
    grid-template-columns: repeat(var(--cols-desktop, 3), 1fr);
    gap: 2.4rem 2rem;
    padding-top: 3.2rem;
    padding-bottom: 6rem;
  }

  @media (max-width: 989px) {
    .coll-hb__grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 2rem 1.6rem;
    }
  }

  @media (max-width: 749px) {
    .coll-hb__grid {
      grid-template-columns: repeat(var(--cols-mobile, 2), 1fr);
      gap: 2rem 1.2rem;
    }
  }

  /* ── Product card ── */
  .coll-hb__card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
  }

  .coll-hb__card-image {
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #f5f5f3;
    margin-bottom: 1.6rem;
  }

  .coll-hb__card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform 0.5s ease;
  }

  .coll-hb__card:hover .coll-hb__card-image img {
    transform: scale(1.04);
  }

  .coll-hb__placeholder {
    width: 100%;
    height: 100%;
    display: block;
    background: #eeeee9;
  }

  .coll-hb__card-info {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }

  .coll-hb__card-title {
    font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin: 0;
  }

  .coll-hb__card-desc {
    font-size: 1.3rem;
    color: #666;
    line-height: 1.5;
    margin: 0;
  }

  .coll-hb__card-price {
    font-size: 1.3rem;
    font-weight: 500;
    color: #1a237e;
    margin-top: 0.2rem;
  }

  /* ── Empty state ── */
  .coll-hb__empty {
    padding: 6rem 0;
    font-size: 1.5rem;
    color: #555;
  }
/* END_SECTION:collection-heatblued */

/* START_SECTION:contact-page (INDEX:18) */
/* ══════════════════════════════════
     BASE
  ══════════════════════════════════ */
  .contact-section {
    position: relative;
    padding: 130px 0 140px;
    overflow: hidden;
  }

  /* Background image decorativa */
  .contact__bg-image {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.35;
    pointer-events: none;
    z-index: 0;
  }

  /* Contenedor principal */
  .contact__container {
    position: relative;
    z-index: 1;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 5rem;
    display: flex;
    flex-direction: column;
    gap: 50px;
  }

  /* ══════════════════════════════════
     HEADER
  ══════════════════════════════════ */
  .contact__label {
    display: block;
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #685A4F;
    margin-bottom: 8px;
  }

  .contact__heading {
    font-family: 'ivyjournal', serif;
    font-size: 56px;
    line-height: 70px;
    font-weight: 300;
    color: #2e2a27;
    margin: 0 0 36px;
    letter-spacing: 0;
    max-width: 560px;
  }

  .contact__email {
    display: inline-block;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    color: #000000;
    text-decoration: none;
    border-bottom: 1px solid #000000;
    padding-bottom: 2px;
    transition: opacity 0.2s;
  }

  .contact__email:hover { opacity: 0.55; }

  /* ══════════════════════════════════
     FORM WRAPPER — alineado derecha
  ══════════════════════════════════ */
  .contact__form-wrapper {
    width: 70%;
    margin-left: auto;
  }

  .contact__form {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .contact__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    margin-bottom: 28px;
  }

  .contact__row--full {
    grid-template-columns: 1fr;
  }

  /* ══════════════════════════════════
     FIELDS — floating label
  ══════════════════════════════════ */
  .contact__field {
    position: relative;
  }

  .contact__field label {
    position: absolute;
    top: 12px;
    left: 0;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 500;
    color: #221E1E;
    letter-spacing: 0;
    pointer-events: none;
    transition: all 0.25s ease;
    transform-origin: left top;
  }

  .contact__field input,
  .contact__field textarea {
    width: 100%;
    border: none;
    border-bottom: 1px solid #221E1E;
    background: transparent;
    padding: 12px 0 10px;
    font-family: 'poppins', sans-serif;
    font-size: 13px;
    font-weight: 300;
    color: #221E1E;
    outline: none;
    transition: border-color 0.3s ease;
    border-radius: 0;
    -webkit-appearance: none;
    appearance: none;
  }

  .contact__field textarea {
    resize: vertical;
    min-height: 60px;
  }

  .contact__field input:focus-visible,
  .contact__field textarea:focus-visible{
        box-shadow: none!important;
  }

  /* Floating label al focus o con valor */
  .contact__field input:focus + label,
  .contact__field input:not(:placeholder-shown) + label,
  .contact__field textarea:focus + label,
  .contact__field textarea:not(:placeholder-shown) + label {
    transform: translateY(-20px) scale(0.82);
    color: #b3a9a0;
  }

  /* Línea animada al focus */
  .contact__field-line {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    background-color: #2D3648;
    transition: width 0.35s ease;
  }

  .contact__field input:focus ~ .contact__field-line,
  .contact__field textarea:focus ~ .contact__field-line {
    width: 100%;
  }

  /* ══════════════════════════════════
     SUBMIT
  ══════════════════════════════════ */
  .contact__submit-row {
    display: flex;
    justify-content: flex-end;
    margin-top: 8px;
  }

  .contact__submit {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 1.4px;
    color: #ffffff;
    background-color: #221E1E;
    border: none;
    padding: 10px 28px;
    cursor: pointer;
    transition: opacity 0.2s;
  }

  .contact__submit:hover { opacity: 0.8; }

  /* ══════════════════════════════════
     MENSAJES
  ══════════════════════════════════ */
  .contact__success {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 300;
    color: #2D3648;
    padding: 0 0 24px;
    margin: 0;
  }

  .contact__errors {
    font-family: 'poppins', sans-serif;
    font-size: 13px;
    color: #c0392b;
    margin-bottom: 20px;
  }

  /* ══════════════════════════════════
     RESPONSIVE
  ══════════════════════════════════ */
  @media screen and (max-width: 989px) {
    .contact__container { padding: 0 3rem; gap: 40px; }
    .contact__form-wrapper { width: 80%; }
  }

  @media screen and (max-width: 749px) {
    .contact-section { padding: 130px 0 70px; }
    .contact__container { padding: 0 1.5rem; gap: 32px; }
    .contact__form-wrapper { width: 100%; }
    .contact__row { grid-template-columns: 1fr; gap: 28px; }
    .contact__heading { margin-bottom: 20px; }
  }
/* END_SECTION:contact-page */

/* START_SECTION:craft-statement (INDEX:19) */
.titlecraft{
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 5rem;
  }
  .craft-stmt {
    position: relative;
    background-color: var(--craft-bg);
    color: var(--craft-text);
    overflow: hidden;
    padding: var(--craft-pt) 0 var(--craft-pb);
  }

  /* ── Background pattern ── */
  .craft-stmt__bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: var(--craft-pattern-opacity);
  }

  .craft-stmt__bg-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  /* ── Inner grid ── */
  .craft-stmt__inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
    min-height: auto;
    max-width: 1300px;
    margin: 110px auto 0;
    padding: 0 5rem;
    gap: 0 4rem;
  }

  /* ── Left col: aligned to start ── */
  .craft-stmt__left {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding-top: 1rem;
  }

  .craft-stmt__eyebrow {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #685A4F;
    margin: 0 0 8px;
  }

  .craft-stmt__heading {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 48px;
    line-height: 60px;
    margin: 0;
    letter-spacing: 0;
    max-width: 606px;
    color: #221E1E;
  }

  /* ── Right col: aligned to end ── */
  .craft-stmt__right {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding-bottom: 1.5rem;
  }

  .craft-stmt__promises-wrap {
    max-width: 460px;
  }

  .craft-stmt__promises-label {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 16px;
    font-weight: 500;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #685A4F;
    margin: 0 0 16px;
  }

  .craft-stmt__promises {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
  }

  .craft-stmt__promise {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    color: #2D3648;
  }

  .craft-stmt__promise-dash {
    flex-shrink: 0;
    opacity: 0.6;
  }

  /* ── Responsive ── */
  @media screen and (max-width: 989px) {
    .craft-stmt__inner {
      padding: 0 3rem;
      gap: 0 2.5rem;
    }

    .craft-stmt__heading {
      font-size: clamp(1.75rem, 3.5vw, 2.5rem);
    }
  }

  @media screen and (max-width: 749px) {
    .titlecraft {
        max-width: 1300px;
        margin: 0 auto;
        padding: 0 1.5rem;
    }
    .craft-stmt {
      padding-top: max(var(--craft-pt), 3rem);
      padding-bottom: max(var(--craft-pb), 3rem);
    }

    .craft-stmt__inner {
      grid-template-columns: 1fr;
      grid-template-rows: auto auto;
      min-height: unset;
      padding: 0 1.5rem;
      gap: 3rem 0;
      margin-top: 0;
    }

    .craft-stmt__left {
      padding-top: 0;
    }

    .craft-stmt__right {
      justify-content: flex-start;
      padding-bottom: 0;
    }

    .craft-stmt__promises-wrap {
      max-width: 100%;
    }

    .craft-stmt__heading {
      font-size: clamp(1.9rem, 7vw, 2.4rem);
    }
  }
/* END_SECTION:craft-statement */

/* START_SECTION:custom-page (INDEX:21) */
/* ══════════════════════════════════
     BASE
  ══════════════════════════════════ */
  .custom-page {
    background-color: var(--cp-bg);
    color: var(--cp-text);
    padding-bottom: 64px;
  }

  /* ══════════════════════════════════
     HEADER BLOCK
  ══════════════════════════════════ */
  .custom-page__header-block {
    background-color: var(--cp-header-bg);
    background-image: var(--cp-header-img, none);
    background-size: cover;
    background-position: center;
    padding: 130px 5rem 64px;
    position: relative;
    overflow: hidden;
    text-align: center;
    border-bottom: 2px solid #B3A092;
  }

  .custom-page__header-overlay {
    position: absolute;
    inset: 0;
    background-color: var(--cp-header-overlay);
    pointer-events: none;
  }

  .custom-page__header-content {
    position: relative;
    z-index: 1;
  }

  .custom-page__eyebrow {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    margin: 0 0 8px;
    color: #685A4F;
  }

  .custom-page__title {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 56px;
    line-height: 70px;
    margin: 0;
    letter-spacing: 0;
    color: #2e2a27;
  }

  /* ══════════════════════════════════
     CONTENT BODY
  ══════════════════════════════════ */
  .custom-page__body {
    padding: 64px 5rem 0;
    display: flex;
    justify-content: center;
  }

  .custom-page__content {
    width: 100%;
    max-width: var(--cp-content-width);
  }

  /* ── Rich text (rte) styles ── */
  .custom-page__content h1,
  .custom-page__content h2,
  .custom-page__content h3,
  .custom-page__content h4,
  .custom-page__content h5,
  .custom-page__content h6 {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    line-height: 1.2;
    margin: 2.5em 0 0.6em;
    letter-spacing: -0.01em;
    color: var(--cp-text);
  }

  .custom-page__content h2 { font-size: 32px; line-height: 38px; margin: 64px 0 24px;}
  .custom-page__content h2:first-child{margin-top: 0!important;}

  /* First heading after opening — remove top margin */
  .custom-page__content > h2:first-child,
  .custom-page__content > h3:first-child {
    margin-top: 0;
  }

  .custom-page__content p {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 22px;
    color: #000;
    margin: 0 0 1.2em;
  }

  .custom-page__content a {
    color: var(--cp-text);
    text-underline-offset: 3px;
    transition: opacity 0.2s;
  }

  .custom-page__content a:hover { opacity: 0.6; }

  .custom-page__content ul,
  .custom-page__content ol {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.85;
    padding-left: 1.5em;
    margin: 0 0 1.2em;
    color: var(--cp-text);
  }

  .custom-page__content li { margin-bottom: 0.4em; }

  .custom-page__content hr {
    border: none;
    border-top: 1px solid rgba(0,0,0,0.1);
    margin: 2.5em 0;
  }

  .custom-page__content blockquote {
    border-left: 2px solid var(--cp-muted);
    margin: 2em 0;
    padding: 0.5em 0 0.5em 1.5em;
    font-style: italic;
    color: var(--cp-muted);
  }

  .custom-page__content strong { font-weight: 500; }
  .custom-page__content em { font-style: italic; }

  .custom-page__content img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 2em auto;
  }

  .custom-page__content table {
    width: 100%;
    border-collapse: collapse;
    font-family: 'poppins', sans-serif;
    font-size: 13px;
    margin: 2em 0;
  }

  .custom-page__content th,
  .custom-page__content td {
    padding: 10px 14px;
    border: 1px solid rgba(0,0,0,0.1);
    text-align: left;
  }

  .custom-page__content th {
    font-weight: 500;
    background: rgba(0,0,0,0.04);
  }

  /* ══════════════════════════════════
     RESPONSIVE
  ══════════════════════════════════ */
  @media screen and (max-width: 989px) {
    .custom-page__header-block { padding: 130px 3rem 40px; }
    .custom-page__body { padding: 48px 3rem 0; }
  }

  @media screen and (max-width: 749px) {
    .custom-page__header-block { padding: 130px 1.5rem 36px; }
    .custom-page__body { padding: 40px 1.5rem 0; }
    .custom-page__content h2 { font-size: 1.4rem; }
    .custom-page__content p,
    .custom-page__content ul,
    .custom-page__content ol { font-size: 13px; }
  }
/* END_SECTION:custom-page */

/* START_SECTION:faq-page (INDEX:23) */
/* ══════════════════════════════════
     BASE
  ══════════════════════════════════ */
  .faq-page {
    background-color: var(--faq-bg);
    color: var(--faq-text);
    padding-bottom: 112px;
  }

  /* ══════════════════════════════════
     HEADER — alineado a la izquierda
  ══════════════════════════════════ */
  .faq-page__header {
    background-color: var(--faq-header-bg);
    background-image: var(--faq-header-img, none);
    background-size: cover;
    background-position: center;
    padding: 130px 5rem 64px;
    position: relative;
    overflow: hidden;
    border-bottom: 2px solid #685A4F;
  }

  .faq-page__header-overlay {
    position: absolute;
    inset: 0;
    background-color: var(--faq-header-overlay);
    pointer-events: none;
  }

  .faq-page__header-content {
    position: relative;
    z-index: 1;
    max-width: 560px;
  }

  .faq-page__eyebrow {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    margin: 0 0 8px;
    color: #685A4F;
  }

  .faq-page__title {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 56px;
    line-height: 70px;
    margin: 0;
    letter-spacing: 0;
    color: #2e2a27;
  }

  /* ══════════════════════════════════
     BODY — 30% espacio izq, 70% contenido
  ══════════════════════════════════ */
  .faq-page__body {
    padding: 48px 5rem 0;
    display: grid;
    grid-template-columns: 30% 70%;
    gap: 0;
  }

  .faq-page__list {
    grid-column: 2;
  }

  .faq-page__footer {
    grid-column: 2;
  }

  /* ══════════════════════════════════
     ACCORDION LIST
  ══════════════════════════════════ */
  .faq-page__list {
    display: flex;
    flex-direction: column;
    grid-column: 2;
  }

  /* ── Item ── */
  .faq-page__item {
    border-bottom: 1px solid var(--faq-border);
  }

  .faq-page__item:first-child {
    border-top: 1px solid var(--faq-border);
  }

  /* ── Question button ── */
  .faq-page__question {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    background: none;
    border: none;
    cursor: pointer;
    padding: 24px 0;
    text-align: left;
    color: var(--faq-text);
  }

  .faq-page__question-text {
    font-family: 'poppins', sans-serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 20px;
    color: #221E1E;
  }

  /* ── Chevron icon ── */
  .faq-page__icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    color: var(--faq-muted);
    transition: transform 0.3s ease;
  }

  .faq-page__item--open .faq-page__icon {
    transform: rotate(180deg);
  }

  /* ── Answer panel ── */
  .faq-page__answer {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.3s ease;
  }

  /* When JS removes hidden, the transition handles the reveal */
  .faq-page__answer:not([hidden]) {
    /* max-height set by JS */
  }

  .faq-page__answer-inner {
    padding: 0 3rem 16px 0;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 22px;
    color: #221E1E;
  }

  .faq-page__answer-inner p {
    margin: 0 0 1em;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 22px;
    color: var(--faq-muted);
  }

  .faq-page__answer-inner p:last-child { margin-bottom: 0; }

  .faq-page__answer-inner a {
    color: var(--faq-text);
    text-underline-offset: 3px;
    transition: opacity 0.2s;
  }

  .faq-page__answer-inner a:hover { opacity: 0.6; }

  /* ══════════════════════════════════
     FOOTER CTA
  ══════════════════════════════════ */
  .faq-page__footer {
    display: block;
    text-align: right;
    margin-top: 64px;
    padding-top: 0;
  }

  .faq-page__cta-note {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
    color: #221E1E;
    margin: 0 0 16px;
  }

  .faq-page__cta-btn {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 1.4px;
    text-decoration: none;
    color: #FAFAFA;
    background: var(--faq-btn-bg);
    padding: 8px 32px;
    display: inline-block;
    transition: opacity 0.2s;
  }

  .faq-page__cta-btn:hover { opacity: 0.8; }

  /* ══════════════════════════════════
     RESPONSIVE
  ══════════════════════════════════ */
  @media screen and (max-width: 989px) {
    .faq-page__header { padding: 130px 3rem 40px; }
    .faq-page__body {
      padding: 40px 3rem 0;
      grid-template-columns: 1fr;
    }
    .faq-page__list,
    .faq-page__footer { grid-column: 1; }
  }

  @media screen and (max-width: 749px) {
    .faq-page__header { padding: 130px 1.5rem 32px; }
    .faq-page__body {
      padding: 32px 1.5rem 0;
      grid-template-columns: 1fr;
    }
    .faq-page__list,
    .faq-page__footer { grid-column: 1; }

    .faq-page__question { padding: 20px 0; }
    .faq-page__question-text { font-size: 13px; }
    .faq-page__answer-inner { padding-right: 1rem; font-size: 13px; }

    .faq-page__footer {
      flex-direction: column;
      align-items: flex-end;
      gap: 1rem;
    }
  }
/* END_SECTION:faq-page */

/* START_SECTION:featured-blog-posts (INDEX:24) */
/* ────────────────────────────────────────────
     SECTION WRAPPER
     Uses a fixed-size left column + flex-1 right
  ──────────────────────────────────────────── */

  /* overflow-x: clip corta el bleed horizontal sin romper
     position:sticky del aside ni overflow:visible del slick */
  .section-featured-blog-posts {
    overflow-x: clip;
  }

  .fbp {
    display: flex;
    align-items: stretch;
    background-color: var(--fbp-bg);
    color: var(--fbp-text);
    padding: var(--fbp-pt) 0 var(--fbp-pb);
    position: relative;
  }

  /* ── Aside wrapper: fixed width, clips nothing ── */
  .fbp__aside-wrap {
    flex: 0 0 300px;
    position: relative;
    z-index: 2;
    /* Prevent the wrapper from scrolling with the slider */
    align-self: stretch;
  }

  /* ── Aside inner: sticky so it stays visible on swipe ── */
  .fbp__aside {
    position: sticky;
    top: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding: 0 2.5rem 0 5rem;
    gap: 1rem;
    background-color: var(--fbp-bg); /* cover slider bleed */
    z-index: 2;
  }

  .fbp__eyebrow {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #685A4F;
    margin: 0 0 8px;
  }

  .fbp__heading {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 40px;
    line-height: 52px;
    letter-spacing: 0;
    margin: 0 0 32px;
  }

  /* ── Arrows ── */
  .fbp__nav {
  flex-direction: column;
  gap: 4px;
  align-items: center;
  position: absolute;
  right: -20px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
}

.fbp__arrow {
  width: 34px;
  height: 34px;
  border: none;
  border-radius: 50%;
  background: var(--fbp-bg);
  box-shadow: 0 1px 4px rgba(0,0,0,0.12);
}

  .fbp__arrow:hover {
    background: var(--fbp-text);
    color: var(--fbp-bg);
  }

  .fbp__arrow.slick-disabled {
    opacity: 0.3;
    pointer-events: none;
  }

  /* ── See more btn ── */
  .fbp__see-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 0;
    align-self: flex-start;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 0.04em;
    text-decoration: none;
    color: #221E1E;
    border: 1px solid #221E1E;
    padding: 8px 32px;
    transition: background 0.2s, color 0.2s;
  }

  .fbp__see-more:hover {
    background: var(--fbp-text);
    color: var(--fbp-bg);
  }

  .fbp__aside-wrap {
  position: relative; /* ← agrega esto */
}

.fbp__nav {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: center;
  position: absolute;
  right: -17px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
}

.fbp__arrow {
  width: 34px;
  height: 34px;
  border: none;
  border-radius: 50%;
  background: var(--fbp-bg);
  box-shadow: 0 1px 4px rgba(0,0,0,0.12);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--fbp-text);
  padding: 0;
  transition: background 0.2s, color 0.2s;
}

  /* ────────────────────────────────────────────
     SLIDER
  ──────────────────────────────────────────── */
  .fbp__slider-outer {
    flex: 1;
    min-width: 0;
    /* Allow slides to bleed out to the right */
    overflow: visible;
  }

  /* Slick track needs extra vertical room for the stagger */
  .fbp__slider .slick-list {
    overflow: visible;
    /* Add bottom padding so even-row cards don't get clipped */
    padding-bottom: 0 !important;
  }

  /* ── Slides ── */
  .fbp__slide {
    padding: 0 32px;
  }

  /* ODD slides (1, 3, 5…): flush to top — no extra padding */
  .fbp__slide--odd .fbp__card {
    padding-top: 0;
  }

  /* EVEN slides (2, 4, 6…): pushed down by stagger amount */
  .fbp__slide--even .fbp__card {
    padding-top: var(--fbp-stagger);
  }

  .fbp__card {
    display: flex;
    flex-direction: column;
  }

  /* ── Number ── */
  .fbp__number {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 48px;
    color: #8E7C6E;
    margin: 0 0 12px;
    line-height: 60px;
    letter-spacing: 0;
  }

  /* ── Image ── */
  .fbp__img-link {
    display: block;
    overflow: hidden;
  }

  .fbp__img-wrap {
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #e8e3db;
  }

  .fbp__img-wrap--placeholder {
    aspect-ratio: 3 / 4;
  }

  .fbp__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.55s ease;
  }

  .fbp__img-link:hover .fbp__img {
    transform: scale(1.04);
  }

  .fbp__img--placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* ── Meta ── */
  .fbp__meta {
    padding-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .fbp__date {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    margin: 0 0 8px;
    opacity: 0.6;
    color: #685A4F;
  }

  .fbp__title {
    font-family: 'ivyjournal', sans-serif;
    font-size: 17px;
    font-weight: 400;
    margin: 0;
    text-decoration: none;
    color: #000000;
    line-height: 20px;
    transition: opacity 0.2s;
  }

  a.fbp__title:hover { opacity: 0.6; }

  /* ────────────────────────────────────────────
     RESPONSIVE
  ──────────────────────────────────────────── */
  @media screen and (max-width: 989px) {
    .fbp__aside-wrap {
      flex: 0 0 200px;
    }
    .fbp__aside {
      padding: 0 2rem 0 3rem;
    }
  }

  @media screen and (max-width: 749px) {
    .fbp {
      flex-direction: column;
      gap: 2rem;
    }

    .fbp__aside-wrap {
      flex: none;
      position: static; /* no sticky on mobile */
    }

    .fbp__aside {
      position: static;
      height: auto;
      flex-direction: row;
      flex-wrap: wrap;
      align-items: center;
      padding: 0 1.5rem;
      gap: 0.75rem 1.5rem;
    }

    .fbp__heading {
      flex: 1 1 100%;
    }

    .fbp__nav {
      margin-top: 0;
      order: 3;
    }

    .fbp__see-more {
      margin-top: 0;
      order: 4;
    }

    .fbp__slider-outer {
      padding: 0 0 0 1.5rem;
    }

    /* Disable stagger on mobile */
    .fbp__slide--even .fbp__card {
      padding-top: 0;
    }

    .fbp__slider .slick-list {
      padding-bottom: 0 !important;
    }
  }
/* END_SECTION:featured-blog-posts */

/* START_SECTION:featured-collections-grid (INDEX:27) */
.feat-col {
    background-color: var(--feat-col-bg);
    color: var(--feat-col-text);
    padding: var(--feat-col-pt) 5rem var(--feat-col-pb);
  }

  /* ── Header ── */
  .feat-col__header {
    text-align: center;
    margin-bottom: 3rem;
  }

  .feat-col__eyebrow {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #685A4F;
    margin: 0 0 8px;
  }

  .feat-col__heading {
    font-family: 'ivyjournal', serif;
    color: #221E1E;
    font-weight: 300;
    font-size: 40px;
    line-height: 52px;
    letter-spacing: 0;
    margin: 0 0 48px;
  }

  /* ── Grid ── */
  .feat-col__grid {
    display: grid;
    gap: 2rem;
    align-items: end;
    max-width: 1300px;
    margin: 0 auto;
  }

  .feat-col__grid--1 { grid-template-columns: 1fr; }
  .feat-col__grid--2 { grid-template-columns: repeat(2, 1fr); }
  .feat-col__grid--3 { grid-template-columns: repeat(3, 1fr); }

  /* ── Card ── */
  .feat-col__card {
    display: flex;
    flex-direction: column;
  }

  .feat-col__img-link {
    display: block;
    overflow: hidden;
  }

  /* Image ratios */
  .feat-col__img-wrap {
    width: 100%;
    overflow: hidden;
  }

  .feat-col__card--3-4  .feat-col__img-wrap { aspect-ratio: 3 / 4; }
  .feat-col__card--2-3  .feat-col__img-wrap { aspect-ratio: 2 / 3; }
  .feat-col__card--4-5  .feat-col__img-wrap { aspect-ratio: 4 / 5; }
  .feat-col__card--1-1  .feat-col__img-wrap { aspect-ratio: 1 / 1; }
  .feat-col__card--16-9 .feat-col__img-wrap { aspect-ratio: 16 / 9; }

  .feat-col__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
  }

  .feat-col__img-link:hover .feat-col__img {
    transform: scale(1.04);
  }

  .feat-col__img--placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* ── Card info ── */
  .feat-col__info {
    padding-top: 16px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.3rem;
  }

  .feat-col__name {
    font-family: 'ivyjournal', sans-serif;
    font-size: 17px;
    line-height: 20px;
    font-weight: 400;
    margin: 0 0 8px;
    color: #2A2926;
  }

  .feat-col__desc {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 300;
    margin: 0 0 16px;
    opacity: 1;
  }

  .feat-col__btn {
    display: inline-block;
    margin-top: 0;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    text-decoration: none;
    color: #000000;
    border-bottom: 1px solid #000000;
    padding-bottom: 1px;
    transition: opacity 0.2s;
  }

  .feat-col__btn:hover { opacity: 0.5; }

  /* ── Responsive ── */
  @media screen and (max-width: 989px) {
    .feat-col {
      padding-left: 3rem;
      padding-right: 3rem;
    }

    .feat-col__grid--3 {
      grid-template-columns: repeat(2, 1fr);
    }

    /* 3rd card full-width on tablet when odd */
    .feat-col__grid--3 .feat-col__card:last-child:nth-child(odd) {
      grid-column: 1 / -1;
      max-width: 50%;
      margin: 0 auto;
    }
  }

  @media screen and (max-width: 749px) {
    .feat-col {
      padding-left: 1.5rem;
      padding-right: 1.5rem;
    }

    .feat-col__grid--2,
    .feat-col__grid--3 {
      grid-template-columns: 1fr;
    }

    .feat-col__grid--3 .feat-col__card:last-child:nth-child(odd) {
      max-width: 100%;
    }

    /* Reset all ratios to a standard portrait on mobile */
    .feat-col__img-wrap {
      aspect-ratio: 4 / 5 !important;
    }
  }
/* END_SECTION:featured-collections-grid */

/* START_SECTION:featured-products-home (INDEX:29) */
.featured-products {
    padding: 6rem 4rem;
    max-width: 1400px;
    margin: 0 auto;
  }

  .featured-products__header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 3.2rem;
    gap: 1.6rem;
  }

  .featured-products__title {
    font-size: clamp(1.8rem, 2.5vw, 2.8rem);
    font-weight: 500;
    letter-spacing: 0.02em;
    margin: 0;
  }

  .featured-products__shop-all {
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    color: inherit;
    white-space: nowrap;
    border-bottom: 1px solid currentColor;
    padding-bottom: 0.1rem;
    transition: opacity 0.2s ease;
  }

  .featured-products__shop-all:hover {
    opacity: 0.6;
  }

  .featured-products__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.4rem;
  }

  .featured-products__card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
  }

  .featured-products__card--placeholder {
    cursor: default;
  }

  .featured-products__card-image {
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #f5f5f3;
    margin-bottom: 1.6rem;
  }

  .featured-products__card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform 0.5s ease;
  }

  .featured-products__card:hover .featured-products__card-image img {
    transform: scale(1.04);
  }

  .featured-products__placeholder {
    width: 100%;
    height: 100%;
    display: block;
    background: #eeeee9;
  }

  .featured-products__card-info {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
  }

  .featured-products__card-title {
    font-size: 1.3rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin: 0;
  }

  .featured-products__card-description {
    font-size: 1.3rem;
    color: #666;
    line-height: 1.5;
    margin: 0;
  }

  .featured-products__card-price {
    font-size: 1.3rem;
    font-weight: 500;
    color: #1a237e;
  }

  @media (max-width: 749px) {
    .featured-products {
      padding: 4rem 1.6rem;
    }

    .featured-products__grid {
      grid-template-columns: 1fr;
      gap: 3.2rem;
    }

    .featured-products__card-image {
      aspect-ratio: 4 / 3;
    }
  }

  @media (min-width: 750px) and (max-width: 989px) {
    .featured-products {
      padding: 5rem 2.4rem;
    }

    .featured-products__grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }
/* END_SECTION:featured-products-home */

/* START_SECTION:footer-info (INDEX:30) */
.finfo {
    position: relative;
    overflow: hidden;
    color: var(--finfo-text);
    padding: var(--finfo-pt) 0 var(--finfo-pb);
  }

  /* ── Background ── */
  .finfo__bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: var(--finfo-pattern-opacity);
  }

  .finfo__bg-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  /* ── Inner layout ── */
  .finfo__inner {
    position: relative;
    z-index: 1;
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 64px;
  }

  /* ── Info columns ── */
  .finfo__columns {
    display: grid;
    width: 100%;
    gap: 2rem;
    text-align: center;
  }

  .finfo__columns--1 { grid-template-columns: 1fr; }
  .finfo__columns--2 { grid-template-columns: repeat(2, 1fr); }
  .finfo__columns--3 { grid-template-columns: repeat(3, 1fr); }
  .finfo__columns--4 { grid-template-columns: repeat(4, 1fr); }

  .finfo__col {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
  }

  .finfo__col-title {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 600;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #FAFAFA;
    margin: 0 0 8px;
  }

  .finfo__col-text {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;;
    font-weight: 300;
    color: #F5F0EA;
    margin: 0;
  }

  .finfo__col-link {
    text-decoration: none;
    transition: opacity 0.2s;
  }

  .finfo__col-link:hover { opacity: 0.7; }

  /* ── Divider ── */
  .finfo__divider {
    width: 100%;
    border: none;
    border-top: 1px solid var(--finfo-border);
    margin: 0;
  }

  /* ── Newsletter area ── */
  .finfo__newsletter {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
    text-align: center;
    width: 100%;
    max-width: 560px;
  }

  .finfo__heading {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 32px;
    line-height: 38px;
    letter-spacing: 0;
    margin: 0 0 16px;
    color: #FAFAFA;
  }

  .finfo__subheading {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 300;
    margin: 0 0 24px;
    color: #FAFAFA;
    opacity: 0.7;
  }

  /* ── Form ── */
  .finfo__form {
    width: 100%;
    margin-top: 0.75rem;
  }

  .finfo__form-row {
    display: flex;
    align-items: flex-end;
    gap: 0;
  }

  .finfo__input-wrap {
    flex: 1;
  }

  .finfo__input {
    width: 100%;
    background: transparent;
    border: none;
    border-bottom: 1px solid var(--finfo-text-muted);
    color: var(--finfo-text);
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 500;
    padding: 12px 0;
    outline: none;
    transition: border-color 0.2s;
    -webkit-appearance: none;
  }
  .finfo__input:focus {outline: none; box-shadow: none;}

  .finfo__input::placeholder {
    color: var(--finfo-text-muted);
    opacity: 1;
  }

  /* autofill fix */
  .finfo__input:-webkit-autofill,
  .finfo__input:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 1000px transparent inset;
    -webkit-text-fill-color: var(--finfo-text);
    transition: background-color 9999s ease;
  }

  .finfo__btn {
    flex-shrink: 0;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 1.4px;
    background: #221E1E;
    color: #FAFAFA;
    border: none;
    padding: 12px 32px;
    cursor: pointer;
    transition: opacity 0.2s;
    white-space: nowrap;
    margin-left: 20px;
  }

  .finfo__btn:hover { opacity: 0.85; }

  .finfo__success {
    font-family: 'poppins', sans-serif;
    font-size: 0.75rem;
    font-weight: 300;
    margin: 0.75rem 0 0;
    color: var(--finfo-text-muted);
    text-align: left;
  }

  .finfo__error {
    font-family: 'poppins', sans-serif;
    font-size: 0.75rem;
    font-weight: 300;
    margin: 0.75rem 0 0;
    color: #e88;
    text-align: left;
  }

  /* ── Responsive ── */
  @media screen and (max-width: 989px) {
    .finfo__inner { padding: 0 3rem; }

    .finfo__columns--4 { grid-template-columns: repeat(2, 1fr); }
    .finfo__columns--3 { grid-template-columns: repeat(3, 1fr); }
  }

  @media screen and (max-width: 749px) {
    .finfo__inner { padding: 0 1.5rem; }

    .finfo__columns--2,
    .finfo__columns--3,
    .finfo__columns--4 {
      grid-template-columns: 1fr;
      gap: 1.25rem;
    }

    .finfo__form-row {
      flex-direction: column;
      align-items: stretch;
      gap: 0.75rem;
    }

    .finfo__btn {
      width: 100%;
      padding: 0.85rem;
      margin: 0;
    }
  }
/* END_SECTION:footer-info */

/* START_SECTION:footer (INDEX:31) */
.hpf {
    background-color: var(--hpf-bg);
    color: var(--hpf-text);
    overflow: hidden;
  }

  /* ── TOP: columnas ── */
  .hpf__top {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 48px;
    padding: 64px 5rem 48px;
  }

  .hpf__col-heading {
    font-family: 'ivyjournal', serif;
    font-size: 17px;
    font-weight: 400;
    color: #CEC0B5;
    margin: 0 0 8px;
  }

  .hpf__links {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .hpf__link {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
    color: rgba(250, 250, 250, 0.70);
    text-decoration: none;
    transition: color 0.2s;
    letter-spacing: 0.02em;
  }

  .hpf__link:hover { color: var(--hpf-text); }

  /* ── BOTTOM BAR ── */
  .hpf__bottom {
    border-top: 1px solid var(--hpf-border);
    padding: 20px 0 20px;
    margin: 0 5rem 48px;
  }

  .hpf__bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
  }

  .footer-payment-icons {
    grid-column: span 3;
    display: flex;
    gap: 10px;
  }
  .footer-payment-icons img{width: 40px; height: auto;}

  .hpf__copyright {
    font-family: 'poppins', sans-serif;
    margin: 0;
    letter-spacing: 0;
    color: rgba(250, 250, 250, 0.70);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
  }

  .hpf__payments {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    list-style: none;
    margin: 0;
    padding: 0;
    align-items: center;
  }

  .hpf__payments .list-payment__item {
    height: 24px;
    display: flex;
    align-items: center;
  }

  .hpf__payments .icon--full-color {
    height: 24px;
    width: auto;
  }

  .hpf__social {
    display: flex;
    align-items: center;
    gap: 16px;
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .hpf__social svg{width: 30px; height: 30px;}

  .hpf__social-link {
    color: var(--hpf-muted);
    display: flex;
    align-items: center;
    transition: color 0.2s;
  }

  .hpf__social-link:hover { color: var(--hpf-text); }

  /* ── DECORATIVE SVG ── */
  .hpf__deco {
    display: block;
    pointer-events: none;
    user-select: none;
    line-height: 0;
  }

  .hpf__deco-svg {
    width: 100%;
    height: auto;
    display: block;
  }

  /* ── Tablet ── */
  @media screen and (max-width: 989px) {
    .hpf__top {
      grid-template-columns: repeat(2, 1fr);
      padding: 48px 3rem 40px;
      gap: 36px;
    }
    .hpf__bottom {
      margin: 0 3rem;
    }
  }

  /* ── Mobile: accordion ── */
  @media screen and (max-width: 749px) {

    .hpf__top {
      display: block;
      padding: 0 1.5rem;
    }

    .hpf__col {
      border-bottom: 1px solid var(--hpf-border);
    }

    .hpf__col:first-child {
      border-top: 1px solid var(--hpf-border);
    }

    /* Heading clickeable con chevron */
    .hpf__col-heading {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin: 0;
      padding: 18px 0;
      font-size: 15px;
      cursor: pointer;
      user-select: none;
    }

    .hpf__col-heading::after {
      content: '';
      width: 8px;
      height: 8px;
      border-right: 1.5px solid var(--hpf-muted);
      border-bottom: 1.5px solid var(--hpf-muted);
      transform: rotate(45deg) translateY(-2px);
      transition: transform 0.25s ease;
      flex-shrink: 0;
    }

    .hpf__col--open .hpf__col-heading::after {
      transform: rotate(-135deg) translateY(-2px);
    }

    /* Links: ocultos por defecto, visibles cuando open */
    .hpf__links {
      max-height: 0 !important;
      overflow: hidden;
      transition: max-height 0.3s ease;
      gap: 0;
    }

    .hpf__links li {
      padding: 9px 0;
    }

    .hpf__col--open .hpf__links {
      max-height: 500px !important;
      padding-bottom: 16px;
    }

    /* Bottom bar */
    .hpf__bottom {
      margin: 0;
      padding: 20px 1.5rem;
    }

    .hpf__bottom-inner {
      flex-direction: column;
      align-items: center;
      gap: 16px;
    }
  }
/* END_SECTION:footer */

/* START_SECTION:founder-bio (INDEX:32) */
.founder-bio {
    background-color: var(--fb-bg);
    padding: var(--fb-pt) 5rem var(--fb-pb);
    position: relative;
    overflow: hidden;
  }

  /* ─── Inner layout ─── */
  .founder-bio__inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 80px;
    max-width: 1120px;
    width: 100%;
    margin: 0 auto;
  }

  /* ─── Content side ─── */
  .founder-bio__label {
    display: block;
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #685A4F;
    margin-bottom: 8px;
  }

  .founder-bio__name {
    font-family: 'ivyjournal', serif;
    font-size: 40px;
    line-height: 52px;
    font-weight: 300;
    color: #2A2926;
    letter-spacing: 0;
    margin: 0 0 24px;
  }

  .founder-bio__divider {
    width: 40px;
    height: 1px;
    background-color: var(--fb-divider);
    margin-bottom: 28px;
  }

  .founder-bio__description {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.8;
    color: var(--fb-muted);
    margin: 0;
    max-width: 420px;
  }

  .founder-bio__description p {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    color: #221E1E;
  }

  .founder-bio__description p:last-child { margin-bottom: 0; }

  .founder-bio__cta {
    display: inline-block;
    margin-top: 12px;
    font-family: 'poppins', sans-serif;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--fb-text);
    border-bottom: 1px solid var(--fb-text);
    padding-bottom: 2px;
    transition: opacity 0.2s;
  }

  .founder-bio__cta:hover { opacity: 0.55; }

  /* ─── Image side ─── */
  .founder-bio__image-wrapper {
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }

  .founder-bio__image-frame {
    position: relative;
    width: 100%;
    max-width: 480px;
  }

  .founder-bio__image {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    aspect-ratio: 4 / 5;
    position: relative;
    z-index: 1;
  }

  .founder-bio__image--placeholder {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 5;
    position: relative;
    z-index: 1;
  }

  /* ─── Responsive: Tablet ─── */
  @media screen and (max-width: 989px) {
    .founder-bio { padding: var(--fb-pt) 3rem var(--fb-pb); }
    .founder-bio__inner { gap: 48px; }
  }

  /* ─── Responsive: Mobile ─── */
  @media screen and (max-width: 749px) {
    .founder-bio { padding: 64px 1.5rem; }

    .founder-bio__inner {
      grid-template-columns: 1fr;
      gap: 40px;
    }

    .founder-bio__image-wrapper { order: -1; }

    .founder-bio__image-frame {
      max-width: 320px;
      margin: 0 auto;
    }

    .founder-bio__image-frame::before {
      top: -8px;
      right: -8px;
    }

    .founder-bio__description {
      max-width: 100%;
    }
  }
/* END_SECTION:founder-bio */

/* START_SECTION:hero-banner (INDEX:34) */
.hero-banner {
    position: relative;
    display: flex;
    align-items: var(--hero-content-justify);
    justify-content: var(--hero-content-align);
    min-height: var(--hero-min-height);
    overflow: hidden;
    color: var(--hero-text-color);
  }

  .hero-banner__media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
  }

  .hero-banner__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  .hero-banner__media--placeholder {
    background: #3a2a1e;
  }

  .hero-banner__placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .hero-banner__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, var(--hero-overlay));
    pointer-events: none;
    z-index: 1;
    opacity: .3;
    display: block!important;
  }

  .hero-banner__content-wrapper {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 6rem 4rem;
  }

  .hero-banner__content {
    max-width: 520px;
  }

  .hero-banner__heading {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 48px;
    line-height: 1.15;
    margin: 0 0 1.25rem;
    letter-spacing: -0.01em;
    color: #FAFAFA;
    text-shadow: 0 0 10px rgba(250, 250, 250, 0.5), 
               0 0 20px rgba(250, 250, 250, 0.2);
  }

  .hero-banner__description {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 22px;
    margin: 0 0 2rem;
    opacity: 0.85;
    max-width: 380px;
    text-shadow: 0 0 10px rgba(250, 250, 250, 0.5), 
               0 0 20px rgba(250, 250, 250, 0.2);
  }

  .hero-banner__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: center;
  }

  .hero-banner__btn {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 1.4px;
    text-decoration: none;
    padding: 8px 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s ease, background 0.2s ease, color 0.2s ease;
    cursor: pointer;
  }

  .hero-banner__btn--primary {
    background: rgba(255, 255, 255, 0.92);
    color: #1a1a1a;
    border: 1px solid transparent;
  }

  .hero-banner__btn--primary:hover {
    background: #fff;
  }

  .hero-banner__btn--secondary {
    background: transparent;
    color: var(--hero-text-color);
    border: 1px solid currentColor;
  }

  .hero-banner__btn--secondary:hover {
    background: rgba(255, 255, 255, 0.1);
  }
  
  /* --- Alignment helpers --- */
  .hero-banner[style*="--hero-content-align: flex-start"] .hero-banner__content {
    text-align: left;
  }
  .hero-banner[style*="--hero-content-align: center"] .hero-banner__content {
    text-align: center;
    margin-inline: auto;
  }
  .hero-banner[style*="--hero-content-align: center"] .hero-banner__description {
    margin-inline: auto;
  }
  .hero-banner[style*="--hero-content-align: center"] .hero-banner__buttons {
    justify-content: center;
  }
  .hero-banner[style*="--hero-content-align: flex-end"] .hero-banner__content {
    text-align: right;
    margin-left: auto;
  }
  .hero-banner[style*="--hero-content-align: flex-end"] .hero-banner__buttons {
    justify-content: flex-end;
  }

  /* --- Responsive --- */
  @media screen and (max-width: 749px) {
    .hero-banner {
      min-height: 90vw;
      align-items: flex-end;
    }

    .hero-banner__content-wrapper {
      padding: 150px 1.5rem;
    }

    .hero-banner__content {
      max-width: 100%;
    }

    .hero-banner__description {
      max-width: 100%;
    }

    .hero-banner__buttons {
      flex-direction: column;
      align-items: stretch;
    }

    .hero-banner__btn {
      text-align: center;
      justify-content: center;
    }
  }

  @media screen and (min-width: 750px) and (max-width: 989px) {
    .hero-banner__content-wrapper {
      padding: 4rem 2.5rem;
    }
  }
/* END_SECTION:hero-banner */

/* START_SECTION:image-with-text-rich (INDEX:36) */
.iwtr {
    background-color: var(--iwtr-bg);
    color: var(--iwtr-text);
    padding: var(--iwtr-pt) 0 var(--iwtr-pb);
  }

  /* ── Grid layout ── */
  .iwtr__inner {
    display: grid;
    grid-template-columns: var(--iwtr-content-width) 1fr;
    align-items: center;
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 5rem;
    gap: 5rem;
  }

  /* Image on the left → swap column order */
  .iwtr--img-left .iwtr__inner {
    grid-template-columns: 1fr var(--iwtr-content-width);
  }

  .iwtr--img-left .iwtr__content { order: 2; }
  .iwtr--img-left .iwtr__media   { order: 1; }

  /* ── Content ── */
  .iwtr__eyebrow {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #685A4F;
    margin: 0 0 8px;
  }

  .iwtr__heading {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 40px;
    line-height: 52px;
    letter-spacing: 0;
    margin: 0 0 24px;
    color: #2A2926;
    max-width: 320px;
  }

  .iwtr__description {
    margin: 0 0 1rem;
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
    font-family: 'poppins', sans-serif;
    color: #2D3648;
  }

  .iwtr__description p {
    margin: 0 0 1rem;
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
    font-family: 'poppins', sans-serif;
    color: #2D3648;
  }

  .iwtr__description p:last-child {
    margin-bottom: 0;
  }

  /* ── Feature blocks ── */
  .iwtr__features {
    margin-top: 1.75rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
  }

  .iwtr__feature-title {
    font-family: 'poppins', sans-serif;
    font-size: 0.8rem;
    font-weight: 500;
    margin: 0 0 0.3rem;
    color: var(--iwtr-text);
  }

  .iwtr__feature-text {
    font-family: 'poppins', sans-serif;
    font-size: 0.8rem;
    font-weight: 300;
    line-height: 1.75;
    margin: 0;
    color: var(--iwtr-text);
    opacity: 0.85;
  }

  .iwtr__divider {
    border: none;
    border-top: 1px solid currentColor;
    opacity: 0.12;
    margin: 0.25rem 0;
  }

  /* ── CTA button ── */
  .iwtr__btn {
    display: inline-block;
    margin-top: 2rem;
    font-family: 'poppins', sans-serif;
    font-size: 0.72rem;
    font-weight: 500;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--iwtr-text);
    border-bottom: 1px solid currentColor;
    padding-bottom: 2px;
    transition: opacity 0.2s;
  }

  .iwtr__btn:hover { opacity: 0.5; }

  /* ── Media ── */
  .iwtr__media {
    position: relative;
    overflow: hidden;
  }

  .iwtr__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    max-height: 680px;
  }

  .iwtr__image-placeholder {
    width: 100%;
    aspect-ratio: 4 / 5;
    background: #ece8e2;
    overflow: hidden;
  }

  .iwtr__placeholder-svg {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* ── Responsive ── */
  @media screen and (max-width: 989px) {
    .iwtr__inner {
      padding: 0 3rem;
      gap: 3rem;
    }
  }

  @media screen and (max-width: 749px) {
    .iwtr__inner {
      grid-template-columns: 1fr;
      padding: 0 1.5rem;
      gap: 2.5rem;
    }

    .iwtr--img-left .iwtr__content,
    .iwtr--img-left .iwtr__media {
      order: unset;
    }

    /* On mobile image always on top */
    .iwtr__media { order: -1; }
    .iwtr__content { order: 1; }

    .iwtr__heading {
      font-size: clamp(1.9rem, 7.5vw, 2.4rem);
    }
  }
/* END_SECTION:image-with-text-rich */

/* START_SECTION:lookbook-page (INDEX:38) */
#shopify-block-AVlpVNXZkdUZPcUhCT__lookfy_gallery_lookfy_gallery_bFanTV{padding: 64px 0!important;}
  .lookbook-page {
    background-color: var(--lb-bg);
    color: var(--lb-text);
    padding-bottom: var(--lb-pb);
  }

  /* ── Header ── */
  .lookbook-page__header {
    background-color: var(--lb-header-bg);
    background-image: var(--lb-header-img, none);
    background-size: cover;
    background-position: center;
    padding: 130px 5rem 64px;
    position: relative;
    overflow: hidden;
    text-align: center;
  }

  .lookbook-page__header-overlay {
    position: absolute;
    inset: 0;
    background-color: var(--lb-header-overlay);
    pointer-events: none;
  }

  .lookbook-page__header-content {
    position: relative;
    z-index: 1;
  }

  .lookbook-page__eyebrow {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    margin: 0 0 12px;
    color: #685A4F;
  }

  .lookbook-page__title {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 56px;
    line-height: 70px;
    margin: 0;
    letter-spacing: 0;
    color: #2D3648;
  }

  /* ── Body ── */
  .lookbook-page__body {
    padding: var(--lb-pt) 5rem 0;
  }

  /* ── Responsive ── */
  @media screen and (max-width: 989px) {
    .lookbook-page__header { padding: 130px 3rem 44px; }
    .lookbook-page__body { padding-left: 3rem; padding-right: 3rem; }
  }

  @media screen and (max-width: 749px) {
    .lookbook-page__header { padding: 130px 1.5rem 36px; }
    .lookbook-page__body { padding-left: 1.5rem; padding-right: 1.5rem; }
  }
/* END_SECTION:lookbook-page */

/* START_SECTION:main-list-collections (INDEX:49) */
/* ── HEADER ── */
  .mlc__header {
    background-color: #F5F0EA;
    background-image: var(--mlc-header-img, none);
    background-size: cover;
    background-position: center;
    padding: 130px 5rem 64px;
    position: relative;
    overflow: hidden;
    text-align: left;
    border-bottom: 2px solid #B3A092;
    display: flex;
    align-items: flex-end;
  }

  .mlc__header-overlay {
    position: absolute;
    inset: 0;
    background-color: var(--mlc-header-overlay);
    pointer-events: none;
  }

  .mlc__header-content {
    position: relative;
    z-index: 1;
  }

  .mlc__breadcrumb {
    font-family: 'poppins', sans-serif;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #6B6963;
    margin: 0 0 8px;
  }

  .mlc__breadcrumb a {
    color: #6B6963;
    text-decoration: none;
  }

  .mlc__breadcrumb a:hover { color: #2A2926; }

  .mlc__title {
    font-family: 'ivyjournal', serif;
    font-size: 56px;
    line-height: 70px;
    font-weight: 300;
    letter-spacing: 0;
    color: #2e2a27;
    margin: 0;
  }

  /* ── BODY ── */
  .mlc__body {
    padding: 64px 5rem 80px;
    background: #ffffff;
  }

  /* ── GRID ── */
  .mlc__grid {
    display: grid;
    gap: 2rem;
    max-width: 1300px;
    margin: 0 auto;
  }

  .mlc__grid--1 { grid-template-columns: 1fr; }
  .mlc__grid--2 { grid-template-columns: repeat(2, 1fr); }
  .mlc__grid--3 { grid-template-columns: repeat(3, 1fr); }
  .mlc__grid--4 { grid-template-columns: repeat(4, 1fr); }

  /* ── CARD ── */
  .mlc__card {
    display: flex;
    flex-direction: column;
  }

  .mlc__img-link {
    display: block;
    overflow: hidden;
  }

  .mlc__img-wrap {
    width: 100%;
    overflow: hidden;
    aspect-ratio: 3 / 4;
  }

  .mlc__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
  }

  .mlc__img-link:hover .mlc__img {
    transform: scale(1.04);
  }

  .mlc__img--placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: #f5f2ec;
  }

  /* ── CARD INFO ── */
  .mlc__info {
    padding-top: 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    text-align: center;
  }

  .mlc__name {
    font-family: 'ivyjournal', serif;
    font-size: 17px;
    line-height: 20px;
    font-weight: 400;
    margin: 0 0 4px;
    color: #2A2926;
  }

  .mlc__desc {
    font-family: 'poppins', sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 1.6;
    color: #6B6963;
    margin: 0 0 8px;
  }

  .mlc__btn {
    display: inline-block;
    margin-top: 0;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    text-decoration: none;
    color: #000000;
    border-bottom: 1px solid #000000;
    padding-bottom: 1px;
    transition: opacity 0.2s;
    margin-top: 16px;
  }

  .mlc__btn:hover { opacity: 0.5; }

  /* ── RESPONSIVE ── */
  @media screen and (max-width: 989px) {
    .mlc__header { padding: 130px 3rem 40px; }
    .mlc__body { padding: 48px 3rem 64px; }

    .mlc__grid--3,
    .mlc__grid--4 {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  @media screen and (max-width: 749px) {
    .mlc__header { min-height: 240px; padding: 130px 1.5rem 36px; }
    .mlc__body { padding: 32px 1.5rem 48px; }

    .mlc__grid--2,
    .mlc__grid--3,
    .mlc__grid--4 {
      grid-template-columns: 1fr;
    }

    .mlc__img-wrap { aspect-ratio: 4 / 5 !important; }
  }
/* END_SECTION:main-list-collections */

/* START_SECTION:main-product (INDEX:55) */
.hengam-product-price-wrapper .hengam-preorder-badge{font-size: 7px!important; width: 100%;}
  /* ── Variables ── */
  .pdp {
    --pdp-text: #2d3648;
    --pdp-muted: #6b6963;
    --pdp-border: #e4e0da;
    --pdp-accent: #685a4f;
    --pdp-bg: #ffffff;
    --pdp-atb-bg: #2d3648;
    --pdp-atb-text: #ffffff;
    font-family: 'poppins', sans-serif;
    color: var(--pdp-text);
    max-width: 100%;
    margin: 0 auto;
    padding: 100px 5rem 72px;
    box-sizing: border-box;
  }

  /* ── BREADCRUMB ── */
  .pdp__breadcrumb {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 36px 0;
    font-size: 14px;
    line-height: 20px;
    font-weight: 300;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    color: #2A2926;
  }

  .pdp__breadcrumb a {
    color: #2A2926;
    text-decoration: none;
  }

  .currentnav{font-weight: 400!important;}

  .pdp__breadcrumb a:hover { color: var(--pdp-text); }

  /* ── GRID ── */
  .pdp__grid {
    display: grid;
    grid-template-columns: 60fr 40fr;
    gap: 60px;
    align-items: start;
  }

  /* ── MEDIA / SLIDER ── */
  .pdp__media {
    position: sticky;
    top: calc(var(--header-height, 80px) + 16px);
    width: 100%;
    min-width: 0;
    max-width: 690px;
    margin-left: auto;
    margin-right: auto;
  }

  .pdp__slider-main {
    position: relative;
    width: 100%;
    overflow: hidden;
  }

  .pdp__slider-track {
    display: flex;
    transition: transform 0.4s ease;
    will-change: transform;
  }

  .pdp__slide {
    flex: 0 0 100%;
    width: 100%;
    min-width: 0;
  }

  .pdp__slide img,
  .pdp__placeholder {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
    background: #f5f2ec;
    max-height: 690px;
  }

  /* Thumbnails */
  .pdp__slider-thumbs {
    display: flex;
    gap: 8px;
    margin-top: 10px;
    width: 100%;
  }

  .pdp__thumb {
    flex: 1;
    cursor: pointer;
    min-width: 0;
  }

  .pdp__thumb img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    display: block;
    opacity: 0.45;
    transition: opacity 0.2s;
  }

  .pdp__thumb.pdp__thumb--active img,
  .pdp__thumb:hover img { opacity: 1; }

  /* ── INFO ── */
  .pdp__header {
    margin-bottom: 24px;
  }

  .pdp__title {
    font-family: 'ivyjournal', serif;
    font-size: 40px;
    font-weight: 300;
    line-height: 52px;
    letter-spacing: 0;
    margin: 0 0 4px;
    color: #000000;
  }

  .pdp__collection {
    font-size: 17px;
    font-weight: 300;
    color: #000000;
    letter-spacing: 0;
    margin: 0 0 16px;
    font-style: italic;
  }

  .pdp__price {
    font-size: 17px;
    line-height: 20px;
    font-weight: 400;
    color: #281813;
    margin: 0 0 24px;
    letter-spacing: 0;
  }

  /* ── VARIANTS ── */
  .pdp__option {
    margin-bottom: 36px;
  }

  .pdp__option-label {
    display: none;
  }

  .pdp__option-values {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
    align-items: baseline;
  }

  .pdp__swatch {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    background: none;
    border: none;
    padding: 8px 16px;
    cursor: pointer;
    opacity: 0.45;
    transition: opacity 0.2s;
    border-bottom: 1px solid #8E7C6E;
  }

  .pdp__swatch:hover { opacity: 0.75; }
  .pdp__swatch--active { opacity: 1; border-bottom: 1px solid #685A4F;}

  .pdp__swatch-icon svg { display: block; }
  .icon-Medium{width: 36px; height: 36px;}
  .icon-Large{width: 42px; height: 42px;}

  .pdp__swatch-label {
    font-size: 14px;
    line-height: 20px;
    font-weight: 300;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    color: #221E1E;
  }

  .pdp__swatch--active .pdp__swatch-label { color: var(--pdp-text); }

  /* ── ACTIONS ── */
  .pdp__actions {
    display: block;
    width: 100%;
    gap: 36px;
    align-items: center;
    margin-bottom: 36px;
  }

  .pdp__atb{width: 100%;}

  .pdp__qty {
    display: flex;
    align-items: center;
    border: none;
    height: 48px;
  }

  .pdp__qty-btn {
    width: 36px;
    height: 36px;
    background: none;
    border: none;
    font-size: 18px;
    font-weight: 300;
    color: var(--pdp-text);
    cursor: pointer;
    transition: background 0.15s;
    border: 1px solid #221e1e33;
  }

  .pdp__qty-btn:hover { background: #f5f2ec; }

  .pdp__qty-input {
    width: 36px;
    height: 36px;
    border: none;
    border: none;
    text-align: center;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #281813;
  }
  .pdp__qty-input:focus-visible {
      outline: none;
      outline-offset: none;
      box-shadow: none;
  }

  .pdp__qty-input::-webkit-outer-spin-button,
  .pdp__qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

  .pdp__atb {
    flex: 1;
    height: 47px;
    background: transparent;
    color: #8E7C6E;
    border: none;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 1.4px;
    cursor: pointer;
    transition: opacity 0.2s;
    border: 1px solid #8E7C6E;
    text-transform: uppercase;
  }

  .pdp__atb:hover {opacity: 1; background: #8E7C6E; color: #fff; }
  .pdp__atb:disabled {opacity: 1; cursor: not-allowed; background: transparent!important; color: #fff; border: none!important; color: #000!important;}

  /* ── ACCORDIONS ── */
  .pdp__accordions { margin-top: 8px; }

  .pdp__acc {
    border-bottom: 1px solid var(--pdp-border);
  }

  .pdp__acc-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 0;
    cursor: pointer;
    list-style: none;
    font-size: 14px;
    line-height: 22px;
    font-weight: 500;
    letter-spacing: 0;
    color: #221E1E;
    user-select: none;
  }

  .pdp__acc-header::-webkit-details-marker { display: none; }

  /* Chevron */
  .pdp__acc-icon {
    width: 10px;
    height: 10px;
    border-right: 1px solid var(--pdp-muted);
    border-bottom: 1px solid var(--pdp-muted);
    transform: rotate(45deg);
    transition: transform 0.25s ease;
    flex-shrink: 0;
    margin-bottom: 3px;
  }

  details[open] .pdp__acc-icon {
    transform: rotate(-135deg);
    margin-bottom: -3px;
  }

  .pdp__acc-body {
    padding: 0 0 20px;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.7;
    color: var(--pdp-muted);
  }

  .pdp__acc-body p, .pdp__acc-body li{
    font-size: 14px;
    line-height: 22px;
    color: #221E1E;
    font-weight: 400;
  }
  .pdp__acc-body li{margin-bottom: 12px;}
  .pdp__acc-body h6{margin: 0 0 4px;font-size: 12px;font-weight: 400;letter-spacing: 0;}

  .pdp__acc-body p { margin: 0 0 8px; }
  .pdp__acc-body p:last-child { margin-bottom: 0; }

  /* Description rows */
  .pdp__acc-row { margin-bottom: 12px; }
  .pdp__acc-label {
    display: block;
    font-size: 10px;
    font-weight: 400;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--pdp-text);
    margin-bottom: 2px;
  }

  /* Size guide */
  .pdp__size-guide { display: flex; flex-direction: column; gap: 8px; }
  .pdp__size-row { display: flex; justify-content: space-between; }
  .pdp__size-name {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--pdp-text);
  }
  .pdp__size-val { font-size: 12px; font-weight: 300; }

  /* Care list */
  .pdp__care-list {
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  .pdp__care-list li {
    padding-left: 14px;
    position: relative;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.6;
  }

  .pdp__care-list li::before {
    content: '·';
    position: absolute;
    left: 0;
    color: var(--pdp-accent);
  }

  /* YMAL */
  .pdp__acc-body--ymal { padding: 0 0 12px; }

  .pdp__ymal-item {
    display: grid;
    grid-template-columns: 80px 1fr auto;
    align-items: center;
    gap: 16px;
    padding: 12px 0;
    border-bottom: 1px solid var(--pdp-border);
  }

  .pdp__ymal-item:last-child { border-bottom: none; }

  .pdp__ymal-img-wrap img,
  .pdp__ymal-placeholder {
    width: 80px;
    height: 110px;
    object-fit: cover;
    display: block;
    background: #f5f2ec;
  }

  .pdp__ymal-title {
    font-size: 17px!important;
    font-weight: 400!important;
    color: #281813!important;
    margin: 0 0 8px!important;
    font-family: 'ivyjournal', serif;
  }

  .pdp__ymal-price {
    font-size: 14px!important;
    line-height: 22px!important;
    font-weight: 500!important;
    color: #6B6963!important;
    margin: 0!important;
    letter-spacing: 0;
  }

  .pdp__ymal-atb {
    background: none;
    border: none;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #000000;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
    white-space: nowrap;
    padding: 0;
    transition: opacity 0.2s;
  }

  .pdp__ymal-atb:hover { opacity: 0.6; }

  /* ── RESPONSIVE ── */
  @media screen and (max-width: 989px) {
    .pdp__grid { gap: 40px; }
  }

  @media screen and (max-width: 749px) {
    .pdp {
      padding: 130px 1.5rem 3rem;
    }

    .pdp__grid {
      grid-template-columns: 1fr;
      gap: 24px;
    }

    .pdp__slider-thumbs .pdp__thumb { padding: 0 3px; }

    .pdp__actions {
      flex-direction: column;
      align-items: stretch;
    }

    .pdp__qty { justify-content: center; }
    .pdp__atb { width: 100%; }

    .pdp__ymal-item {
      grid-template-columns: 64px 1fr auto;
      gap: 12px;
    }

    .pdp__ymal-img-wrap img,
    .pdp__ymal-placeholder {
      width: 64px;
      height: 64px;
    }
  }
/* END_SECTION:main-product */

/* START_SECTION:main-slider-home (INDEX:59) */
.main-slider-home {
    position: relative;
    width: 100%;
    overflow: hidden;
  }

  .main-slider-home__slide {
    position: relative;
    width: 100%;
    outline: none;
  }

  .main-slider-home__media {
    position: relative;
    width: 100%;
    height: var(--slide-height, 80vh);
    overflow: hidden;
  }

  .main-slider-home__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  .main-slider-home__image.placeholder-svg {
    background: #e8e8e1;
  }

  .main-slider-home__overlay {
    position: absolute;
    inset: 0;
    background: #000;
    opacity: var(--overlay-opacity, 0.3);
    pointer-events: none;
  }

  /* Content positioning */
  .main-slider-home__content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding: 4rem 5rem;
    color: #fff;
    max-width: 680px;
    gap: 1.6rem;
  }

  .main-slider-home__content--top-left    { justify-content: flex-start; align-items: flex-start; }
  .main-slider-home__content--top-center  { justify-content: flex-start; align-items: center; }
  .main-slider-home__content--top-right   { justify-content: flex-start; align-items: flex-end; }
  .main-slider-home__content--middle-left   { justify-content: center; align-items: flex-start; }
  .main-slider-home__content--middle-center { justify-content: center; align-items: center; max-width: 100%; }
  .main-slider-home__content--middle-right  { justify-content: center; align-items: flex-end; }
  .main-slider-home__content--bottom-left  { justify-content: flex-end; align-items: flex-start; }
  .main-slider-home__content--bottom-center { justify-content: flex-end; align-items: center; max-width: 100%; }
  .main-slider-home__content--bottom-right  { justify-content: flex-end; align-items: flex-end; }

  .main-slider-home__content--text-left   { text-align: left; }
  .main-slider-home__content--text-center { text-align: center; }
  .main-slider-home__content--text-right  { text-align: right; }

  /* Heading */
  .main-slider-home__heading {
    margin: 0;
    line-height: 1.1;
    color: inherit;
    font-weight: 700;
  }

  .main-slider-home__heading.h0  { font-size: clamp(3.2rem, 5vw, 5.6rem); }
  .main-slider-home__heading.h1  { font-size: clamp(2.4rem, 4vw, 4.2rem); }
  .main-slider-home__heading.h2  { font-size: clamp(2rem, 3vw, 3.2rem); }
  .main-slider-home__heading.hxl { font-size: clamp(4rem, 6vw, 7rem); }
  .main-slider-home__heading.hxxl { font-size: clamp(5rem, 7.5vw, 9rem); }

  /* Description */
  .main-slider-home__description {
    margin: 0;
    color: rgba(255, 255, 255, 0.85);
    font-size: 1.4rem;
    line-height: 1.6;
    max-width: 48ch;
  }

  .main-slider-home__description p {
    margin: 0;
  }

  /* Button */
  .main-slider-home__button {
    display: inline-block;
    padding: 1.2rem 2.4rem;
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
    white-space: nowrap;
  }

  .main-slider-home__button--outline {
    border: 1px solid rgba(255, 255, 255, 0.8);
    color: #fff;
    background: transparent;
  }

  .main-slider-home__button--outline:hover {
    background: rgba(255, 255, 255, 0.15);
    border-color: #fff;
  }

  .main-slider-home__button--filled {
    background: #fff;
    color: #111;
    border: 1px solid #fff;
  }

  .main-slider-home__button--filled:hover {
    background: rgba(255, 255, 255, 0.88);
  }

  .main-slider-home__button--primary {
    background: #111;
    color: #fff;
    border: 1px solid #111;
  }

  .main-slider-home__button--primary:hover {
    background: #333;
    border-color: #333;
  }

  /* Slick dot customization */
  #MainSliderHome-{{ section.id }} .slick-dots {
    bottom: 2rem;
  }

  #MainSliderHome-{{ section.id }} .slick-dots li button:before {
    color: rgba(255, 255, 255, 0.6);
    font-size: 1rem;
    opacity: 1;
  }

  #MainSliderHome-{{ section.id }} .slick-dots li.slick-active button:before {
    color: #fff;
    opacity: 1;
  }

  /* Slick arrow customization */
  #MainSliderHome-{{ section.id }} .slick-prev,
  #MainSliderHome-{{ section.id }} .slick-next {
    z-index: 2;
    width: 4.4rem;
    height: 4.4rem;
    background: rgba(0, 0, 0, 0.4);
    border-radius: 50%;
    transition: background 0.2s ease;
  }

  #MainSliderHome-{{ section.id }} .slick-prev:hover,
  #MainSliderHome-{{ section.id }} .slick-next:hover {
    background: rgba(0, 0, 0, 0.65);
  }

  #MainSliderHome-{{ section.id }} .slick-prev { left: 1.6rem; }
  #MainSliderHome-{{ section.id }} .slick-next { right: 1.6rem; }

  #MainSliderHome-{{ section.id }} .slick-prev:before,
  #MainSliderHome-{{ section.id }} .slick-next:before {
    font-size: 2rem;
    opacity: 1;
  }

  /* Mobile */
  @media (max-width: 749px) {
    .main-slider-home__content {
      padding: 2.4rem 2rem;
      max-width: 100%;
    }

    .main-slider-home__media {
      height: var(--slide-height-mobile, 60vh);
    }
  }
/* END_SECTION:main-slider-home */

/* START_SECTION:meet-artisans (INDEX:60) */
.artisans {
    background-color: var(--art-bg);
    color: var(--art-text);
    padding: var(--art-pt) 5rem var(--art-pb);
    overflow-x: clip;
  }

  .artisans__inner {
    display: flex;
    flex-direction: column;
    width: 100%;
  }

  /* ── Header ── */
  .artisans__header {
    text-align: center;
    display: flex;
    flex-direction: column;
  }

  .artisans__eyebrow {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #685A4F;
    margin: 0 0 8px;
  }

  .artisans__heading {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 40px;
    line-height: 52px;
    letter-spacing: 0;
    color: #221E1E;
    margin: 0 0 48px;
  }

  /* ── Grid ── */
  .artisans__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 24px 108px;
    justify-items: center;
    width: 100%;
    max-width: 100%;
  }

  /* ── Card ── */
  .artisans__card {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
    max-width: 300px;
  }

  /* Cuando hay exactamente 2 items en una fila */
  .artisans__card:nth-child(1):nth-last-child(2) {
    justify-self: end;
  }

  .artisans__card:nth-child(2):nth-last-child(1) {
    justify-self: start;
  }

  .artisans__img-wrap {
    width: 100%;
    overflow: hidden;
    background: #e8e3db;
  }

  .artisans__img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    transition: transform 0.55s ease;
  }

  .artisans__card:hover .artisans__img {
    transform: scale(1.03);
  }

  .artisans__img--placeholder {
    width: 100%;
    aspect-ratio: 3 / 4;
    display: block;
  }

  /* ── Info ── */
  .artisans__info {
    padding-top: 16px;
    text-align: center;
    display: flex;
    flex-direction: column;
  }

  .artisans__name {
    font-family: 'ivyjournal', serif;
    font-size: 17px;
    font-weight: 400;
    color: #2A2926;
    margin: 0 0 8px;
    line-height: 20px;
  }

  .artisans__desc {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 300;
    color: #2A2926;
    margin: 0;
    letter-spacing: 0;
  }

  /* ── Responsive ── */
  @media screen and (max-width: 989px) {
    .artisans { 
      padding: var(--art-pt) 3rem var(--art-pb);
      overflow-x: clip;
    }
    .artisans__grid { 
      gap: 24px 24px;
    }
  }

  @media screen and (max-width: 749px) {
    .artisans { 
      padding: var(--art-pt) 1.5rem var(--art-pb);
      overflow: hidden;
      width: 100%;
    }

    .artisans__inner {
      width: 100%;
      overflow: hidden;
    }

    .artisans__grid {
      grid-template-columns: 1fr;
      gap: 40px;
      width: 100%;
      overflow: hidden;
    }

    .artisans__card {
      max-width: none;
      width: 100%;
      overflow: hidden;
    }

    /* Desactivar AOS en móvil */
    [data-aos] {
      opacity: 1 !important;
      transform: none !important;
      animation: none !important;
    }
  }
/* END_SECTION:meet-artisans */

/* START_SECTION:our-process (INDEX:64) */
.img-text {
    background-color: var(--it-bg);
    color: var(--it-text);
    padding: var(--it-pt) 0 var(--it-pb);
  }

  .img-text__inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 60px;
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 5rem;
  }

  /* ── LEFT: imagen con indentación izquierda ── */
  .img-text__image-col {
    padding-left: var(--it-img-indent);
  }

  .img-text__image-wrap {
    width: 100%;
    overflow: hidden;
  }

  .img-text__image {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
  }

  .img-text__image--placeholder {
    width: 100%;
    aspect-ratio: 3 / 4;
    display: block;
  }

  /* ── RIGHT: texto ── */
  .img-text__content {
    display: flex;
    flex-direction: column;
    max-width: 460px;
  }

  .img-text__eyebrow {
    font-family: 'poppins', sans-serif;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #685A4F;
    margin: 0 0 8px;
  }

  .img-text__heading {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 40px;
    line-height: 52px;
    letter-spacing: 0;
    margin: 0 0 24px;
    color: #2A2926;
  }

  .img-text__description {
    font-family: 'poppins', sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 1.8;
    color: var(--it-muted);
  }

  .img-text__description p {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    color: #221E1E;
    margin: 0;
  }

  .img-text__description p:last-child { margin-bottom: 0; }

  .img-text__cta {
    font-family: 'poppins', sans-serif;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--it-text);
    border-bottom: 1px solid var(--it-text);
    padding-bottom: 2px;
    align-self: flex-start;
    transition: opacity 0.2s;
  }

  .img-text__cta:hover { opacity: 0.55; }

  /* ── Responsive ── */
  @media screen and (max-width: 989px) {
    .img-text__inner {
      padding: 0 3rem;
      gap: 40px;
    }
    .img-text__image-col { padding-left: calc(var(--it-img-indent) * 0.5); }
  }

  @media screen and (max-width: 749px) {
    .img-text__inner {
      grid-template-columns: 1fr;
      padding: 0 1.5rem;
      gap: 32px;
    }
    .img-text__image-col { padding-left: 0; }
    .img-text__content { max-width: 100%; }
  }
/* END_SECTION:our-process */

/* START_SECTION:our-values (INDEX:66) */
.our-values {
    background-color: var(--ov-bg);
    color: var(--ov-text);
    padding: var(--ov-pt) 5rem var(--ov-pb);
  }

  .our-values__inner {
    max-width: 1120px;
    width: 100%;
    margin: 0 auto;
  }

  /* ── Header ── */
  .our-values__header {
    margin-bottom: 48px;
  }

  .our-values__title {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 40px;
    line-height: 52px;
    letter-spacing: 0;
    color: #685A4F;
    margin: 0 0 16px;
  }

  .our-values__subtitle {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    color: #221E1E;
    margin: 0 0 32px;
    max-width: 410px;
  }

  /* ── Values list ── */
  .our-values__list {
    display: flex;
    flex-direction: column;
    border-top: 1px solid var(--ov-border);
  }

  .our-values__row {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 40px;
    padding: 32px 0;
    border-bottom: 1px solid var(--ov-border);
    align-items: start;
  }

  /* Value name — izquierda */
  .our-values__value-name {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 3.6px;
    text-transform: uppercase;
    color: #2A2926;
    padding-top: 0;
  }

  /* Value description — derecha */
  .our-values__value-desc {
    font-family: 'poppins', sans-serif;
    font-size: 17px;
    line-height: 20px;;
    font-weight: 400;
    color: #221E1E;
  }

  /* ── Responsive ── */
  @media screen and (max-width: 989px) {
    .our-values { padding: var(--ov-pt) 3rem var(--ov-pb); }
    .our-values__row { grid-template-columns: 180px 1fr; gap: 28px; }
  }

  @media screen and (max-width: 749px) {
    .our-values { padding: var(--ov-pt) 1.5rem var(--ov-pb); }

    .our-values__row {
      grid-template-columns: 1fr;
      gap: 10px;
      padding: 28px 0;
    }

    .our-values__subtitle { max-width: 100%; }
  }
/* END_SECTION:our-values */

/* START_SECTION:shop-page (INDEX:73) */
/* ══════════════════════════════════
     BASE
  ══════════════════════════════════ */
  .shop-page {
    background-color: var(--shop-bg);
    color: var(--shop-text);
    padding-bottom: 80px;
  }

  /* ══════════════════════════════════
     HEADER BLOCK (fondo independiente + imagen opcional)
  ══════════════════════════════════ */
  .shop-page__header-block {
    background-color: var(--shop-header-bg);
    background-image: var(--shop-header-img, none);
    background-size: cover;
    background-position: center;
    padding: 130px 5rem 80px;
    position: relative;
    overflow: hidden;
  }

  /* Overlay de color sobre la imagen — opacidad configurable */
  .shop-page__header-overlay {
    position: absolute;
    inset: 0;
    background-color: var(--shop-header-overlay);
    pointer-events: none;
  }

  /* Contenido por encima del overlay */
  .shop-page__header-content {
    position: relative;
    z-index: 1;
  }

  .shop-page__breadcrumb {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    margin: 0 0 32px;
    color: #221E1E;
    display: flex;
    align-items: center;
    gap: 6px;
  }

  .shop-page__breadcrumb a {
    color: var(--shop-muted);
    text-decoration: none;
    transition: color 0.2s;
    font-weight: 300!important;
  }

  .shop-page__breadcrumb a:hover {
    color: var(--shop-text);
  }

  .shop-page__title {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 56px;
    line-height: 70px;
    margin: 0;
    letter-spacing: 0;
    color: #2e2a27;
  }

  /* ══════════════════════════════════
     TOOLBAR — pills + sort
  ══════════════════════════════════ */
  .shop-page__toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 68px 5rem 48px;
    gap: 1rem;
    margin-bottom: 0;
  }

  .shop-page__filter-list {
    display: flex;
    align-items: center;
    gap: 10px;
    list-style: none;
    margin: 0;
    padding: 0;
    flex-wrap: wrap;
  }

  .shop-page__filter-item { margin: 0; }

  /* Pills */
  .shop-page__pill {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 300;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--shop-text);
    padding: 6px 16px 2px;
    border: 1px solid #8E7C6E26;
    border-radius: 999px;
    background: transparent;
    display: block;
    white-space: nowrap;
    transition: background 0.2s, color 0.2s, border-color 0.2s;
    line-height: initial;
    margin: 0;
  }

  .shop-page__pill:hover {
    background: #8E7C6E;
    color: #fff;
    border-color: #8E7C6E;
  }

  .shop-page__pill--active {
    border-color: #8E7C6E;
  }

  /* Sort */
  .shop-page__sort {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
  }

  .shop-page__sort-label {
    font-family: 'poppins', sans-serif;
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 0;
    color: #2A2926;
    white-space: nowrap;
  }

  .shop-page__sort-select {
    font-family: 'poppins', sans-serif;
    font-size: 16px;
    color: #2A2926;
    background: transparent;
    border: none;
    border-bottom: 1px solid #2A2926;
    padding: 2px 20px 2px 0;
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%232A2926' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 4px center;
  }

  .shop-page__sort-select:focus { outline: none; }

  /* ══════════════════════════════════
     PRODUCT GRID
  ══════════════════════════════════ */
  .shop-page__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 108px;
    padding: 0 5rem;
  }

  .shop-page__card {
    display: block;
    text-decoration: none;
    color: inherit;
  }

  .shop-page__image-wrap {
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #f0ede9;
    position: relative;
  }

  .shop-page__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    transition: transform 0.55s ease, opacity 0.4s ease;
  }

  .shop-page__image--hover { opacity: 0; }

  .shop-page__card:hover .shop-page__image:not(.shop-page__image--hover) { opacity: 0; }
  .shop-page__card:hover .shop-page__image--hover { opacity: 1; }
  .shop-page__card:hover .shop-page__image { transform: scale(1.03); }

  .shop-page__image--placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: static;
  }

  .shop-page__info {
    padding: 16px 0 0;
    text-align: center;
  }

  .shop-page__product-title {
    font-family: 'ivyjournal', serif;
    font-size: 17px;
    font-weight: 400;
    margin: 0 0 8px;
    color: var(--shop-text);
    line-height: 20px;
    letter-spacing: 0;
  }

  .shop-page__product-price {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 22px;
    font-weight: 500;
    margin: 0;
    color: var(--shop-muted);
  }

  .shop-page__price--compare {
    opacity: 0.5;
    text-decoration: line-through;
    margin-right: 4px;
  }

  .shop-page__empty {
    grid-column: 1 / -1;
    text-align: center;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    color: var(--shop-muted);
    padding: 80px 0;
  }

  /* ══════════════════════════════════
     PAGINATION
  ══════════════════════════════════ */
  .shop-page__pagination {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 0;
    padding-top: 0;
  }

  .shop-page__page-num {
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #221E1E;
    text-decoration: none;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0;
    transition: background 0.2s;
  }

  .shop-page__page-num:hover { background: rgba(0,0,0,0.06); }
  .shop-page__page-num--active { border-color: #221E1E; font-weight: 600; }
  .shop-page__page-num--ellipsis { cursor: default; }

  .shop-page__page-btn {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid var(--shop-text);
    color: var(--shop-text);
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
  }

  .shop-page__page-btn:hover {
    background: var(--shop-text);
    color: var(--shop-bg);
  }

  /* ══════════════════════════════════
     RESPONSIVE
  ══════════════════════════════════ */
  @media screen and (max-width: 989px) {
    .shop-page__header-block { padding: 130px 3rem 28px; }

    .shop-page__toolbar {
      padding: 20px 3rem;
      flex-direction: column;
      align-items: flex-start;
    }

    .shop-page__grid {
      grid-template-columns: repeat(2, 1fr);
      padding: 0 3rem;
      gap: 40px 20px;
    }
  }

  @media screen and (max-width: 749px) {
    .shop-page__header-block { padding: 130px 1.5rem 20px; }

    .shop-page__toolbar {
      padding: 16px 1.5rem;
      margin-bottom: 28px;
    }

    .shop-page__filter-list { gap: 8px; }

    .shop-page__pill {
      font-size: 10px;
      padding: 6px 14px;
    }

    .shop-page__grid {
      grid-template-columns: repeat(2, 1fr);
      padding: 0 1.5rem;
      gap: 28px 12px;
    }

    .shop-page__product-title { font-size: 14px; }
    .shop-page__product-price { font-size: 12px; }
  }
/* END_SECTION:shop-page */

/* START_SECTION:style-guide-banner (INDEX:75) */
.sg-banner {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    min-height: var(--sg-min-height);
    overflow: hidden;
    color: var(--sg-text-color);
  }

  /* ── Media ── */
  .sg-banner__media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  .sg-banner__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
  }

  .sg-banner__img--placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: #1a1a1a;
  }

  /* ── Gradient overlay ── */
  .sg-banner__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
      to bottom,
      rgba(0, 0, 0, var(--sg-overlay-start)) 0%,
      rgba(0, 0, 0, calc(var(--sg-overlay-start) * 0.5)) 40%,
      rgba(0, 0, 0, var(--sg-overlay-end)) 100%
    );
    pointer-events: none;
  }

  /* ── Content ── */
  .sg-banner__content {
    position: relative;
    z-index: 1;
    text-align: center;
    padding: 0 2rem;
    padding-bottom: 64px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.6rem;
    width: 100%;
    max-width: 680px;
  }

  .sg-banner__heading {
    font-family: 'ivyjournal', serif;
    font-weight: 300;
    font-size: 32px;
    line-height: 38px;
    letter-spacing: 0;
    margin: 0 0 8px;
    color: #FAFAF8;
  }

  .sg-banner__subheading {
    font-family: 'poppins', sans-serif;
    font-size: 17px;
    font-weight: 300;
    line-height: 20px;
    margin: 0 0 20px;
    opacity: 0.6;
    color: #FAFAFA;
  }

  .sg-banner__btn {
    display: inline-block;
    margin-top: 0;
    font-family: 'poppins', sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    text-decoration: none;
    color: #FAFAFA;
    border-bottom: 1px solid #FAFAFA;
    padding-bottom: 2px;
    transition: opacity 0.25s;
  }

  .sg-banner__btn:hover { opacity: 0.55; }

  /* ── Responsive ── */
  @media screen and (max-width: 749px) {
    .sg-banner {
      min-height: 75vw;
    }

    .sg-banner__content {
      padding-bottom: max(var(--sg-content-offset), 3rem);
    }

    .sg-banner__img {
      object-position: center center;
    }
  }
/* END_SECTION:style-guide-banner */