.sf-home-hero{background:#080808;color:#fff}
.sf-home-hero__container{
  width:min(100%, 1600px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(340px,520px) minmax(0,1fr);
  min-height:clamp(480px,42vw,620px);
}
.sf-home-hero__content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(40px,4vw,72px);
}
.sf-home-hero__eyebrow,
.sf-home-featured__eyebrow,
.sf-site-footer__eyebrow{
  margin:0 0 16px;
  color:var(--sf-gold);
  font:700 .78rem var(--sf-sans);
  letter-spacing:.22em;
  text-transform:uppercase;
}
.sf-home-hero__title{
  margin:0 0 20px;
  max-width:6ch;
  font:600 clamp(3.2rem,4.8vw,5.4rem) var(--sf-serif);
  line-height:.9;
}
.sf-home-hero__subtitle{
  margin:0;
  max-width:28ch;
  color:#f0ebdf;
  font-size:clamp(1rem,1.15vw,1.15rem);
  line-height:1.7;
}
.sf-home-hero__actions{margin-top:30px}
.sf-home-hero__media{min-height:100%}
.sf-home-hero__media img{display:block;width:100%;height:100%;object-fit:cover}

.sf-home-featured{
  padding:clamp(56px,5vw,88px) 0 0;
}
.sf-home-featured__container{
  width:min(calc(100% - 40px),1360px);
  margin:0 auto;
}
.sf-home-featured__header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
}
.sf-home-featured__intro{
  max-width:640px;
}
.sf-home-featured__title{
  margin:0;
  font:600 clamp(2.2rem,2.8vw,3rem) var(--sf-serif);
  color:#111;
}
.sf-home-featured__lead{
  margin:10px 0 0;
  color:#5b564e;
  font-size:1rem;
  line-height:1.75;
}
.sf-home-featured__controls{
  display:flex;
  align-items:center;
  gap:10px;
  flex-shrink:0;
}
.sf-home-featured__control{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border:1px solid rgba(32,28,24,.16);
  border-radius:999px;
  background:#fff;
  color:#16130f;
  cursor:pointer;
  transition:border-color .2s ease, transform .2s ease, opacity .2s ease, background-color .2s ease;
}
.sf-home-featured__control:hover:not(:disabled){
  transform:translateY(-1px);
  border-color:rgba(32,28,24,.32);
}
.sf-home-featured__control:disabled{
  opacity:.35;
  cursor:default;
}
.sf-home-featured__control svg{
  width:18px;
  height:18px;
}
.sf-home-featured__carousel{
  padding-top:36px;
}
.sf-home-featured__viewport{
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
  -ms-overflow-style:none;
  scroll-behavior:smooth;
}
.sf-home-featured__viewport::-webkit-scrollbar{display:none}
.sf-home-product-rail{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(280px, 360px);
  gap:28px;
  width:max-content;
  padding-bottom:2px;
}
.sf-product-card{
  min-width:0;
}
.sf-product-card--featured{
  scroll-snap-align:start;
}
.sf-product-card__media{
  display:block;
  aspect-ratio:1 / 1;
  overflow:hidden;
  background:#f5f0e8;
}
.sf-product-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.sf-product-card:hover .sf-product-card__media img{transform:scale(1.02)}
.sf-product-card__body{padding-top:14px}
.sf-product-card__title{
  margin:0;
  font:600 1.12rem/1.32 var(--sf-serif);
  color:#181512;
}
.sf-product-card__title a{color:inherit;text-decoration:none}
.sf-product-card__meta{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:8px;
  color:#746d61;
  font-size:.88rem;
}
.sf-product-card__price{
  margin-top:10px;
  color:#14110d;
  font:600 1rem var(--sf-sans);
}
@media (max-width: 1279px){
  .sf-home-hero__container{grid-template-columns:minmax(320px,470px) minmax(0,1fr);min-height:520px}
}
@media (max-width: 1023px){
  .sf-home-hero__container{grid-template-columns:1fr;min-height:auto}
  .sf-home-hero__content{order:2;padding:42px 32px 44px}
  .sf-home-hero__media{order:1;min-height:360px}
  .sf-home-hero__title{max-width:8ch;font-size:clamp(3rem,8vw,4.2rem)}
  .sf-home-hero__subtitle{max-width:40ch}
  .sf-home-featured__container{width:min(calc(100% - 32px),1200px)}
  .sf-home-featured__header{align-items:flex-start}
  .sf-home-product-rail{grid-auto-columns:minmax(256px, 300px)}
}
@media (max-width: 767px){
  .sf-home-hero__content{padding:34px 20px 38px}
  .sf-home-hero__media{min-height:300px}
  .sf-home-hero__title{font-size:clamp(2.35rem,11vw,3rem);max-width:7ch;margin-bottom:14px}
  .sf-home-hero__subtitle{font-size:.98rem}
  .sf-home-featured{padding-top:44px}
  .sf-home-featured__container{width:min(calc(100% - 24px),100%)}
  .sf-home-featured__header{display:block}
  .sf-home-featured__controls{display:none}
  .sf-home-featured__title{font-size:2rem}
  .sf-home-featured__lead{margin-top:12px}
  .sf-home-featured__carousel{padding-top:24px}
  .sf-home-product-rail{grid-auto-columns:minmax(232px, min(74vw, 252px));gap:16px}
}
@media (max-width: 479px){
  .sf-home-hero__media{min-height:260px}
  .sf-home-product-rail{grid-auto-columns:minmax(220px, min(72vw, 238px))}
}
