/* Home four-product collection: Seed-reference layout. */
.sunday-home-featured,
.sunday-home-featured a {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif !important;
}

.sunday-home-featured {
  padding: clamp(76px, 8vw, 118px) clamp(24px, 5vw, 76px) clamp(84px, 9vw, 132px) !important;
  background: #2a193d !important;
}

.sunday-home-featured__inner { width: min(100%, 1440px) !important; }

.sunday-home-featured__header {
  grid-template-columns: minmax(360px, 1.05fr) minmax(300px, .75fr) auto !important;
  align-items: end !important;
  gap: clamp(36px, 6vw, 92px) !important;
  margin-bottom: clamp(52px, 5.5vw, 78px) !important;
}

.sunday-home-featured__header h2 {
  max-width: 610px !important;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif !important;
  font-size: clamp(44px, 4.3vw, 66px) !important;
  font-weight: 400 !important;
  line-height: .98 !important;
  letter-spacing: -.052em !important;
}

.sunday-home-featured__header p { max-width: 430px !important; color: rgba(255,255,255,.82) !important; font-size: 14px !important; font-weight: 500 !important; line-height: 1.42 !important; }
.sunday-home-featured__header > a { color: #fff !important; font-size: 13px !important; font-weight: 650 !important; text-transform: none !important; }
.sunday-home-featured__grid { grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 16px !important; }

.sunday-home-featured__card,
.sunday-home-featured__card--2,
.sunday-home-featured__card--3,
.sunday-home-featured__card--4 {
  position: relative;
  min-height: 520px !important;
  padding: 18px 18px 22px !important;
  border: 0 !important;
  border-radius: 17px !important;
  background: #4f3b66 !important;
  box-shadow: none !important;
}

.sunday-home-featured__card:hover { transform: translateY(-3px) !important; background: #57426f !important; box-shadow: 0 20px 45px rgba(16,10,23,.18) !important; }
.sunday-home-featured__meta { position: absolute; z-index: 2; top: 14px; left: 14px; min-height: 0 !important; }
.sunday-home-featured__meta span { min-height: 23px !important; padding: 4px 9px !important; background: #c6abe5 !important; color: #322244 !important; font-family: inherit !important; font-size: 10px !important; letter-spacing: 0 !important; }

.sunday-home-featured__identity { display: flex; min-height: 83px; padding: 14px 6px 0; align-items: center; justify-content: flex-end; flex-direction: column; gap: 9px; }
.sunday-home-featured__identity > span { display: inline-flex; min-height: 23px; padding: 3px 9px; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.72); border-radius: 999px; color: #fff; font-size: 11px; font-weight: 600; line-height: 1; }
.sunday-home-featured__card h3 { margin: 0 !important; font-family: inherit !important; font-size: clamp(20px,1.5vw,25px) !important; font-weight: 450 !important; line-height: 1.05 !important; letter-spacing: -.035em !important; }

.sunday-home-featured__image { display: flex !important; min-height: 0 !important; margin: 4px 0 10px !important; align-items: center; justify-content: center; flex: 1 1 290px !important; overflow: visible !important; }
.sunday-home-featured__image img { width: auto !important; height: min(292px,25vw) !important; min-height: 0 !important; max-width: 88% !important; object-fit: contain !important; object-position: center !important; filter: drop-shadow(0 18px 18px rgba(14,8,20,.24)); }
.sunday-home-featured__card:hover .sunday-home-featured__image img { transform: scale(1.018) !important; }

.sunday-home-featured__footer { min-height: 76px; align-items: center !important; justify-content: flex-end !important; flex-direction: column; gap: 10px !important; }
.sunday-home-featured__cta { min-height: 43px !important; padding: 10px 22px !important; background: #2a193d !important; font-size: 13px !important; font-weight: 650 !important; }
.sunday-home-featured__card:last-child .sunday-home-featured__cta { background: #f5f1f9 !important; color: #2a193d !important; }
.sunday-home-featured__footer small { color: rgba(255,255,255,.72) !important; font-family: inherit !important; font-size: 10px !important; font-weight: 500; }

/* Selected-material cards: restrained, continuous hover motion. */
html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
  .sunday-home-featured.sunday-home-featured .sunday-home-featured__card {
  transform: translate3d(0, 0, 0) !important;
  transition: transform .56s cubic-bezier(.22, .61, .36, 1),
              background-color .5s cubic-bezier(.22, .61, .36, 1),
              box-shadow .56s cubic-bezier(.22, .61, .36, 1) !important;
}

html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
  .sunday-home-featured.sunday-home-featured
  :is(.sunday-home-featured__identity, .sunday-home-featured__footer) {
  transform: translate3d(0, 0, 0) !important;
  will-change: transform !important;
  transition: transform .62s cubic-bezier(.22, .61, .36, 1) !important;
}

html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
  .sunday-home-featured.sunday-home-featured .sunday-home-featured__image img {
  transform: translate3d(0, 0, 0) scale(1) !important;
  backface-visibility: hidden !important;
  will-change: transform !important;
  transition: transform .62s cubic-bezier(.22, .61, .36, 1),
              filter .5s ease !important;
}

html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
  .sunday-home-featured.sunday-home-featured .sunday-home-featured__meta span {
  transform: translate3d(0, 0, 0) !important;
  transition: transform .5s cubic-bezier(.4, 0, .2, 1),
              box-shadow .45s ease !important;
}

html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
  .sunday-home-featured.sunday-home-featured .sunday-home-featured__cta {
  transition: color .55s ease,
              background-color .55s ease,
              padding .55s cubic-bezier(.4, 0, .2, 1),
              box-shadow .55s ease !important;
}

html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
  .sunday-home-featured.sunday-home-featured .sunday-home-featured__cta-icon {
  transition: width .58s cubic-bezier(.4, 0, .2, 1),
              margin-left .58s cubic-bezier(.4, 0, .2, 1),
              opacity .42s ease,
              transform .58s cubic-bezier(.4, 0, .2, 1) !important;
}

@media (hover: hover) and (pointer: fine) {
  html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
    .sunday-home-featured.sunday-home-featured .sunday-home-featured__card:hover,
  html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
    .sunday-home-featured.sunday-home-featured .sunday-home-featured__card:focus-within {
    transform: translate3d(0, -4px, 0) !important;
    background: #534069 !important;
    box-shadow: 0 20px 44px rgba(16,10,23, .15) !important;
  }

  html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
    .sunday-home-featured.sunday-home-featured .sunday-home-featured__card:hover
    .sunday-home-featured__identity,
  html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
    .sunday-home-featured.sunday-home-featured .sunday-home-featured__card:focus-within
    .sunday-home-featured__identity {
    transform: translate3d(0, -10px, 0) !important;
  }

  html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
    .sunday-home-featured.sunday-home-featured .sunday-home-featured__card:hover
    .sunday-home-featured__image img,
  html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
    .sunday-home-featured.sunday-home-featured .sunday-home-featured__card:focus-within
    .sunday-home-featured__image img {
    transform: translate3d(0, 0, 0) scale(1.25) !important;
  }

  html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
    .sunday-home-featured.sunday-home-featured .sunday-home-featured__card:hover
    .sunday-home-featured__footer,
  html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
    .sunday-home-featured.sunday-home-featured .sunday-home-featured__card:focus-within
    .sunday-home-featured__footer {
    transform: translate3d(0, 8px, 0) !important;
  }

  html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
    .sunday-home-featured.sunday-home-featured .sunday-home-featured__card:hover
    .sunday-home-featured__meta span {
    transform: translate3d(0, -2px, 0) !important;
    box-shadow: 0 7px 16px rgba(20,12,30, .12) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body:is(.home, .single-product) :is(main#tbp_content#tbp_content, main#content#content)
    .sunday-home-featured.sunday-home-featured
    :is(.sunday-home-featured__card, .sunday-home-featured__identity,
        .sunday-home-featured__image img, .sunday-home-featured__footer,
        .sunday-home-featured__meta span, .sunday-home-featured__cta,
        .sunday-home-featured__cta-icon) {
    transition: none !important;
  }
}

@media (max-width: 1050px) {
  .sunday-home-featured__header { grid-template-columns: minmax(0,1fr) minmax(260px,.72fr) !important; }
  .sunday-home-featured__header > a { grid-column: 2 !important; }
  .sunday-home-featured__grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .sunday-home-featured__image img { height: 300px !important; }
}

@media (max-width: 680px) {
  .sunday-home-featured { padding: 56px 10px 64px !important; }

  /* Let the mobile reading order mirror the supplied reference: intro,
     four products, then the Shop all link. */
  .sunday-home-featured__inner {
    display: flex !important;
    flex-direction: column !important;
  }

  .sunday-home-featured__header {
    display: contents !important;
  }

  .sunday-home-featured__header h2 {
    order: 1;
    margin: 0 12px 16px !important;
    font-size: clamp(38px, 10.5vw, 46px) !important;
  }

  .sunday-home-featured__header p {
    order: 2;
    margin: 0 12px 32px !important;
    font-size: 13px !important;
  }

  .sunday-home-featured__grid {
    order: 3;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .sunday-home-featured__header > a {
    order: 4;
    align-self: flex-end;
    grid-column: auto !important;
    margin: 26px 12px 0 !important;
  }

  html body.home .sunday-home-featured__card,
  html body.home .sunday-home-featured__card--2,
  html body.home .sunday-home-featured__card--3,
  html body.home .sunday-home-featured__card--4 {
    display: flex !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 360px !important;
    padding: 11px 8px 14px !important;
    border-radius: 20px !important;
    box-sizing: border-box !important;
  }

  html body.home .sunday-home-featured__meta {
    top: 10px !important;
    left: 8px !important;
  }

  html body.home .sunday-home-featured__meta span {
    min-height: 20px !important;
    padding: 3px 7px !important;
    font-size: 8px !important;
  }

  html body.home .sunday-home-featured__identity {
    min-height: 76px !important;
    padding: 28px 2px 0 !important;
    flex: 0 0 76px !important;
    gap: 6px !important;
  }

  html body.home .sunday-home-featured__identity > span {
    min-height: 20px !important;
    padding: 3px 7px !important;
    font-size: 9px !important;
  }

  html body.home .sunday-home-featured__card h3 {
    font-size: clamp(16px, 4.5vw, 18px) !important;
    line-height: 1.08 !important;
    text-align: center !important;
  }

  html body.home .sunday-home-featured__image {
    flex: 0 0 174px !important;
    min-height: 174px !important;
    width: 100% !important;
    height: 174px !important;
    margin: 0 0 4px !important;
  }

  html body.home .sunday-home-featured__image img {
    position: relative !important;
    top: 8px !important;
    left: 0 !important;
    margin-right: auto !important;
    margin-left: auto !important;
    width: auto !important;
    height: 166px !important;
    max-width: 96% !important;
    object-position: center center !important;
  }

  html body.home .sunday-home-featured__footer {
    min-height: 78px !important;
    flex: 0 0 78px !important;
    gap: 8px !important;
  }

  html body.home .sunday-home-featured__cta,
  html body.home .sunday-home-featured__card:last-child .sunday-home-featured__cta {
    min-height: 40px !important;
    padding: 8px 14px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
  }

  html body.home .sunday-home-featured__footer small {
    font-size: 9px !important;
    white-space: nowrap !important;
  }
}
