/* SM FARMSS V34 — compact three-across home store, readable pill links, tidy marquee */
/* This stylesheet deliberately loads last so older V20–V33 breakpoints cannot undo fixes. */
.store-teaser .store-teaser-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:clamp(9px,1.7vw,18px)!important;
  align-items:stretch;
  margin-top:18px!important;
}
.store-teaser .store-mini-card{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  justify-content:flex-start!important;gap:9px!important;
  min-width:0!important;width:100%!important;max-width:100%!important;
  padding:12px!important;border-radius:20px!important;overflow:hidden;
  background:#fffdf8;border:1px solid #e7e1d4;
  box-shadow:0 7px 23px rgba(22,48,29,.055);
  min-height:0!important;
}
.store-teaser .store-mini-card img{
  display:block!important;width:100%!important;height:auto!important;min-height:0!important;
  max-height:none!important;aspect-ratio:1.65 / 1!important;
  object-fit:cover!important;border-radius:13px!important;
}
.store-teaser .store-mini-card>div{width:100%!important;min-width:0!important;flex:1 1 auto!important;}
.store-teaser .store-mini-card small{
  display:block!important;font-size:clamp(8px,.72vw,10px)!important;
  font-weight:800;letter-spacing:.06em!important;line-height:1.35!important;
  overflow-wrap:anywhere!important;
}
.store-teaser .store-mini-card strong{
  display:block!important;font-size:clamp(18px,2.05vw,28px)!important;
  line-height:1.14!important;margin-top:4px!important;
  overflow-wrap:normal;word-break:normal;
}
.store-teaser .store-mini-card>span{
  margin-top:auto!important;display:block!important;min-width:0!important;
  font-size:clamp(10px,.82vw,12px)!important;font-weight:800!important;
  letter-spacing:0!important;white-space:normal!important;line-height:1.35!important;
}
/* On tablet, keep the longer Work with us link intact instead of shrinking it inside the paragraph flex row. */
.intro-under{flex-wrap:wrap!important;column-gap:22px!important;row-gap:16px!important}
.intro-under p{flex:1 1 380px!important;min-width:0!important}
.intro-under a.underlined-link{flex:0 0 auto!important;min-width:max-content!important}
/* Make the 3 homepage text links real padded and self-contained pill buttons. */
.intro-under a.underlined-link,
.collection .section-side a.underlined-link,
.store-teaser .section-side a.underlined-link{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex-wrap:nowrap!important;gap:10px!important;
  min-height:48px!important;height:auto!important;width:max-content!important;
  min-width:0!important;max-width:100%!important;
  margin:0!important;padding:11px 19px!important;
  font-size:clamp(12px,1.05vw,14px)!important;font-weight:800!important;
  white-space:nowrap!important;line-height:1.2!important;letter-spacing:.025em!important;
  color:#103c29!important;border:1px solid #d6be9b!important;
  border-radius:999px!important;background:#fffdf8!important;
  text-decoration:none!important;box-shadow:0 2px 0 #c9ac7f;
  box-sizing:border-box!important;
}
.intro-under a.underlined-link:hover,
.collection .section-side a.underlined-link:hover,
.store-teaser .section-side a.underlined-link:hover{
  background:#e9d4b3!important;border-color:#bd935d!important;
}
a.underlined-link .cta-arrow{
  display:inline-block!important;flex:0 0 auto!important;width:17px!important;
  font-family:Arial,sans-serif!important;font-size:17px!important;
  font-variant-emoji:text!important;line-height:1!important;white-space:nowrap!important;
  text-align:center!important;
}
/* Intro heading must not join 'fruit' with 'has' on mobile. */
.intro-right h2{word-spacing:normal;}
/* Ensure each marquee item keeps its width: overlapping text is from flex shrinking. */
.moving-ribbon{
  height:48px!important;display:flex!important;align-items:center!important;
  overflow:hidden!important;isolation:isolate;
}
.moving-ribbon .marquee-track{
  display:flex!important;flex:0 0 auto!important;flex-wrap:nowrap!important;
  align-items:center!important;gap:31px!important;
  width:max-content!important;min-width:max-content!important;
  animation:smfarmssV34Ribbon 32s linear infinite!important;
  will-change:transform;
}
.moving-ribbon .marquee-track>*{
  display:block!important;flex:0 0 auto!important;flex-shrink:0!important;
  white-space:nowrap!important;min-width:max-content!important;
  line-height:1.2!important;
}
.moving-ribbon .marquee-track span{font-size:14px!important;letter-spacing:.055em!important;}
.moving-ribbon .marquee-track i{font-size:12px!important;}
@keyframes smfarmssV34Ribbon{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width: 690px){
  .intro-under{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:16px!important;}
  .intro-under p{flex:0 1 auto!important;width:100%!important;min-height:0!important;}
  .store-teaser .store-teaser-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin-top:17px!important;}
  .store-teaser .store-mini-card{padding:7px!important;gap:6px!important;border-radius:14px!important;}
  .store-teaser .store-mini-card img{height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:1.06 / 1!important;border-radius:10px!important;}
  .store-teaser .store-mini-card small{font-size:8px!important;letter-spacing:0!important;line-height:1.25!important;}
  .store-teaser .store-mini-card strong{font-size:clamp(13px,3.5vw,17px)!important;line-height:1.12!important;margin-top:4px!important;}
  .store-teaser .store-mini-card>span{font-size:10px!important;line-height:1.2!important;}
  .intro-under a.underlined-link,
  .collection .section-side a.underlined-link,
  .store-teaser .section-side a.underlined-link{
     min-height:48px!important;padding:12px 20px!important;
     font-size:13px!important;letter-spacing:0!important;
  }
  .intro-right h2 br{display:none!important}
  .intro-right h2{font-size:clamp(30px,8.0vw,35px)!important;line-height:1.17!important;}
  .moving-ribbon{height:40px!important}
  .moving-ribbon .marquee-track{gap:22px!important;animation-duration:30s!important}
  .moving-ribbon .marquee-track span{font-size:12px!important;letter-spacing:.035em!important}
  .moving-ribbon .marquee-track i{font-size:10px!important}
}
@media(max-width:355px){
  .store-teaser .store-mini-card{padding:6px!important;gap:5px!important;}
  .store-teaser .store-mini-card small{font-size:7px!important;}
  .store-teaser .store-mini-card strong{font-size:13px!important;}
  .store-teaser .store-mini-card>span{font-size:9px!important;}
}
@media(prefers-reduced-motion:reduce){
  .moving-ribbon .marquee-track{animation:none!important;transform:none!important;}
}
