/* sections/comparison-table.liquid inline <style> */
.comparison-table .h2 {
    text-align: center;
    margin-bottom: 40px;
  }

  .comparison-table table {
    width: 100%;
    border-collapse: collapse;
  }

  .comparison-table th,
  .comparison-table td {
    padding: 15px 20px 15px 30px;
    text-align: left;
    vertical-align: middle;
  }
  .comparison-table td .flexitem{
    display:flex;
    align-items:center;
  }
  .comparison-table td .flexitem svg{
    flex-shrink:0;
  }
  .comparison-table td .flexitem p{
    margin:0;
  }
  .comparison-table td  {
    border: 1px solid #ffffff80;
  }

  .comparison-table th {
    background-color: #F4F4F4;
    font-size: 18.2px;
    font-weight: 600;
    line-height: 1.29;
  }

  .comparison-table .highlight {
    background-color: #007B80;
    color: white;
  }

  .comparison-table tbody tr:first-child td {
      border-top: none;
  }

  .comparison-table td .checkmark {
    margin-right: 8px;
  }

  .comparison-table td {
    background: #F4F4F4;
    font-family: Montserrat;
    font-size: 15.6px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.33;
    color: #000;
}

.comparison-table th.highlight {
    border-left: 1px solid #Fff;
    border-right: 1px solid #fff;
}

  .comparison-table td:first-child {
    font-weight: 500;
    width: 255px;
  }

.comparison-table td:nth-child(2) {
    padding: 15px 25px 15px 30px;
}

 .comparison-table th {
    padding-top: 30px;
    padding-bottom: 10px;
}

.comparison-table td span {
    display: flex;
    align-items: center;
    gap: 10px;
}

.table-wrap {
  border-radius: 6px;
  overflow: hidden;
  border: 0.5px solid rgba(0, 0, 0, 0.50);
  background: #F4F4F4;
}

.mobile-only {
    display: none;
  }

  .desktop-only {
    display: block;
  }

  .feature-value .icon {
    line-height: 1;
  }

  .brand-tabs{ display:none; gap:12px; margin: 12px 0 16px; }
.brand-tab{ 
  appearance:none; border:1px solid rgba(0,0,0,.2); border-radius:6px; padding:10px 14px; 
  font-weight:600; 
  white-space: nowrap;
    flex: 1;
    text-align: center;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 18px;
  }

  .brand-tab::after {
    display: none !important;
  }

  .brand-tab.active{ background:#0c8a83; color:#fff; border-color:#0c8a83; }

  @media (max-width: 768px) {
    .comparison-row p {
      font-size: 14px;
      margin: 0px;
    }
    .desktop-only {
      display: none !important;
    }

    .brand-tabs {
      display: flex;
    }

    .mobile-only {
      display: block !important;
    }

    .mobile-comparison-heading {
      text-align: center;
      font-size: 1.5rem;
      margin-bottom: 1rem;
    }

    .comparison-table h2 {
        line-height: 28px;
        font-size: 24px;
    }

    .comparison-slider-wrapper {
      overflow: hidden;
      position: relative;
    }

    .comparison-slider {
      display: flex;
      transition: transform 0.4s ease-in-out;
      width: 100%;
    }

    .comparison-slide {
      width: 100%;
      flex-shrink: 0;
    }

    .comparison-box {
      border: 1px solid #ccc;
      border-radius: 12px;
      overflow: hidden;
    }

    .comparison-row {
      display: flex;
      border-bottom: 1px solid #e0e0e0;
    }

    .comparison-row:last-child {
      border-bottom: none;
    }

    .feature-name {
        width: 35%;
        background: #F4F4F4;
        padding: 10px;
        font-weight: 500;
        font-size: 12px;
        font-family: Montserrat;
    }

    .feature-value {
      width: 80%; 
      padding: 10px;
      display: flex;
      align-items: center;
      gap: 6px;
      font-size: 12px;
      font-family: Montserrat;
    }

    .feature-value.green {
      background: #007B80;
      color: #fff;
    }

    .feature-value.gray {
      background: #e7e7e7;
      color: #333;
    }

    .icon {
      font-size: 1rem;
    }

    .icon.red {
      color: red;
    }

    .slider-controls {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 10px;
      width: 65%;
      margin: 0 auto;
      padding-top: 35px;
    }

    .slider-arrow {
      
      
      font-size: 24px;
      line-height: 1;
      cursor: pointer;
    }

    .slider-progress {
      flex-grow: 1;
      height: 4px;
      background: #ccc;
      border-radius: 4px;
      overflow: hidden;
    }

    .progress-fill {
      height: 100%;
      background: #007B80;
      width: 50%;
      transition: width 0.3s ease;
    }

    .tables_arrows {
    margin-top: 25px;
    text-align: center;
    gap: 20px;
    display: flex;
    justify-content: center;
    }

    .comparison-table {
      padding: 30px 0px;
    }
    
  }

/* sections/benefits.liquid inline <style> */
.guarantee-section {
  background-color: #fff;
  border-top: 2px solid rgba(0, 87, 87, 0.50);
}

.guarantee-section .container {
  max-width: 1260px;
  margin: 0 auto;
}

.guarantee-section .guarantee-header-layout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  text-align: center;
  margin-bottom: 40px;
  gap: 30px;
}

