:root {
  --h0-font-size:calc(var(--title-scale) * 90px);
  --h0-line-height:calc(var(--title-scale) * 106%);

  --h1-font-size:calc(var(--title-scale) * 50px);
  --h1-line-height:calc(var(--title-scale) * 54px);

  --h2-font-size:calc(var(--title-scale) * 46px);
  --h2-line-height:calc(var(--title-scale) * 50px);

  --h3-font-size:calc(var(--title-scale) * 34px);
  --h3-line-height:calc(var(--title-scale) * 38px);

  --h4-font-size:calc(var(--title-scale) * 26px);
  --h4-line-height:calc(var(--title-scale) * 32px);

  --h5-font-size:calc(var(--title-scale) * 22px);
  --h5-line-height:calc(var(--title-scale) * 26px);

  --h6-font-size:calc(var(--title-scale) * 18px);
  --h6-line-height:calc(var(--title-scale) * 22px);

  --text-1-font-size:calc(var(--body-scale) * 18px);
  --text-1-line-height:calc(var(--body-scale) * 22px);

  --text-2-font-size:calc(var(--body-scale) * 14px);
  --text-2-line-height:calc(var(--body-scale) * 18px);

  --text-3-font-size:calc(var(--body-scale) * 16px);
  --text-3-line-height:calc(var(--body-scale) * 18px);

  --text-4-font-size:calc(var(--body-scale) * 12px);
  --text-4-line-height:calc(var(--body-scale) * 16px);

  --text-5-font-size:calc(var(--body-scale) * 10px);
  --text-5-line-height:calc(var(--body-scale) * 14px);

  --text-price-1-font-size:calc(var(--body-scale) * 32px);
  --text-price-1-line-height:calc(var(--body-scale) * 36px);

  --text-price-2-font-size:calc(var(--body-scale) * 18px);
  --text-price-2-line-height:calc(var(--body-scale) * 22px);

  --text-button-1-font-size:calc(var(--body-scale) * 14px);
  --text-button-1-line-height:calc(var(--body-scale) * 18px);

  --text-button-2-font-size:calc(var(--body-scale) * 16px);
  --text-button-2-line-height:calc(var(--body-scale) * 20px);

  --page-padding:40px;
}

html,
body{
  font-family: var(--body-font);
  font-size:var(--text-3-font-size);
  line-height:var(--text-3-line-height);
}

h1,h2,h3,h4,h5,h6,p{
  margin:0;
  font-weight:400;
}

h1,h2,h3,h4,h5,h6,
.font-h0,.font-h1,.font-h2,.font-h3,.font-h4,.font-h5,.font-h6{
  text-transform: var(--title-transform);
}

.font-h0{
  font-size:var(--h0-font-size);
  line-height:var(--h0-line-height);
  font-family: var(--title-font);
}

h1,.font-h1{
  font-size:var(--h1-font-size);
  line-height:var(--h1-line-height);
  font-family: var(--title-font);
  font-weight: 600;
}

h2,.font-h2{
  font-size:var(--h2-font-size);
  line-height:var(--h2-line-height);
  font-family: var(--title-font);
  font-weight: 600;
}

h3,.font-h3{
  font-size:var(--h3-font-size);
  line-height:var(--h3-line-height);
  font-family: var(--title-font);
  font-weight: 600;
}

h4,.font-h4{
  font-size:var(--h4-font-size);
  line-height:var(--h4-line-height);
  font-family: var(--title-font);
  font-weight: 600;
}

h5,.font-h5{
  font-size:var(--h5-font-size);
  line-height:var(--h5-line-height);
  font-family: var(--title-font);
  font-weight: 600;
}

h6,.font-h6{
  font-size:var(--h6-font-size);
  line-height:var(--h6-line-height);
  font-family: var(--title-font);
  font-weight: 600;
}

.font-text-1{
  font-size:var(--text-1-font-size);
  line-height:var(--text-1-line-height);
  font-family: var(--body-font);
  font-weight: 500;
}

.font-text-2{
  font-size:var(--text-2-font-size);
  line-height:var(--text-2-line-height);
  font-family: var(--body-font);
  font-weight: 500;
}

