:root{
  --sm-bg:#f3f4ef;
  --sm-surface:#ffffff;
  --sm-muted-surface:#eceee7;
  --sm-text:#171a1f;
  --sm-text-soft:#5f6673;
  --sm-border:rgba(23,26,31,.10);
  --sm-accent:#2f8f83;
  --sm-accent-2:#6aa7d9;
  --sm-gold:#c99557;
  --sm-radius:22px;
  --sm-shadow:0 14px 40px rgba(19,28,35,.08);
  --sm-content-width:1240px;
  --sm-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  --sm-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, Helvetica, Arial, sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:linear-gradient(180deg,#f3f4ef 0%, #f7f7f4 55%, #f2f4ef 100%);
  color:var(--sm-text);
  font-family:var(--sm-sans);
  line-height:1.6;
  font-size:18px;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.sm-container{width:min(var(--sm-content-width), calc(100% - 2rem)); margin-inline:auto}
.sm-site-main{padding:1.2rem 0 2.4rem}
.sm-card{
  background:rgba(255,255,255,.92);
  border:1px solid var(--sm-border);
  border-radius:var(--sm-radius);
  box-shadow:var(--sm-shadow);
  backdrop-filter:saturate(120%) blur(4px);
}

/* Header */
.sm-site-header{
  position:sticky; top:0; z-index:60;
  background:rgba(231,235,223,.88);
  backdrop-filter: blur(10px);
  border-bottom:1px solid rgba(23,26,31,.07);
}
.sm-header-inner{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:1rem;
  align-items:center;
  min-height:84px;
  padding:.65rem 0;
}
.sm-brand .custom-logo-link{display:flex; align-items:center;}
.sm-brand .custom-logo{width:auto; max-height:58px; min-height:36px;}
.sm-site-title{
  font-weight:800;
  font-size:clamp(1.25rem, 2vw, 1.75rem);
  letter-spacing:-.02em;
}
.sm-header-nav-wrap{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:1rem;
}
.sm-primary-nav{margin-left:auto}
.sm-menu{list-style:none; margin:0; padding:0}
.sm-menu--primary{display:flex; gap:.75rem; align-items:center; flex-wrap:wrap}
.sm-menu--primary > li > a{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  padding:.55rem .8rem;
  border-radius:999px;
  color:var(--sm-text);
  font-family:var(--sm-mono);
  font-size:clamp(.82rem, .6vw + .62rem, 1.02rem);
  line-height:1.2;
  transition:.18s ease;
}
.sm-menu--primary > li.current-menu-item > a,
.sm-menu--primary > li.current_page_item > a,
.sm-menu--primary > li > a:hover{
  background:rgba(23,26,31,.06);
}
.sm-search-form{
  display:flex; align-items:center;
  background:#fff; border:1px solid var(--sm-border); border-radius:999px;
  padding:.25rem .3rem .25rem .7rem; min-width:180px;
}
.sm-search-field{
  border:0; outline:none; background:transparent;
  width:100%; min-width:0; font-size:.95rem; color:var(--sm-text);
}
.sm-search-submit{
  border:0; background:#15181d; color:#fff; width:34px; height:34px;
  border-radius:999px; cursor:pointer; font-size:16px; line-height:1;
}
.sm-nav-toggle{
  display:none;
  border:1px solid var(--sm-border);
  background:#fff;
  width:44px; height:44px; border-radius:14px;
  padding:0; cursor:pointer;
  align-items:center; justify-content:center; flex-direction:column; gap:4px;
}
.sm-nav-toggle span:not(.screen-reader-text){
  display:block; width:18px; height:2px; background:var(--sm-text); border-radius:99px;
}

/* Footer */
.sm-site-footer{
  margin-top:2rem;
  background:#171a1f;
  color:#f1f3f5;
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:2rem;
}
.sm-footer-grid{
  display:grid;
  grid-template-columns:1.3fr 1fr 1fr 1fr;
  gap:1.25rem;
  align-items:start;
}
.sm-footer-brand, .sm-footer-menu{
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.06);
  border-radius:20px;
  padding:1rem 1rem 1.1rem;
  min-height:100%;
}
.sm-footer-logo .custom-logo{max-height:44px; width:auto; filter:grayscale(1) brightness(3);}
.sm-footer-brand .sm-site-title{color:#fff}
.sm-footer-brand p{
  margin:.8rem 0 0;
  color:rgba(255,255,255,.75);
  font-size:.95rem;
  max-width:36ch;
}
.sm-footer-menu h3{
  margin:0 0 .7rem;
  font-family:var(--sm-mono);
  font-size:1rem;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:#fff;
}
.sm-menu--footer li + li{margin-top:.35rem}
.sm-menu--footer a{
  color:rgba(255,255,255,.9);
  padding:.15rem 0;
  display:inline-block;
}
.sm-menu--footer a:hover{color:#fff;text-decoration:underline}
.sm-footer-bottom{
  margin-top:1.2rem;
  padding:1rem 0 1.6rem;
  color:rgba(255,255,255,.7);
  font-size:.9rem;
}

/* Generic content */
.sm-page-wrap{padding-top:1rem}
.sm-entry{
  background:rgba(255,255,255,.92);
  border:1px solid var(--sm-border);
  border-radius:var(--sm-radius);
  box-shadow:var(--sm-shadow);
  padding:clamp(1rem, 2vw, 1.65rem);
}
.entry-header{margin-bottom:1rem}
.entry-title{
  margin:.1rem 0 .35rem;
  font-size:clamp(1.65rem, 1.25rem + 1.6vw, 2.65rem);
  line-height:1.08;
  letter-spacing:-.03em;
}
.entry-meta{
  color:var(--sm-text-soft);
  font-size:.95rem;
  font-family:var(--sm-mono);
}
.sm-featured-image{
  margin:.6rem 0 1rem;
  border-radius:18px;
  overflow:hidden;
  background:#edf1f5;
  border:1px solid var(--sm-border);
}
.sm-featured-image img{width:100%; height:auto}
.entry-content{
  color:#222833;
  line-height:1.75;
  font-size:1rem;
}
.entry-content p{margin:0 0 1.05em}
.entry-content h2, .entry-content h3, .entry-content h4{
  line-height:1.2;
  letter-spacing:-.02em;
  margin:1.35em 0 .55em;
  color:#171a1f;
}
.entry-content h2{font-size:1.6rem}
.entry-content h3{font-size:1.3rem}
.entry-content h4{font-size:1.1rem}
.entry-content strong{font-weight:800;color:#12161c}
.entry-content em{
  color:#475366;
  font-style:italic;
  background:linear-gradient(transparent 60%, rgba(47,143,131,.12) 60%);
}
.entry-content a{
  color:var(--sm-accent);
  text-decoration:underline;
  text-decoration-thickness:2px;
  text-underline-offset:3px;
  font-weight:650;
}
.entry-content a:hover{color:#1c746a}
.entry-content ul, .entry-content ol{
  margin:0 0 1.1em 1.25em;
  padding:0;
}
.entry-content li{margin:.4em 0}
.entry-content blockquote{
  margin:1.2em 0;
  padding:1rem 1rem 1rem 1.1rem;
  border-left:4px solid var(--sm-accent);
  border-radius:14px;
  background:linear-gradient(135deg, rgba(47,143,131,.07), rgba(106,167,217,.05));
  box-shadow:inset 0 0 0 1px rgba(47,143,131,.1);
  position:relative;
}
.entry-content blockquote::before{
  content:"✚";
  position:absolute;
  top:.55rem; right:.8rem;
  color:rgba(47,143,131,.45);
  font-size:1.1rem;
  font-weight:800;
}
.entry-content hr{
  border:0;
  border-top:1px solid rgba(23,26,31,.1);
  margin:1.6rem 0;
}

/* Home page */
.sm-front-page{
  display:grid; gap:1rem;
  padding-top:1rem;
}
.sm-home-hero{
  display:grid;
  grid-template-columns:1.4fr .85fr;
  gap:1.2rem;
  padding:clamp(1rem, 2vw, 1.4rem);
  background:
    radial-gradient(800px 420px at 12% 0%, rgba(201,149,87,.10), transparent 55%),
    radial-gradient(700px 360px at 100% 100%, rgba(47,143,131,.10), transparent 60%),
    rgba(255,255,255,.88);
}
.sm-home-hero__title{
  margin:0 0 .6rem;
  font-size:clamp(2rem, 1.1rem + 3vw, 4.1rem);
  line-height:.95;
  letter-spacing:-.045em;
  max-width:15ch;
}
.sm-home-hero__content p{
  color:#333b49;
  margin:0;
  max-width:52ch;
}
.sm-home-hero__aside{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:1rem;
  align-items:flex-start;
}
.sm-home-hero__aside p{
  margin:0;
  color:#5f6673;
  font-size:clamp(1rem,.95rem + .4vw,1.15rem);
  max-width:30ch;
}

.sm-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:999px;
  background:#12161c;
  color:#fff;
  padding:.85rem 1.25rem;
  min-height:48px;
  font-weight:700;
  letter-spacing:-.01em;
  cursor:pointer;
  box-shadow:0 10px 20px rgba(18,22,28,.14);
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
  text-align:center;
}
.sm-btn:hover{transform:translateY(-1px); box-shadow:0 12px 24px rgba(18,22,28,.18)}
.sm-btn:active{transform:translateY(0)}
.sm-text-link{
  color:var(--sm-text);
  font-weight:700;
  text-decoration:underline;
  text-decoration-thickness:2px;
  text-underline-offset:3px;
}
.sm-text-link:hover{color:var(--sm-accent)}
.sm-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin:.25rem 0 .5rem;
}
.sm-section-head h2{
  margin:0;
  letter-spacing:-.03em;
  font-size:clamp(1.25rem, .95rem + 1vw, 1.9rem);
}
.sm-home-cat-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:.9rem;
}
.sm-home-cat-card{
  background:rgba(255,255,255,.88);
  border:1px solid var(--sm-border);
  border-radius:20px;
  overflow:hidden;
  box-shadow:var(--sm-shadow);
  display:flex; flex-direction:column;
  min-height:260px;
  transition:transform .2s ease, box-shadow .2s ease;
}
.sm-home-cat-card:hover{transform:translateY(-3px); box-shadow:0 18px 36px rgba(19,28,35,.10)}
.sm-home-cat-card__media{
  aspect-ratio:16/10;
  background:linear-gradient(135deg, #eef1ea, #f9f9f6);
  display:grid; place-items:center;
  overflow:hidden;
}
.sm-home-cat-card__media img{
  width:100%; height:100%; object-fit:cover;
  transform:scale(1.02);
}
.sm-home-cat-card__placeholder{
  color:rgba(23,26,31,.35);
  font-size:2.5rem;
  font-weight:800;
}
.sm-home-cat-card__body{
  padding:.9rem .9rem 1rem;
  display:flex; flex-direction:column; gap:.2rem;
}
.sm-home-cat-card__body h3{
  margin:0;
  font-size:1.1rem;
  letter-spacing:-.02em;
}
.sm-home-cat-card__body span{
  color:var(--sm-text-soft);
  font-size:.92rem;
}

/* Offer card */
.sm-offer-card{
  --sm-g1:#EAF4F2;
  --sm-g2:#DCE7F7;
  border-radius:20px;
  border:1px solid rgba(23,26,31,.08);
  padding:1rem;
  background:
    radial-gradient(180px 140px at 100% 0%, rgba(255,255,255,.78), rgba(255,255,255,0) 70%),
    linear-gradient(135deg, var(--sm-g1), var(--sm-g2));
  box-shadow:0 14px 30px rgba(20,27,35,.08);
  color:#181d24;
}
.sm-offer-badge{
  display:inline-flex; align-items:center;
  padding:.35rem .65rem;
  border-radius:999px;
  background:rgba(18,22,28,.88);
  color:#fff;
  font-size:.78rem;
  font-weight:700;
  margin-bottom:.6rem;
}
.sm-offer-title{
  margin:0 0 .25rem;
  letter-spacing:-.03em;
  line-height:1.05;
  font-size:1.35rem;
}
.sm-offer-subtitle{
  margin:0 0 .45rem;
  color:#485366;
  font-weight:600;
  font-size:.95rem;
}
.sm-offer-rating{
  margin:.25rem 0 .65rem;
  color:#bf8b42;
  font-weight:700;
  letter-spacing:.02em;
}
.sm-offer-rating span{color:#525d6f; margin-left:.35rem; font-weight:600}
.sm-offer-desc{
  color:#1f2530;
  font-size:.95rem;
  line-height:1.55;
}
.sm-offer-desc p{margin:0 0 .5rem}
.sm-offer-meta{
  margin-top:.65rem;
  padding-top:.65rem;
  border-top:1px solid rgba(23,26,31,.08);
  display:grid;
  gap:.2rem;
}
.sm-offer-meta p{
  margin:0;
  color:#4b5568;
  font-size:.92rem;
}
.sm-offer-meta strong{color:#12161c}
.sm-btn--offer{
  margin-top:.85rem;
  width:100%;
  background:#12161c;
}

.sm-product-single-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.6fr) minmax(280px, .7fr);
  gap:1rem;
  align-items:start;
  padding-top:1rem;
}
.sm-sticky-column{display:block}
.sm-sticky-wrap{position:sticky; top:104px}
.sm-offer-inline-mobile{display:none}
.sm-admin-hint{font-size:.9rem; color:#333}
.sm-tax-links{
  display:flex; flex-wrap:wrap; gap:.4rem;
  margin-bottom:.5rem;
}
.sm-pill{
  display:inline-flex; align-items:center;
  padding:.28rem .65rem;
  border-radius:999px;
  background:rgba(47,143,131,.09);
  color:var(--sm-accent);
  border:1px solid rgba(47,143,131,.15);
  font-weight:700;
  font-size:.82rem;
}
.sm-featured-image--product{margin-top:.3rem}

/* Archive + taxonomy */
.sm-archive-layout{
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:1rem;
  align-items:start;
  padding-top:1rem;
}
.sm-archive-sidebar{display:grid; gap:1rem}
.sm-cat-filter{
  padding:1rem;
  position:sticky; top:104px;
}
.sm-cat-filter h3{
  margin:0 0 .7rem;
  font-size:1rem;
  font-family:var(--sm-mono);
  text-transform:uppercase;
  letter-spacing:.02em;
}
.sm-cat-filter ul{
  list-style:none; margin:0; padding:0;
  display:grid; gap:.35rem;
}
.sm-cat-filter li a{
  display:block;
  padding:.55rem .7rem;
  border-radius:12px;
  border:1px solid transparent;
  color:#2b3342;
  font-weight:600;
}
.sm-cat-filter li a:hover{background:rgba(23,26,31,.04)}
.sm-cat-filter li.is-active a{
  background:rgba(47,143,131,.09);
  border-color:rgba(47,143,131,.15);
  color:var(--sm-accent);
}

.sm-archive-content{min-width:0}
.sm-archive-header{
  margin-bottom:.8rem;
  padding:1rem 1.05rem;
  background:rgba(255,255,255,.75);
  border:1px solid var(--sm-border);
  border-radius:18px;
}
.sm-archive-header h1{
  margin:0 0 .25rem;
  font-size:clamp(1.4rem, 1rem + 1.3vw, 2.1rem);
  letter-spacing:-.03em;
  line-height:1.05;
}
.sm-archive-header p,
.sm-archive-header .sm-term-description{
  margin:0;
  color:#5f6673;
}

.sm-product-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:.95rem;
}
.sm-product-card{
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  gap:.8rem;
  background:rgba(255,255,255,.9);
  border:1px solid var(--sm-border);
  border-radius:20px;
  overflow:hidden;
  box-shadow:var(--sm-shadow);
}
.sm-product-card__image{
  background:linear-gradient(135deg,#eef2eb,#fbfbf8);
  min-height:100%;
  display:flex;
}
.sm-product-card__image img{
  width:100%; height:100%; object-fit:cover;
}
.sm-product-card__placeholder{
  display:grid; place-items:center;
  width:100%; min-height:100%;
  color:rgba(23,26,31,.35);
  font-size:2rem; font-weight:800;
}
.sm-product-card__body{
  padding:.85rem .9rem .95rem .1rem;
  display:grid; align-content:start; gap:.35rem;
}
.sm-product-card__body h2{
  margin:0;
  font-size:1.15rem;
  line-height:1.15;
  letter-spacing:-.02em;
}
.sm-product-card__body p{
  margin:0;
  color:#5e6777;
  font-size:.95rem;
  line-height:1.45;
}

/* Search and loops */
.sm-search-results,
.sm-post-list{display:grid; gap:.9rem}
.sm-loop-card, .sm-search-item{padding:1rem}
.sm-search-item__type{
  display:inline-flex;
  background:rgba(23,26,31,.06);
  color:#343c48;
  font-size:.8rem;
  border-radius:999px;
  padding:.2rem .55rem;
  margin-bottom:.35rem;
  font-family:var(--sm-mono);
}
.sm-search-item h2, .sm-loop-card h2{
  margin:.15rem 0 .4rem;
  line-height:1.15;
  letter-spacing:-.02em;
}
.sm-search-item p, .sm-loop-card .entry-excerpt{
  margin:0;
  color:#596172;
}

/* BMI */
.sm-bmi-card{padding:1rem}
.sm-field-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.8rem;
  align-items:end;
}
.sm-field label{
  display:block;
  margin:0 0 .4rem;
  font-weight:700;
  color:#2b3342;
  font-size:.95rem;
}
.sm-field input{
  width:100%;
  border:1px solid var(--sm-border);
  background:#fff;
  border-radius:14px;
  padding:.8rem .9rem;
  font-size:1rem;
  outline:none;
}
.sm-field input:focus{
  border-color:rgba(47,143,131,.45);
  box-shadow:0 0 0 4px rgba(47,143,131,.12);
}
.sm-field--button .sm-btn{width:100%}
.sm-bmi-result{
  margin-top:.8rem;
  padding:.9rem;
  border-radius:16px;
  background:rgba(47,143,131,.07);
  border:1px solid rgba(47,143,131,.12);
}
.sm-bmi-value{
  margin:0;
  display:flex;
  align-items:baseline;
  gap:.5rem;
  line-height:1;
}
.sm-bmi-value span{color:#445061; font-weight:700}
.sm-bmi-value strong{
  font-size:2rem;
  letter-spacing:-.03em;
  color:#161c24;
}
.sm-bmi-status{margin:.35rem 0 0; color:#2b3342; font-weight:700}
.sm-bmi-note{margin:.8rem 0 0; color:#616b7b; font-size:.92rem}
.sm-below-calculator-content{margin-top:1rem}

/* 404 */
.sm-404{
  margin-top:1rem;
  padding:2rem 1.2rem;
  text-align:center;
  background:
    radial-gradient(700px 260px at 50% 0%, rgba(47,143,131,.08), transparent 65%),
    rgba(255,255,255,.88);
}
.sm-404__icon{
  width:72px; height:72px;
  margin:0 auto .75rem;
  display:grid; place-items:center;
  border-radius:20px;
  background:#12161c;
  color:#fff;
  font-size:2rem;
  box-shadow:0 16px 30px rgba(18,22,28,.2);
}
.sm-404 h1{
  margin:0 0 .35rem;
  font-size:3rem;
  line-height:.95;
  letter-spacing:-.04em;
}
.sm-404 p{
  margin:0 auto 1rem;
  color:#60697a;
  max-width:48ch;
}

/* Pagination */
.sm-pagination{
  margin-top:1rem;
  display:flex;
  justify-content:center;
}
.sm-pagination .nav-links{
  display:flex; gap:.35rem; flex-wrap:wrap;
}
.sm-pagination a, .sm-pagination span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:40px;
  height:40px;
  padding:0 .75rem;
  border-radius:12px;
  border:1px solid var(--sm-border);
  background:#fff;
  font-weight:700;
}
.sm-pagination .current{
  background:#12161c; color:#fff; border-color:#12161c;
}

/* Widgets */
.widget{padding:1rem}
.widget-title{margin:0 0 .6rem; font-size:1rem; letter-spacing:-.02em}
.widget ul{margin:0; padding-left:1rem}
.widget li{margin:.35rem 0}
.sm-no-content{padding:1rem}

/* WP utilities */
.screen-reader-text{
  position:absolute!important;
  height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);
  white-space:nowrap;clip-path:inset(50%);
}
.alignwide{width:calc(100% + 2rem); margin-left:-1rem}
.alignfull{width:100vw; margin-left:calc(50% - 50vw)}

/* Responsive */
@media (max-width: 1180px){
  .sm-home-cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sm-footer-grid{grid-template-columns:1fr 1fr}
  .sm-product-grid{grid-template-columns:1fr}
  .sm-product-card{grid-template-columns:160px minmax(0,1fr)}
  .sm-home-hero{grid-template-columns:1fr}
  .sm-home-hero__aside{align-items:flex-start}
}

@media (max-width: 980px){
  .sm-header-inner{
    grid-template-columns:auto auto;
    grid-template-areas:
      "brand toggle"
      "nav nav";
    align-items:center;
  }
  .sm-brand{grid-area:brand}
  .sm-nav-toggle{grid-area:toggle; display:inline-flex; margin-left:auto}
  .sm-header-nav-wrap{
    grid-area:nav;
    display:none;
    width:100%;
    flex-direction:column;
    align-items:stretch;
    padding:.45rem 0 .2rem;
    gap:.6rem;
  }
  .sm-header-nav-wrap.is-open{display:flex}
  .sm-primary-nav{margin-left:0}
  .sm-menu--primary{
    display:grid;
    grid-template-columns:1fr;
    gap:.35rem;
  }
  .sm-menu--primary > li > a{
    border-radius:14px;
    background:rgba(255,255,255,.7);
    border:1px solid rgba(23,26,31,.06);
    justify-content:flex-start;
    padding:.7rem .85rem;
  }
  .sm-search-form{width:100%}
  .sm-archive-layout{
    grid-template-columns:1fr;
  }
  .sm-cat-filter{
    position:static;
  }
  .sm-product-single-layout{
    grid-template-columns:1fr;
  }
  .sm-sticky-column{display:none}
  .sm-offer-inline-mobile{display:block; margin:0 0 1rem}
  .sm-offer-inline-mobile .sm-offer-card{display:block}
  .sm-field-grid{
    grid-template-columns:1fr;
  }
  .sm-home-cat-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 680px){
  body{font-size:19px}
  .sm-container{width:min(var(--sm-content-width), calc(100% - 1rem))}
  .sm-site-main{padding-top:.8rem}
  .sm-header-inner{min-height:72px}
  .sm-brand .custom-logo{max-height:44px}
  .entry-title{font-size:clamp(1.6rem, 5vw, 2.15rem)}
  .entry-content{font-size:1.03rem; line-height:1.8}
  .entry-content h2{font-size:1.35rem}
  .entry-content h3{font-size:1.15rem}
  .sm-home-hero__title{font-size:clamp(1.8rem, 9vw, 2.6rem)}
  .sm-home-cat-grid{grid-template-columns:1fr}
  .sm-home-cat-card{min-height:unset}
  .sm-product-card{
    grid-template-columns:1fr;
  }
  .sm-product-card__image{aspect-ratio:16/10}
  .sm-product-card__body{padding:.8rem .85rem .95rem}
  .sm-footer-grid{grid-template-columns:1fr}
  .sm-footer-brand, .sm-footer-menu{padding:.9rem}
  .sm-search-form{min-width:0}
  .sm-btn{width:100%}
  .sm-home-hero__aside .sm-btn{width:auto}
}

@media (prefers-reduced-motion: reduce){
  *{scroll-behavior:auto}
  .sm-home-cat-card, .sm-btn{transition:none}
}
