/*
 * Ilex product presentation. Locally qualified; production review required.
 * Uses the existing gated body class and native Flatsome containers.
 * No template replacement, hidden-panel overrides, fixed image heights,
 * order changes, new controls, shipping calculations or content injection.
 */
@font-face {
  font-family: IlexProductLato;
  src: url(lato-latin-400-normal.woff2) format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: IlexProductLato;
  src: url(lato-latin-700-normal.woff2) format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
body.ilex-product-review {
  --ilex-product-canvas: #f4f0e5;
  --ilex-product-surface: #fffef9;
  --ilex-product-white: #fff;
  --ilex-product-delivery: #e9eddf;
  --ilex-product-red: #dd3333;
  --ilex-product-red-hover: #b42323;
  --ilex-product-ink: #41443d;
  --ilex-product-green: #375b4d;
  --ilex-product-muted: #62695c;
  --ilex-product-border: #dedfd2;
  --ilex-product-radius: 14px;
}

/* Product-only canvas: the site header, footer and notices stay native. */
.ilex-product-review .product-container {
  background: var(--ilex-product-canvas);
}
.ilex-product-review .product-main,
.ilex-product-review .product-footer {
  font-family: IlexProductLato, Lato, sans-serif;
  color: var(--ilex-product-ink);
  background: var(--ilex-product-canvas);
  line-height: 1.65;
}
.ilex-product-review .product-main {
  padding-top: 32px;
  padding-bottom: 8px;
}
.ilex-product-review .product-footer {
  padding-bottom: 40px;
}
.ilex-product-review .product-main > .content-row > .product-gallery,
.ilex-product-review .product-main > .content-row > .product-info {
  min-width: 0;
}

/* Keep native columns, gallery sizing, lightbox triggers and image tools. */
.ilex-product-review .product-gallery .product-images,
.ilex-product-review .product-gallery .product-gallery-default {
  background: var(--ilex-product-white);
  border: 1px solid var(--ilex-product-border);
  border-radius: var(--ilex-product-radius);
}
.ilex-product-review .product-info.summary h1.product-title {
  color: var(--ilex-product-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.8rem, 3vw, 2.65rem);
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -0.025em;
  overflow-wrap: anywhere;
  margin-bottom: 14px;
}
.ilex-product-review .product-info.summary .price,
.ilex-product-review .product-info.summary .price .amount {
  color: var(--ilex-product-green);
}
.ilex-product-review .product-info.summary .price {
  line-height: 1.35;
  margin: 0 0 18px;
}
.ilex-product-review .product-info.summary .price del,
.ilex-product-review .product-info.summary .price del .amount {
  color: var(--ilex-product-muted);
}
.ilex-product-review .product-info.summary .product_meta {
  color: var(--ilex-product-muted);
  font-size: 0.875rem;
  line-height: 1.6;
}
.ilex-product-review .product-info.summary .product_meta a {
  color: var(--ilex-product-green);
  text-underline-offset: 3px;
}
.ilex-product-review .product-short-description {
  margin: 24px 0;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

/* Styling, not form replacement. Native form flex/variation layout stays intact. */
.ilex-product-review .summary .button,
.ilex-product-review .summary button,
.ilex-product-review #review_form input.submit {
  border-radius: 8px;
  font-family: IlexProductLato, Lato, sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  min-height: 44px;
  letter-spacing: 0;
  text-transform: none;
}
.ilex-product-review .product-type-simple .product-main .summary form.cart > .single_add_to_cart_button,
.ilex-product-review .product-type-variable .product-main .summary .woocommerce-variation-add-to-cart > .single_add_to_cart_button {
  flex: 1 1 12rem;
  min-width: 0;
  max-width: 100%;
  margin: 0;
}
.ilex-product-review .summary .single_add_to_cart_button,
.ilex-product-review #review_form input.submit {
  background: var(--ilex-product-red);
  border-color: var(--ilex-product-red);
  color: var(--ilex-product-white);
  white-space: normal;
  line-height: 1.4;
  padding: 10px 18px;
}
.ilex-product-review .summary .single_add_to_cart_button:hover,
.ilex-product-review #review_form input.submit:hover {
  background: var(--ilex-product-red-hover);
  border-color: var(--ilex-product-red-hover);
  color: var(--ilex-product-white);
}
.ilex-product-review .summary .variations {
  max-width: 100%;
}
.ilex-product-review .summary .variations select {
  max-width: 100%;
}