.font-text-3{
  font-size:var(--text-3-font-size);
  line-height:var(--text-3-line-height);
  font-family: var(--body-font);
  font-weight: 500;
}

.font-text-3-2{
  font-size:var(--text-3-font-size);
  line-height:var(--text-3-line-height);
  font-family: var(--body-font);
  font-weight: 600;
}

.font-text-4{
  font-size:var(--text-4-font-size);
  line-height:var(--text-4-line-height);
  font-family: var(--body-font);
  font-weight: 500;
}

.font-text-5{
  font-size:var(--text-5-font-size);
  line-height:var(--text-5-line-height);
  font-family: var(--body-font);
  font-weight: 500;
}

.font-price-1{
  font-size:var(--text-price-1-font-size);
  line-height:var(--text-price-1-line-height);
  font-family: var(--body-font);
  font-weight: 600;
}

.font-price-2{
  font-size:var(--text-price-2-font-size);
  line-height:var(--text-price-2-line-height);
  font-family: var(--body-font);
  font-weight: 600;
}

button,
.button{
  font-family: var(--button-font);
  font-size:var(--text-button-1-font-size);
  line-height:var(--text-button-1-line-height);
  text-transform: var(--button-transform);
  font-weight: 500;
  cursor: pointer;
}

.v-button{
  font-family: var(--button-font);
  font-size:var(--text-button-1-font-size);
  line-height:var(--text-button-1-line-height);
  text-transform: var(--button-transform);
  font-weight: 500;
  padding:15px 24px;
  color: rgb(var(--color-button-text));
  box-shadow: inset 0 0 0 var(--button-border-width, 1px) rgb(var(--color-button-border),0.3);
  background-color: rgb(var(--color-button-background));
  text-decoration: none;
  border: 0;
  overflow: hidden;
  display: flex;
  gap: 10px;
}

.v-button:hover,
.v-button.v-button--secondary{
  box-shadow: inset 0 0 0 var(--button-border-width, 1px) rgb(var(--color-button-secondary-border),0.3);
  color: rgb(var(--color-button-secondary-text));
  background-color: rgb(var(--color-button-secondary-background));
}

.v-button.rounded{
  border-radius:var(--button-border-radius);
}

.v-button .button-icon{
  position: relative;
  width: 9px;
  height: 9px;
  display: inline-block;
}

.v-button .button-icon .icon-1,
.v-button .button-icon .icon-2{
  transition: all 0.3s;
}
.v-button .button-icon .icon-1{
  position: absolute;
  opacity: 0;
  transform: translateX(-32px) translateY(32px);
}
.v-button .button-icon .icon-2{
  position: absolute;
  opacity: 1;
  transform: translateX(0px) translateY(0px);
}

.v-button:hover .icon-1{
  opacity: 1;
  transform: none;
}

.v-button:hover .icon-2{
  opacity: 0;
  transform: translateX(32px) translateY(-32px);
}

.font-button-1{
  font-family: var(--button-font);
  font-size:var(--text-button-1-font-size);
  line-height:var(--text-button-1-line-height);
  text-transform: var(--button-transform);
  font-weight: 500;
}

.font-button-2{
  font-family: var(--button-font);
  font-size:var(--text-button-2-font-size);
  line-height:var(--text-button-2-line-height);
  text-transform: var(--button-transform);
  font-weight: 500;
}
.empty-image-class{
  background-color: rgba(var(--color-text), 0.05);
  width:100%;
  height:100%;
}

section{
  background-color: rgba(var(--color-background));
}

img{
  max-width: 100%;
  height: 100%;
  object-fit:cover;
}

.w100{
  width: 100%;
}

.h100{
  height: 100%;
}

v-image{
  width: 100%;
  height: 100%;
  display: flex;
  aspect-ratio: var(--aspect-ratio);
}

v-image .placeholder{
  background-color: rgba(43,43,43,0.2);
}
.fit-contain{
  object-fit:contain;
}
.fit-fill{
  object-fit: fill;
}
.fit-cover{
  object-fit: cover;
}
.min-w-full {
  min-width: 100%;
}

.max-w-full {
  max-width: 100%;
}

.max-w-2xs {
  max-width: 365px;
}

.max-w-xs {
  max-width: 530px;
}

