:root {
  --mt-gold: #b58a3d;
  --mt-cream: #fbf6ea;
  --mt-ink: #252525;
  --mt-muted: #777;
  --mt-line: #ece8df;
  --mt-green: #edf5dd;
  --mt-yellow: #fff0ad;
  --mt-shell: 1180px;
}

.mt-homepage { background:#fff; color:var(--mt-ink); overflow:hidden; }
.mt-shell { width:min(var(--mt-shell), calc(100% - 32px)); margin-inline:auto; }
.mt-homepage a { text-decoration:none; }
.mt-btn { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:0 22px; text-transform:uppercase; letter-spacing:.06em; font-size:11px; font-weight:700; transition:.2s ease; }
.mt-btn--dark { background:#171717; color:#fff; }
.mt-btn--dark:hover { background:var(--mt-gold); color:#fff; }
.mt-btn--outline { border:1px solid currentColor; color:#333; background:#fff; }
.mt-btn--outline-dark { border:1px solid #222; color:#222; background:transparent; }

.mt-hero { min-height:420px; background-image:var(--mt-hero, linear-gradient(90deg,#8b552f 0%,#bb865b 42%,#eedab6 100%)); background-size:cover; background-position:center; display:grid; align-items:center; }
.mt-hero__inner { display:flex; align-items:center; min-height:420px; }
.mt-hero__copy { width:min(520px,62%); color:#fff; padding:48px 0; text-shadow:0 1px 8px rgba(0,0,0,.22); }
.mt-kicker { text-transform:uppercase; font-size:12px; letter-spacing:.16em; margin:0 0 8px; }
.mt-hero h1 { color:#fff; font-size:clamp(34px,4vw,58px); line-height:1.02; font-weight:400; margin:0 0 14px; }
.mt-hero p:not(.mt-kicker) { font-size:16px; margin-bottom:24px; }

.mt-corporate { margin:18px 0 30px; background-image:var(--mt-corp, linear-gradient(90deg,#e8fbff,#fff 55%,#e9ffd8)); background-size:cover; background-position:center; border-block:1px solid #edf0ed; }
.mt-corporate__inner { min-height:92px; display:flex; align-items:center; justify-content:center; gap:26px; text-align:center; color:#2e6c75; }
.mt-corporate__inner strong { display:block; font-size:22px; }
.mt-corporate__inner span:not(.mt-btn) { display:block; font-size:14px; color:#333; }

.mt-categories { padding:14px 0 36px; text-align:center; }
.mt-categories h2 { font-size:20px; margin:0 0 26px; font-weight:500; }
.mt-category-row { display:grid; grid-template-columns:repeat(10,1fr); gap:12px; }
.mt-category { color:#333; font-size:11px; line-height:1.25; }
.mt-category__image { width:74px; height:74px; margin:0 auto 9px; display:block; border-radius:50%; overflow:hidden; background:#faf7ef; border:1px solid #f0ece3; }
.mt-category__image img { width:100%; height:100%; object-fit:cover; transition:transform .25s ease; }
.mt-category:hover img { transform:scale(1.06); }

.mt-product-band { display:grid; grid-template-columns:230px 1fr; gap:16px; margin-bottom:18px; }
.mt-product-band--right { grid-template-columns:1fr 230px; }
.mt-product-band--right .mt-promo-card { order:2; }
.mt-product-band--right .mt-products { order:1; }
.mt-promo-card { background:var(--mt-cream); min-height:610px; padding:28px 22px; display:flex; flex-direction:column; justify-content:center; text-align:center; background-image:radial-gradient(circle at 50% 12%,rgba(181,138,61,.12),transparent 28%); }
.mt-promo-card__eyebrow { text-transform:uppercase; font-size:11px; letter-spacing:.08em; color:#8e7b5a; margin-bottom:12px; }
.mt-promo-card h2 { text-transform:uppercase; font-size:24px; line-height:1.12; margin:0 0 16px; font-weight:500; }
.mt-promo-card p { color:#756e64; font-size:13px; line-height:1.55; }
.mt-promo-card .mt-btn { margin:8px auto 0; }

.mt-products { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.mt-product-card { border:1px solid var(--mt-line); background:#fff; position:relative; min-width:0; transition:box-shadow .2s ease, transform .2s ease; }
.mt-product-card:hover { box-shadow:0 8px 24px rgba(0,0,0,.07); transform:translateY(-2px); }
.mt-product-card__wish { position:absolute; z-index:2; top:8px; right:10px; color:#777; font-size:18px; }
.mt-product-card__image { display:block; aspect-ratio:1/1; background:#fff; overflow:hidden; }
.mt-product-card__image img { width:100%; height:100%; object-fit:contain; padding:8px; }
.mt-product-card__body { padding:11px 12px 15px; text-align:center; }
.mt-product-card h3 { font-size:12px; line-height:1.35; min-height:34px; margin:0 0 9px; font-weight:500; }
.mt-product-card h3 a { color:#333; }
.mt-product-card__price { color:#c79044; font-weight:600; font-size:12px; }
.mt-product-card__price del { color:#aaa; margin-right:4px; }
.mt-product-card__price ins { text-decoration:none; }

.mt-community { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:36px; margin-bottom:28px; }
.mt-testimonial, .mt-newsletter { min-height:210px; padding:30px 36px; display:flex; flex-direction:column; justify-content:center; }
.mt-testimonial { background:var(--mt-green); text-align:center; }
.mt-newsletter { background:var(--mt-yellow); }
.mt-small-title { text-transform:uppercase; font-size:10px; letter-spacing:.12em; color:#777; margin-bottom:14px; }
.mt-testimonial blockquote { margin:0 auto 12px; max-width:520px; border:0; padding:0; font-size:13px; line-height:1.7; font-style:normal; }
.mt-testimonial strong { font-size:12px; }
.mt-newsletter h2 { font-size:25px; margin:0 0 4px; }
.mt-newsletter p { font-size:13px; }
.mt-newsletter form { display:flex; margin-top:10px; }
.mt-newsletter input { flex:1; min-width:0; height:42px; border:1px solid #aaa; background:#fff; margin:0; padding:0 12px; }
.mt-newsletter button { height:42px; border:0; padding:0 22px; background:#222; color:#fff; text-transform:uppercase; font-size:10px; letter-spacing:.08em; }

.mt-benefits { background:#f7f7f7; padding:34px 0; border-top:1px solid #eee; }
.mt-benefits__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; text-align:center; }
.mt-benefit__icon { font-size:42px; line-height:1; display:block; margin-bottom:12px; color:#555; }
.mt-benefit h3 { font-size:14px; margin:0 0 6px; }
.mt-benefit p { color:#777; font-size:11px; margin:0; }

@media (max-width: 1050px) {
  .mt-category-row { grid-template-columns:repeat(5,1fr); row-gap:22px; }
  .mt-product-band, .mt-product-band--right { grid-template-columns:190px 1fr; }
  .mt-products { grid-template-columns:repeat(3,1fr); }
  .mt-product-band--right .mt-promo-card { order:0; }
  .mt-product-band--right .mt-products { order:0; }
  .mt-promo-card { min-height:500px; }
}

@media (max-width: 849px) {
  .mt-hero, .mt-hero__inner { min-height:350px; }
  .mt-hero__copy { width:80%; }
  .mt-product-band, .mt-product-band--right { grid-template-columns:1fr; }
  .mt-promo-card { min-height:260px; order:0 !important; }
  .mt-products { order:1 !important; grid-template-columns:repeat(2,1fr); }
  .mt-community { grid-template-columns:1fr; }
}

@media (max-width: 549px) {
  .mt-shell { width:min(100% - 20px, var(--mt-shell)); }
  .mt-hero { background-position:62% center; }
  .mt-hero__copy { width:85%; padding:34px 0; }
  .mt-hero h1 { font-size:36px; }
  .mt-corporate__inner { min-height:110px; flex-direction:column; gap:12px; padding-block:14px; }
  .mt-corporate__inner strong { font-size:18px; }
  .mt-category-row { display:flex; overflow-x:auto; scroll-snap-type:x proximity; justify-content:flex-start; padding-bottom:7px; }
  .mt-category { flex:0 0 78px; scroll-snap-align:start; }
  .mt-category__image { width:64px; height:64px; }
  .mt-products { gap:8px; }
  .mt-product-card__body { padding-inline:7px; }
  .mt-product-card h3 { font-size:11px; }
  .mt-community { margin-top:24px; }
  .mt-testimonial, .mt-newsletter { padding:26px 22px; }
  .mt-newsletter form { flex-direction:column; gap:7px; }
  .mt-newsletter button { width:100%; }
  .mt-benefits__grid { grid-template-columns:1fr; gap:28px; }
}