/* Genuine native rating data and an honest unrated label. */
.ilex-product-review .ilex-product-rating {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  color: var(--ilex-product-muted);
  font-size: 0.875rem;
  margin: 8px 0 16px;
}
.ilex-product-review .ilex-product-rating .star-rating {
  margin: 0;
  color: var(--ilex-product-green);
}
.ilex-product-review .ilex-product-rating a {
  color: var(--ilex-product-green);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Deliberately a real basket link, not the reference's mock postcode form. */
.ilex-product-review .ilex-product-delivery {
  background: var(--ilex-product-delivery);
  border: 1px solid var(--ilex-product-border);
  border-radius: var(--ilex-product-radius);
  padding: 22px;
  margin: 24px 0;
}
.ilex-product-review .ilex-product-delivery h2 {
  color: var(--ilex-product-ink);
  font-size: 1.0625rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 8px;
}
.ilex-product-review .ilex-product-delivery p {
  color: var(--ilex-product-green);
  font-size: 0.875rem;
  line-height: 1.65;
  margin: 0 0 14px;
}
.ilex-product-review .summary .ilex-delivery-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: normal;
  background: var(--ilex-product-surface);
  border: 1px solid var(--ilex-product-green);
  color: var(--ilex-product-green);
  margin: 0;
  padding: 10px 16px;
  line-height: 1.4;
  box-shadow: none;
}
.ilex-product-review .summary .ilex-delivery-link:hover {
  background: var(--ilex-product-white);
  color: var(--ilex-product-ink);
  border-color: var(--ilex-product-ink);
}

/*
 * Card around the existing tabs. Do not override panel display, height,
 * visibility or opacity: native tabs/accordion and every callback remain.
 */
.ilex-product-review .product-footer .woocommerce-tabs {
  background: var(--ilex-product-surface);
  border: 1px solid var(--ilex-product-border);
  border-radius: var(--ilex-product-radius);
  padding: 24px;
  margin-bottom: 32px;
}
/* Cancel native tabs' -31px edge overlap inside this new padded card. */
.ilex-product-review .product-footer .woocommerce-tabs > .nav-line-grow,
.ilex-product-review .product-footer .woocommerce-tabs > .nav-line:not(.nav-vertical) {
  margin-top: 0;
}
.ilex-product-review .product-footer .woocommerce-tabs .tab-panels {
  padding-top: 20px;
}
.ilex-product-review .product-footer .woocommerce-tabs .product-tabs a {
  color: var(--ilex-product-green);
  letter-spacing: 0;
  text-transform: none;
}
.ilex-product-review .product-footer .woocommerce-tabs .entry-content {
  overflow-wrap: anywhere;
}
.ilex-product-review .product-footer .woocommerce-tabs h2,
.ilex-product-review .product-footer .woocommerce-tabs h3 {
  color: var(--ilex-product-ink);
  line-height: 1.35;
  letter-spacing: 0;
}
.ilex-product-review .product-footer #reviews .commentlist {
  margin-bottom: 24px;
}
.ilex-product-review .product-footer #reviews .comment-text {
  line-height: 1.65;
}