.max-w-sm {
  max-width: 672px;
}

.max-w-md {
  max-width: 864px;
}

.max-w-lg {
  max-width: 1024px;
}

.max-w-xl {
  max-width: 1216px;
}

.max-w-2xl {
  max-width: 1376px;
}

.font-weight-700{
  font-weight: 700;
}
.font-weight-600{
  font-weight: 600;
}
.font-weight-500{
  font-weight: 500;
}
.font-weight-400{
  font-weight: 400;
}
.font-weight-300{
  font-weight: 300;
}

.opacity-10{
  opacity: 1;
}
.opacity-9{
  opacity: 0.9;
}
.opacity-8{
  opacity: 0.8;
}
.opacity-7{
  opacity: 0.7;
}
.opacity-6{
  opacity: 0.6;
}
.opacity-5{
  opacity: 0.5;
}
.opacity-4{
  opacity: 0.5;
}
.opacity-3{
  opacity: 0.3;
}
.opacity-2{
  opacity: 0.2;
}
.opacity-1{
  opacity: 0.1;
}

.page-padding{
    padding-inline: var(--page-padding);
}

.page-width{
    width: 100%;
    max-width: var(--page-width);
    margin: auto;
}

.block-richtext{
  color: var(--color-light-text);
}

/* @media(min-width:1440px){
  :root {
    --h0-font-size:calc(var(--title-scale) * 90px);
    --h1-font-size:calc(var(--title-scale) * 60px);
    --h2-font-size:calc(var(--title-scale) * 48px);
    --h3-font-size:calc(var(--title-scale) * 36px);
    --h4-font-size:calc(var(--title-scale) * 24px);
    --h5-font-size:calc(var(--title-scale) * 18px);

    --text-1-font-size:calc(var(--body-scale) * 20px);
    --text-2-font-size:calc(var(--body-scale) * 18px);
    --text-3-font-size:calc(var(--body-scale) * 16px);
    --text-4-font-size:calc(var(--body-scale) * 14px);
    --text-5-font-size:calc(var(--body-scale) * 12px);

    --text-price-font-size:calc(var(--body-scale) * 18px);
    --text-button-font-size:calc(var(--body-scale) * 16px);
  }
} */

/* @media (max-width: 1024px) {
  :root {
    --h0-font-size:calc(var(--title-scale) * 80px);
    --h1-font-size:calc(var(--title-scale) * 58px);
    --h2-font-size:calc(var(--title-scale) * 48px);
    --h3-font-size:calc(var(--title-scale) * 38px);
    --h4-font-size:calc(var(--title-scale) * 26px);
    --h5-font-size:calc(var(--title-scale) * 20px);

    --text-1-font-size:calc(var(--body-scale) * 22px);
    --text-2-font-size:calc(var(--body-scale) * 20px);
    --text-3-font-size:calc(var(--body-scale) * 18px);
    --text-4-font-size:calc(var(--body-scale) * 16px);
    --text-5-font-size:calc(var(--body-scale) * 14px);
    --text-price-font-size:calc(var(--body-scale) * 20px);
    --text-button-font-size:calc(var(--body-scale) * 18px);

    --page-padding:35px;
  }
} */