.guarantee-section .guarantee-side-image {
  
  text-align: left;
}

.guarantee-section .guarantee-side-image img.guarantee-badge {
  max-width: 135px;
}

.guarantee-section .guarantee-side-image img.product-image {
  max-width: 371px;
  border-radius: 10px;
}

.guarantee-section .guarantee-text-center {
  flex: 1 1 40%;
  text-align: left;
  padding-right: 26px;
}

.guarantee-section .guarantee-text-center h2 {
  font-size: 40px;
  margin-bottom: 10px;
  font-weight: 600;
  line-height: 44px;
  color: #000;
}

.guarantee-section .guarantee-text-center p {
    font-size: 18px;
    color: #000;
    margin-top: 25px;
    font-weight: 400;
    line-height: 26px;
}

.guarantee-how {
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
}

.guarantee-section .how-it-works-button,
.guarantee-section .why-offer-button {
    display: inline-block;
    
    padding: 4px 45px;
    color: #098B8A;
    text-decoration: none;
    font-weight: 500;
    border-radius: 7.8px;
    border: 0.65px solid #098B8A;
    background: #E6EEEE;
    font-size: 18px;
}

.guarantee-section .guarantee-how p {
  font-size: 18px;
  font-weight: 400;
  line-height: 26px;
  color: #000;
  margin-top: 20px;
}



.guarantee-section .guarantee-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
  margin: 40px 0;
}

.guarantee-section .benefit {
    flex: 1 1 calc(25% - 20px);
    text-align: center;
    padding: 20px;
    border-radius: 7.8px;
    border: 0.65px solid #098B8A;
    background: #F4F4F4;
}

.guarantee-section .benefit h4 {
  margin: 10px 0 5px;
    font-size: 18px;
    font-weight: 500;
    line-height: 23px;
    color: #000;
}

.guarantee-section .benefit p {
    font-size: 15.6px;
    color: #000;
    font-weight: 500;
    line-height: 20px;
}

.guarantee-section .benefit img {
  width: 40px;
  height: 40px;
  margin: 0 auto;
}

.guarantee-section .guarantee-footer {
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
}

.guarantee-section .guarantee-footer p {
    font-size: 18px;
    line-height: 26px;
    margin-top: 20px;
    font-weight: 400;
    color: #000;
}

