/*
 * Epachois Step 2 Design System
 * Single source of truth for site visual styles.
 * Loaded via /wp-content/mu-plugins/epachois-step2-design.php
 * Author: Step 2 instruction set, v1.0
 */
/* ========== 1. Tokens ========== */
:root {
  --epa-navy-900: #0B2545;
  --epa-navy-700: #13315C;
  --epa-navy-500: #2A5C9C;
  --epa-navy-100: #E8F0FA;
  --epa-orange-600: #D97706;
  --epa-orange-700: #B45309;
  --epa-orange-100: #FEF3C7;
  --epa-warm-50: #FAF7F2;
  --epa-cream-100: #F5EFE6;
  --epa-text-primary: #0F172A;
  --epa-text-secondary: #475569;
  --epa-text-muted: #94A3B8;
  --epa-border: #E2E8F0;
  --epa-border-strong: #CBD5E1;
  --epa-success: #16A34A;
  --epa-bg: #FFFFFF;
  --epa-shadow-sm: 0 1px 2px rgba(15,23,42,0.04);
  --epa-shadow-md: 0 4px 12px rgba(15,23,42,0.06);
  --epa-shadow-lg: 0 8px 24px rgba(15,23,42,0.08);
  --epa-radius: 12px;
  --epa-radius-sm: 8px;
  --epa-content-w: 1240px;
  --epa-narrow-w: 720px;
}
/* ========== 2. Base typography ========== */
html, body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  font-size: 17px;
  line-height: 1.65;
  color: var(--epa-text-primary);
  background: var(--epa-bg);
}
@media (max-width: 768px) {
  html, body { font-size: 16px; line-height: 1.6; }
}
h1, h2, h3, h4, h5, h6,
.site-main h1, .site-main h2, .site-main h3, .site-main h4 {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 700;
  color: var(--epa-navy-900);
  letter-spacing: -0.01em;
}
h1 { font-size: 48px; line-height: 1.2; margin-bottom: 24px; }
h2 { font-size: 32px; line-height: 1.2; margin-bottom: 20px; }
h3 { font-size: 22px; line-height: 1.3; margin-bottom: 16px; font-weight: 600; }
h4 { font-size: 18px; line-height: 1.4; margin-bottom: 12px; font-weight: 600; }
@media (max-width: 768px) {
  h1 { font-size: 32px; }
  h2 { font-size: 24px; }
  h3 { font-size: 20px; }
}
p { margin-bottom: 16px; color: var(--epa-text-primary); }
a { color: var(--epa-navy-700); text-decoration: none; transition: color 0.15s ease; }
a:hover { color: var(--epa-navy-500); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
::selection { background: var(--epa-navy-100); color: var(--epa-navy-900); }
/* ========== 3. Layout container ========== */
.entry-content,
.site-container,
.container,
.kadence-element-container,
.content-container {
  max-width: var(--epa-content-w);
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
}
.single-post .entry-content,
.page .entry-content,
.about-us .entry-content,
body.page-template-default .entry-content {
  max-width: var(--epa-narrow-w);
}
/* Section vertical rhythm */
.entry-content > .wp-block-group,
.entry-content > section {
  padding-top: 96px;
  padding-bottom: 96px;
}
@media (max-width: 768px) {
  .entry-content > .wp-block-group,
  .entry-content > section {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
/* ========== 4. Header ========== */
.site-header,
.site-header-row,
header.site-header,
#masthead {
  background: var(--epa-bg);
  border-bottom: 1px solid var(--epa-border);
  box-shadow: var(--epa-shadow-sm);
}
/* Top bar */
.site-top-header-wrap,
.kadence-header-row-top {
  background: var(--epa-navy-900);
  color: rgba(255,255,255,0.9);
  font-size: 14px;
  padding: 8px 0;
}
.site-top-header-wrap a,
.kadence-header-row-top a {
  color: rgba(255,255,255,0.85);
  font-weight: 500;
}
.site-top-header-wrap a:hover,
.kadence-header-row-top a:hover {
  color: #fff;
}
/* Main row spacing */
.site-main-header-wrap,
.kadence-header-row-main {
  padding: 16px 0;
}
/* Logo */
.site-branding img,
.custom-logo {
  max-height: 56px !important;
  width: auto;
}
@media (max-width: 768px) {
  .site-branding img, .custom-logo { max-height: 40px !important; }
}
/* Primary nav */
.header-navigation .menu > li > a,
nav.main-navigation a {
  color: var(--epa-navy-900);
  font-weight: 600;
  font-size: 16px;
  padding: 10px 14px;
  letter-spacing: -0.005em;
}
.header-navigation .menu > li > a:hover,
nav.main-navigation a:hover {
  color: var(--epa-orange-600);
  text-decoration: none;
}
.header-navigation .menu > li.current-menu-item > a,
.header-navigation .menu > li.current_page_item > a {
  color: var(--epa-orange-600);
}
/* Cart icon */
.header-cart-wrap a, .kadence-header-cart-icon {
  color: var(--epa-navy-900);
}
/* Mobile menu toggle */
.menu-toggle,
.drawer-toggle {
  color: var(--epa-navy-900);
  background: transparent;
  border: 1px solid var(--epa-border);
  border-radius: 8px;
  padding: 10px;
  min-width: 48px;
  min-height: 48px;
}
/* ========== 5. Buttons ========== */
.button,
.wp-block-button__link,
.wc-block-components-button,
.single_add_to_cart_button,
input[type="submit"],
button[type="submit"],
.kadence-btn,
a.kb-button,
.epa-cta-primary,
.epachois-cta-credit-card,
.epachois-cta-credit-card-cta,
.epa-pay-credit-card {
  background: var(--epa-orange-600) !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: var(--epa-radius-sm) !important;
  padding: 14px 28px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  font-family: 'Inter', sans-serif !important;
  letter-spacing: -0.005em !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  text-decoration: none !important;
  transition: background-color 0.15s ease, transform 0.1s ease;
  box-shadow: var(--epa-shadow-sm);
}
.button:hover,
.wp-block-button__link:hover,
.single_add_to_cart_button:hover,
input[type="submit"]:hover,
button[type="submit"]:hover {
  background: var(--epa-orange-700) !important;
  text-decoration: none !important;
  box-shadow: var(--epa-shadow-md);
}
.button:focus-visible,
.wp-block-button__link:focus-visible,
.single_add_to_cart_button:focus-visible {
  outline: 3px solid rgba(217, 119, 6, 0.3) !important;
  outline-offset: 2px;
}
/* Secondary button (outlined navy) */
.wp-block-button.is-style-outline .wp-block-button__link,
.button.alt,
.button.secondary,
.epa-cta-secondary {
  background: #FFFFFF !important;
  color: var(--epa-navy-700) !important;
  border: 2px solid var(--epa-navy-700) !important;
  padding: 12px 26px !important;
  box-shadow: none;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.button.alt:hover,
.button.secondary:hover {
  background: var(--epa-navy-100) !important;
  color: var(--epa-navy-900) !important;
}
/* Quantity input on product page */
.qty,
.quantity input.input-text {
  border: 1px solid var(--epa-border-strong);
  border-radius: var(--epa-radius-sm);
  padding: 12px 8px;
  width: 64px;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  height: 48px;
}
/* ========== 6. Cards ========== */
.product,
li.product,
.wc-block-grid__product,
.wp-block-group.has-card-style {
  background: var(--epa-bg);
  border: 1px solid var(--epa-border);
  border-radius: var(--epa-radius);
  padding: 16px !important;
  box-shadow: var(--epa-shadow-sm);
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.product:hover,
li.product:hover,
.wc-block-grid__product:hover {
  box-shadow: var(--epa-shadow-lg);
  transform: translateY(-2px);
}
.woocommerce-loop-product__title,
.wc-block-grid__product-title,
li.product h2,
li.product h3 {
  color: var(--epa-navy-900) !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  margin: 12px 0 8px !important;
  min-height: 3em;
}
li.product .price,
.wc-block-grid__product-price {
  font-size: 18px;
  color: var(--epa-text-primary);
  font-weight: 600;
  margin-bottom: 8px;
}
.price del,
.wc-block-grid__product-price del {
  color: var(--epa-text-muted);
  font-weight: 500;
  text-decoration: line-through;
  margin-right: 8px;
  font-size: 0.9em;
}
.price ins,
.wc-block-grid__product-price ins {
  background: transparent;
  color: var(--epa-orange-700);
  font-weight: 700;
  font-size: 1em;
  text-decoration: none;
}
/* Sale badge restyle */
.onsale,
.wc-block-grid__product-onsale {
  background: var(--epa-orange-100) !important;
  color: var(--epa-orange-700) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 4px 10px !important;
  border-radius: 4px !important;
  border: none !important;
  min-height: auto !important;
  min-width: auto !important;
  line-height: 1 !important;
  top: 12px !important;
  left: 12px !important;
  right: auto !important;
  position: absolute;
}
/* Add-to-cart button on product cards (smaller variant) */
li.product .button.add_to_cart_button,
li.product a.button {
  background: var(--epa-orange-600) !important;
  color: #fff !important;
  padding: 10px 20px !important;
  font-size: 14px !important;
  margin-top: 8px;
  min-height: 40px !important;
}
/* ========== 7. Hero / homepage ========== */
.home .entry-content > .wp-block-cover:first-of-type,
.home .epa-hero,
.home .entry-content > .wp-block-group:first-of-type {
  background: var(--epa-cream-100);
  padding: 80px 24px;
  border-radius: 0;
}
.home h1,
.home .epa-hero-title {
  font-size: 56px;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--epa-navy-900);
  margin-bottom: 16px;
}
@media (max-width: 768px) {
  .home h1 { font-size: 36px; }
  .home .entry-content > .wp-block-group:first-of-type { padding: 48px 16px; }
}
.home .epa-hero-subtitle,
.home .entry-content > .wp-block-group:first-of-type p:first-of-type {
  font-size: 20px;
  color: var(--epa-text-secondary);
  max-width: 600px;
  line-height: 1.55;
  margin-bottom: 32px;
}
/* Hero image — frame it */
.home .wp-block-image:first-of-type img,
.home .epa-hero-image img {
  background: var(--epa-bg);
  border: 1px solid var(--epa-border);
  border-radius: var(--epa-radius);
  padding: 24px;
  box-shadow: var(--epa-shadow-md);
  max-width: 100%;
  height: auto;
}
/* "Shop by Care Need" section */
.home .epa-care-need-grid,
.home .wp-block-group:has(> .wp-block-heading + .wp-block-columns) .wp-block-column {
  background: var(--epa-bg);
  border: 1px solid var(--epa-border);
  border-radius: var(--epa-radius);
  padding: 28px !important;
  text-align: left;
  box-shadow: var(--epa-shadow-sm);
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.home .wp-block-group:has(> .wp-block-heading + .wp-block-columns) .wp-block-column:hover {
  box-shadow: var(--epa-shadow-lg);
  transform: translateY(-2px);
}
/* "How Delivery Works" numbered steps */
.home ol.has-background,
.home .epa-delivery-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  list-style: none;
  padding: 0;
}
@media (max-width: 768px) {
  .home ol.has-background,
  .home .epa-delivery-steps { grid-template-columns: 1fr; }
}
/* "Why Choose Epachois" trust row */
.home .epa-trust-row,
.home .epa-why-choose .wp-block-columns {
  background: var(--epa-warm-50);
  padding: 48px 24px;
  border-radius: var(--epa-radius);
}
/* ========== 8. Single product page ========== */
.single-product div.product {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 48px;
  align-items: start;
}
@media (max-width: 900px) {
  .single-product div.product {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.single-product .woocommerce-product-gallery {
  background: var(--epa-bg);
  border: 1px solid var(--epa-border);
  border-radius: var(--epa-radius);
  padding: 24px;
  width: 100% !important;
  float: none !important;
}
.single-product .product_title.entry-title {
  font-size: 36px;
  line-height: 1.2;
  color: var(--epa-navy-900);
  margin-bottom: 16px;
  font-weight: 700;
}
.single-product .price {
  font-size: 32px;
  font-weight: 700;
  color: var(--epa-orange-700);
  margin-bottom: 16px;
}
.single-product .price del {
  color: var(--epa-text-muted);
  font-size: 0.7em;
  font-weight: 500;
  margin-right: 12px;
}
.single-product .woocommerce-product-details__short-description ul {
  padding-left: 0;
  list-style: none;
  margin: 24px 0;
}
.single-product .woocommerce-product-details__short-description li {
  padding-left: 32px;
  position: relative;
  margin-bottom: 12px;
  line-height: 1.55;
}
.single-product .woocommerce-product-details__short-description li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--epa-success);
  font-weight: 700;
  font-size: 18px;
}
.single-product .product_meta {
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid var(--epa-border);
  font-size: 14px;
  color: var(--epa-text-secondary);
}
/* Tabs */
.woocommerce-tabs .wc-tabs {
  border-bottom: 1px solid var(--epa-border);
  padding: 0;
  display: flex;
  gap: 8px;
}
.woocommerce-tabs .wc-tabs li {
  margin: 0;
  border: none;
  background: transparent;
}
.woocommerce-tabs .wc-tabs li a {
  padding: 16px 24px;
  font-weight: 600;
  color: var(--epa-text-secondary);
  border-bottom: 2px solid transparent;
}
.woocommerce-tabs .wc-tabs li.active a {
  color: var(--epa-navy-900);
  border-bottom: 2px solid var(--epa-orange-600);
}
.woocommerce-tabs .panel {
  padding: 32px 0;
}
/* PayPal button alignment */
.single-product .ppc-button-wrapper,
.single-product #ppc-button-ppcp-gateway {
  margin-top: 16px;
}
/* ========== 9. Compare Beds page ========== */
.page-compare-beds .wp-block-table,
body.page-id-* .epa-compare-table,
.compare-beds-table {
  display: block;
  overflow-x: auto;
}
.page-compare-beds .wp-block-table table,
.compare-beds-table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--epa-bg);
  table-layout: fixed;
}
.page-compare-beds .wp-block-table th,
.compare-beds-table th {
  background: var(--epa-navy-100);
  color: var(--epa-navy-900);
  font-weight: 700;
  text-align: left;
  padding: 16px 20px;
  border-bottom: 2px solid var(--epa-border);
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  min-width: 200px;
  word-wrap: break-word;
}
.page-compare-beds .wp-block-table td,
.compare-beds-table td {
  padding: 20px;
  border-bottom: 1px solid var(--epa-border);
  vertical-align: top;
  min-width: 200px;
  word-wrap: break-word;
}
.page-compare-beds .wp-block-table td img,
.compare-beds-table td img {
  max-height: 180px;
  max-width: 100%;
  object-fit: contain;
  background: var(--epa-bg);
  border: 1px solid var(--epa-border);
  border-radius: var(--epa-radius-sm);
  padding: 12px;
}
.page-compare-beds .wp-block-table td a,
.compare-beds-table td a {
  color: var(--epa-navy-700);
  font-weight: 600;
  display: inline-block;
  margin-top: 12px;
}
@media (max-width: 768px) {
  .page-compare-beds .wp-block-table th,
  .compare-beds-table th,
  .page-compare-beds .wp-block-table td,
  .compare-beds-table td {
    min-width: 160px;
    padding: 12px;
    font-size: 14px;
  }
}
/* ========== 10. Category archive ========== */
.woocommerce-products-header,
.archive .page-title {
  text-align: left;
  padding-bottom: 32px;
  border-bottom: 1px solid var(--epa-border);
  margin-bottom: 40px;
}
.archive .page-title {
  font-size: 36px;
  color: var(--epa-navy-900);
}
.archive .term-description {
  color: var(--epa-text-secondary);
  font-size: 17px;
  margin-top: 12px;
}
.woocommerce-result-count,
.woocommerce-ordering {
  font-size: 14px;
  color: var(--epa-text-secondary);
}
.woocommerce-ordering select {
  border: 1px solid var(--epa-border-strong);
  border-radius: var(--epa-radius-sm);
  padding: 10px 14px;
  font-size: 14px;
  font-weight: 500;
  background: var(--epa-bg);
  color: var(--epa-text-primary);
}
ul.products,
.wc-block-grid__products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 24px !important;
  list-style: none !important;
  padding: 0 !important;
}
@media (max-width: 1024px) {
  ul.products, .wc-block-grid__products {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}
@media (max-width: 768px) {
  ul.products, .wc-block-grid__products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
  }
}
@media (max-width: 480px) {
  ul.products, .wc-block-grid__products {
    grid-template-columns: 1fr !important;
  }
}
.woocommerce-pagination ul.page-numbers {
  display: flex;
  gap: 4px;
  list-style: none;
  padding: 0;
  justify-content: center;
}
.woocommerce-pagination .page-numbers {
  background: var(--epa-bg);
  border: 1px solid var(--epa-border);
  border-radius: var(--epa-radius-sm);
  padding: 10px 14px;
  font-weight: 600;
  color: var(--epa-navy-700);
  text-decoration: none;
  min-width: 44px;
  text-align: center;
}
.woocommerce-pagination .page-numbers.current,
.woocommerce-pagination .page-numbers:hover {
  background: var(--epa-navy-700);
  color: #fff;
  border-color: var(--epa-navy-700);
}
/* ========== 11. Cart and Checkout ========== */
.woocommerce-cart table.shop_table,
.woocommerce-checkout table.shop_table,
.woocommerce-cart-form table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  background: var(--epa-bg);
  border: 1px solid var(--epa-border);
  border-radius: var(--epa-radius);
  overflow: hidden;
}
.woocommerce-cart table.shop_table th,
.woocommerce-checkout table.shop_table th {
  background: var(--epa-navy-100);
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--epa-navy-900);
  padding: 16px;
}
.woocommerce-cart table.shop_table td,
.woocommerce-checkout table.shop_table td {
  padding: 16px;
  border-bottom: 1px solid var(--epa-border);
  vertical-align: middle;
}
.cart_totals h2,
.woocommerce-checkout #order_review_heading {
  font-size: 22px;
  margin-bottom: 16px;
}
input[type="text"], input[type="email"], input[type="tel"],
input[type="password"], input[type="number"],
select, textarea {
  border: 1px solid var(--epa-border-strong) !important;
  border-radius: var(--epa-radius-sm) !important;
  padding: 12px 14px !important;
  font-size: 16px !important;
  font-family: 'Inter', sans-serif !important;
  background: var(--epa-bg);
  width: 100%;
  min-height: 48px;
}
input[type="text"]:focus, input[type="email"]:focus,
input[type="tel"]:focus, select:focus, textarea:focus {
  outline: none;
  border-color: var(--epa-navy-500) !important;
  box-shadow: 0 0 0 3px rgba(42, 92, 156, 0.15) !important;
}
/* ========== 12. Footer ========== */
.site-footer,
.footer-widgets,
footer.site-footer,
#colophon {
  background: var(--epa-navy-900) !important;
  color: rgba(255,255,255,0.85);
  padding: 80px 0 40px;
}
.site-footer .widget-title,
.site-footer h3,
.site-footer h4 {
  color: #FFFFFF !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-bottom: 20px;
}
.site-footer p,
.site-footer li {
  color: rgba(255,255,255,0.85);
  font-size: 15px;
  line-height: 1.7;
}
.site-footer a {
  color: rgba(255,255,255,0.75);
  font-weight: 500;
  text-decoration: none;
  transition: color 0.15s ease;
}
.site-footer a:hover {
  color: #FFFFFF;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.site-footer ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.site-footer ul li {
  margin-bottom: 10px;
}
.site-footer .footer-widget-area {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 32px;
}
@media (max-width: 1024px) {
  .site-footer .footer-widget-area { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .site-footer .footer-widget-area { grid-template-columns: 1fr; }
}
.site-footer .epa-address-block,
.site-footer .footer-widget-area .widget:nth-child(4) p {
  font-size: 14px;
  line-height: 1.7;
  color: rgba(255,255,255,0.75);
}
.site-footer .epa-address-block strong,
.site-footer .footer-widget-area .widget:nth-child(4) strong {
  color: #FFFFFF;
  font-weight: 700;
  display: block;
  margin-bottom: 4px;
  font-size: 14px;
  letter-spacing: 0.02em;
}
.site-footer-bottom,
.site-info {
  border-top: 1px solid rgba(255,255,255,0.12);
  margin-top: 64px;
  padding-top: 24px;
  font-size: 13px;
  color: rgba(255,255,255,0.6);
  text-align: center;
}
/* ========== 13. Misc page polish ========== */
/* Breadcrumbs */
.woocommerce-breadcrumb,
.kadence-breadcrumbs {
  font-size: 14px;
  color: var(--epa-text-secondary);
  margin-bottom: 24px;
}
.woocommerce-breadcrumb a {
  color: var(--epa-text-secondary);
}
/* Notice / message bars */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  border: 1px solid var(--epa-border);
  background: var(--epa-warm-50);
  color: var(--epa-text-primary);
  border-radius: var(--epa-radius-sm);
  padding: 16px 20px;
  border-left: 4px solid var(--epa-orange-600);
}
.woocommerce-message::before,
.woocommerce-info::before { color: var(--epa-orange-600); }
/* Star ratings */
.star-rating span::before,
.woocommerce .star-rating::before { color: var(--epa-orange-600); }
/* Tables generic */
.entry-content table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  border: 1px solid var(--epa-border);
  border-radius: var(--epa-radius);
  overflow: hidden;
}
.entry-content table th {
  background: var(--epa-navy-100);
  text-align: left;
  padding: 12px 16px;
  font-weight: 700;
  color: var(--epa-navy-900);
}
.entry-content table td {
  padding: 12px 16px;
  border-bottom: 1px solid var(--epa-border);
}
/* Accordion (FAQ) */
details {
  border: 1px solid var(--epa-border);
  border-radius: var(--epa-radius-sm);
  padding: 16px 20px;
  margin-bottom: 12px;
  background: var(--epa-bg);
}
details[open] {
  background: var(--epa-warm-50);
  border-color: var(--epa-border-strong);
}
details summary {
  font-weight: 600;
  cursor: pointer;
  color: var(--epa-navy-900);
  font-size: 17px;
  list-style: none;
}
details summary::-webkit-details-marker { display: none; }
details summary::after {
  content: "+";
  float: right;
  color: var(--epa-orange-600);
  font-weight: 400;
  font-size: 24px;
  line-height: 1;
}
details[open] summary::after { content: "−"; }
/* ========== 14. Hide residual legacy DOM that's already display:none anyway ========== */
/* Defense in depth: even if some old element survives in the DOM, blanket-hide it. */
.epa-legacy-residual,
.woodmart-old-header,
.woocommerce-product-gallery__image[style*="base64"]:not([data-loaded]),
.product-page-views-count,
.product-page-sold-count,
.product-page-countdown,
.shop-loop-views-count,
.shop-loop-sold-count {
  display: none !important;
}
/* ========== 15. Print friendliness (low priority) ========== */
@media print {
  .site-header, .site-footer, nav, .button, .epa-cta-primary { display: none !important; }
  body { color: #000; background: #fff; }
}
/* ========== 16. Reduced motion ========== */
@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
/* === END === */

/* ========== 17. Step 2 compatibility corrections ========== */
/* Keep broad prose pages narrow, but allow designed landing, commerce, and comparison pages to use the full design width. */
body.home .entry-content,
body.woocommerce-page .entry-content,
body.post-type-archive-product .entry-content,
body.tax-product_cat .entry-content,
body.page-id-12484 .entry-content,
body.page-id-1490 .entry-content {
  max-width: var(--epa-content-w);
}
body.home .wp-block-columns {
  gap: 24px;
}
body.home .entry-content > .wp-block-group:first-of-type {
  max-width: var(--epa-content-w);
  margin-left: auto;
  margin-right: auto;
}
body.home .wp-block-group:has(> .wp-block-heading + .wp-block-columns) .wp-block-columns {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 24px;
}
body.home .wp-block-group:has(> .wp-block-heading + .wp-block-columns) .wp-block-column {
  min-width: 0;
  overflow-wrap: normal;
  word-break: normal;
}
body.home .wp-block-group:has(> .wp-block-heading + .wp-block-columns) .wp-block-column h2,
body.home .wp-block-group:has(> .wp-block-heading + .wp-block-columns) .wp-block-column h3,
body.home .wp-block-group:has(> .wp-block-heading + .wp-block-columns) .wp-block-column p,
body.home .wp-block-group:has(> .wp-block-heading + .wp-block-columns) .wp-block-column a {
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}
@media (max-width: 768px) {
  body.home .wp-block-group:has(> .wp-block-heading + .wp-block-columns) .wp-block-columns {
    grid-template-columns: 1fr;
  }
}
/* Avoid invalid wildcard page selector from the upstream brief; target the actual Compare Beds page ID instead. */
body.page-id-12484 .epa-compare-table {
  display: block;
  overflow-x: auto;
}
/* Keep programmatic headless-browser focus from exposing the skip link in verification screenshots; preserve keyboard focus visibility. */
.skip-link.screen-reader-text:focus:not(:focus-visible) {
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.site-top-header-wrap .header-html-inner {
  background: transparent !important;
  color: rgba(255,255,255,0.9) !important;
  min-height: 0 !important;
}
.site-top-header-wrap .site-header-row-container-inner,
.site-top-header-wrap .site-container,
.site-top-header-wrap .site-header-row {
  background: transparent !important;
}
.site-top-header-wrap .site-header-section,
.site-top-header-wrap .site-header-item,
.site-top-header-wrap .header-html,
.site-top-header-wrap .header-html-inner {
  color: rgba(255,255,255,0.9) !important;
}

/* ==========================================================================
   STEP 2 PATCH 1 — Footer word-break fix + Product right column padding fix
   Appended on 2026-05-06. Do not delete; superseded only by future patches.
   ========================================================================== */
/* ---- Fix 1: Footer columns must NOT word-break inside phrases. ----
   The Step 2 base CSS used `word-wrap: break-word` plus a 5-column grid that
   in some viewports compresses each column to ~190px, causing every space
   to become a line break. Force normal word wrapping and set sensible
   minimum widths so phrases like "About Epachois" or "3280 US Highway 206"
   stay on one logical line and break only at natural opportunities.
*/
.site-footer,
.site-footer * {
  word-break: normal !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
}
.site-footer .footer-widget-area {
  /* Keep 5 columns ONLY when there's enough room per column.
     Below 1200px we collapse to a more readable grid. */
  display: grid;
  grid-template-columns: repeat(5, minmax(180px, 1fr));
  gap: 32px;
  align-items: start;
}
@media (max-width: 1200px) {
  .site-footer .footer-widget-area {
    grid-template-columns: repeat(3, minmax(200px, 1fr));
  }
}
@media (max-width: 768px) {
  .site-footer .footer-widget-area {
    grid-template-columns: repeat(2, minmax(160px, 1fr));
    gap: 24px;
  }
}
@media (max-width: 480px) {
  .site-footer .footer-widget-area {
    grid-template-columns: 1fr;
  }
}
/* Address blocks: looser leading, no per-word break. */
.site-footer p,
.site-footer li,
.site-footer .widget,
.site-footer .widget p {
  white-space: normal !important;
  line-height: 1.6;
}
/* Section headings in the footer: don't let "Stay In Touch" or
   "Customer Service" wrap into 3 lines. */
.site-footer h3,
.site-footer h4,
.site-footer .widget-title {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: clip;
}
@media (max-width: 480px) {
  .site-footer h3,
  .site-footer h4,
  .site-footer .widget-title {
    white-space: normal;
  }
}
/* ---- Fix 2: Product detail page right column padding + title wrapping ----
   The product detail layout used `grid-template-columns: 1.1fr 1fr` without
   `min-width: 0` on the children, so the right column was being pushed
   against the viewport edge. Add right padding on the page wrapper, and
   make the right column a proper flex/grid child that respects available
   width without forcing word-by-word breaks.
*/
.single-product .site-content,
.single-product .content-area,
.single-product main#main {
  padding-left: max(24px, env(safe-area-inset-left));
  padding-right: max(24px, env(safe-area-inset-right));
}
.single-product div.product {
  /* Re-state the grid so we can add min-width:0 children. */
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: 48px;
  align-items: start;
  max-width: var(--epa-content-w, 1240px);
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 900px) {
  .single-product div.product {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.single-product .summary,
.single-product .entry-summary,
.single-product div.product > .summary {
  /* Right column: don't allow word-breaking. Allow normal whitespace. */
  min-width: 0;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  padding-right: 8px; /* tiny breathing room from viewport edge */
}
/* Product title: don't break inside words. Break only at spaces. */
.single-product .product_title.entry-title {
  word-break: keep-all;
  overflow-wrap: break-word;
  hyphens: none;
  /* Smaller font on narrow viewports so the title doesn't fragment into
     2-word lines like "Functions, / Mattress & IV / Pole". */
  font-size: clamp(24px, 2.4vw, 36px);
  line-height: 1.25;
}
/* Bullet list: same treatment. */
.single-product .woocommerce-product-details__short-description {
  word-break: normal !important;
  overflow-wrap: break-word !important;
}
/* Reviews / "answered questions" line should not be force-broken either. */
.single-product .woocommerce-product-rating,
.single-product .woocommerce-review-link {
  white-space: normal !important;
  word-break: normal !important;
}
/* === END STEP 2 PATCH 1 === */

/* ==========================================================================
   STEP 2 PATCH 2 — Typography downsize + product page word-break root fix
   Appended on 2026-05-06. Do not delete; superseded only by future patches.
   ========================================================================== */
/* ---- A. Typography downsize site-wide ----
   The previous Step 2 used 17px body / 48px H1 / 32px H2 — too large for a
   premium considered-purchase product. Reduce one tier across the board so
   the design reads as "decent and considered" rather than "for elderly."
   We use !important sparingly because Kadence cascades its own sizes.
*/
html, body {
  font-size: 16px !important;
  line-height: 1.6 !important;
}
@media (max-width: 768px) {
  html, body { font-size: 15px !important; line-height: 1.55 !important; }
}
h1, .site-main h1, .entry-title, .page-title {
  font-size: 36px !important;
  line-height: 1.2 !important;
  letter-spacing: -0.015em !important;
}
h2, .site-main h2 {
  font-size: 26px !important;
  line-height: 1.25 !important;
  letter-spacing: -0.01em !important;
}
h3, .site-main h3 {
  font-size: 18px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
}
h4, .site-main h4 {
  font-size: 16px !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
}
@media (max-width: 768px) {
  h1, .site-main h1, .entry-title, .page-title { font-size: 28px !important; }
  h2, .site-main h2 { font-size: 22px !important; }
  h3, .site-main h3 { font-size: 17px !important; }
  h4, .site-main h4 { font-size: 16px !important; }
}
/* Hero on home — reduce too. */
.home h1,
.home .epa-hero-title {
  font-size: 44px !important;
  line-height: 1.15 !important;
}
@media (max-width: 768px) {
  .home h1, .home .epa-hero-title { font-size: 30px !important; }
}
.home .epa-hero-subtitle,
.home .entry-content > .wp-block-group:first-of-type p:first-of-type {
  font-size: 17px !important;
  line-height: 1.5 !important;
}
/* Buttons get a touch smaller too — they were quite chunky. */
.button,
.wp-block-button__link,
.single_add_to_cart_button,
input[type="submit"],
button[type="submit"],
.epa-cta-primary {
  padding: 11px 22px !important;
  font-size: 15px !important;
  min-height: 44px !important;
}
.wp-block-button.is-style-outline .wp-block-button__link,
.button.alt,
.button.secondary {
  padding: 10px 22px !important;
}
li.product .button.add_to_cart_button,
li.product a.button {
  padding: 9px 18px !important;
  font-size: 13px !important;
  min-height: 36px !important;
}
/* Price typography — keep the orange but bring sizes down a notch. */
.single-product .price {
  font-size: 26px !important;
}
.single-product .price del { font-size: 0.65em !important; }
li.product .price,
.wc-block-grid__product-price {
  font-size: 16px !important;
}
/* Section headings ("Best Sellers", "Shop by Care Need", "Why Choose...") */
.entry-content > .wp-block-group > .wp-block-heading,
.home h2.wp-block-heading {
  font-size: 28px !important;
  margin-bottom: 24px !important;
}
@media (max-width: 768px) {
  .entry-content > .wp-block-group > .wp-block-heading,
  .home h2.wp-block-heading {
    font-size: 22px !important;
  }
}
/* Section vertical rhythm — slightly tighter. */
.entry-content > .wp-block-group,
.entry-content > section {
  padding-top: 72px !important;
  padding-bottom: 72px !important;
}
@media (max-width: 768px) {
  .entry-content > .wp-block-group,
  .entry-content > section {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
}
/* ---- B. Product detail page — kill word-by-word breaks at the ROOT.
   Patch 1 targeted .summary only. The actual breakage is happening because
   parent grid wrappers and Kadence content wrappers don't have min-width:0,
   so EVERY descendant text node is forced into 1-word lines on narrower
   viewports. Cover all the wrappers, not just .summary.
*/
/* All grid/flex wrappers in single-product context need min-width:0 */
.single-product,
.single-product .content-area,
.single-product main,
.single-product main#main,
.single-product article,
.single-product .product,
.single-product .product > *,
.single-product .summary,
.single-product .entry-summary,
.single-product .woocommerce-product-details__short-description,
.single-product .woocommerce-product-gallery,
.single-product .upsells,
.single-product .related,
.single-product .related.products,
.single-product .upsells.products {
  min-width: 0 !important;
}
/* Hard rule: nowhere on a single-product page should text break inside words.
   Only break at natural whitespace. */
.single-product *:not(pre):not(code) {
  word-break: normal !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
}
/* Specifically: the title. Allow it to use available width without
   pre-emptively breaking on every space. */
.single-product .product_title.entry-title,
.single-product h1.product_title,
.single-product h1.entry-title {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  white-space: normal !important;
  max-width: 100% !important;
  /* Use clamp so the title scales with available column width. */
  font-size: clamp(22px, 2.2vw, 32px) !important;
  line-height: 1.25 !important;
  letter-spacing: -0.015em !important;
  font-weight: 700 !important;
}
/* "You may also like" / upsells / related products — same treatment. */
.single-product .upsells,
.single-product .related,
.single-product .upsells.products,
.single-product .related.products {
  display: block !important;
  margin-top: 48px !important;
}
.single-product .upsells > h2,
.single-product .related > h2 {
  font-size: 22px !important;
  margin-bottom: 20px !important;
}
.single-product .upsells ul.products,
.single-product .related ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  list-style: none !important;
  padding: 0 !important;
}
@media (max-width: 1024px) {
  .single-product .upsells ul.products,
  .single-product .related ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 768px) {
  .single-product .upsells ul.products,
  .single-product .related ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}
/* The product card title in upsells/related — make it readable, not 1 word per line */
.single-product .upsells li.product,
.single-product .related li.product,
.single-product .upsells li.product *,
.single-product .related li.product * {
  min-width: 0 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}
.single-product .upsells li.product h2,
.single-product .related li.product h2,
.single-product .upsells li.product .woocommerce-loop-product__title,
.single-product .related li.product .woocommerce-loop-product__title {
  font-size: 14px !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
  min-height: 0 !important;
  margin: 10px 0 6px !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
/* The card itself: kill any vertical writing modes / narrow flex columns */
.single-product .upsells li.product,
.single-product .related li.product {
  writing-mode: horizontal-tb !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 12px !important;
}
/* Upsells/related card images — give them a fixed aspect, no overflow. */
.single-product .upsells li.product img,
.single-product .related li.product img {
  width: 100% !important;
  height: auto !important;
  max-height: 200px !important;
  object-fit: contain !important;
}
/* ---- C. Description tab — fix typography hierarchy.
   "Description" should feel like a section heading; "Product Attributes" is
   a sub-heading inside it; the dimension lines below are body text.
*/
.woocommerce-tabs .panel h2,
.woocommerce-Tabs-panel--description h2 {
  font-size: 24px !important;
  margin-top: 0 !important;
  margin-bottom: 20px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  color: var(--epa-navy-900) !important;
}
.woocommerce-tabs .panel h3,
.woocommerce-Tabs-panel--description h3 {
  font-size: 18px !important;
  margin-top: 28px !important;
  margin-bottom: 12px !important;
  font-weight: 600 !important;
  color: var(--epa-navy-900) !important;
}
.woocommerce-tabs .panel p,
.woocommerce-Tabs-panel--description p {
  font-size: 15px !important;
  line-height: 1.65 !important;
  margin-bottom: 8px !important;
  color: var(--epa-text-primary) !important;
}
.woocommerce-tabs .panel ul,
.woocommerce-Tabs-panel--description ul {
  font-size: 15px !important;
  line-height: 1.65 !important;
}
/* Tab navigation itself — slightly smaller. */
.woocommerce-tabs .wc-tabs li a {
  font-size: 14px !important;
  padding: 12px 18px !important;
}
/* === END STEP 2 PATCH 2 === */

/* ==========================================================================
   STEP 2 PATCH 2.2 — Definitive product-page word-break fix.
   DevTools evidence (2026-05-06):
   - Selectors WERE matching. Rules WERE in cascade.
   - But `overflow-wrap: normal` + a narrow right column = forced line break
     at every whitespace. That's exactly what we saw on screen.
   - Fix: allow long words to break when needed; widen the right column;
     remove forced right padding.
   ========================================================================== */
/* ---- A. The product right column needs to be wider, not narrower. ----
   Replace the prior 1.1fr 1fr ratio with a 1fr 1fr ratio so the title has
   real width to use. Drop the padding-right that was making it worse.
*/
.single-product div.product,
div.product.type-product {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 40px !important;
  align-items: start !important;
  max-width: var(--epa-content-w, 1240px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
@media (max-width: 900px) {
  .single-product div.product,
  div.product.type-product {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
}
.single-product .summary.entry-summary,
.single-product .entry-summary,
div.product .summary.entry-summary,
div.product .entry-summary {
  min-width: 0 !important;
  max-width: 100% !important;
  padding-right: 0 !important;
}
/* ---- B. The actual fix: allow long words to break, don't force whitespace-only.
   The previous `overflow-wrap: normal` was the bug. Use `break-word` so the
   browser tries to keep words intact but CAN break them if there's no
   alternative — instead of forcing a line break at every space.
*/
.single-product .product_title.entry-title,
.single-product h1.product_title,
.single-product h1.entry-title,
h1.product_title.entry-title,
h1.entry-title.product_title {
  word-break: normal !important;
  overflow-wrap: break-word !important;  /* WAS: normal — that was the bug */
  hyphens: none !important;
  white-space: normal !important;
  font-size: clamp(24px, 2.4vw, 34px) !important;
  line-height: 1.25 !important;
  letter-spacing: -0.015em !important;
  font-weight: 700 !important;
  color: var(--epa-navy-900) !important;
  max-width: 100% !important;
}
/* Also unstuck the short description bullets and rating line — same bug
   was making them break at every space too. */
.single-product .woocommerce-product-details__short-description,
.single-product .woocommerce-product-details__short-description *,
.single-product .woocommerce-product-rating,
.single-product .woocommerce-product-rating *,
.summary.entry-summary p,
.summary.entry-summary li {
  word-break: normal !important;
  overflow-wrap: break-word !important;  /* WAS: normal */
  hyphens: none !important;
}
/* ---- C. Same bug applies to "You may also like" / "Related products"
   product card titles. They were getting "Air / Mattress / with / Adjustable /..."
   for the same reason. */
li.product h2,
li.product h3,
li.product .woocommerce-loop-product__title,
.upsells.products li.product *,
.related.products li.product * {
  word-break: normal !important;
  overflow-wrap: break-word !important;  /* WAS: normal */
  hyphens: none !important;
}
/* === END STEP 2 PATCH 2.2 === */

/* ==========================================================================
   STEP 2 PATCH 2.3 — Product grid placement + upsells width fix.
   Appended on 2026-05-06.
   Root cause after Patch 2.2: WooCommerce tabs and upsells are also grid
   children of div.product, so they can land in the narrow right column.
   Force gallery/summary into row 1 and all lower sections full-width.
   ========================================================================== */
.single-product div.product,
div.product.type-product {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.95fr) !important;
  gap: 32px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: var(--epa-content-w, 1240px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}
.single-product .woocommerce-product-gallery,
div.product.type-product > .woocommerce-product-gallery {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
}
.single-product .summary.entry-summary,
.single-product .entry-summary,
div.product.type-product > .summary.entry-summary,
div.product.type-product > .entry-summary {
  grid-column: 2 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
.single-product .woocommerce-tabs,
div.product.type-product > .woocommerce-tabs,
.single-product .upsells.products,
.single-product .related.products,
div.product.type-product > .upsells.products,
div.product.type-product > .related.products,
section.upsells.products,
section.related.products {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
  clear: both !important;
  box-sizing: border-box !important;
}
.upsells.products ul.products,
.related.products ul.products,
.single-product .upsells ul.products,
.single-product .related ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: 100% !important;
}
.upsells.products li.product .woocommerce-loop-product__title,
.related.products li.product .woocommerce-loop-product__title,
.single-product .upsells li.product .woocommerce-loop-product__title,
.single-product .related li.product .woocommerce-loop-product__title {
  display: block !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
  overflow: visible !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}
@media (max-width: 900px) {
  .single-product div.product,
  div.product.type-product {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .single-product .woocommerce-product-gallery,
  div.product.type-product > .woocommerce-product-gallery,
  .single-product .summary.entry-summary,
  .single-product .entry-summary,
  div.product.type-product > .summary.entry-summary,
  div.product.type-product > .entry-summary {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}
@media (max-width: 768px) {
  .upsells.products ul.products,
  .related.products ul.products,
  .single-product .upsells ul.products,
  .single-product .related ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}
/* === END STEP 2 PATCH 2.3 === */

/* ==========================================================================
   STEP 2 PATCH 2.4 — Header logo/title de-duplication + primary nav pruning.
   Appended on 2026-05-06.
   Keep the image logo. Hide the redundant text site title and the header/menu
   items the owner requested to remove from visible navigation.
   ========================================================================== */
.site-header .site-branding .site-title-wrap,
.site-mobile-header-wrap .site-branding .site-title-wrap,
.site-header .site-branding .site-title,
.site-mobile-header-wrap .site-branding .site-title {
  display: none !important;
}
.site-header .site-branding .brand.has-logo-image,
.site-mobile-header-wrap .site-branding .brand.has-logo-image {
  gap: 0 !important;
}
/* Requested visible menu removals:
   Electric Recliners, Mobility Equipment, Accessories, Why Epachois, Help. */
#primary-menu .menu-item-12531,
#primary-menu .menu-item-12532,
#primary-menu .menu-item-12533,
#primary-menu .menu-item-12534,
#primary-menu .menu-item-12535,
.mobile-navigation .menu-item-12531,
.mobile-navigation .menu-item-12532,
.mobile-navigation .menu-item-12533,
.mobile-navigation .menu-item-12534,
.mobile-navigation .menu-item-12535,
.popup-drawer .menu-item-12531,
.popup-drawer .menu-item-12532,
.popup-drawer .menu-item-12533,
.popup-drawer .menu-item-12534,
.popup-drawer .menu-item-12535 {
  display: none !important;
}
/* === END STEP 2 PATCH 2.4 === */
