:root {
  --cheers-ink: #1d1d1f;
  --cheers-muted: #64646b;
  --cheers-accent: #9bd23e;
  --cheers-accent-hover: #b0e255;
  --cheers-cta-ink: #243512;
  --cheers-button-bg: var(--cheers-accent);
  --cheers-button-hover: var(--cheers-accent-hover);
  --cheers-button-text: #fff;
  --cheers-focus: #52782d;
  --cheers-error: #a8242b;
  --cheers-paper: #fff;
  --cheers-soft: #f5f5f7;
  --cheers-border: #dedee3;
  --cheers-radius: 18px;
}
.cheers-storefront { color: var(--cheers-ink); background: var(--cheers-paper); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 17px; line-height: 1.65; }
.cheers-storefront * { box-sizing: border-box; }
.cheers-storefront a { color: inherit; }
.cheers-storefront img { max-width: 100%; height: auto; }
.cheers-storefront h1,.cheers-storefront h2,.cheers-storefront h3 { color: var(--cheers-ink); font-family: inherit; letter-spacing: -.045em; line-height: 1.1; font-weight: 650; }
.cheers-storefront h1 { font-size: clamp(38px, 5.2vw, 70px); }
.cheers-storefront h2 { font-size: clamp(30px, 3.4vw, 46px); }
.cheers-storefront h3 { font-size: 23px; letter-spacing: -.025em; }
.cheers-storefront a:focus-visible,.cheers-storefront button:focus-visible,.cheers-storefront input:focus-visible,.cheers-storefront select:focus-visible,.cheers-storefront summary:focus-visible { outline: 3px solid var(--cheers-focus); outline-offset: 5px; }
.cheers-storefront [hidden] { display: none !important; }
.cheers-container { width: min(1240px, calc(100% - 80px)); margin-inline: auto; }
.cheers-section { padding: 86px 0; }
.cheers-section-heading { margin: 0 0 24px; max-width: 760px; }
.cheers-eyebrow { font-size: 12px; font-weight: 650; letter-spacing: .14em; text-transform: uppercase; margin: 0 0 20px; }
.cheers-lead { font-size: 21px; line-height: 1.6; }
.cheers-lead p:first-child { margin-top: 0; }
.cheers-lead p:last-child { margin-bottom: 0; }
.cheers-small { font-size: 13px; color: var(--cheers-muted); }
.cheers-section-intro { margin-bottom: 40px; }
.cheers-heading-row { display: flex; gap: 30px; align-items: end; justify-content: space-between; }
.cheers-heading-row h2 { margin-bottom: 0; }
.cheers-text-link { font-size: 15px; font-weight: 650; text-decoration: underline; text-underline-offset: 6px; }
.cheers-storefront .cheers-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 52px; padding: 13px 24px; background: var(--cheers-button-bg); color: var(--cheers-button-text) !important; border: 1px solid var(--cheers-button-bg); border-radius: 7px; text-decoration: none !important; font-size: 15px; line-height: 1.4; font-weight: 650; }
.cheers-storefront .cheers-button:hover { background: var(--cheers-button-hover); border-color: var(--cheers-button-hover); }
.cheers-skip-link { position: fixed; top: -100px; left: 24px; z-index: 10000; padding: 12px 20px; background: #fff; }
.cheers-skip-link:focus { top: 12px; }
.cheers-header { border-bottom: 1px solid var(--cheers-border); background: var(--cheers-paper); }
.cheers-header-inner { width: min(1376px, calc(100% - 64px)); margin: auto; min-height: 94px; display: flex; align-items: center; gap: 36px; }
.cheers-logo { display: flex; flex: 0 0 98px; }
.cheers-logo img { width: 98px; height: 58px; object-fit: contain; }
.cheers-nav,.cheers-nav ul { display: flex; flex-wrap: wrap; gap: 28px; align-items: center; padding: 0; margin: 0; list-style: none; }
.cheers-nav { margin-inline: auto; }
.cheers-nav a,.cheers-header-actions a { font-size: 13px; font-weight: 600; text-decoration: none; }
.cheers-nav a:hover,.cheers-header-actions a:hover { text-decoration: underline; text-underline-offset: 5px; }
.cheers-header-actions { display: flex; align-items: center; gap: 20px; margin-left: auto; }
.cheers-cart-link { white-space: nowrap; }
.cheers-cart-link span { display: inline-flex; align-items: center; justify-content: center; width: 25px; height: 25px; margin-left: 4px; border: 1px solid var(--cheers-border); border-radius: 50%; font-size: 11px; }
.cheers-storefront .cheers-menu-toggle { display: none; }
.cheers-hero { padding: 60px 0 66px; }
.cheers-hero-grid { display: grid; grid-template-columns: 1.04fr 1fr; gap: 64px; align-items: center; }
.cheers-hero-copy h1 { max-width: 580px; margin-bottom: 24px; }
.cheers-hero-copy .cheers-lead { font-size: 18px; color: var(--cheers-muted); max-width: 490px; margin-bottom: 30px; }
.cheers-hero-footnote { margin: 23px 0 0; font-size: 12px; color: var(--cheers-muted); }
.cheers-hero-visual { background: #fff; border: 1px solid var(--cheers-border); border-radius: var(--cheers-radius); overflow: hidden; }
.cheers-hero-note { display: block; text-align: center; margin: 0; padding: 22px 20px 0; font-size: 14px; font-weight: 600; }
.cheers-hero-products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 18px 22px 24px; }
.cheers-hero-products a { display: grid; grid-template-rows: 220px 1fr auto; gap: 10px; min-width: 0; margin: 0; position: static; z-index: auto; transform: none; text-align: center; text-decoration: none; }
.cheers-hero-products img { display: block; width: 100%; height: 220px; object-fit: contain; background: #fff; }
.cheers-hero-product-name { display: block; font-size: 14px; line-height: 1.4; font-weight: 600; }
.cheers-hero-product-link { display: block; padding: 6px 0; font-size: 12px; line-height: 1.4; color: var(--cheers-muted); }
.cheers-hero-products a:hover .cheers-hero-product-link { color: var(--cheers-focus); text-decoration: underline; text-underline-offset: 4px; }
.cheers-hero-tag { display: block; text-align: center; border-top: 1px solid var(--cheers-border); font-size: 11px; line-height: 1.5; letter-spacing: .04em; padding: 14px 20px; color: var(--cheers-muted); }
.cheers-quality { padding-top: 72px; border-top: 1px solid var(--cheers-border); }
.cheers-proof-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 46px; }
.cheers-proof-grid article { border-top: 1px solid var(--cheers-border); padding-top: 24px; }
.cheers-proof-grid p { font-size: 16px; color: var(--cheers-muted); }
.cheers-proof-index { display: block; font-size: 13px; color: var(--cheers-focus); margin-bottom: 23px; }
.cheers-quality-link { margin: 30px 0 0; }
.cheers-product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.cheers-product-card { min-width: 0; background: #fff; border: 1px solid var(--cheers-border); border-radius: 12px; overflow: hidden; display: flex; flex-direction: column; }
.cheers-card-image { display: flex; align-items: center; justify-content: center; background: #fff; aspect-ratio: 1.05; padding: 26px; }
.cheers-card-image img { display: block; width: 100%; height: 230px; object-fit: contain; }
.cheers-card-copy { display: flex; flex-direction: column; flex: 1; padding: 21px; }
.cheers-card-copy .cheers-card-title { font-size: 19px; line-height: 1.3; letter-spacing: -.015em; min-height: 50px; margin: 0 0 12px; }
.cheers-card-copy .cheers-card-title a { text-decoration: none; }
.cheers-card-purchase { display: grid; row-gap: 7px; margin-top: auto; padding-top: 8px; }
.cheers-card-copy .cheers-button { margin-top: 0; width: 100%; font-size: 13px; padding: 11px 15px; gap: 12px; }
.cheers-card-actions { display: grid; gap: 10px; }
.cheers-card-actions .cheers-card-add { justify-content: center; text-align: center; min-height: 48px; }
.cheers-card-detail-link { display: flex; justify-content: space-between; align-items: center; gap: 8px; min-height: 44px; padding: 9px 14px; border: 1px solid var(--cheers-border); border-radius: 7px; font-size: 13px; line-height: 1.4; text-decoration: none; }
.cheers-card-detail-link:hover { background: var(--cheers-soft); }
.cheers-card-unavailable { display: flex; align-items: center; justify-content: center; min-height: 48px; padding: 10px; border-radius: 7px; background: var(--cheers-soft); color: var(--cheers-muted); font-size: 13px; }
.cheers-card-actions .added_to_cart { display: none !important; }
.cheers-card-actions .cheers-card-add.added::after,.cheers-product-hero .single_add_to_cart_button.added::after,.cheers-storefront .xoo-cp-added { display: none !important; }
.cheers-card-add.loading { opacity: .65; cursor: progress; }
.cheers-card-price { min-height: 1.4em; font-size: 21px; line-height: 1.4; font-weight: 650; margin: 0; }
.cheers-card-unit-cost { min-height: 3em; font-size: 12px; line-height: 1.5; }
.cheers-card-unit-cost .cheers-card-details { margin: 0; line-height: inherit; }
.cheers-card-price del { font-size: 14px; font-weight: 400; color: var(--cheers-muted); }
.cheers-card-price ins { text-decoration: none; }
.cheers-card-details { font-size: 12px; color: var(--cheers-muted); margin: 0 0 14px; }
.cheers-card-highlight { font-size: 14px; line-height: 1.45; margin: 0 0 16px; }
.cheers-story { background: var(--cheers-soft); }
.cheers-story-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; }
.cheers-story-grid h2 { max-width: 450px; }
.cheers-story-grid .cheers-lead { margin-top: 0; }
.cheers-catalog { padding-top: 54px; }
.cheers-catalog h1 { font-size: clamp(36px, 4vw, 55px); margin-bottom: 18px; }
.cheers-catalog-intro { max-width: 650px; color: var(--cheers-muted); margin-bottom: 34px; }
.cheers-catalog-filters { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 24px; }
.cheers-catalog-filters a { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 44px; padding: 10px 16px; border: 1px solid var(--cheers-border); border-radius: 7px; background: #fff; font-size: 13px; line-height: 1.4; font-weight: 600; text-decoration: none; }
.cheers-catalog-filters a:hover { background: var(--cheers-soft); border-color: var(--cheers-ink); }
.cheers-catalog-filters a[aria-current="true"] { background: var(--cheers-ink); border-color: var(--cheers-ink); color: #fff; }
.cheers-filter-count { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 22px; padding-inline: 5px; border: 1px solid currentColor; border-radius: 50%; font-size: 11px; font-weight: 400; }
.cheers-catalog-empty { color: var(--cheers-muted); }
.cheers-catalog-tools { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 18px 0; margin-bottom: 27px; border-block: 1px solid var(--cheers-border); font-size: 13px; }
.cheers-sort { display: flex; gap: 10px; align-items: center; }
.cheers-sort select { width: auto; border: 1px solid var(--cheers-border); border-radius: 4px; padding: 9px 30px 9px 10px; font-size: 13px; background: transparent; color: var(--cheers-ink); }
.cheers-sort button { padding: 9px 13px; min-height: 40px; border: 1px solid var(--cheers-button-bg); color: var(--cheers-button-text); font-size: 12px; background: var(--cheers-button-bg); }
.cheers-sort button:hover { background: var(--cheers-button-hover); }
.cheers-product-hero { padding-top: 32px; }
.cheers-product-hero .woocommerce-breadcrumb { margin-bottom: 32px; color: var(--cheers-muted); font-size: 12px; }
.cheers-product-hero-grid { display: grid; grid-template-columns: 1.04fr 1fr; gap: 70px; align-items: start; }
.cheers-product-gallery { min-width: 0; border: 1px solid var(--cheers-border); border-radius: var(--cheers-radius); padding: 40px; background: #fff; }
.cheers-product-hero .woocommerce-product-gallery { width: 100% !important; float: none !important; margin: 0 !important; }
.cheers-product-hero .woocommerce-product-gallery img { max-height: 530px; object-fit: contain; }
.cheers-product-hero .summary { width: 100% !important; float: none !important; margin: 0 !important; }
.cheers-product-hero .product_title { font-size: clamp(32px, 3.4vw, 48px); margin: 0 0 20px; }
.cheers-product-hero .price { font-size: 26px !important; color: var(--cheers-ink) !important; font-weight: 650; }
.cheers-product-hero .woocommerce-product-details__short-description { font-size: 16px; color: var(--cheers-muted); }
.cheers-purchase-facts { margin: 26px 0 12px; padding: 18px 0; border-block: 1px solid var(--cheers-border); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 24px; }
.cheers-purchase-facts dt { color: var(--cheers-muted); font-size: 12px; font-weight: 400; }
.cheers-purchase-facts dd { margin: 3px 0 0; font-size: 16px; line-height: 1.4; font-weight: 600; }
.cheers-storefront .woocommerce .button,.cheers-storefront button.single_add_to_cart_button,.cheers-storefront .woocommerce-message .button,.cheers-storefront .woocommerce-info .button,.cheers-storefront .woocommerce-error .button { border-radius: 6px; background: var(--cheers-button-bg) !important; color: var(--cheers-button-text) !important; min-height: 50px; padding: 14px 22px !important; font-weight: 650; line-height: 1.4; }
.cheers-product-hero form.cart { display: flex; align-items: stretch; gap: 12px; margin-block: 30px !important; flex-wrap: wrap; }
.cheers-quantity-presets { order: -1; flex-basis: 100%; min-width: 0; padding: 0; margin: 0 0 8px; border: 0; }
.cheers-quantity-presets legend { margin-bottom: 10px; font-size: 13px; font-weight: 600; }
.cheers-quantity-presets button { min-width: 64px; min-height: 44px; margin: 0 8px 8px 0; padding: 10px 18px; background: var(--cheers-button-bg); color: var(--cheers-button-text); border: 1px solid var(--cheers-button-bg); border-radius: 6px; font-size: 15px; }
.cheers-quantity-presets button:hover { background: var(--cheers-button-hover); }
.cheers-quantity-presets button[aria-pressed="true"] { border-color: var(--cheers-focus); background: var(--cheers-button-bg); color: var(--cheers-button-text); box-shadow: inset 0 0 0 2px var(--cheers-focus); }
.cheers-storefront .quantity .qty { height: 50px; width: 68px; border: 1px solid var(--cheers-border); border-radius: 6px; }
.cheers-storefront .cheers-quantity-control { display: inline-flex; align-items: stretch; float: none !important; margin: 0 !important; min-height: 50px; border: 1px solid var(--cheers-border); border-radius: 8px; background: #fff; }
.cheers-storefront .cheers-quantity-control .qty { appearance: textfield; -moz-appearance: textfield; width: 50px; padding: 0; margin: 0; border: 0; border-radius: 0; background: #fff; color: var(--cheers-ink); font: inherit; font-size: 16px; text-align: center; }
.cheers-storefront .cheers-quantity-control:focus-within { outline: 2px solid var(--cheers-focus); outline-offset: 3px; }
.cheers-storefront .cheers-quantity-control .qty:focus,.cheers-storefront .cheers-quantity-control .cheers-quantity-step:focus { outline: none; box-shadow: none; }
.cheers-storefront .cheers-quantity-control .cheers-quantity-step:focus-visible { background: var(--cheers-soft); }
.cheers-quantity-control input::-webkit-inner-spin-button,.cheers-quantity-control input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.cheers-storefront .cheers-quantity-step { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px; width: 44px; min-height: 48px; padding: 0; border: 0; border-radius: 7px; background: #fff; color: var(--cheers-ink); font-size: 22px; line-height: 1; cursor: pointer; }
.cheers-storefront .cheers-quantity-step:hover { background: var(--cheers-soft); }
.cheers-storefront .cheers-quantity-step:disabled { opacity: .35; cursor: default; }
.cheers-product-hero form.cart .single_add_to_cart_button { flex: 1 1 180px; }
.cheers-product-hero .product_meta { font-size: 12px; color: var(--cheers-muted); border-top: 1px solid var(--cheers-border); padding-top: 22px; }
.cheers-details-grid { display: grid; grid-template-columns: 220px 1fr; gap: 76px; }
.cheers-details-nav { position: sticky; top: 30px; align-self: start; display: flex; flex-direction: column; gap: 15px; font-size: 14px; }
.cheers-details-nav a { text-decoration: none; }
.cheers-product-section { padding-bottom: 62px; margin-bottom: 54px; border-bottom: 1px solid var(--cheers-border); scroll-margin-top: 36px; }
.cheers-product-section h2 { font-size: 34px; }
.cheers-table-scroll { overflow-x: auto; }
.cheers-table-scroll:focus-visible { outline: 3px solid var(--cheers-focus); outline-offset: 5px; }
.cheers-composition { width: 100%; border-collapse: collapse; font-size: 15px; }
.cheers-composition th,.cheers-composition td { text-align: left; padding: 16px 20px; border: 0; border-bottom: 1px solid var(--cheers-border); background: transparent; }
.cheers-composition thead { background: var(--cheers-soft); }
.cheers-composition tbody th { font-weight: 500; }
.cheers-composition-note { display: block; margin-top: 5px; font-size: 12px; color: var(--cheers-muted); }
.cheers-ingredient-forms { margin: 0; }
.cheers-ingredient-forms > div { display: grid; grid-template-columns: minmax(140px, 1fr) 2fr; gap: 24px; padding: 20px 0; border-bottom: 1px solid var(--cheers-border); }
.cheers-ingredient-forms dt { font-size: 17px; font-weight: 600; }
.cheers-ingredient-forms dd { margin: 0; font-size: 15px; color: var(--cheers-muted); }
.cheers-bundle-list { margin: 0; padding: 0; list-style: none; }
.cheers-bundle-list li { display: flex; align-items: center; gap: 24px; border-bottom: 1px solid var(--cheers-border); padding: 20px 0; }
.cheers-bundle-image { width: 100px; flex: 0 0 100px; background: #fff; border-radius: 8px; padding: 10px; }
.cheers-bundle-image img { display: block; width: 100%; height: 100px; object-fit: contain; }
.cheers-bundle-list h3 { margin: 0; font-size: 21px; }
.cheers-bundle-list h3 a { text-decoration: none; }
.cheers-bundle-list p { font-size: 14px; color: var(--cheers-muted); margin: 8px 0 0; }
.cheers-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cheers-accordion { border-bottom: 1px solid var(--cheers-border); }
.cheers-accordion summary { font-size: 17px; font-weight: 600; cursor: pointer; padding: 22px 0; }
.cheers-accordion > div { font-size: 15px; color: var(--cheers-muted); padding: 0 0 22px; }
.cheers-feature-grid { display: grid; gap: 30px; grid-template-columns: repeat(2, 1fr); }
.cheers-feature-grid h3 { font-size: 22px; }
.cheers-feature-grid p { font-size: 15px; color: var(--cheers-muted); }
.cheers-evidence { padding: 24px; margin: 20px 0; border: 1px solid var(--cheers-border); border-radius: 12px; }
.cheers-evidence h3 { margin-top: 0; }
.cheers-sticky-purchase { position: fixed; z-index: 100; bottom: 20px; left: 50%; transform: translateX(-50%); width: min(820px, calc(100% - 40px)); background: #fff; box-shadow: 0 5px 35px #1d1d1f1a; border: 1px solid var(--cheers-border); border-radius: 12px; padding: 14px 18px; display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.cheers-sticky-purchase strong { display: block; font-size: 14px; }
.cheers-sticky-purchase span { font-size: 13px; }
.cheers-sticky-purchase .cheers-button { min-height: 44px; padding: 11px 18px; }
.cheers-page { width: min(1240px, calc(100% - 80px)); margin: 54px auto 80px; }
.cheers-page:has(.elementor) { width: 100%; margin: 0; }
.cheers-page-title { font-size: clamp(34px, 4vw, 52px) !important; margin-bottom: 32px; }
.cheers-storefront .woocommerce form .form-row input.input-text,.cheers-storefront .woocommerce form .form-row textarea,.cheers-storefront .woocommerce select { border-radius: 6px; border: 1px solid #a9a9b0; background: #fff; color: var(--cheers-ink); padding: 12px 14px; min-height: 47px; font-size: 16px; }
.cheers-storefront .woocommerce form .form-row label { font-size: 14px; font-weight: 500; }
.cheers-storefront .woocommerce table.shop_table { border-color: var(--cheers-border); border-radius: 8px; }
.cheers-storefront .woocommerce #payment { background: var(--cheers-soft); border-radius: 10px; }
.cheers-storefront .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; border: 1px solid var(--cheers-border); border-radius: 8px; }
.cheers-storefront .woocommerce-MyAccount-navigation a { display: block; padding: 13px 20px; text-decoration: none; border-bottom: 1px solid var(--cheers-border); }
.cheers-storefront .woocommerce-MyAccount-navigation .is-active a { background: var(--cheers-soft); font-weight: 650; }
.cheers-checkout-support { margin-top: 24px; padding: 24px; border: 1px solid var(--cheers-border); border-radius: 10px; font-size: 14px; }
.cheers-footer { background: var(--cheers-soft); color: var(--cheers-ink); border-top: 1px solid var(--cheers-border); padding: 64px 0 26px; }
.cheers-footer a { color: var(--cheers-ink); text-decoration: none; }
.cheers-footer a:hover { text-decoration: underline; }
.cheers-footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 70px; }
.cheers-footer-wordmark { font-size: 42px; font-weight: 700; letter-spacing: -.06em; }
.cheers-footer h2 { font-size: 14px; color: var(--cheers-ink); letter-spacing: 0; margin: 0 0 22px; }
.cheers-footer p,.cheers-footer nav a { font-size: 14px; color: var(--cheers-muted); }
.cheers-footer nav { display: flex; flex-direction: column; align-items: start; gap: 12px; }
.cheers-footer-bottom { display: flex; justify-content: space-between; gap: 30px; border-top: 1px solid var(--cheers-border); margin-top: 50px; padding-top: 24px; font-size: 11px; color: var(--cheers-muted); }
@media (max-width: 1100px) {
  .cheers-header-inner { gap: 20px; }
  .cheers-nav,.cheers-nav ul { gap: 16px; }
  .cheers-hero-grid,.cheers-product-hero-grid { gap: 36px; }
  .cheers-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cheers-story-grid { gap: 50px; }
  .cheers-details-grid { gap: 40px; grid-template-columns: 180px 1fr; }
}
@media (max-width: 899px) {
  .cheers-container,.cheers-page { width: calc(100% - 40px); }
  .cheers-header-inner { width: calc(100% - 40px); min-height: 82px; flex-wrap: wrap; padding: 12px 0; }
  .cheers-storefront .cheers-menu-toggle { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; border: 0; border-radius: 6px; padding: 10px 12px; background: var(--cheers-button-bg); color: var(--cheers-button-text); font-size: 13px; }
  .cheers-storefront .cheers-menu-toggle:hover { background: var(--cheers-button-hover); }
  .cheers-logo { flex-basis: 76px; }
  .cheers-logo img { width: 76px; height: 45px; }
  .cheers-header-actions { gap: 12px; }
  .cheers-header-actions a { font-size: 12px; }
  .cheers-nav { width: 100%; order: 4; flex-direction: column; align-items: start; padding: 16px 0; }
  .cheers-nav ul { flex-direction: column; align-items: start; }
  .cheers-hero-grid { grid-template-columns: 1fr 1fr; gap: 26px; }
  .cheers-hero-products { gap: 8px; padding: 14px 12px 18px; }
  .cheers-hero-products a { grid-template-rows: 160px 1fr auto; gap: 8px; }
  .cheers-hero-products img { height: 160px; }
  .cheers-hero-product-name { font-size: 12px; }
  .cheers-hero-product-link { font-size: 11px; }
  .cheers-proof-grid { gap: 26px; }
  .cheers-product-grid { gap: 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cheers-card-copy { padding: 18px; }
  .cheers-details-grid { grid-template-columns: 1fr; gap: 36px; }
  .cheers-details-nav { position: static; flex-direction: row; flex-wrap: wrap; gap: 12px 24px; border-bottom: 1px solid var(--cheers-border); padding-bottom: 24px; }
  .cheers-product-gallery { padding: 24px; }
  .cheers-footer-grid { gap: 35px; }
}
@media (max-width: 620px) {
  .cheers-section { padding: 54px 0; }
  .cheers-hero { padding-top: 36px; }
  .cheers-hero-grid,.cheers-story-grid,.cheers-product-hero-grid { grid-template-columns: 1fr; }
  .cheers-hero-grid { gap: 30px; }
  .cheers-hero-copy h1 { font-size: 46px; }
  .cheers-hero-copy .cheers-lead { font-size: 17px; }
  .cheers-hero-note { padding: 18px 16px 0; font-size: 13px; }
  .cheers-hero-products a { grid-template-rows: 135px 1fr auto; }
  .cheers-hero-products img { height: 135px; }
  .cheers-hero-tag { padding: 12px 16px; }
  .cheers-proof-grid { grid-template-columns: 1fr; gap: 24px; }
  .cheers-proof-index { margin-bottom: 12px; }
  .cheers-heading-row { align-items: start; flex-direction: column; gap: 20px; }
  .cheers-card-image { padding: 18px 8px; }
  .cheers-card-image img { height: 155px; }
  .cheers-card-copy { padding: 15px 12px; }
  .cheers-card-copy .cheers-card-title { font-size: 16px; min-height: 62px; }
  .cheers-card-copy .cheers-button { font-size: 12px; padding: 10px; gap: 6px; }
  .cheers-card-price { font-size: 19px; }
  .cheers-catalog-tools { flex-wrap: wrap; gap: 14px; }
  .cheers-sort { flex-wrap: wrap; width: 100%; }
  .cheers-sort label { width: 100%; }
  .cheers-sort select { flex: 1; }
  .cheers-product-gallery img { max-height: 340px !important; }
  .cheers-product-section h2 { font-size: 29px; }
  .cheers-feature-grid { grid-template-columns: 1fr; }
  .cheers-ingredient-forms > div { grid-template-columns: 1fr; gap: 8px; }
  .cheers-bundle-list li { gap: 16px; }
  .cheers-bundle-image { width: 76px; flex-basis: 76px; }
  .cheers-bundle-image img { height: 80px; }
  .cheers-bundle-list h3 { font-size: 17px; }
  .cheers-composition th,.cheers-composition td { padding: 13px 10px; font-size: 13px; }
  .cheers-sticky-purchase { bottom: 10px; padding: 12px; width: calc(100% - 20px); gap: 10px; }
  .cheers-sticky-purchase strong { max-width: 150px; font-size: 12px; }
  .cheers-sticky-purchase .cheers-button { font-size: 12px; padding: 10px 12px; }
  .cheers-footer-grid { grid-template-columns: 1fr 1fr; gap: 35px 20px; }
  .cheers-footer-grid > div:first-child { grid-column: 1 / -1; }
  .cheers-footer-bottom { flex-direction: column; gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .cheers-storefront * { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
.cheers-preview-notice{padding:1rem 1.25rem;background:var(--cheers-soft);border:1px solid var(--cheers-border);border-left:3px solid var(--cheers-accent);border-radius:.5rem;color:var(--cheers-ink);font-size:.95rem}
.cheers-storefront .cheers-product-hero-grid div.woocommerce-product-gallery,.cheers-storefront .cheers-product-hero-grid div.summary{width:100%;float:none;margin:0;min-width:0}
.cheers-storefront .cheers-elementor-checkout h1.elementor-heading-title{color:var(--cheers-ink)!important;font-family:inherit;font-weight:650;letter-spacing:-.045em}
.cheers-storefront .cheers-elementor-checkout form label{color:var(--cheers-muted)!important}
.cheers-storefront .cheers-elementor-checkout form input::placeholder{color:var(--cheers-muted);opacity:1}
.cheers-storefront.woocommerce-cart .cheers-page,.cheers-storefront.woocommerce-account .cheers-page{width:min(1240px,calc(100% - 80px));margin-inline:auto;padding:48px 0}
@media(max-width:600px){.cheers-storefront.woocommerce-cart .cheers-page,.cheers-storefront.woocommerce-account .cheers-page{width:calc(100% - 40px);padding:28px 0}}
@media(max-width:600px){
  .cheers-storefront .cheers-catalog { padding-top: 30px; }
  .cheers-catalog .cheers-eyebrow { margin-bottom: 12px; }
  .cheers-storefront .cheers-catalog h1 { font-size: 32px; margin: 0 0 12px; }
  .cheers-catalog-intro { font-size: 15px; line-height: 1.55; margin-bottom: 20px; }
  .cheers-catalog-filters { flex-wrap: nowrap; overflow-x: auto; max-width: 100%; padding-bottom: 8px; margin-bottom: 16px; scrollbar-width: thin; }
  .cheers-catalog-filters a { flex: 0 0 auto; }
  .cheers-catalog-tools { gap: 8px; padding-block: 12px; margin-bottom: 18px; }
}

/* Native WooCommerce purchase and account screens share the storefront surface. */
.cheers-storefront .woocommerce { color: var(--cheers-ink); }
.cheers-storefront .woocommerce input::placeholder,.cheers-storefront .woocommerce textarea::placeholder { color: var(--cheers-muted); opacity: 1; }
.cheers-storefront .woocommerce form .form-row { margin-bottom: 18px; padding: 0; }
.cheers-storefront .woocommerce form .form-row label { display: block; margin-bottom: 7px; line-height: 1.5; color: var(--cheers-ink); }
.cheers-storefront .woocommerce form .form-row label.checkbox { display: inline-block; }
.cheers-storefront .woocommerce form input[type="checkbox"],.cheers-storefront .woocommerce form input[type="radio"] { accent-color: var(--cheers-focus); }
.cheers-storefront .woocommerce form .form-row .required { color: var(--cheers-error); text-decoration: none; }
.cheers-storefront .woocommerce button.button:disabled { opacity: .55; cursor: default; }
.cheers-storefront .woocommerce .button:hover,.cheers-storefront .woocommerce button.single_add_to_cart_button:hover,.cheers-storefront .woocommerce-message .button:hover,.cheers-storefront .woocommerce-info .button:hover,.cheers-storefront .woocommerce-error .button:hover { background: var(--cheers-button-hover) !important; }
.cheers-storefront .woocommerce table.shop_table { width: 100%; margin: 0 0 24px; border: 1px solid var(--cheers-border); border-collapse: separate; border-spacing: 0; overflow: hidden; font-size: 14px; line-height: 1.55; }
.cheers-storefront .woocommerce table.shop_table th,.cheers-storefront .woocommerce table.shop_table td { padding: 17px 18px; border: 0; border-top: 1px solid var(--cheers-border); vertical-align: middle; }
.cheers-storefront .woocommerce table.shop_table thead th { border-top: 0; background: var(--cheers-soft); color: var(--cheers-muted); font-size: 12px; font-weight: 600; letter-spacing: .01em; }
.cheers-storefront .woocommerce table.shop_table tbody tr:first-child td { border-top: 0; }
.cheers-storefront .woocommerce table.shop_table a { text-underline-offset: 4px; }
.cheers-storefront .woocommerce table.shop_table .woocommerce-Price-amount { white-space: nowrap; }
.cheers-storefront .woocommerce-error,.cheers-storefront .woocommerce-info,.cheers-storefront .woocommerce-message { background: var(--cheers-soft); color: var(--cheers-ink); border-top: 0; border-left: 3px solid #64646b; border-radius: 8px; margin-bottom: 24px; padding: 18px 20px 18px 50px; font-size: 14px; line-height: 1.6; }
.cheers-storefront .woocommerce-error { border-left-color: var(--cheers-error); }
.cheers-storefront .woocommerce-error::before { color: var(--cheers-error); }
.cheers-storefront .woocommerce-info::before,.cheers-storefront .woocommerce-message::before { color: #64646b; }
.cheers-storefront .woocommerce-message .button,.cheers-storefront .woocommerce-info .button { margin-left: 16px; }
.cheers-storefront .woocommerce .fs-free-shipping-notice-and-button-wrapper { gap: 16px; align-items: center; }
.cheers-storefront .woocommerce .fs-free-shipping-notice-and-button-wrapper .button { background: var(--cheers-button-bg) !important; color: var(--cheers-button-text) !important; border: 1px solid var(--cheers-button-bg); font-size: 12px; min-height: 44px; padding: 11px 14px !important; }

.cheers-storefront.woocommerce-cart .cheers-page .woocommerce:has(> .woocommerce-cart-form) { display: grid; grid-template-columns: minmax(0,1fr) 380px; gap: 0 36px; align-items: start; }
.cheers-storefront.woocommerce-cart .cheers-page .woocommerce > .woocommerce-notices-wrapper,.cheers-storefront.woocommerce-cart .cheers-page .woocommerce > .woocommerce-message,.cheers-storefront.woocommerce-cart .cheers-page .woocommerce > .woocommerce-info,.cheers-storefront.woocommerce-cart .cheers-page .woocommerce > .woocommerce-error { grid-column: 1 / -1; }
.cheers-storefront.woocommerce-cart .woocommerce-cart-form { min-width: 0; }
.cheers-storefront.woocommerce-cart .cart-collaterals { width: 100%; min-width: 0; display: flex; flex-direction: column; gap: 32px; }
.cheers-storefront.woocommerce-cart .cart-collaterals .cart_totals { float: none; width: 100%; min-width: 0; padding: 26px; border: 1px solid var(--cheers-border); border-radius: 12px; background: #fff; order: 0; }
.cheers-storefront.woocommerce-cart .cart_totals h2,.cheers-storefront.woocommerce-cart .cross-sells h2 { font-size: 24px; margin: 0 0 24px; letter-spacing: -.025em; }
.cheers-storefront.woocommerce-cart .cart_totals table.shop_table { margin: 0; border: 0; border-radius: 0; overflow: visible; }
.cheers-storefront.woocommerce-cart .cart_totals table.shop_table th,.cheers-storefront.woocommerce-cart .cart_totals table.shop_table td { padding: 16px 0; background: #fff; }
.cheers-storefront.woocommerce-cart .cart_totals table.shop_table th { width: 36%; font-weight: 500; font-size: 13px; }
.cheers-storefront.woocommerce-cart .cart_totals table.shop_table td { padding-left: 16px; }
.cheers-storefront.woocommerce-cart .cart_totals .order-total th,.cheers-storefront.woocommerce-cart .cart_totals .order-total td { font-size: 19px; font-weight: 650; }
.cheers-storefront.woocommerce-cart table.cart .product-thumbnail { width: 86px; }
.cheers-storefront.woocommerce-cart table.cart .product-thumbnail img { display: block; width: 64px; height: 76px; object-fit: contain; }
.cheers-storefront.woocommerce-cart table.cart .product-name a { font-weight: 600; text-decoration: none; }
.cheers-storefront.woocommerce-cart table.cart .product-name dl.variation { color: var(--cheers-muted); font-size: 12px; }
.cheers-storefront.woocommerce-cart table.cart .product-remove { width: 44px; padding-inline: 10px; }
.cheers-storefront.woocommerce-cart table.cart a.remove { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 44px; border-radius: 6px; color: var(--cheers-muted) !important; font-size: 25px; font-weight: 400; }
.cheers-storefront.woocommerce-cart table.cart a.remove:hover { color: var(--cheers-cta-ink) !important; background: var(--cheers-soft); }
.cheers-storefront.woocommerce-cart table.cart td.actions { padding: 20px; background: #fff; }
.cheers-storefront.woocommerce-cart table.cart .coupon { display: flex; align-items: stretch; gap: 10px; float: none; margin-bottom: 14px; }
.cheers-storefront.woocommerce-cart table.cart .coupon .input-text { width: min(210px,50%); min-height: 48px; margin: 0; padding: 11px 14px; border: 1px solid #a9a9b0; border-radius: 6px; font-size: 16px; color: var(--cheers-ink); }
.cheers-storefront.woocommerce-cart table.cart td.actions > .button { float: none; width: 100%; }
.cheers-storefront.woocommerce-cart table.cart .coupon .button { flex: 1; }
.cheers-storefront.woocommerce-cart .wc-proceed-to-checkout { padding: 16px 0 0; }
.cheers-storefront.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { display: block; width: 100%; margin: 0; font-size: 15px; text-align: center; }
.cheers-storefront .woocommerce ul#shipping_method { padding: 0; margin: 0; }
.cheers-storefront .woocommerce ul#shipping_method li { padding: 6px 0; margin: 0; line-height: 1.55; }
.cheers-storefront .woocommerce ul#shipping_method input { vertical-align: middle; margin-right: 6px; }
.cheers-storefront .woocommerce ul#shipping_method label { color: var(--cheers-ink); font-size: 13px; }
.cheers-storefront .woocommerce-shipping-destination { font-size: 12px; color: var(--cheers-muted); margin-bottom: 10px; }
.cheers-storefront .shipping-calculator-button { font-size: 13px; }
.cheers-storefront .cheers-cart-shipping-notice { margin: 0 0 20px; padding: 16px; background: var(--cheers-soft); border: 1px solid var(--cheers-border); border-radius: 8px; font-size: 13px; line-height: 1.6; }
.cheers-storefront .cheers-cart-shipping-notice .fs-free-shipping-notice-and-button-wrapper { display: block; }
.cheers-storefront .cheers-cart-shipping-notice .fs-free-shipping-notice-continue-shopping-button-wrapper { margin-top: 12px; }
.cheers-storefront.woocommerce-cart .cross-sells { float: none; width: 100%; order: 1; }
.cheers-storefront.woocommerce-cart .cross-sells ul.products { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.cheers-storefront.woocommerce-cart .cross-sells ul.products::before,.cheers-storefront.woocommerce-cart .cross-sells ul.products::after { display: none; }
.cheers-storefront.woocommerce-cart .cross-sells ul.products li.product { float: none; width: auto; margin: 0; min-width: 0; }
.cheers-storefront.woocommerce-cart .cross-sells ul.products li.product img { height: 150px; object-fit: contain; }
.cheers-storefront.woocommerce-cart .cross-sells .woocommerce-loop-product__title { font-size: 16px; letter-spacing: -.015em; line-height: 1.35; }
.cheers-storefront.woocommerce-cart .cross-sells .price { color: var(--cheers-ink); }
.cheers-storefront.woocommerce-cart .cross-sells .button { font-size: 12px; padding: 11px 14px !important; }

.cheers-storefront.woocommerce-account .cheers-page .woocommerce:has(> .woocommerce-MyAccount-navigation) { display: grid; grid-template-columns: 230px minmax(0,1fr); gap: 48px; }
.cheers-storefront.woocommerce-account .woocommerce-MyAccount-navigation,.cheers-storefront.woocommerce-account .woocommerce-MyAccount-content { float: none; width: 100%; min-width: 0; }
.cheers-storefront.woocommerce-account .woocommerce-MyAccount-navigation ul { overflow: hidden; }
.cheers-storefront.woocommerce-account .woocommerce-MyAccount-navigation li:last-child a { border-bottom: 0; }
.cheers-storefront.woocommerce-account .woocommerce-MyAccount-navigation a { min-height: 48px; font-size: 14px; }
.cheers-storefront.woocommerce-account .woocommerce-MyAccount-navigation a:hover { background: var(--cheers-soft); }
.cheers-storefront.woocommerce-account .woocommerce-MyAccount-content p:first-child { margin-top: 0; }
.cheers-storefront.woocommerce-account .woocommerce-MyAccount-content a:not(.button) { text-underline-offset: 4px; }
.cheers-storefront.woocommerce-account .woocommerce h2 { font-size: 29px; margin: 0 0 24px; }
.cheers-storefront.woocommerce-account #customer_login { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 52px; }
.cheers-storefront.woocommerce-account #customer_login::before,.cheers-storefront.woocommerce-account #customer_login::after,.cheers-storefront.woocommerce-account .woocommerce-Addresses::before,.cheers-storefront.woocommerce-account .woocommerce-Addresses::after,.cheers-storefront.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns::before,.cheers-storefront.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns::after { display: none; }
.cheers-storefront.woocommerce-account #customer_login .col-1,.cheers-storefront.woocommerce-account #customer_login .col-2 { width: 100%; float: none; min-width: 0; }
.cheers-storefront.woocommerce-account .woocommerce form.login,.cheers-storefront.woocommerce-account .woocommerce form.register { border: 1px solid var(--cheers-border); border-radius: 12px; padding: 28px; margin: 0; background: #fff; }
.cheers-storefront.woocommerce-account .woocommerce-form-login__rememberme { padding: 10px 0; margin-right: 18px; font-size: 13px; }
.cheers-storefront.woocommerce-account .woocommerce-LostPassword { font-size: 13px; margin: 20px 0 0; }
.cheers-storefront.woocommerce-account .woocommerce-ResetPassword { width: min(640px,100%); margin: 0; padding: 28px; border: 1px solid var(--cheers-border); border-radius: 12px; }
.cheers-storefront.woocommerce-account .woocommerce-ResetPassword .form-row-first { float: none; width: 100%; }
.cheers-storefront.woocommerce-account .woocommerce-EditAccountForm { max-width: 760px; }
.cheers-storefront.woocommerce-account .woocommerce-EditAccountForm fieldset { border: 1px solid var(--cheers-border); border-radius: 8px; margin: 26px 0; padding: 24px; }
.cheers-storefront.woocommerce-account .woocommerce-EditAccountForm legend { padding-inline: 8px; font-size: 17px; font-weight: 600; }
.cheers-storefront.woocommerce-account .woocommerce-Addresses { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.cheers-storefront.woocommerce-account .woocommerce-Addresses .woocommerce-Address { float: none; width: 100%; border: 1px solid var(--cheers-border); border-radius: 12px; padding: 24px; }
.cheers-storefront.woocommerce-account .woocommerce-Address-title { display: flex; align-items: start; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.cheers-storefront.woocommerce-account .woocommerce-Address-title h2 { font-size: 20px; margin: 0; float: none; }
.cheers-storefront.woocommerce-account .woocommerce-Address-title .edit { font-size: 13px; float: none; }
.cheers-storefront.woocommerce-account address { font-style: normal; color: var(--cheers-muted); font-size: 14px; }
.cheers-storefront.woocommerce-account .woocommerce-orders-table .button { min-height: 44px; font-size: 12px; padding: 10px 14px !important; }

.cheers-storefront.woocommerce-order-received .woocommerce-order { width: min(920px,100%); margin: 0 auto; }
.cheers-storefront.woocommerce-order-received .woocommerce-thankyou-order-received { font-size: 20px; margin-bottom: 28px; }
.cheers-storefront.woocommerce-order-received ul.order_details { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; margin: 0 0 40px; padding: 24px; background: var(--cheers-soft); border-radius: 12px; }
.cheers-storefront.woocommerce-order-received ul.order_details::before,.cheers-storefront.woocommerce-order-received ul.order_details::after { display: none; }
.cheers-storefront.woocommerce-order-received ul.order_details li { float: none; border: 0; margin: 0; padding: 0; font-size: 11px; line-height: 1.6; color: var(--cheers-muted); overflow-wrap: anywhere; }
.cheers-storefront.woocommerce-order-received ul.order_details li strong { display: block; margin-top: 6px; font-size: 14px; color: var(--cheers-ink); }
.cheers-storefront.woocommerce-order-received .woocommerce-order-details__title,.cheers-storefront.woocommerce-order-received .woocommerce-column__title { font-size: 25px; margin: 0 0 24px; }
.cheers-storefront.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.cheers-storefront.woocommerce-order-received .woocommerce-customer-details .woocommerce-column { float: none; width: 100%; min-width: 0; }
.cheers-storefront.woocommerce-order-received .woocommerce-customer-details address { padding: 24px; border: 1px solid var(--cheers-border); border-radius: 10px; font-size: 14px; line-height: 1.7; }

@media (max-width: 1100px) {
  .cheers-storefront.woocommerce-cart .cheers-page .woocommerce:has(> .woocommerce-cart-form) { grid-template-columns: minmax(0,1fr) 330px; gap: 0 24px; }
  .cheers-storefront.woocommerce-cart .cart-collaterals .cart_totals { padding: 20px; }
  .cheers-storefront.woocommerce-cart table.cart .product-thumbnail { width: 62px; padding-inline: 8px; }
  .cheers-storefront.woocommerce-cart table.cart .product-thumbnail img { width: 46px; height: 62px; }
  .cheers-storefront .woocommerce table.shop_table th,.cheers-storefront .woocommerce table.shop_table td { padding-inline: 12px; }
}
@media (max-width: 899px) {
  .cheers-storefront.woocommerce-cart .cheers-page .woocommerce:has(> .woocommerce-cart-form) { grid-template-columns: 1fr; gap: 20px; }
  .cheers-storefront.woocommerce-account .cheers-page .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: 190px minmax(0,1fr); gap: 28px; }
  .cheers-storefront.woocommerce-account #customer_login { gap: 24px; }
}
@media (max-width: 768px) {
  .cheers-storefront .woocommerce table.shop_table_responsive tr td { min-height: 50px; padding: 14px 16px; background: #fff; }
  .cheers-storefront .woocommerce table.shop_table_responsive tr:nth-child(2n) td { background: #fff; }
  .cheers-storefront .woocommerce table.shop_table_responsive tr td::before { color: var(--cheers-muted); font-size: 13px; font-weight: 500; margin-right: 14px; }
  .cheers-storefront.woocommerce-cart table.cart tr.cart_item { position: relative; }
  .cheers-storefront.woocommerce-cart table.cart td.product-remove { width: 100%; padding: 8px 12px; min-height: 44px; text-align: right !important; }
  .cheers-storefront.woocommerce-cart table.cart td.product-remove a { margin-left: auto; }
  .cheers-storefront.woocommerce-cart table.cart td.product-thumbnail { display: block; width: 100%; padding: 10px 16px; text-align: center !important; }
  .cheers-storefront.woocommerce-cart table.cart td.product-thumbnail::before { display: none; }
  .cheers-storefront.woocommerce-cart table.cart td.product-thumbnail img { width: 92px; height: 110px; margin: auto; }
  .cheers-storefront.woocommerce-cart table.cart td.product-name { font-size: 16px; }
  .cheers-storefront.woocommerce-cart table.cart .coupon { width: 100%; }
  .cheers-storefront.woocommerce-cart table.cart .coupon .input-text,.cheers-storefront.woocommerce-cart table.cart .coupon .button { float: none; width: calc(50% - 5px); margin: 0; }
  .cheers-storefront.woocommerce-cart .cart_totals table.shop_table_responsive tr td { padding: 14px 0; }
  .cheers-storefront.woocommerce-cart .cart_totals table.shop_table_responsive tr.shipping td::before { float: none; display: block; text-align: left; margin-bottom: 10px; }
  .cheers-storefront.woocommerce-cart .cart_totals ul#shipping_method { text-align: left; }
  .cheers-storefront.woocommerce-cart .cart_totals .woocommerce-shipping-destination,.cheers-storefront.woocommerce-cart .cart_totals .woocommerce-shipping-calculator { text-align: left; }
  .cheers-storefront.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a { margin-bottom: 6px; }
  .cheers-storefront.woocommerce-order-received ul.order_details { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .cheers-storefront .woocommerce-message .button,.cheers-storefront .woocommerce-info .button { float: none; display: block; width: fit-content; margin: 0 0 12px; }
  .cheers-storefront.woocommerce-account .cheers-page .woocommerce:has(> .woocommerce-MyAccount-navigation),.cheers-storefront.woocommerce-account #customer_login,.cheers-storefront.woocommerce-account .woocommerce-Addresses,.cheers-storefront.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns { grid-template-columns: 1fr; gap: 28px; }
  .cheers-storefront.woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; overflow-x: auto; scrollbar-width: thin; border-radius: 8px; }
  .cheers-storefront.woocommerce-account .woocommerce-MyAccount-navigation li { flex: 0 0 auto; }
  .cheers-storefront.woocommerce-account .woocommerce-MyAccount-navigation a { padding: 13px 16px; border-bottom: 0; white-space: nowrap; }
  .cheers-storefront.woocommerce-account .woocommerce form.login,.cheers-storefront.woocommerce-account .woocommerce form.register,.cheers-storefront.woocommerce-account .woocommerce-ResetPassword { padding: 22px; }
  .cheers-storefront.woocommerce-account .woocommerce-EditAccountForm .form-row-first,.cheers-storefront.woocommerce-account .woocommerce-EditAccountForm .form-row-last { width: 100%; float: none; }
  .cheers-storefront.woocommerce-account .woocommerce-EditAccountForm fieldset { padding: 20px; }
  .cheers-storefront.woocommerce-order-received ul.order_details { gap: 18px; padding: 20px; }
}

/* Existing editorial content uses the same white, readable storefront. */
.cheers-content-page { color: var(--cheers-ink); }
.cheers-content-page h2 { margin: 0 0 24px; font-size: clamp(24px,3vw,36px); letter-spacing: -.03em; }
.cheers-content-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; }
.cheers-content-card { min-width: 0; padding: 24px; border: 1px solid var(--cheers-border); border-radius: 12px; background: #fff; }
.cheers-content-card h2,.cheers-content-card h3 { margin: 18px 0 12px; font-size: 22px; line-height: 1.35; letter-spacing: -.025em; }
.cheers-content-card h2 a,.cheers-content-card h3 a { color: inherit; text-decoration: none; }
.cheers-content-card p { color: var(--cheers-muted); font-size: 15px; line-height: 1.75; }
.cheers-content-image { display: block; width: 100%; height: 220px; object-fit: cover; border-radius: 8px; }
.cheers-report-card .cheers-content-image { height: 190px; object-fit: contain; }
.cheers-content-image-link { display: block; margin-bottom: 20px; }
.cheers-content-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 14px; font-weight: 600; text-underline-offset: 4px; }
.cheers-content-date { font-size: 12px; color: var(--cheers-muted); }
.cheers-content-accordion { max-width: 900px; margin-inline: auto; }
.cheers-content-accordion details { border-bottom: 1px solid var(--cheers-border); }
.cheers-content-accordion summary { position: relative; padding: 24px 38px 24px 0; list-style: none; cursor: pointer; font-size: 19px; font-weight: 600; line-height: 1.45; }
.cheers-content-accordion summary::-webkit-details-marker { display: none; }
.cheers-content-accordion summary::after { content: '+'; position: absolute; right: 2px; top: 22px; font-size: 24px; font-weight: 400; }
.cheers-content-accordion details[open] > summary::after { content: '−'; }
.cheers-content-answer { padding: 0 38px 24px 0; font-size: 16px; line-height: 1.8; overflow-wrap: anywhere; }
.cheers-content-answer > :first-child { margin-top: 0; }
.cheers-content-answer img { max-width: 100%; height: auto; }
.cheers-content-reports { margin-top: 80px; }
.cheers-content-pagination ul,.cheers-content-archive .page-numbers { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; padding: 0; margin: 40px 0 0; list-style: none; }
.cheers-content-pagination .page-numbers,.cheers-content-archive a.page-numbers,.cheers-content-archive span.page-numbers { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 8px 12px; margin: 0; border-radius: 6px; border: 1px solid var(--cheers-border); text-decoration: none; font-size: 14px; }
.cheers-content-pagination .current,.cheers-content-archive .current { color: #fff; background: var(--cheers-ink); }
.cheers-review-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.cheers-review-card { margin: 0; padding: 28px; border: 1px solid var(--cheers-border); border-radius: 12px; background: #fff; }
.cheers-review-card h3 { font-size: 20px; }
.cheers-review-card blockquote { margin: 18px 0; padding: 0; border: 0; font-size: 16px; line-height: 1.8; }
.cheers-review-author { font-size: 13px; color: var(--cheers-muted); }
.cheers-contact-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 80px; }
.cheers-contact-details address { font-style: normal; line-height: 1.8; }
.cheers-contact-details p,.cheers-contact-form p { line-height: 1.8; }
.cheers-contact-details a { text-underline-offset: 4px; }
.cheers-contact-details span,.cheers-contact-registry { color: var(--cheers-muted); font-size: 14px; }
.cheers-contact-company { display: grid; grid-template-columns: auto 1fr; gap: 6px 18px; font-size: 14px; margin: 30px 0; }
.cheers-contact-company dd { margin: 0; }
.cheers-contact-form input:not([type=checkbox]):not([type=submit]),.cheers-contact-form textarea { width: 100%; margin-top: 8px; min-height: 48px; border: 1px solid #a9a9b0; border-radius: 6px; padding: 12px 14px; background: #fff; font: inherit; color: var(--cheers-ink); }
.cheers-contact-form textarea { min-height: 160px; }
.cheers-contact-form input[type=submit] { min-height: 48px; border-radius: 6px; padding: 12px 24px; color: var(--cheers-button-text); background: var(--cheers-button-bg); border: 1px solid var(--cheers-button-bg); font: inherit; cursor: pointer; }
.cheers-contact-form input[type=submit]:hover { background: var(--cheers-button-hover); border-color: var(--cheers-button-hover); }
.cheers-storefront .wcf-embed-checkout-form .woocommerce #payment button#place_order,.cheers-storefront .wcf-embed-checkout-form .woocommerce button.wcf-btn-small { background: var(--cheers-button-bg) !important; border-color: var(--cheers-button-bg) !important; color: var(--cheers-button-text) !important; }
.cheers-storefront .wcf-embed-checkout-form .woocommerce #payment button#place_order:hover,.cheers-storefront .wcf-embed-checkout-form .woocommerce button.wcf-btn-small:hover { background: var(--cheers-button-hover) !important; border-color: var(--cheers-button-hover) !important; }
.cheers-award-article { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 64px; align-items: start; padding: 48px 0; border-bottom: 1px solid var(--cheers-border); }
.cheers-award-article:first-child { padding-top: 0; }
.cheers-award-article p { font-size: 16px; line-height: 1.8; color: var(--cheers-muted); }
.cheers-award-badge { display: block; max-width: 160px; height: auto; margin-bottom: 24px; }
.cheers-award-image { display: block; width: 100%; height: auto; border-radius: 12px; }
@media (max-width: 899px) {
  .cheers-content-grid,.cheers-review-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .cheers-contact-grid,.cheers-award-article { gap: 32px; }
}
@media (max-width: 620px) {
  .cheers-content-grid,.cheers-review-list,.cheers-contact-grid,.cheers-award-article { grid-template-columns: 1fr; }
  .cheers-content-card,.cheers-review-card { padding: 20px; }
  .cheers-content-accordion summary { font-size: 17px; padding-block: 20px; }
  .cheers-content-answer { padding-right: 0; font-size: 15px; }
  .cheers-content-reports { margin-top: 52px; }
  .cheers-award-article { padding-block: 32px; }
}

/* CartFlows thank-you widget keeps the same white cards and readable totals. */
.cheers-storefront .wcf-thankyou-wrap { color: var(--cheers-ink); font: inherit; }
.cheers-storefront .wcf-thankyou-wrap .woocommerce-thankyou-order-received { font-size: 20px; line-height: 1.55; margin-bottom: 28px; }
.cheers-storefront .wcf-thankyou-wrap ul.order_details { display: grid !important; grid-template-columns: repeat(auto-fit,minmax(150px,1fr)); gap: 24px; padding: 24px; margin: 0 0 36px; background: #fff; border: 1px solid var(--cheers-border); border-radius: 12px; }
.cheers-storefront .wcf-thankyou-wrap ul.order_details::before,.cheers-storefront .wcf-thankyou-wrap ul.order_details::after { display: none; }
.cheers-storefront .wcf-thankyou-wrap ul.order_details li { float: none; padding: 0; margin: 0; border: 0; font-size: 12px; color: var(--cheers-muted); line-height: 1.6; overflow-wrap: anywhere; }
.cheers-storefront .wcf-thankyou-wrap ul.order_details li strong { font-size: 15px; color: var(--cheers-ink); margin-top: 6px; }
.cheers-storefront .wcf-thankyou-wrap .woocommerce-order-details,.cheers-storefront .wcf-thankyou-wrap .woocommerce-customer-details { padding: 28px; background: #fff; border: 1px solid var(--cheers-border); border-radius: 12px; margin-bottom: 28px; }
.cheers-storefront .wcf-thankyou-wrap table.shop_table { border-collapse: collapse; background: #fff; }
.cheers-storefront .wcf-thankyou-wrap table.shop_table th,.cheers-storefront .wcf-thankyou-wrap table.shop_table td { background: #fff; padding: 14px 12px; border-bottom: 1px solid var(--cheers-border); line-height: 1.6; font-size: 14px; }
.cheers-storefront .wcf-thankyou-wrap .woocommerce-customer-details .woocommerce-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.cheers-storefront .wcf-thankyou-wrap .woocommerce-columns::before,.cheers-storefront .wcf-thankyou-wrap .woocommerce-columns::after { display: none; }
.cheers-storefront .wcf-thankyou-wrap .woocommerce-column { float: none; width: 100%; min-width: 0; }
.cheers-storefront .wcf-thankyou-wrap address { font-style: normal; padding: 20px; font-size: 14px; line-height: 1.8; border: 1px solid var(--cheers-border); border-radius: 8px; overflow-wrap: anywhere; }
@media (max-width: 620px) {
  .cheers-storefront .wcf-thankyou-wrap ul.order_details { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; padding: 20px; }
  .cheers-storefront .wcf-thankyou-wrap .woocommerce-order-details,.cheers-storefront .wcf-thankyou-wrap .woocommerce-customer-details { padding: 18px; }
  .cheers-storefront .wcf-thankyou-wrap .woocommerce-customer-details .woocommerce-columns { grid-template-columns: 1fr; }
}

/* Local product concepts stay compact and distinct from the original Woo gallery. */
.cheers-product-visual { width: 100%; max-width: 540px; margin: 0 auto 24px; padding: 0; background: #fff; }
.cheers-product-visual img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; background: #fff; }
.cheers-product-visual figcaption { margin-top: 8px; color: var(--cheers-muted); font-size: 12px; line-height: 1.5; text-align: center; }

/* New local editorial drafts supplement the preserved ingredient tables. */
.cheers-card-summary { margin: 0 0 16px; color: var(--cheers-muted); font-size: 13px; line-height: 1.6; }
.cheers-product-intro { display: grid; grid-template-columns: 1.1fr 1fr; gap: 32px; align-items: center; }
.cheers-product-intro-copy,.cheers-product-intro .cheers-product-visual { min-width: 0; }
.cheers-product-intro h2 { margin-top: 0; font-size: clamp(27px, 2.7vw, 36px); line-height: 1.16; }
.cheers-product-intro p { color: var(--cheers-muted); font-size: 16px; line-height: 1.75; }
.cheers-product-intro .cheers-eyebrow { color: var(--cheers-ink); font-size: 11px; line-height: 1.5; }
.cheers-product-intro .cheers-product-visual { margin: 0; }
.cheers-source-faq > details > summary { padding: 18px 0; font-size: 14px; color: var(--cheers-muted); cursor: pointer; }
.cheers-composition th p,.cheers-composition td p { margin: 0; }
.cheers-details-content { min-width: 0; }
@media (max-width: 1100px) {
  .cheers-product-intro { grid-template-columns: 1fr; gap: 20px; }
  .cheers-product-intro .cheers-product-visual { margin-inline: auto; }
}
@media (max-width: 620px) {
  .cheers-card-summary { font-size: 12px; line-height: 1.5; }
  .cheers-details-nav { flex-wrap: nowrap; overflow-x: auto; gap: 10px; padding: 4px 4px 16px; }
  .cheers-details-nav a { flex: 0 0 auto; padding: 10px 12px; border: 1px solid var(--cheers-border); border-radius: 6px; font-size: 12px; }
  .cheers-product-section { padding-bottom: 32px; margin-bottom: 32px; }
  .cheers-product-intro h2 { font-size: 29px; }
}