@media (max-width: 959px) {
    :root {
        --h0-font-size:calc(var(--title-scale) * 10.6667vw);

        --h1-font-size:calc(var(--title-scale) * 6.6667vw);
        --h1-line-height:calc(var(--title-scale) * 7.2vw);

        --h2-font-size:calc(var(--title-scale) * 5.6vw);
        --h2-line-height:calc(var(--title-scale) * 6.1333vw);

        --h3-font-size:calc(var(--title-scale) * 4.8vw);
        --h3-line-height:calc(var(--title-scale) * 5.3333vw);

        --h4-font-size:calc(var(--title-scale) * 4.2667vw);
        --h4-line-height:calc(var(--title-scale) * 4.8vw);

        --h5-font-size:calc(var(--title-scale) * 4vw);
        --h5-line-height:calc(var(--title-scale) * 4.5333vw);

        --h6-font-size:calc(var(--title-scale) * 3.7333vw);
        --h6-line-height:calc(var(--title-scale) * 4.2667vw);

        --text-1-font-size:calc(var(--body-scale) * 3.7333vw);
        --text-1-line-height:calc(var(--body-scale) * 4.2667vw);

        --text-2-font-size:calc(var(--body-scale) * 3.4667vw);
        --text-2-line-height:calc(var(--body-scale) * 4vw);

        --text-3-font-size:calc(var(--body-scale) * 3.2vw);
        --text-3-line-height:calc(var(--body-scale) * 3.7333vw);

        --text-4-font-size:calc(var(--body-scale) * 2.9333vw);
        --text-4-line-height:calc(var(--body-scale) * 3.4667vw);

        --text-5-font-size:calc(var(--body-scale) * 2.6667vw);
        --text-5-line-height:calc(var(--body-scale) * 3.2vw);

        --text-price-1-font-size:calc(var(--body-scale) * 4.5333vw);
        --text-price-1-line-height:calc(var(--body-scale) * 5.0667vw);

        --text-price-2-font-size:calc(var(--body-scale) * 3.2vw);
        --text-price-2-line-height:calc(var(--body-scale) * 3.7333vw);

        --text-button-1-font-size:calc(var(--body-scale) * 3.2vw);
        --text-button-1-line-height:calc(var(--body-scale) * 3.4667vw);

        --text-button-2-font-size:calc(var(--body-scale) * 4vw);
        --text-button-2-line-height:calc(var(--body-scale) * 4.5333vw);

        --page-padding:20px;
    }

    .v-button{
        padding:2.1333vw 4vw;
    }
    .mobile-text-left{
        text-align: left;
    }
    .mobile-text-center{
        text-align: center;
    }
    .mobile-text-right{
        text-align: right;
    }
    v-image{
      aspect-ratio: var(--mobile-aspect-ratio);
    }
}

@media(min-width:960px){
    .pc-hidden{
        display: none !important;
    }
}

@media(max-width:959px){
    .mobile-hidden{
        display: none !important;
    }
}
/* XOD mobile rhythm: shared typography and theme-owned controls only. */
@media (max-width: 959px) {
  :root {
    --h1-font-size: 32px; --h1-line-height: 1.15;
    --h2-font-size: 24px; --h2-line-height: 1.2;
    --h3-font-size: 20px; --h3-line-height: 1.25;
    --h4-font-size: 20px; --h4-line-height: 1.3;
    --h5-font-size: 18px; --h5-line-height: 1.35;
    --h6-font-size: 16px; --h6-line-height: 1.4;
    --text-1-font-size: 16px; --text-1-line-height: 1.5;
    --text-2-font-size: 14px; --text-2-line-height: 1.55;
    --text-3-font-size: 14px; --text-3-line-height: 1.55;
    --text-4-font-size: 12px; --text-4-line-height: 1.6;
    --text-5-font-size: 12px; --text-5-line-height: 1.6;
    --text-button-1-font-size: 16px; --text-button-1-line-height: 1.25;
    --text-button-2-font-size: 14px; --text-button-2-line-height: 1.4;
    --xod-mobile-accent: #f5af22;
    --xod-mobile-radius: 6px;
  }
  body main .v-button:not(.media-main-button):not(.product-tabs-title-item) {
    min-height: 48px;
    border-radius: var(--xod-mobile-radius);
    padding: 12px 20px;
    font-size: 16px;
    line-height: 1.25;
    text-align: center;
    justify-content: center;
    align-items: center;
  }
  body main .v-button.button-border {
    min-height: 44px;
    padding: 10px 16px;
    font-size: 14px;
    line-height: 1.4;
  }
  body main .product-tabs-title-item { min-height: 44px; font-size: 14px; line-height: 1.4; }
  body main .block-heading.font-h1 { font-size: 32px; line-height: 1.15; }
  body .product-detail__title { font-size: 24px; line-height: 1.25; }
  body .xod-native-select { min-height: 48px; border-radius: var(--xod-mobile-radius); font-size: 16px; }
  body .product-detail .pay-button-buy-now { font-size: 16px; line-height: 1.25; min-height: 48px; }
  body .cart-checkout button[name="checkout"],
  body .main-cart-footer button[name="checkout"],
  body .cart-fixed-checkout button[name="checkout"] {
    --button-border-radius: 6px;
    --color-button-background: 245, 175, 34;
    --color-button-text: 25, 25, 25;
    min-height: 50px;
    border-radius: var(--xod-mobile-radius);
    background: var(--xod-mobile-accent);
    color: #191919;
    border-color: var(--xod-mobile-accent);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.25;
    text-align: center;
    justify-content: center;
  }
  body .cart-drawer .cart-item__title,
  body .main-cart-items__list .cart-item__title { font-size: 14px; line-height: 1.5; }
  body .xod-cart-selection { font-size: 14px; line-height: 1.55; }
  body .xod-cart-selection > p > span { font-size: 12px; line-height: 1.5; }
  body .xod-cart-selection strong { font-size: 16px; line-height: 1.5; }
  body .xod-cart-contents p,
  body .xod-cart-package-note { font-size: 14px; line-height: 1.55; }
  body .xod-cart-change > summary { font-size: 14px; line-height: 1.5; min-height: 44px; padding-block: 12px; }
  body .xod-cart-change .custom-select__trigger { font-size: 16px; border-radius: var(--xod-mobile-radius); }
  body .cart-drawer .cart-item__total-final { font-size: 16px; line-height: 1.4; }
  body .footer .footer-content-transparent-left-top-form button {
    min-height: 48px;
    border-radius: var(--xod-mobile-radius);
    background: var(--xod-mobile-accent);
    color: #191919;
    font-size: 16px;
    line-height: 1.25;
  }
  body .footer .field { border-radius: var(--xod-mobile-radius); }
  body .footer .subscribe_heading { font-size: 24px; line-height: 1.25; }
}