@media (max-width: 1024px) {
  .guarantee-section {
    padding: 30px 15px;
  }

.guarantee-section .guarantee-side-image{
    margin-bottom: 0;
}

  .guarantee-section .guarantee-header-layout {
    flex-direction: column;
    text-align: center;
    gap: 20px;
  }

  .guarantee-section .guarantee-side-image {
    text-align: center;
  }

  .guarantee-section .guarantee-side-image img.guarantee-badge {
    max-width: 100px;
    margin: 0 auto;
  }

  .guarantee-section .guarantee-side-image img.product-image {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
  }

  .guarantee-section .guarantee-text-center {
    padding: 0;
    text-align: center;
  }

  .guarantee-section .guarantee-text-center h2 {
    font-size: 28px;
    line-height: 34px;
  }

  .guarantee-section .guarantee-text-center p {
    font-size: 16px;
    line-height: 24px;
    margin-top: 15px;
  }

  .guarantee-section .how-it-works-button,
  .guarantee-section .why-offer-button {
    padding: 8px 30px;
    font-size: 16px;
  }

  .guarantee-section .guarantee-how p,
  .guarantee-section .guarantee-footer p {
    font-size: 16px;
    line-height: 24px;
    margin-top: 15px;
  }

  .guarantee-section .guarantee-benefits {
    gap: 16px;
    margin-top: 30px;
  }

  .guarantee-section .benefit {
    flex: 0 0 calc(50% - 8px);
    padding: 16px;
  }

  .guarantee-section .benefit h4 {
    font-size: 16px;
    line-height: 22px;
  }

  .guarantee-section .benefit p {
    font-size: 14px;
    line-height: 20px;
  }

  .guarantee-section .benefit img {
    width: 36px;
    height: 36px;
  }
}


