@import url("fonts.css");
/* MULTIPAGE-SMART START */
:root {
  --mp-bg: #f6f8fb;
  --mp-surface: #ffffff;
  --mp-text: #1c2430;
  --mp-muted: #5b6778;
  --mp-border: #dbe2ea;
  --mp-brand: #146c43;
  --mp-brand-dark: #0f5132;
  --mp-accent: #f5b83d;
  --mp-accent-hover: #ffc858;
  --mp-button-ink: #1b3034;
  --mp-button-outline: #346e73;
  --mp-button-outline-ink: #205c62;
  --mp-header-bg: #007953;
  --mp-shadow: 0 18px 48px rgba(18, 38, 63, 0.10);
  --mp-radius: 18px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
p {
  line-height: 1.5 !important;
}
body.mp-site-page {
  margin: 0;
  color: var(--mp-text);
  background: var(--mp-bg);
  font-family: 'Jost', sans-serif;
  font-size: 19px;
  line-height: 1.82;
}
.mp-site-page h1, .mp-site-page h2, .mp-site-page h3, .mp-site-page h4, .mp-site-page h5, .mp-site-page h6 {
  font-family: 'Jost', sans-serif;
}
.mp-container { width: min(1160px, calc(100% - 36px)); margin: 0 auto; }
.mp-site-header {
  position: relative;
  z-index: 50;
  background: var(--mp-header-bg);
  border-bottom: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 3px 15px rgba(19, 40, 66, 0.10);
}
.mp-nav, .mp-nav-shell { min-height: 76px; display: flex; align-items: center; gap: 24px; }
.mp-brand {
  color: #fff;
  font-size: 22px;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}
.mp-menu, .mp-site-nav { display: flex; align-items: center; gap: 9px; margin-left: auto; }
.mp-menu a, .mp-site-nav a {
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 700;
  padding: 8px 7px;
  border-radius: 9px;
}
.mp-menu a:hover, .mp-site-nav a:hover, .mp-nav-link.is-active { background: rgba(255,255,255,.14); color: #fff; }
.mp-menu .mp-order-nav, .mp-site-nav .mp-nav-order {
  background: var(--mp-accent);
  color: var(--mp-button-ink) !important;
  padding: 10px 16px;
  border-radius: 9px;
  box-shadow: 0 7px 18px rgba(245,184,61,.26);
}
.mp-menu .mp-order-nav:hover, .mp-site-nav .mp-nav-order:hover {
  background: var(--mp-accent-hover);
  color: #10262b !important;
}
.mp-menu-toggle {
  display: none;
  margin-left: auto;
  border: 1px solid rgba(255,255,255,.45);
  background: transparent;
  border-radius: 10px;
  padding: 9px 12px;
  font-size: 20px;
  cursor: pointer;
}
.mp-menu-toggle span { display: block; width: 22px; height: 2px; margin: 4px 0; background: #fff; }
.mp-breadcrumb-wrap { background: #fff; border-bottom: 1px solid var(--mp-border); }
.mp-breadcrumb { margin: 0; padding: 14px 0; color: var(--mp-muted); font-size: 16px; line-height: 1.6; }
.mp-breadcrumb a { color: var(--mp-brand); text-decoration: none; font-weight: 700; }
.mp-breadcrumb span { padding: 0 8px; color: #98a3b1; }
.mp-page-hero { padding: 62px 0 46px; background: linear-gradient(180deg, #fff 0%, #f6f8fb 100%); }
.mp-hero-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); gap: 48px; align-items: center; }
.mp-eyebrow {
  display: inline-block;
  margin-bottom: 11px;
  color: var(--mp-brand);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.mp-page-hero h1 { margin: 0 0 20px; font-size: clamp(40px, 5vw, 62px); line-height: 1.14; letter-spacing: -0.025em; }
.mp-lead { margin: 0; max-width: 800px; color: var(--mp-muted); font-size: 21px; line-height: 1.82; }
.mp-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.mp-btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 50px;
  padding: 13px 22px;
  border-radius: 10px;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none !important;
  border: 2px solid transparent;
  cursor: pointer;
  transition: background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.mp-btn-primary {
  background: var(--mp-accent);
  color: var(--mp-button-ink) !important;
  box-shadow: 0 10px 24px rgba(217,149,17,.20);
}
.mp-btn-primary:hover {
  background: var(--mp-accent-hover);
  color: #10262b !important;
  box-shadow: 0 12px 27px rgba(217,149,17,.25);
  transform: translateY(-1px);
}
.mp-btn-secondary {
  border-color: var(--mp-button-outline);
  color: var(--mp-button-outline-ink) !important;
  background: #fff;
}
.mp-btn-secondary:hover {
  border-color: #205c62;
  color: #164b50 !important;
  background: #f5fbfa;
  transform: translateY(-1px);
}
.mp-hero-image { display: flex; align-items: center; justify-content: center; }
.mp-hero-image img { display: block; max-width: 100%; height: auto; max-height: 390px; object-fit: contain; }
.mp-main { padding: 46px 0 64px; }
.mp-content-layout { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 36px; align-items: start; }
.mp-article { min-width: 0; }
.mp-content-section, .mp-faq, .mp-data-block, .mp-reviews-block {
  margin: 0 0 24px;
  padding: 30px;
  background: var(--mp-surface);
  border: 1px solid var(--mp-border);
  border-radius: var(--mp-radius);
  box-shadow: 0 8px 28px rgba(18, 38, 63, 0.045);
}
.mp-content-section h2, .mp-faq h2, .mp-data-block h2, .mp-reviews-block h2 {
  margin: 56px 0 18px;
  font-size: 32px;
  line-height: 1.32;
}
.mp-content-section > h2:first-child,
.mp-faq > h2:first-child,
.mp-data-block > h2:first-child,
.mp-reviews-block > h2:first-child {
  margin-top: 0;
}
.mp-content-section h3, .mp-faq h3 { margin: 46px 0 15px; font-size: 25px; line-height: 1.38; }

/* Give every new article section clear breathing room above its heading. */
.mp-article > section:not(.mp-faq-block) {
  margin-top: 68px;
}
.mp-article > section:first-child {
  margin-top: 0;
}
.mp-article > section:not(.mp-faq-block) > h2:first-child {
  margin-top: 0;
  margin-bottom: 20px;
}
.mp-article > h2 {
  margin: 68px 0 20px;
}
.mp-article h3 {
  margin-top: 46px;
  margin-bottom: 15px;
}
.mp-content-section p, .mp-faq p, .mp-data-block p, .mp-reviews-block p { margin: 0 0 21px; font-size: 19px; line-height: 1.82; }
.mp-content-section ul, .mp-content-section ol, .mp-faq ul, .mp-faq ol { margin: 18px 0 22px; padding-left: 28px; font-size: 19px; line-height: 1.78; }
.mp-content-section li, .mp-faq li { margin-bottom: 11px; }

/* FAQ on MULTIPAGE internal pages */
.mp-faq-block {
  margin: 82px 0 10px;
  padding: 42px 0 0;
  border-top: 1px solid var(--mp-border);
}
.mp-faq-title {
  margin: 0 0 28px;
  font-size: 32px;
  line-height: 1.32;
  letter-spacing: -0.015em;
}
.mp-faq-list {
  display: grid;
  gap: 15px;
}
.mp-faq-item {
  margin: 0;
  overflow: hidden;
  background: var(--mp-surface);
  border: 1px solid var(--mp-border);
  border-radius: 15px;
  box-shadow: 0 7px 24px rgba(18, 38, 63, 0.055);
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.mp-faq-item:hover {
  border-color: #c4d8cd;
  box-shadow: 0 10px 28px rgba(18, 38, 63, 0.075);
}
.mp-faq-item[open] {
  border-color: #b8d5c5;
  box-shadow: 0 12px 30px rgba(18, 38, 63, 0.08);
}
.mp-faq-question {
  position: relative;
  display: block;
  margin: 0;
  padding: 21px 62px 21px 23px;
  color: var(--mp-text);
  background: #fff;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.48;
  cursor: pointer;
  list-style: none;
  user-select: none;
}
.mp-faq-question::-webkit-details-marker { display: none; }
.mp-faq-question::marker { display: none; content: ""; }
.mp-faq-question::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #edf7f2;
  color: var(--mp-brand);
  font-size: 25px;
  font-weight: 700;
  line-height: 1;
}
.mp-faq-item[open] > .mp-faq-question {
  background: #fbfdfc;
  border-bottom: 1px solid var(--mp-border);
}
.mp-faq-item[open] > .mp-faq-question::after {
  content: "−";
}
.mp-faq-answer {
  padding: 20px 23px 3px;
  background: #fff;
}
.mp-faq-answer p {
  margin: 0 0 18px;
  font-size: 19px;
  line-height: 1.82;
  color: var(--mp-text);
}
.mp-table-wrap { width: 100%; overflow-x: auto; }
.mp-table { width: 100%; border-collapse: collapse; min-width: 580px; background: #fff; }
.mp-table th, .mp-table td { padding: 13px 14px; border: 1px solid var(--mp-border); text-align: left; vertical-align: top; }
.mp-table th { background: #edf7f2; color: #23352d; font-size: 17px; line-height: 1.55; }
.mp-table td { font-size: 17px; line-height: 1.7; }
.mp-review-card { padding: 22px 0; border-top: 1px solid var(--mp-border); }
.mp-review-card:first-of-type { border-top: 0; padding-top: 0; }
.mp-review-card:last-child { padding-bottom: 0; }
.mp-review-card img { display: block; max-width: 180px; width: 100%; height: auto; border-radius: 12px; margin-bottom: 14px; }
.mp-review-name { margin: 0 0 7px; font-size: 21px; line-height: 1.4; font-weight: 800; }
.mp-review-meta { color: var(--mp-muted); font-size: 16px; line-height: 1.6; margin: 0 0 12px; }
.mp-stars { color: #b57900; letter-spacing: 2px; font-size: 20px; }
.mp-sidebar { position: sticky; top: 22px; }
.mp-side-card { padding: 24px; background: #fff; border: 1px solid var(--mp-border); border-radius: var(--mp-radius); box-shadow: var(--mp-shadow); }
.mp-side-card h2 { margin: 8px 0 12px; font-size: 27px; line-height: 1.35; }
.mp-side-card p { color: var(--mp-muted); margin: 0 0 20px; font-size: 18px; line-height: 1.75; }
.mp-side-card img { display: block; max-width: 100%; height: auto; max-height: 240px; object-fit: contain; margin: 0 auto 14px; }
.mp-side-card .mp-btn { width: 100%; }
.mp-related { padding: 0 0 64px; }
.mp-related h2 { margin: 0 0 20px; font-size: 31px; line-height: 1.35; }
.mp-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.mp-related-link {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-height: 128px;
  padding: 22px;
  color: var(--mp-text);
  background: #fff;
  border: 1px solid var(--mp-border);
  border-radius: 15px;
  text-decoration: none;
  font-weight: 800;
}
.mp-related-link:hover { border-color: #9ec9b4; box-shadow: 0 8px 22px rgba(18, 38, 63, .07); }
.mp-related-link span { color: var(--mp-muted); font-size: 16px; line-height: 1.6; font-weight: 400; }
/* The source footer is preserved; only its typography is compacted on inner pages. */
body.mp-site-page footer,
body.mp-site-page section[class*="footer"] {
  font-size: 12px !important;
  line-height: 1.35 !important;
}
body.mp-site-page footer p,
body.mp-site-page section[class*="footer"] p {
  font-size: 12px !important;
  line-height: 1.35 !important;
  margin-bottom: 8px !important;
}
body.mp-site-page footer a,
body.mp-site-page footer li,
body.mp-site-page footer span,
body.mp-site-page section[class*="footer"] a,
body.mp-site-page section[class*="footer"] li,
body.mp-site-page section[class*="footer"] span {
  font-size: 12px !important;
  line-height: 1.35 !important;
}
body.mp-site-page footer h1,
body.mp-site-page footer h2,
body.mp-site-page footer h3,
body.mp-site-page footer h4,
body.mp-site-page section[class*="footer"] h1,
body.mp-site-page section[class*="footer"] h2,
body.mp-site-page section[class*="footer"] h3,
body.mp-site-page section[class*="footer"] h4 {
  font-size: 14px !important;
  line-height: 1.3 !important;
}
.mp-site-footer { padding: 42px 0 28px; background: #15201b; color: #d8e2dd; }
.mp-footer-grid { display: grid; grid-template-columns: 1.1fr 1.9fr; gap: 38px; }
.mp-footer-title { color: #fff; margin: 0 0 10px; font-size: 22px; font-weight: 800; }
.mp-footer-links { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px 18px; }
.mp-footer-links a { color: #e6efea; text-decoration: none; font-size: 14px; }
.mp-footer-links a:hover { text-decoration: underline; }
.mp-footer-trust { margin-top: 24px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.14); }
.mp-footer-trust-label { display: block; margin-bottom: 10px; color: #fff; font-size: 14px; font-weight: 800; }
.mp-footer-trust-links { display: flex; flex-wrap: wrap; gap: 8px 18px; }
.mp-footer-trust-links a { color: #d8e2dd; text-decoration: none; font-size: 13px; }
.mp-footer-trust-links a:hover { text-decoration: underline; }
.mp-site-footer > .mp-container > p:not(.mp-copyright) { color: #aebcb5; font-size: 11px; line-height: 1.35 !important; }
.mp-disclosure { margin: 20px 0 0; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.16); color: #aebcb5; font-size: 11px; line-height: 1.35 !important; }
.mp-copyright { margin: 12px 0 0; color: #c4d0ca; font-size: 11px; line-height: 1.35 !important; }
.mp-index-explore { margin: 38px auto; width: min(1160px, calc(100% - 36px)); padding: 26px; border: 1px solid var(--mp-border); border-radius: 18px; background: #fff; }
.mp-index-explore h2 { margin: 0 0 18px; font-size: 30px; line-height: 1.35; }
.mp-index-explore-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 11px; }
.mp-index-explore a { display: block; padding: 15px 16px; border: 1px solid var(--mp-border); border-radius: 11px; color: var(--mp-text); text-decoration: none; font-size: 17px; line-height: 1.55; font-weight: 700; }
.mp-index-explore a:hover { border-color: #9ec9b4; color: var(--mp-brand); }
/* Keep special-pricing text readable on dark/colored backgrounds. */
h1.mp-special-pricing, h2.mp-special-pricing, h3.mp-special-pricing, .mp-special-pricing { color: #fff !important; }
@media (max-width: 1050px) {
  .mp-menu-toggle { display: inline-flex; }
  .mp-menu, .mp-site-nav {
    display: none;
    position: absolute;
    left: 18px;
    right: 18px;
    top: 69px;
    flex-direction: column;
    align-items: stretch;
    gap: 3px;
    padding: 14px;
    background: var(--mp-header-bg);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 14px;
    box-shadow: var(--mp-shadow);
  }
  .mp-menu.is-open, .mp-site-nav.is-open { display: flex; }
  .mp-menu a, .mp-site-nav a { padding: 10px 12px; }
  .mp-hero-grid { grid-template-columns: 1fr; }
  .mp-hero-image { max-width: 430px; margin: 0 auto; }
  .mp-content-layout { grid-template-columns: 1fr; }
  .mp-sidebar { position: static; }
  .mp-related-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .mp-index-explore-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 680px) {
  .mp-container { width: min(100% - 24px, 1160px); }
  .mp-nav, .mp-nav-shell { min-height: 66px; }
  .mp-brand { font-size: 19px; }
  .mp-menu, .mp-site-nav { top: 62px; left: 10px; right: 10px; }
  .mp-page-hero { padding: 40px 0 30px; }
  .mp-page-hero h1 { font-size: 38px; line-height: 1.18; }
  .mp-lead { font-size: 19px; line-height: 1.78; }
  .mp-main { padding-top: 32px; }
  body.mp-site-page { font-size: 18px; line-height: 1.8; }
  .mp-content-section p, .mp-faq p, .mp-data-block p, .mp-reviews-block p { font-size: 18px; line-height: 1.8; margin-bottom: 20px; }
  .mp-content-section ul, .mp-content-section ol, .mp-faq ul, .mp-faq ol { font-size: 18px; line-height: 1.76; }
  .mp-content-section h2, .mp-faq h2, .mp-data-block h2, .mp-reviews-block h2 { font-size: 29px; }
  .mp-content-section h3, .mp-faq h3 { font-size: 23px; }
  .mp-article > section:not(.mp-faq-block) { margin-top: 52px; }
  .mp-article > section:first-child { margin-top: 0; }
  .mp-article > h2 { margin-top: 52px; }
  .mp-article h3 { margin-top: 38px; }
  .mp-faq-block { margin-top: 64px; padding-top: 34px; }
  .mp-faq-title { margin-bottom: 22px; font-size: 29px; line-height: 1.34; }
  .mp-faq-list { gap: 12px; }
  .mp-faq-question { padding: 18px 54px 18px 18px; font-size: 18px; line-height: 1.5; }
  .mp-faq-question::after { right: 16px; width: 30px; height: 30px; font-size: 23px; }
  .mp-faq-answer { padding: 17px 18px 2px; }
  .mp-faq-answer p { font-size: 18px; line-height: 1.8; margin-bottom: 17px; }
  .mp-table th, .mp-table td { font-size: 16px; line-height: 1.65; }
  .mp-content-section, .mp-faq, .mp-data-block, .mp-reviews-block { padding: 22px 18px; border-radius: 14px; }
  .mp-related-grid, .mp-index-explore-grid, .mp-footer-grid, .mp-footer-links { grid-template-columns: 1fr; }
  .mp-site-footer { padding-top: 34px; }
}
/* MULTIPAGE-SMART END */

/* CopySub Auto: each menu label wraps as one item, never letter by letter. */
.mp-nav-shell { gap:20px; padding-top:14px; padding-bottom:14px; }
.mp-brand { flex:0 1 290px; min-width:0; white-space:normal; overflow-wrap:break-word; line-height:1.25; }
.mp-site-nav { flex:1 1 600px; min-width:0; flex-wrap:wrap; justify-content:flex-end; row-gap:4px; }
.mp-menu-toggle { flex-direction:column; justify-content:center; gap:3px; }
.mp-menu-toggle span { margin:0; }
/* Header/menu contrast follows the actual donor placard brightness. */
.mp-brand, .mp-menu a, .mp-site-nav a { color:var(--mp-brand-ink,#fff)!important; -webkit-text-fill-color:var(--mp-brand-ink,#fff)!important; }
.mp-menu-toggle { color:var(--mp-brand-ink,#fff)!important; border-color:currentColor!important; }
.mp-menu-toggle span { background:currentColor!important; }
.mp-menu a:hover, .mp-site-nav a:hover, .mp-nav-link.is-active { color:var(--mp-brand-ink,#fff)!important; -webkit-text-fill-color:var(--mp-brand-ink,#fff)!important; background:var(--mp-header-hover,rgba(255,255,255,.14))!important; }
.mp-menu .mp-order-nav, .mp-site-nav .mp-nav-order, .mp-menu .mp-order-nav:hover, .mp-site-nav .mp-nav-order:hover { color:var(--mp-button-ink,#111827)!important; -webkit-text-fill-color:var(--mp-button-ink,#111827)!important; }
.mp-site-nav a { flex:0 0 auto; white-space:nowrap!important; word-break:normal!important; overflow-wrap:normal!important; }
.mp-hero-grid.no-image { grid-template-columns:1fr; }
.mp-hero-image img { width:100%; height:auto; max-height:500px; object-fit:contain; }
.mp-home-section { padding:44px 0; background:#fff; }
.mp-home-section:nth-child(even) { background:var(--mp-bg); }
.mp-home-heading { padding:20px 0; background:var(--mp-header-bg); color:var(--cs-heading-ink,#fff); margin:0 0 28px; }
.mp-home-heading h2 { color:var(--cs-heading-ink,#fff); margin:0; font-size:clamp(25px,3vw,38px); }
.mp-home-section p, .mp-home-section li { max-width:1020px; }
.mp-site-footer { padding:32px 0; background:#fff; border-top:1px solid var(--mp-border); font-size:14px; }
.mp-site-footer p { margin:8px 0; }
@media (max-width:1050px) {
 .mp-brand { flex:0 1 auto; max-width:calc(100% - 70px); }
 .mp-site-nav { top:100%; flex-direction:column; align-items:stretch; }
 .mp-site-nav a { text-align:left; }
}
/* Desktop: navigation links occupy at most four positions per row.
   The order button is a separate right-hand column, never a menu item. */
.mp-site-nav { flex:1 1 auto; justify-content:flex-end; gap:12px; flex-wrap:nowrap; }
.mp-site-nav-links { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; column-gap:10px; row-gap:4px; min-width:0; }
.mp-site-nav-links.is-two-row { display:grid; grid-template-columns:repeat(4,max-content); grid-auto-flow:row; justify-content:end; column-gap:clamp(6px,1vw,16px); row-gap:4px; }
.mp-site-nav > .mp-nav-order { flex:0 0 auto; margin-left:10px; background:var(--mp-accent,#f5b83d)!important; color:var(--mp-button-ink,#111827)!important; -webkit-text-fill-color:var(--mp-button-ink,#111827)!important; }
.mp-site-nav > .mp-nav-order:hover, .mp-site-nav > .mp-nav-order:focus-visible { background:var(--mp-accent-hover,#ffc858)!important; color:var(--mp-button-ink,#111827)!important; -webkit-text-fill-color:var(--mp-button-ink,#111827)!important; }
@media (max-width:1050px) {
 .mp-site-nav { flex-direction:column; flex-wrap:nowrap; align-items:stretch; gap:6px; }
 .mp-site-nav-links,.mp-site-nav-links.is-two-row { display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; gap:3px; }
 .mp-site-nav > .mp-nav-order { margin:6px 0 0; text-align:center; }
}

/* CopySub Auto: preserve the ProDentim reference landing-page rhythm while using donor media. */
.mp-site-page img { max-height:500px!important; height:auto!important; object-fit:contain; }
.mp-btn { font-size:16px!important; line-height:1.2!important; text-indent:0!important; opacity:1!important; visibility:visible!important; }
.mp-hero-actions, .mbr-section-btn { display:flex!important; flex-wrap:wrap!important; column-gap:24px!important; row-gap:18px!important; align-items:center!important; }
.align-center .mbr-section-btn { justify-content:center!important; }
.mp-btn + .mp-btn { margin-left:0!important; }
.mp-btn-primary { -webkit-text-fill-color:var(--mp-button-ink)!important; }
.mp-btn-secondary { -webkit-text-fill-color:var(--mp-button-outline-ink)!important; }
.cs-template-heading { padding:0!important; min-height:94px; display:flex!important; align-items:center!important; background:var(--mp-header-bg)!important; color:var(--cs-heading-ink,#fff)!important; }
.cs-template-heading > .container { min-height:94px; width:100%; display:flex; align-items:center; justify-content:center; }
.cs-template-heading .row, .cs-template-heading .title { width:100%; margin-top:0!important; margin-bottom:0!important; align-items:center!important; }
.cs-template-heading h2 { color:var(--cs-heading-ink,#fff)!important; margin:0!important; padding:14px 0!important; line-height:1.16!important; text-align:center; }
.cs-template-hero { padding-top:4rem!important; padding-bottom:5rem!important; background:#fff!important; }
.cs-template-hero .row, .cs-template-text-image .row { align-items:center; }
.cs-template-hero .image-wrapper img, .cs-template-text-image .image-wrapper img { width:100%; max-height:500px; object-fit:contain; }
.cs-template-hero .mbr-section-title { font-size:clamp(38px,5.4vw,72px); line-height:1.02; margin-top:0; color:var(--mp-brand-text,#111827)!important; -webkit-text-fill-color:var(--mp-brand-text,#111827)!important; }
.cs-template-hero .cs-hero-product-name { display:block; font-size:1.20em; line-height:.94; font-weight:900; color:var(--mp-brand-text,#111827)!important; -webkit-text-fill-color:var(--mp-brand-text,#111827)!important; letter-spacing:-.025em; }
.cs-template-hero .cs-hero-title-tail { display:block; margin-top:.20em; font-size:.62em; line-height:1.08; font-weight:700; color:var(--mp-brand-text,#111827)!important; -webkit-text-fill-color:var(--mp-brand-text,#111827)!important; opacity:1; letter-spacing:-.01em; }
.cs-template-hero .mbr-text, .cs-template-text-image .mbr-text, .cs-template-text .mbr-text { font-size:19px; line-height:1.55!important; }
.cs-template-cards, .cs-template-reviews { background:#fff!important; padding:2rem 0 1rem!important; }
.cs-template-cards .card-wrap, .cs-template-reviews .card-wrap { height:100%; background:#fff; border-radius:8px; overflow:hidden; box-shadow:0 8px 25px rgba(20,34,50,.07); }
.cs-template-cards .team-card, .cs-template-reviews .team-card { margin-bottom:2rem; }
.cs-template-cards .image-wrap img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.cs-template-reviews .image-wrap { text-align:center; padding-top:18px; }
.cs-template-reviews .image-wrap img, .cs-review-image { display:block; width:auto!important; max-width:200px!important; height:auto!important; max-height:200px!important; aspect-ratio:auto!important; object-fit:contain!important; margin:0 auto!important; }
.cs-template-text-image { padding:2rem 0 3rem!important; background:#fff!important; }
.cs-template-text-image .cs-centered-image { text-align:center; margin-bottom:20px; }
.cs-template-text-image .cs-centered-image img { display:block; width:auto!important; max-width:100%!important; height:auto!important; max-height:500px!important; object-fit:contain!important; margin:0 auto!important; }
.cs-template-text-image .cs-text-below { margin-top:6px; }
.cs-template-text-image .cs-side-image { text-align:center; }
.cs-template-text-image .cs-side-image img { display:block; width:auto!important; max-width:100%!important; height:auto!important; max-height:500px!important; object-fit:contain!important; margin:0 auto!important; }
.cs-home-section-body { padding:2rem 0 3rem!important; background:#fff!important; }
.cs-template-text { padding:2rem 0 1rem!important; background:#fff!important; }
.cs-template-bullets { padding:1rem 0 3rem!important; background:#fff!important; }
.cs-template-bullets ul, .cs-check-list { list-style:none; padding-left:2.8rem; }
.cs-template-bullets li, .cs-check-list li { position:relative; margin:0 0 1rem; }
.cs-template-bullets li:before, .cs-check-list li:before { content:'✓'; position:absolute; left:-2.4rem; top:50%; transform:translateY(-50%); width:1.8rem; height:1.8rem; border-radius:50%; background:var(--mp-brand); color:#fff; display:grid; place-items:center; font-weight:800; }
.cs-template-image { padding:2.5rem 0 3rem!important; background:#fff!important; }
.cs-template-image img { display:block; width:auto; max-width:100%; height:auto; max-height:500px; object-fit:contain; margin:auto; }
.cs-ingredient-grid { padding:2rem 0 1rem!important; background:#fff!important; }
.cs-ingredient-card { padding:14px 18px 30px; text-align:center; }
.cs-ingredient-image { border-radius:14px; overflow:hidden; margin-bottom:16px; background:var(--mp-bg); }
.cs-ingredient-image img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.cs-ingredient-overview { text-align:center; margin:22px auto 6px; }
.cs-ingredient-overview-image { display:block; width:auto; max-width:100%; max-height:420px; object-fit:contain; margin:0 auto; }
.cs-template-faq { padding:3rem 0!important; background:#fff!important; }
.cs-faq-item { border-bottom:1px solid var(--mp-border); padding:16px 4px; }
.cs-faq-item summary { cursor:pointer; font-weight:800; font-size:20px; }
.cs-faq-item p { margin:14px 0 4px; }
.cs-template-link-strip { padding:2rem 0 1rem!important; background:var(--mp-header-bg)!important; }
.cs-template-link-strip ul { list-style:none; margin:0; padding-left:2rem; }
.cs-template-link-strip li { margin:0 0 12px; }
.cs-template-link-strip a { color:var(--cs-heading-ink,#fff)!important; font-weight:700; text-decoration:none; }
.cs-final-price { padding:0 0 3rem!important; background:#fff!important; }
.cs-template-final-offer .mbr-section-btn { width:100%; margin-top:30px!important; }
.cs-template-home .cs-template-final-offer .mbr-section-btn { justify-content:center!important; }
.cs-template-home .cs-template-final-offer .mbr-section-btn .mp-btn { margin-left:auto!important; margin-right:auto!important; }
body:not(.cs-template-home) .cs-template-final-offer .mbr-section-btn { justify-content:flex-start!important; }
body:not(.cs-template-home) .cs-template-final-offer .mbr-section-btn .mp-btn { margin-left:0!important; margin-right:auto!important; }
.cs-discount-btn {
 background:var(--cs-discount-bg,#15803d)!important;
 border-color:var(--cs-discount-bg,#15803d)!important;
 color:#fff!important; -webkit-text-fill-color:#fff!important;
 font-size:19px!important; font-weight:900!important; line-height:1.15!important;
 padding:18px 30px!important; min-height:58px; min-width:270px;
 box-shadow:0 10px 24px rgba(15,23,42,.16);
}
.cs-discount-btn:hover,.cs-discount-btn:focus {
 background:var(--cs-discount-bg-hover,#166534)!important;
 border-color:var(--cs-discount-bg-hover,#166534)!important;
 color:#fff!important; -webkit-text-fill-color:#fff!important;
}
.cs-trust-grid { padding:3rem 0 3.75rem!important; background:#fff!important; }
.cs-trust-grid .row { row-gap:28px; align-items:stretch; }
.cs-trust-grid .col-sm-6 { display:flex; }
.cs-trust-grid .card-wrap { width:100%; height:100%; display:flex; flex-direction:column; background:#fff; border:1px solid var(--mp-border); border-radius:12px; overflow:hidden; box-shadow:0 8px 25px rgba(20,34,50,.07); }
.cs-trust-grid .image-wrap { min-height:180px; display:flex; align-items:center; justify-content:center; padding:22px 18px 14px; background:#fff; }
.cs-trust-grid .content-wrap { flex:1; padding:8px 18px 24px; text-align:center; }
.cs-trust-grid .card-title { margin:4px 0 12px!important; }
.cs-trust-grid .card-text { margin:0; line-height:1.5!important; }
.cs-trust-image { display:block; width:auto!important; max-width:100%!important; height:auto!important; max-height:145px!important; object-fit:contain!important; margin:auto!important; }
.cs-pricing-section { padding:2.5rem 0 3.5rem; background:#fff; }
.cs-pricing-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:20px; align-items:stretch; max-width:1120px; margin:0 auto; }
.cs-pricing-card { display:flex; flex-direction:column; background:#fff; border:1px solid var(--mp-border); border-radius:16px; overflow:hidden; box-shadow:0 10px 30px rgba(20,34,50,.09); text-align:center; }
.cs-pricing-card.featured { transform:translateY(-8px); border:2px solid var(--mp-brand); box-shadow:0 16px 40px rgba(20,34,50,.14); }
.cs-pricing-header { padding:16px 18px; background:#e5e7eb; color:#334155; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.cs-pricing-card.featured .cs-pricing-header { background:var(--mp-brand); color:var(--mp-brand-ink,#fff); -webkit-text-fill-color:var(--mp-brand-ink,#fff); }
.cs-pricing-body { display:flex; flex-direction:column; align-items:center; flex:1; padding:24px 22px 28px; }
.cs-package-name { font-size:25px; font-weight:800; color:#111827; }
.cs-package-supply { margin:4px 0 14px; color:var(--mp-muted); font-size:15px; }
.cs-pricing-image { display:block; width:auto!important; max-width:100%!important; height:220px!important; object-fit:contain!important; margin:0 auto 14px!important; }
.cs-price-checklist { list-style:none; padding:0; margin:0 0 10px; font-weight:700; }
.cs-price-checklist li { margin:4px 0; }
.cs-price-wrap { display:flex; align-items:flex-end; justify-content:center; gap:7px; margin:8px 0 6px; }
.cs-price { font-size:56px; line-height:.95; font-weight:900; color:var(--mp-brand); }
.cs-price sup { font-size:24px; vertical-align:top; }
.cs-price-unit { color:var(--mp-muted); font-weight:700; padding-bottom:5px; }
.cs-price-save { margin:5px 0; font-weight:800; color:#166534; }
.cs-price-total-row { display:flex; justify-content:center; gap:14px; align-items:center; margin:5px 0 15px; }
.cs-price-original { text-decoration:line-through; color:#94a3b8; }
.cs-price-total { font-size:21px; font-weight:900; color:#111827; }
.cs-pricing-btn { display:inline-flex; justify-content:center; align-items:center; width:100%; margin-top:auto; padding:15px 20px; border-radius:999px; background:var(--mp-brand); color:var(--mp-brand-ink,#fff)!important; -webkit-text-fill-color:var(--mp-brand-ink,#fff)!important; text-decoration:none!important; font-weight:900; }
.cs-price-shipping { margin-top:10px; color:var(--mp-muted); font-size:14px; }
.cs-site-footer { background:#0f172a; color:#e5e7eb; padding:38px 0 24px; margin-top:0; }
.cs-site-footer .footer-inner { width:min(1160px,calc(100% - 32px)); margin:0 auto; }
.cs-site-footer .footer-links { display:flex; flex-wrap:wrap; justify-content:center; gap:14px 24px; margin-bottom:26px; }
.cs-site-footer .footer-links a { color:#fff; text-decoration:none; font-weight:700; }
.cs-site-footer .disclaimer-block { display:flex; gap:24px; align-items:flex-start; padding:22px; border:1px solid rgba(255,255,255,.14); border-radius:14px; background:rgba(255,255,255,.04); }
.cs-site-footer .disclaimer-logo { min-width:120px; font-size:23px; font-weight:900; text-transform:none; color:#fff; }
.cs-site-footer .disclaimer-copy { flex:1; }
.cs-site-footer .disclaimer-text { margin:0 0 12px; font-size:12px; line-height:1.55!important; color:#cbd5e1; }
.cs-site-footer .footer-copy { margin-top:22px; text-align:center; font-size:13px; color:#cbd5e1; }
.mp-media-gallery { margin:46px 0; }
.mp-media-gallery h2 { margin-bottom:26px; }
.mp-media-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,300px)); justify-content:center; gap:24px; }
/* Media must never visually stick to the colored title bars above/below it. */
.gallery3.cid-csGallery { padding:3.25rem 0 3.75rem!important; background:#fff!important; }
.gallery3.cid-csGallery .row { row-gap:30px; margin-top:8px; margin-bottom:8px; }
.gallery3.cid-csGallery .item-wrapper { padding:12px 0; }
.gallery3.cid-csGallery .item-img { display:flex; align-items:center; justify-content:center; padding:8px 0; }
.gallery3.cid-csGallery .cs-gallery-image { display:block; width:auto!important; max-width:100%!important; height:auto!important; max-height:500px!important; object-fit:contain!important; margin:0 auto!important; }
.cs-template-text-image .image-wrapper { padding-top:18px; padding-bottom:18px; }
.cs-template-image .image-wrapper { padding-top:16px; padding-bottom:16px; }
.mp-media-card { margin:0; border:1px solid var(--mp-border); background:#fff; border-radius:14px; overflow:hidden; }
.mp-media-card img { display:block; width:auto; max-width:100%; height:auto; max-height:500px; object-fit:contain; background:#fff; margin:0 auto; }
.mp-media-card figcaption { padding:10px 12px 14px; font-size:15px; line-height:1.35; color:var(--mp-muted); }
.mp-final-cta { margin:42px 0 0; padding:30px; background:#fff; border:1px solid var(--mp-border); border-radius:var(--mp-radius); box-shadow:var(--mp-shadow); text-align:center; }
.mp-final-cta h2 { margin-top:0; }
.mp-final-cta-media { margin:18px auto 24px; max-width:800px; }
.mp-final-cta-image { width:100%; max-height:400px; object-fit:contain; }
#image3-1t .image-wrapper, #image3-1x .image-wrapper { text-align:center; }
#image3-1t img, #image3-1x img { width:auto!important; max-width:100%!important; height:auto!important; max-height:400px!important; object-fit:contain!important; margin-left:auto!important; margin-right:auto!important; }
@media (max-width:991px){ .mp-media-grid{grid-template-columns:repeat(auto-fit,minmax(220px,300px));justify-content:center;} }
@media (max-width:640px){ .mp-media-grid{grid-template-columns:1fr;} .cs-template-hero{padding-top:2.5rem!important;padding-bottom:3rem!important;} .cs-pricing-cards{grid-template-columns:1fr;} .cs-pricing-card.featured{transform:none;} .cs-site-footer .disclaimer-block{flex-direction:column;} }
:root{--mp-brand:#931f1d;--mp-brand-dark:#701816;--mp-header-bg:#931f1d;--cs-heading-ink:#ffffff;--mp-button-ink:#111827;--mp-brand-ink:#ffffff;--mp-brand-text:#931f1d;--mp-header-hover:rgba(255,255,255,.14);--cs-discount-bg:#15803d;--cs-discount-bg-hover:#166534;}