/* XOD desktop rhythm. Separate breakpoint preserves the verified mobile rules. */
@media (min-width: 960px) {
  :root {
    --h1-font-size: 36px; --h1-line-height: 1.2;
    --h2-font-size: 28px; --h2-line-height: 1.25;
    --h3-font-size: 20px; --h3-line-height: 1.3;
    --text-1-line-height: 1.5;
    --text-2-line-height: 1.5;
    --text-3-line-height: 1.5;
    --text-4-line-height: 1.55;
    --text-button-1-font-size: 16px; --text-button-1-line-height: 1.25;
    --text-button-2-font-size: 16px; --text-button-2-line-height: 1.25;
    --xod-desktop-accent: #f5af22;
  }
  body main .v-button:not(.media-main-button):not(.product-tabs-title-item) {
    min-height: 48px;
    padding: 12px 24px;
    border-radius: 6px;
    font-size: 16px;
    line-height: 1.25;
    text-align: center;
    justify-content: center;
    align-items: center;
  }
  body main .product-tabs-title-item {
    min-height: 44px;
    font-size: 16px;
    line-height: 1.25;
  }
  body #nav-xod-home-hero .v-button,
  body #nav-xod-home-installation .v-button { font-size: 16px; line-height: 1.25; }
  body #member-system-plugin > button[aria-label="Rewards"][aria-expanded="false"] {
    left: 84px !important;
    bottom: 24px !important;
  }
  body .product-detail__title { font-size: 30px; line-height: 1.25; }
  body .xod-config-heading { font-size: 18px; line-height: 1.4; }
  body .xod-option-row label,
  body .xod-bundle-heading { font-size: 14px; line-height: 1.5; }
  body .xod-native-select { min-height: 48px; font-size: 16px; border-radius: 6px; }
  body .xod-bundle-options { gap: 12px; }
  body .xod-bundle-options button { padding: 12px; }
  body .xod-bundle-options button strong,
  body .xod-selection { font-size: 14px; line-height: 1.55; }
  body .xod-selection { padding: 16px; }
  body .xod-selection-price { font-size: 16px; line-height: 1.5; }
  body .xod-fitment-note,
  body .xod-fitment-note p,
  body .xod-fitment-note summary,
  body .xod-fitment-note a,
  body .xod-included-list,
  body .xod-duplicate-note { font-size: 14px; line-height: 1.55; }
  body .product-detail button[name="add"],
  body .product-detail .pay-button-buy-now {
    min-height: 48px;
    font-size: 16px;
    line-height: 1.25;
    border-radius: 6px;
    text-align: center;
    justify-content: center;
  }
  body .cart-checkout button[name="checkout"],
  body .main-cart-footer button[name="checkout"],
  body .cart-fixed-checkout button[name="checkout"] {
    --button-border-radius: 6px;
    --color-button-background: 245, 175, 34;
    --color-button-text: 25, 25, 25;
    min-height: 50px;
    border-radius: 6px;
    background: var(--xod-desktop-accent);
    color: #191919;
    border-color: var(--xod-desktop-accent);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.25;
    text-align: center;
    justify-content: center;
  }
  body .cart-drawer .cart-item__title,
  body .main-cart-items__list .cart-item__title { font-size: 16px; line-height: 1.4; }
  body .xod-cart-selection,
  body .xod-cart-contents p,
  body .xod-cart-package-note { font-size: 14px; line-height: 1.55; }
  body .xod-cart-selection strong,
  body .cart-drawer .cart-item__total-final { font-size: 16px; line-height: 1.5; }
  body .xod-cart-selection > p > span { font-size: 12px; line-height: 1.5; }
  body .xod-cart-change > summary { font-size: 14px; line-height: 1.5; padding-block: 12px; }
  body .xod-cart-change .custom-select__trigger { font-size: 16px; border-radius: 6px; }
  body .footer .subscribe_heading { font-size: 28px; line-height: 1.25; }
  body .footer .footer-content-transparent-left-top-form button {
    min-height: 48px;
    padding-inline: 20px;
    border-radius: 6px;
    background: var(--xod-desktop-accent);
    color: #191919;
    font-size: 16px;
    line-height: 1.25;
  }
  body .footer .field { border-radius: 6px; min-height: 50px; }
}

