:root{
  --mss-ink:#122019;
  --mss-ink-2:#25352d;
  --mss-muted:#66736c;
  --mss-line:#e5e8e3;
  --mss-accent:#9b6b2f;
  --mss-accent-soft:#f1e7d8;
  --mss-soft:#f6f5f0;
  --mss-paper:#fffefb;
}
.mss-grid{display:grid;gap:22px}.mss-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mss-guide-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.mss-card,.mss-guide-card{background:var(--mss-paper);border:1px solid var(--mss-line);border-radius:18px;overflow:hidden;height:100%;box-shadow:0 14px 36px rgba(18,32,25,.055);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.mss-card:hover,.mss-guide-card:hover{transform:translateY(-3px);box-shadow:0 22px 54px rgba(18,32,25,.09);border-color:#d9ddd7}
.mss-card{display:flex;flex-direction:column}.mss-card-media,.mss-guide-media{position:relative;display:flex;min-height:260px;background:linear-gradient(180deg,#fbfbf8 0%,#f4f2eb 100%);align-items:center;justify-content:center;text-decoration:none;overflow:hidden}.mss-card-media:after{content:"";position:absolute;inset:auto 10% -42% auto;width:180px;height:180px;border:1px solid rgba(155,107,47,.10);border-radius:50%;pointer-events:none}.mss-card-media img,.mss-guide-media img{width:100%;height:262px;object-fit:contain;padding:18px;box-sizing:border-box;transition:transform .25s ease}.mss-card:hover .mss-card-media img{transform:scale(1.025)}.mss-guide-media img{object-fit:cover;padding:0}.mss-placeholder{font-weight:700;letter-spacing:.06em;color:#929990}
.mss-card-topline{position:absolute;z-index:4;inset:16px 16px auto 16px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;pointer-events:none}.mss-badge{display:inline-flex;align-items:center;min-height:31px;background:var(--mss-ink);color:#fff;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:900;letter-spacing:.075em;text-transform:uppercase;box-shadow:0 5px 16px rgba(18,32,25,.12)}.mss-badge-soft{background:rgba(255,255,255,.92);color:var(--mss-ink);border:1px solid rgba(18,32,25,.08);box-shadow:none}.mss-score{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.96);color:var(--mss-ink);box-shadow:0 7px 22px rgba(18,32,25,.14);line-height:1}.mss-score strong{font-size:17px}.mss-score small{font-size:8px;font-weight:800;color:var(--mss-muted);margin-top:-7px}.mss-card-gallery-count{position:absolute;z-index:4;left:16px;bottom:15px;padding:6px 9px;border-radius:999px;background:rgba(18,32,25,.82);backdrop-filter:blur(7px);color:#fff;font-size:10px;font-weight:800;letter-spacing:.03em}
.mss-card-body,.mss-guide-body{padding:20px 20px 18px}.mss-card-body{display:flex;flex-direction:column;flex:1}.mss-card-meta{display:flex;align-items:center;gap:8px;min-height:18px;text-transform:uppercase;letter-spacing:.11em;font-size:9px;font-weight:850;color:var(--mss-accent)}.mss-card-meta i{display:block;width:3px;height:3px;border-radius:50%;background:#c9b596}.mss-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--mss-accent);font-weight:800}.mss-card h3,.mss-guide-card h3{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:17px;font-weight:760;letter-spacing:-.018em;line-height:1.28;margin:9px 0 9px}.mss-card h3 a,.mss-guide-card h3 a{color:var(--mss-ink);text-decoration:none}.mss-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.mss-card-excerpt,.mss-card p,.mss-guide-card p{color:var(--mss-muted);line-height:1.55;font-size:13px}.mss-card-excerpt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 15px;min-height:60px}.mss-card-commerce{margin-top:auto;padding-top:4px}.mss-price{font-size:16px;font-weight:850;color:var(--mss-ink);margin-top:10px}.mss-price-cta{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--mss-muted)}.mss-price-note,.mss-availability{font-size:10px;color:var(--mss-muted);margin-top:4px;line-height:1.45}.mss-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:17px}.mss-btn{display:inline-flex;align-items:center;justify-content:center;min-height:43px;border-radius:999px;padding:9px 13px;text-decoration:none!important;font-weight:800;font-size:11px;letter-spacing:.015em;transition:background .18s ease,color .18s ease,border-color .18s ease}.mss-btn-primary{background:var(--mss-ink);color:#fff!important;border:1px solid var(--mss-ink)}.mss-btn-primary:hover{background:#23352c}.mss-btn-secondary{border:1px solid var(--mss-line);color:var(--mss-ink)!important;background:#fff}.mss-btn-secondary:hover{border-color:#b9c1bb;background:#f9faf8}.mss-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding-top:13px;border-top:1px solid #eff1ed;color:#8a938d;font-size:9px}.mss-card-foot small{font-size:9px}.mss-paid-link{display:block;margin-top:6px;color:var(--mss-muted)}.mss-text-link{color:var(--mss-ink);font-weight:700}
.mss-disclosure{padding:18px 20px;border-left:3px solid var(--mss-accent);background:var(--mss-soft);font-size:13px;line-height:1.55;border-radius:0 14px 14px 0}.mss-empty{padding:42px 34px;border:1px solid var(--mss-line);border-radius:22px;background:linear-gradient(145deg,#fff,#faf9f5);text-align:center;box-shadow:0 12px 34px rgba(18,32,25,.035)}.mss-empty strong,.mss-empty span{display:block}.mss-empty strong{font-family:Georgia,"Times New Roman",serif;font-size:20px;color:var(--mss-ink)}.mss-empty span{color:var(--mss-muted);margin-top:8px}
.mss-filterbar{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 26px}.mss-filterbar button,.mss-filterbar a{border:1px solid var(--mss-line);background:#fff;color:var(--mss-ink);border-radius:999px;padding:9px 15px;cursor:pointer;text-decoration:none;font-size:12px;transition:.18s ease}.mss-filterbar button:hover,.mss-filterbar a:hover{border-color:#b8c0ba}.mss-filterbar button.is-active,.mss-filterbar a.is-active{background:var(--mss-ink);border-color:var(--mss-ink);color:#fff}.mss-grid-item[hidden]{display:none!important}
.mss-product-visual{width:100%;height:290px;padding:26px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;background:radial-gradient(circle at 78% 18%,rgba(155,107,47,.20),transparent 28%),linear-gradient(145deg,#f8f5ee,#e8ece7);color:var(--mss-ink);position:relative;overflow:hidden}.mss-product-visual:after{content:"";position:absolute;width:160px;height:160px;border:1px solid rgba(23,33,29,.12);border-radius:38% 62% 45% 55%;right:-18px;top:28px;transform:rotate(22deg)}.mss-product-visual-mark{position:absolute;top:20px;left:20px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--mss-ink);color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em}.mss-product-visual-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--mss-accent);font-weight:800;margin-bottom:7px}.mss-product-visual strong{font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1.25;max-width:80%;z-index:1}.mss-product-visual small{margin-top:8px;color:var(--mss-muted);z-index:1}.mss-compare-wrap{overflow:auto;border:1px solid var(--mss-line);border-radius:20px;background:#fff}.mss-compare{width:100%;border-collapse:collapse;min-width:680px}.mss-compare th,.mss-compare td{padding:17px;border-bottom:1px solid var(--mss-line);text-align:left;vertical-align:middle}.mss-compare th{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--mss-muted);background:#faf9f5}.mss-compare-score{display:inline-grid;place-items:center;min-width:44px;height:44px;border-radius:50%;background:var(--mss-ink);color:#fff;font-weight:900}.mss-compare td:last-child{min-width:170px}.mss-compare .mss-paid-link{font-size:10px}
.mss-remote-media{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative}.mss-remote-product-image{display:block;width:100%;height:262px;object-fit:contain;padding:18px;box-sizing:border-box;background:transparent}.mss-remote-image-fallback{display:flex;width:100%;height:100%}.mss-remote-image-fallback[hidden]{display:none!important}.mss-remote-image-fallback .mss-product-visual{height:262px}
@media(max-width:1100px){.mss-product-grid,.mss-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.mss-product-grid,.mss-guide-grid{grid-template-columns:1fr;gap:18px}.mss-card-media,.mss-guide-media{min-height:250px}.mss-card-media img,.mss-guide-media img,.mss-remote-product-image{height:250px}.mss-remote-image-fallback .mss-product-visual,.mss-product-visual{height:250px}.mss-card-actions{grid-template-columns:1fr}.mss-card-excerpt{min-height:0}.mss-card-body{padding:21px}.mss-score{width:50px;height:50px}}

.mss-product-grid{gap:22px}
.mss-card{border-radius:18px;box-shadow:0 10px 28px rgba(18,32,25,.045)}
.mss-card:hover{box-shadow:0 18px 42px rgba(18,32,25,.075)}
.mss-card-media{background:#fbfbf8}
.mss-card-media img,.mss-remote-product-image{image-rendering:auto}
.mss-card-meta{font-size:8.5px;letter-spacing:.095em}
.mss-badge{font-size:9px;min-height:28px;padding:6px 10px}
.mss-score{width:50px;height:50px}.mss-score strong{font-size:16px}
.mss-card-gallery-count{font-size:9px;padding:5px 8px}
@media(max-width:720px){.mss-card h3,.mss-guide-card h3{font-size:16px}.mss-card-media,.mss-guide-media{min-height:230px}.mss-card-media img,.mss-guide-media img,.mss-remote-product-image{height:232px}.mss-card-body{padding:18px}.mss-card-excerpt{font-size:12.5px}}

/* 2.9.9 — deterministic WordPress hierarchical navigation dropdown.
   This styles the existing wp_nav_menu hierarchy only; it does not create a
   second navigation system. */
@media (min-width: 769px){
  header .menu-item-has-children,
  .site-header .menu-item-has-children,
  .main-navigation .menu-item-has-children,
  nav .menu-item-has-children{position:relative}

  header .menu-item-has-children > .sub-menu,
  .site-header .menu-item-has-children > .sub-menu,
  .main-navigation .menu-item-has-children > .sub-menu,
  nav .menu-item-has-children > .sub-menu{
    display:block!important;
    position:absolute!important;
    z-index:9999!important;
    top:100%!important;
    left:50%!important;
    right:auto!important;
    min-width:220px;
    max-width:min(320px,92vw);
    margin:0!important;
    padding:10px!important;
    list-style:none!important;
    background:#fffefb!important;
    border:1px solid var(--mss-line)!important;
    border-radius:16px!important;
    box-shadow:0 20px 50px rgba(18,32,25,.14)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate(-50%,8px)!important;
    transition:opacity .16s ease,transform .16s ease,visibility .16s ease!important;
  }

  header .menu-item-has-children:hover > .sub-menu,
  header .menu-item-has-children:focus-within > .sub-menu,
  .site-header .menu-item-has-children:hover > .sub-menu,
  .site-header .menu-item-has-children:focus-within > .sub-menu,
  .main-navigation .menu-item-has-children:hover > .sub-menu,
  .main-navigation .menu-item-has-children:focus-within > .sub-menu,
  nav .menu-item-has-children:hover > .sub-menu,
  nav .menu-item-has-children:focus-within > .sub-menu,
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate(-50%,0)!important;
  }

  header .menu-item-has-children > .sub-menu > li,
  .site-header .menu-item-has-children > .sub-menu > li,
  .main-navigation .menu-item-has-children > .sub-menu > li,
  nav .menu-item-has-children > .sub-menu > li{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  header .menu-item-has-children > .sub-menu > li > a,
  .site-header .menu-item-has-children > .sub-menu > li > a,
  .main-navigation .menu-item-has-children > .sub-menu > li > a,
  nav .menu-item-has-children > .sub-menu > li > a{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
    padding:10px 12px!important;
    border-radius:10px!important;
    white-space:nowrap!important;
    color:var(--mss-ink)!important;
    text-decoration:none!important;
  }

  header .menu-item-has-children > .sub-menu > li > a:hover,
  header .menu-item-has-children > .sub-menu > li > a:focus,
  .site-header .menu-item-has-children > .sub-menu > li > a:hover,
  .site-header .menu-item-has-children > .sub-menu > li > a:focus,
  .main-navigation .menu-item-has-children > .sub-menu > li > a:hover,
  .main-navigation .menu-item-has-children > .sub-menu > li > a:focus,
  nav .menu-item-has-children > .sub-menu > li > a:hover,
  nav .menu-item-has-children > .sub-menu > li > a:focus{
    background:var(--mss-soft)!important;
  }
}

@media (max-width: 768px){
  header .menu-item-has-children > .sub-menu,
  .site-header .menu-item-has-children > .sub-menu,
  .main-navigation .menu-item-has-children > .sub-menu,
  nav .menu-item-has-children > .sub-menu{
    display:none!important;
    position:static!important;
    width:100%!important;
    margin:6px 0 0!important;
    padding:6px 0 6px 14px!important;
    list-style:none!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  header .menu-item-has-children.mss-submenu-open > .sub-menu,
  .site-header .menu-item-has-children.mss-submenu-open > .sub-menu,
  .main-navigation .menu-item-has-children.mss-submenu-open > .sub-menu,
  nav .menu-item-has-children.mss-submenu-open > .sub-menu{display:block!important}
}


/* 5.1.85 — Native Contact Form */
.mss-native-contact{
  margin:34px 0 0;
  padding:30px;
  border:1px solid #dedbd2;
  border-radius:26px;
  background:#fffdfa;
  box-shadow:0 18px 48px rgba(16,42,31,.06);
}
.mss-native-contact[hidden]{display:none!important}
.mss-native-contact-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:24px;
}
.mss-native-contact-head h2{margin:4px 0 0}
.mss-contact-kicker{
  display:block;
  font-size:12px;
  font-weight:800;
  letter-spacing:.16em;
  color:#9a7132;
}
.mss-contact-close{
  appearance:none;
  border:1px solid #d9ddd9;
  background:#fff;
  color:#173126;
  width:42px;
  height:42px;
  border-radius:50%;
  font-size:26px;
  line-height:1;
  cursor:pointer;
}
.mss-contact-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.mss-native-contact-form label{
  display:grid;
  gap:7px;
  font-weight:700;
  color:#1c2c24;
}
.mss-native-contact-form input[type="text"],
.mss-native-contact-form input[type="email"],
.mss-native-contact-form select,
.mss-native-contact-form textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid #cfd5d1;
  border-radius:12px;
  background:#fff;
  color:#17231d;
  padding:12px 14px;
  font:inherit;
}
.mss-native-contact-form textarea{resize:vertical;min-height:150px}
.mss-contact-message-field{grid-column:1/-1}
.mss-contact-honeypot{
  position:absolute!important;
  left:-10000px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}
.mss-contact-privacy{
  display:flex!important;
  grid-template-columns:auto 1fr!important;
  align-items:flex-start;
  gap:10px!important;
  margin-top:18px;
  font-weight:500!important;
  color:#56645d!important;
}
.mss-contact-privacy input{margin-top:3px}
.mss-contact-actions{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  margin-top:22px;
}
.mss-contact-status{font-weight:700;font-size:14px}
.mss-contact-status.is-working{color:#2271b1}
.mss-contact-status.is-success{color:#0f7a3a}
.mss-contact-status.is-error{color:#b32d2e}
.mss-contact-open{cursor:pointer}
@media(max-width:720px){
  .mss-native-contact{padding:22px 18px;border-radius:20px}
  .mss-contact-fields{grid-template-columns:1fr}
  .mss-contact-message-field{grid-column:auto}
}


/* 5.1.87 — Cloudflare Turnstile */
.mss-contact-turnstile{
  margin-top:18px;
  min-height:65px;
  display:flex;
  align-items:center;
}
@media(max-width:420px){
  .mss-contact-turnstile{
    overflow-x:auto;
    max-width:100%;
  }
}


/* 5.1.88 — Contact Thank-you State */
.mss-contact-thankyou{
  margin:34px 0 0;
  padding:38px 30px;
  border:1px solid #d9dfda;
  border-radius:26px;
  background:#fffdfa;
  box-shadow:0 18px 48px rgba(16,42,31,.06);
  text-align:center;
}
.mss-contact-thankyou[hidden]{display:none!important}
.mss-contact-thankyou-icon{
  width:58px;
  height:58px;
  margin:0 auto 16px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#173126;
  color:#fff;
  font-size:30px;
  font-weight:800;
  line-height:1;
}
.mss-contact-thankyou h2{margin:6px 0 12px}
.mss-contact-thankyou-main{
  max-width:720px;
  margin:0 auto;
  font-size:1.08em;
  color:#26382f;
}
.mss-contact-thankyou-secondary{
  max-width:720px;
  margin:12px auto 0;
  color:#647169;
}
.mss-contact-thankyou-actions{
  margin-top:24px;
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
}
@media(max-width:620px){
  .mss-contact-thankyou{padding:30px 20px;border-radius:20px}
  .mss-contact-thankyou-actions{flex-direction:column}
  .mss-contact-thankyou-actions .mss-btn{width:100%;justify-content:center}
}

/* 5.1.97 Newsletter integration */
.mss-newsletter-feedback,.mss-footer-pro__newsletter-form .mss-newsletter-feedback{font-size:.88em;line-height:1.4;margin-top:8px;grid-column:1/-1}
.mss-newsletter-feedback.is-success{color:#d6e8d8}
.mss-newsletter-feedback.is-error{color:#ffd2cc}