/* Existing related items/counts/links/prices and wishlist hooks are unchanged. */
.ilex-product-review .related-products-wrapper {
  border-top: 0;
  padding-top: 0;
}
.ilex-product-review .related-products-wrapper .product-section-title {
  color: var(--ilex-product-ink);
  font-size: 1.375rem;
  font-weight: 400;
  line-height: 1.35;
  text-transform: none;
  letter-spacing: 0;
  margin-bottom: 12px;
}
.ilex-product-review .related-products-wrapper .product-small.col > .col-inner {
  background: var(--ilex-product-surface);
  border: 1px solid var(--ilex-product-border);
  border-radius: var(--ilex-product-radius);
}
.ilex-product-review .related-products-wrapper .box-text {
  padding: 18px;
  color: var(--ilex-product-ink);
}
.ilex-product-review .related-products-wrapper .name a,
.ilex-product-review .related-products-wrapper .price,
.ilex-product-review .related-products-wrapper .price .amount {
  color: var(--ilex-product-green);
}
.ilex-product-review .related-products-wrapper .name {
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.ilex-product-review .related-products-wrapper .box-text .add-to-cart-button > .button {
  border-radius: 8px;
  background: var(--ilex-product-red);
  border-color: var(--ilex-product-red);
  color: var(--ilex-product-white);
  min-height: 44px;
  padding: 10px 14px;
  line-height: 1.4;
  white-space: normal;
  letter-spacing: 0;
  text-transform: none;
}
.ilex-product-review .related-products-wrapper .box-text .add-to-cart-button > .button:hover {
  background: var(--ilex-product-red-hover);
  border-color: var(--ilex-product-red-hover);
}

/* Focus only. Do not alter the interactive state of any native control. */
.ilex-product-review .summary a:focus-visible,
.ilex-product-review .summary button:focus-visible,
.ilex-product-review .summary input:focus-visible,
.ilex-product-review .summary select:focus-visible,
.ilex-product-review .summary textarea:focus-visible,
.ilex-product-review .product-container a:focus-visible,
.ilex-product-review .product-container button:focus-visible,
.ilex-product-review .product-container input:focus-visible,
.ilex-product-review .product-container select:focus-visible,
.ilex-product-review .product-container textarea:focus-visible,
.ilex-product-review .pswp button:focus-visible,
.ilex-product-review .mfp-wrap button:focus-visible,
.ilex-product-review .mfp-wrap a:focus-visible {
  outline: 3px solid #242424;
  outline-offset: 3px;
}

/* Native PhotoSwipe / Magnific lightbox treatment; no interaction replacement. */
.ilex-product-review .pswp__bg { background: rgba(0, 0, 0, .66); }
.ilex-product-review .pswp__img { background: #fff; }
.ilex-product-review .mfp-bg { background: rgba(0, 0, 0, .66); }
.ilex-product-review .mfp-figure img.mfp-img { background: #fff; }

@media (max-width: 849px) {
  .ilex-product-review .product-main { padding-top: 24px; }
  .ilex-product-review .product-footer { padding-bottom: 24px; }
}
@media (max-width: 549px) {
  .ilex-product-review .product-main { padding-top: 16px; }
  .ilex-product-review .product-info.summary h1.product-title { font-size: 1.8rem; }
  .ilex-product-review .ilex-product-delivery { padding: 18px; }
  .ilex-product-review .product-footer .woocommerce-tabs { padding: 18px; }
  .ilex-product-review .related-products-wrapper .box-text { padding: 12px; }
  .ilex-product-review .summary form.cart { max-width: 100%; }
  .ilex-product-review .summary .ilex-delivery-link { width: 100%; }
}

/* Preserve gallery controls while rounding the image itself inside its card. */
.ilex-product-review .product-gallery .woocommerce-product-gallery__image img,
.ilex-product-review .related-products-wrapper .box-image img {
  border-radius: var(--ilex-product-radius) var(--ilex-product-radius) 0 0;
}
.ilex-product-review .summary .stock.in-stock { color: var(--ilex-product-green); }
.ilex-product-review .summary .stock.out-of-stock { color: var(--ilex-product-red-hover); }
.ilex-product-review .related-products-wrapper .box-text .add-to-cart-button > .button {
  font-family: IlexProductLato, Lato, sans-serif;
  font-size: 14px;
  font-weight: 700;
}

/* Reviewed global UX block342. Specificity overrides its retained inline style. */
body.ilex-product-review .custom-product-page.ux-layout-342 {
  background: var(--ilex-product-canvas);
  padding: 24px 0;
  font-family: IlexProductLato, Lato, sans-serif;
  color: var(--ilex-product-ink);
}
body.ilex-product-review .ux-layout-342 .ilex-native-product-layout { background: var(--ilex-product-canvas); }
body.ilex-product-review .ux-layout-342 .ilex-native-product-gallery,
body.ilex-product-review .ux-layout-342 .ilex-native-product-details { padding: 16px; min-width: 0; }
body.ilex-product-review .ux-layout-342 .ilex-native-product-gallery > .col-inner { max-width: none; }
body.ilex-product-review .ux-layout-342 .ilex-native-product-details > .col-inner {
  background: var(--ilex-product-surface);
  border-color: var(--ilex-product-border);
  padding: 24px;
}
body.ilex-product-review .ux-layout-342 .ilex-native-product-details h1 {
  color: var(--ilex-product-ink);
  font: 400 clamp(1.8rem, 3vw, 2.65rem)/1.15 Georgia, "Times New Roman", serif;
  letter-spacing: -.025em;
}
body.ilex-product-review .ux-layout-342 .ilex-native-product-details .price { color: var(--ilex-product-green); }
body.ilex-product-review .ux-layout-342 .ilex-native-product-details .single_add_to_cart_button {
  font: 700 14px/1.4 IlexProductLato, Lato, sans-serif;
  text-transform: none;
  letter-spacing: 0;
}
body.ilex-product-review .ux-layout-342 .ilex-native-product-details .single_add_to_cart_button:hover { background: var(--ilex-product-red-hover); }
body.ilex-product-review .ux-layout-342 .ilex-native-product-details .ilex-delivery-link { width: 100%; }
body.ilex-product-review .ux-layout-342 .ilex-native-delivery-help { font-size: 14px; line-height: 1.6; }
body.ilex-product-review .ux-layout-342 .ilex-native-delivery-help a { color: var(--ilex-product-green); text-decoration: underline; }
body.ilex-product-review .ux-layout-342 .ilex-ux-section { padding-bottom: 0; }
body.ilex-product-review .ux-layout-342 .woocommerce-tabs.wc-tabs-wrapper { margin-top: 24px; }
body.ilex-product-review .product-type-simple .ux-layout-342 .summary .add-to-cart-container form.cart {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}
@media (max-width: 549px) {
  body.ilex-product-review .custom-product-page.ux-layout-342 { padding-top: 8px; }
  body.ilex-product-review .ux-layout-342 .ilex-native-product-gallery,
  body.ilex-product-review .ux-layout-342 .ilex-native-product-details { padding: 12px; }
  body.ilex-product-review .ux-layout-342 .ilex-native-product-details > .col-inner { padding: 18px; }
  body.ilex-product-review .ux-layout-342 .ilex-native-product-details h1 { font-size: 1.8rem; }
}