/* XOD final editorial rhythm: shared hierarchy, native apps keep their controls. */
:root { --xod-page-title:36px; --xod-section-title:28px; --xod-subtitle:20px; }
body main :is(.main-page__title,.main-article__title,.main-collection-cover h1) {
 font-size:var(--xod-page-title)!important; line-height:1.2!important; letter-spacing:-.025em; text-transform:none!important;
}
body main .product-detail__title { font-size:30px!important; line-height:1.25!important; }
body main :is(.main-blog__title,.block-heading.font-h2) { font-size:var(--xod-section-title)!important; line-height:1.25!important; }
body main :is(.product-description-content,.main-article__content,.main-page__content) h2 { font-size:var(--xod-section-title)!important; line-height:1.3!important; }
body main :is(.product-description-content,.main-article__content,.main-page__content) h3 { font-size:var(--xod-subtitle)!important; line-height:1.4!important; }
body main :is(.product-description-content,.main-article__content,.main-page__content) :is(p,li) { font-size:16px; line-height:1.7; }
body main .main-article__content p { font-size:16px!important; line-height:1.75!important; }
body main .main-page__content :is([class$="-updated"],figcaption) { font-size:13px; line-height:1.5; }
body main .main-page__title { margin-bottom:28px; }
body #nav-xod-blog-guides .block-heading { font-size:40px!important; line-height:1.15!important; }
body #nav-xod-blog-guides .block-heading::before { content:none!important; display:none!important; }
body #nav-xod-blog-guides .block-richtext { font-size:16px; line-height:1.65; }
body #plugin-product-comment { font-family:inherit; font-size:16px; line-height:1.6; scroll-margin-top:100px; padding-block:32px; }
body #plugin-product-comment .plugin-product-comment-tab-list { gap:24px; flex-wrap:wrap; }
body #plugin-product-comment .plugin-product-comment-tab-list-item { font-size:20px!important; line-height:1.35!important; white-space:normal; padding-block:12px; }
body #plugin-product-comment :is(.isv-web-btn,.plugin-product-comment-showMore) { border-radius:6px; min-height:44px; }
body .plugin-product-comment-product-subTitle-start:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
@media(max-width:959px) {
 :root { --xod-page-title:28px; --xod-section-title:24px; --xod-subtitle:20px; }
 body main .product-detail__title { font-size:24px!important; }
 body #nav-xod-blog-guides .block-heading { font-size:30px!important; }
 body #plugin-product-comment { padding-block:24px; scroll-margin-top:80px; }
 body #plugin-product-comment .plugin-product-comment-tab-list { gap:16px; }
 body #plugin-product-comment .plugin-product-comment-tab-list-item { font-size:16px!important; }
 body main .main-page__title { margin-bottom:20px; }
}

