/* SEINE BIO public palette. Load after the route, release and card styles.
 * Owned marketing surfaces and verified native shop/product wrappers only.
 * Catalog duplicate-brand visibility is scoped below; billing, clinical state
 * and staff-workspace behavior are unchanged. */
body.sb-design-refresh-page,
body.single-product,
body.woocommerce-shop {
  --sb-brand-navy: #183449;
  --sb-brand-hover: #244a66;
  --sb-brand-blue: #4f6b80;
  --sb-brand-muted: #536879;
  --sb-brand-soft: #e7eff4;
  --sb-brand-cream: #f7f5ee;
  --sb-brand-paper: #fffef9;
}

body.sb-design-refresh-page {
  --ink: var(--sb-brand-navy);
  --teal: var(--sb-brand-blue);
  --muted: var(--sb-brand-muted);
  --cream: var(--sb-brand-cream);
  --paper: var(--sb-brand-paper);
  color: var(--sb-brand-navy);
  background-color: var(--sb-brand-cream);
}

body.sb-design-refresh-page #sb-design-refresh .brand {
  color: var(--sb-brand-navy);
}

body.sb-design-refresh-page #sb-design-refresh :is(.promo, .suite-promo),
body.sb-design-refresh-page #sb-design-refresh :is(.promo, .suite-promo) button {
  background-color: var(--sb-brand-navy);
  color: var(--sb-brand-paper);
}

body.sb-design-refresh-page #sb-design-refresh .btn:not(.outline):not(.light),
body.sb-design-refresh-page #sb-design-refresh #therapy .therapy-choice-actions > .btn:not(.outline) {
  color: var(--sb-brand-paper);
  background-color: var(--sb-brand-navy);
  border-color: var(--sb-brand-navy);
}

body.sb-design-refresh-page #sb-design-refresh .btn:not(.outline):not(.light):hover,
body.sb-design-refresh-page #sb-design-refresh #therapy .therapy-choice-actions > .btn:not(.outline):hover {
  background-color: var(--sb-brand-hover);
  border-color: var(--sb-brand-hover);
}

body.sb-design-refresh-page #sb-design-refresh .btn.outline {
  color: var(--sb-brand-blue);
  border-color: var(--sb-brand-blue);
  background-color: transparent;
}

body.sb-design-refresh-page #sb-design-refresh .btn.outline:hover {
  color: var(--sb-brand-navy);
  background-color: var(--sb-brand-soft);
}

/* Keep inverse actions legible on their existing dark feature panels. */
body.sb-design-refresh-page #sb-design-refresh .btn.light,
body.sb-design-refresh-page #sb-design-refresh .directory-feature .btn:not(.outline):not(.light) {
  color: var(--sb-brand-navy);
  background-color: var(--sb-brand-paper);
  border-color: var(--sb-brand-paper);
}

body.sb-design-refresh-page #sb-design-refresh .btn.light:hover,
body.sb-design-refresh-page #sb-design-refresh .directory-feature .btn:not(.outline):not(.light):hover {
  background-color: var(--sb-brand-soft);
  border-color: var(--sb-brand-soft);
}

/* Selected editorial/support panels; existing sage accents remain elsewhere. */
body.sb-design-refresh-page #sb-design-refresh :is(.therapy-feature, .wellness-feature, .final-call, .mt-care-strip, .mt-calc-input, .mt-last-call) {
  background-color: var(--sb-brand-soft);
}

/* Preserve ring geometry; navy keeps focus contrast on the new blue panels. */
body.sb-design-refresh-page #sb-design-refresh :is(.therapy-feature, .wellness-feature, .final-call, .mt-care-strip, .mt-calc-input, .mt-last-call) :focus-visible {
  outline-color: var(--sb-brand-navy);
}

body.sb-design-refresh-page #sb-design-refresh :is(.mt-plan, .mt-table-wrap, .mt-calculator) {
  background-color: var(--sb-brand-paper);
}

body.sb-design-refresh-page #sb-design-refresh .mt-premier {
  border-color: var(--sb-brand-blue);
}

body.sb-design-refresh-page #sb-design-refresh :is(.mt-premier-label, .mt-coaching),
body.sb-design-refresh-page #sb-design-refresh .mt-view-switch button[aria-selected="true"] {
  color: var(--sb-brand-paper);
  background-color: var(--sb-brand-navy);
}