@media (max-width: 768px) {
.guarantee-section .guarantee-header-layout {
    flex-direction: column;
  }
.guarantee-section  .guarantee-side-image,
.guarantee-section  .guarantee-text-center {
    flex: 1 1 100%;
    
  }

  .guarantee-section .guarantee-text-center h2 {
        font-size: 24px;
        line-height: 28px;
    }

    .guarantee-section .guarantee-text-center p {
        font-size: 14px;
        line-height: 20px;
    }

    .guarantee-section .guarantee-side-image, .guarantee-section .guarantee-text-center {
        width: 100%;
    }    

    .guarantee-section .guarantee-side-image img.product-image {
        width: 100%;
    }

    .guarantee-section .how-it-works-button {
        font-size: 14px;
    }

    .guarantee-section .guarantee-how p{
        font-size: 14px;
        line-height: 20px;
    }

    .guarantee-section .benefit h4 {
        font-size: 14px;
        line-height: 18px;
    }

    .guarantee-section .benefit p {
        font-size: 12px;
        line-height: 16px;
    }

    .guarantee-section .guarantee-header-layout {
        margin-bottom: 10px;
}
    .guarantee-section {
        padding: 30px 0px;
    }

    .guarantee-section .guarantee-header-layout {
        margin-bottom: 20px;
    }

    .guarantee-section .guarantee-benefits {
     margin: 25px 0;
  }
  
  .guarantee-benefits {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 600px) {
  .guarantee-section .guarantee-text-center h2 {
        font-size: 24px;
        line-height: 28px;
    }

    .guarantee-section .guarantee-text-center p {
        font-size: 14px;
        line-height: 20px;
    }

    .guarantee-section .guarantee-side-image, .guarantee-section .guarantee-text-center {
        width: 100%;
    }    

    .guarantee-section .guarantee-side-image img.product-image {
        width: 100%;
    }

    .guarantee-section .how-it-works-button,
    .guarantee-section .why-offer-button {
        font-size: 14px;
        line-height: 1;
    }

    .guarantee-section .guarantee-how p{
        font-size: 14px;
        line-height: 20px;
    }

    .guarantee-section .benefit h4 {
        font-size: 14px;
        line-height: 18px;
    }

    .guarantee-section .benefit p {
        font-size: 12px;
        line-height: 16px;
    }
}

/* sections/info-faq.liquid inline <style> */
/* === ISOLATED STYLES === */
.custom-faq-section {
  background: #fff;
  border-top: 2px solid rgba(0,87,87,0.5);
  border-bottom: 2px solid rgba(0,87,87,0.5);
  padding: 60px 0;
  overflow: hidden;
  box-sizing: border-box;
}
.custom-faq-container {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 60px;
  max-width: 1300px;
  margin: auto;
  padding: 0 20px;
}
.custom-faq-image {
  flex: 0 0 50%;
  max-width: 50%;
}
.custom-faq-image img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  object-fit: cover;
  display: block;
}
.custom-faq-content {
  flex: 1;
  padding: 0 20px;
  max-width: calc(100% - 50%);
}
.custom-faq-label {
  display: inline-block;
  background: #E6EEEE;
  color: #098B8A;
  padding: 2px 75px;
  font-weight: 500;
  font-size: 18px;
  border-radius: 6px;
  border: 1px solid #098B8A;
  margin-bottom: 20px;
}
.custom-faq-heading {
  font-size: 31px;
  font-weight: 600;
  margin-bottom: 20px;
}
.custom-faq-item {
  border: 1px solid #098B8A;
  border-radius: 8px;
  margin-bottom: 16px;
  background: #fff;
  overflow: hidden;
}
.custom-faq-trigger {
  width: 100%;
  padding: 16px 20px;
  cursor: pointer;
  font-weight: 600;
  font-size: 18px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
  border: none;
  text-align: left;
  transition: all 0.3s ease;
  color: #1a1a1a;
  outline: none;
  appearance: none;
}
.custom-faq-trigger:hover {
  background: #f7fcfc;
}
.custom-faq-trigger.is-active {
  background: #098B8A;
  color: #fff;
}
.custom-faq-icon {
  position: relative;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  margin-left: 15px;
}
.custom-faq-icon::before,
.custom-faq-icon::after {
  content: '';
  position: absolute;
  background: currentColor;
  transition: transform 0.3s ease;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.custom-faq-icon::before { width: 14px; height: 2px; }
.custom-faq-icon::after { width: 2px; height: 14px; }
.custom-faq-trigger.is-active .custom-faq-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.custom-faq-answer-wrapper {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s cubic-bezier(0, 1, 0, 1);
  background: #098B8A;
}
.custom-faq-answer-inner {
  padding: 20px;
  color: #fff;
  font-size: 16px;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .custom-faq-container { flex-direction: column; gap: 30px; }
  .custom-faq-image, .custom-faq-content { flex: 1 1 100%; max-width: 100%; }
  .custom-faq-image img { max-height: 300px; object-fit: contain; }
  .custom-faq-heading { text-align: center; font-size: 26px; }
  .custom-faq-label { display: table; margin: 0 auto 15px; }
  .custom-faq-trigger { font-size: 16px; padding: 14px 16px; }
  .custom-faq-answer-inner { padding: 14px 16px; font-size: 15px; }
}

/* er-interactions.js support: scroll-snap carousels instead of Flickity, [open] collapsibles */
flickity-carousel[data-er-carousel] { display: flex; gap: 20px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
flickity-carousel[data-er-carousel]::-webkit-scrollbar { display: none; }
flickity-carousel[data-er-carousel] > .carousel-cell { flex: 0 0 auto; scroll-snap-align: start; }
collapsible-content.collapsible[open] { visibility: visible; height: auto; overflow: visible; }

/* sections/marquee-slider.liquid {% style %} (static rules) */
.marquee {
  --gap: 1rem;
    display: flex;
    gap: var(--gap);
    overflow: hidden;
    user-select: none;
    border-top: 2px solid #00575780;
    border-bottom: 2px solid #00575780;
  }
.marquee__content {
      flex-shrink: 0;
      display: flex;
      justify-content: space-around;
      min-width: 100%;
      gap: var(--gap);
      margin: 0;
      padding: 0;
  }
.marquee__content li.marquee_box {
    display: flex;
    align-items: center;
    gap: 16px;
  }
.marquee__content img.marquee_icon {
    max-width: 35px;
  }
.scroll {
    animation: scroll 95s linear infinite !important;
  }
@keyframes scroll {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(calc(-100% - var(--gap)));
    }
  }
.marquees-wrapper:hover .scroll {
      animation-play-state: paused !important;
  }
.marquee__content li {
        list-style: none;
        font-size: 18px;
        color: #000000;
        font-weight: 500;
  }
.scroll {
    animation: scroll 25s linear infinite;
  }
/* The source wraps the next two groups in @media (max-width: 610px) and (max-width: 375px); without the wrappers the
   phone sizes (12px USP strip, 15/20/14px doctor cards) applied at every width. */
@media screen and (max-width: 610px) {
.marquee__content li.marquee_box {
      font-size: 14px;
      font-weight: 500;
      line-height: 1.33
    }
h3.doctor-testimonial__name {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2
  }
.doctor-testimonial__details p {
      font-size: 15px;
      line-height: 1.3;
      margin-top: 0;
  }
.doctor-testimonial__title {
      font-size: 15px;
  }
.doctor-testimonial__title-wrap {
      width: 90%;
      margin-right: auto;
      /* margin-left: auto; */
  }
.doctor-testimonial__details {
      padding-top: 15px;
  }
}
@media screen and (max-width: 375px) {
.marquee__content li.marquee_box {
      font-size: 12px;
   }
.doctor-testimonial__details p {
      font-size: 14px;
  }
}
.price-badge [hidden] { display: none !important; }

/* templates/product.cbdmd-variant-cc.json block liquid_pGUN6M <style> (later declarations of the source kept:
   font-size 7px, line-height 1.6; the source leaves its @media block unclosed, which the browser closes at the end). */
.product-info__shipping-info {
  padding: 15px 0;
  color: rgba(0, 0, 0, 0.70);
  text-align: center;
  font-family: Montserrat;
  font-style: italic;
  font-size: 7px;
  line-height: 1.6;
}
@media screen and (max-width: 610px) {
  .product-info__shipping-info {
    text-align: left;
  }
}

/* RV3: the WooCommerce add-to-cart form keeps class "cart" (plugins hook form.cart), but Focal's theme.css styles .cart
   as the cart page grid (1fr 390px), which pushed the variant picker right and squeezed Add to cart into a side column,
   and woocommerce.css (.woocommerce div.product form.cart) gives it a 2em bottom margin. Live's product form is a plain
   block without margins. */
.product-form .product-form__buy-buttons form.product-form__form.cart {
  display: block;
  margin-bottom: 0;
}

/* RV2: woocommerce.css styles every ".woocommerce button.button" (grey #e9e6ed, #515151 text, line-height 1, 3px radius,
   .618em 1em padding) and outranks Focal's .button, so the sticky bar's Add to cart lost the primary (teal) style and its
   48px height. Restore Focal's theme.css values for the add-to-cart buttons (the main #AddToCart keeps new-pdp.css). */
.woocommerce .product-form__add-button.button {
  background: rgb(var(--button-background));
  color: rgb(var(--button-text-color));
  line-height: var(--button-height);
  border-radius: 10px;
  padding: 0 10px;
}
.woocommerce .product-sticky-form .product-form__add-button.button {
  height: 48px;
  line-height: 48px;
}
@media screen and (min-width: 741px) {
  .woocommerce .product-form__add-button.button {
    padding-inline: 15px;
  }
}

/* PR7: Yotpo review summary (inc/yotpo.php er_render_yotpo_ssr) laid out like the live Yotpo widget's summary and first
   page of reviews (sizes and colours from the live captures: 31px/600 title, 48px rgb(46,79,124) average, 14px count,
   18px/700 review titles, 16px text) until the real widget is integrated. */
.er-yotpo { max-width: 1008px; margin: 0 auto; font-family: "Nunito Sans", Montserrat, sans-serif; color: rgb(44, 44, 44); }
.er-yotpo [hidden] { display: none !important; }
.er-yotpo__title { margin: 0; padding-bottom: 30px; border-bottom: 1px solid #e3e3e3; text-align: center; font-family: inherit; font-size: 31px; font-weight: 600; line-height: 1.4; color: rgb(44, 44, 44); }
.er-yotpo__summary { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 40px 0; border-bottom: 1px solid #e3e3e3; }
.er-yotpo__avg { font-size: 48px; line-height: 1.4; color: rgb(46, 79, 124); }
.er-yotpo__based { font-size: 14px; line-height: 1.35; }
.er-yotpo__stars { position: relative; display: inline-block; line-height: 0; white-space: nowrap; }
.er-yotpo__stars svg { width: 18px; height: 18px; margin-right: 2px; }
.er-yotpo__stars-base svg { fill: #d6d6d6; }
.er-yotpo__stars-fill { position: absolute; top: 0; left: 0; overflow: hidden; }
.er-yotpo__stars-fill svg { fill: #e7721b; }
.er-yotpo__review { display: flex; gap: 20px; padding: 30px 0; border-bottom: 1px solid #e3e3e3; }
.er-yotpo__author { flex: 0 0 calc(35% - 20px); display: flex; align-items: center; gap: 12px; align-self: flex-start; font-size: 16px; }
.er-yotpo__avatar { flex: none; width: 25px; height: 25px; border-radius: 50%; background: #c7cbd6; }
.er-yotpo__content { flex: 1 1 auto; min-width: 0; }
.er-yotpo__head { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.er-yotpo .yotpo-review-title { margin: 0; font-family: inherit; font-size: 18px; font-weight: 700; line-height: 1.35; text-transform: none; letter-spacing: 0; color: rgb(44, 44, 44); }
.er-yotpo .yotpo-review-body { margin: 0; font-family: inherit; font-size: 16px; line-height: 1.4; color: rgb(44, 44, 44); }
@media screen and (max-width: 740px) {
  .er-yotpo { padding-inline: 37px; }
  .er-yotpo__review { flex-direction: column; gap: 16px; }
  .er-yotpo__author { flex-basis: auto; }
  .er-yotpo__head { flex-direction: column; align-items: flex-start; }
  .er-yotpo__review .er-yotpo__stars svg { width: 24px; height: 24px; }
  .er-yotpo .yotpo-review-body { font-size: 14px; }
}

/* Doctor testimonials, mobile: live lays the cells out in one row (Flickity). doctor-testimonials.css sets
   .custom_sec .sm-only { display: block } below 990px, which beat the flex scroller above and stacked the cards. */
@media screen and (max-width: 990px) {
  .custom_sec flickity-carousel.sm-only[data-er-carousel] { display: flex; gap: 0; overflow-x: auto; }
}

/* Doctor testimonials edge fade: doctor-testimonials.css draws .doctor-testimonials__carousel.lg-only:before as an absolute
   120px x 100% white gradient. On live the carousel is the positioning box because Flickity adds .flickity-enabled
   { position: relative } (theme.css); the copy's carousel is not Flickity, so the fade anchored to the page's top-left
   corner instead: it washed the left of the announcement bar white on every product page above 990px and caught clicks on
   the breadcrumb "Elevate" link at 1024px (layout_sweep.py, 2026-10-06). */
.doctor-testimonials__carousel[data-er-carousel] { position: relative; }

/* Accepted payment methods under the buy box (inc/render.php er_render_payment_badges()): the cart drawer's approved local
   icons (assets/payments, 38x24) in one centred row, each 47.5 x 30 like the drawer's fallback size
   (assets/er-cart-drawer.css .er-cd__badges img), 30px tall like live's strip image (756x59 shown 400px wide). */
.er-pay-badges { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin: 0; padding: 0; list-style: none; }
.er-pay-badges li { margin: 0; padding: 0; list-style: none; }
.er-pay-badges li::before { content: none; }
.er-pay-badges img { display: block; width: 47.5px; height: 30px; max-width: none; }

/* PDP parity (batch4.5): the shipping-states note is not the last child on live (its <style> element follows it), so it keeps
   the paragraph's 1em bottom margin that theme.css p:last-child {margin-block-end:0!important} removes here. */
.product-form__custom-liquid .product-info__shipping-info { margin-block-end: 1em !important; }

/* PDP parity (batch4.5): the RV2 rule above resets background-image; Focal's .button gets this overlay on pointer:fine devices
   (the main #AddToCart already shows it). */
@media (pointer: fine) {
  .woocommerce .product-sticky-form .product-form__add-button.button {
    background-image: linear-gradient(178deg, rgb(var(--button-background)), rgb(var(--button-background)) 10%, rgba(0, 0, 0, 0.07) 10%, rgba(0, 0, 0, 0.07) 100%), linear-gradient(rgb(var(--button-background)), rgb(var(--button-background)));
  }
}