/* Native Product Reviews: readable copy and compact separation. */
body #plugin-product-comment .plugin-product-comment-list-wrap { margin-block:0!important; }
body #plugin-product-comment .plugin-product-comment-tab { margin-top:0!important; }
body #plugin-product-comment .plugin-product-comment-content { font-size:16px!important; line-height:1.65!important; overflow-wrap:anywhere; }
body #plugin-product-comment :is(.plugin-product-comment-nicknameskuAttributes,.plugin-product-comment-date,.plugin-product-comment-name) { font-size:13px!important; line-height:1.5!important; }
body #plugin-product-comment .qualified-name { font-size:12px!important; line-height:1.2!important; }
body #plugin-product-comment .plugin-product-comment-commentIcon { min-width:44px; min-height:44px; }

/* Collection gap must be included in the column calculation. */
body main .main-collection__list { grid-template-columns:repeat(var(--desktop-columns),minmax(0,1fr)); }
body main .main-collection__list > li { min-width:0; }
@media(max-width:959px) { body main .main-collection__list { grid-template-columns:repeat(var(--mobile-columns),minmax(0,1fr)); } }

body .main-search__title { font-size:var(--xod-page-title)!important; line-height:1.2!important; }
body [data-settings-id="shopline-section-xod-native-product-reviews"] { scroll-margin-top:100px; }
@media(max-width:959px){ body [data-settings-id="shopline-section-xod-native-product-reviews"] { scroll-margin-top:70px; } }

/* The review lightbox is mounted outside the list and uses the same reading sizes. */
body .plugin-product-comment-modal-content .plugin-product-comment-content { font-size:16px!important; line-height:1.65!important; }
body .plugin-product-comment-modal-content .plugin-product-comment-userInfoNameSkuTime { font-size:13px!important; line-height:1.5!important; }
body .plugin-product-comment-modal-content .qualified-name { font-size:12px!important; line-height:1.2!important; }
body .plugin-product-comment-modal-content .plugin-product-comment-noCommentReviewTip { font-size:14px!important; }
body #plugin-product-comment .plugin-product-comment-paginationTrigger { font-size:14px; min-width:40px; min-height:44px; }

/* XOD final audit: quiet editorial styling for the existing About content. */
.xod-about-page h3 { border-left: 0 !important; padding-left: 0 !important; }
.xod-about-page :is(.xod-note, .xod-blue-note) { background: transparent !important; border: 0 !important; border-top: 1px solid #dedede !important; border-radius: 0 !important; padding: 24px 0 !important; }
.xod-about-page .xod-about-subtitle { color: inherit !important; }
.xod-about-page :is(.xod-card, .xod-media-card) { box-shadow: none !important; border-radius: 6px !important; }

/* Section spacing belongs to the outer recommendation section only. */
.section-recommended-product { padding-top: 0 !important; padding-bottom: 0 !important; }

.xod-knowledge-base { overflow-wrap: anywhere; }
.xod-knowledge-base :is(p,li) { font-size: 16px; line-height: 1.75; }
.xod-knowledge-base h2:not(:first-child) { margin-top: 48px; }
.xod-knowledge-base h3 { margin-top: 32px; }

/* Keep payment controls in place while totals are being confirmed. */
theme-main-cart-footer:has([data-xod-seel-checkout-notice]) #dynamic-checkout-cart { opacity: .55; pointer-events: none; }
button[data-xod-seel-checkout-lock] { opacity: .55; cursor: wait; }
[data-xod-seel-checkout-notice] { margin: 12px 0 0; font-size: 14px; line-height: 1.5; color: #555; }
[data-xod-seel-checkout-notice] button { font: inherit; text-decoration: underline; border: 0; background: transparent; padding: 4px; }

.xod-knowledge-base p { margin: 0 0 16px; }
.xod-knowledge-base :is(h2,h3) { margin-bottom: 16px; }