body.sb-design-refresh-page #sb-design-refresh .mt-comparison thead th,
body.sb-design-refresh-page #sb-design-refresh .mt-comparison thead th:nth-child(3) {
  background-color: var(--sb-brand-soft);
}

body.sb-design-refresh-page #sb-design-refresh :is(.mt-hero .eyebrow, .mt-care-icon) {
  color: var(--sb-brand-blue);
}

body.sb-design-refresh-page #sb-design-refresh :is(.mt-lead, .mt-optional, .mt-plan-intro, .mt-price > span:last-child, .mt-renew, .mt-benefits p, .mt-plan-bottom, .mt-questions p, .mt-care-strip p) {
  color: var(--sb-brand-muted);
}

body.sb-design-refresh-page #sb-design-refresh .mt-plan-bottom strong {
  color: var(--sb-brand-navy);
}

body.sb-design-refresh-page #sb-design-refresh .mt-calc-input input[type="range"] {
  accent-color: var(--sb-brand-blue);
}

/* Native WooCommerce storefront only; never account, cart or payment surfaces.
 * Header logos are raster uploads and intentionally receive no image filters. */
body:is(.single-product, .woocommerce-shop) {
  background-color: var(--sb-brand-cream);
}

body:is(.single-product, .woocommerce-shop) .sb-optional-nav,
body:is(.single-product, .woocommerce-shop) .sb-optional-nav .sb-opt-panel {
  color: var(--sb-brand-navy);
  background-color: var(--sb-brand-paper);
}

body:is(.single-product, .woocommerce-shop) .sb-optional-nav a,
body:is(.single-product, .woocommerce-shop) .sb-optional-nav .sb-opt-dropdown > summary {
  color: var(--sb-brand-navy);
}

body:is(.single-product, .woocommerce-shop) .sb-optional-nav a:hover,
body:is(.single-product, .woocommerce-shop) .sb-optional-nav .sb-opt-dropdown[open] > summary {
  color: var(--sb-brand-blue);
}

body:is(.single-product, .woocommerce-shop) .sb-optional-nav .sb-opt-simple a:hover,
body:is(.single-product, .woocommerce-shop) .sb-optional-nav .sb-opt-simple a:focus-visible,
body:is(.single-product, .woocommerce-shop) .sb-optional-nav .sb-opt-offer {
  background-color: var(--sb-brand-soft);
}

body:is(.single-product, .woocommerce-shop) .sb-promo {
  --sb-promo-ink: var(--sb-brand-navy);
  color: var(--sb-brand-paper);
  background-color: var(--sb-brand-navy);
}

/* The legacy navigation declares this CTA !important; match that one rule. */
body:is(.single-product, .woocommerce-shop) .sb-optional-nav .sb-opt-start {
  color: var(--sb-brand-paper) !important;
  background-color: var(--sb-brand-navy) !important;
}

body:is(.single-product, .woocommerce-shop) .sb-optional-nav .sb-opt-start:hover {
  background-color: var(--sb-brand-hover) !important;
}

body:is(.single-product, .woocommerce-shop) #main .sb-public-cta,
body.single-product #main .summary .single_add_to_cart_button,
body.single-product #main .sb-product-guide a.button[href^="#product-"],
body.woocommerce-shop #main ul.products li.product a.button {
  color: var(--sb-brand-paper);
  background-color: var(--sb-brand-navy);
  border-color: var(--sb-brand-navy);
}

body:is(.single-product, .woocommerce-shop) #main .sb-public-cta:hover,
body.single-product #main .summary .single_add_to_cart_button:hover,
body.single-product #main .sb-product-guide a.button[href^="#product-"]:hover,
body.woocommerce-shop #main ul.products li.product a.button:hover {
  color: var(--sb-brand-paper);
  background-color: var(--sb-brand-hover);
  border-color: var(--sb-brand-hover);
}

body.single-product #main > .product,
body.woocommerce-shop #main ul.products li.product {
  background-color: var(--sb-brand-paper);
}

/* Other focus rings, disabled states, semantic badges and native notices
 * retain their rules. Embedded appointments/payment widgets are out of scope. */

/* The main site header already carries the brand on the catalog.
 * Keep this scoped to the shop so My Care and product headers are untouched. */
body.woocommerce-shop .sb-member-shop > .sb-member-header > .sb-member-brand {
  display: none;
}
body.woocommerce-shop .sb-member-shop > .sb-member-header > .sb-member-utilities {
  margin-left: auto;
}
