@font-face {
  font-family: "fl-icons";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/fl-icons.woff2") format("woff2");
}

:root {
  --corelie-navy: #002b49;
  --corelie-deep-navy: #062d49;
  --corelie-ink: #0b1d2b;
  --corelie-blue: #4ec1e0;
  --corelie-line: #e7e7e7;
  --corelie-muted: #5d6770;
  --corelie-max: 1250px;
}

html { scroll-behavior: smooth; }
body.corelie-storefront {
  background: #fff;
  color: var(--corelie-ink);
  font-family: Lato, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
}
body.corelie-storefront h1,
body.corelie-storefront h2,
body.corelie-storefront h3,
body.corelie-storefront h4,
body.corelie-storefront h5,
body.corelie-storefront h6,
body.corelie-storefront button,
body.corelie-storefront input,
body.corelie-storefront select,
body.corelie-storefront textarea { font-family: Lato, Arial, sans-serif; }
.corelie-storefront .elementor-heading-title { font-family: Lato, Arial, sans-serif !important; }
a { text-underline-offset: 2px; }
.site-main { min-height: 40vh; }
.ct-container-full { --theme-frame-size: 0px; }

/* Blocksy header */
#header [data-row="top"] {
  background: #0d2c54;
  color: #fff;
  min-height: 30px;
}
#header [data-row="top"] .ct-header-text {
  width: 100%;
  font-size: 12.8px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 16px;
  text-align: center;
  text-transform: uppercase;
}
#header [data-row="top"] .ct-header-text,
#header [data-row="top"] .ct-header-text * { color: #fff !important; opacity: 1 !important; }
#header [data-row="middle"] {
  background: #fff;
  border-bottom: 0;
  min-height: 80px;
}
#header .site-logo-container img { max-height: 29px; width: auto; }
#header .menu > li > a {
  color: #000;
  font-size: 12.8px;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 16px;
  text-transform: uppercase;
}
#header .menu > li > a:hover,
#header .menu > li.current-menu-item > a { color: #000; text-decoration: underline; text-underline-offset: 3px; }
#header [data-device="desktop"] .sub-menu {
  background: #fff;
  border: 2px solid #ddd;
  box-shadow: 1px 1px 15px rgba(0,0,0,.15);
  min-width: 260px;
  padding: 20px;
}
#header [data-device="desktop"] .sub-menu a {
  color: rgba(74,74,74,.85);
  display: block;
  font-family: Lato, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 20.8px;
  margin: 0 10px;
  padding: 10px 0;
}
#header [data-device="desktop"] .sub-menu li + li { border-top: 0; }
#header [data-device="desktop"] .sub-menu li:not(:last-child) > a { border-bottom: 1px solid #e5e5e5; }
#header .ct-header-cart,
#header .ct-header-search { color: #0b1d2b; }
#header [data-id="button"] .ct-button-ghost {
  --theme-button-background-initial-color: transparent;
  --theme-button-background-hover-color: transparent;
  --theme-button-text-initial-color: #0b1d2b;
  --theme-button-text-hover-color: #0b658b;
  border: 0;
  font-size: 12.8px;
  font-weight: 700;
  padding: 4px;
  text-transform: uppercase;
}
#header [data-id="cart"] .ct-label,
#header [data-id="search"] .ct-label { font-size: 12.8px; font-weight: 700; text-transform: uppercase; }
#header .ct-cart-item .ct-label::before { content: "CART / "; }
.ct-panel .ct-panel-content-inner { padding: 28px; }

/* Shared Elementor sections */
.corelie-section { padding: 54px 24px; }
.corelie-section--compact { padding-top: 34px; padding-bottom: 34px; }
.corelie-section--flush { padding: 0 !important; }
.corelie-section-title {
  color: #272f35;
  font-size: 21px;
  font-weight: 700;
  letter-spacing: .02em;
  margin: 0 0 30px;
  text-align: center;
  text-transform: uppercase;
}
.corelie-hero,
.corelie-wide-banner { overflow: hidden; position: relative; }
.corelie-hero .elementor-widget-image,
.corelie-hero .elementor-widget-image img,
.corelie-wide-banner .elementor-widget-image,
.corelie-wide-banner .elementor-widget-image img { display: block; width: 100%; }
.corelie-hero .elementor-widget-image img,
.corelie-wide-banner .elementor-widget-image img { object-fit: cover; }
.corelie-hero > .elementor-widget-image:nth-child(2) { display: none; }
.corelie-hero > .corelie-hero-copy,
.corelie-wide-banner > .corelie-hero-copy {
  color: #fff;
  left: 50%;
  position: absolute !important;
  text-align: center;
  top: 51%;
  transform: translate(-50%, -50%);
  width: min(680px, 88%);
  z-index: 2;
}
.corelie-hero > .corelie-hero-copy { color: var(--corelie-navy); }
.corelie-hero-copy h1 { color: inherit; font-size: clamp(27px, 2.65vw, 40px); margin-bottom: 20px; text-shadow: none; }
.corelie-hero-copy .elementor-widget-text-editor { font-size: clamp(13px, 1.25vw, 18px); margin: -12px 0 14px; }
.corelie-hero-copy .elementor-widget-text-editor p { margin: 0; }
.corelie-hero-title-default .corelie-hero > .corelie-hero-copy .elementor-widget-heading { visibility: hidden; }
.corelie-hero-subtitle-default .corelie-hero > .corelie-hero-copy .elementor-widget-text-editor { visibility: hidden; }
.corelie-hero-copy .elementor-button,
.corelie-wide-banner .elementor-button,
.corelie-home .elementor-button {
  background: #fff;
  border: 1px solid #fff;
  border-radius: 0;
  color: #0a2538;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .03em;
  min-height: 39px;
  padding: 12px 23px;
  text-transform: uppercase;
}
.corelie-hero > .corelie-hero-copy .elementor-button { border-radius: 999px; font-weight: 700; text-transform: none; }

/* Product grids and cards */
.corelie-product-grid { width: 100%; }
.corelie-product-grid--carousel .corelie-product-card[hidden] { display: none; }
.corelie-product-carousel__controls { align-items: center; display: flex; gap: 12px; justify-content: center; margin-top: 28px; }
.corelie-product-carousel__controls button {
  align-items: center;
  background: #fff;
  border: 0;
  border-radius: 0;
  color: #111;
  display: inline-flex;
  height: 100%;
  justify-content: center;
  min-height: 0;
  padding: 0;
  transition: transform .3s, opacity .3s, background .3s, box-shadow .3s;
  width: 30px;
}
.corelie-product-carousel__controls button:disabled { opacity: 0; pointer-events: none; }
.corelie-product-carousel__controls button:hover,
.corelie-product-carousel__controls button:focus-visible { opacity: 1; }
.corelie-product-carousel__icon { display: block; fill: currentColor; height: 30px; width: 30px; }
.corelie-product-carousel__status { color: var(--corelie-muted); font-size: 11px; min-width: 38px; text-align: center; }
.corelie-product-grid__heading {
  align-items: center;
  display: flex;
  gap: 22px;
  justify-content: center;
  margin: 0 0 34px;
  text-align: center;
  text-transform: uppercase;
}
.corelie-product-grid__heading::before,
.corelie-product-grid__heading::after { background: var(--corelie-line); content: ""; height: 1px; max-width: 220px; width: 15vw; }
.corelie-product-grid__heading h2 { color: #26333c; font-size: 18px; letter-spacing: .025em; margin: 0; text-transform: uppercase; }
.corelie-products {
  display: grid;
  gap: 42px 22px;
  grid-template-columns: repeat(var(--corelie-cols-desktop, 5), minmax(0, 1fr));
}
.corelie-product-card { min-width: 0; position: relative; text-align: center; }
.corelie-product-card__media { aspect-ratio: 1 / 1; display: block; margin-bottom: 14px; overflow: hidden; position: relative; }
.corelie-product-card__media-link { display: block; height: 100%; position: relative; width: 100%; }
.corelie-product-card__media img {
  height: 100%;
  inset: 0;
  object-fit: contain;
  position: absolute;
  transition: filter .6s, opacity .6s, transform .6s, box-shadow .3s;
  width: 100%;
}
.corelie-product-card__image--secondary { opacity: 0; z-index: 1; }
.corelie-product-card:hover .corelie-product-card__image--secondary,
.corelie-product-card:focus-within .corelie-product-card__image--secondary { opacity: 1; }
.corelie-product-card__quick-view,
.corelie-loop-quick-view {
  background: #000;
  bottom: 0;
  color: #fff !important;
  display: block;
  font-size: 13.6px;
  font-weight: 700;
  height: 33px;
  left: 0;
  letter-spacing: .02em;
  line-height: 33px;
  opacity: 0;
  position: absolute;
  right: 0;
  text-align: center;
  text-decoration: underline;
  text-transform: uppercase;
  transform: translateY(100%);
  transition: opacity .3s ease, transform .3s ease;
  z-index: 4;
}
.corelie-product-card:hover .corelie-product-card__quick-view,
.corelie-product-card:focus-within .corelie-product-card__quick-view,
.woocommerce ul.products li.product:hover .corelie-loop-quick-view,
.woocommerce ul.products li.product:focus-within .corelie-loop-quick-view { opacity: 1; transform: translateY(0); }
.corelie-product-card__price .sale-price { display: inline-flex; flex-direction: row; gap: 5px; }
.corelie-product-card__price .sale-price del { order: 0; }
.corelie-product-card__price .sale-price ins { order: 1; }
.corelie-product-card__sale,
.onsale {
  align-items: center;
  background: #020202 !important;
  border-radius: 999px !important;
  color: #fff !important;
  display: flex !important;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  height: 37px !important;
  justify-content: center;
  left: 4px !important;
  line-height: 1 !important;
  min-height: 0 !important;
  min-width: 0 !important;
  padding: 0 !important;
  position: absolute;
  text-transform: none;
  top: 4px !important;
  width: 37px !important;
  z-index: 3;
}
.corelie-product-card__brand { color: #777; font-size: 10.8px; letter-spacing: 0; line-height: 12.96px; margin: 10.08px 0 1.08px; text-transform: uppercase; }
.corelie-product-card__title { font-size: 14.4px; font-weight: 400; line-height: 20.16px; margin: 1.44px auto; max-width: none; min-height: 60.48px; }
.corelie-product-card__title a { color: #334862; }
.corelie-product-card__price { color: #777; font-size: 14.4px; line-height: 14.4px; margin: 0; }
.corelie-product-card__price del { color: #8d9498; margin-right: 5px; }
.corelie-product-card__price ins { color: #0a2e49; font-weight: 700; text-decoration: none; }
.corelie-buy-now,
.corelie-product-card__button,
.woocommerce ul.products li.product .button,
.single_add_to_cart_button,
.checkout-button,
#place_order {
  background: #050505 !important;
  border: 1px solid #050505 !important;
  border-radius: 0 !important;
  color: #fff !important;
  display: inline-flex;
  font-size: 15.52px !important;
  font-weight: 700 !important;
  justify-content: center;
  letter-spacing: .03em;
  line-height: 37.248px !important;
  min-height: 39.25px;
  padding: 0 18.624px !important;
  text-transform: uppercase;
}
.corelie-product-card__button:hover,
.corelie-buy-now:hover { background: #000 !important; border-color: #000 !important; color: #fff !important; }

/* Homepage cards, statistics and hotspots */
.corelie-brand-grid { display: grid; gap: 18px; grid-template-columns: repeat(var(--corelie-cols, 4), minmax(0, 1fr)); width: 100%; }
.corelie-brand-card { background: #fff; border: 1px solid #eceff1; overflow: hidden; }
.corelie-brand-card a { color: #1d2d38; display: block; }
.corelie-brand-card img { aspect-ratio: 1 / .87; display: block; object-fit: cover; transition: transform .3s ease; width: 100%; }
.corelie-brand-card h3 { font-size: 13px; letter-spacing: .04em; margin: 16px; text-transform: uppercase; }
.corelie-brand-card:hover img,
.corelie-brand-card:focus-within img { transform: scale(1.03); }
.corelie-hotspot { position: relative; width: 100%; }
.corelie-hotspot > img { display: block; width: 100%; }
.corelie-hotspot__point {
  align-items: center;
  background: #000 !important;
  border: 0;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0,0,0,.2) !important;
  color: #fff !important;
  display: flex;
  font-size: 0;
  height: 40px;
  justify-content: center;
  left: var(--x);
  padding: 0;
  position: absolute;
  text-decoration: none;
  top: var(--y);
  transform: none;
  transition: transform .2s, box-shadow .2s;
  translate: -50% -50%;
  width: 40px;
}
.corelie-hotspot__point:hover,
.corelie-hotspot__point:focus-visible {
  background: #000 !important;
  color: #fff !important;
  text-decoration: underline;
  transform: scale(1.1);
}
.corelie-hotspot__icon { display: block; height: 24px; width: 24px; }
.corelie-hotspot__point:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.corelie-social-stats { background: var(--corelie-blue); display: grid; grid-template-columns: repeat(var(--corelie-cols, 4), 1fr); width: 100%; }
.corelie-social-stat { align-items: center; color: #08263b; display: flex; font-size: 13px; font-weight: 800; gap: 12px; justify-content: center; min-height: 78px; padding: 12px; }
.corelie-social-stat img { height: 20px; object-fit: contain; width: 20px; }
.corelie-service-benefits {
  background: var(--corelie-navy);
  color: #fff;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: -2px !important;
  padding: 18px max(24px, calc((100vw - var(--corelie-max)) / 2));
}
.corelie-service-benefits > .elementor-widget { text-align: center; width: 100%; }
.corelie-service-benefits .elementor-icon-box-wrapper { align-items: center; display: flex; justify-content: center; }
.corelie-service-benefits .elementor-icon-box-icon { margin-right: 11px !important; }
.corelie-service-benefits .elementor-icon { color: #fff; font-size: 18px; }
.corelie-service-benefits .elementor-icon-box-title { color: #fff; font-size: 11px; margin: 0 0 2px; }
.corelie-service-benefits .elementor-icon-box-description { color: rgba(255,255,255,.75); font-size: 9px; margin: 0; }
.corelie-video-section .e-con-inner { max-width: 820px; }
.corelie-stay-connected > .elementor-widget-image,
.corelie-stay-connected > .corelie-stay-copy { flex: 1 1 50%; }
.corelie-stay-connected > .elementor-widget-image img { height: 100%; object-fit: cover; }
.corelie-stay-copy { align-items: flex-start; justify-content: center; padding: 42px; }
.corelie-stay-copy .elementor-widget-image img { max-width: 155px; }
.corelie-newsletter { margin: 0 auto; max-width: 760px; padding: 52px 24px 58px; text-align: center; }
.corelie-newsletter h2 { color: #152b3b; font-size: 26px; margin: 0 0 10px; }
.corelie-newsletter p { color: #59636b; margin: 0 0 22px; }
.corelie-newsletter__form { display: grid; gap: 8px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.35fr) auto; }
.corelie-newsletter input { border: 1px solid #ccd2d6; border-radius: 0; font-size: 12px; min-height: 42px; padding: 10px 12px; }
.corelie-newsletter button { background: var(--corelie-navy); border: 0; border-radius: 0; color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .04em; padding: 10px 23px; text-transform: uppercase; }
.corelie-newsletter__message { font-size: 13px; margin-top: 12px; min-height: 20px; }
.corelie-hp { left: -999em; position: absolute; }

/* WooCommerce */
.woocommerce .ct-container { max-width: var(--corelie-max); }
.post-type-archive-product .hero-section { display: none; }
.woocommerce ul.products { column-gap: 20px; row-gap: 20px; }
.woocommerce ul.products li.product { text-align: center; }
.woocommerce ul.products li.product figure,
.woocommerce ul.products li.product figure > .ct-media-container { aspect-ratio: 1 / 1 !important; height: auto !important; }
.woocommerce ul.products li.product figure { margin-bottom: 12px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color: #1d2d38; font-size: 13px; line-height: 1.4; min-height: 40px; }
.woocommerce ul.products li.product .entry-meta { order: 1; margin-bottom: 5px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { order: 2; }
.woocommerce ul.products li.product .price { color: #111; font-size: 13px; line-height: 1.2; order: 3; }
.woocommerce ul.products li.product .ct-woo-card-actions { order: 4; }
.woocommerce ul.products li.product img { aspect-ratio: 1 / 1 !important; height: 100% !important; object-fit: contain; }
.woocommerce-ordering select { border-radius: 0; min-height: 42px; }
.woocommerce .quantity input.qty { border-radius: 0; }
.single-product .product_title { color: #112a3b; font-size: 24px; line-height: 1.15; }
.single-product div.product .price { color: var(--corelie-navy); font-size: 19px; }
.single-product .entry-summary-items > * { --product-element-spacing: 20px !important; }
.single-product .entry-summary-items > .ct-product-add-to-cart > .cart { --theme-button-min-height: 43px !important; }
.single-product .woocommerce-product-gallery .flexy-view,
.single-product .woocommerce-product-gallery .flexy-items,
.single-product .woocommerce-product-gallery .flexy-item,
.single-product .woocommerce-product-gallery .flexy-item > .ct-media-container { aspect-ratio: 1 / 1 !important; }
.single-product .woocommerce-product-gallery .flexy-pills { display: block !important; overflow-x: auto; }
.single-product .woocommerce-product-gallery .flexy-pills > ol {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 10px;
  width: max-content !important;
}
.single-product .woocommerce-product-gallery .flexy-pills li { flex: 0 0 100px !important; height: 100px !important; width: 100px !important; }
.single-product .woocommerce-product-gallery .flexy-pills img { height: 100px !important; object-fit: cover; width: 100px !important; }
.single-product .corelie-buy-now { margin-left: 8px; }
.corelie-viewers { color: #44525d; font-size: 13px; margin: 14px 0; }
.woocommerce-tabs { margin-top: 50px; }
.woocommerce-cart-form,
.cart_totals,
.woocommerce-checkout-review-order,
.woocommerce form.login,
.woocommerce form.register { border-radius: 0 !important; }
.woocommerce-message,
.woocommerce-info { border-top-color: var(--corelie-blue); }
.woocommerce nav.woocommerce-pagination ul { border: 0; display: flex; gap: 6px; justify-content: center; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span { align-items: center; border: 1px solid #dfe3e5; display: flex; height: 38px; justify-content: center; min-width: 38px; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--corelie-navy); color: #fff; }

/* Empty cart and account shells measured against the public reference. The
 * Elementor heading and shortcode widgets remain separate and editable. */
body.woocommerce-cart .corelie-woocommerce-shell,
body.woocommerce-account .corelie-woocommerce-shell {
  padding: 0 !important;
}
body.woocommerce-cart .corelie-woocommerce-shell > .e-con-inner,
body.woocommerce-account .corelie-woocommerce-shell > .e-con-inner {
  gap: 0 !important;
  max-width: none !important;
  padding: 0 !important;
  width: 100% !important;
}

body.woocommerce-cart .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-heading {
  display: none !important;
}
body.woocommerce-cart:has(#main .wc-empty-cart-message) #main,
body.woocommerce-cart:has(#main .wc-empty-cart-message) #main > .elementor,
body.woocommerce-cart:has(#main .wc-empty-cart-message) .corelie-woocommerce-shell {
  height: 287.84px !important;
  min-height: 287.84px !important;
}
body.woocommerce-cart:has(#main .wc-empty-cart-message) {
  min-height: 0 !important;
}
body.woocommerce-cart:has(#main .wc-empty-cart-message) #main {
  flex: 0 0 287.84px !important;
}
body.woocommerce-cart .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-shortcode {
  margin: 0 auto;
  max-width: 1250px;
  padding: 30px 15px;
  width: 100%;
}
body.woocommerce-cart #main .woocommerce:has(.wc-empty-cart-message) {
  box-sizing: border-box;
  height: 132.84px;
  padding: 30px 0;
  text-align: center;
}
body.woocommerce-cart #main .wc-empty-cart-message,
body.woocommerce-cart #main .cart-empty.woocommerce-info {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #4a4a4a !important;
  display: block !important;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  height: 33.59px !important;
  line-height: 25.6px !important;
  margin: 0 !important;
  min-height: 0 !important;
  padding: 0 0 8px !important;
  text-align: center;
}
body.woocommerce-cart #main .cart-empty.woocommerce-info::before,
body.woocommerce-cart #main .cart-empty.woocommerce-info::after { display: none !important; }
body.woocommerce-cart #main .return-to-shop {
  height: 39.25px;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center;
}
body.woocommerce-cart #main .return-to-shop .button {
  align-items: center;
  background: #050505 !important;
  border: 1px solid #050505 !important;
  border-radius: 0 !important;
  color: #fff !important;
  display: inline-flex;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 15.52px !important;
  font-weight: 700 !important;
  height: 39.25px;
  justify-content: center;
  letter-spacing: .03em;
  line-height: 37.248px !important;
  min-height: 39.25px;
  padding: 0 18.624px !important;
  text-transform: uppercase;
  width: 184.25px;
}
body.woocommerce-cart #main .return-to-shop .button:hover,
body.woocommerce-cart #main .return-to-shop .button:focus-visible {
  background: #000 !important;
  border-color: #000 !important;
  color: #fff !important;
}

body.woocommerce-account:not(.logged-in) #main,
body.woocommerce-account:not(.logged-in) #main > .elementor,
body.woocommerce-account:not(.logged-in) .corelie-woocommerce-shell {
  height: 472.47px !important;
  min-height: 472.47px !important;
}
body.woocommerce-account .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-heading {
  align-items: center;
  background: #f5f5f5;
  display: flex;
  flex: 0 0 64.64px;
  height: 64.64px;
  justify-content: center;
  width: 100%;
}
body.woocommerce-account .corelie-woocommerce-shell h1 {
  color: #555;
  font-size: 27.2px;
  line-height: 32.64px;
  margin: 0 auto !important;
  max-width: 1220px;
  text-align: center;
  text-transform: uppercase;
  width: calc(100% - 30px);
}
body.woocommerce-account .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-shortcode {
  flex: 0 0 407.83px;
  height: 407.83px;
  padding: 30px 0;
  width: 100%;
}
body.woocommerce-account .corelie-woocommerce-shell .elementor-shortcode {
  margin: 0 auto;
  max-width: 1220px;
  width: calc(100% - 30px);
}
body.woocommerce-account #customer_login {
  display: flex;
  height: 347.83px;
  margin: 0 -30px;
  width: calc(100% + 60px);
}
body.woocommerce-account #customer_login > .col-1,
body.woocommerce-account #customer_login > .col-2 {
  box-sizing: border-box;
  float: none;
  margin: 0;
  padding: 0 30px;
  width: 50%;
}
body.woocommerce-account #customer_login > .col-2 { border-left: 1px solid #ececec; }
body.woocommerce-account #customer_login h2 {
  color: #555;
  font-family: Lato, Arial, sans-serif;
  font-size: 20px;
  font-weight: 700;
  height: 24px;
  line-height: 24px;
  margin: 0 0 10px;
  text-transform: uppercase;
}
body.woocommerce-account #customer_login form.login,
body.woocommerce-account #customer_login form.register {
  border: 0 !important;
  height: auto;
  margin: 0 0 20.8px;
  padding: 0;
}
body.woocommerce-account #customer_login form.login { min-height: 293.03px; }
body.woocommerce-account #customer_login form.register { min-height: 243.47px; }
body.woocommerce-account #customer_login form > p {
  margin: 0 0 8px;
  padding: 0;
}
body.woocommerce-account #customer_login label {
  color: #222;
  display: block;
  font-family: Lato, Arial, sans-serif;
  font-size: 14.4px;
  font-weight: 700;
  line-height: 23.04px;
  margin: 0 0 5.76px;
}
body.woocommerce-account #customer_login input.input-text {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 0;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
  box-sizing: border-box;
  color: #333;
  font-family: Lato, Arial, sans-serif;
  font-size: 15.52px;
  height: 38.91px;
  line-height: 24.832px;
  margin: 0 0 15.52px;
  padding: 0 11.64px;
}
body.woocommerce-account #customer_login input.input-text:focus {
  box-shadow: 0 0 5px #ccc !important;
  outline: none !important;
  outline-offset: 2px;
}
body.woocommerce-account #customer_login .password-input input.input-text { padding-right: 31.04px; }
body.woocommerce-account #customer_login .show-password-input { visibility: hidden !important; }
body.woocommerce-account #customer_login form.register > p:not(.form-row) { color: #4a4a4a; }
body.woocommerce-account #customer_login .woocommerce-form-login__rememberme {
  display: block;
  height: 32px;
  margin: 0 0 5.76px;
}
body.woocommerce-account #customer_login .woocommerce-form-login__rememberme input {
  appearance: auto !important;
  border: 0 !important;
  height: 13px;
  margin: 3px 10px 16px 4px;
  min-width: 0 !important;
  position: relative;
  top: 0;
  width: 13px;
}
body.woocommerce-account #customer_login .lost_password,
body.woocommerce-account #customer_login .lost_password a {
  font-size: 16px;
  line-height: 25.6px;
}
body.woocommerce-account #customer_login .woocommerce-privacy-policy-text {
  color: #4a4a4a;
  font-family: Arial, sans-serif;
  font-size: 13.6px;
  line-height: 21.76px;
  margin: 0 0 20.4px;
}
body.woocommerce-account #customer_login .woocommerce-privacy-policy-text p {
  font-size: inherit;
  line-height: inherit;
  margin: 0 0 6.8px;
}
body.woocommerce-account #customer_login .woocommerce-privacy-policy-link,
body.woocommerce-account #customer_login .woocommerce-privacy-policy-link:link,
body.woocommerce-account #customer_login .woocommerce-privacy-policy-link:visited { color: #334862 !important; }
body.woocommerce-account #customer_login button.button {
  background: #050505 !important;
  border: 1px solid #050505 !important;
  border-radius: 0 !important;
  color: #fff !important;
  display: inline-flex;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 15.52px !important;
  font-weight: 700 !important;
  height: 39.25px;
  justify-content: center;
  letter-spacing: .03em;
  line-height: 37.248px !important;
  margin: 0 15.52px 0 0;
  min-height: 39.25px;
  padding: 0 18.624px !important;
  text-transform: uppercase;
}
body.woocommerce-account #customer_login .woocommerce-form-login__submit { width: 95.47px; }
body.woocommerce-account #customer_login button.woocommerce-form-register__submit {
  margin-bottom: 15.52px !important;
  width: 122.27px;
}

@media (max-width: 689px) {
  body.woocommerce-cart .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-shortcode {
    max-width: none;
    padding-left: 15px;
    padding-right: 15px;
  }

  body.woocommerce-account:not(.logged-in) #main,
  body.woocommerce-account:not(.logged-in) #main > .elementor,
  body.woocommerce-account:not(.logged-in) .corelie-woocommerce-shell {
    height: 881.5px !important;
    min-height: 881.5px !important;
  }
  body.woocommerce-account .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-heading {
    flex-basis: 62px;
    height: 62px;
  }
  body.woocommerce-account .corelie-woocommerce-shell h1 {
    font-size: 22.4px;
    line-height: 26.88px;
    width: calc(100% - 30px);
  }
  body.woocommerce-account .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-shortcode {
    flex-basis: 819.5px;
    height: 819.5px;
    padding: 30px 0;
  }
  body.woocommerce-account .corelie-woocommerce-shell .elementor-shortcode {
    max-width: none;
    width: calc(100% - 30px);
  }
  body.woocommerce-account #customer_login {
    display: block;
    height: 759.5px;
    margin: 0 -15px;
    width: calc(100% + 30px);
  }
  body.woocommerce-account #customer_login > .col-1,
  body.woocommerce-account #customer_login > .col-2 {
    padding: 0 15px;
    width: 100%;
  }
  body.woocommerce-account #customer_login > .col-1 {
    border-bottom: 1px solid #ececec;
    height: 382.2px;
    margin-bottom: 30px;
    padding-bottom: 30px;
  }
  body.woocommerce-account #customer_login > .col-2 { border-left: 0; }
  body.woocommerce-account #customer_login form.login { min-height: 296.41px; }
  body.woocommerce-account #customer_login form.register { min-height: 292.5px; }
  body.woocommerce-account #customer_login input.input-text {
    font-size: 16px;
    height: 40.11px;
    line-height: 25.6px;
    margin-bottom: 16px;
    padding-left: 12px;
    padding-right: 12px;
  }
  body.woocommerce-account #customer_login .password-input input.input-text { padding-right: 32px; }
  body.woocommerce-account #customer_login form.login {
    height: 296.41px;
    width: 100%;
  }
}

/* The reference keeps the account login/register panels stacked through its
 * tablet breakpoint. The desktop split starts only after 1024px. */
@media (min-width: 690px) and (max-width: 1024px) {
  body.woocommerce-account:not(.logged-in) #main,
  body.woocommerce-account:not(.logged-in) #main > .elementor,
  body.woocommerce-account:not(.logged-in) .corelie-woocommerce-shell {
    height: 836.8px !important;
    min-height: 836.8px !important;
  }
  body.woocommerce-account .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-shortcode {
    flex-basis: 772.16px;
    height: 772.16px;
    padding: 30px 0;
  }
  body.woocommerce-account .corelie-woocommerce-shell .elementor-shortcode {
    max-width: none;
    width: calc(100% - 30px);
  }
  body.woocommerce-account #customer_login {
    display: block;
    height: 712.16px;
    margin: 0 -15px;
    width: calc(100% + 30px);
  }
  body.woocommerce-account #customer_login > .col-1,
  body.woocommerce-account #customer_login > .col-2 {
    padding: 0 15px;
    width: 100%;
  }
  body.woocommerce-account #customer_login > .col-1 {
    border-bottom: 1px solid #ececec;
    height: 382.2px;
    margin-bottom: 30px;
    padding-bottom: 30px;
  }
  body.woocommerce-account #customer_login > .col-2 {
    border-left: 0;
    height: 299.95px;
  }
  body.woocommerce-account #customer_login form.login { min-height: 296.41px; }
  body.woocommerce-account #customer_login form.register { min-height: 245.16px; }
  body.woocommerce-account #customer_login input.input-text {
    font-size: 16px;
    height: 40.11px;
    line-height: 25.6px;
    margin-bottom: 16px;
    padding-left: 12px;
    padding-right: 12px;
  }
  body.woocommerce-account #customer_login .password-input input.input-text { padding-right: 32px; }
}

/* Footer */
#footer { background: var(--corelie-navy); color: rgba(255,255,255,.78); }
#footer h2,
#footer .widget-title { color: #fff; font-size: 13px; letter-spacing: .03em; text-transform: uppercase; }
#footer a { color: rgba(255,255,255,.82); font-size: 12px; }
#footer a:hover { color: #fff; }
#footer .corelie-footer-logo { filter: brightness(0) invert(1); height: auto; max-width: 145px; }
#footer [data-row="middle"] { padding: 44px 0 32px; }
#footer [data-row="bottom"] { border-top: 1px solid rgba(255,255,255,.12); }
#footer [data-row="bottom"] .ct-footer-copyright > div:last-child {
  color: #fff !important;
  font-size: 12px !important;
  line-height: 19.2px !important;
  opacity: .7;
}
#footer .corelie-footer-policies { display: flex; flex-wrap: wrap; gap: 9px 22px; margin-bottom: 18px; }
#footer .corelie-footer-policies a { color: #d8e2e8; }

/* Static Elementor pages */
.corelie-content-page { padding: 0 24px 28px; }
.corelie-content-page > .e-con-inner { max-width: 980px; }
.corelie-content-section { padding: 0 24px 28px; }
.elementor > .corelie-content-section:first-child { padding-top: 54px; }
.corelie-content-section h1 { color: #17364b; font-size: 20px; line-height: 1.3; margin: 0 0 10px; text-align: left; }
.corelie-static-page .corelie-content-section h1 { color: #555; }
.corelie-static-page .corelie-content-section > .e-con-inner { gap: 0 !important; }
.corelie-static-page .corelie-content-section .elementor-widget-text-editor { color: #4a4a4a; }
.corelie-content-page h2 { color: #17364b; font-size: 20px; margin-top: 30px; }
.corelie-woocommerce-shell { padding-top: 54px; padding-bottom: 72px; }
.corelie-woocommerce-shell h1 { color: #122d40; font-size: clamp(30px, 4vw, 46px); margin-bottom: 34px; text-align: center; }
.corelie-content-page h3 { font-size: 19px; margin-top: 28px; }
.corelie-content-page a { color: #0b658b; text-decoration: underline; }
.corelie-content-page table { border-collapse: collapse; margin: 24px 0; width: 100%; }
.corelie-content-page th,
.corelie-content-page td { border: 1px solid #dfe4e7; padding: 11px; text-align: left; }

body.corelie-static-page #main-container { min-height: 0; }

/* Keep the required company contacts inside the reference page's existing whitespace. */
body.corelie-page-customer-care-center .corelie-content-section > .e-con-inner {
  display: flex;
  flex: 0 0 auto;
  gap: 0 !important;
}
body.corelie-page-customer-care-center .corelie-content-section:first-child {
  padding-bottom: 0;
}
body.corelie-page-customer-care-center .corelie-content-section:first-child h1 {
  color: #555;
  font-size: 19.2px;
  line-height: 24.96px;
  margin-bottom: 9.6px;
}
body.corelie-page-customer-care-center .corelie-content-section:first-child .elementor-widget-text-editor {
  flex: 0 0 51.2px;
  height: 51.2px;
}
body.corelie-page-customer-care-center .corelie-content-section:first-child .elementor-widget-text-editor p {
  color: #4a4a4a;
}
body.corelie-page-customer-care-center .corelie-content-section + .corelie-content-section {
  display: flex !important;
  flex: 0 0 113.2px !important;
  height: 113.2px !important;
  max-height: 113.2px;
  min-height: 0 !important;
  padding-bottom: 0 !important;
}
body.corelie-page-customer-care-center .corelie-content-section + .corelie-content-section > .e-con-inner { height: auto !important; }
body.corelie-page-customer-care-center .corelie-content-section + .corelie-content-section h2 {
  color: #17364b;
  font-size: 16px;
  line-height: 20.8px;
  margin: 0 0 6px;
}
body.corelie-page-customer-care-center .corelie-content-section + .corelie-content-section .elementor-widget-text-editor {
  font-size: 14px;
  line-height: 22.4px;
}
body.corelie-page-customer-care-center .corelie-content-section + .corelie-content-section .elementor-widget-text-editor p {
  margin-bottom: 0;
}

@media (min-width: 690px) {
  .single-product .product-entry-wrapper { grid-template-columns: minmax(0, 1.35fr) minmax(320px, .8fr); }
  .single-product .entry-summary { max-width: 470px; }
}

@media (max-width: 1024px) {
  #offcanvas {
    background: rgba(11, 11, 11, .6) !important;
  }
  .corelie-products { grid-template-columns: repeat(var(--corelie-cols-tablet, 3), minmax(0, 1fr)); }
  .corelie-brand-grid { grid-template-columns: repeat(var(--corelie-cols-tablet, 2), minmax(0, 1fr)); }
  .corelie-social-stats { grid-template-columns: repeat(var(--corelie-cols-tablet, 4), minmax(0, 1fr)); }
  .corelie-section { padding-left: 18px; padding-right: 18px; }
  .corelie-newsletter__form { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 689px) {
  #header [data-row="middle"] { min-height: 70px; }
  .corelie-section { padding: 36px 14px; }
  .corelie-section--compact { padding-top: 12px; }
  .corelie-section-title { font-size: 17px; margin-bottom: 22px; }
  .corelie-hero > .elementor-widget-image:first-child { display: none; }
  .corelie-hero > .elementor-widget-image:nth-child(2) { display: block; }
  .corelie-hero .elementor-widget-image img { min-height: 490px; object-fit: cover; }
  .corelie-hero-copy h1 { font-size: 28px; }
  .corelie-hero > .corelie-hero-copy { top: 55%; }
  .corelie-products { gap: 34px 12px; grid-template-columns: repeat(var(--corelie-cols-mobile, 2), minmax(0, 1fr)); }
  .corelie-product-card__title { font-size: 13px; line-height: 18.2px; min-height: 54.6px; }
  .corelie-product-card__button { font-size: 13px !important; line-height: 35px !important; min-height: 37px; padding: 0 14px !important; }
  .corelie-brand-grid { gap: 10px; grid-template-columns: repeat(var(--corelie-cols-mobile, 1), minmax(0, 1fr)); }
  .corelie-brand-card h3 { font-size: 10px; margin: 12px; }
  .corelie-social-stats { grid-template-columns: repeat(var(--corelie-cols-mobile, 4), minmax(0, 1fr)); }
  .corelie-social-stat { font-size: 11px; min-height: 62px; }
  .corelie-service-benefits { grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 10px 6px; row-gap: 8px; }
  .corelie-service-benefits .elementor-icon-box-wrapper { justify-content: flex-start; text-align: left; }
  .corelie-stay-connected { display: block !important; }
  .corelie-stay-copy { align-items: center; padding: 30px 15px; text-align: center; }
  .corelie-newsletter { padding: 38px 14px 46px; }
  .corelie-newsletter__form { grid-template-columns: 1fr; }
  .woocommerce ul.products[class*="columns-"] { display: grid; gap: 34px 12px; grid-template-columns: repeat(2, minmax(0,1fr)); }
  .woocommerce ul.products[class*="columns-"] li.product { margin: 0 !important; width: auto !important; }
  .single-product .related.products { display: block !important; padding: 36px 15px 44px; position: relative; }
  .single-product .related.products li.product[hidden] { display: none !important; }
  .corelie-related-carousel__previous,
  .corelie-related-carousel__next {
    background: rgba(255,255,255,.9);
    border: 0;
    color: var(--corelie-navy);
    font-size: 24px;
    min-height: 42px;
    padding: 0 7px;
    position: absolute;
    top: 235px;
    z-index: 4;
  }
  .corelie-related-carousel__previous { left: 2px; }
  .corelie-related-carousel__next { right: 2px; }
  .corelie-related-carousel__previous:disabled,
  .corelie-related-carousel__next:disabled { opacity: .35; }
  .single-product .corelie-buy-now { margin: 8px 0 0; width: 100%; }
	#footer .corelie-footer-policies { display: grid; gap: 13px; }
  .corelie-content-page { padding-left: 15px; padding-right: 15px; }
  .corelie-content-page table { display: block; overflow-x: auto; }
}

/* Measured parity overrides: Corelie reference at 1440px. */
@media (min-width: 1025px) {
  #header [data-device="desktop"] [data-row="middle"] > .ct-container {
    max-width: none;
    margin: 0 !important;
    padding-left: 15px;
    padding-right: 15px;
    width: 100% !important;
  }
  #header [data-device="desktop"] [data-row="middle"] [data-column="start"] { flex: 1 1 auto; }
  #header [data-device="desktop"] [data-row="middle"] [data-column="start"] > [data-items="primary"] { gap: 10px; }
  #header [data-device="desktop"] .site-branding { flex: 0 0 92px; width: 92px; }
  #header [data-device="desktop"] [data-row="middle"] .menu { gap: 19px; }
  #header [data-device="desktop"] [data-row="middle"] .menu > li > a { min-height: 80px; padding: 0; }
  #header [data-device="desktop"] .sub-menu { margin-left: -15px; margin-top: -20px; }
  #header [data-device="desktop"] .ct-header-cart { border-left: 1px solid #ddd; padding-left: 15px; }

  body.corelie-static-page .corelie-content-section { padding-left: 0; padding-right: 0; }
  body.corelie-static-page .elementor > .corelie-content-section:first-child { padding-top: 30px; }
  body.corelie-static-page .corelie-content-section > .e-con-inner { padding: 0 15px !important; }
  body.corelie-page-about-our-brands main { min-height: 549.3px; }
  body.corelie-page-customer-care-center main { height: 273px !important; min-height: 273px; }
  body.corelie-page-customer-care-center .corelie-content-section:first-child h1 {
    font-size: 25.6px;
    line-height: 33.28px;
    margin-bottom: 12.8px;
  }
  body.corelie-page-customer-care-center .corelie-content-section:first-child .elementor-widget-text-editor {
    flex-basis: 51.2px;
    height: 51.2px;
  }
  body.corelie-page-customer-care-center .corelie-content-section { padding-bottom: 12px; }
  body.corelie-page-customer-care-center .corelie-content-section + .corelie-content-section { padding-top: 0; }
  body.corelie-page-customer-care-center .corelie-content-section h2 { font-size: 20px; line-height: 26px; margin: 0 0 8px; }
  body.corelie-page-customer-care-center .elementor-widget-text-editor p { margin: 0 0 6px; }
  body.corelie-page-customer-care-center .elementor-widget-text-editor p:empty { display: none; }

  .corelie-hero { height: 400px; }
  .corelie-hero > .elementor-widget-image,
  .corelie-hero > .elementor-widget-image > .elementor-widget-container,
  .corelie-hero > .elementor-widget-image img { height: 400px; }

  body.home .e-con-boxed > .e-con-inner { padding-bottom: 0 !important; padding-top: 0 !important; }
  .corelie-product-section { padding: 30px 10px 35.8px !important; }
  .corelie-new-collections { padding: 35px 10px 67.5px !important; }
  .corelie-featured-products { padding: 0 10px 18px !important; }
  .corelie-product-grid { position: relative; }
  .corelie-product-grid__heading { gap: 14px; margin-bottom: 34px; }
  .corelie-product-grid__heading::before,
  .corelie-product-grid__heading::after { flex: 1 1 auto; max-width: none; width: auto; }
  .corelie-product-grid__heading h2 {
    color: #555;
    flex: 0 0 auto;
    font-size: 20px;
    line-height: 32px;
  }
  .corelie-products {
    column-gap: 0;
    margin-left: auto;
    margin-right: auto;
    row-gap: 0;
    width: min(1240px, 100%);
  }
  .corelie-product-card {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    height: 424.2px;
    padding: 0 9.8px;
  }
  .corelie-product-card__media { flex: 0 0 auto; margin-bottom: 0; width: 100%; }
  .corelie-product-card__sale { position: absolute; }
  .corelie-product-card__button {
    align-self: center;
    margin-bottom: 15.52px;
    margin-top: auto;
    min-width: 117.2px;
  }
  .corelie-product-card__sale {
    font-size: 15.52px !important;
    height: 45.7px !important;
    left: 2px !important;
    top: 29px !important;
    width: 45.7px !important;
  }
  .woocommerce ul.products li.product .onsale {
    font-size: 15.52px !important;
    height: 45.7px !important;
    left: -7.8px !important;
    top: 29px !important;
    width: 45.7px !important;
  }
  .corelie-product-carousel__controls {
	bottom: 2px;
	height: auto;
	left: 1px;
    justify-content: space-between;
    margin: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
	right: 1px;
	top: 64px;
	transform: none;
    transition: opacity .2s ease;
  }
	.corelie-product-grid:not(:has(.corelie-product-grid__heading)) .corelie-product-carousel__controls { top: -2px; }
  .corelie-product-grid:hover .corelie-product-carousel__controls,
  .corelie-product-grid:focus-within .corelie-product-carousel__controls { opacity: 1; pointer-events: auto; }
  .corelie-product-carousel__status {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }

  .corelie-new-arrivals { height: 344.2px !important; max-height: 344.2px; min-height: 344.2px !important; overflow: hidden; }
  .corelie-brand-banner { height: 389.8px !important; max-height: 389.8px; min-height: 389.8px !important; overflow: hidden; }
  .corelie-new-arrivals > .elementor-widget-image,
  .corelie-new-arrivals > .elementor-widget-image > .elementor-widget-container,
  .corelie-new-arrivals > .elementor-widget-image img,
  .corelie-brand-banner > .elementor-widget-image,
  .corelie-brand-banner > .elementor-widget-image > .elementor-widget-container,
  .corelie-brand-banner > .elementor-widget-image img { height: 100% !important; min-height: 0 !important; object-fit: cover; }
  .corelie-new-arrivals .corelie-hero-copy h2,
  .corelie-brand-banner .corelie-hero-copy h2 { font-size: 28.8px; line-height: 37.44px; }

  .corelie-brand-promos { height: 551.2px; min-height: 551.2px; padding: 32px 16px !important; }
  .corelie-brand-promos > .e-con-inner { gap: 40px !important; max-width: none; }
  .corelie-brand-promos .elementor-widget-heading h2 {
    color: #1f2a3a;
    font-size: 28.8px;
    line-height: 37.44px;
  }
  .corelie-brand-promos .corelie-brand-grid {
    gap: 24px;
    left: 50%;
    position: relative;
    transform: translateX(-50%);
    width: calc(100vw - 32px);
  }
  .corelie-brand-promos .corelie-brand-card { border: 0; height: 409.8px; }
  .corelie-brand-promos .corelie-brand-card img { aspect-ratio: 1 / 1; height: 334px; object-fit: cover; }
  .corelie-brand-promos .corelie-brand-card h3 {
    font-size: 17.6px;
    line-height: 24.64px;
    margin: 27.2px 16px 0;
  }

  .corelie-video-section {
    background: #002b49 !important;
    height: 594.8px;
    min-height: 594.8px;
    padding: 56px 0 32px !important;
  }
  .corelie-video-section > .e-con-inner { max-width: 900px !important; width: 900px !important; }
  .corelie-video-section .elementor-widget-video,
  .corelie-video-section .elementor-wrapper,
  .corelie-video-section video { height: 506.8px !important; width: 900px !important; }

  .corelie-category-entrances { height: 408.4px; padding: 40px 20px 32px !important; }
  .corelie-category-entrances > .e-con-inner { max-width: 1280px !important; width: 1280px !important; }
  .corelie-category-entrances .corelie-brand-grid { gap: 24px; }
  .corelie-category-entrances .corelie-brand-card { border: 0; height: 336.4px; }
  .corelie-category-entrances .corelie-brand-card img { aspect-ratio: 1 / 1; height: 302px; object-fit: cover; }
  .corelie-category-entrances .corelie-brand-card h3 {
    color: #555;
    font-size: 16px;
    font-weight: 600;
    line-height: 22.4px;
    margin: 12px 0 2px;
  }

  .corelie-hotspot-section { height: 609.8px; padding: 0 32px !important; }
  .corelie-hotspot-section > .e-con-inner { max-width: 1376px !important; width: 1376px !important; }
  .corelie-hotspot,
  .corelie-hotspot > img { height: 609.8px; }
  .corelie-hotspot > img { object-fit: cover; }

  .corelie-stay-connected { height: 392.2px !important; min-height: 392.2px !important; padding: 0 !important; }
  .corelie-stay-connected > .e-con-inner { gap: 0 !important; height: 392.2px !important; max-width: 1168px !important; min-height: 392.2px !important; width: 1168px !important; }
  .corelie-stay-connected > .e-con-inner > .elementor-widget-image { height: 392.2px !important; }
  .corelie-stay-copy { padding: 42px 0 42px 48px; }
  .corelie-stay-connected > .e-con-inner > .elementor-widget-image img { height: 392.2px !important; object-fit: cover; }

  .corelie-newsletter-section { height: 440.1px; padding: 0 !important; }
  .corelie-newsletter {
    height: 440.1px;
    max-width: 1168px;
    padding: 32px 0 0;
  }
  .corelie-newsletter h2 { font-size: 56px; line-height: 61.6px; margin-bottom: 6px; }
  .corelie-newsletter p { font-size: 16px; line-height: 24px; }
  .corelie-newsletter__form { margin: 28px auto 0; max-width: 1020px; }

  body.post-type-archive-product.woocommerce main > .ct-container {
    padding-bottom: 35px;
    padding-top: 20px;
  }
  body.post-type-archive-product.woocommerce .woo-listing-top {
    height: 48.9px;
    margin-bottom: 30px;
  }
  body.post-type-archive-product.woocommerce .woocommerce-ordering select { height: 48.9px; min-height: 48.9px; width: 205.3px; }
  body.post-type-archive-product.woocommerce ul.products {
    column-gap: 0;
    margin-left: auto;
    margin-right: auto;
    row-gap: 0;
    grid-template-rows: 401.6px 420.3px 426.1px;
    width: min(1240px, 100%);
  }
  .woocommerce ul.products li.product {
    box-sizing: border-box;
    min-height: 401.6px;
    padding-left: 9.8px;
    padding-right: 9.8px;
    position: relative;
  }
  .woocommerce ul.products li.product .corelie-loop-quick-view { bottom: auto; top: 154.1px; }
  .woocommerce ul.products li.product figure { margin-bottom: 0; }
  .woocommerce ul.products li.product .entry-meta {
    font-size: 10.8px;
    line-height: 12.96px;
    margin: 10.08px 0 1.08px;
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__title {
    color: #334862;
    font-size: 14.4px;
    font-weight: 400;
    line-height: 20.16px;
    margin: 1.44px 0;
    min-height: 80.64px;
  }
  .woocommerce ul.products li.product .price {
    color: #777;
    font-size: 14.4px;
    line-height: 14.4px;
    margin-bottom: 0;
  }
  .woocommerce ul.products li.product .ct-woo-card-actions { margin-top: auto; padding-bottom: 15.52px; }
  .woocommerce ul.products li.product .button { min-width: 117.2px; }
  body.post-type-archive-product.woocommerce .ct-pagination {
    height: 33.7px;
    margin-top: 5px;
  }
  body.post-type-archive-product.woocommerce .ct-pagination .page-numbers { height: 33.7px; min-width: 33.7px; }

  body.single-product main > .ct-container-full { padding: 0; }
  body.single-product main > .ct-container-full > article > .hero-section { display: none; }
  body.single-product .woocommerce-breadcrumb { display: none; }
  body.single-product article > .product { padding-top: 40px; }
  body.single-product .product-entry-wrapper {
    grid-template-columns: 625px 416.7px;
    height: 739.1px;
    margin-left: auto;
    margin-right: auto;
    width: 1250px;
  }
  body.single-product .woocommerce-product-gallery {
    height: 739.1px;
    padding: 0 15px;
    width: 625px !important;
  }
  body.single-product .woocommerce-product-gallery .flexy-view,
  body.single-product .woocommerce-product-gallery .flexy-items,
  body.single-product .woocommerce-product-gallery .flexy-item,
  body.single-product .woocommerce-product-gallery .flexy-item > .ct-media-container {
    height: 595px !important;
    width: 595px !important;
  }
  body.single-product .woocommerce-product-gallery .flexy-pills {
    height: 129.1px;
    margin-left: -10px;
    margin-top: 15px;
    width: 615px;
  }
  body.single-product .woocommerce-product-gallery .flexy-pills > ol { gap: 0; }
  body.single-product .woocommerce-product-gallery .flexy-pills li {
    flex: 0 0 153.75px !important;
    height: 129.1px !important;
    padding: 0 9.8px 19.6px !important;
    width: 153.75px !important;
  }
  body.single-product .woocommerce-product-gallery .flexy-pills img {
    height: 109.5px !important;
    object-fit: cover;
    width: 134.15px !important;
  }
  body.single-product .entry-summary {
    height: 739.1px;
    margin-left: 0 !important;
    max-width: none;
    padding: 10px 15px 30px;
    width: 416.7px !important;
  }
  body.single-product .product_title { font-size: 27.2px; line-height: 29.92px; }
  body.single-product .woocommerce-tabs {
    height: 184px;
    margin: 40px auto 0;
    overflow: hidden;
    padding: 30px 0;
    width: 1220px;
  }
  body.single-product .woocommerce-tabs .woocommerce-Tabs-panel { padding-top: 16px; }
  body.single-product .related.products {
    height: 551.2px;
    margin: 0 auto;
    width: 1220px;
  }
  body.single-product .related.products ul.products {
    column-gap: 0;
    grid-template-columns: repeat(4, 310px);
    height: 486.2px;
    margin-left: -10px;
    row-gap: 0;
    width: 1240px;
  }
  body.single-product .related.products ul.products li.product {
    height: 486.2px;
    min-height: 486.2px;
    padding: 0 9.8px 19.6px;
    width: 310px;
  }
  body.single-product .related.products ul.products li.product figure,
  body.single-product .related.products ul.products li.product figure > .ct-media-container {
    height: 290.4px !important;
    width: 290.4px;
  }
  body.single-product .related.products ul.products li.product .corelie-loop-quick-view { top: 257.4px; }

  #footer [data-row="middle"] { padding: 70px 0 58px; }
  #footer [data-row="bottom"] { padding-bottom: 17px; padding-top: 32px; }
}

@media (max-width: 689px) {
  #footer [data-row="middle"] { padding-bottom: 82px; padding-top: 82px; }
  #footer [data-row="bottom"] { padding-bottom: 58px; padding-top: 34px; }
  .corelie-content-page { font-size: 16px; line-height: 1.6; }
  body.corelie-static-page .corelie-content-section { padding-left: 0; padding-right: 0; }
  body.corelie-static-page .elementor > .corelie-content-section:first-child { padding-top: 30px; }
  body.corelie-static-page .corelie-content-section > .e-con-inner { padding: 0 15px !important; }
  body.corelie-page-about-our-brands main { min-height: 1163.6px; }
  body.corelie-page-customer-care-center main { height: 287.1px !important; min-height: 287.1px; }
  body.corelie-page-customer-care-center .corelie-content-section { padding-bottom: 12px; }
  body.corelie-page-customer-care-center .corelie-content-section + .corelie-content-section { padding-top: 0; }
  body.corelie-page-customer-care-center .corelie-content-section h2 { font-size: 20px; line-height: 26px; margin: 0 0 8px; }
  body.corelie-page-customer-care-center .elementor-widget-text-editor p { margin: 0 0 6px; }
  body.corelie-page-customer-care-center .elementor-widget-text-editor p:empty { display: none; }

  body.home .e-con-boxed > .e-con-inner { padding-bottom: 0 !important; padding-top: 0 !important; }
  .corelie-hero {
    height: 487.5px !important;
    max-height: 487.5px;
    min-height: 487.5px !important;
    overflow: hidden;
  }
  .corelie-hero > .elementor-widget-image,
  .corelie-hero > .elementor-widget-image > .elementor-widget-container,
  .corelie-hero > .elementor-widget-image img { height: 487.5px !important; min-height: 487.5px !important; }

  .corelie-product-section { padding: 30px 0 0 !important; }
  .corelie-recommended-products { padding-bottom: 2.9px !important; }
  .corelie-recommended-products { height: 2438px !important; }
  .corelie-new-collections { padding: 35px 0 30px !important; }
  .corelie-new-collections .corelie-product-card { min-height: 394.7px; }
  .corelie-featured-products {
    height: 838.9px !important;
    max-height: 838.9px !important;
    min-height: 838.9px !important;
    overflow: hidden !important;
    padding: 0 !important;
  }
  .corelie-product-grid { position: relative; }
  .corelie-product-grid__heading { gap: 10px; margin-bottom: 32px; }
  .corelie-product-grid__heading::before,
  .corelie-product-grid__heading::after { max-width: none; width: auto; flex: 1 1 auto; }
  .corelie-product-grid__heading h2 { color: #555; font-size: 16px; line-height: 25.6px; }
  .corelie-products {
    column-gap: 0;
    margin-left: auto;
    margin-right: auto;
    row-gap: 0;
    width: 380px;
  }
  .corelie-product-card {
    box-sizing: border-box;
    display: block;
    height: auto;
    padding: 0 9.8px 19.6px;
  }
  .corelie-product-card__media { height: 170.4px; margin-bottom: 0; width: 170.4px; }
  .corelie-product-card__brand {
    font-size: 10.2px;
    line-height: 12.24px;
    margin: 9.52px 0 1.02px;
  }
  .corelie-product-card__title {
    font-size: 13.6px;
    font-weight: 400;
    line-height: 18.52px;
    margin: 1.36px 0;
    min-height: 0;
  }
  .corelie-product-card__price { font-size: 13.6px; line-height: 13.6px; }
  .corelie-product-card__button {
    display: flex;
    font-size: 15.52px !important;
    line-height: 37.248px !important;
    margin: 18.96px auto 15.52px;
    min-height: 39.25px;
    min-width: 117.2px;
    padding: 0 18.624px !important;
    width: max-content;
  }
  .corelie-product-card__sale {
    font-size: 15.52px !important;
    height: 45.7px !important;
    left: 2px !important;
    text-transform: none;
    top: 29px !important;
    width: 45.7px !important;
  }
  .corelie-product-carousel__controls {
	bottom: 2px;
	height: auto;
	left: 4px;
    justify-content: space-between;
    margin: 0;
    overflow: visible;
    pointer-events: none;
    position: absolute;
	right: 4px;
	top: 55.6px;
	transform: none;
    z-index: 6;
  }
	.corelie-product-grid:not(:has(.corelie-product-grid__heading)) .corelie-product-carousel__controls { top: -2px; }
	.corelie-product-carousel__controls button {
		background: transparent;
		opacity: .8;
		pointer-events: auto;
		width: 24px;
	}
	.corelie-product-carousel__icon { height: 24px; width: 24px; }
  .corelie-product-carousel__status {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    width: 1px;
  }

  .corelie-new-arrivals {
    height: 93.2px !important;
    max-height: 93.2px;
    min-height: 93.2px !important;
    overflow: hidden;
  }
  .corelie-new-arrivals > .elementor-widget-image,
  .corelie-new-arrivals > .elementor-widget-image > .elementor-widget-container,
  .corelie-new-arrivals > .elementor-widget-image img { height: 93.2px !important; min-height: 0 !important; object-fit: cover; }
  .corelie-new-arrivals .corelie-hero-copy h2 { font-size: 18px; line-height: 22px; }
  .corelie-new-arrivals .corelie-hero-copy .elementor-button { min-height: 28px; padding: 7px 16px; }

  .corelie-brand-promos { height: 1895.3px; padding: 32px 16px !important; }
  .corelie-brand-promos > .e-con-inner { gap: 40px !important; }
  .corelie-brand-promos .elementor-widget-heading h2 { font-size: 24px; line-height: 31.2px; }
  .corelie-brand-promos .corelie-brand-grid { gap: 16px; width: 358px; }
  .corelie-brand-promos .corelie-brand-card { border: 0; height: 420.2px; }
  .corelie-brand-promos .corelie-brand-card img { aspect-ratio: 1 / 1; height: 358px; object-fit: cover; }
  .corelie-brand-promos .corelie-brand-card h3 {
    font-size: 13.6px;
    line-height: 19.04px;
    margin: 24px 16px 0;
  }

  .corelie-brand-banner {
    height: 315px !important;
    max-height: 315px;
    min-height: 315px !important;
    overflow: hidden;
  }
  .corelie-brand-banner > .elementor-widget-image,
  .corelie-brand-banner > .elementor-widget-image > .elementor-widget-container,
  .corelie-brand-banner > .elementor-widget-image img { height: 315px !important; min-height: 0 !important; object-fit: cover; }
  .corelie-brand-banner .corelie-hero-copy h2 { font-size: 24px; line-height: 31.2px; }

  .corelie-service-benefits {
    height: 86.1px !important;
    max-height: 86.1px;
    min-height: 86.1px !important;
    overflow: hidden;
    padding: 8px 6px 24px;
  }
  .corelie-service-benefits .elementor-icon-box-title { font-size: 9px; }
  .corelie-service-benefits .elementor-icon-box-description { font-size: 7px; line-height: 9px; }

  .corelie-video-section { background: #002b49 !important; height: 261.9px; padding: 32px 16px 28.5px !important; }
  .corelie-video-section > .e-con-inner { max-width: 358px !important; width: 358px !important; }
  .corelie-video-section .elementor-widget-video,
  .corelie-video-section .elementor-wrapper,
  .corelie-video-section video { height: 201.4px !important; width: 358px !important; }

  .corelie-category-entrances { height: 1681.6px; padding: 40px 20px 32px !important; }
  .corelie-category-entrances > .e-con-inner { max-width: 350px !important; width: 350px !important; }
  .corelie-category-entrances .corelie-brand-grid { gap: 24px; width: 350px; }
  .corelie-category-entrances .corelie-brand-card { border: 0; height: 384.4px; }
  .corelie-category-entrances .corelie-brand-card img { aspect-ratio: 1 / 1; height: 350px; object-fit: cover; }
  .corelie-category-entrances .corelie-brand-card h3 {
    font-size: 16px;
    font-weight: 600;
    line-height: 22.4px;
    margin: 12px 0 0;
  }

  .corelie-hotspot-section { height: 164px; padding: 0 10px !important; }
  .corelie-hotspot-section > .e-con-inner { max-width: 370px !important; width: 370px !important; }
  .corelie-hotspot,
  .corelie-hotspot > img { height: 164px !important; width: 370px; }
  .corelie-hotspot > img { object-fit: cover; }

  .corelie-stay-connected { height: 599.7px !important; padding: 0 !important; }
  .corelie-stay-connected > .e-con-inner {
    display: block !important;
    height: 599.7px;
    max-width: 358px !important;
    padding: 0 !important;
    width: 358px !important;
  }
  .corelie-stay-connected > .e-con-inner > .elementor-widget-image,
  .corelie-stay-connected > .e-con-inner > .elementor-widget-image img { height: 358px !important; width: 358px; }
  .corelie-stay-copy { height: 241.7px; padding: 32px 0; }
  .corelie-stay-copy .elementor-widget-heading h2 { font-size: 24px; line-height: 31.2px; }

  .corelie-social-row { height: 113px; padding: 0 !important; }
  .corelie-social-stats { height: 113px; }
  .corelie-social-stat { min-height: 113px; }

  .corelie-newsletter-section { height: 564.9px; padding: 0 !important; }
  .corelie-newsletter { height: 564.9px; max-width: 358px; padding: 32px 0 0; }
  .corelie-newsletter h2 { font-size: 40px; line-height: 44px; margin-bottom: 10px; }
  .corelie-newsletter p { font-size: 16px; line-height: 24px; }
  #footer [data-row="bottom"] { padding-bottom: 63.7px; }

  body.post-type-archive-product.woocommerce main > .ct-container {
    margin-left: 0;
    margin-right: 0;
    max-width: none;
    padding-bottom: 35px;
    padding-top: 35px;
    width: 100%;
  }
  body.post-type-archive-product.woocommerce .woo-listing-top {
    height: 50.1px;
    justify-content: center;
    margin-bottom: 35px;
  }
  body.post-type-archive-product.woocommerce .woocommerce-ordering {
    height: 50.1px;
    margin: 0;
    width: 212.4px;
  }
  body.post-type-archive-product.woocommerce .woocommerce-ordering select {
    display: block;
    height: 50.1px;
    min-height: 50.1px;
    opacity: 1;
    padding: 0 14px;
    position: static;
    width: 212.4px;
  }
  body.post-type-archive-product.woocommerce .woocommerce-ordering .ct-sort-icon { display: none; }
  body.post-type-archive-product.woocommerce ul.products[class*="columns-"] {
    column-gap: 0;
    margin-left: auto;
    margin-right: auto;
    row-gap: 0;
    grid-template-rows: 394.7px 377px 394.7px 382.4px 394.7px 377px 394.7px 400.1px 400.1px;
    width: 380px;
  }
  body.post-type-archive-product.woocommerce ul.products[class*="columns-"] li.product {
    box-sizing: border-box;
    min-height: 0;
    padding: 0 9.8px 19.6px;
    width: 190px !important;
  }
  body.post-type-archive-product.woocommerce ul.products li.product figure,
  body.post-type-archive-product.woocommerce ul.products li.product figure > .ct-media-container {
    height: 170.4px !important;
    width: 170.4px;
  }
  body.post-type-archive-product.woocommerce ul.products li.product .entry-meta {
    font-size: 10.2px;
    line-height: 12.24px;
    margin: 9.52px 0 1.02px;
  }
  body.post-type-archive-product.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 13.6px;
    font-weight: 400;
    line-height: 18.52px;
    margin: 1.36px 0;
    min-height: 0;
  }
  body.post-type-archive-product.woocommerce ul.products li.product .price { font-size: 13.6px; line-height: 13.6px; margin: 0; }
  body.post-type-archive-product.woocommerce ul.products li.product .ct-woo-card-actions { margin-top: 18.96px; padding-bottom: 15.52px; }
  body.post-type-archive-product.woocommerce ul.products li.product .button {
    font-size: 15.52px !important;
    line-height: 37.248px !important;
    min-height: 39.25px;
    min-width: 117.2px;
    padding: 0 18.624px !important;
  }
  body.post-type-archive-product.woocommerce .ct-pagination { height: 33.7px; margin-top: 5px; }
  body.post-type-archive-product.woocommerce .ct-pagination .page-numbers { height: 33.7px; min-width: 33.7px; }

  body.single-product main > .ct-container-full { padding: 0; }
  body.single-product main > .ct-container-full > article > .hero-section { display: none; }
  body.single-product .woocommerce-breadcrumb { display: none; }
  body.single-product article > .product { padding-top: 40px; }
  body.single-product .product-entry-wrapper {
    display: block;
    height: 944.5px;
    margin: 0;
    width: 390px !important;
  }
  body.single-product .woocommerce-product-gallery {
    height: 445.4px;
    margin: 0;
    padding: 0 15px;
    width: 390px !important;
  }
  body.single-product .woocommerce-product-gallery .flexy-view,
  body.single-product .woocommerce-product-gallery .flexy-items,
  body.single-product .woocommerce-product-gallery .flexy-item,
  body.single-product .woocommerce-product-gallery .flexy-item > .ct-media-container {
    height: 360px !important;
    width: 360px !important;
  }
  body.single-product .woocommerce-product-gallery .flexy-pills {
    height: 70.4px;
    margin-left: -10px;
    margin-top: 15px;
    width: 380px;
  }
  body.single-product .woocommerce-product-gallery .flexy-pills > ol { gap: 0; }
  body.single-product .woocommerce-product-gallery .flexy-pills li {
    flex: 0 0 95px !important;
    height: 70.4px !important;
    padding: 0 9.8px 19.6px !important;
    width: 95px !important;
  }
  body.single-product .woocommerce-product-gallery .flexy-pills img {
    height: 50.8px !important;
    object-fit: cover;
    width: 75.4px !important;
  }
  body.single-product .entry-summary {
    height: 499.1px;
    margin: 0;
    max-width: none;
    padding: 10px 15px 30px;
    width: 390px !important;
  }
  body.single-product .product_title { font-size: 22.4px; line-height: 24.64px; }
  body.single-product .woocommerce-tabs {
    height: 429.3px;
    margin: 40px auto 0;
    overflow: hidden;
    padding: 30px 0;
    width: 360px;
  }
  body.single-product .woocommerce-tabs .woocommerce-Tabs-panel { padding-top: 16px; }
  body.single-product .related.products {
    height: 452.9px;
    margin: 0 auto;
    padding: 0;
    width: 360px;
  }
  body.single-product .related.products ul.products[class*="columns-"] {
    column-gap: 0;
    height: 394.7px;
    margin-left: -10px;
    row-gap: 0;
    width: 380px;
  }
  body.single-product .related.products ul.products[class*="columns-"] li.product {
    height: 377px;
    min-height: 377px;
    padding: 0 9.8px 19.6px;
    width: 190px !important;
  }
  body.single-product .related.products ul.products li.product figure,
  body.single-product .related.products ul.products li.product figure > .ct-media-container {
    height: 170.4px !important;
    width: 170.4px;
  }
  body.single-product .related.products ul.products li.product .entry-meta {
    font-size: 10.2px;
    line-height: 12.24px;
    margin: 9.52px 0 1.02px;
  }
  body.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
    font-size: 13.6px;
    font-weight: 400;
    line-height: 18.52px;
    margin: 1.36px 0;
    min-height: 0;
  }
  body.single-product .related.products ul.products li.product .price { font-size: 13.6px; line-height: 13.6px; margin: 0; }
  body.single-product .related.products ul.products li.product .ct-woo-card-actions { margin-top: 18.96px; padding-bottom: 15.52px; }
}

@media (max-width: 689px) {
  #header [data-device="mobile"] .ct-header-search { display: none !important; }
  #header [data-device="mobile"] [data-id="cart"] .ct-label { display: none !important; }
  #header [data-device="mobile"] [data-row="middle"] > .ct-container {
    height: 70px;
    margin: 0 auto;
    max-width: 360px;
    width: 360px;
  }
  #header [data-device="mobile"] [data-row="middle"] {
    border-bottom: 0;
    box-shadow: inset 0 -1px #eee;
  }
  #header [data-device="mobile"] .site-logo-container img {
    height: 31px;
    max-height: 31px;
    width: 86px;
  }
  #header [data-device="mobile"] .ct-header-trigger,
  #header [data-device="mobile"] .ct-header-trigger .ct-icon {
    width: 24.31px;
  }
  #header [data-device="mobile"] .ct-header-trigger .ct-icon { height: 14px; }
  #header [data-device="mobile"] [data-id="cart"] .ct-cart-item,
  #header [data-device="mobile"] [data-id="cart"] .ct-icon-container,
  #header [data-device="mobile"] [data-id="cart"] .ct-icon-container svg {
    height: 28.16px;
    width: 28.16px;
  }
  #header [data-device="mobile"] [data-id="cart"] .ct-dynamic-count-cart {
    align-items: center;
    background: transparent;
    color: #000;
    display: flex !important;
    font-family: Lato, Arial, sans-serif;
    font-size: 10px;
    font-weight: 700;
    inset: 3px 0 0;
    justify-content: center;
    line-height: 1;
    padding: 0;
    position: absolute;
  }
  #offcanvas { background: rgba(0, 0, 0, .55); }
  #offcanvas .ct-panel-inner {
    align-self: flex-start;
    background: linear-gradient(to bottom, transparent 0 30px, rgba(255, 255, 255, .97) 30px 100%);
    box-shadow: none;
    max-width: 300px;
    overflow: visible;
    width: 300px;
  }
  #offcanvas[data-behaviour*="right-side"] .ct-panel-inner,
  #offcanvas[data-behaviour*="left-side"] .ct-panel-inner { transform: translate3d(-20%, 0, 0); }
  #offcanvas.active .ct-panel-inner { transform: translate3d(0, 0, 0); }
  #offcanvas .ct-panel-actions {
    align-items: center;
    background: rgba(12, 22, 30, .88);
    height: 40px;
    justify-content: flex-end;
    left: 300px;
    padding: 0 5px;
    position: absolute;
    top: 30px;
    width: 90px;
  }
  #offcanvas .ct-toggle-close { color: #c6ccd0; margin: 0; }
  #offcanvas .ct-panel-content-inner {
    align-items: stretch;
    padding: 50px 0 0;
  }
  .corelie-mobile-menu-search {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 40px;
    height: 40px;
    margin: 0 20px 27px !important;
    width: 260px !important;
  }
  .corelie-mobile-menu-search input[type="search"] {
    background: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 0;
    color: #666;
    font-size: 16px;
    height: 40px;
    padding: 0 12px;
  }
  .corelie-mobile-menu-search button {
    align-items: center;
    background: #000;
    border: 0;
    border-radius: 0;
    color: #fff;
    display: flex;
    height: 40px;
    justify-content: center;
    min-height: 40px;
    padding: 0;
    width: 40px;
  }
  .corelie-mobile-menu-search button:hover { background: #000; color: #fff; }
  .corelie-mobile-menu-search__icon,
  .corelie-mobile-menu-search__icon .ct-icon { display: block; height: 20px; width: 20px; }
  .corelie-mobile-menu-search__icon .ct-icon { fill: currentColor; }
  #offcanvas .mobile-menu > ul > li { border-bottom: 1px solid #e8e8e8; }
  #offcanvas .mobile-menu .ct-sub-menu-parent {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 48px;
  }
  #offcanvas .mobile-menu > ul > li > a,
  #offcanvas .mobile-menu .ct-sub-menu-parent > a {
    align-items: center;
    color: #666;
    display: flex;
    font-size: 13.6px;
    font-weight: 700;
    height: 52px;
    line-height: 18px;
    min-height: 52px;
    padding: 0 20px;
    text-transform: uppercase;
  }
  #offcanvas .mobile-menu .ct-toggle-dropdown-mobile {
    color: #999;
    height: 52px;
    padding: 0 17px;
    width: 48px;
  }
  #offcanvas .mobile-menu .ct-toggle-dropdown-mobile .ct-icon { fill: #999 !important; }
  #offcanvas .ct-header-cta[data-id="button"] { margin: 0; width: 100%; }
  #offcanvas .ct-header-cta[data-id="button"] .ct-button-ghost {
    align-items: center;
    border: 0;
    border-radius: 0;
    color: #666;
    display: flex;
    font-size: 13.6px;
    font-weight: 700;
    height: 52px;
    justify-content: flex-start;
    min-height: 52px;
    padding: 0 20px;
    text-transform: uppercase;
    width: 100%;
  }
}

/* Reference scroll state: the announcement row moves away and the main header stays visible. */
#header {
  position: sticky;
  top: -30px;
  z-index: 9999;
}

/* Focused source-parity pass: homepage mixed carousels, connected/newsletter
 * content, and the Blocksy footer remain independently editable. */
.corelie-featured-products > .e-con-inner { flex-direction: column !important; gap: 0 !important; }
.corelie-new-arrivals .corelie-hero-copy h2,
.corelie-new-arrivals .corelie-hero-copy .elementor-heading-title { color: #fff !important; }
.corelie-new-arrivals .corelie-hero-copy .elementor-button {
  border-radius: 999px;
  border-width: 0;
  color: #0a2538;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-weight: 500;
  text-transform: none;
}
.corelie-new-arrivals > .corelie-hero-copy {
  --gap: 19.2px;
  --row-gap: 19.2px;
  gap: 19.2px !important;
  max-width: none;
  padding-inline: 0 !important;
  row-gap: 19.2px !important;
  width: 552px;
}
.corelie-new-arrivals .corelie-hero-copy h2,
.corelie-stay-copy .elementor-widget-heading h2,
.corelie-newsletter h2 { font-weight: 500 !important; }
.corelie-brand-promos .elementor-widget-heading h2 {
  color: #1f2a3a !important;
  font-weight: 500 !important;
}
.corelie-stay-copy .elementor-widget-heading h2 { color: #1f2a3a; }
.corelie-stay-copy .elementor-widget-text-editor {
  color: #333;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.corelie-stay-copy .elementor-widget-image img {
  height: auto !important;
  max-width: none;
  width: 180px !important;
}
.corelie-stay-copy .elementor-button {
  background: #1f2a3a !important;
  border-color: #1f2a3a !important;
  color: #fff !important;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 19.2px;
  white-space: nowrap;
}
.corelie-newsletter-section { overflow: hidden; }
.corelie-social-stats { background: #7ac9ee; }
.corelie-newsletter__description { margin-left: auto !important; margin-right: auto !important; }
.corelie-newsletter h2 {
  color: #1a1a1a;
  font-family: "Uniform Condensed", "Arial Narrow", sans-serif !important;
}
.corelie-newsletter__description {
  color: #4a4a4a !important;
  font-family: "Uniform Condensed", "Arial Narrow", sans-serif;
}
.corelie-newsletter__form { align-items: start; }
.corelie-newsletter__scroller { overflow: visible; }
.corelie-newsletter select,
.corelie-newsletter input {
  background: #fff;
  border: 1px solid #d5d5d5;
  border-radius: 7px;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .08);
  color: #777;
  padding: 0 12px;
}
.corelie-newsletter select { appearance: auto; }
.corelie-newsletter__message:empty { display: none; }
.corelie-newsletter__consent {
  color: #666 !important;
  font-size: 12.8px !important;
  line-height: 19.2px !important;
}
.corelie-newsletter__consent a { color: #334862; text-decoration: underline; }
.corelie-newsletter__back {
  background: transparent;
  border: 1px solid #ddd;
  border-radius: 40px;
  color: #1f2a3a;
  display: inline-block;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 14.4px;
  line-height: 21.6px;
  margin-left: auto;
  margin-right: auto;
  padding: 8px 24px;
  transition: all .2s;
}

.corelie-newsletter__back:hover,
.corelie-newsletter__back:focus-visible {
  background: #f5f5f5;
  color: #111;
  text-decoration: underline;
}

/* Reference-matched global floating back-to-top control. */
.corelie-back-to-top {
  appearance: none;
  align-items: center;
  background: transparent;
  border: 2px solid #c0c0c0;
  border-radius: 999px;
  bottom: 20px;
  box-shadow: none;
  color: #c0c0c0;
  display: flex;
  height: 38.796875px;
  justify-content: center;
  left: auto;
  margin: 0;
  min-height: 0;
  min-width: 0;
  opacity: 0;
  padding: 0;
  pointer-events: none;
  position: fixed;
  right: 20px;
  transform: translateY(30%);
  transition: transform .3s, border-color .3s, background-color .3s, box-shadow .3s, opacity .3s, color .3s;
  width: 38.796875px;
  z-index: 21;
}

.corelie-back-to-top.active {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.corelie-back-to-top:hover,
.corelie-back-to-top:focus-visible {
  background: #000;
  border-color: #000;
  color: #fff;
}

.corelie-back-to-top:focus-visible {
  outline: 2px solid #000;
  outline-offset: 3px;
}

.corelie-back-to-top__icon {
  display: block;
  font-family: "fl-icons";
  font-size: 18.624px;
  font-style: normal;
  font-weight: 400;
  line-height: 22.3488px;
}

.corelie-back-to-top__icon::before { content: "\f106"; }

@media (max-width: 849px) {
  .corelie-back-to-top { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .corelie-back-to-top { transition: none; }
}

@media (min-width: 1025px) {
  .elementor-element-e95947a6 .corelie-product-card { height: 430px; }
  .elementor-element-f83c1d4e .corelie-products { width: 1240px; }
  .elementor-element-f83c1d4e .corelie-product-card {
    display: block;
    height: 406.4px;
    padding: 0 9.8px 19.6px;
  }
  .elementor-element-f83c1d4e .corelie-product-card__media {
    height: 290.4px;
    margin: 0;
    width: 290.4px;
  }
  .elementor-element-f83c1d4e .corelie-product-card__title {
    font-size: 14.4px;
    line-height: 20.16px;
    margin: -27.2px auto 1.44px;
    max-width: 206.8px;
    min-height: 60.48px;
    position: relative;
    z-index: 2;
  }
  .elementor-element-f83c1d4e .corelie-product-card__price { position: relative; z-index: 2; }
  .corelie-featured-products { height: 932.6px !important; min-height: 932.6px !important; }

  .corelie-new-arrivals .corelie-hero-copy h2,
  .corelie-new-arrivals .corelie-hero-copy .elementor-heading-title {
    font-size: 32px;
    line-height: 41.6px;
  }
  .corelie-new-arrivals > .corelie-hero-copy {
    transform: translate(-50%, calc(-50% - 3.47px));
  }
  .corelie-brand-promos .elementor-widget-heading {
    left: 50%;
    position: relative;
    transform: translateX(-50%);
    width: 1376px;
  }
  .corelie-brand-promos .elementor-widget-heading h2 {
    left: 50%;
    position: relative;
    transform: translateX(-50%);
    width: 1376px;
  }
  .corelie-brand-banner > .corelie-hero-copy {
    box-sizing: border-box;
    height: 131.19px;
    padding: 24px !important;
    top: 55.77%;
    width: 700px;
  }
  .corelie-brand-banner > .corelie-hero-copy > .e-con-inner {
    gap: 24px !important;
    height: 83.19px;
    max-width: none;
    padding: 0 !important;
    width: 652px;
  }
  .corelie-brand-banner .corelie-hero-copy h2 {
    color: #fff;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 19.2px;
    font-weight: 400;
    line-height: 26.88px;
  }
  .corelie-brand-banner .corelie-hero-copy .elementor-button {
    border: 0;
    border-radius: 40px;
    box-sizing: border-box;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 13.6px;
    font-weight: 500;
    height: 32.31px;
    line-height: 16.32px;
    min-height: 32.31px;
    padding: 8px 28.8px;
    text-transform: lowercase;
    width: 177.42px;
  }

  .corelie-service-benefits {
    box-sizing: border-box;
    display: grid !important;
    gap: 16px !important;
    grid-template-columns: repeat(4, 308px);
    height: 86.1px !important;
    max-height: 86.1px !important;
    min-height: 86.1px !important;
    overflow: hidden !important;
    padding: 8px 80px 0 !important;
  }
  .corelie-service-benefits > .elementor-widget {
    height: 50.15px;
    text-align: left;
    width: 308px;
  }
  .corelie-service-benefits .elementor-icon-box-wrapper {
    align-items: center;
    flex-direction: row !important;
    gap: 12px !important;
    height: 40.55px;
    justify-content: flex-start;
    text-align: left;
  }
  .corelie-service-benefits .elementor-icon-box-icon {
    align-items: center;
    display: flex !important;
    flex: 0 0 40px;
    height: 40.55px;
    justify-content: center;
    margin: 0 !important;
    width: 40px;
  }
  .corelie-service-benefits .elementor-icon {
    font-size: 28px;
    height: 28px;
    line-height: 28px;
    width: 28px;
  }
  .corelie-service-benefits .elementor-icon-box-content { flex: 0 0 auto; width: max-content; }
  .corelie-service-benefits .elementor-icon-box-title {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 15.2px;
    font-weight: 600;
    line-height: 19.76px;
    margin: 0 0 3px;
    text-align: left;
  }
  .corelie-service-benefits .elementor-icon-box-description {
    color: #fff;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 12.8px;
    line-height: 16.64px;
    text-align: left;
  }
  .corelie-new-arrivals .corelie-hero-copy .elementor-button {
    font-size: 16px;
    height: 40.38px;
    line-height: 19.2px;
    min-height: 40.38px;
    padding: 9.6px 35.2px;
    width: 154.95px;
  }

  .corelie-stay-connected > .e-con-inner {
    align-items: center !important;
    display: grid !important;
    gap: 48px !important;
    grid-template-columns: 560px 560px;
    padding: 32px 0 !important;
  }
  .corelie-stay-connected > .e-con-inner > .elementor-widget-image {
    height: 248.4px !important;
    width: 560px;
  }
  .corelie-stay-connected > .e-con-inner > .elementor-widget-image img {
    height: 248.4px !important;
    width: 560px;
  }
  .corelie-stay-copy {
    align-items: flex-start;
    display: flex !important;
    gap: 0 !important;
    height: 328.2px;
    justify-content: flex-start;
    flex: 0 0 328.2px !important;
    min-height: 328.2px !important;
    padding: 0;
    padding-block: 16px 40px !important;
    padding-inline: 0 !important;
    width: 560px;
  }
  .corelie-stay-copy .elementor-widget-image { height: 64.5px; }
  .corelie-stay-copy .elementor-widget-image img { height: 64.5px !important; }
  .corelie-stay-copy .elementor-widget-heading { margin-top: 17.1px; }
  .corelie-stay-copy .elementor-widget-heading h2 {
    font-size: 28.8px;
    line-height: 37.44px;
  }
  .corelie-stay-copy .elementor-widget-text-editor {
    font-size: 19.2px;
    line-height: 30.72px;
    margin-top: 24px;
    width: 500px;
  }
  .corelie-stay-copy .elementor-widget-text-editor p { line-height: 30.72px; margin: 0; }
  .corelie-stay-copy .elementor-widget-button { margin-top: 24px; }
  .corelie-stay-copy .elementor-button {
    border-radius: 999px;
    height: 44.78px;
    min-height: 44.78px;
    padding: 12.8px 40px;
    text-transform: none;
    width: 137.7px;
  }

  .corelie-social-row { height: 98px; padding: 0 !important; }
  .corelie-social-row { background: #7ac9ee; }
  .corelie-social-stats {
    background: transparent;
    display: flex;
    gap: 20px 40px;
    height: 98px;
    justify-content: space-around;
    margin: 0 auto;
    width: 1368px;
  }
  .corelie-social-stat {
    color: #1e1e1e;
    flex: 0 0 auto;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 17px;
    font-weight: 600;
    gap: 14px;
    height: 38px;
    line-height: 27.2px;
    margin: 30px 0;
    min-height: 38px;
    padding: 0;
  }
  .corelie-social-stat img { height: 38px; width: 38px; }

  .corelie-newsletter { padding-top: 32px; }
  .corelie-newsletter h2 { margin: 0; }
  .corelie-newsletter__description {
    font-size: 20.8px !important;
    height: 62.4px;
    line-height: 31.2px !important;
    margin-bottom: 0 !important;
    margin-top: 12px !important;
    max-width: 600px;
  }
  .corelie-newsletter__form {
    gap: 16px;
    grid-template-columns: 329.2px 224.6px 224.6px 173.6px;
    height: 47px;
    margin: 32px auto 0;
    max-width: none;
    width: 1000px;
  }
  .corelie-newsletter select {
    font-size: 15.2px;
    height: 38.1px;
    line-height: 22.8px;
    margin-top: 4.4px;
  }
  .corelie-newsletter input:not(.corelie-hp) {
    font-size: 15.52px;
    height: 38.9px;
    line-height: 23.28px;
    margin-top: 4px;
    min-height: 38.9px;
  }
  .corelie-newsletter button {
    border-radius: 999px;
    font-size: 15.2px;
    height: 47px;
    line-height: 18.24px;
    min-height: 47px;
    padding: 0;
  }
  .corelie-newsletter__consent {
    height: 57.6px;
    margin: 32px auto 0 !important;
    max-width: 750px;
  }
  .corelie-newsletter__consent a { display: inline; }
  .corelie-newsletter__back { margin-top: 32px; }

  #footer [data-row="middle"] {
    box-sizing: border-box;
    height: 468px;
    max-height: 468px;
    min-height: 468px;
    padding: 70px 0 0;
  }
  #footer [data-row="middle"] > .ct-container {
    align-items: start;
    display: grid;
    gap: 24px;
    grid-template-columns: 292px 292px 292px 332px;
    height: 360px;
    margin: 0 auto;
    max-width: 1280px;
    padding: 0;
    width: 1280px;
  }
  #footer [data-row="bottom"] {
    box-sizing: border-box;
    height: 224px;
    max-height: 224px;
    min-height: 224px;
    padding: 54px 0 0;
  }
  #footer [data-row="bottom"] > .ct-container { max-width: 1280px; padding: 0; width: 1280px; }
}

#footer [data-row="middle"] .ct-widget { margin: 0; }
#footer [data-row="middle"] .widget-title {
  border-bottom: 1px solid rgba(255, 255, 255, .24);
  box-sizing: border-box;
  font-size: 16px;
  font-weight: 700;
  height: 33px;
  letter-spacing: 0;
  line-height: 25.6px;
  margin: 0 0 7px;
  padding: 0;
  text-transform: none;
}
#footer [data-row="middle"] .textwidget p { font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; font-size: 13.6px; line-height: 32px; margin: 0; }
#footer [data-row="middle"] .textwidget a { font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; font-size: 13.6px; line-height: 21.76px; }
#footer [data-row="middle"] .textwidget p > a:first-child { display: inline-block; }
#footer [data-row="middle"] .ct-widget { position: relative; top: 1.1px; }
#footer [data-row="middle"] .widget-title { margin-bottom: 9px; }
#footer [data-row="bottom"] .corelie-footer-policies a { font-size: 12.8px; line-height: 20.48px; }
#footer #custom_html-5 .textwidget p { color: rgba(255, 255, 255, .78); }
#footer .corelie-footer-social-icons {
  color: rgba(255, 255, 255, .9);
  display: flex;
  gap: 12px;
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
}
#footer .corelie-footer-social-icons a {
  align-items: center;
  background: rgba(255, 255, 255, .1);
  border-radius: 50%;
  display: flex;
  height: 34px;
  justify-content: center;
  width: 34px;
}
#footer .corelie-footer-social-icons a:hover,
#footer .corelie-footer-social-icons a:focus-visible { background: rgba(255, 255, 255, .18); }
#footer .corelie-footer-payment > span {
  color: #fff;
  display: block;
  font-size: 12px;
  line-height: 19.2px;
  margin-bottom: 8px;
  opacity: .8;
}
#footer .corelie-footer-payment > div { display: flex; gap: 6.4px; }
#footer .corelie-footer-social-icons img,
#footer .corelie-footer-payment img {
	display: block;
}
#footer .corelie-footer-payment svg,
#footer .corelie-footer-payment img {
  background: #fff;
  border-radius: 3px;
  display: block;
  flex: 0 0 34px;
}
#footer [data-row="middle"] .textwidget .corelie-footer-country {
  font-size: 13.6px;
  line-height: 21.76px;
  margin: 16px 0 0;
  opacity: .9;
}
#footer [data-row="middle"] .textwidget .corelie-footer-company {
  font-size: 11.2px;
  line-height: 16px;
  margin: 7px 0 0;
}
#footer [data-row="middle"] .textwidget .corelie-footer-company a {
  font-size: 11.2px;
  line-height: 16px;
}
#footer .corelie-footer-bottom-logo {
  display: block;
  filter: brightness(0) invert(1);
  height: 31px;
  margin: 0 0 16px;
  width: 86px;
}
#footer a:hover,
#footer a:focus-visible {
  opacity: 1;
  text-decoration: underline;
}

@media (max-width: 689px) {
  .elementor-element-e95947a6 .corelie-product-card { min-height: 382.4px; }
  .elementor-element-f83c1d4e .corelie-products { width: 380px; }
  .elementor-element-f83c1d4e .corelie-product-card {
    height: 368.813px;
    padding: 0 9.8px 19.6px;
  }
  .elementor-element-f83c1d4e .corelie-product-card__title {
    margin: -6.8px auto 1.36px;
    max-width: 104.84px;
    min-height: 0;
    position: relative;
    z-index: 2;
  }
  .elementor-element-f83c1d4e .corelie-product-card__title a {
    display: block;
    font-size: 13.6px;
    line-height: 17.68px;
    width: 100%;
  }
  .elementor-element-f83c1d4e .corelie-product-card__price { position: relative; z-index: 2; }

  .corelie-new-arrivals .corelie-hero-copy h2,
  .corelie-new-arrivals .corelie-hero-copy .elementor-heading-title {
    font-size: 20.8px;
    line-height: 27.04px;
  }
  .corelie-new-arrivals .corelie-hero-copy .elementor-button {
    font-size: 14.4px;
    height: 35.28px;
    line-height: 17.28px;
    min-height: 35.28px;
    padding: 8px 24px;
    width: 124.52px;
  }
  .corelie-new-arrivals > .corelie-hero-copy { width: 358px; }
  .corelie-new-arrivals > .corelie-hero-copy {
    transform: translate(-50%, calc(-50% - .99px));
  }
  .corelie-brand-promos .elementor-widget-heading {
    left: auto;
    margin-left: auto;
    margin-right: auto;
    transform: none;
    width: 326px;
  }
  .corelie-brand-promos .elementor-widget-heading h2 {
    left: auto;
    transform: none;
    width: 326px;
  }
  .corelie-brand-banner > .corelie-hero-copy {
    box-sizing: border-box;
    height: 109.08px;
    padding: 24px !important;
    top: 55.58%;
    width: 342px;
  }
  .corelie-brand-banner > .corelie-hero-copy > .e-con-inner {
    gap: 16px !important;
    height: 61.08px;
    max-width: none;
    padding: 0 !important;
    width: 294px;
  }
  .corelie-brand-banner .corelie-hero-copy h2 {
    color: #fff;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 12.8px;
    font-weight: 400;
    line-height: 17.92px;
  }
  .corelie-brand-banner .corelie-hero-copy .elementor-button {
    border: 0;
    border-radius: 40px;
    box-sizing: border-box;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 12px;
    font-weight: 500;
    height: 27.17px;
    line-height: 14.4px;
    min-height: 27.17px;
    padding: 6.4px 19.2px;
    text-transform: lowercase;
    width: 144.75px;
  }

  .corelie-service-benefits {
    --flex-wrap: nowrap;
    box-sizing: border-box;
    display: flex !important;
    gap: 19.19px !important;
    height: 86.1px !important;
    flex-wrap: nowrap !important;
    overflow: hidden !important;
    padding: 8px 20px 0 !important;
  }
  .corelie-service-benefits > .elementor-widget {
    flex: 0 0 auto;
    height: 50.15px;
    text-align: left;
    width: auto;
  }
  .corelie-service-benefits > .elementor-widget:nth-child(1) { width: 180px; }
  .corelie-service-benefits > .elementor-widget:nth-child(2) { width: 196.84px; }
  .corelie-service-benefits > .elementor-widget:nth-child(3) { width: 236.17px; }
  .corelie-service-benefits > .elementor-widget:nth-child(4) { width: 293.77px; }
  .corelie-service-benefits .elementor-icon-box-wrapper {
    align-items: center;
    flex-direction: row !important;
    gap: 12px !important;
    height: 40.55px;
    justify-content: flex-start;
    text-align: left;
  }
  .corelie-service-benefits .elementor-icon-box-icon {
    align-items: center;
    display: flex !important;
    flex: 0 0 40px;
    height: 40.55px;
    justify-content: center;
    margin: 0 !important;
    width: 40px;
  }
  .corelie-service-benefits .elementor-icon {
    font-size: 28px;
    height: 28px;
    line-height: 28px;
    width: 28px;
  }
  .corelie-service-benefits .elementor-icon-box-content { flex: 0 0 auto; width: max-content; }
  .corelie-service-benefits .elementor-icon-box-title {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 15.2px;
    font-weight: 600;
    line-height: 19.76px;
    margin: 0 0 3px;
    text-align: left;
  }
  .corelie-service-benefits .elementor-icon-box-description {
    color: #fff;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 12.8px;
    line-height: 16.64px;
    text-align: left;
  }

  .corelie-stay-connected > .e-con-inner {
    box-sizing: border-box;
    height: 599.7px;
    padding: 0 !important;
    padding-block: 0 !important;
    padding-inline: 0 !important;
  }
  .corelie-stay-connected > .e-con-inner > .elementor-widget-image,
  .corelie-stay-connected > .e-con-inner > .elementor-widget-image img {
    flex: 0 0 158.8px !important;
    height: 158.8px !important;
    width: 358px;
  }
  .corelie-stay-connected > .e-con-inner > .elementor-widget-image,
  .corelie-stay-copy { position: relative; top: 32px; }
  .corelie-stay-copy {
    align-items: center;
    display: flex !important;
    gap: 0 !important;
    flex: 0 0 408.9px !important;
    height: 408.9px;
    min-height: 408.9px !important;
    padding: 0;
    padding-block: 47.9px 72px !important;
    padding-inline: 0 !important;
    text-align: center;
  }
  .corelie-stay-copy .elementor-widget-image { height: 64.5px; }
  .corelie-stay-copy .elementor-widget-image img { height: 64.5px !important; }
  .corelie-stay-copy .elementor-widget-heading { margin-top: 16px; }
  .corelie-stay-copy .elementor-widget-heading,
  .corelie-stay-copy .elementor-widget-button { text-align: center; width: 358px; }
  .corelie-stay-copy .elementor-widget-heading h2 { font-size: 24px; line-height: 31.2px; text-align: center; }
  .corelie-stay-copy .elementor-widget-text-editor {
    font-size: 17.6px;
    line-height: 28.16px;
    margin-top: 24px;
    text-align: center;
    width: 358px;
  }
  .corelie-stay-copy .elementor-widget-text-editor p { line-height: 28.16px; margin: 0; }
  .corelie-stay-copy .elementor-widget-button { margin-top: 24px; }
  .corelie-stay-copy .elementor-button {
    border-radius: 999px;
    height: 44.78px;
    min-height: 44.78px;
    padding: 12.8px 40px;
    text-transform: none;
    width: 137.7px;
  }

  .corelie-social-stats {
    background: #7ac9ee;
    display: flex;
    gap: 20px;
    overflow: hidden;
    padding: 30px 24px 35px;
  }
  .corelie-social-stat {
    color: #1e1e1e;
    flex: 0 0 auto;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    gap: 8px;
    height: 48px;
    justify-content: flex-start;
    line-height: 18.2px;
    min-height: 48px;
    padding: 0;
  }
  .corelie-social-stat img { height: 32px; width: 32px; }

  .corelie-newsletter { overflow: hidden; padding-top: 32px; }
  .corelie-newsletter h2 { margin: 0; }
  .corelie-newsletter__description {
    font-size: 17.6px !important;
    height: 79.2px;
    line-height: 26.4px !important;
    margin-bottom: 0 !important;
    margin-top: 12px !important;
    width: 358px;
  }
  .corelie-newsletter__scroller {
    box-sizing: border-box;
    height: 79px;
    margin: 32px 0 24px;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 8px 0 24px;
    scrollbar-width: none;
    width: 358px;
  }
  .corelie-newsletter__scroller::-webkit-scrollbar { display: none; }
  .corelie-newsletter__form {
    box-sizing: border-box;
    gap: 16px;
    grid-template-columns: 260px 200px 200px 140px;
    height: 47px;
    margin: 0;
    padding: 0 8px;
    width: 864px;
  }
  .corelie-newsletter select {
    font-size: 15.2px;
    height: 38.1px;
    line-height: 22.8px;
  }
  .corelie-newsletter input:not(.corelie-hp) {
    font-size: 16px;
    height: 40.1px;
    line-height: 24px;
    min-height: 40.1px;
  }
  .corelie-newsletter input:not(.corelie-hp):focus {
    border-color: #ddd !important;
    border-radius: 0 !important;
    box-shadow: 0 0 5px #ccc !important;
    outline: none !important;
  }
  .corelie-newsletter button {
    border-radius: 999px;
    font-size: 15.2px;
    height: 47px;
    line-height: 18.24px;
    min-height: 47px;
    padding: 0;
  }
  .corelie-newsletter__consent {
    height: 115.2px;
    margin: 0 auto !important;
    width: 358px;
  }
  .corelie-newsletter__consent a { display: block; margin: 0 auto; width: max-content; }
  .corelie-newsletter__back { margin-top: 32px; }

  #footer [data-row="middle"] {
    box-sizing: border-box;
    height: 1086px;
    max-height: 1086px;
    min-height: 1086px;
    padding: 70px 0 0;
  }
  #footer [data-row="middle"] > .ct-container {
    display: block;
    height: 1016px;
    margin: 0 auto;
    max-width: 350px;
    padding: 0;
    width: 350px;
  }
  #footer [data-row="middle"] [data-column="widget-area-1"] { height: 352px; }
  #footer [data-row="middle"] [data-column="widget-area-2"] { height: 224px; }
  #footer [data-row="middle"] [data-column="widget-area-3"] { height: 192px; }
  #footer [data-row="middle"] [data-column="widget-area-4"] { height: 248px; }
  #footer [data-row="middle"] [data-column="widget-area-4"] .widget-title { margin-bottom: 12px; }
  #footer [data-row="middle"] [data-column="widget-area-4"] .corelie-footer-social-icons { height: 43.59px; }
  #footer [data-row="middle"] [data-column="widget-area-4"] .corelie-footer-payment { min-height: 58.78px; }
  #footer [data-row="middle"] [data-column="widget-area-4"] .textwidget p { line-height: 25.6px; margin: 0 0 12px; }
  #footer [data-row="middle"] [data-column="widget-area-4"] .textwidget .corelie-footer-country { line-height: 21.76px; margin: 16px 0 0; }
  #footer [data-row="middle"] [data-column="widget-area-4"] .textwidget .corelie-footer-company { line-height: 16px; margin: 7px 0 0; }
  #footer [data-row="middle"] [data-column="widget-area-4"] .corelie-footer-logo { height: 31px; width: 86px; }
  #footer [data-row="bottom"] {
    box-sizing: border-box;
    height: 553px;
    max-height: 553px;
    min-height: 553px;
    padding: 26.34px 0 0;
  }
  #footer [data-row="bottom"] > .ct-container {
    margin: 0 auto;
    max-width: 350px;
    padding: 0;
    width: 350px;
  }
  #footer .corelie-footer-policies { gap: 0; margin-bottom: 18px; }
  #footer .corelie-footer-policies a { height: 43.2px; line-height: 20.48px; }
}
@media (min-width: 1025px) {
  body.corelie-scrolled-header #header [data-device="desktop"] [data-row="middle"] { min-height: 70px; }
  body.corelie-scrolled-header #header [data-device="desktop"] [data-row="middle"] .menu > li > a { min-height: 70px; }
}

/* Product-summary typography and controls measured against the reference page. */
@media (min-width: 690px) {
  body.single-product .entry-summary .product_title {
    font-size: 27.2px;
    line-height: 35.36px;
    margin: 0 !important;
  }
  body.single-product .entry-summary .price {
    align-items: baseline;
    display: flex !important;
    font-family: Lato, Arial, sans-serif;
    font-size: 24px;
    gap: 7px;
    line-height: 24px;
    margin: 35px 0 12px !important;
  }
}

body.single-product .entry-summary .price del,
body.single-product .entry-summary .price ins {
  display: inline !important;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 24px !important;
  line-height: 24px !important;
  margin: 0 !important;
}
body.single-product .entry-summary .price del { order: 0; }
body.single-product .entry-summary .price ins { order: 1; }
body.single-product .entry-summary .stock { display: none !important; }
body.single-product .entry-summary > .ct-product-divider { display: none !important; }
body.single-product form.cart {
  display: block !important;
  margin: 0 0 20.8px !important;
  width: 100%;
}
body.single-product form.cart .ct-cart-actions {
  align-items: start;
  column-gap: 16px;
  display: grid !important;
  grid-template-columns: 88px 150.94px;
  grid-template-rows: 40.11px 39.25px;
  height: 95.36px;
  row-gap: 16px;
  width: 100%;
}
body.single-product form.cart .quantity,
body.single-product form.cart .quantity .qty {
  height: 40.11px !important;
  width: 88px !important;
}
body.single-product form.cart .single_add_to_cart_button:not(.corelie-buy-now) {
  font-family: Lato, Arial, sans-serif !important;
  height: 40.11px;
  min-height: 40.11px;
  overflow-wrap: normal;
  padding: 0 18.624px !important;
  text-transform: uppercase;
  white-space: nowrap !important;
  width: 150.94px;
  word-break: normal;
}
body.single-product form.cart .corelie-buy-now {
  font-family: Lato, Arial, sans-serif !important;
  grid-column: 1;
  grid-row: 2;
  height: 39.25px;
  justify-self: start;
  margin: 0 !important;
  min-height: 39.25px;
  width: 117.2px !important;
}
body.single-product .corelie-viewers {
  align-items: center;
  color: #4a4a4a;
  display: flex;
  font-size: 16px;
  height: 29.6px;
  line-height: 25.6px;
  margin: 0 !important;
}
body.single-product .product_meta {
  font-family: Lato, Arial, sans-serif;
  font-size: 12.8px;
  height: 94.4px;
  line-height: 20.48px;
  margin: 0 0 12.8px !important;
}
body.single-product .product_meta > span {
  display: block;
  font-size: 12.8px;
  font-weight: 400;
  height: 31.47px;
  line-height: 20.48px;
  margin: 0 !important;
  padding: 5px 0;
  text-transform: none;
}
body.single-product .product_meta > span > * { font-size: 12.8px; font-weight: 400; }

@media (max-width: 689px) {
  body.single-product .entry-summary .product_title {
    font-size: 22.4px;
    line-height: 29.12px;
    margin: 0 !important;
  }
  body.single-product .entry-summary .price {
    align-items: baseline;
    display: flex !important;
    font-family: Lato, Arial, sans-serif;
    font-size: 24px;
    gap: 7px;
    line-height: 24px;
    margin: 82.81px 0 12px !important;
  }
  body.single-product form.cart .ct-cart-actions { grid-template-columns: 80px 150.94px; }
  body.single-product form.cart .quantity,
  body.single-product form.cart .quantity .qty { width: 80px !important; }
}

/* Archive and product-detail parity: preserve WooCommerce behavior while
 * matching the reference card rhythm, pagination, tabs, and mobile flow. */
body.post-type-archive-product.woocommerce ul.products li.product figure,
body.single-product .related.products ul.products li.product figure {
  margin-bottom: 0 !important;
}
body.post-type-archive-product.woocommerce ul.products li.product .entry-meta,
body.single-product .related.products ul.products li.product .entry-meta {
  font-family: Lato, Arial, sans-serif;
  font-weight: 400;
}
body.post-type-archive-product.woocommerce ul.products li.product .price,
body.single-product .related.products ul.products li.product .price {
  color: #4a4a4a;
  font-family: Lato, Arial, sans-serif;
  font-weight: 400;
  text-align: left;
}
body.post-type-archive-product.woocommerce ul.products li.product .woocommerce-loop-product__title,
body.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
  color: #4a4a4a;
}
body.post-type-archive-product.woocommerce ul.products li.product .sale-price,
body.single-product .related.products ul.products li.product .sale-price {
  display: inline !important;
}
body.post-type-archive-product.woocommerce ul.products li.product .sale-price del,
body.post-type-archive-product.woocommerce ul.products li.product .sale-price ins,
body.single-product .related.products ul.products li.product .sale-price del,
body.single-product .related.products ul.products li.product .sale-price ins {
  color: #4a4a4a;
  display: inline !important;
  font-size: inherit !important;
  font-weight: 400;
  margin: 0 !important;
  order: initial;
}
body.post-type-archive-product.woocommerce ul.products li.product .sale-price del::after,
body.single-product .related.products ul.products li.product .sale-price del::after {
  content: " ";
}
body.post-type-archive-product.woocommerce ul.products li.product .sale-price ins,
body.single-product .related.products ul.products li.product .sale-price ins {
  margin-left: 3.64px !important;
}
body.post-type-archive-product.woocommerce ul.products li.product .button,
body.single-product .related.products ul.products li.product .button {
  font-family: Lato, Arial, sans-serif !important;
}
body.post-type-archive-product.woocommerce ul.products li.product.post-33 .entry-meta { display: none !important; }
body.single-product .corelie-buy-now { white-space: nowrap; }

body.post-type-archive-product.woocommerce .ct-pagination {
  align-items: center;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 5.44px !important;
  grid-template-columns: none;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  padding-right: 2.97px;
  width: 360px;
}
body.post-type-archive-product.woocommerce .ct-pagination .ct-hidden-sm {
  align-items: center;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 5.44px !important;
  margin: 0 !important;
}
body.post-type-archive-product.woocommerce .ct-pagination .page-numbers {
  align-items: center;
  background: transparent;
  border: 2px solid #4a4a4a;
  border-radius: 99px;
  color: #4a4a4a;
  display: flex;
  font-family: Lato, Arial, sans-serif;
  font-size: 14.96px;
  font-weight: 700;
  height: 33.66px;
  justify-content: center;
  line-height: 29.92px;
  margin: 0 !important;
  min-width: 33.66px !important;
  padding: 0 !important;
  width: 33.66px !important;
  flex: 0 0 33.66px !important;
  box-sizing: border-box;
}
body.post-type-archive-product.woocommerce .ct-pagination .page-numbers.current {
  background: #000;
  border-color: #000;
  color: #fff;
}
body.post-type-archive-product.woocommerce .ct-pagination a.page-numbers:hover,
body.post-type-archive-product.woocommerce .ct-pagination a.page-numbers:focus-visible {
  background: #000;
  border-color: #000;
  color: #fff;
  text-decoration: underline;
}
body.post-type-archive-product.woocommerce .ct-pagination > .next.page-numbers {
  border-color: #4a4a4a;
  border-radius: 99px;
  font-size: 14.96px;
  padding: 0;
  position: relative;
  left: 2.96px;
  text-transform: none;
}
body.post-type-archive-product.woocommerce .ct-pagination > .next.page-numbers i,
body.post-type-archive-product.woocommerce .ct-pagination > .prev.page-numbers i {
  font-size: 15px;
  line-height: 1;
}

body.single-product .woocommerce-tabs ul.tabs {
  align-items: flex-start;
  height: 40.47px;
  justify-content: flex-start !important;
  margin: -30px 0 0 !important;
  width: 100%;
}
body.single-product .woocommerce-tabs ul.tabs li {
  display: block !important;
  flex: 0 0 auto;
  height: 40.47px;
  justify-content: flex-start;
  width: auto;
}
body.single-product .woocommerce-tabs ul.tabs li:first-child { margin-right: 7px; }
body.single-product .woocommerce-tabs ul.tabs li + li { margin-left: 7px; }
body.single-product .woocommerce-tabs ul.tabs li a {
  box-shadow: none !important;
  color: rgba(74, 74, 74, .85) !important;
  display: inline-flex;
  font-family: Lato, Arial, sans-serif;
  font-size: 12.8px;
  font-weight: 700;
  height: 40.47px;
  letter-spacing: .256px;
  line-height: 20.48px !important;
  padding: 10px 0 !important;
  text-align: left;
  width: auto;
}
body.single-product .woocommerce-tabs ul.tabs li a:hover,
body.single-product .woocommerce-tabs ul.tabs li a:focus-visible {
  border-color: rgba(18, 18, 18, .85) !important;
  color: rgba(18, 18, 18, .85) !important;
  text-decoration: underline;
}
body.single-product .woocommerce-tabs ul.tabs li.active a {
  box-shadow: none !important;
  color: rgba(18, 18, 18, .85) !important;
  position: relative;
}
body.single-product .woocommerce-tabs ul.tabs li::before,
body.single-product .woocommerce-tabs ul.tabs li::after { content: none !important; }
body.single-product .woocommerce-tabs ul.tabs li.active a::before {
  background: #000;
  content: " " !important;
  display: block;
  height: 3px;
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 100%;
}
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
  color: #4a4a4a;
  padding-top: 16px !important;
}
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel > * {
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  width: 100% !important;
}
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel > div {
  margin-bottom: 0 !important;
}
body.single-product .related.products > .ct-module-title {
  color: #555;
  font-family: Lato, Arial, sans-serif;
  font-size: 20px;
  font-weight: 700;
  height: 54px;
  line-height: 24px;
  margin: 0 0 10px;
  padding: 15px 0;
  position: relative;
  text-transform: uppercase;
  top: 1.1px;
}
body.single-product .related.products ul.products {
  position: relative;
  top: 1.1px;
}
body.single-product .related.products ul.products li.product .onsale {
  font-size: 16px !important;
  font-weight: 700 !important;
  height: 44.8px !important;
  left: -6.4px !important;
  line-height: 13.6px !important;
  top: 30px !important;
  width: 44.8px !important;
}
body.single-product .woocommerce-product-gallery .onsale {
  font-size: 20.8px !important;
  font-weight: 700 !important;
  height: 58.23px !important;
  left: -8.31px !important;
  line-height: 17.68px !important;
  top: 30px !important;
  width: 58.23px !important;
}
body.single-product .entry-summary .product_title { color: #555; }
body.single-product .entry-summary .price { color: #4a4a4a; }
body.single-product .corelie-viewers::before {
  content: "\f118";
  font-family: "Font Awesome 5 Free";
  font-size: 18px;
  font-weight: 400;
  margin-right: 10px;
}
body.single-product .product_meta > span {
  border-top: 1px dotted #ddd;
  color: #4a4a4a;
  font-size: 12.8px !important;
  font-weight: 400 !important;
  text-transform: none !important;
}
body.single-product .product_meta > span > * {
  font-size: 12.8px !important;
  font-weight: 400 !important;
  text-transform: none !important;
}
body.single-product .product_meta a { color: #334862; }
body.single-product .product_meta .sku { color: #4a4a4a; }

@media (min-width: 690px) {
  body.single-product .woocommerce-tabs ul.tabs li:first-child,
  body.single-product .woocommerce-tabs ul.tabs li:first-child a { width: 90.28px; }
  body.single-product .woocommerce-tabs ul.tabs li:nth-child(2),
  body.single-product .woocommerce-tabs ul.tabs li:nth-child(2) a { width: 81.03px; }
}

@media (max-width: 689px) {
  body.post-type-archive-product.woocommerce .woocommerce-ordering {
    align-items: center;
    display: flex;
  }
  body.post-type-archive-product.woocommerce .woocommerce-ordering select {
    background: #fff;
    border: 1px solid #ddd;
    box-shadow: inset 0 -22.4px 16px rgba(0, 0, 0, .02);
    color: #333;
    display: inline-block;
    height: 40.11px;
    margin: 5px 0;
    min-height: 40.11px;
    padding: 0 22.4px 0 12px;
    font-size: 16px;
  }
  body.post-type-archive-product.woocommerce ul.products li.product.post-33 .woocommerce-loop-product__title {
    margin-top: 11.93px !important;
  }
  body.post-type-archive-product.woocommerce ul.products li.product .onsale {
    font-size: 16px !important;
    font-weight: 700 !important;
    height: 44.8px !important;
    left: -6.4px !important;
    line-height: 13.6px;
    text-transform: none !important;
    top: 30px !important;
    width: 44.8px !important;
  }
  body.single-product .woocommerce-tabs ul.tabs {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    height: 80.94px;
  }
  body.single-product .woocommerce-tabs ul.tabs li {
    height: 40.47px;
    margin: 0 !important;
    width: 360px;
  }
  body.single-product .woocommerce-tabs ul.tabs li a {
    display: block !important;
    line-height: 20.48px !important;
    padding: 10px 0 !important;
    width: 360px !important;
    text-align: left !important;
    position: relative;
    top: -1px;
  }
  body.single-product .woocommerce-product-gallery .onsale {
    font-size: 19.2px !important;
    height: 53.75px !important;
    left: -7.67px !important;
    line-height: 16.32px !important;
    width: 53.75px !important;
  }
  body.single-product .related.products > .ct-module-title {
    font-size: 16px;
    height: 49.19px;
    line-height: 19.2px;
    margin-bottom: 8px;
  }
}

/* Button, control, and link parity pass measured against the public source. */
.corelie-buy-now,
.corelie-product-card__button,
.woocommerce ul.products li.product .button,
.single_add_to_cart_button,
.checkout-button,
#place_order,
body.woocommerce-cart #main .return-to-shop .button,
body.woocommerce-account #customer_login button.button {
  background: #000 !important;
  border-color: rgba(0, 0, 0, .05) !important;
}
.corelie-product-card__button:hover,
.corelie-product-card__button:focus-visible,
.corelie-buy-now:hover,
.corelie-buy-now:focus-visible,
.single_add_to_cart_button:hover,
.single_add_to_cart_button:focus-visible,
body.woocommerce-cart #main .return-to-shop .button:hover,
body.woocommerce-cart #main .return-to-shop .button:focus-visible,
body.woocommerce-account #customer_login button.button:hover,
body.woocommerce-account #customer_login button.button:focus-visible {
  background: #000 !important;
  border-color: rgba(0, 0, 0, .05) !important;
  color: #fff !important;
  text-decoration: underline;
}

.corelie-hero > .corelie-hero-copy .elementor-button {
  align-items: center;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, .08);
  border-radius: 40px;
  box-sizing: border-box;
  color: #000;
  display: inline-flex;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 14.4px;
  font-weight: 500;
  height: 38.47px;
  justify-content: center;
  letter-spacing: .3px;
  line-height: 17.28px;
  min-height: 38.47px;
  padding: 0;
  position: relative;
  top: -5.48px;
  width: 190.16px;
}
.corelie-hero > .corelie-hero-copy .elementor-button:hover,
.corelie-hero > .corelie-hero-copy .elementor-button:focus-visible,
.corelie-new-arrivals .corelie-hero-copy .elementor-button:hover,
.corelie-new-arrivals .corelie-hero-copy .elementor-button:focus-visible {
  background: #f5f5f5;
  color: #111;
  text-decoration: underline;
  transform: scale(1.02);
}
.corelie-hero > .corelie-hero-copy .elementor-button:hover,
.corelie-hero > .corelie-hero-copy .elementor-button:focus-visible { border-color: rgba(0, 0, 0, .12); }
.corelie-new-arrivals .corelie-hero-copy .elementor-button {
  border: 1px solid rgba(0, 0, 0, .1);
  border-radius: 40px;
  color: #000;
  letter-spacing: .3px;
}
.corelie-stay-copy .elementor-button {
  border-color: #fff !important;
  border-radius: 40px;
  letter-spacing: .5px;
}
.corelie-stay-copy .elementor-button:hover,
.corelie-stay-copy .elementor-button:focus-visible {
  background: #2c3d55 !important;
  border-color: #111 !important;
  color: #111 !important;
  text-decoration: underline;
  transform: scale(1.02);
}
.corelie-newsletter button {
  background: #1f2a3a;
  border-radius: 40px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
  font-weight: 600;
  letter-spacing: .456px;
}
.corelie-newsletter button:hover,
.corelie-newsletter button:focus-visible {
  background: #2c3d55 !important;
  color: #fff !important;
}
body.woocommerce-account #customer_login .required { color: #222; }
body.woocommerce-account #customer_login .lost_password a {
  color: #334862;
  font-family: Arial, sans-serif;
}
body.woocommerce-account #customer_login .lost_password a:hover,
body.woocommerce-account #customer_login .lost_password a:focus-visible {
  color: #111;
  text-decoration: underline;
}
body.woocommerce-account #customer_login button.button:hover,
body.woocommerce-account #customer_login button.button:focus-visible { text-decoration: none; }

.corelie-buy-now,
.corelie-product-card__button,
.single_add_to_cart_button,
body.woocommerce-cart #main .return-to-shop .button,
body.woocommerce-account #customer_login button.button { font-family: Arial, sans-serif !important; }

@media (min-width: 1025px) {
  .corelie-product-card__button {
    box-sizing: border-box;
    flex: 0 0 39.25px;
    height: 39.25px;
    margin-top: 18.62px;
    max-height: 39.25px;
    min-width: 117.19px;
    width: 117.19px;
  }
  .corelie-recommended-products .corelie-product-card:nth-child(11) .corelie-product-card__button { margin-top: 4.31px; }
  .corelie-recommended-products .corelie-product-card:nth-child(n + 12):nth-child(-n + 15) .corelie-product-card__button { margin-top: 5.75px; }
  .corelie-new-collections .corelie-product-card:nth-child(1) .corelie-product-card__button,
  .corelie-new-collections .corelie-product-card:nth-child(5) .corelie-product-card__button { margin-top: 17.27px; }
  .corelie-new-collections .corelie-product-card:nth-child(n + 2):nth-child(-n + 4) .corelie-product-card__button { margin-top: 18.71px; }
  .corelie-new-collections .corelie-product-card:nth-child(n + 6):nth-child(-n + 9) .corelie-product-card__button { margin-top: 56.2px; }
  .corelie-new-collections .corelie-product-card:nth-child(10) .corelie-product-card__button { margin-top: 36.05px; }
  .elementor-element-e95947a6 .corelie-product-card:nth-child(-n + 2) .corelie-product-card__button { margin-top: 24.52px; }
  .elementor-element-e95947a6 .corelie-product-card:nth-child(n + 3):nth-child(-n + 5) .corelie-product-card__button { margin-top: 5.8px; }

  body.post-type-archive-product.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 0; }
  body.post-type-archive-product.woocommerce ul.products li.product .entry-meta,
  body.post-type-archive-product.woocommerce ul.products li.product .woocommerce-loop-product__title,
  body.post-type-archive-product.woocommerce ul.products li.product .price,
  body.post-type-archive-product.woocommerce ul.products li.product .button { font-family: Arial, sans-serif !important; }
  body.post-type-archive-product.woocommerce ul.products li.product .woocommerce-loop-product__title { line-height: 19.66px; }
  body.post-type-archive-product.woocommerce ul.products li.product .ct-woo-card-actions {
    margin-top: 20.16px;
    padding-bottom: 15.52px;
  }
  body.post-type-archive-product.woocommerce ul.products li.product:nth-child(7) .ct-woo-card-actions,
  body.post-type-archive-product.woocommerce ul.products li.product:nth-child(8) .ct-woo-card-actions,
  body.post-type-archive-product.woocommerce ul.products li.product:nth-child(11) .ct-woo-card-actions { margin-top: 7.25px; }
  body.post-type-archive-product.woocommerce ul.products li.product:nth-child(10) .ct-woo-card-actions { margin-top: 19.26px; }
  body.post-type-archive-product.woocommerce ul.products li.product:nth-child(13) .ct-woo-card-actions { margin-top: 19.3px; }
  body.post-type-archive-product.woocommerce ul.products li.product:nth-child(n + 16):nth-child(-n + 18) .ct-woo-card-actions { margin-top: 5.41px; }
  body.post-type-archive-product.woocommerce ul.products li.product .button {
    box-sizing: border-box;
    flex: 0 0 39.25px;
    height: 39.25px;
    max-height: 39.25px;
    min-width: 117.19px;
    width: 117.19px;
  }
  body.post-type-archive-product.woocommerce ul.products li.product.post-33 .entry-meta {
    display: block !important;
    height: 0;
    overflow: hidden;
    visibility: hidden;
  }
}

body.single-product .summary .corelie-buy-now:hover,
body.single-product .summary .corelie-buy-now:focus-visible { text-decoration: none; }

body.post-type-archive-product.woocommerce ul.products li.product .button {
  display: inline-block;
  text-align: center;
  white-space: nowrap;
}

@media (max-width: 689px) {
  .corelie-hotspot__icon { height: 18px; width: 18px; }
  #header [data-device="mobile"] .ct-header-trigger {
    --theme-icon-color: rgba(74, 74, 74, .85);
    align-items: center;
    border-color: rgba(74, 74, 74, .85) !important;
    color: rgba(74, 74, 74, .85) !important;
    display: inline-flex;
    font-size: 12.8px;
    font-weight: 700;
    height: 49.17px;
    justify-content: center;
    line-height: 16px;
  }
  #header [data-device="mobile"] .ct-header-trigger .ct-icon {
    color: #000 !important;
    fill: #000 !important;
  }
  #header [data-device="mobile"] .ct-header-cart,
  #header [data-device="mobile"] .ct-header-cart .ct-cart-item {
    --theme-icon-color: #000;
    color: #000 !important;
  }
  #header [data-device="mobile"] .ct-header-cart .ct-cart-item {
    align-items: center;
    border-color: rgba(74, 74, 74, .85) !important;
    color: rgba(74, 74, 74, .85) !important;
    display: inline-flex;
    font-size: 12.8px;
    font-weight: 700;
    height: 55.81px;
    line-height: 16px;
  }
  body.post-type-archive-product.woocommerce ul.products li.product .button {
    box-sizing: border-box;
    flex: 0 0 39.25px;
    height: 39.25px;
    max-height: 39.25px;
    min-width: 117.19px;
    width: 117.19px;
  }
  .corelie-hero > .corelie-hero-copy .elementor-button {
    font-size: 13.6px;
    height: 34.31px;
    line-height: 16.32px;
    min-height: 34.31px;
    top: -7.09px;
    width: 173.63px;
  }
}

@media (min-width: 1025px) {
  .corelie-stay-copy .elementor-button {
    position: relative;
    top: -.56px;
  }
}

@media (max-width: 689px) {
  .corelie-recommended-products .corelie-product-card:first-child .corelie-product-card__button {
    position: relative;
    top: .17px;
  }
  body.post-type-archive-product.woocommerce ul.products li.product .button {
    position: relative;
    top: .14px;
  }
}

/* Full public-page parity pass: retain Elementor editability while restoring
 * the reference theme's content rhythm and archive card alignment. */
body.corelie-static-page main { min-height: 0 !important; }
body.corelie-static-page .corelie-content-section { padding-bottom: 125px; }
body.corelie-static-page .corelie-content-section,
body.corelie-static-page .corelie-content-section * { font-family: Arial, sans-serif !important; }
body.corelie-static-page .corelie-content-section > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title {
  color: #555;
  font-size: 18px;
  line-height: 23.4px;
  margin: 0 0 9px;
  text-align: inherit;
}
body.corelie-page-about-our-brands .corelie-content-section > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title,
body.corelie-page-media-inquiries .corelie-content-section > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title {
  font-size: 20px;
  line-height: 26px;
  margin-bottom: 10px;
}
body.corelie-page-customer-care-center .corelie-content-section:first-child > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title,
body.corelie-page-media-inquiries-1 .corelie-content-section > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title {
  font-size: 25.6px;
  line-height: 33.28px;
  margin-bottom: 12.8px;
}
body.corelie-page-careers .corelie-content-section > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title,
body.corelie-page-corningware .corelie-content-section > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title {
  font-size: 27.2px;
  line-height: 35.36px;
  margin-bottom: 13.6px;
}
body.corelie-page-media-inquiries-1 .cc-rich-text { padding-top: 30px; }
body.corelie-page-media-inquiries-1 .cc-custom-liquid .section--padded-default { min-height: 90px; }
body.corelie-page-return-policy .elementor > .corelie-content-section:first-child { padding-top: 95px !important; }
body.corelie-page-return-policy .corelie-content-section { padding-bottom: 190px; }
body.corelie-page-return-policy .corelie-content-section .is-divider {
  background: rgba(0, 0, 0, .1);
  display: block;
  height: 3px;
  margin: 16px 0;
  max-width: 30px;
  width: 100%;
}
body.corelie-page-return-policy .corelie-content-section .is-divider:last-child { margin-bottom: 0; }
body.corelie-page-return-policy .elementor-widget-text-editor > p,
body.corelie-page-return-policy .elementor-widget-text-editor > .elementor-widget-container > p { margin-bottom: 20.8px; }

body.post-type-archive-product.woocommerce ul.products li.product,
body.post-type-archive-product.woocommerce ul.products li.product .entry-meta,
body.post-type-archive-product.woocommerce ul.products li.product .woocommerce-loop-product__title {
  text-align: left;
}
body.tax-product_tag.woocommerce ul.products,
body.tax-product_cat.woocommerce ul.products { grid-template-rows: auto !important; }
body.tax-product_tag.woocommerce ul.products li.product,
body.tax-product_cat.woocommerce ul.products li.product {
  height: auto !important;
  min-height: 0 !important;
  padding-bottom: 19.6px;
}
body.tax-product_tag.woocommerce ul.products li.product.corelie-no-product-category .woocommerce-loop-product__title,
body.tax-product_cat.woocommerce ul.products li.product.corelie-no-product-category .woocommerce-loop-product__title { margin-top: 12.6px; }

@media (max-width: 689px) {
  #header [data-device="mobile"] .ct-header-trigger,
  #header [data-device="mobile"] .ct-header-trigger .ct-icon,
  #header [data-device="mobile"] .ct-header-cart,
  #header [data-device="mobile"] .ct-header-cart .ct-cart-item {
    --theme-icon-color: #000;
    border-color: #000 !important;
    color: #000 !important;
    fill: #000 !important;
  }
  body.tax-product_tag.woocommerce ul.products li.product.corelie-no-product-category .woocommerce-loop-product__title,
  body.tax-product_cat.woocommerce ul.products li.product.corelie-no-product-category .woocommerce-loop-product__title { margin-top: 11.89px; }
  body.corelie-page-media-inquiries-1 .reading-width--inline {
    margin-left: auto;
    margin-right: auto;
    max-width: 300px;
  }
  body.corelie-page-customer-care-center .corelie-content-section:first-child > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title {
    font-size: 19.2px;
    line-height: 24.96px;
    margin-bottom: 9.6px;
  }
  body.corelie-page-careers .corelie-content-section > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title,
  body.corelie-page-corningware .corelie-content-section > .e-con-inner > .elementor-widget-heading:first-child .elementor-heading-title {
    font-size: 22.4px;
    line-height: 29.12px;
    margin-bottom: 11.2px;
  }
  body.post-type-archive-product.woocommerce ul.products li.product .entry-meta,
  body.post-type-archive-product.woocommerce ul.products li.product .woocommerce-loop-product__title,
  body.post-type-archive-product.woocommerce ul.products li.product .price,
  body.post-type-archive-product.woocommerce ul.products li.product .button {
    font-family: Arial, sans-serif !important;
  }
  body.post-type-archive-product.woocommerce ul.products li.product:not(.corelie-no-product-category) .woocommerce-loop-product__title {
    line-height: 18.36px !important;
  }
}

body.post-type-archive-product.woocommerce ul.products li.product .woocommerce-loop-product__title a {
  color: #334862;
}
body.post-type-archive-product.woocommerce ul.products li.product .entry-meta,
body.post-type-archive-product.woocommerce ul.products li.product .entry-meta a {
  color: #4a4a4a;
}

/* Flatsome cart glyph geometry reproduced with Blocksy's editable cart item. */
#header .ct-header-cart .ct-cart-item {
  align-items: center;
  column-gap: 10px;
  height: 55.81px;
}
#header .ct-header-cart .ct-icon-container {
  display: block;
  flex: 0 0 28.16px;
  height: 35.81px;
  position: relative;
  width: 28.16px;
}
#header .ct-header-cart .ct-icon-container > svg { display: none; }
#header .ct-header-cart .ct-dynamic-count-cart,
#header .ct-header-cart .ct-dynamic-count-cart[data-count="0"] {
  align-items: center;
  background: transparent;
  border: 2px solid #000;
  border-radius: 0;
  box-sizing: border-box;
  color: #000;
  display: flex !important;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12.8px;
  font-weight: 700;
  height: 28.16px;
  inset: 3.84px 0 auto;
  justify-content: center;
  line-height: 24.32px;
  padding: 0;
  position: absolute;
  width: 28.16px;
}
#header .ct-header-cart .ct-dynamic-count-cart::after {
  border: 2px solid #000;
  border-bottom: 0;
  border-radius: 99px 99px 0 0;
  box-sizing: border-box;
  content: "";
  height: 8px;
  left: 50%;
  position: absolute;
  top: -8px;
  transform: translateX(-50%);
  width: 14px;
}
#header .site-logo-container img { position: relative; top: -.5px; }

@media (max-width: 689px) {
  #header [data-device="mobile"] [data-id="cart"] .ct-icon-container {
    height: 35.81px !important;
  }
  #footer [data-row="bottom"] {
    height: 553.03px;
    max-height: 553.03px;
    min-height: 553.03px;
  }
  body.home .corelie-featured-products {
    height: 838.844px !important;
    max-height: 838.844px !important;
    min-height: 838.844px !important;
  }
}

@media (min-width: 1025px) {
  #header [data-device="desktop"] [data-row="middle"] > .ct-container {
    margin: 0 auto !important;
    max-width: 1220px;
    padding-left: 0;
    padding-right: 0;
    width: 1220px !important;
  }
  body.home #header [data-device="desktop"] [data-row="middle"] > .ct-container {
    margin: 0 !important;
    max-width: none;
    padding-left: 15px;
    padding-right: 15px;
    width: 100% !important;
  }
  body.home .corelie-featured-products {
    height: 932.391px !important;
    max-height: 932.391px !important;
    min-height: 932.391px !important;
  }
  #header [data-device="desktop"] .site-logo-container img {
    height: 31px;
    max-height: 31px;
    width: 86px;
  }
  #header [data-device="desktop"] .ct-header-cart .ct-cart-item {
    width: 119.47px;
  }
  #header [data-device="desktop"] .ct-header-cart .ct-label {
    flex: 0 0 81.31px;
    font-family: Lato, Arial, sans-serif;
    height: 16px;
    line-height: 16px;
    text-transform: none;
    width: 81.31px;
  }
  #header [data-device="desktop"] .ct-header-cart .ct-label::before { content: "CART / "; }
  #footer [data-row="middle"] {
    height: 443.84px;
    max-height: 443.84px;
    min-height: 443.84px;
  }
  #footer [data-row="middle"] [data-column="widget-area-4"] .widget-title { margin-bottom: 12px; }
  #footer [data-row="middle"] [data-column="widget-area-4"] .corelie-footer-social-icons { height: 43.59px; }
  #footer [data-row="middle"] [data-column="widget-area-4"] .corelie-footer-payment { min-height: 58.78px; }
  #footer [data-row="bottom"] {
    height: 248.38px;
    max-height: 248.38px;
    min-height: 248.38px;
    padding-top: 24px;
  }
}

/* Homepage product typography follows the reference site's rendered fallback font. */
body.home .corelie-product-card,
body.home .corelie-product-card__brand,
body.home .corelie-product-card__title,
body.home .corelie-product-card__title a,
body.home .corelie-product-card__price,
body.home .corelie-product-card__price * {
  font-family: Arial, sans-serif !important;
}
body.home .corelie-product-card__brand { color: #4a4a4a; margin-top: 11.16px; }
body.home .corelie-featured-products .corelie-product-card__media + .corelie-product-card__title { margin-top: 12.594px; }
body.home .corelie-product-card__price { color: #4a4a4a; }
body.home .corelie-product-card__price .sale-price del {
  color: #111;
  font-size: 100%;
  opacity: .6;
}
body.home .corelie-product-card__price .sale-price ins { color: #111; }

@media (max-width: 689px) {
  body.home .corelie-product-card__brand { margin-top: 10.54px; }
  body.home .corelie-featured-products .corelie-product-card__media + .corelie-product-card__title { margin-top: 11.875px; }
  body.home .elementor-element-e95947a6 .corelie-products,
  body.home .elementor-element-e95947a6 .corelie-product-card {
    height: 382.437px;
    max-height: 382.437px;
    min-height: 382.437px;
  }
  body.home .corelie-featured-products .elementor-element-f83c1d4e .corelie-product-card__media + .corelie-product-card__title {
    line-height: 18.24px;
    margin-top: -8.172px;
  }
  body.home .elementor-element-f83c1d4e .corelie-product-card__title a { line-height: 18.24px; }
  body.home .elementor-element-f83c1d4e .corelie-product-card__price {
    margin-left: auto;
    margin-right: auto;
    width: 104.844px;
  }
  body.home .corelie-new-collections .corelie-product-card {
    height: 394.672px;
    max-height: 394.672px;
    min-height: 394.672px;
  }
  body.home .corelie-new-collections .corelie-product-card__title { line-height: 18.364px; }
}

@media (min-width: 1025px) {
  body.home .corelie-product-card__brand { margin-bottom: 0; }
  body.home .corelie-recommended-products .corelie-product-card__title { line-height: 19.792px; }
  body.home .corelie-new-collections .corelie-product-card__title,
  body.home .elementor-element-e95947a6 .corelie-product-card__title { line-height: 19.66px; }
  body.home .corelie-product-section .corelie-product-card .corelie-product-card__button { margin-top: 20.156px !important; }
}

/* Catalog controls and product rows match the reference storefront's rendered state. */
body.post-type-archive-product.woocommerce .woocommerce-ordering select {
  background-image: url("../icons/select-chevron.svg") !important;
  background-position: right 6.984px top 50% !important;
  background-size: auto 16px !important;
  background-position: right 7px center !important;
  background-repeat: no-repeat !important;
  background-size: 24px 24px !important;
}
body.post-type-archive-product.woocommerce ul.products li.product .sale-price del .amount {
  color: #111;
  font-size: 100% !important;
  opacity: .6;
}
body.post-type-archive-product.woocommerce ul.products li.product .sale-price ins .amount {
  color: #111;
  font-weight: 700;
}

@media (min-width: 1025px) {
  #header [data-device="desktop"] [data-row="middle"] .menu { gap: 14px !important; }
  #header [data-device="desktop"] [data-row="middle"] .menu > .menu-item-has-children > a > .ct-toggle-dropdown-desktop {
    margin-right: -13.094px;
  }
  #header [data-device="desktop"] [data-row="middle"] .menu > li > a,
  #header [data-device="desktop"] .ct-header-cta a,
  #header [data-device="desktop"] .ct-header-cart .ct-label { font-family: Arial, sans-serif !important; }
  body.post-type-archive-product.woocommerce .woo-listing-top {
    align-items: center;
    column-gap: 0;
    height: 48.9px;
    margin: 0 auto 30px;
    width: 1220px;
  }
  body.post-type-archive-product.woocommerce .woocommerce-result-count {
    color: #4a4a4a;
    flex: 0 0 155.64px;
    font-family: Lato, Arial, sans-serif;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: normal;
    line-height: 25.6px;
    margin: 0 20.45px 0 auto;
    position: relative;
    text-transform: none;
    top: -.96px;
    width: 155.64px;
  }
  body.post-type-archive-product.woocommerce .woocommerce-ordering {
    flex: 0 0 205.344px;
    height: 48.9px;
    margin: 0;
    width: 205.344px;
  }
  body.post-type-archive-product.woocommerce .woocommerce-ordering select {
    color: #333;
    font-size: 15.52px;
    height: 38.906px;
    min-height: 38.906px;
    padding: 0 21.728px 0 11.64px;
    width: 205.344px;
  }
  body.post-type-archive-product.woocommerce ul.products li.product.corelie-title-six-lines .woocommerce-loop-product__title {
    line-height: 19.35px !important;
  }
  body.post-type-archive-product.woocommerce main > .ct-container {
    padding-bottom: 30.953px;
  }
}

@media (max-width: 689px) {
  body.post-type-archive-product.woocommerce ul.products li.product.corelie-title-five-lines .woocommerce-loop-product__title {
    line-height: 18.204px !important;
  }
  body.post-type-archive-product.woocommerce ul.products li.product.corelie-title-six-lines .woocommerce-loop-product__title {
    line-height: 18.089px !important;
  }
}

/* Product pages size themselves from their actual media and metadata. The
 * reference storefront has no reserved thumbnail/meta rows when those rows do
 * not exist, so fixed template buckets create large blank areas. */
body.single-product .product_meta { height: auto; }
body.single-product .product_meta > span {
  height: auto;
  min-height: 31.47px;
}
body.single-product .entry-summary,
body.single-product .entry-summary .product_title,
body.single-product .entry-summary .price,
body.single-product .entry-summary form.cart,
body.single-product .corelie-viewers,
body.single-product .product_meta,
body.single-product .woocommerce-tabs,
body.single-product .related.products { font-family: Arial, sans-serif !important; }
body.single-product .woocommerce-tabs {
  height: auto;
  overflow: visible;
}
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel > :last-child {
  margin-bottom: 20.8px !important;
}
body.single-product .product.product_cat-uncategorized .woocommerce-tabs .woocommerce-Tabs-panel > :last-child {
  margin-bottom: 17.6px !important;
}

@media (min-width: 1025px) {
  body.single-product .product-entry-wrapper { height: auto; min-height: 0; }
  body.single-product .woocommerce-product-gallery { height: var(--corelie-product-main-height, 595px); }
  body.single-product .woocommerce-product-gallery.corelie-gallery-has-pills {
    height: calc(var(--corelie-product-main-height, 595px) + 144.14px);
  }
  body.single-product .entry-summary { height: auto; min-height: 0; }
  body.single-product .woocommerce-product-gallery .flexy-view,
  body.single-product .woocommerce-product-gallery .flexy-items,
  body.single-product .woocommerce-product-gallery .flexy-item,
  body.single-product .woocommerce-product-gallery .flexy-item > .ct-media-container,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container > figure {
    height: var(--corelie-product-main-height, 595px) !important;
    width: 595px !important;
  }
  body.single-product .woocommerce-product-gallery .flexy-item img,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container > figure > img {
    height: 100% !important;
    object-fit: fill !important;
    width: 595px !important;
  }
  body.single-product .related.products { height: 538.266px; }
  body.single-product:has(.product.type-product.product_cat-uncategorized) .related.products {
    height: 554.45px;
  }
}

@media (max-width: 689px) {
  body.single-product .product-entry-wrapper { height: auto; }
  body.single-product .woocommerce-product-gallery { height: var(--corelie-product-main-height, 360px); }
  body.single-product .woocommerce-product-gallery.corelie-gallery-has-pills {
    height: calc(var(--corelie-product-main-height, 360px) + 85.39px);
  }
  body.single-product .entry-summary { height: auto; }
  body.single-product .woocommerce-product-gallery .flexy-view,
  body.single-product .woocommerce-product-gallery .flexy-items,
  body.single-product .woocommerce-product-gallery .flexy-item,
  body.single-product .woocommerce-product-gallery .flexy-item > .ct-media-container,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container > figure {
    height: var(--corelie-product-main-height, 360px) !important;
    width: 360px !important;
  }
  body.single-product .woocommerce-product-gallery .flexy-item img,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container > figure > img {
    height: 100% !important;
    object-fit: fill !important;
    width: 360px !important;
  }
  body.single-product .entry-summary .price { margin-top: 35.63px !important; }
  body.single-product .product.product_cat-uncategorized .entry-summary .price {
    margin-top: 82.81px !important;
  }
  body.single-product .related.products { height: 440.625px; }
  body.single-product:has(.product.type-product.product_cat-uncategorized) .related.products {
    height: 456.06px;
  }
  body.single-product:has(.product.type-product.product_cat-home-page) .related.products {
    height: 422.95px;
  }

  /* The first two source product groups each end one text rhythm earlier on
   * phones; the newsletter owns the recovered space before the footer. */
  body.home .corelie-recommended-products {
    height: 2438.047px !important;
    max-height: 2438.047px !important;
    min-height: 2438.047px !important;
  }
  body.home .corelie-new-collections {
    height: 2095.953px !important;
    max-height: 2095.953px !important;
    min-height: 2095.953px !important;
  }
  body.home .corelie-newsletter-section {
    height: 564.9px !important;
    max-height: 564.9px !important;
    min-height: 564.9px !important;
  }

  #header [data-device="mobile"] .ct-header-trigger,
  #header [data-device="mobile"] .ct-header-trigger .ct-icon,
  #header [data-device="mobile"] .ct-header-cart,
  #header [data-device="mobile"] .ct-header-cart .ct-cart-item {
    --theme-icon-color: rgba(74, 74, 74, .85);
    border-color: rgba(74, 74, 74, .85) !important;
    color: rgba(74, 74, 74, .85) !important;
    fill: rgba(74, 74, 74, .85) !important;
  }
}

@media (min-width: 1025px) {
  body.post-type-archive-product.woocommerce ul.products li.product.post-33 .woocommerce-loop-product__title {
    margin-top: 12.6px !important;
  }
  body.post-type-archive-product.woocommerce main > .ct-container {
    padding-bottom: 35.05px !important;
  }
}

.corelie-product-card__button:hover,
.corelie-product-card__button:focus-visible,
.corelie-buy-now:hover,
.corelie-buy-now:focus-visible {
  background: #000 !important;
  border-color: rgba(0, 0, 0, .05) !important;
  color: #fff !important;
  text-decoration: underline !important;
}
body.post-type-archive-product.woocommerce .ct-pagination a.page-numbers:hover,
body.post-type-archive-product.woocommerce .ct-pagination a.page-numbers:focus-visible {
  background: #000 !important;
  border-color: #000 !important;
  color: #fff !important;
  text-decoration: underline !important;
}
body.woocommerce-account #customer_login .lost_password a:hover,
body.woocommerce-account #customer_login .lost_password a:focus-visible {
  border-color: #111 !important;
  color: #111 !important;
  text-decoration: underline !important;
}

@media (min-width: 1025px) {
  .corelie-product-grid:hover .corelie-product-carousel__controls,
  .corelie-product-grid:focus-within .corelie-product-carousel__controls {
    pointer-events: none;
  }
  .corelie-product-carousel__controls button:not(:disabled) { pointer-events: auto; }
}

@media (max-width: 689px) {
  body.post-type-archive-product.woocommerce .corelie-loop-quick-view {
    pointer-events: none;
  }
}

body.single-product .summary .corelie-buy-now:hover,
body.single-product .summary .corelie-buy-now:focus-visible {
  text-decoration: none !important;
}

/* The reference switches to its four-column medium layout between the phone
 * and desktop breakpoints. Keep this range explicit: Blocksy's default tablet
 * grid/header/footer otherwise falls back to three columns and a stacked
 * footer, which changes every archive by hundreds of pixels. */
@media (min-width: 690px) and (max-width: 1024px) {
  #header [data-device="mobile"] .ct-header-search,
  #header [data-device="mobile"] [data-id="cart"] .ct-label {
    display: none !important;
  }
  #header [data-device="mobile"] [data-row="middle"],
  #header [data-device="mobile"] [data-row="middle"] > .ct-container {
    height: 80px !important;
    min-height: 80px !important;
  }
  #header [data-device="mobile"] [data-row="middle"] > .ct-container {
    margin: 0 auto !important;
    max-width: 738px !important;
    width: 738px !important;
  }
  #header [data-device="mobile"] .site-branding {
    height: 31px !important;
    margin: 0 15px !important;
    width: 92px !important;
  }
  #header [data-device="mobile"] .site-logo-container img {
    height: 31px !important;
    max-height: 31px !important;
    width: 86px !important;
  }
  #header [data-device="mobile"] .ct-header-cart {
    height: 55.8px !important;
    margin-left: 7px !important;
    width: 28.16px !important;
  }
  #header [data-device="mobile"] [data-id="cart"] .ct-cart-item,
  #header [data-device="mobile"] [data-id="cart"] .ct-icon-container {
    height: 28.16px !important;
    width: 28.16px !important;
  }

  body.woocommerce.archive main > .ct-container {
    box-sizing: border-box;
    margin: 0 auto !important;
    max-width: none !important;
    padding: 35px 0 !important;
    width: 738px !important;
  }
  body.woocommerce.archive .woo-listing-top {
    height: 50.11px !important;
    justify-content: center !important;
    margin: 0 0 35px !important;
    width: 738px !important;
  }
  body.woocommerce.archive .woocommerce-result-count { display: none !important; }
  body.woocommerce.archive .woocommerce-ordering {
    height: 50.11px !important;
    margin: 0 !important;
    width: 212.39px !important;
  }
  body.woocommerce.archive .woocommerce-ordering select {
    display: block !important;
    height: 50.11px !important;
    min-height: 50.11px !important;
    padding: 0 14px !important;
    position: static !important;
    width: 212.39px !important;
  }
  body.woocommerce.archive .woocommerce-ordering .ct-sort-icon { display: none !important; }
  body.woocommerce.archive ul.products[class*="columns-"] {
    column-gap: 0 !important;
    grid-template-columns: repeat(4, 189.5px) !important;
    margin: 0 0 0 -10px !important;
    row-gap: 0 !important;
    width: 758px !important;
  }
  body.post-type-archive-product.woocommerce ul.products[class*="columns-"] {
    grid-template-rows: 403.17px 403.17px 403.17px 408.94px 408.94px !important;
  }
  body.woocommerce.archive ul.products[class*="columns-"] > li.product {
    box-sizing: border-box !important;
    display: flex !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 9.8px 19.6px !important;
    width: 189.5px !important;
  }
  body.woocommerce.archive ul.products li.product figure,
  body.woocommerce.archive ul.products li.product figure > .ct-media-container {
    height: 169.91px !important;
    width: 169.91px !important;
  }
  body.woocommerce.archive ul.products li.product .corelie-loop-quick-view {
    bottom: auto !important;
    top: 170.91px !important;
    width: 169.91px !important;
  }
  body.woocommerce.archive ul.products li.product .onsale {
    font-size: 16px !important;
    height: 44.8px !important;
    left: 3.41px !important;
    line-height: 25.6px !important;
    top: 30px !important;
    width: 44.8px !important;
  }
  body.woocommerce.archive ul.products li.product .entry-meta {
    font-family: Arial, sans-serif !important;
    font-size: 10.8px !important;
    line-height: 12.96px !important;
    margin: 11.16px 0 1.44px !important;
  }
  body.woocommerce.archive ul.products li.product.corelie-no-product-category .woocommerce-loop-product__title {
    margin-top: 12.6px !important;
  }
  body.woocommerce.archive ul.products li.product .woocommerce-loop-product__title {
    box-sizing: content-box !important;
    color: #334862 !important;
    font-family: Arial, sans-serif !important;
    font-size: 14.4px !important;
    font-weight: 400 !important;
    line-height: 18.72px !important;
    margin-bottom: 1.44px !important;
    min-height: 0 !important;
    padding: 1.44px 0 2.33px !important;
  }
  body.woocommerce.archive ul.products li.product .woocommerce-loop-product__title a {
    display: block !important;
    width: 100% !important;
  }
  body.woocommerce.archive ul.products li.product .price {
    color: #4a4a4a !important;
    font-family: Arial, sans-serif !important;
    font-size: 14.4px !important;
    line-height: 14.4px !important;
    margin: 0 !important;
  }
  body.woocommerce.archive ul.products li.product .ct-woo-card-actions {
    margin-top: 20.16px !important;
    padding-bottom: 15.52px !important;
  }
  body.woocommerce.archive ul.products li.product .button {
    display: block !important;
    font-family: Arial, sans-serif !important;
    height: 39.25px !important;
    min-width: 117.19px !important;
    width: 117.19px !important;
  }
  body.woocommerce.archive .ct-pagination {
    height: 33.66px !important;
    margin-top: 5px !important;
  }

  #footer {
    background: transparent !important;
    box-sizing: border-box !important;
    height: 984.84px !important;
    padding: 31px 0 49.32px !important;
  }
  #footer [data-row="middle"],
  #footer [data-row="bottom"] { background: var(--corelie-navy) !important; }
  #footer [data-row="middle"] {
    box-sizing: border-box !important;
    height: 622px !important;
    max-height: 622px !important;
    min-height: 622px !important;
    padding: 0 !important;
  }
  #footer [data-row="middle"] > .ct-container {
    column-gap: 24px !important;
    display: grid !important;
    grid-template-columns: repeat(3, 226.67px) !important;
    grid-template-rows: 332.84px 209.11px !important;
    height: 622px !important;
    margin: 0 auto !important;
    max-width: 728px !important;
    padding: 40px 0 8.05px !important;
    row-gap: 32px !important;
    width: 728px !important;
  }
  #footer [data-row="middle"] [data-column] {
    height: 332.84px !important;
    min-height: 0 !important;
    width: 226.67px !important;
  }
  #footer [data-row="middle"] [data-column="widget-area-4"] {
    grid-column: 1 / -1 !important;
    height: 209.11px !important;
    width: 728px !important;
  }
  #footer [data-row="bottom"] {
    box-sizing: border-box !important;
    height: 282.52px !important;
    max-height: 282.52px !important;
    min-height: 282.52px !important;
    padding: 0 !important;
  }
  #footer [data-row="bottom"] > .ct-container {
    box-sizing: border-box !important;
    height: 282.52px !important;
    margin: 0 auto !important;
    max-width: 728px !important;
    padding: 32px 0 24px !important;
    width: 728px !important;
  }
  #footer [data-row="bottom"] [data-column] { height: 226.52px !important; }
}

/* Flatsome mobile navigation remains a 300px light drawer through tablet. */
@media (max-width: 1024px) {
  #offcanvas { background: rgba(0, 0, 0, .55) !important; }
  #offcanvas .ct-panel-inner {
    align-self: flex-start !important;
    background: linear-gradient(to bottom, transparent 0 30px, rgba(255, 255, 255, .97) 30px 100%) !important;
    box-shadow: none !important;
    height: 100vh !important;
    max-width: 300px !important;
    overflow: visible !important;
    width: 300px !important;
  }
  #offcanvas[data-behaviour*="right-side"] .ct-panel-inner,
  #offcanvas[data-behaviour*="left-side"] .ct-panel-inner { transform: translate3d(-20%, 0, 0); }
  #offcanvas.active .ct-panel-inner { transform: translate3d(0, 0, 0); }
  #offcanvas .ct-panel-actions {
    align-items: center !important;
    background: rgba(12, 22, 30, .88) !important;
    height: 40px !important;
    justify-content: flex-end !important;
    left: 300px !important;
    padding: 0 5px !important;
    position: absolute !important;
    top: 30px !important;
    width: calc(100vw - 300px) !important;
  }
  #offcanvas .ct-toggle-close { color: #c6ccd0 !important; margin: 0 !important; }
  #offcanvas .ct-panel-content-inner {
    align-items: stretch !important;
    gap: 0 !important;
    padding: 50px 0 0 !important;
  }
  .corelie-mobile-menu-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 40px !important;
    height: 40px !important;
    margin: 0 20px 21.11px !important;
    width: 260px !important;
  }
  .corelie-mobile-menu-search input[type="search"] {
    background: #fff !important;
    border: 1px solid #d8d8d8 !important;
    border-radius: 0 !important;
    color: #333 !important;
    font-size: 16px !important;
    height: 40.11px !important;
    line-height: 25.6px !important;
    padding: 0 12px !important;
  }
  .corelie-mobile-menu-search button {
    align-items: center !important;
    background: #000 !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #fff !important;
    display: flex !important;
    height: 40.11px !important;
    justify-content: center !important;
    min-height: 40.11px !important;
    padding: 0 !important;
    width: 40px !important;
  }
  #offcanvas .mobile-menu > ul > li { border-bottom: 1px solid #e8e8e8 !important; }
  #offcanvas .mobile-menu { margin-bottom: 0 !important; }
  #offcanvas .mobile-menu .ct-sub-menu-parent {
    display: grid !important;
    grid-template-columns: 250px 50px !important;
  }
  #offcanvas .mobile-menu > ul > li > a,
  #offcanvas .mobile-menu .ct-sub-menu-parent > a,
  #offcanvas .ct-header-cta[data-id="button"] .ct-button-ghost {
    align-items: center !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: rgba(74, 74, 74, .85) !important;
    display: flex !important;
    font-size: 12.8px !important;
    font-weight: 700 !important;
    height: 50.47px !important;
    line-height: 20.48px !important;
    min-height: 50.47px !important;
    padding: 15px 0 15px 20px !important;
    text-transform: uppercase !important;
  }
  #offcanvas .mobile-menu .ct-toggle-dropdown-mobile {
    color: #999 !important;
    height: 50.47px !important;
    padding: 0 17px !important;
    width: 50px !important;
  }
  #offcanvas .mobile-menu .ct-toggle-dropdown-mobile .ct-icon { fill: #999 !important; }
  #offcanvas .ct-header-cta[data-id="button"] { margin: 0 !important; width: 100% !important; }
  #offcanvas .ct-header-cta[data-id="button"] .ct-button-ghost {
    justify-content: flex-start !important;
    width: 100% !important;
  }
  #header [data-device="mobile"] .ct-header-trigger .ct-icon {
    color: #000 !important;
    fill: #000 !important;
  }
}

@media (min-width: 690px) {
  body.woocommerce.archive ul.products li.product .corelie-loop-quick-view {
    box-sizing: border-box;
    color: #f1f1f1;
    height: 33.98px !important;
    left: 9.8px !important;
    line-height: 33.98px !important;
    opacity: .95;
    right: 9.8px !important;
    transform: none;
    transition: opacity .3s;
    width: auto !important;
  }
  body.woocommerce.archive ul.products li.product:hover .corelie-loop-quick-view,
  body.woocommerce.archive ul.products li.product:focus-within .corelie-loop-quick-view { opacity: .95; }
}

body.corelie-quick-view-open { overflow: hidden !important; }
.corelie-quick-view__backdrop[hidden],
.corelie-quick-view__dialog[hidden] { display: none !important; }
.corelie-quick-view__backdrop {
  background: #0b0b0b;
  inset: 0;
  opacity: .6;
  position: fixed;
  z-index: 100000;
}
.corelie-quick-view__dialog {
  align-items: center;
  display: flex;
  inset: 0;
  justify-content: center;
  overflow: auto;
  padding: 30px;
  position: fixed;
  z-index: 100001;
}
.corelie-quick-view__close {
  align-items: center;
  background: transparent !important;
  border: 1px solid transparent !important;
  border-radius: 0 !important;
  color: #fff !important;
  display: flex;
  font-size: 24px !important;
  height: 40px !important;
  justify-content: center;
  min-height: 40px !important;
  opacity: .6;
  padding: 0 !important;
  position: fixed;
  right: 0;
  top: 0;
  width: 40px !important;
}
.corelie-quick-view__close:hover,
.corelie-quick-view__close:focus-visible { opacity: 1; }
.corelie-quick-view__content {
  background: #fff;
  height: 437.5px;
  position: relative;
  width: 875px;
}
.corelie-quick-view__loading,
.corelie-quick-view__error {
  left: 50%;
  margin: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.corelie-quick-view__product {
  display: grid;
  grid-template-columns: repeat(2, 437.5px);
  height: 437.5px;
  width: 875px;
}
.corelie-quick-view__gallery {
  height: 437.5px;
  position: relative;
  width: 437.5px;
}
.corelie-quick-view__gallery > a { display: block; height: 100%; width: 100%; }
.corelie-quick-view__slide[hidden] { display: none !important; }
.corelie-quick-view__image {
  display: block;
  height: 437.5px !important;
  object-fit: fill;
  width: 437.5px !important;
}
.corelie-quick-view__dots {
  align-items: flex-start;
  bottom: 15px;
  display: flex;
  gap: 10px;
  height: 16px;
  justify-content: center;
  left: 20%;
  padding-top: 1px;
  position: absolute;
  width: 60%;
  z-index: 3;
}
.corelie-quick-view__dot {
  background: transparent !important;
  border: 3px solid #111 !important;
  border-radius: 50% !important;
  box-sizing: border-box;
  flex: 0 0 12px;
  height: 12px !important;
  min-height: 12px !important;
  min-width: 12px !important;
  opacity: .4;
  padding: 0 !important;
  width: 12px !important;
}
.corelie-quick-view__dot.is-active {
  background: #111 !important;
  border-color: #111 !important;
  opacity: 1;
}
.corelie-quick-view__dot:focus-visible { outline: 2px solid #111; outline-offset: 2px; }
.corelie-quick-view__sale {
  align-items: center;
  background: #020202;
  border-radius: 50%;
  color: #fff;
  display: flex;
  font-family: Arial, sans-serif;
  font-size: 20.8px;
  font-weight: 700;
  height: 58.23px;
  justify-content: center;
  left: 15px;
  line-height: 33.28px;
  position: absolute;
  top: 30px;
  width: 58.23px;
  z-index: 2;
}
.corelie-quick-view__summary {
  box-sizing: border-box;
  color: #4a4a4a;
  font-family: Lato, Arial, sans-serif;
  font-size: 14.4px;
  height: 437.5px;
  line-height: 23.04px;
  width: 437.5px;
}
.corelie-quick-view__summary-inner { padding: 30px; }
.corelie-quick-view__title-link { color: #555; text-decoration: none; }
.corelie-quick-view__title-link h1 {
  color: #555;
  /* The reference's declared Lato face fails to load in this lightbox and
   * therefore renders with the browser sans-serif metrics. */
  font-family: Arial, sans-serif !important;
  font-size: 24.48px;
  font-weight: 700;
  line-height: 31.824px;
  margin: 0 0 12.24px;
}
.corelie-quick-view__divider {
  background: rgba(0, 0, 0, .1);
  height: 3px;
  margin: 14.4px 0;
  width: 30px;
}
.corelie-quick-view__price {
  color: #4a4a4a;
  font-family: Lato, Arial, sans-serif;
  font-size: 21.6px;
  font-weight: 700;
  line-height: 21.6px;
  margin: 10.8px 0;
}
.corelie-quick-view__price .sale-price {
  align-items: baseline;
  column-gap: 5px;
  display: inline-flex;
}
.corelie-quick-view__price .sale-price del {
  display: inline !important;
  font-size: 21.6px !important;
  opacity: .6;
  order: 0 !important;
}
.corelie-quick-view__price .sale-price ins {
  display: inline !important;
  font-size: 21.6px !important;
  font-weight: 700;
  order: 1 !important;
  text-decoration: none;
}
.corelie-quick-view__cart {
  align-items: stretch;
  display: flex;
  gap: 14.39px;
  height: 36.09px;
  margin: 0 0 18.72px;
}
.corelie-quick-view__quantity {
  display: grid;
  flex: 0 0 84px;
  grid-template-columns: 24px 36px 24px;
  height: 36.09px !important;
  min-height: 0 !important;
}
.corelie-quick-view__quantity-button,
.corelie-quick-view__quantity input.qty {
  border: 1px solid #ddd !important;
  border-radius: 0 !important;
  box-sizing: border-box;
  height: 36.09px !important;
  min-height: 36.09px !important;
  padding: 0 !important;
}
.corelie-quick-view__quantity-button {
  background: #f9f9f9 !important;
  color: #666 !important;
  font-size: 13.968px !important;
  width: 24px !important;
}
.corelie-quick-view__quantity input.qty {
  background: #fff !important;
  color: #333 !important;
  font-size: 14.4px !important;
  text-align: center;
  width: 36px !important;
}
.corelie-quick-view__add,
.corelie-quick-view__buy {
  align-items: center;
  background: #000 !important;
  border: 1px solid rgba(0, 0, 0, .05) !important;
  border-radius: 0 !important;
  box-sizing: border-box;
  color: #fff !important;
  display: flex !important;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 13.968px !important;
  font-weight: 700;
  height: 36.09px !important;
  justify-content: center;
  line-height: 33.5232px !important;
  margin: 0 !important;
  min-height: 36.09px !important;
  padding: 0 16.7616px !important;
  text-decoration: none;
  text-transform: uppercase !important;
  white-space: nowrap;
}
.corelie-quick-view__add { flex: 0 0 135.98px; }
.corelie-quick-view__buy { flex: 0 0 105.63px; }
.corelie-quick-view__meta {
  color: #4a4a4a;
  font-family: Lato, Arial, sans-serif;
  font-size: 11.52px;
  line-height: 18.432px;
  margin: 0 0 11.52px;
}
.corelie-quick-view__meta > span {
  border-top: 1px dotted #ddd;
  display: block;
  height: 29.42px;
  padding: 5px 0;
}
.corelie-quick-view__meta a { color: #334862; }

@media (max-width: 1024px) {
  .corelie-quick-view__content,
  .corelie-quick-view__product { height: 354px; width: 708px; }
  .corelie-quick-view__product { grid-template-columns: repeat(2, 354px); }
  .corelie-quick-view__gallery,
  .corelie-quick-view__summary { height: 354px; width: 354px; }
  .corelie-quick-view__image { height: 354px !important; width: 354px !important; }
  .corelie-quick-view__summary-inner { padding: 24px; }
  .corelie-quick-view__title-link h1 { font-size: 20px; line-height: 26px; }
  .corelie-quick-view__cart { gap: 8px; }
  .corelie-quick-view__add { flex-basis: 116px; }
  .corelie-quick-view__buy { flex-basis: 88px; }
}

@media (max-width: 689px) {
  .corelie-quick-view__backdrop,
  .corelie-quick-view__dialog { display: none !important; }
}

/* Catalog rows must follow each page's real product content, not page-one fixtures. */
body.woocommerce.archive ul.products[class*="columns-"] {
  grid-auto-rows: auto !important;
  grid-template-rows: none !important;
}
body.woocommerce.archive ul.products[class*="columns-"] > li.product {
  height: auto !important;
  min-height: 0 !important;
}

@media (min-width: 1025px) {
  body.post-type-archive-product.woocommerce .woocommerce-result-count {
    flex-basis: auto;
    font-family: Arial, sans-serif;
    white-space: normal;
    width: auto;
  }
  body.woocommerce.archive ul.products li.product.corelie-no-product-category .woocommerce-loop-product__title {
    margin-top: 12.6px !important;
  }
  body.woocommerce.archive ul.products[class*="columns-"] > li.product {
    padding-bottom: 19.6px !important;
  }
  body.woocommerce.archive ul.products li.product .ct-woo-card-actions {
    margin-top: 20.16px !important;
  }
}

@media (max-width: 689px) {
  body.woocommerce.archive ul.products li.product.corelie-no-product-category .woocommerce-loop-product__title {
    margin-top: 11.93px !important;
  }
  body.woocommerce.archive ul.products li.product .ct-woo-card-actions {
    margin-top: 18.96px !important;
  }
  body.woocommerce.archive ul.products li.product .corelie-loop-quick-view {
    display: none !important;
  }
}

/* Flatsome-style catalog pagination wraps naturally on narrow pages. */
body.post-type-archive-product.woocommerce .woocommerce-pagination {
  box-sizing: border-box;
  margin: 5px auto 0;
  max-width: 1220px;
  width: calc(100% - 30px);
}
body.post-type-archive-product.woocommerce .woocommerce-pagination .page-numbers {
  display: block !important;
  font-size: 13.6px;
  gap: 0 !important;
  line-height: 21.76px;
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
}
body.post-type-archive-product.woocommerce .woocommerce-pagination li {
  display: inline-block;
  margin: 0 5.44px 0 0;
  padding: 0;
  vertical-align: top;
}
body.post-type-archive-product.woocommerce .woocommerce-pagination li:last-child { margin-right: 0; }
body.post-type-archive-product.woocommerce .woocommerce-pagination .page-number {
  align-items: center;
  background: transparent;
  border: 2px solid currentColor;
  border-radius: 99px;
  box-sizing: border-box;
  color: #4a4a4a;
  display: flex;
  /* The reference Lato files are unavailable and render through its Arial-like
   * fallback. Use that same face so multi-digit pills keep the exact width. */
  font-family: Arial, sans-serif;
  font-size: 14.96px;
  font-weight: 700;
  height: 33.66px;
  justify-content: center;
  line-height: 29.92px;
  min-width: 33.66px;
  padding: 0 7px;
  text-decoration: none;
}

@media (min-width: 1025px) {
  .corelie-recommended-products .corelie-product-card:first-child .corelie-product-card__button {
    position: relative;
    top: -.53px;
  }
}
body.post-type-archive-product.woocommerce .woocommerce-pagination .page-number.current,
body.post-type-archive-product.woocommerce .woocommerce-pagination .page-number:hover,
body.post-type-archive-product.woocommerce .woocommerce-pagination .page-number:focus-visible {
  background: #000;
  border-color: #000;
  color: #fff;
  text-decoration: underline;
}

@media (min-width: 1025px) {
  body.woocommerce.archive ul.products li.product .woocommerce-loop-product__title {
    line-height: 23.04px !important;
    margin: 1.44px 0 !important;
  }
  body.woocommerce.archive ul.products li.product .woocommerce-loop-product__title > a {
    display: inline-block !important;
    line-height: 18.72px !important;
    margin: 1.44px 0 !important;
  }
  body.post-type-archive-product.woocommerce ul.products li.product.corelie-title-six-lines .woocommerce-loop-product__title {
    line-height: 23.04px !important;
  }
}

@media (max-width: 689px) {
  body.woocommerce.archive ul.products li.product .woocommerce-loop-product__title {
    line-height: 21.76px !important;
    margin-bottom: 1.36px !important;
  }
  body.woocommerce.archive ul.products li.product .woocommerce-loop-product__title > a {
    display: inline-block !important;
    line-height: 17.68px !important;
    margin: 1.36px 0 !important;
  }
  body.post-type-archive-product.woocommerce ul.products li.product.corelie-title-five-lines .woocommerce-loop-product__title,
  body.post-type-archive-product.woocommerce ul.products li.product.corelie-title-six-lines .woocommerce-loop-product__title,
  body.post-type-archive-product.woocommerce ul.products li.product:not(.corelie-no-product-category) .woocommerce-loop-product__title {
    line-height: 21.76px !important;
  }
}

@media (min-width: 690px) and (max-width: 1024px) {
  body.post-type-archive-product.woocommerce .woocommerce-pagination {
    max-width: none;
    width: 100%;
  }
  body.woocommerce.archive .woocommerce-ordering select {
    background-color: #fff !important;
    border-color: #ddd !important;
    font-size: 16px !important;
    height: 40.11px !important;
    min-height: 40.11px !important;
  }
}

/* Homepage medium layout follows the reference's three-column static groups
 * and one-row overflow carousels. Elementor remains the content source; these
 * rules only reproduce the reference theme's 768px composition. */
@media (min-width: 690px) and (max-width: 1024px) {
  body.home .corelie-hero,
  body.home .corelie-hero > .elementor-widget-image,
  body.home .corelie-hero > .elementor-widget-image > .elementor-widget-container,
  body.home .corelie-hero > .elementor-widget-image img {
    height: 213.328px !important;
    min-height: 213.328px !important;
  }
  body.home .corelie-hero > .corelie-hero-copy .elementor-button {
    position: relative;
    top: 5.965px;
  }
  body.home .corelie-recommended-products {
    padding: 20px 15px !important;
  }
  body.home .corelie-new-collections {
    padding: 25px 15px 20px !important;
  }
  body.home .corelie-featured-products {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 0 15px 20px !important;
  }
  body.home .corelie-recommended-products > .e-con-inner,
  body.home .corelie-new-collections > .e-con-inner {
    gap: 0 !important;
    max-width: 738px !important;
    padding: 10px 0 !important;
    width: 738px !important;
  }
  body.home .corelie-featured-products > .e-con-inner {
    gap: 0 !important;
    max-width: 738px !important;
    padding: 0 0 10px !important;
    width: 738px !important;
  }
  body.home .corelie-product-grid { position: relative; }
  body.home .corelie-product-grid__heading {
    gap: 14px;
    height: 32px;
    margin: 0 0 34px;
    width: 738px;
  }
  body.home .corelie-product-grid__heading::before,
  body.home .corelie-product-grid__heading::after {
    flex: 1 1 auto;
    max-width: none;
    width: auto;
  }
  body.home .corelie-product-grid__heading h2 {
    color: #555;
    flex: 0 0 auto;
    font-size: 20px;
    letter-spacing: normal;
    line-height: 32px;
  }
  body.home .corelie-recommended-products .corelie-products,
  body.home .corelie-new-collections .corelie-products,
  body.home .elementor-element-e95947a6 .corelie-products {
    column-gap: 0;
    grid-template-columns: repeat(3, 252.656px) !important;
    margin: 0 0 0 -10px;
    row-gap: 0;
    width: 758px;
  }
  body.home .corelie-recommended-products .corelie-products {
    grid-template-rows: repeat(4, 428.891px) 434.656px;
    height: 2150.22px;
  }
  body.home .corelie-new-collections .corelie-products {
    grid-template-rows: 428.891px repeat(3, 447.609px);
    height: 1771.718px;
  }
  body.home .elementor-element-e95947a6 .corelie-products {
    grid-template-rows: 415.938px;
    height: 415.938px;
  }
  body.home .corelie-recommended-products .corelie-product-card,
  body.home .corelie-new-collections .corelie-product-card,
  body.home .elementor-element-e95947a6 .corelie-product-card,
  body.home .elementor-element-f83c1d4e .corelie-product-card {
    align-self: stretch;
    box-sizing: border-box;
    display: block;
    font-family: Lato, Arial, sans-serif !important;
    height: 100%;
    padding: 0 9.797px 19.6px;
    width: 252.656px;
  }
  body.home .corelie-product-grid--carousel .corelie-product-card[hidden] {
    display: none !important;
  }
  body.home .corelie-recommended-products .corelie-product-card:nth-child(10),
  body.home .corelie-new-collections .corelie-product-card:nth-child(10) {
    grid-column: 2;
    grid-row: 4;
  }
  body.home .corelie-recommended-products .corelie-product-card:nth-child(n + 11) {
    align-self: start;
    grid-row: 5;
    height: 415.938px;
  }
  body.home .corelie-recommended-products .corelie-product-card:nth-child(3n + 11) { grid-column: 1; }
  body.home .corelie-recommended-products .corelie-product-card:nth-child(3n + 12) { grid-column: 2; }
  body.home .corelie-recommended-products .corelie-product-card:nth-child(3n + 13) { grid-column: 3; }
  body.home .corelie-product-card__media {
    height: 233.063px;
    margin-bottom: 0;
    width: 233.063px;
  }
  body.home .corelie-product-card__brand {
    color: #4a4a4a;
    font-family: Lato, Arial, sans-serif !important;
    margin: 11.156px 0 1.08px;
  }
  body.home .corelie-product-card__title {
    font-family: Lato, Arial, sans-serif !important;
    height: 59.922px;
    line-height: 23.04px;
    margin: 1.44px 0;
    min-height: 0;
  }
  body.home .corelie-product-card__title a {
    display: inline-block;
    font-family: Lato, Arial, sans-serif !important;
    line-height: 18.72px;
    margin: 1.44px 0;
    width: 100%;
  }
  body.home .corelie-product-card__price,
  body.home .corelie-product-card__price * {
    font-family: Lato, Arial, sans-serif !important;
  }
  body.home .corelie-product-card__button {
    display: inline-block;
    font-family: Lato, Arial, sans-serif !important;
    height: 39.25px;
    margin: 20.156px 0 15.52px;
    min-height: 39.25px;
    min-width: 117.188px;
    width: 117.188px;
  }
  body.home .corelie-product-card__sale {
    font-family: Lato, Arial, sans-serif !important;
    font-size: 16px !important;
    height: 44.797px !important;
    left: 3.406px !important;
    line-height: 13.6px !important;
    padding: 2px !important;
    top: 30.015px !important;
    width: 44.797px !important;
  }
  body.home .corelie-product-carousel__controls {
    bottom: auto;
    height: 415.938px;
    justify-content: space-between;
    left: -10px;
    margin: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    right: -10px;
    top: 1781.564px;
    transition: opacity .2s ease;
    z-index: 6;
  }
  body.home .corelie-product-grid:hover .corelie-product-carousel__controls,
  body.home .corelie-product-grid:focus-within .corelie-product-carousel__controls {
    opacity: 1;
  }
  body.home .corelie-product-carousel__controls button:not(:disabled) { pointer-events: auto; }
  body.home .elementor-element-e95947a6 .corelie-product-carousel__controls {
    top: 66px;
  }
  body.home .elementor-element-f83c1d4e {
    overflow: hidden;
  }
  body.home .elementor-element-f83c1d4e .corelie-products {
    column-gap: 0;
    grid-template-columns: repeat(4, 252.656px) !important;
    grid-template-rows: 376.375px;
    height: 376.375px;
    margin: 0 0 0 -10px;
    row-gap: 0;
    width: 1010.624px;
  }
  body.home .elementor-element-f83c1d4e .corelie-product-carousel__controls {
    height: 376.375px;
    top: 0;
  }

  body.home .corelie-new-arrivals {
    height: 183.578px !important;
    max-height: 183.578px !important;
    min-height: 183.578px !important;
    overflow: hidden;
  }
  body.home .corelie-new-arrivals > .elementor-widget-image,
  body.home .corelie-new-arrivals > .elementor-widget-image > .elementor-widget-container,
  body.home .corelie-new-arrivals > .elementor-widget-image img {
    height: 183.578px !important;
    min-height: 0 !important;
    object-fit: cover;
  }
  body.home .corelie-new-arrivals > .corelie-hero-copy {
    gap: 19.2px !important;
    transform: translate(-50%, calc(-50% - 1.782px));
    width: 552px;
  }
  body.home .corelie-new-arrivals .corelie-hero-copy h2,
  body.home .corelie-new-arrivals .corelie-hero-copy .elementor-heading-title {
    font-size: 32px;
    line-height: 41.6px;
  }
  body.home .corelie-new-arrivals .corelie-hero-copy .elementor-button {
    font-size: 16px;
    height: 40.38px;
    line-height: 19.2px;
    min-height: 40.38px;
    padding: 9.6px 35.2px;
    width: 154.95px;
  }

  body.home .corelie-brand-promos {
    height: 1029.047px !important;
    min-height: 1029.047px !important;
    padding: 22px 16px !important;
  }
  body.home .corelie-brand-promos > .e-con-inner {
    gap: 40px !important;
    max-width: 736px !important;
    padding: 10px 0 !important;
    width: 736px !important;
  }
  body.home .corelie-brand-promos .elementor-widget-heading,
  body.home .corelie-brand-promos .elementor-widget-heading h2 {
    height: 37.422px;
    width: 736px;
  }
  body.home .corelie-brand-promos .elementor-widget-heading h2 {
    font-size: 28.8px;
    line-height: 37.44px;
  }
  body.home .corelie-brand-promos .corelie-brand-grid {
    gap: 24px;
    grid-template-columns: repeat(2, 356px) !important;
    grid-template-rows: repeat(2, 431.813px);
    height: 887.625px;
    width: 736px;
  }
  body.home .corelie-brand-promos .corelie-brand-card {
    border: 0;
    height: 431.813px;
    width: 356px;
  }
  body.home .corelie-brand-promos .corelie-brand-card img {
    aspect-ratio: 1 / 1;
    height: 356px;
    object-fit: cover;
    width: 356px;
  }
  body.home .corelie-brand-promos .corelie-brand-card h3 {
    color: #1f2a3a;
    font-size: 17.6px;
    font-weight: 500;
    line-height: 24.64px;
    margin: 27.188px 16px 0;
  }

  body.home .corelie-brand-banner {
    box-sizing: border-box;
    height: 390px !important;
    max-height: 390px !important;
    min-height: 390px !important;
    overflow: hidden;
    padding-top: 40px !important;
  }
  body.home .corelie-brand-banner > .elementor-widget-image,
  body.home .corelie-brand-banner > .elementor-widget-image > .elementor-widget-container,
  body.home .corelie-brand-banner > .elementor-widget-image img {
    height: 350px !important;
    min-height: 0 !important;
    object-fit: cover;
  }
  body.home .corelie-brand-banner > .corelie-hero-copy {
    box-sizing: border-box;
    height: 117.063px;
    left: 50%;
    padding: 24px !important;
    top: 156.531px;
    transform: translateX(-50%);
    width: 700px;
  }
  body.home .corelie-brand-banner > .corelie-hero-copy > .e-con-inner {
    gap: 19.2px !important;
    height: 69.063px;
    max-width: none;
    padding: 0 !important;
    width: 652px;
  }
  body.home .corelie-brand-banner .corelie-hero-copy h2 {
    color: #fff;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 14.4px;
    font-weight: 400;
    line-height: 20.16px;
  }
  body.home .corelie-brand-banner .corelie-hero-copy .elementor-button {
    border: 0;
    border-radius: 40px;
    box-sizing: border-box;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 12.8px;
    font-weight: 500;
    height: 29.719px;
    line-height: 15.36px;
    min-height: 29.719px;
    padding: 7.2px 24px;
    text-transform: lowercase;
    white-space: nowrap;
    width: 161.109px;
  }
  body.home .corelie-brand-banner .corelie-hero-copy .elementor-button-content-wrapper,
  body.home .corelie-brand-banner .corelie-hero-copy .elementor-button-text { white-space: nowrap; }
  body.home .corelie-service-benefits {
    box-sizing: border-box;
    display: grid;
    gap: 16px;
    grid-template-columns: 173.281px 196.844px 236.172px 293.766px;
    height: 86.141px !important;
    max-height: 86.141px !important;
    min-height: 86.141px !important;
    margin-top: -2px;
    overflow: auto hidden;
    padding: 8px 20px 24px !important;
  }
  body.home .corelie-service-benefits::-webkit-scrollbar { display: none; }
  body.home .corelie-service-benefits > .elementor-widget {
    height: 40.547px;
    text-align: left;
    width: auto;
  }
  body.home .corelie-service-benefits .elementor-icon-box-wrapper {
    align-items: center;
    display: flex;
    flex-direction: row !important;
    gap: 12px !important;
    height: 40.547px;
    justify-content: flex-start;
    text-align: left;
  }
  body.home .corelie-service-benefits .elementor-icon-box-icon {
    align-items: center;
    display: flex;
    flex: 0 0 40px;
    height: 28px;
    justify-content: center;
    margin: 0 !important;
    width: 40px;
  }
  body.home .corelie-service-benefits .elementor-icon {
    background-position: center;
    background-repeat: no-repeat;
    background-size: 28px 28px;
    font-size: 28px;
    height: 28px;
    line-height: 28px;
    width: 28px;
  }
  body.home .corelie-service-benefits .elementor-icon > i,
  body.home .corelie-service-benefits .elementor-icon > svg { display: none !important; }
  body.home .corelie-service-benefits > .elementor-element-8f7bdd87 .elementor-icon {
    background-image: url("../icons/service-truck.svg");
  }
  body.home .corelie-service-benefits > .elementor-element-a57815c6 .elementor-icon {
    background-image: url("../icons/service-tag.svg");
  }
  body.home .corelie-service-benefits > .elementor-element-a754a20a .elementor-icon {
    background-image: url("../icons/service-medal.svg");
  }
  body.home .corelie-service-benefits > .elementor-element-50e88e5a .elementor-icon {
    background-image: url("../icons/service-star.svg");
  }
  body.home .corelie-service-benefits .elementor-icon-box-content {
    flex: 0 0 auto;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    height: 40.547px;
    line-height: 20.8px;
    text-align: left;
    white-space: nowrap;
    width: max-content;
  }
  body.home .corelie-service-benefits .elementor-icon-box-title {
    color: #fff;
    font-family: inherit;
    font-size: 15.2px;
    font-weight: 600;
    line-height: 19.76px;
    margin: 0 0 3px;
    text-align: left;
    white-space: nowrap;
  }
  body.home .corelie-service-benefits .elementor-icon-box-description {
    color: rgba(255,255,255,.9);
    font-family: inherit;
    font-size: 12.8px;
    font-weight: 400;
    line-height: 16.64px;
    margin: 0;
    text-align: left;
    white-space: nowrap;
  }

  body.home .corelie-video-section {
    box-sizing: border-box;
    height: 486px !important;
    min-height: 486px !important;
    padding: 38px 16px 14px !important;
  }
  body.home .corelie-video-section > .e-con-inner {
    max-width: 736px !important;
    padding: 10px 0 !important;
    width: 736px !important;
  }
  body.home .corelie-video-section .elementor-widget-video,
  body.home .corelie-video-section .elementor-wrapper,
  body.home .corelie-video-section video {
    height: 414px !important;
    object-fit: cover;
    width: 736px !important;
  }

  body.home .corelie-category-entrances {
    box-sizing: border-box;
    height: 270.391px !important;
    min-height: 270.391px !important;
    padding: 40px 20px 32px !important;
  }
  body.home .corelie-category-entrances > .e-con-inner {
    max-width: 728px !important;
    padding: 0 !important;
    width: 728px !important;
  }
  body.home .corelie-category-entrances .corelie-brand-grid {
    gap: 24px;
    grid-template-columns: repeat(4, 164px) !important;
    grid-template-rows: 198.391px;
    height: 198.391px;
    width: 728px;
  }
  body.home .corelie-category-entrances .corelie-brand-card {
    border: 0;
    height: 198.391px;
    width: 164px;
  }
  body.home .corelie-category-entrances .corelie-brand-card img {
    aspect-ratio: 1 / 1;
    height: 164px;
    object-fit: cover;
    width: 164px;
  }
  body.home .corelie-category-entrances .corelie-brand-card h3 {
    font-size: 16px;
    line-height: 22.4px;
    margin: 12px 0 0;
  }

  body.home .corelie-hotspot-section {
    box-sizing: border-box;
    height: 331.5px !important;
    min-height: 331.5px !important;
    padding: 0 10px !important;
  }
  body.home .corelie-hotspot-section > .e-con-inner {
    max-width: 748px !important;
    padding: 0 !important;
    width: 748px !important;
  }
  body.home .corelie-hotspot-section .corelie-hotspot,
  body.home .corelie-hotspot-section .corelie-hotspot > img {
    height: 331.5px !important;
    object-fit: cover;
    width: 748px !important;
  }

  body.home .corelie-stay-connected {
    box-sizing: border-box;
    height: 422.891px !important;
    min-height: 422.891px !important;
    padding: 32px 16px !important;
  }
  body.home .corelie-stay-connected > .e-con-inner {
    align-items: stretch !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 48px !important;
    height: 358.891px !important;
    max-width: 736px !important;
    padding: 0 !important;
    width: 736px !important;
  }
  body.home .corelie-stay-connected > .e-con-inner > .elementor-widget-image {
    align-items: center;
    display: flex;
    flex: 0 0 344px;
    height: 358.891px !important;
    justify-content: center;
    width: 344px;
  }
  body.home .corelie-stay-connected > .e-con-inner > .elementor-widget-image > .elementor-widget-container {
    width: 344px;
  }
  body.home .corelie-stay-connected > .e-con-inner > .elementor-widget-image img {
    height: 152.563px !important;
    object-fit: cover;
    width: 344px !important;
  }
  body.home .corelie-stay-copy {
    align-items: flex-start;
    box-sizing: border-box;
    display: flex !important;
    flex: 0 0 344px !important;
    gap: 0 !important;
    height: 358.891px;
    justify-content: flex-start;
    min-height: 358.891px !important;
    padding: 16px 0 !important;
    width: 344px;
  }
  body.home .corelie-stay-copy .elementor-widget-image { height: 64.5px; }
  body.home .corelie-stay-copy .elementor-widget-image img { height: 64.5px !important; }
  body.home .corelie-stay-copy .elementor-widget-heading { margin-top: 16px; }
  body.home .corelie-stay-copy .elementor-widget-heading h2 {
    font-size: 28.8px;
    line-height: 37.44px;
  }
  body.home .corelie-stay-copy .elementor-widget-text-editor {
    font-size: 19.2px;
    line-height: 30.72px;
    margin-top: 24px;
    width: 344px;
  }
  body.home .corelie-stay-copy .elementor-widget-text-editor p { line-height: 30.72px; margin: 0; }
  body.home .corelie-stay-copy .elementor-widget-button { margin-top: 24px; }
  body.home .corelie-stay-copy .elementor-button {
    height: 44.78px;
    min-height: 44.78px;
    padding: 12.8px 40px;
    white-space: nowrap;
    width: 137.7px;
  }

  body.home .corelie-social-row {
    box-sizing: border-box;
    height: 117px !important;
    min-height: 117px !important;
    padding: 30px 0 !important;
  }
  body.home .corelie-social-stats {
    display: flex;
    gap: 24px;
    height: 57px;
    justify-content: flex-start;
    padding-left: 24px;
    width: 768px;
  }
  body.home .corelie-social-stat {
    color: #1e1e1e;
    flex: 0 0 auto;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 15px;
    font-weight: 600;
    gap: 8px;
    height: 52px;
    line-height: 19.5px;
    min-height: 52px;
    padding: 8px 0;
    width: auto;
  }
  body.home .corelie-social-stat img {
    height: 36px;
    width: 36px;
  }

  body.home .corelie-newsletter-section {
    box-sizing: border-box;
    height: 496.25px !important;
    min-height: 496.25px !important;
    padding: 0 !important;
  }
  body.home .corelie-newsletter {
    box-sizing: border-box;
    height: 496.25px;
    max-width: none;
    padding: 32px 16px;
    width: 768px;
  }
  body.home .corelie-newsletter h2 {
    font-size: 56px;
    line-height: 61.6px;
    margin: 0 0 12px;
  }
  body.home .corelie-newsletter__description {
    font-size: 20.8px;
    line-height: 31.2px;
    margin: 0 68px 32px !important;
    width: 600px;
  }
  body.home .corelie-newsletter__form {
    column-gap: 16px;
    grid-template-columns: 292px 206px 206px;
    grid-template-rows: 40.109px 47px;
    height: 103.109px;
    row-gap: 16px;
    width: 736px;
  }
  body.home .corelie-newsletter__form select {
    border-color: #ddd;
    box-shadow: inset 0 -21.28px 15.2px rgba(0,0,0,.02);
    color: #333;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 15.2px;
    grid-column: 1;
    height: 38.094px;
    margin-top: 1px;
    padding: 13.6px 35.2px 13.6px 16px;
    width: 292px;
  }
  body.home .corelie-newsletter__form input[name="phone"] {
    background: #fff;
    border-color: #ddd;
    box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
    color: #333;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 16px;
    grid-column: 2;
    height: 40.109px;
    min-height: 40.109px;
    width: 206px;
  }
  body.home .corelie-newsletter__form input[name="email"] {
    background: #fff;
    border-color: #ddd;
    box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
    color: #333;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 16px;
    grid-column: 3;
    height: 40.109px;
    min-height: 40.109px;
    width: 206px;
  }
  body.home .corelie-newsletter__form button {
    display: inline-block;
    font-size: 15.2px;
    line-height: 18.24px;
    grid-column: 1 / -1;
    height: 47px;
    justify-self: center;
    padding: 13.6px 40px;
    width: 173.563px;
  }
  body.home .corelie-newsletter__consent {
    height: 57.609px;
    margin: 32px 0 0 !important;
    padding: 0 8px;
    width: 736px;
  }
  body.home .corelie-newsletter__back {
    margin-top: 32px;
  }
}

@media (max-width: 689px) {
  body.home .corelie-newsletter input:not(.corelie-hp) {
    background: #fff;
    border-color: #ddd;
    color: #333;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  }
}

@media (min-width: 1025px) {
  #header [data-device="desktop"] .sub-menu { margin-top: -20.406px; }
}

/* Homepage section-to-section parity pass (Elementor ID -> source section).
 * These are presentation-only rules; every image, title and link remains an
 * ordinary Elementor control. */
#header {
  position: relative;
  top: 0;
}

body.home .corelie-brand-banner {
  background: #fff;
}
body.home .corelie-brand-banner > .elementor-widget-image::after {
  content: none;
}
body.home .corelie-brand-banner > .elementor-widget-image img { filter: brightness(.8); }
body.home .corelie-brand-banner > .corelie-hero-copy { z-index: 3; }
body.home .corelie-brand-banner .elementor-button,
body.home .corelie-brand-banner .elementor-button-content-wrapper,
body.home .corelie-brand-banner .elementor-button-text { white-space: nowrap; }
body.home .corelie-brand-banner .corelie-hero-copy h2 {
  letter-spacing: 4px;
  text-transform: uppercase;
}
body.home .corelie-brand-banner .elementor-button { color: #000 !important; }
body.home .corelie-stay-copy .elementor-widget-heading h2 { letter-spacing: .02em; }
body.home .corelie-product-grid__heading h2 { letter-spacing: normal !important; }
body.home .corelie-new-arrivals .corelie-hero-copy h2,
body.home .corelie-new-arrivals .corelie-hero-copy .elementor-heading-title,
body.home .corelie-brand-promos .elementor-widget-heading h2 { letter-spacing: .02em; }
body.home .corelie-brand-promos .corelie-brand-card h3 {
  color: #1f2a3a;
  font-weight: 500 !important;
  letter-spacing: .03em;
}
body.home .corelie-new-arrivals > .elementor-widget-image img {
  object-position: 50.4704% 49.7846%;
}

body.home .corelie-service-benefits .elementor-icon {
  background-position: center;
  background-repeat: no-repeat;
  background-size: 28px 28px;
  height: 28px;
  width: 28px;
}
body.home .corelie-service-benefits .elementor-icon > i,
body.home .corelie-service-benefits .elementor-icon > svg { display: none !important; }
body.home .corelie-service-benefits > .elementor-element-8f7bdd87 .elementor-icon {
  background-image: url("../icons/service-truck.svg");
}
body.home .corelie-service-benefits > .elementor-element-a57815c6 .elementor-icon {
  background-image: url("../icons/service-tag.svg");
}
body.home .corelie-service-benefits > .elementor-element-a754a20a .elementor-icon {
  background-image: url("../icons/service-medal.svg");
}
body.home .corelie-service-benefits > .elementor-element-50e88e5a .elementor-icon {
  background-image: url("../icons/service-star.svg");
}

body.home .corelie-category-entrances .corelie-brand-card h3 {
  color: #555;
  font-weight: 600 !important;
  letter-spacing: normal;
  margin-bottom: 0;
  text-transform: none;
}
body.home .corelie-category-entrances .corelie-brand-card img { border-radius: 8px; }
body.home .corelie-stay-connected > .e-con-inner > .elementor-widget-image {
  border-radius: 8px;
  overflow: hidden;
}

.corelie-product-carousel__icon {
  background: url("../icons/carousel-chevron.svg") center / contain no-repeat;
  color: #111;
}
.corelie-product-carousel__next .corelie-product-carousel__icon { transform: rotate(180deg); }

/* Keep the full-height 205b6ebe navigation layers above product links. */
body.home .elementor-element-205b6ebe .corelie-product-carousel__controls {
  z-index: 6;
}
body.home .elementor-element-205b6ebe .corelie-product-carousel__controls button {
  background: transparent;
  box-shadow: none;
}

.corelie-hotspot__icon {
  font-size: 24px;
  line-height: 24px;
  text-align: center;
}

@media (min-width: 1025px) {
  body.home .corelie-hero > .elementor-widget-image img { object-position: 50% 30%; }
  body.home .corelie-social-stat:last-child img { height: 27px; }
  body.home .corelie-brand-banner > .elementor-widget-image,
  body.home .corelie-brand-banner > .elementor-widget-image > .elementor-widget-container,
  body.home .corelie-brand-banner > .elementor-widget-image img {
    height: 344.75px !important;
  }
  body.home .corelie-brand-banner > .elementor-widget-image { margin-top: 45px; }
  body.home .corelie-stay-copy .elementor-widget-image {
    align-self: flex-start;
    text-align: left;
    width: 180px;
  }
  body.home .corelie-recommended-products .corelie-product-carousel__controls {
    bottom: auto;
    height: 430px;
    top: 912.469px;
  }
}

@media (min-width: 690px) and (max-width: 1024px) {
  body.home .corelie-hero > .elementor-widget-image img { object-position: 50% 30%; }
  body.home .corelie-social-stat:last-child img { height: 25px; }
  body.home .corelie-product-card__quick-view {
    opacity: .95;
    transform: translateY(0);
  }
  body.home .corelie-recommended-products .corelie-product-carousel__controls {
    height: 434.641px;
    top: 1779.579px;
  }
  body.home .corelie-brand-banner .corelie-hero-copy h2 { letter-spacing: 2.5px; }
  body.home .corelie-recommended-products .corelie-product-carousel__previous { transform: translateX(-4px); }
  body.home .corelie-recommended-products .corelie-product-carousel__next { transform: translateX(4px); }
}

@media (max-width: 689px) {
  body.home .corelie-newsletter__form {
    padding-inline: 0;
    width: 848px;
  }
  body.home .corelie-newsletter__form select {
    padding: 13.6px 35.2px 13.6px 16px;
  }
  body.home .corelie-newsletter__form input[name="phone"],
  body.home .corelie-newsletter__form input[name="email"] {
    height: 40.109px;
    min-height: 40.109px;
  }
  body.home .corelie-newsletter__form button { padding: 13.6px 24px; }
  body.home .corelie-social-stat:last-child img { height: 22.21875px; }
  body.home .corelie-brand-banner {
    padding-top: 35px !important;
  }
  body.home .corelie-brand-banner > .elementor-widget-image,
  body.home .corelie-brand-banner > .elementor-widget-image > .elementor-widget-container,
  body.home .corelie-brand-banner > .elementor-widget-image img {
    height: 280px !important;
  }
  body.home .corelie-recommended-products .corelie-product-carousel__controls {
    bottom: auto;
    height: 403.188px;
    top: 1975.944px;
  }
  body.home .elementor-element-205b6ebe .corelie-product-carousel__previous .corelie-product-carousel__icon {
    transform: translateY(-10.375px);
  }
  body.home .elementor-element-205b6ebe .corelie-product-carousel__next .corelie-product-carousel__icon {
    transform: translateY(-10.375px) rotate(180deg);
  }
  body.home .corelie-brand-banner .corelie-hero-copy h2 { letter-spacing: 2px; }
  .corelie-hotspot__icon { font-size: 18px; line-height: 18px; }
}

/* Archive quick view follows the source's reveal interaction: the bar sits
 * below the image until hover/focus, then slides into the image edge. */
@media (min-width: 690px) {
  body.woocommerce.archive ul.products li.product .corelie-loop-quick-view {
    opacity: 0;
    pointer-events: none;
    transform: translateY(33.98px);
    transition: opacity .3s ease, transform .3s ease;
  }
  body.woocommerce.archive ul.products li.product:hover .corelie-loop-quick-view,
body.woocommerce.archive ul.products li.product:focus-within .corelie-loop-quick-view {
    opacity: .95;
    pointer-events: auto;
    transform: translateY(0);
  }
}
body.woocommerce.archive .corelie-loop-quick-view:focus-visible {
  color: #f1f1f1 !important;
  outline: 2px solid #f1f1f1 !important;
  outline-offset: 0;
}

@media (min-width: 1025px) {
  body.woocommerce.archive ul.products li.product .corelie-loop-quick-view {
    top: 153.09px;
  }
  .corelie-quick-view__content { top: -5.93px; }
  body.woocommerce-account #customer_login > .col-1 { border-right: 0; }
  body.woocommerce-account #customer_login form.login { width: 100%; }
}

@media (min-width: 690px) and (max-width: 1024px) {
  body.woocommerce.archive ul.products li.product .corelie-loop-quick-view {
    top: 135.92px !important;
  }
  .corelie-quick-view__dialog {
    align-items: flex-start;
    padding: 30px;
  }
  .corelie-quick-view__content,
  .corelie-quick-view__product {
    height: 1021px;
    width: 708px;
  }
  .corelie-quick-view__content { top: 0; }
  .corelie-quick-view__product {
    display: block;
    grid-template-columns: none;
  }
  .corelie-quick-view__gallery {
    height: 708px;
    width: 708px;
  }
  .corelie-quick-view__image {
    height: 708px !important;
    width: 708px !important;
  }
  .corelie-quick-view__summary {
    height: 313px;
    width: 708px;
  }
  .corelie-quick-view__summary-inner { padding: 30px; }
  .corelie-quick-view__title-link h1 {
    font-size: 24.48px;
    line-height: 31.824px;
  }
  .corelie-quick-view__cart { gap: 14.39px; }
  .corelie-quick-view__add { flex-basis: 135.98px; }
  .corelie-quick-view__buy { flex-basis: 105.63px; }
}

.corelie-quick-view__quantity {
  display: grid !important;
  grid-template-columns: 24px 36px 24px !important;
}

body.woocommerce-account #customer_login .lost_password {
  height: 25.6px;
}
body.woocommerce-account #customer_login .lost_password a {
  font-family: Arial, sans-serif;
  transition: none;
}

/* Final homepage interaction parity. The source keeps the announcement row in
 * normal document flow while fixing a 70px main row after scroll. */
body.corelie-scrolled-header #header {
  height: 110px;
}
body.corelie-scrolled-header #header [data-device="desktop"] [data-row="middle"],
body.corelie-scrolled-header #header [data-device="mobile"] [data-row="middle"] {
  height: 70px !important;
  left: 0;
  max-height: 70px !important;
  min-height: 70px !important;
  position: fixed !important;
  right: 0;
  top: 0 !important;
  width: 100%;
  z-index: 1001;
}
body.corelie-scrolled-header #header [data-device="desktop"] [data-row="middle"] > .ct-container,
body.corelie-scrolled-header #header [data-device="mobile"] [data-row="middle"] > .ct-container {
  height: 70px !important;
  max-height: 70px !important;
  min-height: 70px !important;
}

@media (max-width: 689px) {
  body.corelie-scrolled-header #header { height: 100px; }
}

body.home .corelie-product-card__button { white-space: nowrap; }
body.home .corelie-product-card__quick-view {
  bottom: -.98px;
  box-sizing: border-box;
  color: #f1f1f1 !important;
  font-family: Lato, Arial, sans-serif !important;
  height: 33.98px;
  letter-spacing: normal;
  line-height: 21.76px;
  padding: 5.44px 0 6.8px;
  text-decoration: none !important;
}

/* 1.0.138: final source-state parity for the home banner and WooCommerce
 * transaction pages. Content remains editable through Elementor/WooCommerce. */
body.home .corelie-brand-banner .corelie-hero-copy .elementor-button {
  box-shadow: 0 4px 12px rgba(0, 0, 0, .25);
  letter-spacing: .3px;
  transition: background-color .3s, box-shadow .3s, transform .3s;
}
body.home .corelie-brand-banner .corelie-hero-copy .elementor-button:hover,
body.home .corelie-brand-banner .corelie-hero-copy .elementor-button:hover {
  background: #f0f0f0 !important;
  box-shadow: 0 6px 16px rgba(0, 0, 0, .3);
  color: #111 !important;
  text-decoration: underline;
  transform: scale(1.02);
}
body.home .corelie-brand-banner .corelie-hero-copy .elementor-button:focus-visible {
  background: #fff !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .25);
  color: #000 !important;
  outline: 2px solid #000 !important;
  outline-offset: 0;
  text-decoration: none;
  transform: none;
}

/* Filled cart: source six-column table, actions, totals and coupon layout. */
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-layout {
  display: grid;
  grid-template-columns: minmax(0, 686.66px) minmax(0, 472.33px);
  column-gap: 61.01px;
  width: 100%;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) #main,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) #main > .elementor,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-woocommerce-shell {
  height: 577.38px !important;
  min-height: 577.38px !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) #main { flex: 0 0 577.38px !important; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart-collaterals,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals {
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents {
  border: 0 !important;
  border-collapse: collapse;
  display: table !important;
  font-family: Lato, Arial, sans-serif;
  margin: 0 !important;
  table-layout: fixed;
  height: 233.59px !important;
  width: 686.66px !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents thead {
  display: table-header-group !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents tbody {
  display: table-row-group !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents tr {
  display: table-row !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents th,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents td {
  border: 0 !important;
  box-sizing: border-box;
  display: table-cell !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  vertical-align: middle;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents thead tr {
  border-bottom: 3px solid #ececec;
  height: 32.5px;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents thead th {
  color: #777;
  font-size: 13.6px;
  font-weight: 700;
  height: 32.5px;
  letter-spacing: .68px;
  line-height: 21.76px;
  text-align: left;
  text-transform: uppercase;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents th.product-name { width: 436.34px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-remove { width: 24px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-thumbnail { width: 90px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-name { width: 322.34px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-price { width: 61.97px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-quantity { width: 98.38px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-subtotal { width: 89.97px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents .product-remove { width: 24px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents .product-thumbnail { width: 90px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents td.product-name { width: 322.34px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents .product-price { width: 61.97px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents .product-quantity { width: 98.38px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents .product-subtotal { width: 89.97px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item {
  border-bottom: 1px solid #ececec;
  height: 106.63px;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td {
  height: 106.63px;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item .product-remove a {
  align-items: center;
  border: 2px solid #ccc;
  border-radius: 100%;
  color: #ccc !important;
  display: flex;
  font-family: Arial, sans-serif;
  font-size: 15px;
  font-weight: 400;
  height: 24px;
  justify-content: center;
  line-height: 19px;
  position: relative;
  text-decoration: none;
  top: -.5px;
  width: 24px;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item .product-remove a:hover,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item .product-remove a:focus-visible {
  color: #000 !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .product-thumbnail img {
  display: block;
  height: 75.63px !important;
  margin: 0 auto;
  object-fit: cover;
  width: 75.63px !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-name {
  color: #4a4a4a;
  font-family: Lato, Arial, sans-serif;
  font-size: 14.4px;
  line-height: 18.72px;
  padding: 0 7.19px !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-name a {
  color: #334862 !important;
  text-decoration: none;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-price,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-subtotal {
  color: #111;
  font-size: 14.4px;
  line-height: 23.04px;
}
.corelie-cart-mobile-price { display: none; }
.corelie-cart-quantity {
  display: grid !important;
  grid-template-columns: 24px 36px 24px;
  height: 36.09px !important;
  justify-content: center;
  margin: 0 auto !important;
  min-height: 36.09px !important;
  position: relative;
  top: -1px;
  width: 84px !important;
}
.corelie-cart-quantity > .quantity {
  height: 36.09px !important;
  min-height: 36.09px !important;
  width: 36px !important;
}
.corelie-cart-quantity > .quantity .ct-increase,
.corelie-cart-quantity > .quantity .ct-decrease {
  display: none !important;
}
.corelie-cart-quantity .corelie-cart-quantity__button,
.corelie-cart-quantity input.qty {
  background: #fff !important;
  border: 1px solid #ddd !important;
  border-radius: 0 !important;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1) !important;
  box-sizing: border-box;
  color: #333 !important;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 14.4px !important;
  font-weight: 400 !important;
  height: 36.09px !important;
  line-height: 34.09px !important;
  margin: 0 !important;
  min-height: 36.09px !important;
  min-width: 0 !important;
  padding: 0 !important;
  text-align: center;
  min-width: 0 !important;
  width: 36px !important;
}
.corelie-cart-quantity .corelie-cart-quantity__button {
  border-color: #ddd !important;
  cursor: pointer;
  width: 24px !important;
}
.corelie-cart-quantity input.qty {
  border-left: 0 !important;
  border-right: 0 !important;
  appearance: textfield;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents td.actions {
  font-size: 0;
  height: 94.47px;
  padding-top: 30px !important;
  text-align: left;
  vertical-align: top !important;
}
body.woocommerce-cart .corelie-continue-shopping,
body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] {
  align-items: center;
  border-radius: 0 !important;
  box-sizing: border-box;
  display: inline-flex;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 13.968px !important;
  font-weight: 700 !important;
  justify-content: center;
  letter-spacing: .419px;
  line-height: 33.52px !important;
  margin: 0 !important;
  min-height: 0 !important;
  padding: 0 16.762px !important;
  text-transform: uppercase;
  vertical-align: top;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  flex-wrap: nowrap;
  top: -.5px !important;
}
body.woocommerce-cart .corelie-continue-shopping {
  background: transparent !important;
  border: 2px solid #000 !important;
  color: #000 !important;
  height: 34.91px;
  width: 213.7px;
}
body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] {
  background: #000 !important;
  border: 1px solid rgba(0, 0, 0, .05) !important;
  color: #fff !important;
  height: 35.52px;
  margin-left: 13.96px !important;
  width: 139.08px;
}
body.woocommerce-cart .corelie-continue-shopping:hover,
body.woocommerce-cart .corelie-continue-shopping:focus-visible {
  background: #000 !important;
  color: #fff !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals > h2 {
  border-bottom: 3px solid #ececec;
  color: #777;
  font-family: Lato, Arial, sans-serif;
  font-size: 13.6px;
  font-weight: 700;
  height: 32.5px;
  letter-spacing: .68px;
  line-height: 29.5px;
  margin: 0 !important;
  padding: 0 !important;
  text-transform: uppercase;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals {
  height: 276.39px !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals table {
  border: 0 !important;
  border-collapse: collapse;
  font-family: Lato, Arial, sans-serif;
  margin: 16px 0 0 !important;
  width: 100%;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals th,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals td {
  border: 0 !important;
  border-bottom: 1px solid #ececec !important;
  color: #4a4a4a;
  font-size: 14.4px;
  line-height: 23.04px;
  padding: 0 !important;
  text-align: left;
  vertical-align: top;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals th { font-weight: 400; width: 22%; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals td { text-align: right; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals > table > tbody > tr:not(.woocommerce-shipping-totals) > th {
  font-size: 13.6px;
  line-height: 14.28px;
  width: 53.94%;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals > table > tbody > tr:not(.woocommerce-shipping-totals) > td {
  font-size: 14.4px;
  line-height: 18.72px;
  width: 46.06%;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .cart-subtotal { height: 34.09px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-totals { height: 94.45px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .order-total { height: 36.09px; }
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-totals td {
  text-align: left;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .ct-shipping-heading {
  float: left;
  width: 22%;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-methods,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .corelie-shipping-notice,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-destination,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-calculator {
  margin-left: 22%;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-methods {
  display: block;
  height: 29.77px;
  margin-bottom: 3px;
  padding: 0;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .corelie-shipping-notice {
  font-size: 13.6px;
  line-height: 18.72px;
  padding: 0;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-methods li {
  align-items: center;
  display: flex;
  font-size: 13.6px;
  height: 29.77px;
  line-height: 18.72px;
  margin: 0 !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-destination {
  font-size: 13.6px;
  height: 16.83px;
  line-height: 16.83px;
  margin-bottom: 3px;
  margin-top: 0;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-calculator {
  font-size: 13.6px;
  height: 18.83px;
  line-height: 18.83px;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-totals td {
  height: 94.45px;
  position: relative;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .ct-shipping-heading,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-methods,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .corelie-shipping-notice,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-destination,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-calculator {
  margin: 0 !important;
  position: absolute;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .ct-shipping-heading {
  left: 0;
  top: 7.19px;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-methods {
  left: 21.52%;
  top: 7.19px;
  width: 78.48%;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .corelie-shipping-notice {
  left: 21.52%;
  top: 7.19px;
  width: 78.48%;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-destination {
  left: 21.52%;
  top: 43.43px;
  width: 78.48%;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-calculator {
  left: 21.52%;
  top: 67.44px;
  width: 78.48%;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .wc-proceed-to-checkout {
  height: 39.25px;
  margin-top: 24px;
  padding: 0 !important;
  transform: translateY(-.45px);
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .checkout-button {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 15.52px !important;
  font-weight: 700 !important;
  height: 39.25px;
  justify-content: center;
  line-height: 37.248px !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
}
body.woocommerce-cart .corelie-cart-coupon,
body.woocommerce-cart .corelie-cart-coupon .coupon {
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
}
body.woocommerce-cart .corelie-cart-coupon h3 {
  border-bottom: 1px solid #ececec;
  color: #777;
  font-family: Lato, Arial, sans-serif;
  font-size: 15.2px;
  font-weight: 700;
  height: 37.31px;
  line-height: 24.32px;
  margin: 0 0 15px !important;
  padding: 0 0 10px !important;
  text-transform: none;
}
body.woocommerce-cart .corelie-cart-coupon h3::before {
  content: "\f02b";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 8px;
}
body.woocommerce-cart .corelie-cart-coupon input#coupon_code {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 0;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
  box-sizing: border-box;
  color: #333;
  display: block;
  font-family: Lato, Arial, sans-serif;
  font-size: 15.52px;
  height: 38.91px;
  line-height: 24.832px;
  margin: 0 0 15.52px;
  padding: 0 11.64px;
  width: 100%;
}
body.woocommerce-cart .corelie-cart-coupon input#coupon_code:focus {
  box-shadow: 0 0 5px #ccc !important;
  outline: none !important;
}
body.woocommerce-cart .corelie-cart-coupon button[name="apply_coupon"] {
  background: #f9f9f9 !important;
  border: 1px solid #ddd !important;
  border-radius: 0 !important;
  box-sizing: border-box;
  color: #666 !important;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 15.52px !important;
  font-weight: 400 !important;
  height: 39.25px;
  line-height: 37.248px !important;
  margin: 0 !important;
  max-height: 39.25px;
  min-height: 39.25px !important;
  padding: 0 !important;
  text-transform: none;
  width: 100%;
}

/* Checkout breadcrumb and classic form geometry. */
body.woocommerce-checkout .corelie-woocommerce-shell {
  padding: 0 !important;
}
body.woocommerce-checkout #main,
body.woocommerce-checkout #main > .elementor,
body.woocommerce-checkout .corelie-woocommerce-shell {
  height: 1228.53px !important;
  min-height: 1228.53px !important;
}
body.woocommerce-checkout #main { flex: 0 0 1228.53px !important; }
body.woocommerce-checkout .corelie-woocommerce-shell > .e-con-inner {
  gap: 0 !important;
  max-width: none !important;
  padding: 0 !important;
  width: 100% !important;
}
body.woocommerce-checkout .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-heading {
  display: none !important;
}
body.woocommerce-checkout .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-shortcode {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}
body.woocommerce-checkout .corelie-woocommerce-shell .elementor-shortcode > .woocommerce {
  margin: 0 auto;
  max-width: none;
  width: 100%;
}
.corelie-checkout-steps {
  box-sizing: border-box;
  height: 112.7px;
  margin: 0 0 0;
  padding-top: 20px;
  width: 100%;
}
.corelie-checkout-steps__inner {
  align-items: center;
  display: flex;
  font-family: Lato, Arial, sans-serif;
  font-size: 21.6px;
  font-weight: 700;
  height: 62.7px;
  justify-content: center;
  line-height: 28.08px;
  margin: 0 auto;
  max-width: 1220px;
  text-transform: uppercase;
  width: calc(100% - 30px);
}
.corelie-checkout-steps__inner a,
.corelie-checkout-steps__inner span {
  color: #ccc;
  text-decoration: none;
}
.corelie-checkout-steps__inner .current { color: #000; }
.corelie-checkout-steps__divider {
  font-size: 32px;
  font-weight: 400;
  margin: 0 16px;
}
body.woocommerce-checkout .woocommerce-form-login-toggle { display: none !important; }
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1220px;
  width: calc(100% - 30px) !important;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle {
  height: 33.59px;
  margin-bottom: 0 !important;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #4a4a4a;
  font-family: Lato, Arial, sans-serif;
  font-size: 16px;
  height: 33.59px;
  line-height: 25.6px;
  margin: 0 !important;
  min-height: 0 !important;
  padding: 0 0 7.99px !important;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::after { display: none !important; }
body.woocommerce-checkout form.checkout {
  display: block !important;
  min-height: 1031.44px;
  position: relative;
}
body.woocommerce-checkout form.checkout > .ct-order-review {
  border: 0 !important;
  box-sizing: border-box;
  height: 1031.44px;
  left: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  position: absolute !important;
  top: 0 !important;
  width: 100% !important;
}
/* The full-width order wrapper is only a positioning canvas. It must not cover
   the editable billing form; its actual right-column controls remain active. */
body.woocommerce-checkout form.checkout > .ct-order-review {
  pointer-events: none;
}
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout form.checkout > .ct-order-review > .woocommerce-privacy-policy-text {
  pointer-events: auto;
}
body.woocommerce-checkout form.checkout > .ct-customer-details {
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 699.16px !important;
}
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #customer_details > .col-1,
body.woocommerce-checkout #customer_details > .col-2 {
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}
body.woocommerce-checkout #customer_details {
  height: 1001.44px;
}
body.woocommerce-checkout .woocommerce-billing-fields > h3 {
  color: #555;
  font-family: Lato, Arial, sans-serif;
  font-size: 20px;
  font-weight: 700;
  height: 46.94px;
  line-height: 24px;
  margin: 0 !important;
  padding-top: 17px;
  text-transform: uppercase;
}
body.woocommerce-checkout #customer_details .form-row {
  box-sizing: border-box;
  clear: both;
  float: none;
  height: 83.2px;
  margin: 0 0 8px !important;
  padding: 0 !important;
  width: 100%;
}
body.woocommerce-checkout #customer_details .form-row-first,
body.woocommerce-checkout #customer_details .form-row-last {
  clear: none;
  float: left;
  width: 48% !important;
}
body.woocommerce-checkout #customer_details .form-row-last {
  float: right;
}
body.woocommerce-checkout #customer_details label {
  color: #222;
  display: block;
  font-family: Lato, Arial, sans-serif;
  font-size: 14.4px;
  font-weight: 700;
  line-height: 23.04px;
  margin: 0 0 5.76px !important;
}
body.woocommerce-checkout #customer_details input.input-text,
body.woocommerce-checkout #customer_details textarea,
body.woocommerce-checkout #customer_details .select2-selection--single {
  background: #fff;
  border: 1px solid #ddd !important;
  border-radius: 0 !important;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
  box-sizing: border-box;
  color: #333;
  font-family: Lato, Arial, sans-serif;
  font-size: 15.52px;
}
body.woocommerce-checkout #customer_details input.input-text {
  height: 38.91px;
  line-height: 24.832px;
  padding: 0 11.64px;
}
body.woocommerce-checkout #customer_details input.input-text:focus,
body.woocommerce-checkout #customer_details textarea:focus,
body.woocommerce-checkout #customer_details .select2-selection--single:focus {
  box-shadow: 0 0 5px #ccc !important;
  outline: none !important;
}
body.woocommerce-checkout #customer_details .select2-container,
body.woocommerce-checkout #customer_details .select2-selection--single {
  height: 34.91px !important;
  min-height: 34.91px !important;
  width: 100% !important;
}
body.woocommerce-checkout #customer_details .select2-selection__rendered {
  line-height: 32.91px !important;
  padding-left: 11.64px !important;
}
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #billing_state_field {
  height: 79.7px !important;
}
body.woocommerce-checkout #billing_address_2_field input {
  margin-top: 28.8px;
}
@media (min-width: 690px) {
  body.woocommerce-checkout #customer_details #billing_address_1_field {
    clear: left !important;
    float: left !important;
    width: 48% !important;
  }
  body.woocommerce-checkout #customer_details #billing_address_2_field {
    clear: none !important;
    float: right !important;
    width: 48% !important;
  }
  body.woocommerce-checkout #customer_details #billing_city_field {
    clear: both !important;
  }
}
body.woocommerce-checkout #customer_details .woocommerce-shipping-fields h3 {
  color: #555;
  font-family: Lato, Arial, sans-serif;
  font-size: 17.6px;
  font-weight: 700;
  line-height: 28.16px;
  margin: 8px 0 8.8px !important;
  text-transform: uppercase;
}
body.woocommerce-checkout #customer_details .woocommerce-shipping-fields h3 label {
  display: inline-block;
  font-size: 15.84px;
  font-weight: 400;
  line-height: 25.344px;
  margin: 0 10px 6.336px 0 !important;
}
body.woocommerce-checkout #customer_details .woocommerce-billing-fields > h3 {
  font-size: 17.6px;
  height: 38.14px;
  line-height: 28.16px;
  margin: 17px 0 8.8px !important;
  padding: 10px 0 0 !important;
}
body.woocommerce-checkout #customer_details .required { color: #222 !important; }
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
  display: block !important;
  padding: 0 0 8px !important;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before { display: none !important; }
body.woocommerce-checkout #customer_details #order_comments_field {
  height: 164.3px;
  margin: 0 !important;
}
body.woocommerce-checkout #customer_details textarea {
  height: 120px !important;
  line-height: 24.832px;
  min-height: 120px !important;
  padding: 8px 11.64px;
  resize: none;
}
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review {
  box-sizing: border-box;
  left: auto !important;
  position: absolute !important;
  right: 32.01px !important;
  width: 426.83px !important;
}
body.woocommerce-checkout #order_review_heading {
  color: #555;
  font-family: Lato, Arial, sans-serif;
  font-size: 17.6px;
  font-weight: 700;
  height: 38.14px;
  line-height: 28.16px;
  margin: 0 !important;
  padding: 0 !important;
  text-transform: uppercase;
  top: 15px;
}
body.woocommerce-checkout #order_review {
  border: 0 !important;
  margin: 0 !important;
  outline: 0;
  padding: 0 !important;
  top: 61.93px;
}
body.woocommerce-checkout form.checkout > .ct-order-review::before {
  border: 2px solid #000;
  box-sizing: border-box;
  content: "";
  height: 760.27px;
  left: 729.16px;
  pointer-events: none;
  position: absolute;
  top: .03px;
  width: 490.83px;
}
body.woocommerce-checkout #order_review table {
  border: 0;
  border-collapse: collapse;
  font-family: Lato, Arial, sans-serif;
  margin: 0 !important;
  table-layout: fixed;
  width: 100%;
}
body.woocommerce-checkout #order_review th,
body.woocommerce-checkout #order_review td {
  border: 0;
  border-bottom: 1px solid #ececec;
  color: #4a4a4a;
  vertical-align: middle;
}
body.woocommerce-checkout #order_review thead th {
  font-size: 14.4px;
  font-weight: 700;
  height: 32.5px;
  line-height: 15.12px;
  padding: 7.2px 0 !important;
  text-transform: uppercase;
}
body.woocommerce-checkout #order_review thead .product-name,
body.woocommerce-checkout #order_review tbody .product-name,
body.woocommerce-checkout #order_review tfoot th { width: 336.86px; }
body.woocommerce-checkout #order_review thead .product-total,
body.woocommerce-checkout #order_review tbody .product-total,
body.woocommerce-checkout #order_review tfoot td:not(:only-child) { width: 89.97px; }
body.woocommerce-checkout #order_review thead tr { height: 32.5px !important; }
body.woocommerce-checkout #order_review tbody tr.cart_item { height: 68.44px !important; }
body.woocommerce-checkout #order_review tr.cart-subtotal { height: 34.09px !important; }
body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals { height: 45.14px !important; }
body.woocommerce-checkout #order_review tr.order-total { height: 36.09px !important; }
body.woocommerce-checkout #order_review tbody tr.cart_item th,
body.woocommerce-checkout #order_review tbody tr.cart_item td {
  font-size: 14.4px;
  height: 68.44px;
  line-height: 18.72px;
  padding: 15px 0 !important;
}
body.woocommerce-checkout #order_review tr.cart-subtotal th,
body.woocommerce-checkout #order_review tr.order-total th {
  font-size: 13.6px;
  line-height: 14.28px;
  padding: 6.8px 0 !important;
}
body.woocommerce-checkout #order_review tr.cart-subtotal td,
body.woocommerce-checkout #order_review tr.order-total td {
  font-size: 14.4px;
  line-height: 18.72px;
  padding: 7.2px 0 !important;
}
body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > td {
  font-size: 14.4px;
  height: 45.14px;
  line-height: 18.72px;
  padding: 7.2px 0 !important;
  position: relative;
}
body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals .ct-shipping-heading {
  font-size: 13.6px;
  left: 0;
  line-height: 14.28px;
  position: absolute;
  top: 15.43px;
  width: 86.13px;
}
body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals .woocommerce-shipping-methods {
  height: 29.77px;
  left: 86.13px;
  position: absolute;
  top: 7.18px;
  width: 340.7px;
}
body.woocommerce-checkout #order_review .woocommerce-shipping-methods {
  display: block;
  height: 36px;
  margin: 0 !important;
  padding: 0 !important;
}
body.woocommerce-checkout #order_review .woocommerce-shipping-methods li {
  align-items: center;
  display: flex;
  font-size: 14.4px;
  height: 29.77px;
  line-height: 18.72px;
  margin: 0 !important;
  padding: 0 !important;
}
/* WooCommerce outputs the no-shipping message as prose rather than a method
   list. Reserve the same two-column row and let the copy wrap without touching
   the absolute Shipment label. */
body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals:has(.corelie-shipping-notice),
body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals:has(.corelie-shipping-notice) > td {
  height: 102.77px !important;
}
body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals .corelie-shipping-notice {
  box-sizing: border-box;
  font: inherit;
  line-height: 18.72px;
  margin: 0 0 0 86.13px !important;
  min-height: 88.37px;
  padding: 7.2px 0 !important;
  width: 340.7px;
}
body.woocommerce-checkout #order_review table { margin-bottom: 15.59px !important; }
body.woocommerce-checkout #payment {
  background: transparent !important;
  border-radius: 0 !important;
  height: 345.02px !important;
  margin: 0 !important;
  position: relative !important;
}
body.woocommerce-checkout #payment .payment_box {
  background: #f1f1f1 !important;
  color: #4a4a4a;
  font-family: Lato, Arial, sans-serif;
  font-size: 14.4px;
  line-height: 23.04px;
}
body.woocommerce-checkout #payment .place-order {
  bottom: 0;
  height: 67.19px;
  left: 0;
  padding: 0 !important;
  position: absolute;
  width: 100%;
}
body.woocommerce-checkout #place_order {
  align-items: center;
  display: flex;
  float: none !important;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 19.2px !important;
  font-weight: 700 !important;
  height: 48px;
  justify-content: center;
  line-height: 46.08px !important;
  margin: 0 !important;
  padding: 0 !important;
  position: absolute !important;
  top: 0 !important;
  width: 100%;
}
body.woocommerce-checkout #order_review {
  height: 577.28px !important;
}
body.woocommerce-checkout #order_review:has(.corelie-shipping-notice) {
  height: 634.91px !important;
}
body.woocommerce-checkout form.checkout > .ct-order-review > .woocommerce-privacy-policy-text {
  box-sizing: border-box;
  color: #4a4a4a;
  font-family: Lato, Arial, sans-serif;
  font-size: 13.6px;
  height: 65.25px;
  line-height: 21.76px;
  margin: 0 !important;
  position: absolute;
  right: 32.01px;
  top: 639.25px;
  width: 426.83px;
}
body.woocommerce-checkout form.checkout > .ct-order-review > .woocommerce-privacy-policy-text p {
  font-size: inherit;
  line-height: inherit;
  margin: 0 !important;
}

@media (min-width: 690px) {
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .product-thumbnail img,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-name > a {
    position: relative;
    top: -1px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-name > a {
    font-weight: 400 !important;
  }
}

/* Lost-password endpoint: do not inherit the taller login/register shell. */
body.woocommerce-lost-password #main,
body.woocommerce-lost-password #main > .elementor,
body.woocommerce-lost-password .corelie-woocommerce-shell {
  height: 393.016px !important;
  min-height: 393.016px !important;
}
body.woocommerce-lost-password #main { flex: 0 0 393.016px !important; }
body.woocommerce-lost-password .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-shortcode {
  flex: 0 0 328.391px;
  height: 328.391px;
  padding: 30px 0;
}
body.woocommerce-lost-password form.lost_reset_password {
  border: 0 !important;
  color: #4a4a4a;
  font-family: Lato, Arial, sans-serif;
  margin: 0 0 20.8px !important;
  padding: 0 !important;
  width: 100%;
}
body.woocommerce-lost-password form.lost_reset_password > p:first-child {
  font-size: 16px;
  line-height: 25.6px;
  margin: 0 0 8px !important;
}
body.woocommerce-lost-password form.lost_reset_password .form-row-first {
  float: none;
  height: 83.219px;
  margin: 0 0 8px !important;
  padding: 0 !important;
  width: 48%;
}
body.woocommerce-lost-password form.lost_reset_password label {
  color: #222;
  display: block;
  font-family: Lato, Arial, sans-serif;
  font-size: 14.4px;
  font-weight: 700;
  line-height: 23.04px;
  margin: 0 0 5.76px !important;
}
body.woocommerce-lost-password form.lost_reset_password input.input-text {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 0;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
  box-sizing: border-box;
  color: #333;
  font-family: Lato, Arial, sans-serif;
  font-size: 15.52px;
  height: 38.906px;
  line-height: 24.832px;
  margin: 0 0 15.52px;
  padding: 0 11.64px;
  width: 100%;
}
body.woocommerce-lost-password form.lost_reset_password input.input-text:focus {
  box-shadow: 0 0 5px #ccc !important;
  outline: none !important;
}
body.woocommerce-lost-password form.lost_reset_password .woocommerce-Button {
  align-items: center;
  background: #000 !important;
  border: 1px solid rgba(0, 0, 0, .05) !important;
  border-radius: 0 !important;
  color: #fff !important;
  display: inline-flex;
  font-family: Lato, Arial, sans-serif !important;
  font-size: 15.52px !important;
  font-weight: 700 !important;
  height: 39.25px;
  justify-content: center;
  letter-spacing: .4656px;
  line-height: 37.248px !important;
  margin: 0 15.52px 15.52px 0 !important;
  min-height: 39.25px;
  padding: 0 18.624px !important;
  text-transform: uppercase;
  width: 192px;
}
body.woocommerce-lost-password form.lost_reset_password .woocommerce-Button:hover,
body.woocommerce-lost-password form.lost_reset_password .woocommerce-Button:focus-visible {
  box-shadow: inset 0 0 0 100px rgba(0, 0, 0, .2);
}

/* The account shell has a more specific logged-out minimum height, and Blocksy
 * caps reset forms at 450px. Reassert the reference endpoint geometry with
 * endpoint-specific selectors so the native WooCommerce form remains intact. */
body.woocommerce-account.woocommerce-lost-password #main,
body.woocommerce-account.woocommerce-lost-password #main > .elementor,
body.woocommerce-account.woocommerce-lost-password .corelie-woocommerce-shell,
body.woocommerce-account.woocommerce-lost-password .corelie-woocommerce-shell > .e-con-inner {
  height: 393.016px !important;
  min-height: 393.016px !important;
}
body.woocommerce-account.woocommerce-lost-password #main {
  flex: 0 0 393.016px !important;
}
body.woocommerce-account.woocommerce-lost-password .ct-woo-unauthorized > form.woocommerce-ResetPassword.lost_reset_password {
  margin: 0 0 20.8px !important;
  max-width: none !important;
  padding: 30px 0 !important;
  width: 100% !important;
}
body.woocommerce-account.woocommerce-lost-password form.lost_reset_password .form-row-first {
  float: left;
  margin-right: 4% !important;
  width: 48% !important;
}
body.woocommerce-account.woocommerce-lost-password form.lost_reset_password > .form-row:last-of-type {
  margin-bottom: 8px !important;
}

/* Transaction-state parity: the source darkens primary actions with an inset
 * shade, underlines cart links, and uses a black keyboard outline. */
body.woocommerce-cart #main .return-to-shop .button:hover,
body.woocommerce-cart #main .return-to-shop .button:focus-visible,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .checkout-button:hover,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .checkout-button:focus-visible,
body.woocommerce-account #customer_login button.button:hover,
body.woocommerce-account #customer_login button.button:focus-visible,
body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout #place_order:focus-visible {
  box-shadow: inset 0 0 0 100px rgba(0, 0, 0, .2) !important;
}
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .checkout-button:hover,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .checkout-button:focus-visible {
  text-decoration: underline;
}
body.woocommerce-cart #main .return-to-shop .button:focus-visible {
  outline: 2px solid #000 !important;
  outline-offset: 0;
}
body.woocommerce-checkout #place_order {
  line-height: 23.04px !important;
}
.corelie-cart-quantity input.qty {
  border: 1px solid #ddd !important;
  border-radius: 0 !important;
  line-height: 18.72px !important;
}
.corelie-cart-quantity input.qty:focus {
  box-shadow: 0 0 5px #ccc !important;
  outline: none !important;
}
body.woocommerce-cart .corelie-cart-layout .corelie-cart-quantity > .quantity input.qty {
  border-radius: 0 !important;
}

/* Keep the desktop cart proportions while the content container narrows. */
@media (min-width: 690px) and (max-width: 1249px) {
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-layout {
    grid-template-columns: minmax(0, 1.464fr) minmax(0, 1fr);
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents {
    width: 100% !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents th.product-name,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-name,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents td.product-name {
    width: auto !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-subtotal,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents .product-subtotal {
    width: 80.97px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-name a {
    overflow-wrap: normal;
    word-break: normal;
  }
}

/* The source stacks the cart and totals below its 850px large-screen breakpoint. */
@media (min-width: 690px) and (max-width: 849px) {
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-layout {
    display: block;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) #main,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) #main > .elementor,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-woocommerce-shell {
    height: auto !important;
    min-height: 0 !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) #main {
    flex: 0 0 auto !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart-collaterals,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals {
    width: 100% !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart-collaterals {
    margin-top: 30px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals {
    height: auto !important;
  }
  body.woocommerce-cart .corelie-continue-shopping {
    font-size: 12.24px !important;
    height: 31.53px;
    line-height: 30.17px !important;
    padding: 0 14.688px !important;
    width: 192.8px !important;
  }
  body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] {
    font-size: 12.5712px !important;
    height: 32.17px !important;
    line-height: 30.17px !important;
    margin-left: 12.56px !important;
    padding: 0 15.0854px !important;
    width: 125.41px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-totals,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-totals td {
    height: auto !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .ct-shipping-heading,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-methods,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .corelie-shipping-notice,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-destination,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-calculator {
    height: auto;
    left: auto;
    position: static;
    top: auto;
    width: 100%;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .ct-shipping-heading {
    margin-bottom: 10px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-methods,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .corelie-shipping-notice,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-destination {
    margin-bottom: 6px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .corelie-shipping-notice {
    margin-bottom: 15px !important;
  }
}

/* Let the native desktop shipping calculator participate in document flow
 * while it is open; the compact closed state keeps its source-matched geometry. */
@media (min-width: 850px) {
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) #main,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) #main > .elementor,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .corelie-woocommerce-shell {
    height: auto !important;
    min-height: 0 !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) #main {
    flex: 0 0 auto !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .cart_totals,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .cart_totals .woocommerce-shipping-totals,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .cart_totals .woocommerce-shipping-totals td {
    height: auto !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .cart_totals .woocommerce-shipping-totals td {
    padding-top: 7.19px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .cart_totals .woocommerce-shipping-methods,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .cart_totals .corelie-shipping-notice,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .cart_totals .woocommerce-shipping-destination,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .cart_totals .woocommerce-shipping-calculator {
    height: auto;
    left: auto;
    margin-left: 21.52% !important;
    position: static;
    top: auto;
    width: 78.48%;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .cart_totals .woocommerce-shipping-methods,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .cart_totals .corelie-shipping-notice,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)):has(.shipping-calculator-form:not([style*="display:none"]):not([style*="display: none"])) .cart_totals .woocommerce-shipping-destination {
    margin-bottom: 3px !important;
  }
}

@media (max-width: 689px) {
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-shortcode {
    padding-top: 30px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-layout {
    display: block;
    width: 100%;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) #main,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) #main > .elementor,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-woocommerce-shell {
    height: 818.969px !important;
    min-height: 818.969px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) #main { flex: 0 0 818.969px !important; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents {
    display: table !important;
    color: #4a4a4a;
    font-size: 14.4px;
    height: auto !important;
    line-height: 23.04px;
    table-layout: fixed;
    width: 360px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form {
    align-self: start;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents thead {
    display: table-header-group !important;
    height: 29.53px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents thead tr {
    display: table-row !important;
    height: 29.53px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents thead th {
    display: table-cell !important;
    height: 29.53px !important;
    max-height: 29.53px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents tbody {
    display: table-row-group !important;
    height: auto;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item {
    display: table-row !important;
    height: auto !important;
    position: static;
    width: 360px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td {
    display: table-cell !important;
    height: auto !important;
    position: static;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-thumbnail {
    padding: 15px 6.48px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-name {
    padding: 15px 6.48px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-quantity {
    display: table-cell !important;
    padding: 15px 6.48px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents tbody > tr:last-child {
    display: table-row !important;
    height: 89.73px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents tbody > tr:last-child td.actions {
    display: table-cell !important;
    height: 89.73px !important;
    width: 360px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents thead tr {
    height: 29.53px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents thead th {
    font-size: 12.96px;
    height: 29.53px;
    line-height: 13.608px;
    padding: 6.48px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents thead th.product-name {
    padding-left: 0 !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents th.product-name { width: 273.16px; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-remove { width: 0; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-thumbnail { width: 90px; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-name { width: 183.16px; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-price { width: 0; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-quantity { width: 86.84px; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-col-subtotal { width: 0; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents .product-remove { width: 0; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents .product-thumbnail { width: 90px; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents td.product-name { width: 183.16px; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents .product-price,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents .product-subtotal {
    border: 0 !important;
    color: transparent !important;
    display: table-cell !important;
    font-size: 0 !important;
    line-height: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    visibility: hidden !important;
    white-space: nowrap !important;
    width: 0 !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents .product-quantity { width: 86.84px; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td {
    font-size: 12.96px;
    line-height: 16.848px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item > .product-remove {
    display: table-cell !important;
    height: auto;
    padding: 15px 0 !important;
    position: relative;
    width: 0;
    z-index: 2;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item .product-remove a {
    font-size: 18px;
    line-height: 18px;
    left: 0;
    position: absolute;
    top: 8.5px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .product-thumbnail img {
    display: block;
    height: 77.07px !important;
    margin: 0 !important;
    width: 77.07px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-thumbnail > a {
    display: block;
    height: 76.07px;
    position: relative;
    top: -1.5px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-name {
    font-family: Lato, Arial, sans-serif;
    font-size: 12.96px;
    line-height: 16.848px;
    text-align: left !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-name > a {
    font-family: Lato, Arial, sans-serif;
    font-size: 12.96px;
    font-weight: 400;
    line-height: 16.848px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-name > * {
    position: relative;
    top: -.95px;
  }
  .corelie-cart-mobile-price {
    display: block;
    font-family: Lato, Arial, sans-serif;
    font-size: 12.96px;
    line-height: 16.848px;
    margin-top: 6.48px;
  }
  .corelie-cart-quantity {
    grid-template-columns: 24px 25.91px 24px;
    height: 32.48px !important;
    left: calc(100vw - 40px) !important;
    margin: 0 !important;
    min-height: 32.48px !important;
    position: relative;
    top: -1.54px !important;
    transform: none;
    width: 73.91px !important;
  }
  .corelie-cart-quantity > .quantity {
    height: 32.48px !important;
    min-height: 32.48px !important;
    width: 25.91px !important;
  }
  .corelie-cart-quantity .corelie-cart-quantity__button,
  .corelie-cart-quantity input.qty {
    font-size: 12.96px !important;
    height: 32.48px !important;
    line-height: 30.48px !important;
    min-height: 32.48px !important;
  }
  .corelie-cart-quantity .corelie-cart-quantity__button {
    font-size: 12.5712px !important;
    line-height: 30.1709px !important;
    width: 24px !important;
  }
  .corelie-cart-quantity input.qty { width: 25.91px !important; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__contents td.actions {
    font-size: 0;
    height: 89.73px;
    line-height: 0;
    padding: 30px 0 15px !important;
  }
  body.woocommerce-cart .corelie-continue-shopping {
    font-size: 12.24px !important;
    height: 34.91px;
    padding: 0 14.688px !important;
    width: 192.8px !important;
  }
  body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] {
    font-size: 12.5712px !important;
    height: 32.17px !important;
    line-height: 30.17px !important;
    margin-left: 12.56px !important;
    padding: 0 15.0854px !important;
    width: 125.41px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart-collaterals,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals {
    width: 360px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals table {
    display: table !important;
    table-layout: fixed;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals tbody {
    display: table-row-group !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals tr {
    display: table-row !important;
    width: 360px !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals th,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals td {
    display: table-cell !important;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals td::before,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-name::before,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce-cart-form__cart-item td.product-quantity::before {
    content: none !important;
    display: none !important;
  }
  body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] { white-space: nowrap; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals > table > tbody > tr:not(.woocommerce-shipping-totals) > th {
    font-size: 12.24px;
    line-height: 12.852px;
    width: 53.933%;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals > table > tbody > tr:not(.woocommerce-shipping-totals) > td {
    font-size: 12.96px;
    line-height: 16.848px;
    width: 46.067%;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-methods,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-destination,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-calculator {
    left: 186.47px;
    width: 173.53px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-methods {
    height: 41.94px;
    top: 6.47px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-methods li {
    font-size: 12.96px;
    height: 41.94px;
    line-height: 16.848px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-destination {
    font-size: 12.96px;
    height: 15.14px;
    line-height: 15.14px;
    top: 54.24px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-calculator {
    font-size: 12.96px;
    height: 16.83px;
    line-height: 16.83px;
    top: 75.84px;
  }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .cart-subtotal { height: 30.77px; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-totals,
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .woocommerce-shipping-totals td { height: 100.14px; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .order-total { height: 32.77px; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals { height: 275.42px !important; }
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .cart_totals .wc-proceed-to-checkout {
    transform: translateY(-1.53px);
  }
  body.woocommerce-cart .corelie-cart-coupon input#coupon_code {
    font-size: 16px;
    height: 40.11px;
    line-height: 25.6px;
    margin-bottom: 16px;
    padding: 0 12px;
  }

  .corelie-checkout-steps {
    height: 120.7px;
    padding-top: 25px;
  }
  .corelie-checkout-steps__inner {
    font-size: 21.6px;
    height: 60.7px;
    line-height: 28.08px;
    width: 360px;
  }
  .corelie-checkout-steps__optional,
  .corelie-checkout-steps__divider { display: none; }
  body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout form.checkout {
    width: 360px !important;
  }
  body.woocommerce-checkout form.checkout > .ct-customer-details {
    width: 360px !important;
  }
  body.woocommerce-checkout #customer_details {
    height: 1171.47px;
  }
  body.woocommerce-checkout form.checkout {
    min-height: 2032.25px;
  }
  body.woocommerce-checkout form.checkout > .ct-order-review {
    height: 860.78px;
    top: 1171.47px !important;
  }
  body.woocommerce-checkout form.checkout > .ct-order-review::before {
    height: 800.78px;
    left: 0;
    top: 13.03px;
    width: 360px;
  }
  body.woocommerce-checkout #main,
  body.woocommerce-checkout #main > .elementor,
  body.woocommerce-checkout .corelie-woocommerce-shell {
    height: 2254.172px !important;
    min-height: 2254.172px !important;
  }
  body.woocommerce-checkout #main { flex: 0 0 2254.172px !important; }
  body.woocommerce-checkout #customer_details .form-row,
  body.woocommerce-checkout #customer_details .form-row-first,
  body.woocommerce-checkout #customer_details .form-row-last {
    clear: both;
    float: none;
    height: 84.91px;
    width: 100% !important;
  }
  body.woocommerce-checkout #customer_details input.input-text {
    font-size: 16px;
    height: 40.109px;
    line-height: 25.6px;
    padding: 0 12px;
  }
  body.woocommerce-checkout #customer_details .select2-container,
  body.woocommerce-checkout #customer_details .select2-selection--single {
    height: 36.109px !important;
    min-height: 36.109px !important;
  }
  body.woocommerce-checkout #customer_details .select2-selection__rendered {
    line-height: 34.109px !important;
    padding-left: 12px !important;
  }
  body.woocommerce-checkout #billing_country_field,
  body.woocommerce-checkout #billing_state_field { height: 80.91px !important; }
  body.woocommerce-checkout #billing_address_2_field { height: 56.109px !important; }
  body.woocommerce-checkout #billing_address_2_field input { margin-top: 0; }
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review {
    left: 32px !important;
    right: auto !important;
    width: 296px !important;
  }
  body.woocommerce-checkout #order_review_heading { top: 45.03px; }
  body.woocommerce-checkout #order_review { top: 91.96px; }
  body.woocommerce-checkout form.checkout > .ct-order-review > .woocommerce-privacy-policy-text {
    height: auto;
    left: 32px;
    right: auto;
    top: 688.01px;
    width: 296px;
  }
  body.woocommerce-checkout #order_review {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.woocommerce-checkout #order_review {
    height: 596.05px !important;
  }
  body.woocommerce-checkout #order_review thead .product-name,
  body.woocommerce-checkout #order_review tbody .product-name,
  body.woocommerce-checkout #order_review tfoot th { width: 215.02px; }
  body.woocommerce-checkout #order_review thead .product-total,
  body.woocommerce-checkout #order_review tbody .product-total,
  body.woocommerce-checkout #order_review tfoot td:not(:only-child) { width: 80.98px; }
  body.woocommerce-checkout #order_review thead tr,
  body.woocommerce-checkout #order_review thead th { height: 29.53px !important; }
  body.woocommerce-checkout #order_review thead th {
    font-size: 12.96px;
    line-height: 13.608px;
    padding: 6.48px 0 !important;
  }
  body.woocommerce-checkout #order_review tbody tr.cart_item,
  body.woocommerce-checkout #order_review tbody tr.cart_item th,
  body.woocommerce-checkout #order_review tbody tr.cart_item td { height: auto !important; }
  body.woocommerce-checkout #order_review tbody tr.cart_item th,
  body.woocommerce-checkout #order_review tbody tr.cart_item td {
    font-size: 12.96px;
    line-height: 16.848px;
    padding: 15px 6.48px 15px 0 !important;
  }
  body.woocommerce-checkout #order_review tbody tr.cart_item .product-total {
    padding: 15px 0 15px 6.48px !important;
  }
  body.woocommerce-checkout #order_review tr.cart-subtotal { height: 30.77px !important; }
  body.woocommerce-checkout #order_review tr.order-total { height: 32.77px !important; }
  body.woocommerce-checkout #order_review tr.cart-subtotal th,
  body.woocommerce-checkout #order_review tr.order-total th {
    font-size: 12.24px;
    line-height: 12.852px;
    padding: 6.12px 0 !important;
  }
  body.woocommerce-checkout #order_review tr.cart-subtotal td,
  body.woocommerce-checkout #order_review tr.order-total td {
    font-size: 12.96px;
    line-height: 16.848px;
    padding: 6.48px 0 !important;
  }
  body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals,
  body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > td { height: 55.88px !important; }
  body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > td {
    font-size: 12.96px;
    line-height: 16.848px;
    padding: 6.48px 0 !important;
  }
  body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals .ct-shipping-heading {
    font-size: 12.24px;
    line-height: 12.852px;
    top: 21.51px;
    width: 148px;
  }
  body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals .woocommerce-shipping-methods {
    height: 41.94px;
    left: 148px;
    top: 6.47px;
    width: 148px;
  }
  body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals:has(.corelie-shipping-notice),
  body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals:has(.corelie-shipping-notice) > td {
    height: auto !important;
    min-height: 110px;
  }
  body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals .corelie-shipping-notice {
    line-height: 16.848px;
    margin-left: 148px !important;
    min-height: 110px;
    padding: 6.48px 0 !important;
    width: 148px;
  }
  body.woocommerce-checkout #order_review:has(.corelie-shipping-notice) {
    height: 701.78px !important;
  }
  body.woocommerce-checkout form.checkout:has(#order_review .corelie-shipping-notice) {
    min-height: 2068.83px;
  }
  body.woocommerce-checkout form.checkout > .ct-order-review:has(.corelie-shipping-notice) {
    height: 897.36px;
  }
  body.woocommerce-checkout form.checkout > .ct-order-review:has(.corelie-shipping-notice)::before {
    height: 867.84px;
  }
  body.woocommerce-checkout:has(#order_review .corelie-shipping-notice) #main,
  body.woocommerce-checkout:has(#order_review .corelie-shipping-notice) #main > .elementor,
  body.woocommerce-checkout:has(#order_review .corelie-shipping-notice) .corelie-woocommerce-shell {
    height: 2290.75px !important;
    min-height: 2290.75px !important;
  }
  body.woocommerce-checkout:has(#order_review .corelie-shipping-notice) #main {
    flex-basis: 2290.75px !important;
  }
  body.woocommerce-checkout #order_review .woocommerce-shipping-methods li {
    font-size: 12.96px;
    height: 41.94px;
    line-height: 16.848px;
    padding-left: 6.47px !important;
  }
  body.woocommerce-checkout #order_review table { margin-bottom: 13.87px !important; }
  body.woocommerce-checkout #payment { height: 368.06px !important; }

  body.woocommerce-lost-password #main,
  body.woocommerce-lost-password #main > .elementor,
  body.woocommerce-lost-password .corelie-woocommerce-shell {
    height: 443.25px !important;
    min-height: 443.25px !important;
  }
  body.woocommerce-lost-password #main { flex: 0 0 443.25px !important; }
  body.woocommerce-lost-password .corelie-woocommerce-shell > .e-con-inner > .elementor-widget-shortcode {
    flex-basis: 381.25px;
    height: 381.25px;
  }
  body.woocommerce-lost-password form.lost_reset_password .form-row-first { width: 100%; }
  body.woocommerce-lost-password form.lost_reset_password input.input-text {
    font-size: 16px;
    height: 40.109px;
    line-height: 25.6px;
    padding: 0 12px;
  }
  body.woocommerce-account.woocommerce-lost-password #main,
  body.woocommerce-account.woocommerce-lost-password #main > .elementor,
  body.woocommerce-account.woocommerce-lost-password .corelie-woocommerce-shell,
  body.woocommerce-account.woocommerce-lost-password .corelie-woocommerce-shell > .e-con-inner {
    height: 443.25px !important;
    min-height: 443.25px !important;
  }
  body.woocommerce-account.woocommerce-lost-password #main {
    flex-basis: 443.25px !important;
  }
  body.woocommerce-account.woocommerce-lost-password form.lost_reset_password .form-row-first {
    float: none;
    height: 84.906px;
    margin-right: 0 !important;
    width: 100% !important;
  }
  .corelie-cart-quantity input.qty {
    line-height: 16.848px !important;
  }
}
body.home .corelie-product-card:hover .corelie-product-card__quick-view,
body.home .corelie-product-card:focus-within .corelie-product-card__quick-view {
  opacity: .95;
  text-decoration: none !important;
}
body.home .corelie-product-card__media-link:focus-visible {
  color: #111 !important;
  outline: 2px solid #111 !important;
  outline-offset: 0;
  text-decoration: none !important;
}

body.home .corelie-brand-promos .corelie-brand-card {
  border-radius: 8px;
  position: relative;
  transition: box-shadow .3s ease, transform .3s ease;
}
body.home .corelie-brand-promos .corelie-brand-card:hover,
body.home .corelie-brand-promos .corelie-brand-card:focus-within {
  box-shadow: 0 8px 20px rgba(0, 0, 0, .08);
  transform: translateY(-4px);
}
body.home .corelie-brand-promos .corelie-brand-card:hover img,
body.home .corelie-brand-promos .corelie-brand-card:focus-within img {
  transform: none;
}
body.home .corelie-brand-promos .corelie-brand-card:hover a,
body.home .corelie-brand-promos .corelie-brand-card:focus-within a {
  text-decoration: underline;
}

.corelie-hotspot__point:hover,
.corelie-hotspot__point:focus-visible,
.corelie-hotspot__point:hover .corelie-hotspot__icon,
.corelie-hotspot__point:focus-visible .corelie-hotspot__icon {
  text-decoration: none !important;
}

@media (max-width: 1024px) {
  #offcanvas .mobile-menu > ul > li > a,
  #offcanvas .mobile-menu .ct-sub-menu-parent > a,
  #offcanvas .ct-header-cta[data-id="button"] .ct-button-ghost {
    font-family: Lato, Arial, sans-serif !important;
    letter-spacing: .256px !important;
  }
}

/* Match Flickity's adaptive-height Quick View gallery using each local image's
 * intrinsic aspect ratio. */
.corelie-quick-view__content,
.corelie-quick-view__product {
  height: auto;
  min-height: 437.5px;
}
.corelie-quick-view__gallery,
.corelie-quick-view__gallery > a {
  height: auto;
}
.corelie-quick-view__image {
  height: auto !important;
}
.corelie-quick-view__summary {
  height: auto;
  min-height: 437.5px;
}
.corelie-quick-view__nav {
  align-items: center;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #111 !important;
  display: flex;
  font-size: 24px !important;
  height: 20% !important;
  justify-content: center;
  min-height: 0 !important;
  opacity: .7;
  padding: 0 !important;
  position: absolute;
  top: 40%;
  transition: opacity .3s;
  width: 36px !important;
  z-index: 4;
}
.corelie-quick-view__nav--previous { left: 2%; }
.corelie-quick-view__nav--next { right: 2%; }
.corelie-quick-view__gallery:hover .corelie-quick-view__nav,
.corelie-quick-view__gallery:focus-within .corelie-quick-view__nav {
  opacity: .7;
}
.corelie-quick-view__nav:hover,
.corelie-quick-view__nav:focus-visible { opacity: 1 !important; }

@media (min-width: 690px) and (max-width: 1024px) {
  .corelie-quick-view__content,
  .corelie-quick-view__product {
    height: auto;
    min-height: 0;
  }
  .corelie-quick-view__gallery,
  .corelie-quick-view__gallery > a,
  .corelie-quick-view__image {
    height: auto !important;
  }
  .corelie-quick-view__summary {
    height: auto;
    min-height: 0;
  }
}

/* Flatsome leaves 30px below a final catalog row when the archive has no
 * pagination. Keep the 35px gutter only on paginated archives. */
body.post-type-archive-product.woocommerce main > .ct-container:not(:has(.woocommerce-pagination)) {
  padding-bottom: 30px !important;
}

/* Product searches include the source site's horizontally scrollable page
 * results after catalog pagination. The empty image wells are intentional: the
 * reference entries do not contain thumbnails. */
body.search-results.post-type-archive-product main > .ct-container {
  padding-bottom: 30px !important;
}
.corelie-pages-found {
  box-sizing: border-box;
  padding-top: 5px;
  width: 100%;
}
.corelie-pages-found > hr {
  background: rgba(0, 0, 0, .1);
  border: 0;
  height: 1px;
  margin: 15px 15px;
  overflow: hidden;
}
.corelie-pages-found > h4 {
  color: #555;
  font-family: Arial, sans-serif;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .05em;
  line-height: 21.6px;
  margin: 0 15px 9px;
  text-transform: uppercase;
}
.corelie-pages-found__track {
  box-sizing: border-box;
  display: block;
  font-size: 0;
  margin: 0;
  overflow-x: scroll;
  overflow-y: hidden;
  scrollbar-width: none;
  white-space: nowrap;
  width: 100%;
}
.corelie-pages-found__track::-webkit-scrollbar { display: none; }
.corelie-pages-found__item {
  box-sizing: border-box;
  display: inline-block;
  margin: 0;
  padding: 0 15px 30px;
  vertical-align: top;
  white-space: normal;
  width: 33.333333%;
}
.corelie-pages-found__item > a {
  color: #4a4a4a;
  display: block;
  text-decoration: none;
  transition: color .3s, opacity .3s, transform .3s;
}
.corelie-pages-found__image {
  display: block;
  overflow: hidden;
  padding-top: 56.25%;
  width: 100%;
}
.corelie-pages-found__text {
  box-sizing: border-box;
  color: inherit;
  display: block;
  font-family: Arial, sans-serif;
  font-size: 14.4px;
  font-weight: 400;
  line-height: 23.04px;
  padding: 11.52px 0 21.6px;
}
.corelie-pages-found__item > a:hover {
  color: #111;
  text-decoration: underline;
}
.corelie-pages-found__item > a:focus {
  outline: 2px solid #4a4a4a;
  outline-offset: 0;
}

/* The reference storefront's declared Lato files currently fall back to the
 * browser sans face in its transaction UI. Match that rendered face rather
 * than the locally installed Lato metrics so labels and line wraps align. */
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-layout,
body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-layout *:not(i),
body.woocommerce-checkout .corelie-checkout-steps,
body.woocommerce-checkout .corelie-checkout-steps *:not(i),
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout .woocommerce-form-coupon-toggle *:not(i),
body.woocommerce-checkout form.checkout,
body.woocommerce-checkout form.checkout *:not(i) {
  font-family: Arial, sans-serif !important;
}

@media (max-width: 689px) {
  .corelie-pages-found > h4 {
    font-size: 16px;
    line-height: 19.2px;
    margin-bottom: 8px;
  }
  .corelie-pages-found__track { height: 197.58px; }
  .corelie-pages-found__item { width: 50%; }
  .corelie-pages-found__text {
    font-size: 13.6px;
    line-height: 21.76px;
    padding: 10.88px 0 20.4px;
  }
}

/* Final storefront interaction parity. These declarations are intentionally
 * scoped so Elementor content and transaction buttons retain their established
 * geometry while matching the reference hover and keyboard states. */
@media (min-width: 1025px) {
  #header [data-device="desktop"] .ct-header-cart .ct-label {
    color: #000;
    letter-spacing: .02em;
    text-transform: uppercase;
  }
}

body.post-type-archive-product.woocommerce ul.products li.product .corelie-buy-now:hover,
body.single-product form.cart .single_add_to_cart_button:not(.corelie-buy-now):hover,
body.single-product form.cart .corelie-buy-now:hover {
  box-shadow: inset 0 0 0 100px rgba(0, 0, 0, .2) !important;
}

body.post-type-archive-product.woocommerce ul.products li.product .corelie-buy-now:focus-visible {
  outline: 2px solid #fff !important;
  outline-offset: 2px;
  text-decoration: none !important;
}

body.single-product form.cart .single_add_to_cart_button:not(.corelie-buy-now):focus-visible,
body.single-product form.cart .corelie-buy-now:focus-visible {
  outline: 2px solid #000 !important;
  outline-offset: 2px;
}

body.single-product form.cart .single_add_to_cart_button:not(.corelie-buy-now) {
  letter-spacing: .03em;
}

body.corelie-storefront .corelie-pages-found > h4 {
  font-family: Arial, sans-serif;
}

.corelie-pages-found__item > a:focus {
  outline-offset: 2px;
}

/* Source-order product navigation. The controls are absolute so the reserved
 * price rhythm remains unchanged for short and wrapped product titles. */
body.single-product .entry-summary {
  position: relative;
}

.corelie-product-nav {
  align-items: center;
  display: flex;
  gap: 6.531px;
  position: absolute;
  right: 15px;
  top: 10px;
  z-index: 6;
}

@media (min-width: 1025px) {
  .corelie-product-nav { right: -192.312px; top: 0; }
}

.corelie-product-nav__link {
  align-items: center;
  background: transparent;
  border: 2px solid #c0c0c0;
  border-radius: 999px;
  color: #c0c0c0;
  display: inline-flex;
  font-size: 11.1744px;
  height: 28.469px;
  justify-content: center;
  line-height: 24.472px;
  position: relative;
  text-decoration: none;
  width: 27.922px;
}

.corelie-product-nav__link:hover,
.corelie-product-nav__link:focus-visible {
  background: #000;
  border-color: #000;
  color: #fff;
  text-decoration: none;
}

.corelie-product-nav__link:focus-visible {
  outline: 2px solid #4a4a4a;
  outline-offset: 2px;
}

.corelie-product-nav__popover {
  background: #fff;
  border: 2px solid #ddd;
  box-shadow: 1px 1px 15px rgba(0, 0, 0, .15);
  color: #4a4a4a;
  display: none;
  height: 90px;
  overflow: hidden;
  padding: 2px;
  position: absolute;
  right: -47.75px;
  text-align: left;
  top: calc(100% + 2px);
  width: 90px;
}

.corelie-product-nav__image {
  display: block;
  height: 82px;
  margin: 0;
  object-fit: cover;
  width: 82px;
}
.corelie-product-nav__popover > span { display: none; }

@media (min-width: 690px) {
  .corelie-product-nav__link:hover .corelie-product-nav__popover,
  .corelie-product-nav__link:focus-visible .corelie-product-nav__popover {
    display: block;
  }
}

@media (max-width: 689px) {
  .corelie-product-nav {
    gap: 8.531px;
    left: 17.484px;
    right: auto;
    top: var(--corelie-product-nav-mobile-top, 126px);
  }
  .corelie-product-nav__link {
    font-size: 12.416px;
    height: 31.188px;
    line-height: 27.191px;
    width: 31.031px;
  }
  .corelie-product-nav__popover { display: none !important; }
}

/* Eight deterministic carousel slots, grouped 4/3/2 by viewport. */
body.single-product .related.products {
  position: relative;
}
body.single-product .related.products li.product[hidden] {
  display: none !important;
}
.corelie-related-carousel__previous,
.corelie-related-carousel__next {
  align-items: center;
  background: #fff;
  border: 0;
  border-radius: 0;
  box-shadow: 0 -150px 15px rgba(0, 0, 0, .3);
  color: #111;
  display: flex;
  font-size: 12px;
  height: calc(100% - 65px);
  justify-content: center;
  min-height: 0;
  opacity: 0;
  padding: 0;
  position: absolute;
  top: 63px;
  transition: opacity .3s, transform .3s;
  width: 30px;
  z-index: 8;
}
.corelie-related-carousel__previous { left: -11px; }
.corelie-related-carousel__next { right: -11px; }
body.single-product .related.products:hover .corelie-related-carousel__previous,
body.single-product .related.products:hover .corelie-related-carousel__next,
body.single-product .related.products:focus-within .corelie-related-carousel__previous,
body.single-product .related.products:focus-within .corelie-related-carousel__next {
  opacity: .7;
}
.corelie-related-carousel__previous:hover,
.corelie-related-carousel__next:hover,
.corelie-related-carousel__previous:focus-visible,
.corelie-related-carousel__next:focus-visible {
  opacity: 1 !important;
}
.corelie-related-carousel__previous:focus-visible,
.corelie-related-carousel__next:focus-visible {
  outline: 2px solid #111;
  outline-offset: -3px;
}

.corelie-quick-view__content {
  box-shadow: 3px 3px 20px rgba(0, 0, 0, .15);
}

@media (max-width: 689px) {
  .corelie-related-carousel__previous,
  .corelie-related-carousel__next {
    background: transparent;
    box-shadow: none;
    height: calc(100% - 58.188px);
    opacity: .8;
    top: 56.188px;
    width: 24px;
  }
  .corelie-related-carousel__previous { left: -11px; }
  .corelie-related-carousel__next { right: -11px; }
  body.woocommerce.archive ul.products li.product .ct-swap,
  body.single-product .related.products li.product .ct-swap {
    display: none !important;
  }
}

/* Flatsome exposes the catalog alternate image on the whole card hover. The
 * Blocksy swap asset is already the same localized second gallery image; make
 * its state and timing explicit because the theme's swap selector does not
 * fire after the source-order image filter runs. */
@media (min-width: 690px) {
  body.woocommerce.archive ul.products li.product:hover .ct-swap,
  body.single-product .related.products li.product:hover .ct-swap {
    opacity: 1 !important;
    transition: filter .6s, opacity .6s, transform .6s, box-shadow .3s;
  }
}

/* Source tablet stack (690–1024px): full-bleed product gallery, full-width
 * summary, 738px content tabs, and the three-card related carousel. */
@media (min-width: 690px) and (max-width: 1024px) {
  body.single-product main > .ct-container-full {
    padding: 0;
  }
  body.single-product main > .ct-container-full > article > .hero-section {
    display: none;
  }
  body.single-product .woocommerce-breadcrumb {
    display: none;
  }
  body.single-product article > .product {
    padding-top: 40px;
  }
  body.single-product .product-entry-wrapper {
    display: block;
    height: auto;
    margin: 0;
    width: 100vw !important;
  }
  body.single-product .entry-summary .price {
    margin: 82.812px 0 12px !important;
  }
  body.single-product .entry-summary .corelie-buy-now {
    display: none !important;
  }
  body.single-product .entry-summary form.cart,
  body.single-product .entry-summary form.cart .ct-cart-actions {
    height: 40.109px;
  }
  body.single-product .entry-summary form.cart .ct-cart-actions {
    grid-template-rows: 40.109px !important;
  }
  body.single-product .corelie-product-nav {
    right: 15px;
    top: 115.719px;
  }
  body.single-product .woocommerce-product-gallery {
    height: var(--corelie-product-main-height, calc(100vw - 30px));
    margin: 0;
    overflow: visible;
    padding: 0 15px;
    width: 100vw !important;
  }
  body.single-product .woocommerce-product-gallery.corelie-gallery-has-pills {
    height: calc(var(--corelie-product-main-height, calc(100vw - 30px)) + 179.891px);
  }
  body.single-product .woocommerce-product-gallery .flexy-view,
  body.single-product .woocommerce-product-gallery .flexy-items,
  body.single-product .woocommerce-product-gallery .flexy-item,
  body.single-product .woocommerce-product-gallery .flexy-item > .ct-media-container,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container > figure {
    height: var(--corelie-product-main-height, calc(100vw - 30px)) !important;
    width: calc(100vw - 30px) !important;
  }
  body.single-product .woocommerce-product-gallery .flexy-item img,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container > figure > img {
    height: 100% !important;
    object-fit: fill !important;
    width: calc(100vw - 30px) !important;
  }
  body.single-product .woocommerce-product-gallery .flexy-pills {
    height: 164.891px;
    margin-left: -10px;
    margin-top: 15px;
    overflow: hidden;
    width: calc(100vw - 10px);
  }
  body.single-product .woocommerce-product-gallery .flexy-pills > ol {
    gap: 0;
    height: 164.891px;
    margin: 0;
    width: calc(100vw - 10px);
  }
  body.single-product .woocommerce-product-gallery .flexy-pills li {
    flex: 0 0 calc((100vw - 10px) / 4) !important;
    height: 164.891px !important;
    padding: 0 9.8px !important;
    width: calc((100vw - 10px) / 4) !important;
  }
  body.single-product .woocommerce-product-gallery .flexy-pills img {
    height: 167.906px !important;
    margin-top: -4px;
    object-fit: cover;
    width: 167.906px !important;
  }
  body.single-product .entry-summary {
    height: auto;
    margin: 0;
    max-width: none;
    padding: 10px 15px 30px;
    width: 100vw !important;
  }
  body.single-product .product_title {
    font-size: 27.2px;
    line-height: 35.36px;
    margin: 0 0 13.6px !important;
  }
  body.single-product .woocommerce-tabs {
    display: block;
    height: auto;
    margin: 40px auto 0;
    overflow: visible;
    padding: 30px 0;
    width: calc(100vw - 30px);
  }
  body.single-product .related.products {
    display: block !important;
    height: 512.609px;
    margin: 0 auto;
    padding: 0;
    position: relative;
    width: calc(100vw - 30px);
  }
  body.single-product .related.products ul.products[class*="columns-"] {
    column-gap: 0;
    grid-template-columns: repeat(3, calc((100vw - 10px) / 3));
    height: 447.609px;
    margin-left: -10px;
    row-gap: 0;
    width: calc(100vw - 10px);
  }
  body.single-product .related.products ul.products[class*="columns-"] li.product {
    display: flex;
    flex-direction: column;
    height: 447.609px;
    min-height: 447.609px;
    padding: 0 9.8px 19.6px;
    text-align: left;
    width: calc((100vw - 10px) / 3) !important;
  }
  body.single-product .related.products ul.products li.product figure,
  body.single-product .related.products ul.products li.product figure > .ct-media-container {
    height: calc((100vw - 10px) / 3 - 19.6px) !important;
    width: calc((100vw - 10px) / 3 - 19.6px);
  }
  body.single-product .related.products ul.products li.product .entry-meta {
    color: #4a4a4a;
    font-size: 10.8px;
    line-height: 12.96px;
    margin: 11.156px 0 0;
    opacity: .8;
    text-align: left;
  }
  body.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
    font-size: 14.4px;
    font-weight: 400;
    line-height: 23.04px;
    margin: 1.44px 0;
    text-align: left;
  }
  body.single-product .related.products ul.products li.product .price {
    font-size: 14.4px;
    line-height: 14.4px;
    margin: 0;
  }
  body.single-product .related.products ul.products li.product .ct-woo-card-actions {
    display: block;
    margin-top: 18.96px;
    padding-bottom: 15.52px;
    text-align: left;
  }
  body.single-product .related.products ul.products li.product .button {
    display: inline-flex;
    margin: 0 15.52px 15.52px 0;
    width: 117.2px !important;
  }
}

/* Mobile related cards retain the same Flatsome text rhythm and fixed-width
 * CTA as the shop cards instead of inheriting Blocksy's centered flex card. */
@media (max-width: 689px) {
  body.single-product .related.products ul.products[class*="columns-"] li.product {
    display: flex;
    flex-direction: column;
    height: 394.672px;
    min-height: 394.672px;
    text-align: left;
  }
  body.single-product .related.products ul.products li.product .entry-meta {
    color: #4a4a4a;
    margin: 10.54px 0 0;
    opacity: .8;
    text-align: left;
  }
  body.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
    line-height: 21.76px;
    text-align: left;
  }
  body.single-product .related.products ul.products li.product .ct-woo-card-actions {
    display: block;
    margin-top: 18.96px;
    padding-bottom: 15.52px;
    text-align: left;
  }
  body.single-product .related.products ul.products li.product .button {
    display: inline-flex;
    margin: 0 15.52px 15.52px 0;
    width: 117.2px !important;
  }
}

/* Blocksy's 24px paragraph default adds 3.2px twice on multi-paragraph product
 * descriptions. The source tab rhythm is 20.8px; the first line already
 * aligns, so this also restores the visible tab and related-section boundary. */
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel p {
  margin-bottom: 20.8px;
}
body.single-product .product.product_cat-uncategorized .woocommerce-tabs .woocommerce-Tabs-panel > :last-child {
  margin-bottom: 20.8px !important;
}
body.single-product .related.products ul.products {
  top: 1.016px;
}

@media (min-width: 1025px) {
  body.single-product .related.products ul.products li.product {
    text-align: left;
  }
  body.single-product .related.products ul.products li.product .entry-meta {
    color: #4a4a4a;
    margin: 11.156px 0 0;
    opacity: .8;
    text-align: left;
  }
  body.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
    line-height: 23.04px;
    text-align: left;
  }
  body.single-product .related.products ul.products li.product .ct-woo-card-actions {
    display: block;
    text-align: left;
  }
  body.single-product .related.products ul.products li.product .ct-woo-card-actions .button {
    display: inline-flex;
    flex: 0 0 117.2px;
    max-width: 117.2px !important;
    min-width: 117.2px !important;
    width: 117.2px !important;
  }
}

@media (max-width: 1024px) {
  body.single-product .related.products ul.products li.product .ct-woo-card-actions .button {
    flex: 0 0 117.2px;
    max-width: 117.2px !important;
    min-width: 117.2px !important;
    width: 117.2px !important;
  }
}

/* The uncategorized sample group has the same visible slider height as the
 * source; its prior extra 3.2px came from a non-collapsing local text margin. */
@media (min-width: 1025px) {
  body.single-product:has(.product.type-product.product_cat-uncategorized) .related.products {
    height: 551.234px;
  }
}
@media (max-width: 689px) {
  body.single-product:has(.product.type-product.product_cat-uncategorized) .related.products {
    height: 452.859px;
  }
}

/* The reference header opens product search as a compact form immediately
 * below the desktop header, not as a full-screen overlay. Keep Blocksy's form,
 * focus trap, live-results code, and product-only query intact. */
@media (min-width: 1025px) {
  body:has(#search-modal.active) { overflow-y: scroll !important; }
  #search-modal.ct-panel {
    background: transparent !important;
    bottom: auto !important;
    display: block !important;
    height: 39.25px !important;
    left: auto !important;
    overflow: visible !important;
    right: max(15px, calc((100vw - 1220px) / 2 - 22px)) !important;
    top: 111.203px !important;
    width: 260px !important;
  }
  #search-modal .ct-panel-actions { display: none !important; }
  #search-modal .ct-panel-content {
    display: block !important;
    height: 39.25px !important;
    min-height: 0 !important;
    opacity: 1 !important;
    overflow: visible !important;
    transform: none !important;
    width: 260px !important;
  }
  #search-modal form.ct-search-form {
    height: 39.25px !important;
    margin: 0 !important;
    max-width: none !important;
    width: 260px !important;
  }
  #search-modal .ct-search-form-inner {
    background: transparent !important;
    border: 0 !important;
    display: flex !important;
    height: 39.25px !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 260px !important;
  }
  #search-modal input.modal-field {
    background: #fff !important;
    border: 1px solid #ddd !important;
    border-radius: 0 !important;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1) !important;
    color: #333 !important;
    flex: 0 0 220.328px !important;
    font-family: Lato, Arial, sans-serif !important;
    font-size: 15.52px !important;
    height: 38.906px !important;
    line-height: 24.832px !important;
    margin: 0 !important;
    padding: 0 11.64px !important;
    width: 220.328px !important;
  }
  #search-modal input.modal-field:focus {
    border-color: #b3b3b3 !important;
    outline: 0 !important;
  }
  #search-modal button[type="submit"] {
    align-items: center !important;
    background: #000 !important;
    border: 1px solid rgba(0, 0, 0, .05) !important;
    border-radius: 0 !important;
    color: #fff !important;
    display: inline-flex !important;
    flex: 0 0 39.672px !important;
    font-family: Lato, Arial, sans-serif !important;
    font-size: 15.52px !important;
    font-weight: 700 !important;
    height: 39.25px !important;
    justify-content: center !important;
    line-height: 37.248px !important;
    margin: 0 !important;
    min-height: 39.25px !important;
    padding: 0 9.312px !important;
    width: 39.672px !important;
  }
  #search-modal .ct-search-results {
    background: #fff;
    color: #4a4a4a;
    left: 0;
    top: calc(100% + 4px);
    width: 260px;
  }
}

/* A focused archive CTA does not reveal the image-level Quick View bar. */
body.woocommerce.archive ul.products li.product:focus-within:not(:hover) .corelie-loop-quick-view:not(:focus-visible) {
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translateY(33.98px) !important;
}

body.woocommerce.archive ul.products li.product:focus-within .corelie-loop-quick-view:focus-visible {
  opacity: .95 !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}

/* Pages Found uses the same full-height, wrap-style navigation affordance as
 * the reference Flickity row while retaining native horizontal scrolling. */
.corelie-pages-found { position: relative; }
.corelie-pages-found__previous,
.corelie-pages-found__next {
  align-items: center;
  background: #fff;
  border: 0;
  border-radius: 0;
  box-shadow: 0 -150px 15px rgba(0, 0, 0, .3);
  color: #111;
  display: flex;
  font-size: 18px;
  height: calc(100% - 66.594px);
  justify-content: center;
  min-height: 0;
  opacity: 0;
  padding: 0;
  position: absolute;
  top: 64.594px;
  transition: opacity .3s;
  width: 30px;
  z-index: 8;
}
.corelie-pages-found__previous > i,
.corelie-pages-found__next > i {
  align-items: center;
  display: flex;
  height: 30px;
  justify-content: center;
  left: 50%;
  line-height: 30px;
  position: absolute;
  top: calc(50% - 40px);
  transform: translate(-50%, -50%);
  width: 30px;
}
.corelie-pages-found__previous > i::before,
.corelie-pages-found__next > i::before {
  display: block;
  font-size: 18px;
  line-height: 18px;
  transform: scaleX(.9);
}
.corelie-pages-found__previous { left: -1px; }
.corelie-pages-found__next { right: -1px; }
.corelie-pages-found:hover .corelie-pages-found__previous,
.corelie-pages-found:hover .corelie-pages-found__next,
.corelie-pages-found:focus-within .corelie-pages-found__previous,
.corelie-pages-found:focus-within .corelie-pages-found__next { opacity: .7; }
.corelie-pages-found__previous:hover,
.corelie-pages-found__next:hover,
.corelie-pages-found__previous:focus-visible,
.corelie-pages-found__next:focus-visible { opacity: 1 !important; }
.corelie-pages-found__previous:focus-visible,
.corelie-pages-found__next:focus-visible {
  outline: 2px solid #111;
  outline-offset: -3px;
}

@media (max-width: 689px) {
  .corelie-pages-found__previous,
  .corelie-pages-found__next {
    background: transparent;
    box-shadow: none;
    font-size: 18px;
    height: calc(100% - 63.203px);
    opacity: .8;
    top: 61.203px;
    width: 24px;
  }
  .corelie-pages-found__previous > i,
  .corelie-pages-found__next > i {
    height: 24px;
    line-height: 24px;
    width: 24px;
  }
}

/* Mobile menu parity with the frozen Flatsome drawer. Keep Blocksy's native
 * focus management and ARIA behavior while matching the reference geometry. */
@media (max-width: 1024px) {
  #offcanvas .ct-panel-inner {
    background: rgba(255, 255, 255, .95) !important;
    overflow: visible !important;
  }
  #offcanvas .ct-panel-actions {
    background: transparent !important;
    height: 40px !important;
    inset-inline-end: auto !important;
    inset-inline-start: calc(100vw - 40px) !important;
    left: calc(100vw - 40px) !important;
    padding: 0 !important;
    position: fixed !important;
    right: auto !important;
    top: 0 !important;
    width: 40px !important;
  }
  #offcanvas .ct-toggle-close {
    color: #fff !important;
    height: 40px !important;
    margin: 0 !important;
    min-height: 40px !important;
    opacity: .6 !important;
    padding: 0 !important;
    width: 40px !important;
  }
  #offcanvas .ct-toggle-close .ct-icon {
    color: #fff !important;
    fill: #fff !important;
    height: 14px !important;
    width: 14px !important;
  }
  .corelie-mobile-menu-search {
    grid-template-columns: 219.9375px 40.0625px !important;
  }
  .corelie-mobile-menu-search input[type="search"] {
    border-color: #ddd !important;
    width: 219.9375px !important;
  }
  .corelie-mobile-menu-search button {
    height: 39.25px !important;
    margin-top: .421875px !important;
    min-height: 39.25px !important;
    width: 40.0625px !important;
  }
  .corelie-mobile-menu-search__icon,
  .corelie-mobile-menu-search__icon .ct-icon {
    height: 20px !important;
    width: 20px !important;
  }
  .corelie-mobile-menu-search__icon .ct-icon {
    transform: scale(.85) !important;
  }
  #offcanvas .mobile-menu .ct-toggle-dropdown-mobile {
    align-self: center !important;
    height: 38.796875px !important;
    justify-self: start !important;
    margin: 0 !important;
    margin-inline-start: 0 !important;
    padding: 0 !important;
    width: 45px !important;
  }
  #offcanvas .mobile-menu .ct-sub-menu-parent {
    column-gap: 0 !important;
    gap: 0 !important;
  }
  #offcanvas .mobile-menu .ct-toggle-dropdown-mobile .ct-icon {
    color: #999 !important;
    fill: #999 !important;
    height: 21px !important;
    width: 21px !important;
  }
  #offcanvas .mobile-menu .sub-menu {
    box-sizing: border-box !important;
    left: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    padding: 0 0 30px !important;
    width: 300px !important;
  }
  #offcanvas .mobile-menu .sub-menu > li {
    height: 35.59375px !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 300px !important;
  }
  #offcanvas .mobile-menu .sub-menu > li > a {
    align-items: center !important;
    background: transparent !important;
    box-sizing: border-box !important;
    color: #4a4a4a !important;
    display: flex !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    height: 35.59375px !important;
    line-height: 25.6px !important;
    margin: 0 0 0 8px !important;
    min-height: 0 !important;
    padding: 5px 0 5px 20px !important;
    text-transform: none !important;
    width: 292px !important;
  }
#offcanvas .mobile-menu a:focus-visible {
    outline: 2px solid #555 !important;
    outline-offset: 0 !important;
  }
}

/* Product gallery, review and long-card corrections verified against the
 * frozen desktop/mobile product states. */
body.woocommerce.archive .woo-listing-top,
body.woocommerce.archive ul.products li.product,
body.single-product .entry-summary,
body.single-product .woocommerce-tabs,
body.single-product .related.products {
  color: #4a4a4a;
}

body.single-product .woocommerce-product-gallery button[class*="flexy-arrow"] {
  border: 0;
  min-height: 40px;
  padding: 0;
}

body.single-product .woocommerce-product-gallery button[class*="flexy-arrow"]:focus-visible,
body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger:focus-visible {
  outline: 2px solid #111;
  outline-offset: 2px;
}

body.single-product .woocommerce-product-gallery button[class*="flexy-arrow"]:focus-visible {
  opacity: 1 !important;
  visibility: visible !important;
}

body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
  align-items: center;
  background: #fff;
  border: 2px solid #c0c0c0;
  border-radius: 999px;
  color: #c0c0c0;
  display: flex;
  font-size: 12px;
  height: 30px;
  justify-content: center;
  inset: auto auto auto 10px;
  min-height: 30px;
  padding: 0;
  top: calc(var(--corelie-product-main-height, 595px) - 45px);
  width: 30px;
  z-index: 9;
}

body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger::before {
  content: none;
}

body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger:hover,
body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger:focus-visible {
  background: #000;
  border-color: #000;
  color: #fff;
}

/* Reviews use WooCommerce's native fields and events, but follow the frozen
 * reference's full-width bordered form rather than Blocksy's two-column grid. */
body.single-product #reviews.woocommerce-Reviews {
  color: #4a4a4a;
  display: flex;
  flex-wrap: wrap;
  font-family: Arial, sans-serif;
  gap: 0;
  margin: 0 -15px !important;
  width: calc(100% + 30px) !important;
}

body.single-product #reviews #comments,
body.single-product #reviews #review_form_wrapper {
  flex: 0 0 100%;
  width: 100%;
}

body.single-product #reviews #comments {
  height: auto;
  padding: 0 15px 30px;
}

body.single-product #reviews #comments .woocommerce-Reviews-title {
  color: #555;
  font-family: Arial, sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 32px;
  margin: 0 0 10px;
}

body.single-product #reviews #comments .woocommerce-noreviews {
  color: #4a4a4a;
  font-family: Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 25.6px;
  margin: 0 0 20.8px;
}

body.single-product #reviews #review_form_wrapper {
  padding: 0 15px 30px;
}

body.single-product #reviews #review_form {
  border: 2px solid #000;
  padding: 30px;
}

body.single-product #reviews #respond {
  margin: 0 0 20.8px;
}

body.single-product #reviews #reply-title {
  color: #555;
  display: block;
  font-family: Arial, sans-serif;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 32px;
  margin: 0 0 10px;
}

body.single-product #reviews #commentform {
  column-gap: 0;
  display: flex;
  flex-wrap: wrap;
  font-family: Arial, sans-serif;
  row-gap: 0 !important;
  margin: 0 -15px 20.8px;
  width: calc(100% + 30px);
}

body.single-product #reviews #commentform .comment-notes {
  display: none;
}

body.single-product #reviews #commentform > .comment-form-rating,
body.single-product #reviews #commentform > .comment-form-comment,
body.single-product #reviews #commentform > .comment-form-field-textarea,
body.single-product #reviews #commentform > .comment-form-author,
body.single-product #reviews #commentform > .comment-form-field-input-author,
body.single-product #reviews #commentform > .comment-form-email,
body.single-product #reviews #commentform > .comment-form-field-input-email,
body.single-product #reviews #commentform > .comment-form-cookies-consent,
body.single-product #reviews #commentform > .form-submit {
  box-sizing: border-box;
  color: #4a4a4a;
  margin: 0 0 8px;
  padding: 0 15px;
}

body.single-product #reviews #commentform > .comment-form-rating {
  display: block;
  flex: 0 0 100%;
  height: 62.390625px;
  margin-bottom: 0;
  order: 1;
}

body.single-product #reviews #commentform > .comment-form-comment,
body.single-product #reviews #commentform > .comment-form-field-textarea {
  flex: 0 0 100%;
  height: 164.3125px;
  order: 2;
}

body.single-product #reviews #commentform > .comment-form-author,
body.single-product #reviews #commentform > .comment-form-field-input-author,
body.single-product #reviews #commentform > .comment-form-email,
body.single-product #reviews #commentform > .comment-form-field-input-email {
  flex: 0 0 50%;
  height: 83.21875px;
}

body.single-product #reviews #commentform > .comment-form-author,
body.single-product #reviews #commentform > .comment-form-field-input-author {
  order: 3;
}

body.single-product #reviews #commentform > .comment-form-email,
body.single-product #reviews #commentform > .comment-form-field-input-email {
  order: 4;
}

body.single-product #reviews #commentform > .comment-form-cookies-consent {
  flex: 0 0 100%;
  height: 34px;
  order: 5;
}

body.single-product #reviews #commentform > .form-submit {
  flex: 0 0 100%;
  order: 6;
}

body.single-product #reviews #commentform > .comment-form-rating > label,
body.single-product #reviews #commentform > .comment-form-comment > label,
body.single-product #reviews #commentform > .comment-form-field-textarea > label,
body.single-product #reviews #commentform > .comment-form-author > label,
body.single-product #reviews #commentform > .comment-form-field-input-author > label,
body.single-product #reviews #commentform > .comment-form-email > label,
body.single-product #reviews #commentform > .comment-form-field-input-email > label {
  color: #222;
  display: block;
  font-family: Arial, sans-serif;
  font-size: 14.4px;
  font-weight: 700;
  line-height: 23.04px;
  margin: 0 0 5.76px;
  text-transform: none;
}

body.single-product #reviews #commentform > .comment-form-cookies-consent label {
  color: #222;
  display: inline;
  font-family: Arial, sans-serif;
  font-size: 14.4px;
  font-weight: 700;
  line-height: 23.04px;
  margin: 0 0 5.76px;
  text-transform: none;
}

body.single-product #reviews #commentform .required {
  color: #222;
  font-family: Arial, sans-serif;
  font-size: 14.4px;
  font-weight: 700;
  line-height: 23.04px;
}

body.single-product #reviews #commentform .comment-form-rating .stars {
  display: flex;
  height: 25.59375px;
  margin: 0 0 8px;
  overflow: visible;
  width: 100%;
}

body.single-product #reviews #commentform .comment-form-rating .stars > span {
  display: flex;
  gap: 5px;
  margin-left: -5px;
}

body.single-product #reviews #commentform .comment-form-rating .stars a {
  box-sizing: border-box;
  color: transparent;
  display: block !important;
  flex: 0 0 auto;
  font-size: 0;
  height: 25.59375px;
  line-height: 0;
  overflow: hidden;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
}

body.single-product #reviews #commentform .comment-form-rating .stars a:not(:first-child) {
  border-left: 1px solid #ececec;
}

body.single-product #reviews #commentform .comment-form-rating .stars a::before {
  content: none;
}

body.single-product #reviews #commentform .comment-form-rating .stars a::after {
  color: #ddd;
  content: "\e005";
  font-family: "fl-icons";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  left: 5px;
  letter-spacing: 0;
  line-height: 25.59375px;
  position: absolute;
  top: 0;
  white-space: nowrap;
}

body.single-product #reviews #commentform .comment-form-rating .stars .star-1 { width: 21px; }
body.single-product #reviews #commentform .comment-form-rating .stars .star-2 { width: 38px; }
body.single-product #reviews #commentform .comment-form-rating .stars .star-3 { width: 54px; }
body.single-product #reviews #commentform .comment-form-rating .stars .star-4 { width: 70px; }
body.single-product #reviews #commentform .comment-form-rating .stars .star-5 { width: 86px; }
body.single-product #reviews #commentform .comment-form-rating .stars .star-2::after { content: "\e005\e005"; }
body.single-product #reviews #commentform .comment-form-rating .stars .star-3::after { content: "\e005\e005\e005"; }
body.single-product #reviews #commentform .comment-form-rating .stars .star-4::after { content: "\e005\e005\e005\e005"; }
body.single-product #reviews #commentform .comment-form-rating .stars .star-5::after { content: "\e005\e005\e005\e005\e005"; }

body.single-product #reviews #commentform .comment-form-rating .stars a:hover::after,
body.single-product #reviews #commentform .comment-form-rating .stars a:focus-visible::after,
body.single-product #reviews #commentform .comment-form-rating .stars a.active::after {
  color: #000;
}

body.single-product #reviews #commentform .comment-form-rating .stars a:focus-visible {
  outline: 2px solid #111;
  outline-offset: 1px;
}

body.single-product #reviews #commentform textarea,
body.single-product #reviews #commentform input[type="text"],
body.single-product #reviews #commentform input[type="email"] {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 0;
  box-shadow: none;
  color: #333;
  display: inline-block;
  font-family: Arial, sans-serif;
  font-size: 15.52px;
  font-weight: 400;
  line-height: 24.832px;
  margin: 0 0 15.52px;
  padding-left: 11.64px;
  padding-right: 11.64px;
  width: 100%;
}

body.single-product #reviews #commentform textarea {
  height: 120px;
  padding-bottom: 0;
  padding-top: 10.864px;
  resize: vertical;
}

body.single-product #reviews #commentform input[type="text"],
body.single-product #reviews #commentform input[type="email"] {
  height: 2.507em;
  padding-bottom: 0;
  padding-top: 0;
}

body.single-product #reviews #commentform textarea:focus,
body.single-product #reviews #commentform input[type="text"]:focus,
body.single-product #reviews #commentform input[type="email"]:focus {
  border-color: #aaa;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  outline: 0;
}

body.single-product #reviews #commentform #submit {
  align-items: center;
  background: #000;
  border: 1px solid rgba(0, 0, 0, .05);
  border-radius: 0;
  color: #fff;
  display: inline-block;
  font-family: Arial, sans-serif;
  font-size: 15.52px;
  font-weight: 700;
  height: 39.25px;
  justify-content: center;
  letter-spacing: .4656px;
  line-height: 37.248px;
  margin: 0 15.52px 15.52px 0;
  min-height: 0;
  padding: 0 18.624px;
  text-transform: uppercase;
  width: 101.484375px;
}

body.single-product #reviews #commentform #wp-comment-cookies-consent {
  appearance: auto !important;
  font-family: Arial, sans-serif;
  font-size: 16px;
  height: 13px !important;
  line-height: 25.6px;
  margin: 3px 10px 16px 4px;
  min-height: 13px !important;
  min-width: 13px !important;
  padding: 0;
  position: relative;
  top: -3px;
  width: 13px !important;
}

body.single-product #reviews #commentform #submit:hover,
body.single-product #reviews #commentform #submit:focus-visible {
  background: #333;
}

@media (max-width: 689px) {
  body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
    display: none;
  }

  body.single-product .related.products,
  body.single-product .related.products ul.products[class*="columns-"] {
    height: auto !important;
  }

  body.single-product .related.products ul.products[class*="columns-"] li.product {
    height: auto !important;
  }

  body.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
    flex-shrink: 0;
    line-height: 18.52px;
  }

  body.single-product #reviews #review_form {
    padding: 30px;
  }

  body.single-product #reviews #comments {
    padding-bottom: 30px;
  }

  body.single-product #reviews #comments .woocommerce-Reviews-title {
    font-size: 16px;
    line-height: 25.6px;
    margin-bottom: 8px;
  }

  body.single-product #reviews #reply-title {
    font-size: 16px;
    letter-spacing: normal;
    line-height: 25.6px;
    margin-bottom: 8px;
  }

  body.single-product #reviews #commentform {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 20.8px;
    width: 100%;
  }

  body.single-product #reviews #commentform > .comment-form-rating,
  body.single-product #reviews #commentform > .comment-form-comment,
  body.single-product #reviews #commentform > .comment-form-field-textarea,
  body.single-product #reviews #commentform > .comment-form-author,
  body.single-product #reviews #commentform > .comment-form-field-input-author,
  body.single-product #reviews #commentform > .comment-form-email,
  body.single-product #reviews #commentform > .comment-form-field-input-email,
  body.single-product #reviews #commentform > .comment-form-cookies-consent,
  body.single-product #reviews #commentform > .form-submit {
    flex-basis: 100% !important;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  body.single-product #reviews #commentform textarea,
  body.single-product #reviews #commentform input[type="text"],
  body.single-product #reviews #commentform input[type="email"] {
    font-size: 16px;
    line-height: 25.6px;
    margin-bottom: 16px;
    padding-left: 12px;
    padding-right: 12px;
  }

  body.single-product #reviews #commentform textarea {
    padding-top: 11.2px;
  }

  body.single-product #reviews #commentform > .comment-form-rating {
    height: 54.390625px;
    margin-bottom: 8px;
  }

  body.single-product #reviews #commentform > .comment-form-comment,
  body.single-product #reviews #commentform > .comment-form-field-textarea {
    height: 164.796875px;
  }

  body.single-product #reviews #commentform > .comment-form-author,
  body.single-product #reviews #commentform > .comment-form-field-input-author,
  body.single-product #reviews #commentform > .comment-form-email,
  body.single-product #reviews #commentform > .comment-form-field-input-email {
    height: 84.90625px;
  }

  body.single-product #reviews #commentform > .comment-form-cookies-consent {
    height: 59.59375px;
  }

  body.single-product #reviews #commentform > .form-submit {
    margin-bottom: 0;
  }
}

/* Mobile viewport-fit correction. Keep the 390px reference geometry while
 * allowing compact phones to shrink instead of silently clipping content. */
@media (max-width: 689px) {
  #header [data-device="mobile"] [data-row="middle"] > .ct-container {
    box-sizing: border-box;
    max-width: 360px;
    width: min(360px, 100%) !important;
  }

  body.home .corelie-products,
  body.post-type-archive-product.woocommerce ul.products[class*="columns-"] {
    box-sizing: border-box;
    max-width: 380px;
    width: min(380px, 100vw) !important;
  }

  body.home .corelie-products .corelie-product-card,
  body.post-type-archive-product.woocommerce ul.products[class*="columns-"] li.product {
    min-width: 0;
    width: 100% !important;
  }

  body.home .corelie-product-card__media,
  body.home .corelie-product-card__media > a,
  body.home .corelie-product-card__media img,
  body.post-type-archive-product.woocommerce ul.products li.product figure,
  body.post-type-archive-product.woocommerce ul.products li.product figure > .ct-media-container,
  body.post-type-archive-product.woocommerce ul.products li.product figure img {
    aspect-ratio: 1 / 1;
    height: auto !important;
    max-width: 100%;
    width: 100% !important;
  }

  body.home .corelie-brand-promos,
  body.home .corelie-video-section,
  body.home .corelie-category-entrances,
  body.home .corelie-hotspot-section,
  body.home .corelie-stay-connected,
  body.home .corelie-stay-connected > .e-con-inner,
  body.home .corelie-stay-copy {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
  }

  body.home .corelie-brand-promos .corelie-brand-grid,
  body.home .corelie-video-section > .e-con-inner,
  body.home .corelie-category-entrances > .e-con-inner,
  body.home .corelie-hotspot-section > .e-con-inner,
  body.home .corelie-stay-connected > .e-con-inner {
    box-sizing: border-box;
    max-width: 100% !important;
  }

  body.home .corelie-brand-promos .corelie-brand-grid,
  body.home .corelie-video-section > .e-con-inner,
  body.home .corelie-stay-connected > .e-con-inner {
    width: min(358px, calc(100vw - 32px)) !important;
  }

  body.home .corelie-category-entrances > .e-con-inner {
    width: min(350px, calc(100vw - 40px)) !important;
  }

  body.home .corelie-hotspot-section > .e-con-inner {
    aspect-ratio: 370 / 164;
    width: min(370px, calc(100vw - 20px)) !important;
  }

  body.home .corelie-brand-promos .corelie-brand-card,
  body.home .corelie-category-entrances .corelie-brand-card {
    height: auto !important;
    min-height: 0;
    width: 100% !important;
  }

  body.home .corelie-brand-promos .corelie-brand-card img,
  body.home .corelie-category-entrances .corelie-brand-card img {
    aspect-ratio: 1 / 1;
    height: auto !important;
    width: 100% !important;
  }

  body.home .corelie-brand-banner > .corelie-hero-copy {
    max-width: calc(100vw - 32px);
    width: min(342px, calc(100vw - 32px)) !important;
  }

  body.home .corelie-brand-banner > .corelie-hero-copy > .e-con-inner {
    max-width: 100% !important;
    width: 100% !important;
  }

  body.home .corelie-video-section .elementor-widget-video,
  body.home .corelie-video-section .elementor-wrapper,
  body.home .corelie-video-section video,
  body.home .corelie-hotspot,
  body.home .corelie-hotspot > img,
  body.home .corelie-stay-connected > .e-con-inner > .elementor-widget-image,
  body.home .corelie-stay-connected > .e-con-inner > .elementor-widget-image img {
    height: auto !important;
    max-width: 100%;
    width: 100% !important;
  }

  body.home .corelie-video-section .elementor-wrapper {
    aspect-ratio: 16 / 9;
  }

  body.home .corelie-hotspot,
  body.home .corelie-hotspot > img,
  body.home .corelie-stay-connected > .e-con-inner > .elementor-widget-image,
  body.home .corelie-stay-connected > .e-con-inner > .elementor-widget-image img {
    aspect-ratio: 370 / 164;
    object-fit: cover;
  }

  body.home .corelie-service-benefits {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    touch-action: pan-x;
  }

  body.home .corelie-service-benefits > .elementor-widget {
    scroll-snap-align: start;
  }

  body.corelie-page-customer-care-center main,
  body.corelie-page-customer-care-center .corelie-content-section,
  body.corelie-page-customer-care-center .corelie-content-section > .e-con-inner,
  body.corelie-page-customer-care-center .corelie-content-section:first-child .elementor-widget-text-editor,
  body.corelie-page-customer-care-center .corelie-content-section + .corelie-content-section {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
  }

  body.corelie-page-customer-care-center .corelie-content-section:first-child .elementor-widget-text-editor,
  body.corelie-page-customer-care-center .corelie-content-section + .corelie-content-section {
    flex-basis: auto !important;
  }

  body.single-product .product-entry-wrapper,
  body.single-product .entry-summary {
    box-sizing: border-box;
    height: auto !important;
    max-width: 390px;
    width: min(390px, 100vw) !important;
  }

  body.single-product .woocommerce-product-gallery {
    box-sizing: border-box;
    height: calc(min(360px, calc(100vw - 30px)) + 85.4px) !important;
    max-width: 390px;
    width: min(390px, 100vw) !important;
  }

  body.single-product .woocommerce-product-gallery .flexy-view,
  body.single-product .woocommerce-product-gallery .flexy-items,
  body.single-product .woocommerce-product-gallery .flexy-item,
  body.single-product .woocommerce-product-gallery .flexy-item > .ct-media-container {
    aspect-ratio: 1 / 1;
    height: auto !important;
    max-width: 360px;
    width: min(360px, calc(100vw - 30px)) !important;
  }

  body.single-product .woocommerce-product-gallery .flexy-pills {
    max-width: 380px;
    width: min(380px, calc(100vw - 10px)) !important;
  }

  body.single-product .woocommerce-product-gallery .flexy-pills li {
    flex-basis: min(95px, calc((100vw - 10px) / 4)) !important;
    min-width: 0;
    width: min(95px, calc((100vw - 10px) / 4)) !important;
  }

  body.single-product .woocommerce-product-gallery .flexy-pills img {
    aspect-ratio: 75.4 / 50.8 !important;
    height: auto !important;
    max-width: 100%;
    width: 100% !important;
  }

  body.single-product .woocommerce-tabs,
  body.single-product .related.products {
    box-sizing: border-box;
    max-width: 360px;
    width: min(360px, calc(100vw - 30px)) !important;
  }

  body.single-product .related.products ul.products[class*="columns-"] {
    box-sizing: border-box;
    max-width: 380px;
    width: calc(100% + 20px) !important;
  }

  body.single-product .related.products ul.products[class*="columns-"] li.product {
    min-width: 0;
    width: 50% !important;
  }

  body.single-product .related.products ul.products li.product figure,
  body.single-product .related.products ul.products li.product figure > .ct-media-container,
  body.single-product .related.products ul.products li.product figure img {
    aspect-ratio: 1 / 1;
    height: auto !important;
    max-width: 100%;
    width: 100% !important;
  }
}

/* Defensive fallback for custom product-meta markup outside WooCommerce's
 * standard template; the SKU remains available in the dashboard and data. */
body.single-product .product_meta .sku_wrapper,
.corelie-quick-view__meta .sku_wrapper {
  display: none !important;
}

@media (max-width: 389px) {
  body.home .corelie-recommended-products,
  body.home .corelie-recommended-products > .e-con-inner {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
  }

  body.home .corelie-recommended-products > .e-con-inner {
    flex: 0 0 auto;
  }
}

/* Widths at and above the 390px visual baseline already fit without clipping;
 * preserve their measured vertical rhythm exactly. */
@media (min-width: 390px) and (max-width: 689px) {
  body.home .corelie-brand-promos {
    height: 1895.3px !important;
    max-height: 1895.3px !important;
    min-height: 1895.3px !important;
  }

  body.home .corelie-stay-connected,
  body.home .corelie-stay-connected > .e-con-inner {
    height: 599.7px !important;
    max-height: 599.7px !important;
    min-height: 599.7px !important;
  }
}

@media (min-width: 375px) and (max-width: 689px) {
  body.corelie-page-customer-care-center main {
    height: 287.1px !important;
    min-height: 287.1px !important;
  }

  body.corelie-page-customer-care-center .corelie-content-section:first-child .elementor-widget-text-editor {
    flex: 0 0 51.2px !important;
    height: 51.2px !important;
  }

  body.corelie-page-customer-care-center .corelie-content-section + .corelie-content-section {
    flex: 0 0 113.2px !important;
    height: 113.2px !important;
    max-height: 113.2px !important;
  }
}

/* Source phones wider than the 390px baseline use the complete viewport.
 * Keep 390px and compact-phone geometry unchanged while removing the
 * left-aligned 390px constraint on 391–689px product pages. */
@media (min-width: 391px) and (max-width: 689px) {
  body.single-product .product-entry-wrapper,
  body.single-product .entry-summary {
    max-width: none;
    width: 100vw !important;
  }

  body.single-product .woocommerce-product-gallery {
    height: calc(116.8435vw - 10.29px) !important;
    max-width: none;
    width: 100vw !important;
  }

  body.single-product .woocommerce-product-gallery .flexy-view,
  body.single-product .woocommerce-product-gallery .flexy-items,
  body.single-product .woocommerce-product-gallery .flexy-item,
  body.single-product .woocommerce-product-gallery .flexy-item > .ct-media-container,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container > figure,
  body.single-product .woocommerce-product-gallery .flexy-item img,
  body.single-product .woocommerce-product-gallery .ct-product-gallery-container > figure > img {
    height: calc(100vw - 30px) !important;
    max-width: none;
    width: calc(100vw - 30px) !important;
  }

  body.single-product .woocommerce-product-gallery .flexy-pills {
    height: calc(16.8435vw + 4.71px) !important;
    max-width: none;
    width: calc(100vw - 10px) !important;
  }

  body.single-product .woocommerce-product-gallery .flexy-pills li {
    flex-basis: calc((100vw - 10px) / 4) !important;
    height: calc(16.8435vw + 4.71px) !important;
    width: calc((100vw - 10px) / 4) !important;
  }

  body.single-product .woocommerce-tabs,
  body.single-product .related.products {
    max-width: none;
    width: calc(100vw - 30px) !important;
  }
}

/* The source changes the purchase row at 411px: all three controls fit on
 * one line from this exact width onward. */
@media (min-width: 411px) and (max-width: 689px) {
  body.single-product form.cart .ct-cart-actions {
    grid-template-columns: 80px 150.94px 117.2px;
    grid-template-rows: 40.11px;
    height: 40.11px;
  }

  body.single-product form.cart .corelie-buy-now {
    grid-column: 3;
    grid-row: 1;
  }
}

/* 1.0.211 mobile storefront corrections. Touch devices never expose the
 * desktop Quick View overlay, whose sticky hover state can obscure an image. */
@media (max-width: 689px) {
  body.woocommerce.archive .corelie-loop-quick-view {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: none !important;
    visibility: hidden !important;
  }

  body.single-product .related.products ul.products[class*="columns-"] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.single-product .related.products ul.products[class*="columns-"] li.product {
    width: 100% !important;
  }
}

/* Match the reference site's edge-to-edge two-column catalog and related
 * product geometry on phones wider than the original 390px baseline. */
@media (min-width: 391px) and (max-width: 689px) {
  body.woocommerce.archive ul.products[class*="columns-"] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    max-width: none !important;
    width: calc(100vw - 10px) !important;
  }

  body.woocommerce.archive ul.products[class*="columns-"] li.product {
    width: 100% !important;
  }

  body.single-product .related.products ul.products[class*="columns-"] {
    max-width: none !important;
    width: calc(100% + 20px) !important;
  }
}

/* Keep the 350px footer column readable while aligning it closer to the
 * left edge on common 390–689px phones. */
@media (min-width: 390px) and (max-width: 689px) {
  #footer [data-row="middle"] > .ct-container,
  #footer [data-row="bottom"] > .ct-container {
    margin-left: 20px !important;
    margin-right: auto !important;
  }
}

/* 1.0.212 mobile footer: use natural content height so contact details never
 * spill through the row divider, and tighten the oversized phone gutters. */
@media (max-width: 689px) {
  #footer [data-row="middle"] {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    padding: 40px 0 24px !important;
  }

  #footer [data-row="middle"] > .ct-container,
  #footer [data-row="bottom"] > .ct-container {
    height: auto !important;
    margin: 0 15px !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: calc(100vw - 30px) !important;
  }

  #footer [data-row="middle"] [data-column] {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 12px !important;
  }

  #footer [data-row="middle"] [data-column="widget-area-4"] {
    margin-bottom: 0 !important;
  }

  #footer [data-row="middle"] [data-column="widget-area-4"] .widget-title {
    margin-bottom: 8px !important;
  }

  #footer [data-row="middle"] [data-column="widget-area-4"] .corelie-footer-social-icons {
    height: 34px !important;
    margin-bottom: 8px !important;
  }

  #footer [data-row="middle"] [data-column="widget-area-4"] .textwidget .corelie-footer-country {
    margin-top: 8px !important;
  }

  #footer [data-row="middle"] [data-column="widget-area-4"] .textwidget .corelie-footer-company {
    margin-top: 4px !important;
  }

  #footer [data-row="bottom"] {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    padding: 20px 0 32px !important;
  }
}

/* 1.0.213 mobile section rhythm: remove the duplicated ~32–40px whitespace
 * around product headings and let affected sections follow their content. */
@media (max-width: 689px) {
  body.home .corelie-product-grid__heading {
    margin-bottom: 16px !important;
  }

  body.home .corelie-recommended-products,
  body.home .corelie-new-collections,
  body.home .corelie-featured-products {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
  }

  body.home .corelie-recommended-products,
  body.home .corelie-new-collections {
    padding-bottom: 16px !important;
    padding-top: 16px !important;
  }

  body.home .corelie-featured-products {
    padding-bottom: 16px !important;
  }

  body.home .corelie-brand-promos {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
  }
}

/* 1.0.214 mobile homepage product gutters: the original 380px cap leaves
 * pronounced side gaps on 412–440px phones. Match the source storefront's
 * five-pixel outer gutter while preserving the established <=390px layout. */
@media (min-width: 391px) and (max-width: 689px) {
  body.home .elementor-widget-corelie-product-grid .corelie-products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: none !important;
    width: calc(100vw - 10px) !important;
  }

  body.home .elementor-widget-corelie-product-grid .corelie-product-card {
    min-width: 0;
    width: 100% !important;
  }
}

/* 1.0.215 mobile brand/category gutters: replace the fixed 326/350/358px
 * widths with the source site's responsive 16px and 20px outer gutters. */
@media (max-width: 689px) {
  body.home .elementor-element-bbcf89df .elementor-widget-heading,
  body.home .elementor-element-bbcf89df .elementor-widget-heading h2 {
    box-sizing: border-box;
    max-width: none !important;
    width: calc(100vw - 64px) !important;
  }

  body.home .elementor-element-bbcf89df .corelie-brand-grid {
    box-sizing: border-box;
    max-width: none !important;
    width: calc(100vw - 32px) !important;
  }

  body.home .elementor-element-827424d3 > .e-con-inner,
  body.home .elementor-element-827424d3 .corelie-brand-grid {
    box-sizing: border-box;
    max-width: none !important;
    width: calc(100vw - 40px) !important;
  }
}

/* 1.0.216 responsive commerce fixes. At exactly 1024px Blocksy starts its
 * desktop product flex layout while this storefront still uses the tablet
 * gallery. Force a single flow so the purchase summary cannot sit off-canvas. */
@media (min-width: 690px) and (max-width: 1024px) {
  body.single-product .product-entry-wrapper {
    display: block !important;
  }

  body.single-product .entry-summary {
    margin: 0 !important;
    max-width: none !important;
    width: 100vw !important;
  }

  /* Keep checkout editing and purchasing usable on tablets. The desktop
   * version intentionally positions the order card absolutely; tablets stack
   * the same native WooCommerce components in document flow. */
  body.woocommerce-checkout:not(.woocommerce-order-received) #main,
  body.woocommerce-checkout:not(.woocommerce-order-received) #main > .elementor,
  body.woocommerce-checkout:not(.woocommerce-order-received) .corelie-woocommerce-shell {
    height: auto !important;
    min-height: 0 !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #main {
    flex: 0 0 auto !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout {
    max-width: none !important;
    width: calc(100% - 30px) !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout {
    min-height: 0 !important;
    position: static !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout > .ct-customer-details,
  body.woocommerce-checkout:not(.woocommerce-order-received) #customer_details {
    height: auto !important;
    width: 100% !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout > .ct-order-review {
    border: 2px solid #000 !important;
    height: auto !important;
    left: auto !important;
    margin: 40px 0 50px !important;
    padding: 30px 32px !important;
    pointer-events: auto;
    position: relative !important;
    top: auto !important;
    width: 100% !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout > .ct-order-review::before {
    content: none !important;
    display: none !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review_heading,
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review,
  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout > .ct-order-review > .woocommerce-privacy-policy-text {
    height: auto !important;
    left: auto !important;
    position: static !important;
    right: auto !important;
    top: auto !important;
    width: 100% !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review_heading {
    margin: 0 0 8px !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review {
    padding: 0 !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout > .ct-order-review > .woocommerce-privacy-policy-text {
    margin: 18px 0 0 !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review thead .product-name,
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tbody .product-name,
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tfoot th,
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review thead .product-total,
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tbody .product-total,
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tfoot td:not(:only-child) {
    width: auto !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tr.woocommerce-shipping-totals,
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tr.woocommerce-shipping-totals > td {
    height: auto !important;
    min-height: 0 !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tr.woocommerce-shipping-totals > td {
    display: grid !important;
    gap: 8px 16px;
    grid-template-columns: minmax(110px, 25%) minmax(0, 1fr);
    padding: 10px 0 !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tr.woocommerce-shipping-totals .ct-shipping-heading,
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tr.woocommerce-shipping-totals .woocommerce-shipping-methods,
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tr.woocommerce-shipping-totals .corelie-shipping-notice {
    height: auto !important;
    left: auto !important;
    margin: 0 !important;
    min-height: 0 !important;
    position: static !important;
    top: auto !important;
    width: auto !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tr.woocommerce-shipping-totals .ct-shipping-heading {
    grid-column: 1;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tr.woocommerce-shipping-totals .woocommerce-shipping-methods,
  body.woocommerce-checkout:not(.woocommerce-order-received) #order_review tr.woocommerce-shipping-totals .corelie-shipping-notice {
    grid-column: 2;
  }
}

@media (max-width: 689px) {
  /* The mobile cart quantity group was offset by almost a full viewport from
   * its own table cell. Keep all three controls inside the visible Quantity
   * column so the cart can be edited without rotating the device. */
  body.woocommerce-cart:not(:has(.wc-empty-cart-message)) .corelie-cart-quantity {
    left: auto !important;
    position: relative;
  }

  /* Carousel arrows belong to the image row. Limiting their hit layer keeps
   * the left arrow from sitting over long product titles and prices. */
  body.single-product .corelie-related-carousel__previous,
  body.single-product .corelie-related-carousel__next {
    height: calc((100vw - 49.2px) / 2) !important;
    max-height: none;
  }

  body.single-product .corelie-related-carousel__previous { left: 0; }
  body.single-product .corelie-related-carousel__next { right: 0; }
}

/* Order confirmation contains no checkout form, so it must not inherit the
 * checkout page's fixed desktop canvas height. */
body.woocommerce-order-received #main,
body.woocommerce-order-received #main > .elementor,
body.woocommerce-order-received .corelie-woocommerce-shell,
body.woocommerce-order-received .corelie-woocommerce-shell > .e-con-inner {
  height: auto !important;
  min-height: 0 !important;
}

body.woocommerce-order-received #main {
  flex: 0 0 auto !important;
}

body.woocommerce-order-received .corelie-woocommerce-shell {
  padding-bottom: 50px !important;
  padding-top: 40px !important;
}

/* Structured Elementor policy pages keep every section individually editable
 * while removing the source page's empty-div spacers and illegible text wall. */
body.corelie-page-shipping-information .corelie-content-section,
body.corelie-page-return-policy .corelie-content-section,
body.corelie-page-warranties-safety-and-usage .corelie-content-section {
  padding-bottom: 36px !important;
}

body.corelie-page-shipping-information .corelie-policy-title,
body.corelie-page-return-policy .corelie-policy-title,
body.corelie-page-warranties-safety-and-usage .corelie-policy-title {
  padding-top: 54px !important;
}

.corelie-policy-section h2 {
  color: #555;
  font-size: 20px;
  line-height: 1.3;
  margin: 0 0 12px;
}

.corelie-policy-section h3 {
  color: #555;
  font-size: 17px;
  line-height: 1.35;
  margin: 28px 0 10px;
}

.corelie-policy-section p,
.corelie-policy-section li,
.corelie-policy-section address {
  color: #4a4a4a;
  line-height: 1.65;
}

.corelie-policy-section ul,
.corelie-policy-section ol {
  margin: 0 0 20px 22px;
}

.corelie-policy-section address {
  font-style: normal;
}

.corelie-policy-table {
  border-collapse: collapse;
  margin: 24px 0 0;
  table-layout: fixed;
  width: 100%;
}

.corelie-policy-table th,
.corelie-policy-table td {
  border: 1px solid #d8dde1;
  padding: 12px 10px;
  text-align: left;
  vertical-align: top;
}

.corelie-policy-table thead th {
  background: #f3f5f6;
  color: #26333c;
  font-size: 13px;
}

.corelie-promotional-page .elementor-button {
  background: #000;
  border: 1px solid #000;
  border-radius: 0;
  color: #fff;
  font-weight: 700;
  padding: 13px 24px;
  text-transform: uppercase;
}

.corelie-promotional-page .elementor-button:hover,
.corelie-promotional-page .elementor-button:focus-visible {
  background: #fff;
  color: #000;
}

@media (max-width: 689px) {
  body.corelie-page-shipping-information .corelie-policy-title,
  body.corelie-page-return-policy .corelie-policy-title,
  body.corelie-page-warranties-safety-and-usage .corelie-policy-title {
    padding-top: 30px !important;
  }

  body.corelie-page-shipping-information .corelie-content-section,
  body.corelie-page-return-policy .corelie-content-section,
  body.corelie-page-warranties-safety-and-usage .corelie-content-section {
    padding-bottom: 26px !important;
  }

  .corelie-policy-table,
  .corelie-policy-table tbody,
  .corelie-policy-table tr,
  .corelie-policy-table th,
  .corelie-policy-table td {
    display: block;
    width: 100%;
  }

  .corelie-policy-table thead {
    display: none;
  }

  .corelie-policy-table tr {
    border: 1px solid #d8dde1;
    margin-bottom: 16px;
  }

  .corelie-policy-table th,
  .corelie-policy-table td {
    border: 0;
    border-bottom: 1px solid #e7eaec;
    box-sizing: border-box;
  }

  .corelie-policy-table tr > :last-child {
    border-bottom: 0;
  }

  .corelie-policy-table tbody th {
    background: #f3f5f6;
  }

  .corelie-policy-table td {
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(118px, 44%) minmax(0, 1fr);
  }

  .corelie-policy-table td::before {
    color: #26333c;
    content: attr(data-label);
    font-weight: 700;
  }
}

/* Mobile containment for the editable social statistics and newsletter widgets.
 * Keep every item visible without fixed-width tracks extending past the screen. */
@media (max-width: 689px) {
  body.home .elementor-element-637c0510.corelie-social-row {
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
  }

  body.home .elementor-element-a8b26f36 .corelie-social-stats {
    box-sizing: border-box;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(var(--corelie-cols-mobile, 2), minmax(0, 1fr));
    height: auto;
    overflow: visible;
    padding: 8px;
    width: 100%;
  }

  body.home .elementor-element-a8b26f36 .corelie-social-stat {
    box-sizing: border-box;
    flex: 0 1 auto;
    font-size: 13px;
    gap: 6px;
    height: 44px;
    justify-content: flex-start;
    line-height: 1.3;
    min-height: 44px;
    min-width: 0;
    padding: 0;
    width: 100%;
  }

  body.home .elementor-element-a8b26f36 .corelie-social-stat img,
  body.home .elementor-element-a8b26f36 .corelie-social-stat:last-child img {
    flex: 0 0 28px;
    height: 28px;
    object-fit: contain;
    width: 28px;
  }

  body.home .elementor-element-a8b26f36 .corelie-social-stat span {
    min-width: 0;
    white-space: nowrap;
  }

  body.home .elementor-element-7825dc2d.corelie-newsletter-section {
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
  }

  body.home .elementor-element-832a70d3 .corelie-newsletter {
    height: auto;
    max-width: 100%;
    overflow: visible;
    padding: 32px 16px 36px;
    width: 100%;
  }

  body.home .elementor-element-832a70d3 .corelie-newsletter__description {
    height: auto;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 358px;
    width: 100%;
  }

  body.home .elementor-element-832a70d3 .corelie-newsletter__scroller {
    height: auto;
    margin: 28px 0 22px;
    overflow: visible;
    padding: 0;
    width: 100%;
  }

  body.home .elementor-element-832a70d3 .corelie-newsletter__form {
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
    height: auto;
    margin: 0;
    padding: 0;
    width: 100%;
  }

  body.home .elementor-element-832a70d3 .corelie-newsletter__form select,
  body.home .elementor-element-832a70d3 .corelie-newsletter__form input[name="phone"],
  body.home .elementor-element-832a70d3 .corelie-newsletter__form input[name="email"] {
    grid-column: 1;
    height: 44px;
    margin: 0;
    min-height: 44px;
    width: 100%;
  }

  body.home .elementor-element-832a70d3 .corelie-newsletter__form button {
    grid-column: 1;
    height: 47px;
    justify-self: center;
    min-height: 47px;
    width: 173.563px;
  }

  body.home .elementor-element-832a70d3 .corelie-newsletter__consent {
    height: auto;
    margin: 24px auto 0 !important;
    max-width: 358px;
    padding: 0;
    width: 100%;
  }

  body.home .elementor-element-832a70d3 .corelie-newsletter__back {
    margin-top: 24px;
  }
}

@media (max-width: 359px) {
  body.home .elementor-element-a8b26f36 .corelie-social-stats {
    gap: 6px 4px;
    padding-inline: 4px;
  }

  body.home .elementor-element-a8b26f36 .corelie-social-stat {
    font-size: 12px;
    gap: 5px;
  }

  body.home .elementor-element-a8b26f36 .corelie-social-stat img,
  body.home .elementor-element-a8b26f36 .corelie-social-stat:last-child img {
    flex-basis: 26px;
    height: 26px;
    width: 26px;
  }
}

/* 1.0.221 mobile product cards: hide sticky Quick View / hover swap.
 * 1.0.211 only covered WooCommerce archives; homepage cards still used
 * :hover and :focus-within, which stick after a tap and cover the photo. */
@media (max-width: 689px) {
  .corelie-product-card__quick-view,
  .corelie-loop-quick-view {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: none !important;
    visibility: hidden !important;
  }

  .corelie-product-card:hover .corelie-product-card__image--secondary,
  .corelie-product-card:focus-within .corelie-product-card__image--secondary {
    opacity: 0 !important;
  }
}

/* 1.0.222 checkout: tighten side gutters and let a taller card form grow. */
@media (max-width: 689px) {
  .corelie-checkout-steps__inner,
  body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout form.checkout,
  body.woocommerce-checkout form.checkout > .ct-customer-details {
    max-width: none !important;
    width: calc(100vw - 16px) !important;
  }

  body.woocommerce-checkout form.checkout > .ct-order-review::before {
    width: 100% !important;
  }

  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout form.checkout > .ct-order-review > .woocommerce-privacy-policy-text {
    left: 12px !important;
    right: auto !important;
    width: calc(100% - 24px) !important;
  }
}

@media (min-width: 690px) and (max-width: 1024px) {
  body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout {
    width: calc(100% - 16px) !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout > .ct-order-review {
    padding: 20px 12px !important;
  }
}

body.woocommerce-checkout #payment .payment_box,
body.woocommerce-checkout #payment .payment_box iframe,
body.woocommerce-checkout #payment .wc-credit-card-form,
#payment-iframe-container iframe,
#payment-gateway-iframe {
  box-sizing: border-box;
  max-width: 100% !important;
}

#payment-iframe-container iframe,
#payment-gateway-iframe {
  width: 100% !important;
}

body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #main,
body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #main > .elementor,
body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) .corelie-woocommerce-shell {
  height: auto !important;
  min-height: 0 !important;
}

body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #main {
  flex: 0 0 auto !important;
}

body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) form.checkout,
body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) form.checkout > .ct-order-review,
body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #order_review,
body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #payment {
  height: auto !important;
  min-height: 0 !important;
}

body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) form.checkout > .ct-order-review::before {
  bottom: 0;
  height: auto !important;
  top: .03px;
}

body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #payment .place-order,
body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #place_order {
  height: auto !important;
  margin-top: 16px !important;
  position: static !important;
  top: auto !important;
}

@media (max-width: 689px) {
  body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) form.checkout > .ct-order-review {
    border: 2px solid #000 !important;
    box-sizing: border-box;
    margin: 16px 0 40px !important;
    padding: 16px 12px 20px !important;
    pointer-events: auto;
    position: relative !important;
    top: auto !important;
    width: 100% !important;
  }

  body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) form.checkout > .ct-order-review::before {
    content: none !important;
    display: none !important;
  }

  body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #order_review_heading,
  body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #order_review,
  body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) form.checkout > .ct-order-review > .woocommerce-privacy-policy-text {
    left: auto !important;
    margin: 0 !important;
    position: static !important;
    top: auto !important;
    width: 100% !important;
  }

  body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #order_review_heading {
    margin-bottom: 8px !important;
  }

  body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) form.checkout > .ct-order-review > .woocommerce-privacy-policy-text {
    margin-top: 12px !important;
  }

  body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #payment,
  body.woocommerce-checkout:has(.payment_method_woocommerce_payments_stripe_gateway) #payment .payment_box {
    overflow: visible;
    width: 100% !important;
  }
}
