/*
Theme Name: Kraftiart Child
Theme URI: https://cornerstonedoorworks.com
Description: Child theme of Kraftiart for Cornerstone Doorworks. Holds recovered Customizer CSS + the redesign design system, so the parent Kraftiart theme can update safely. Business logic lives in the Cornerstone Core plugin.
Author: Cornerstone Doorworks
Template: kraftiart
Version: 1.16.6
*/

/* ==========================================================================
   SECTION A — RECOVERED ADDITIONAL CSS
   Migrated verbatim from Appearance > Customize > Additional CSS (parent theme).
   Keep these: functional layout, iOS product-grid, swatch tooltips, dimension UI.
   ========================================================================== */
.logo {padding-top:30px;}
.single-product .entry-summary .product_title {
    font-size: 3em;
    float: left;
    width: auto;
    margin: 0 0 10px;
    font-weight: 500;
}
.list-description, .list-timer {
    float: left;
    width: 100%;
    display: none;
}
.email-popup-inner-con .email-popup-img-con .newsletter { padding: 0; padding-left: 25%; }
.hover-img { display:none; }
/* Category image */
.cat_desc .cat_image {
    position: relative;
    border-radius: 50%;
    margin: 0 0 10px 0;
    width: 70%;
}
/* Fix ul block */
ul {
    margin-left: 0;
    padding-left: 30px;
    line-height: 2;
}
/* Sticky areas should not clip tooltips */
.sticky-addToCart,
.stickycart-popup,
.stickycart-wrap,
.sticky-addToCart .container {
    overflow: visible !important;
    position: relative !important;
    z-index: 1;
}
.sticky-addToCart.sticky { display: none; }
/* Price styles */
.woocommerce-price-label, .starting-label {
    font-weight: normal;
    color: #999;
    margin-right: 4px;
    display: inline-block;
}
.product .price span:first-child { display: flex; flex-direction: row!important; margin-left:5px; }
.product .price {
    float: left;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    -webkit-transition: all 0.5s ease-in-out 0s;
    -moz-transition: all 0.5s ease-in-out 0s;
    -ms-transition: all 0.5s ease-in-out 0s;
    -o-transition: all 0.5s ease-in-out 0s;
    transition: all 0.5s ease-in-out 0s;
    font-weight: 300;
    color: var(--price-color);
    font-size: 16px;
    line-height: 20px;
}
/* Selects */
select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    list-style: none;
    box-sizing: border-box;
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    color: var(--body-text-color);
    border: 1px solid var(--border-color);
    padding: 10px 15px;
    width: 100%;
    border-radius: 0px;
}
/* Forms and custom dimension UI */
.glass-type { margin-top:15px; }
.select-wrap { position: relative; display: inline-block; width: 100%; }
.select-wrap select {
  width: 100%;
  padding-right: 2em;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #fff;
  background-image: none;
}
.select-wrap::after {
  content: '▼';
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: #333;
  font-size: 0.7em;
}
label[for="glass_type"] { margin-top: 15px; display: inline-block; }
.sku_wrapper { display:none; }
.glass-anchor { margin-left:20%; margin-right:20%; }
.custom-dimensions-wrapper label {
  font-size: 1.1rem;
  font-weight: 600;
  color: #222;
  display: block;
  margin-bottom: 2px;
}
.custom-dimensions-wrapper small {
  font-style: italic;
  font-size: 0.85rem;
  color: #666;
  margin-bottom: 8px;
  display: block;
}
.dimension-group {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
  align-items: flex-end;
}
.select-wrap select {
  padding: 6px 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 0.95rem;
  min-width: 80px;
  background-color: #f9f9f9;
}
.custom-dimensions-wrapper p { margin-bottom: 12px; }
#price_preview { font-size: 1.1rem; font-weight: bold; color: #007c32; }
.custom-dimensions-wrapper .dimension-group {
  border: 1px solid #ddd;
  border-radius: 8px;
  background: #fafafa;
  padding: 16px;
  margin-bottom: 20px;
  display: flex;
  gap: 10px;
  align-items: flex-end;
  flex-wrap: wrap;
}
.custom-dimensions-wrapper label { font-size: 1.2rem; font-weight: 700; color: #222; margin-bottom: 4px; display: block; }
.custom-dimensions-wrapper small { font-style: italic; font-size: 0.85rem; color: #666; margin-bottom: 8px; display: block; }
.custom-dimensions-wrapper label:nth-of-type(1),
.custom-dimensions-wrapper small:nth-of-type(1) { margin-left: 4px; margin-top: 8px; }
.custom-dimensions-wrapper label:nth-of-type(2),
.custom-dimensions-wrapper small:nth-of-type(2) { margin-left: 4px; margin-top: 8px; }
.custom-dimensions-wrapper label + .dimension-group { margin-top: 8px; }
.emoji { max-width:30px; }
/* SWATCH TOOLTIP (MWB): ABOVE SWATCH, NO ANIMATION */
label.mwb_swatch-vm-attr-label.mwb_swatch-vm-attr-label-tooltip {
  position: relative !important;
  overflow: visible !important;
  z-index: 1 !important;
}
label.mwb_swatch-vm-attr-label.mwb_swatch-vm-attr-label-tooltip > span.vm_label_s {
  position: absolute !important;
  left: 50% !important;
  top: 0 !important;
  transform: translate(-50%, calc(-100% - 8px)) !important;
  margin: 0 !important;
  animation: none !important;
  transition: none !important;
  opacity: 1 !important;
  pointer-events: none !important;
  z-index: 2147483647 !important;
}
.mwb_swatch-vm-attr-name-label,
.mwb_swatch-vm-attr-name-label ul,
.mwb_swatch-vm-attr-name-label li,
.variations_form .value,
.summary.entry-summary { overflow: visible !important; }
.mwb_swatch-vm-attr-label-tooltip .vm_label_s.animated,
.mwb_swatch-vm-attr-label-tooltip .vm_label_s.fadeIn,
.mwb_swatch-vm-attr-label-tooltip .vm_label_s.fadeInDown,
.mwb_swatch-vm-attr-label-tooltip .vm_label_s.slideInDown,
.mwb_swatch-vm-attr-label-tooltip .vm_label_s.zoomIn {
  transform: translate(-50%, calc(-100% - 8px)) !important;
  animation: none !important;
  transition: none !important;
  opacity: 1 !important;
}
.sticky-addToCart { display:none; }
.elementor-custom-embed-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: none;
}
/* iOS Safari fixes for Woo product archive/category cards */
@supports (-webkit-touch-callout: none) {
  .woocommerce ul.products li.product,
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .woocommerce ul.products li.product .price { text-align: center !important; }
  .woocommerce ul.products li.product a img {
    display: block; width: 100% !important; height: auto !important;
    aspect-ratio: 1 / 1; object-fit: cover;
    -webkit-mask-image: -webkit-radial-gradient(white, black);
  }
  .woocommerce ul.products li.product .button { left: 50%; transform: translateX(-50%); }
  .woocommerce ul.products { align-items: stretch; }
}
@supports (-webkit-touch-callout: none) {
  @media (max-width: 767px) {
    .woocommerce ul.products {
      display: grid !important;
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 12px !important; justify-content: center !important; padding: 0 8px;
    }
    .woocommerce ul.products li.product {
      margin: 0 !important; width: auto !important;
      display: flex; flex-direction: column; text-align: center;
    }
    .woocommerce ul.products li.product a img { display: block; width: 100% !important; height: auto !important; }
    .woocommerce ul.products li.product a { position: relative; display: block; }
    .woocommerce ul.products li.product a::before { content: ""; display: block; padding-top: 125%; }
    .woocommerce ul.products li.product a > img {
      position: absolute; inset: 0; width: 100% !important; height: 100% !important;
      object-fit: cover; -webkit-transform: translateZ(0); -webkit-backface-visibility: hidden;
    }
    .woocommerce ul.products li.product .woocommerce-loop-product__title {
      margin-top: 0.5rem; display: -webkit-box; -webkit-line-clamp: 2;
      -webkit-box-orient: vertical; overflow: hidden; min-height: 2.6em;
    }
    .woocommerce ul.products li.product .woocommerce-product-details__short-description,
    .woocommerce ul.products li.product .entry-content,
    .woocommerce ul.products li.product .product-excerpt { display: none !important; }
  }
}
.woocommerce ul.products,
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce ul.products li.product { float: none !important; }
.woocommerce ul.products li.product .woocommerce-product-details__short-description {
  display: -webkit-box !important; -webkit-box-orient: vertical;
  -webkit-line-clamp: 3; overflow: hidden; min-height: 3.6em;
}
/* product thumbnail normalization */
.woocommerce ul.products li.product .thumbnail-wrap {
  width: auto !important; height: auto !important; max-width: 100% !important;
  display: block !important; background: transparent !important; overflow: hidden;
}
.woocommerce ul.products li.product .thumbnail-wrap img {
  width: 100% !important; height: auto !important; max-width: 100% !important; object-fit: cover !important;
}
.product .thumbnail-wrap a.thumbnail-img img,
.product .thumbnail-wrap:not(.list-view .thumbnail-wrap, .short-view .thumbnail-wrap, .product .category-morden .thumbnail-wrap) {
  width: 100% !important; height: auto !important; object-fit: cover !important; max-height: 300px;
}
.product .price { transition: none !important; }
.woocommerce ul.products li.product .button { transition: none !important; }
#SR7_1_1 .hermes .sr7-bullet {
    overflow: hidden; border-radius: 50%; width: 16px; height: 16px;
    background-color: rgba(0, 0, 0, 0); box-shadow: inset 0 0 0 2px #ffffff;
    -webkit-transition: background 0.3s ease; transition: background 0.3s ease;
    position: absolute; display: none;
}
.myButton {
	box-shadow: 0px 10px 14px -7px #276873;
	background:linear-gradient(to bottom, #599bb3 5%, #408c99 100%);
	background-color:#599bb3; border-radius:8px; display:inline-block; cursor:pointer;
	color:#ffffff; font-family:Arial; font-size:20px; font-weight:bold!important;
	padding:1px 32px; text-decoration:none; text-shadow:0px 1px 0px #3d768a;
}
.myButton:hover { background:linear-gradient(to bottom, #408c99 5%, #599bb3 100%); background-color:#408c99; }
.myButton:active { position:relative; top:1px; }
.hero-shadow {
  text-shadow: 0 0 1px rgba(0,0,0,1), 0 2px 4px rgba(0,0,0,0.9), 0 6px 12px rgba(0,0,0,0.65), 0 14px 28px rgba(0,0,0,0.45) !important;
}
#comments .comment-list, .comments-area .respond-form { float: left; width: 100%; display: none; }
.clean-btn {
  display: inline-block; min-width: 280px; padding: 12px 28px;
  background: url('https://staging.cornerstonedoorworks.com/wp-content/uploads/2026/03/dark-bg-button.png') center center no-repeat #000000;
  background-size: cover; border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 10px;
  color: #ffffff !important; font-family: 'Outfit', sans-serif; font-size: 16px; font-weight: 400;
  text-decoration: none; text-align: center; box-shadow: rgba(12, 12, 12, 0.25) 3px 3px 4px;
}
.clean-btn:hover { color: #ffffff !important; opacity: 0.9; }
.product .price span:first-child { display: flex; flex-direction: row !important; margin-left: 5px; color: black; }
.product .price .amount bdi, .product .price ins {
    text-decoration: none; font-weight: 700; font-size: 18px;
    font-family: var(--primary-font); line-height: 20px; display: flex; color: black;
}
/* Logo font on non-homepage pages after H1 demotion for SEO */
.logo, .logo a {
    font-family: 'Trirong', serif !important; font-size: 32px !important;
    font-weight: 500 !important; line-height: 1.2 !important; color: inherit; text-decoration: none;
}

/* ==========================================================================
   SECTION B — REDESIGN DESIGN SYSTEM (Phase 1)
   Loaded AFTER recovered CSS so brand tokens win shared selectors.
   Reconciled: does NOT touch .starting-label, .product .price, selects,
   the dimension UI, or the .logo treatment above.
   ========================================================================== */
:root {
  --cdw-bronze:#8c7440; --cdw-bronze-dark:#6f5c33; --cdw-bronze-light:#b18b5e;
  --cdw-ink:#1a1a1a; --cdw-ink-soft:#333333; --cdw-body:#555555;
  --cdw-muted:#888888; --cdw-muted-2:#999999;
  --cdw-white:#ffffff; --cdw-cream:#fafaf7; --cdw-cream-2:#f8f6f0;
  --cdw-sand:#ede9e0; --cdw-sand-2:#e8e4dc; --cdw-line:#e5e1d8;
  --cdw-serif:'Playfair Display', Georgia, 'Times New Roman', serif;
  --cdw-sans:'Segoe UI', -apple-system, BlinkMacSystemFont, Roboto, 'Helvetica Neue', Arial, sans-serif;
  --cdw-radius:4px;
}
body { color: var(--cdw-ink-soft); background-color: var(--cdw-cream); -webkit-font-smoothing: antialiased; }
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,
.elementor-heading-title,.product_title,.entry-title,.page-title,
.woocommerce-loop-product__title {
  font-family: var(--cdw-serif) !important; color: var(--cdw-ink); font-weight: 700; line-height: 1.25;
}
h1,.h1 { font-size: clamp(28px, 4vw, 36px); }
h2,.h2 { font-size: clamp(22px, 3vw, 28px); }
h3,.h3 { font-size: clamp(18px, 2.4vw, 22px); }
a { color: var(--cdw-bronze); }
a:hover, a:focus { color: var(--cdw-bronze-dark); }
.btn, .button, button.button, .wp-element-button,
.woocommerce a.button, .woocommerce button.button,
.single_add_to_cart_button, input[type="submit"] {
  font-weight: 600; letter-spacing: .3px; border-radius: var(--cdw-radius);
  transition: background-color .18s ease, color .18s ease, border-color .18s ease;
}
.btn-primary, .button.alt, .single_add_to_cart_button,
.woocommerce #respond input#submit, .woocommerce button.button.alt, input[type="submit"] {
  background-color: var(--cdw-ink) !important; border-color: var(--cdw-ink) !important; color: #fff !important;
}
.btn-primary:hover, .button.alt:hover, .single_add_to_cart_button:hover,
.woocommerce button.button.alt:hover, input[type="submit"]:hover {
  background-color: var(--cdw-bronze) !important; border-color: var(--cdw-bronze) !important; color: #fff !important;
}
.cdw-btn-accent, .btn-accent { background-color: var(--cdw-bronze) !important; border-color: var(--cdw-bronze) !important; color: #fff !important; }
.cdw-btn-accent:hover, .btn-accent:hover { background-color: var(--cdw-bronze-dark) !important; border-color: var(--cdw-bronze-dark) !important; }
.woocommerce span.onsale, .woocommerce .onsale {
  background-color: var(--cdw-bronze) !important; color: #fff !important; border-radius: var(--cdw-radius);
}
.woocommerce .star-rating span::before, .woocommerce p.stars a::before, .star-rating::before { color: var(--cdw-bronze) !important; }
/* Header */
.header-top, .header-info-text { background-color: var(--cdw-ink); color: #fff; }
.header-top a, .header-info-text a { color: var(--cdw-bronze-light); }
.navbar-woocommerce a, .main-menu a, .navbar-nav a { color: var(--cdw-ink-soft); font-weight: 500; }
.navbar-woocommerce a:hover, .main-menu a:hover, .navbar-nav a:hover { color: var(--cdw-bronze); }
.right-header .feather, .search-icon .feather, .wishlist-wrap .feather, .header-stickybar .feather { stroke: var(--cdw-ink); }
.header-stickybar { background-color: #fff; border-top: 1px solid var(--cdw-line); }
#mini-cart-count { background-color: var(--cdw-bronze); color: #fff; }
/* Footer */
.site-footer, .footer-style-1, footer .footer-main {
  background-color: var(--cdw-cream-2); color: var(--cdw-body); border-top: 1px solid var(--cdw-line);
}
.site-footer .widget-title, .footer-title, footer h2, footer h3, footer h4 {
  font-family: var(--cdw-serif) !important; color: var(--cdw-ink) !important;
}
.site-footer a, footer a { color: var(--cdw-body); }
.site-footer a:hover, footer a:hover { color: var(--cdw-bronze); }
.footer-bottom, .site-info { background-color: var(--cdw-ink); color: rgba(255,255,255,.75); }
.footer-bottom a, .site-info a { color: var(--cdw-bronze-light); }
/* Text inputs (selects intentionally left to Section A) */
input[type="text"], input[type="email"], input[type="search"], input[type="number"], input[type="tel"] {
  border: 1px solid var(--cdw-line); border-radius: var(--cdw-radius); color: var(--cdw-ink-soft);
}
input[type="text"]:focus, input[type="email"]:focus, input[type="search"]:focus,
input[type="number"]:focus, input[type="tel"]:focus {
  border-color: var(--cdw-bronze); outline: none; box-shadow: 0 0 0 2px rgba(140,116,64,.15);
}
@media (max-width: 575px) {
  .header-top, .header-info-text { font-size: 12px; text-align: center; }
}

/* ==========================================================================
   SECTION C — JSX MATCH (verified live in browser on staging)
   Header gold announcement bar, black quote button, all-black footer,
   fixed social icons + newsletter button, hidden blog comment counts.
   ========================================================================== */
.header-top{background-color:#8c7440 !important;}
.header-top, .header-top *{color:#ffffff !important;}
.header-top .myButton{background:#1a1a1a !important;background-image:none !important;color:#fff !important;border-radius:4px !important;padding:6px 16px !important;font-size:13px !important;font-weight:600 !important;box-shadow:none !important;text-shadow:none !important;text-decoration:none !important;border:none !important;}
.header-top .myButton:hover{background:#000000 !important;color:#ffffff !important;}
.site-footer, .footer-style-1{background-color:#1a1a1a !important;color:#bbbbbb !important;}
.main-footer.footer-widget{background-color:transparent !important;}
.site-footer .widget{background:transparent !important;border:none !important;}
.site-footer .widget-title,.site-footer .footer-title,.site-footer h2,.site-footer h3,.site-footer h4{color:#ffffff !important;}
.site-footer p,.site-footer li,.site-footer span,.site-footer td{color:#bbbbbb !important;}
.site-footer a{color:#cbb78f !important;}
.site-footer a:hover{color:#ffffff !important;}
.site-footer a.btn-primary{background:transparent !important;border:1px solid rgba(255,255,255,.28) !important;width:38px !important;height:38px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;border-radius:50% !important;padding:0 !important;color:#ffffff !important;}
.site-footer a.btn-primary:hover{background:#8c7440 !important;border-color:#8c7440 !important;}
.site-footer a.btn-primary svg{stroke:#ffffff !important;width:18px !important;height:18px !important;}
.mc4wp-form button,.mc4wp-form input[type=submit]{background:#8c7440 !important;border-color:#8c7440 !important;color:#ffffff !important;border-radius:4px !important;padding:10px 22px !important;}
.tt-post-comment{display:none !important;}

/* SECTION C2 — logo consistency + clean header icons (verified live) */
.logo, .logo a, h1.logo, div.logo{font-family:'Playfair Display',Georgia,serif !important;font-size:clamp(24px,2.6vw,32px) !important;font-weight:600 !important;letter-spacing:1px !important;color:#1a1a1a !important;line-height:1.2 !important;text-decoration:none !important;}
.right-header a, .right-header svg, .right-header .feather{color:#1a1a1a !important;stroke:#1a1a1a !important;}
.right-header a:hover, .right-header a:hover .feather, .right-header a:hover svg{color:#8c7440 !important;stroke:#8c7440 !important;}

/* SECTION C3 — header utility icons as bronze button chips (verified live) */
.right-header{display:flex;align-items:center;gap:8px;}
.right-header > .search-icon,
.right-header > .wishlist-wrap,
.right-header > .mini-cart,
.right-header > .head-hamburger-menu,
.right-header .navbar-title,
.right-header > .navbar-woocommerce > a{
  width:42px;height:42px;border-radius:50%;
  display:inline-flex !important;align-items:center;justify-content:center;
  background:#f3efe6 !important;border:1px solid #e5e1d8 !important;
  position:relative;transition:background-color .15s ease,border-color .15s ease;
}
.right-header > .navbar-woocommerce{display:inline-flex !important;align-items:center;}
.right-header > .search-icon:hover,
.right-header > .wishlist-wrap:hover,
.right-header > .mini-cart:hover,
.right-header > .head-hamburger-menu:hover,
.right-header .navbar-title:hover,
.right-header > .navbar-woocommerce > a:hover{background:#8c7440 !important;border-color:#8c7440 !important;}
.right-header .feather,
.right-header .navbar-title svg,
.right-header .navbar-woocommerce svg{stroke:#8c7440 !important;color:#8c7440 !important;width:20px !important;height:20px !important;stroke-width:2 !important;}
.right-header > *:hover .feather,
.right-header .navbar-title:hover svg{stroke:#ffffff !important;color:#ffffff !important;}
#mini-cart-count{position:absolute;top:-4px;right:-4px;background:#8c7440;color:#fff;border:2px solid #fff;border-radius:50%;min-width:20px;height:20px;font-size:11px;display:flex;align-items:center;justify-content:center;}

/* SECTION C4 — nav font (JSX sans), logo vertical alignment, classic phone glyph (verified live) */
html body .menu-main-menu-container .navbar-nav.nav-menu .menu-item a,
html body .hamburger-nav .menu-item a{
  font-family:'Segoe UI',-apple-system,Roboto,Helvetica,Arial,sans-serif !important;
  font-size:15px !important;font-weight:500 !important;color:#333 !important;
  text-transform:none !important;letter-spacing:normal !important;
}
html body .navbar-nav.nav-menu .menu-item a:hover{color:#8c7440 !important;}
.logo, h1.logo, div.logo{margin:0 !important;padding-top:0 !important;}
.contact-no .svg-inline--fa{display:none !important;}
.contact-no::before{content:"\260E";margin-right:7px;font-size:15px;color:#666;line-height:1;}

/* SECTION C5 — final header icons (bronze standout + centered), newsletter text, hide desktop hamburger (verified live) */
.right-header > .search-icon,
.right-header > .wishlist-wrap,
.right-header > .mini-cart,
.right-header > .navbar-woocommerce > a.navbar-title{background:#8c7440 !important;border-color:#8c7440 !important;}
.right-header > .search-icon:hover,
.right-header > .wishlist-wrap:hover,
.right-header > .mini-cart:hover,
.right-header > .navbar-woocommerce > a.navbar-title:hover{background:#6f5c33 !important;border-color:#6f5c33 !important;}
.right-header .feather,
.right-header .navbar-title svg,
.right-header .navbar-woocommerce svg{stroke:#ffffff !important;color:#ffffff !important;}
.right-header > .search-icon .search-wrap,
.right-header > .wishlist-wrap .wishlist,
.right-header > .mini-cart > a{display:flex !important;align-items:center !important;justify-content:center !important;width:100% !important;height:100% !important;}
.right-header svg{display:block !important;}
.right-header > .head-hamburger-menu{display:none !important;}
.footer-top-section,.footer-top-section h1,.footer-top-section h2,.footer-top-section h3,.footer-top-section h4,.footer-top-section p,.footer-top-section span,.footer-top-section label,.footer-top-section div,.footer-top-section input{color:#333 !important;}

/* SECTION C6 — robust icon centering, even spacing, phone bronze chip (verified live) */
.right-header > .search-icon,
.right-header > .wishlist-wrap,
.right-header > .mini-cart > a,
.right-header > .navbar-woocommerce > a.navbar-title{position:relative !important;}
.right-header > .search-icon svg,
.right-header > .wishlist-wrap svg,
.right-header > .mini-cart > a svg,
.right-header > .navbar-woocommerce > a.navbar-title svg{position:absolute !important;top:50% !important;left:50% !important;right:auto !important;bottom:auto !important;width:20px !important;height:20px !important;margin:-10px 0 0 -10px !important;transform:none !important;}
.right-header > .navbar-woocommerce{padding:0 !important;margin:0 !important;width:auto !important;display:inline-flex !important;align-items:center !important;}
.left-header .contact-no{display:inline-flex !important;align-items:center !important;gap:8px !important;background:#1a1a1a !important;color:#fff !important;padding:9px 16px !important;border-radius:6px !important;font-size:15px !important;font-weight:600 !important;text-decoration:none !important;letter-spacing:.3px !important;transition:background-color .15s ease !important;}
.left-header .contact-no:hover{background:#8c7440 !important;}
.left-header .contact-no .svg-inline--fa{display:none !important;}
.left-header .contact-no::before{content:"\260E" !important;display:inline !important;width:auto !important;height:auto !important;background:none !important;border-radius:0 !important;font-size:16px !important;color:#fff !important;margin:0 !important;}

/* SECTION C7 — cart badge (unclipped, contrasting) + mobile icon downsize 15% (verified live) */
.right-header .mini-cart,
.right-header .mini-cart a.dropdown-back,
.right-header .mini-cart .basket-item-count{overflow:visible !important;}
#mini-cart-count{position:absolute !important;top:-3px !important;right:-3px !important;left:auto !important;background:#1a1a1a !important;color:#fff !important;border:2px solid #fff !important;border-radius:50% !important;min-width:18px !important;height:18px !important;font-size:10px !important;font-weight:600 !important;line-height:1 !important;display:flex !important;align-items:center !important;justify-content:center !important;z-index:5 !important;padding:0 !important;margin:0 !important;}
@media (max-width:767px){
  .right-header > .search-icon,
  .right-header > .wishlist-wrap,
  .right-header > .mini-cart,
  .right-header > .mini-cart > a,
  .right-header > .navbar-woocommerce > a.navbar-title{width:36px !important;height:36px !important;}
  .right-header > .search-icon svg,
  .right-header > .wishlist-wrap svg,
  .right-header > .mini-cart > a svg,
  .right-header > .navbar-woocommerce > a.navbar-title svg{width:17px !important;height:17px !important;margin:-8.5px 0 0 -8.5px !important;}
  .right-header{gap:6px !important;}
  #mini-cart-count{min-width:16px !important;height:16px !important;font-size:9px !important;}
}

/* SECTION C8 — phone CTA: outlined pill variant (chosen over solid) */
.left-header .contact-no{background:transparent !important;border:1.5px solid #1a1a1a !important;color:#1a1a1a !important;}
.left-header .contact-no:hover{background:#1a1a1a !important;color:#ffffff !important;}
.left-header .contact-no::before{color:#8c7440 !important;}
.left-header .contact-no:hover::before{color:#ffffff !important;}

/* SECTION C9 — left-align logo on tablet & mobile (shrink collapsed nav column) */
@media (max-width:991px){
  .container > .site-wrap{flex:0 0 auto !important;width:auto !important;min-width:0 !important;}
  .container > .site-wrap .main-navigation{width:auto !important;flex:0 0 auto !important;}
  .main-navigation .navbar-collapse{position:absolute !important;left:0 !important;top:100% !important;width:100% !important;z-index:999 !important;}
  .container > .site-branding-wrap{flex:1 1 auto !important;width:auto !important;}
  .site-branding{justify-content:space-between !important;}
  .logo, h1.logo, div.logo{margin:0 !important;text-align:left !important;}
}

/* SECTION C10 — phone CTA label "Talk to a real person" (markup added in child functions.php) */
.left-header .contact-no::before{display:none !important;}
.left-header .contact-no{align-items:center !important;gap:10px !important;padding:6px 16px !important;}
.left-header .contact-no .cdw-tel-ic{font-size:18px !important;line-height:1 !important;color:#8c7440 !important;}
.left-header .contact-no .cdw-tel-txt{display:flex !important;flex-direction:column !important;align-items:flex-start !important;line-height:1.15 !important;}
.left-header .contact-no .cdw-tel-lbl{font-size:9px !important;font-weight:600 !important;letter-spacing:.6px !important;text-transform:uppercase !important;color:#8c7440 !important;}
.left-header .contact-no .cdw-tel-num{font-size:15px !important;font-weight:700 !important;color:#1a1a1a !important;}
.left-header .contact-no:hover .cdw-tel-ic,
.left-header .contact-no:hover .cdw-tel-lbl,
.left-header .contact-no:hover .cdw-tel-num{color:#ffffff !important;}

/* SECTION C11 — left-align logo on tablet & mobile (override theme's site-wrap space-between) */
@media (max-width:991px){
  .site-header .site-wrap{justify-content:flex-start !important;gap:14px !important;}
  .site-header .site-wrap .main-navigation{order:1 !important;flex:0 0 auto !important;}
  .site-header .site-wrap .site-branding{order:2 !important;}
  .site-header .site-wrap .right-header{order:3 !important;margin-left:auto !important;}
  .site-header .site-wrap .main-navigation .navbar-collapse{position:absolute !important;top:100% !important;left:0 !important;right:0 !important;width:100% !important;z-index:999 !important;}
  .site-branding .logo, .logo, h1.logo, div.logo{margin:0 !important;text-align:left !important;}
}

/* ==========================================================================
   SECTION C12 — PRODUCT PAGE (add-ons + marketing sections)
   ========================================================================== */
.cdw-sec{padding:42px 0;}
.cdw-wrap{max-width:1200px;margin:0 auto;padding:0 20px;}
.cdw-h2{font-family:'Playfair Display',Georgia,serif !important;font-size:clamp(22px,3vw,28px) !important;font-weight:700 !important;text-align:center;color:#1a1a1a !important;margin:0 0 6px;}
.cdw-sub{text-align:center;color:#888;font-size:14px;margin:0 0 26px;}
/* Add-ons (inside summary form) */
.cdw-addons{margin:22px 0;border-top:1px solid #e5e1d8;padding-top:20px;}
.cdw-addons-title{font-family:'Playfair Display',Georgia,serif !important;font-size:20px !important;font-weight:700 !important;text-align:center;margin:0 0 4px;color:#1a1a1a !important;}
.cdw-addons-sub{text-align:center;color:#888;font-size:13px;margin:0 0 16px;}
.cdw-addons-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.cdw-addon-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;border:1px solid #e5e1d8;border-radius:10px;background:#fff;padding:18px 12px 14px;cursor:pointer;transition:border-color .15s,box-shadow .15s;}
.cdw-addon-card:hover{border-color:#8c7440;}
.cdw-addon-card input{position:absolute;top:10px;left:10px;width:16px;height:16px;accent-color:#8c7440;cursor:pointer;margin:0;}
.cdw-addon-card:has(input:checked){border-color:#8c7440;box-shadow:0 0 0 2px rgba(140,116,64,.2);}
.cdw-addon-card input:checked ~ .cdw-addon-name{color:#8c7440;}
.cdw-addon-ic{font-size:22px;line-height:1;}
.cdw-addon-name{font-weight:700;font-size:13px;color:#1a1a1a;}
.cdw-addon-desc{font-size:11px;color:#666;line-height:1.5;}
.cdw-addon-price{display:inline-block;margin-top:8px;background:#8c7440;color:#fff !important;font-weight:600;font-size:12px;padding:3px 12px;border-radius:4px;}
.cdw-addons-total-line{text-align:center;margin:14px 0 0;min-height:18px;}
#cdw-addons-total{color:#8c7440;font-weight:700;font-size:14px;}
/* What's In The Box */
.cdw-box{background:#fafaf7;}
.cdw-box-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;max-width:880px;margin:24px auto 0;}
.cdw-box-item{display:flex;gap:12px;align-items:flex-start;}
.cdw-check{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:#8c7440;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;margin-top:2px;}
.cdw-box-name{font-weight:700;font-size:14px;margin:0;color:#1a1a1a;}
.cdw-box-desc{font-size:13px;color:#666;margin:2px 0 0;}
/* Stats bar */
.cdw-stats{background:#1a1a1a;padding:40px 0 30px;}
.cdw-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center;}
.cdw-stat-num{font-family:'Playfair Display',Georgia,serif !important;font-size:46px;font-weight:700;color:#bfa15e;line-height:1;}
.cdw-stat-label{color:#cfcabd;font-size:13px;margin-top:8px;}
.cdw-stats-note{text-align:center;color:#8a8a8a;font-size:11px;margin:22px 0 0;}
/* Compare table */
.cdw-compare{background:#f8f6f0;}
.cdw-table-wrap{max-width:900px;margin:0 auto;overflow-x:auto;background:#fff;border:1px solid #e8e4dc;border-radius:8px;}
.cdw-table{width:100%;border-collapse:collapse;font-size:13px;}
.cdw-table th{padding:14px 16px;text-align:center;font-weight:600;color:#888;border-bottom:2px solid #e8e4dc;}
.cdw-table th.cdw-col-us{background:#8c7440;color:#fff;font-weight:700;}
.cdw-table td{padding:12px 16px;text-align:center;color:#555;border-bottom:1px solid #f0ede5;}
.cdw-table td.cdw-feat{text-align:left;font-weight:600;color:#1a1a1a;}
.cdw-table td.cdw-col-us{font-weight:600;color:#1a1a1a;background:rgba(140,116,64,.06);}
.cdw-table tr:last-child td{border-bottom:none;}
/* Reviews */
.cdw-reviews{background:#fff;}
.cdw-reviews-score{text-align:center;margin:0 0 24px;font-size:15px;color:#1a1a1a;}
.cdw-stars{color:#e0a200;letter-spacing:1px;}
.cdw-sub-inline{color:#888;font-size:13px;}
.cdw-reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.cdw-review{border:1px solid #e8e4dc;border-radius:8px;padding:20px;background:#fafaf7;display:flex;flex-direction:column;}
.cdw-review-text{font-size:13px;color:#555;line-height:1.7;margin:10px 0 16px;flex:1;}
.cdw-review-foot{display:flex;flex-direction:column;gap:1px;}
.cdw-review-name{font-weight:700;font-size:13px;color:#1a1a1a;}
.cdw-review-loc{font-size:12px;color:#999;}
.cdw-verified{font-size:11px;color:#2e7d32;margin-top:4px;}
/* FAQ */
.cdw-faq{background:#f8f6f0;}
.cdw-faq-wrap{max-width:760px;}
.cdw-faq-item{border-bottom:1px solid #e5e1d8;}
.cdw-faq-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 4px;font-weight:600;font-size:15px;color:#1a1a1a;}
.cdw-faq-item summary::-webkit-details-marker{display:none;}
.cdw-faq-plus{color:#8c7440;font-size:22px;font-weight:400;line-height:1;transition:transform .15s;}
.cdw-faq-item[open] .cdw-faq-plus{transform:rotate(45deg);}
.cdw-faq-a{padding:0 4px 18px;color:#666;font-size:14px;line-height:1.7;}
@media (max-width:767px){
  .cdw-addons-grid{grid-template-columns:1fr;}
  .cdw-box-grid{grid-template-columns:1fr;}
  .cdw-reviews-grid{grid-template-columns:1fr;}
  .cdw-stats-grid{grid-template-columns:1fr;gap:24px;}
  .cdw-stat-num{font-size:38px;}
}

/* ==========================================================================
   SECTION C13 — PRODUCT PAGE v2 (JSX layout match)
   ========================================================================== */
/* White page background on products (footer stays dark) */
body.single-product{background:#ffffff !important;}
body.single-product .site-footer, body.single-product .footer-bottom, body.single-product .site-info{background-color:#1a1a1a !important;}
/* Google reviews badge */
.cdw-greviews{display:inline-flex;align-items:center;gap:7px;margin:6px 0 14px;font-size:14px;color:#333;text-decoration:none;}
.cdw-greviews .cdw-g{font-weight:700;color:#4285F4;font-size:17px;font-family:Arial,sans-serif;}
.cdw-greviews-stars{color:#e0a200;letter-spacing:1px;}
.cdw-greviews-count{color:#888;font-size:13px;}
.cdw-greviews strong{color:#1a1a1a;}
/* Smaller wood-stain / paint swatches */
.summary .mwb_swatch-vm-attr-label-tooltip{width:44px !important;height:44px !important;}
.summary .mwb_swatch-vm-attr-label-tooltip img{width:44px !important;height:44px !important;object-fit:cover;}
/* Condensed width / height */
.custom-dimensions-wrapper .dimension-group{padding:8px !important;gap:6px !important;border-radius:6px !important;margin-bottom:12px !important;}
.custom-dimensions-wrapper .dimension-group select{min-width:0 !important;padding:6px 8px !important;font-size:13px !important;flex:1;}
.custom-dimensions-wrapper label{font-size:14px !important;}
.custom-dimensions-wrapper small{font-size:12px !important;}
/* Quick measuring tips */
.cdw-tips{margin:2px 0 16px;background:#fafaf7;border:1px solid #ede9e0;border-radius:6px;}
.cdw-tips summary{cursor:pointer;padding:10px 14px;font-weight:600;font-size:13px;color:#8c7440;list-style:none;}
.cdw-tips summary::-webkit-details-marker{display:none;}
.cdw-tips-body{padding:0 14px 14px;font-size:13px;color:#666;line-height:1.6;}
/* LEFT COLUMN STACK (under gallery) */
.cdw-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0;}
.cdw-trust-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;border:1px solid #e8e4dc;border-radius:8px;padding:14px 8px;background:#fff;}
.cdw-trust-ic{font-size:20px;line-height:1;}
.cdw-trust-name{font-weight:700;font-size:12px;color:#1a1a1a;}
.cdw-trust-sub{font-size:11px;color:#888;}
.cdw-boxcard{background:#fafaf7;border:1px solid #ede9e0;border-radius:10px;padding:20px;margin:0 0 20px;}
.cdw-boxcard-title{font-family:'Playfair Display',Georgia,serif !important;font-size:18px !important;text-align:center;margin:0 0 14px;color:#1a1a1a !important;}
.cdw-boxcard-list{list-style:none;margin:0;padding:0;}
.cdw-boxcard-list li{display:flex;gap:10px;align-items:flex-start;padding:7px 0;}
.cdw-boxcard-list .cdw-check{flex:0 0 auto;width:20px;height:20px;border-radius:50%;background:#8c7440;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;margin-top:2px;}
.cdw-boxcard-list .cdw-box-name{display:block;font-weight:700;font-size:13px;color:#1a1a1a;}
.cdw-boxcard-list .cdw-box-desc{display:block;font-size:12px;color:#666;}
.cdw-prefer{background:#f8f6f0;border-radius:10px;padding:18px;text-align:center;}
.cdw-prefer-title{font-weight:700;font-size:14px;margin:0 0 4px;color:#1a1a1a;}
.cdw-prefer-sub{font-size:12px;color:#888;margin:0 0 12px;}
.cdw-prefer-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.cdw-prefer-call{background:#1a1a1a;color:#fff !important;padding:9px 16px;border-radius:6px;font-size:13px;font-weight:600;text-decoration:none;}
.cdw-prefer-call:hover{background:#8c7440;}
.cdw-prefer-text{border:1px solid #ccc;color:#1a1a1a !important;padding:9px 16px;border-radius:6px;font-size:13px;font-weight:600;text-decoration:none;background:#fff;}
/* FREE hardware section */
.cdw-hardware{background:#fff;}
.cdw-hw-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;max-width:920px;margin:24px auto 0;}
.cdw-hw-item{display:flex;flex-direction:column;align-items:center;gap:8px;border:1px solid #ede9e0;border-radius:8px;padding:22px 10px;background:#fafaf7;}
.cdw-hw-ic{font-size:30px;line-height:1;}
.cdw-hw-name{font-size:12px;font-weight:600;color:#1a1a1a;text-align:center;}
/* Description tab typography (match JSX) */
.woocommerce-Tabs-panel--description, #tab-description{font-size:15px;color:#555;line-height:1.8;}
.woocommerce-Tabs-panel--description h2, .woocommerce-Tabs-panel--description h3, #tab-description h2, #tab-description h3{font-family:'Playfair Display',Georgia,serif !important;color:#1a1a1a !important;}
@media (max-width:767px){
  .cdw-hw-grid{grid-template-columns:repeat(2,1fr);}
  .cdw-prefer-btns{flex-direction:column;}
}

/* SECTION C14 — left-column wrapper fix + hide empty product rating */
.cdw-left{width:100%;flex-basis:100%;clear:both;margin-top:24px;}
.single-product .woocommerce-product-rating{display:none !important;}

/* SECTION C15 — width/height selects inline (ft | in | fraction) to match JSX */
.custom-dimensions-wrapper .dimension-group{flex-wrap:nowrap !important;}
.custom-dimensions-wrapper .dimension-group .select-wrap{flex:1 1 0 !important;width:auto !important;min-width:0 !important;}

/* SECTION C16 — swatch gray-box fix + left column no-stretch (sticky-ish balance) */
.mwb_swatch-vm-swatch-wrapper-without-circle{background:transparent !important;}
.summary .mwb_swatch-vm-attr-label-tooltip{background:transparent !important;}
@media(min-width:992px){
  .single-product-thumb-content .single-product-thumb{align-self:flex-start !important;}
}

/* SECTION C17 — neutralize Theia Sticky Sidebar on product pages (CSS backstop) */
.single-product .theiaStickySidebar{position:static !important;top:auto !important;left:auto !important;transform:none !important;width:auto !important;height:auto !important;min-height:0 !important;}
.single-product .single-product-thumb,
.single-product .single-product-detail,
.single-product .product-360-slider-wrap,
.single-product .nickx-slider-nav,
.single-product .single-product-image,
.single-product .single-product-content{min-height:0 !important;}

/* SECTION C18 — What's In Box as boxes + FREE hardware in left column (exact JSX icons) */
.cdw-box-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.cdw-box-item{border:1px solid #ede9e0;border-radius:6px;background:#fafaf7;padding:10px 12px;}
.cdw-box-item .cdw-box-name{display:block;font-weight:700;font-size:12px;color:#1a1a1a;line-height:1.3;}
.cdw-box-item .cdw-box-desc{display:block;font-size:11px;color:#888;margin-top:3px;line-height:1.4;}
.cdw-hwcard{background:#fff;border:1px solid #e8e4dc;border-radius:8px;padding:20px;margin:0 0 20px;}
.cdw-hwcard-sub{font-size:11px;color:#888;text-align:center;margin:0 0 14px;}
.cdw-hwcard .cdw-hw-grid{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:10px;max-width:none;margin:0;}
.cdw-hwcard .cdw-hw-item{border:1px solid #ede9e0;border-radius:8px;background:#fafaf7;padding:12px 6px;display:flex;flex-direction:column;align-items:center;gap:6px;}
.cdw-hwcard .cdw-hw-ic{display:block;line-height:0;}
.cdw-hwcard .cdw-hw-ic svg{width:58px;height:38px;display:block;margin:0 auto;}
.cdw-hwcard .cdw-hw-name{font-size:11px;color:#555;font-weight:500;text-align:center;line-height:1.25;}
@media (max-width:480px){.cdw-box-grid{grid-template-columns:1fr;}}

/* SECTION C19 — contain the floated product row so the marketing sections
   (stats/compare/reviews/faq) sit below the detail instead of behind it.
   The theme floats .single-product-thumb-content:left, collapsing .container. */
.single-product .product > .container{display:flow-root;}

/* SECTION C20 — Glass style image-radio picker (inline, replaces dropdown + link) */
.cdw-glass{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 4px;}
.cdw-glass-card{border:1px solid #e0dcd2;border-radius:8px;background:#fafaf7;padding:8px;cursor:pointer;display:block;margin:0;transition:border-color .15s,box-shadow .15s;}
.cdw-glass-card:hover{border-color:#c9bfa3;}
.cdw-glass-card.sel{border-color:#8c7440;box-shadow:0 0 0 1px #8c7440;}
.cdw-glass-imgwrap{display:block;}
.cdw-glass-imgwrap img{width:100%;height:92px;object-fit:cover;border-radius:5px;display:block;}
.cdw-glass-row{display:flex;align-items:center;gap:7px;margin-top:8px;}
.cdw-glass-row input[type=radio]{margin:0;flex:0 0 auto;accent-color:#8c7440;width:16px;height:16px;}
.cdw-glass-name{font-size:12px;font-weight:600;color:#1a1a1a;line-height:1.2;}
@media (max-width:480px){.cdw-glass-imgwrap img{height:82px;}}

/* SECTION C21 — insulate add-on cards from dimensions-wrapper label/p rules (add-ons now nested under glass styles) */
.custom-dimensions-wrapper .cdw-addon-card{display:flex !important;flex-direction:column;align-items:center;text-align:center;font-size:13px !important;font-weight:400 !important;color:inherit !important;margin:0 !important;}
.custom-dimensions-wrapper .cdw-addon-card .cdw-addon-name{font-weight:700;font-size:13px;color:#1a1a1a;}
.custom-dimensions-wrapper .cdw-addon-card .cdw-addon-desc{font-size:11px;color:#666;line-height:1.5;}
.custom-dimensions-wrapper .cdw-addons p{margin:0;}
.custom-dimensions-wrapper .cdw-addons-sub{margin:0 0 16px;}
.custom-dimensions-wrapper .cdw-addons-total-line{margin:14px 0 0;}

/* SECTION C22 — remove "Get Help Measuring" button from short desc; Prefer-to-talk under short description (all products) */
.woocommerce-product-details__short-description a.clean-btn{display:none !important;}
.cdw-prefer-summary{margin:16px 0 18px;}

/* SECTION C23 — prefer box clears floated title/short-desc; cream trust boxes; solid gold shield */
.cdw-prefer-summary{clear:both;}
.cdw-trust-item{background:#f8f6f0;}
.cdw-trust-ic .cdw-shield{width:22px;height:22px;display:inline-block;vertical-align:middle;}

/* SECTION C24 — Painted/Stained finishes as 2-column cards + tighten glass picker spacing */
.cdw-finishes{margin:26px 0 6px;}
.cdw-finishes-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.cdw-finish-card{background:#fafaf7;border:1px solid #ede9e0;border-radius:10px;padding:22px 20px;text-align:center;}
.cdw-finish-ic{display:inline-flex;width:46px;height:46px;align-items:center;justify-content:center;background:#fff;border:1px solid #e8e1cf;border-radius:50%;margin:0 0 12px;}
.cdw-finish-ic svg{width:22px;height:22px;display:block;}
.cdw-finish-title{font-family:'Playfair Display',Georgia,serif !important;font-size:18px !important;font-weight:600 !important;margin:0 0 8px !important;color:#1a1a1a !important;}
.cdw-finish-text{font-size:13px;color:#666;line-height:1.7;margin:0;}
@media (max-width:600px){.cdw-finishes-grid{grid-template-columns:1fr;}}
/* tighten glass picker spacing under its label (match Door Type) */
.cdw-glass{margin-top:6px !important;}

/* SECTION C25 — finishes width fix + swatch UX (uniform tiles, tight selection ring, heading font, hover image preview) */
.cdw-finishes-grid{width:100% !important;}
.summary .mwb_swatch-vm-swatch-label{font-family:inherit !important;font-weight:700 !important;font-size:1rem !important;color:#222 !important;text-transform:none !important;letter-spacing:0 !important;padding-top:0 !important;}
.summary .mwb_swatch-vm-attr-name-label li{margin:0 9px 9px 0 !important;vertical-align:top !important;}
.summary .mwb_swatch-vm-attr-label-tooltip{width:46px !important;height:46px !important;border-radius:6px;overflow:visible;}
.summary .mwb_swatch-vm-swatch-wrapper-without-circle,.summary .mwb_swatch-vm-swatch-wrapper{width:46px !important;height:46px !important;border-radius:6px !important;transform:none !important;background:transparent !important;overflow:hidden;}
.summary .mwb_swatch-vm-swatch-wrapper-without-circle img,.summary .mwb_swatch-vm-swatch-wrapper img{width:100% !important;height:100% !important;object-fit:cover;border-radius:6px !important;}
.summary .mwb_swatch-vm-active-s{border:none !important;box-shadow:0 0 0 2px #fff,0 0 0 4px #8c7440 !important;border-radius:6px !important;}
.summary .mwb_swatch-vm-attr-label-tooltip span.vm_label_s{display:none !important;}
#cdw-swatch-preview{position:fixed;z-index:99999;background:#fff;border:1px solid #e0dcd2;border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.18);padding:8px;width:230px;pointer-events:none;display:none;}
#cdw-swatch-preview img{width:100%;height:auto;max-height:50vh;object-fit:cover;border-radius:5px;display:block;}
#cdw-swatch-preview .nm{font-family:'Playfair Display',Georgia,serif;font-size:14px;color:#1a1a1a;text-align:center;margin-top:8px;text-transform:capitalize;}

/* SECTION C26 — spacing tweaks (add-ons sub, glass title), hide qty box, add-on price note */
.custom-dimensions-wrapper .cdw-addons-sub, .cdw-addons-sub{margin:0 0 30px !important;}
.custom-dimensions-wrapper p:has(#glass_type){margin-top:16px !important;}
.single-product .summary form.cart .quantity{display:none !important;}
.cdw-addons-total-line{text-align:center;margin:14px 0 0;min-height:16px;}
#cdw-addons-total{color:#8c7440;font-weight:600;font-size:13px;}

/* SECTION C27 — How to Measure infographic */
.cdw-measure{max-width:900px;margin:0 auto;text-align:center;}
.cdw-measure-title{font-family:'Playfair Display',Georgia,serif !important;font-size:24px !important;color:#1a1a1a !important;margin:0 0 6px !important;font-weight:700 !important;}
.cdw-measure-sub{color:#888;font-size:14px;margin:0 0 24px;}
.cdw-measure-diagram{background:#faf7f0;border:1px solid #ede4d2;border-radius:12px;padding:24px;display:flex;justify-content:center;margin:0 0 28px;}
.cdw-measure-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:left;}
.cdw-measure-card{display:flex;gap:14px;align-items:flex-start;background:#fafaf7;border:1px solid #ede9e0;border-radius:10px;padding:18px 20px;}
.cdw-measure-num{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:#8c7440;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-family:'Playfair Display',Georgia,serif;font-size:16px;}
.cdw-measure-card h4{margin:0 0 4px;font-size:15px;color:#1a1a1a;font-weight:700;}
.cdw-measure-card p{margin:0;font-size:13px;color:#666;line-height:1.6;}
@media (max-width:640px){.cdw-measure-grid{grid-template-columns:1fr;}}

/* SECTION C28 — Homepage (Elementor): hide theme page-title banner + fill hero image */
.home .page-header{display:none !important;}
.home .elementor-top-section:first-of-type .elementor-widget-image img{width:100% !important;height:440px;object-fit:cover;}
@media (max-width:767px){.home .elementor-top-section:first-of-type .elementor-widget-image img{height:280px;}}

/* SECTION C29 — Homepage v2: round category images, why quote, step circles, equal gallery thumbs */
.cdw-cat-circle img{width:280px !important;height:280px !important;border-radius:50% !important;object-fit:cover;display:block;margin:0 auto;}
@media (max-width:767px){.cdw-cat-circle img{width:220px !important;height:220px !important;}}
.cdw-quote{border-left:4px solid #8c7440 !important;background:#f3ecdd;padding:14px 18px !important;border-radius:0 8px 8px 0;}
.cdw-quote .elementor-widget-container, .cdw-quote p{margin:0;font-family:'Playfair Display',Georgia,serif;}
.cdw-step-num .elementor-heading-title{width:60px;height:60px;border-radius:50%;background:#8c7440;color:#fff !important;display:flex;align-items:center;justify-content:center;margin:0 auto;font-size:24px;}
.cdw-gal-img img{width:100% !important;height:240px !important;object-fit:cover;}

/* SECTION C30 — Homepage mobile: stack hero + section buttons full-width & centered */
@media (max-width:767px){
  .home .elementor-widget-button{width:100% !important;margin-bottom:10px;}
  .home .elementor-widget-button .elementor-button{width:100% !important;justify-content:center !important;text-align:center;}
  .home .elementor-widget-button .elementor-button-wrapper{text-align:center;}
}

/* ==========================================================================
   SECTION C31 — Product page matched to JSX (title, subtitle, CTA, box, glass, gallery)
   ========================================================================== */
/* Title: Playfair 26/700 per JSX */
.single-product .entry-summary .product_title{font-family:'Playfair Display',Georgia,serif !important;font-size:26px !important;font-weight:700 !important;line-height:1.3 !important;margin:0 0 8px !important;float:none !important;width:100% !important;}
/* Google reviews sit under the title */
.summary .cdw-greviews{margin:0 0 14px !important;}
/* Short description: subtitle 14/700 sans + JSX bullets */
.woocommerce-product-details__short-description{float:none !important;width:100% !important;}
.woocommerce-product-details__short-description strong,
.woocommerce-product-details__short-description h2,
.woocommerce-product-details__short-description h3,
.woocommerce-product-details__short-description h4{font-family:inherit !important;font-size:14px !important;font-weight:700 !important;color:#1a1a1a !important;margin:0 0 6px !important;display:block;line-height:1.4 !important;}
.woocommerce-product-details__short-description ul{font-size:13px !important;color:#555 !important;line-height:2 !important;padding-left:22px !important;margin:0 0 16px !important;list-style-type:disc !important;}
.woocommerce-product-details__short-description ul li{margin:0;}
/* GET HELP MEASURING OR GET A QUOTE (JSX dark bar) */
.cdw-measure-cta{display:block;background:#1a1a1a;color:#fff !important;border-radius:4px;padding:14px 20px;text-align:center;font-size:14px;font-weight:600;letter-spacing:.5px;text-decoration:none;margin:0 0 6px;clear:both;transition:background .15s;}
.cdw-measure-cta:hover{background:#8c7440;color:#fff !important;}
.cdw-measure-cta-sub{font-size:12px;color:#999;text-align:center;margin:0 0 16px;clear:both;}
/* What's In The Box — JSX card */
.cdw-boxcard{border:1px solid #E8E4DC !important;border-radius:8px !important;padding:20px !important;margin:20px 0 !important;background:#fff !important;}
.cdw-boxcard-title{font-family:'Playfair Display',Georgia,serif !important;font-size:15px !important;font-weight:600 !important;text-align:center;margin:0 0 12px !important;color:#1a1a1a !important;}
.cdw-boxcard-list{display:flex !important;flex-direction:column !important;gap:10px !important;grid-template-columns:none !important;}
.cdw-box-row{display:flex;align-items:flex-start;gap:10px;}
.cdw-box-row .cdw-check{color:#8C7440 !important;font-weight:700;font-size:14px;margin-top:1px;background:none !important;width:auto !important;height:auto !important;border-radius:0 !important;display:inline !important;}
.cdw-box-row .cdw-box-name{font-size:13px !important;font-weight:600 !important;margin:0 !important;color:#1a1a1a !important;display:block;}
.cdw-box-row .cdw-box-desc{font-size:11px !important;color:#888 !important;margin:0 !important;display:block;}
/* Prefer-to-talk sits under the box */
.cdw-left .cdw-prefer{margin:0 0 8px;}
/* Quick measuring tips CTA text */
.cdw-tips summary .cdw-tips-cta{color:#8c7440;font-weight:600;}
/* Glass styles: single row of 4 */
.cdw-glass{grid-template-columns:repeat(4,1fr) !important;}
.cdw-glass-imgwrap img{height:76px !important;}
.cdw-glass-name{font-size:11px !important;}
@media (max-width:600px){.cdw-glass{grid-template-columns:repeat(2,1fr) !important;}}
/* Gallery: featured image only (no thumbnail sidebar), keep arrows */
.single-product .images .nickx-slider-nav{display:none !important;}
.single-product .images .product-360-slider-wrap{width:100% !important;float:none !important;}
.single-product .images .product-360-slider-wrap img{width:100% !important;height:auto;}

/* SECTION C32 — Homepage: larger category circles + tighter "Built by hand" spacing */
.cdw-cat-circle img{width:380px !important;height:380px !important;}
@media (max-width:1024px){.cdw-cat-circle img{width:300px !important;height:300px !important;}}
@media (max-width:767px){.cdw-cat-circle img{width:240px !important;height:240px !important;}}
.home .elementor-section:has(.cdw-quote) .elementor-widget:not(:last-child){margin-bottom:10px;}
.home .elementor-section:has(.cdw-quote) .elementor-widget-text-editor p{margin-bottom:0;}
.home .cdw-quote{margin:4px 0 14px !important;padding:12px 16px !important;}
.home .elementor-section:has(.cdw-quote) .elementor-widget-heading{margin-bottom:6px;}

/* SECTION C33 — Glass picker: spacing from Door Type, row alignment, 25% zoom; tips above Width */
.custom-dimensions-wrapper p:has(#glass_type){margin-top:28px !important;}
.cdw-glass{align-items:stretch !important;}
.cdw-glass-card{display:flex !important;flex-direction:column;}
.cdw-glass-imgwrap{overflow:hidden;border-radius:5px;display:block;}
.cdw-glass-imgwrap img{transform:scale(1.25);transition:transform .2s ease;}
.cdw-glass-card:hover .cdw-glass-imgwrap img{transform:scale(1.35);}
.cdw-glass-row{margin-top:auto;min-height:32px;align-items:center;}
.cdw-glass-name{line-height:1.2;}
.custom-dimensions-wrapper .cdw-tips{margin:0 0 18px !important;}

/* SECTION C34 — Featured image top-aligned in its canvas (whitespace only below) */
.single-product .images .product-360-slider-wrap img{object-position:top center !important;vertical-align:top !important;align-self:flex-start !important;margin-top:0 !important;}
.single-product .images .product-360-slider-wrap,
.single-product .images .product-360-slider-wrap .slick-track,
.single-product .images .product-360-slider-wrap .slick-slide,
.single-product .images .product-360-slider-wrap > div{align-items:flex-start !important;}

/* SECTION C35 — Glass cards: equal height row */
.cdw-glass{align-items:stretch !important;}
.cdw-glass-card{height:100% !important;}

/* SECTION C36 — glass cards are <label>s: neutralise wrapper label margins so the row aligns */
.custom-dimensions-wrapper .cdw-glass-card,
.custom-dimensions-wrapper .cdw-glass-card:nth-of-type(1),
.custom-dimensions-wrapper .cdw-glass-card:nth-of-type(2){margin:0 !important;}

/* SECTION C37 — Gallery slides top-aligned (incl. cloned slides), tips + trust spacing, moved product meta */
@media (min-width:992px){
  .single-product .images .product-360-slider-wrap img{
    height:var(--cdw-gh,950px) !important;width:100% !important;
    object-fit:cover !important;object-position:top center !important;
    display:block !important;vertical-align:top !important;margin:0 !important;
  }
  .single-product .images .product-360-slider-wrap .nslick-slide,
  .single-product .images .product-360-slider-wrap .zoom{line-height:0 !important;font-size:0 !important;}
}
/* Space between the featured image and the 3 trust boxes */
.cdw-left{margin-top:28px !important;}
/* Space between the custom paint code box and Quick measuring tips */
.custom-dimensions-wrapper .cdw-tips{margin:18px 0 18px !important;}
/* Tags / Category moved to the bottom of the Description tab */
.cdw-meta-moved{margin-top:28px;padding-top:16px;border-top:1px solid #ede9e0;font-size:13px;color:#666;}
.cdw-meta-moved a{color:#8c7440;}

/* SECTION C38 — Lock every slide box to the canvas height so ANY image aspect is top-aligned */
@media (min-width:992px){
  .single-product .images .product-360-slider-wrap .nslick-list,
  .single-product .images .product-360-slider-wrap .nslick-track{height:var(--cdw-gh,950px) !important;}
  .single-product .images .product-360-slider-wrap .nslick-slide,
  .single-product .images .product-360-slider-wrap .zoom{
    height:var(--cdw-gh,950px) !important;overflow:hidden !important;display:block !important;
    line-height:0 !important;font-size:0 !important;
  }
  .single-product .images .product-360-slider-wrap img{
    height:100% !important;width:100% !important;
    object-fit:cover !important;object-position:top center !important;
    display:block !important;margin:0 !important;padding:0 !important;
    max-height:none !important;min-height:0 !important;vertical-align:top !important;
  }
}

/* SECTION C39 — remove the 10px right padding reserved for the (now hidden) thumbnail nav */
.single-product .images .product-360-slider-wrap{padding-right:0 !important;}
/* Prefer-to-talk now sits above the trust cards */
.cdw-left .cdw-prefer{margin:0 0 20px !important;}

/* SECTION C40 — info icon on Quick measuring tips */
.cdw-tips summary{display:flex;align-items:center;gap:8px;}
.cdw-tips-ic{flex:0 0 auto;width:18px;height:18px;border-radius:50%;background:#8c7440;color:#fff;
  font-size:12px;font-weight:700;font-style:italic;line-height:18px;text-align:center;
  font-family:Georgia,serif;display:inline-block;}
.cdw-tips summary:hover .cdw-tips-ic{background:#1a1a1a;}

/* SECTION C41 — Product Description tab layout (JSX structure) */
.woocommerce-Tabs-panel--description .cdw-desc{max-width:900px;margin:0 auto;padding:16px 0 8px;}
.cdw-desc h2{font-family:'Playfair Display',Georgia,serif;font-size:28px;line-height:1.3;font-weight:700;
  color:#1a1a1a;margin:0 0 18px;}
.cdw-desc h3{font-family:'Playfair Display',Georgia,serif;font-size:21px;line-height:1.35;font-weight:700;
  color:#1a1a1a;margin:44px 0 18px;}
.cdw-desc p{font-size:15px;line-height:1.85;color:#555;margin:0 0 16px;}
.cdw-desc p strong{color:#1a1a1a;font-weight:600;}

/* 2x2 feature cards */
.cdw-desc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:0 0 8px;}
.cdw-desc-card{padding:20px;background:#FAFAF7;border:1px solid #EDE9E0;border-radius:8px;}
.cdw-desc-card h4{font-family:'Playfair Display',Georgia,serif;font-size:15px;font-weight:700;
  color:#1a1a1a;margin:0 0 8px;}
.cdw-desc-card p{font-size:13.5px;line-height:1.7;color:#666;margin:0;}

/* Perfect for / where it works */
.cdw-desc{display:flow-root;}
.cdw-perfect{display:grid !important;grid-template-columns:repeat(3,1fr);gap:10px 24px;list-style:none;
  margin:0 !important;padding:0 !important;float:none !important;clear:both;width:100%;}
.cdw-perfect li{font-size:14px;line-height:1.6;color:#555;padding-left:24px;position:relative;list-style:none;}
.cdw-perfect li:before{content:"\2713";position:absolute;left:0;top:0;color:#8C7440;font-weight:700;}

/* pull-quote / closing strip */
.cdw-desc-close{margin-top:40px;padding:18px 22px;background:#FAF7F0;border-left:3px solid #8C7440;
  border-radius:4px;}
.cdw-desc-close p{margin:0;font-size:14px;color:#4a4a4a;}

@media (max-width:767px){
  .cdw-desc h2{font-size:23px;}
  .cdw-desc h3{font-size:19px;margin-top:34px;}
  .cdw-desc-grid{grid-template-columns:1fr;}
  .cdw-perfect{grid-template-columns:1fr 1fr;}
}

/* SECTION C42 — left column: badge icons, trust ticker, in-column finishes */

/* Colour emoji badge icons, per the JSX */
.cdw-trust-ic{display:block;margin-bottom:4px;font-size:20px;line-height:1.2;
  font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;}

/* Scrolling trust ticker */
.cdw-ticker{overflow:hidden;margin:0 0 16px;border-radius:4px;background:#F8F6F0;
  border:1px solid #EAE6DB;padding:10px 0;position:relative;}
.cdw-ticker:before,.cdw-ticker:after{content:"";position:absolute;top:0;bottom:0;width:36px;z-index:2;pointer-events:none;}
.cdw-ticker:before{left:0;background:linear-gradient(to right,#F8F6F0,rgba(248,246,240,0));}
.cdw-ticker:after{right:0;background:linear-gradient(to left,#F8F6F0,rgba(248,246,240,0));}
.cdw-ticker-track{display:flex;width:max-content;animation:cdwTicker 26s linear infinite;}
.cdw-ticker:hover .cdw-ticker-track{animation-play-state:paused;}
.cdw-ticker-run{display:flex;gap:32px;padding-right:32px;white-space:nowrap;}
.cdw-tick-item{font-size:11px;font-weight:600;color:#555;display:flex;align-items:center;gap:6px;}
.cdw-tick-ic{font-size:13px;line-height:1;flex:0 0 auto;
  font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;}
@keyframes cdwTicker{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
/* The marquee always rotates and always stays on one line. It is decorative,
   pauses on hover, and never wraps. Reduced-motion users get a slower scroll
   rather than a stopped, wrapped strip. */
.cdw-ticker-run{flex-wrap:nowrap;}
@media (prefers-reduced-motion:reduce){
  .cdw-ticker-track{animation-duration:60s;}
}

/* Finishes now live at the bottom of the left column: stack them */
.cdw-left .cdw-finishes{margin:20px 0 0;width:100%;}
.cdw-left .cdw-finishes-grid{display:grid;grid-template-columns:1fr;gap:16px;width:100%;}
.cdw-left .cdw-finish-card{padding:18px;background:#FAFAF7;border:1px solid #EDE9E0;border-radius:8px;}
.cdw-left .cdw-finish-ic svg{width:22px;height:22px;display:block;}
.cdw-left .cdw-finish-title{font-family:'Playfair Display',Georgia,serif;font-size:15px;font-weight:700;
  margin:8px 0 6px;color:#1a1a1a;}
.cdw-left .cdw-finish-text{font-size:13px;line-height:1.75;color:#666;margin:0;}
.cdw-left .cdw-prefer{margin:0 0 20px !important;}

/* SECTION C43 — Product Specifications tab */
.woocommerce-Tabs-panel .cdw-specs{max-width:900px;margin:0 auto;padding:16px 0 8px;}
.cdw-specs-title{font-family:'Playfair Display',Georgia,serif;font-size:24px;font-weight:700;
  color:#1a1a1a;margin:0 0 20px;}
.cdw-specs-table{width:100%;border-collapse:collapse;margin:0;border:0;}
.cdw-specs-table tr{border-bottom:1px solid #EDE9E0;}
.cdw-specs-table th,.cdw-specs-table td{text-align:left;padding:14px 8px;vertical-align:top;border:0;background:none;}
.cdw-specs-table th{width:35%;font-size:14px;font-weight:600;color:#1a1a1a;}
.cdw-specs-table td{font-size:14px;line-height:1.7;color:#555;}
.cdw-specs-note{margin-top:22px;font-size:13px;color:#888;line-height:1.7;}
@media (max-width:600px){
  .cdw-specs-table th,.cdw-specs-table td{display:block;width:100%;padding:10px 0;}
  .cdw-specs-table th{padding-bottom:2px;}
  .cdw-specs-table tr{padding:6px 0;display:block;}
}

/* SECTION C44 — Homepage: oversized category circles, centered Why column,
   inverted middle step, project gallery carousel */

/* 1. Category circles sized to match the production site (457px) */
.cdw-cat-circle img{width:457px !important;height:457px !important;}
@media (max-width:1200px){.cdw-cat-circle img{width:min(400px,90%) !important;height:auto !important;aspect-ratio:1/1;}}
@media (max-width:1024px){.cdw-cat-circle img{width:min(340px,90%) !important;}}
@media (max-width:767px){.cdw-cat-circle img{width:min(280px,80%) !important;}}

/* 2. "Why Cornerstone" text column centers against the workshop photo */
@media (min-width:1025px){
  .home .elementor-section:has(.cdw-quote) > .elementor-container{align-items:center;}
  .home .elementor-section:has(.cdw-quote) > .elementor-container > .elementor-column > .elementor-element-populated{
    justify-content:center;align-content:center;
  }
}

/* 3. How It Works: invert the middle step */
.home .elementor-section:has(.cdw-step-num) > .elementor-container > .elementor-column:nth-child(2) > .elementor-element-populated{
  background:#1a1a1a !important;border-color:#1a1a1a !important;
}
.home .elementor-section:has(.cdw-step-num) > .elementor-container > .elementor-column:nth-child(2) .elementor-heading-title,
.home .elementor-section:has(.cdw-step-num) > .elementor-container > .elementor-column:nth-child(2) .elementor-widget-text-editor,
.home .elementor-section:has(.cdw-step-num) > .elementor-container > .elementor-column:nth-child(2) .elementor-widget-text-editor p{
  color:#fff !important;
}
/* The numeral stays gold-on-white-letter like steps 1 and 3, even on the dark card. */
.home .elementor-section:has(.cdw-step-num) > .elementor-container > .elementor-column:nth-child(2) .cdw-step-num .elementor-heading-title{
  background:#8c7440 !important;color:#fff !important;
}

/* 4. Project gallery carousel */
.cdw-gal{position:relative;display:flex;align-items:center;gap:8px;}
.cdw-gal-track{display:flex;align-items:flex-start;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;
  scroll-behavior:smooth;padding:4px;flex:1 1 auto;
  scrollbar-width:none;-ms-overflow-style:none;}
.cdw-gal-track::-webkit-scrollbar{display:none;}
.cdw-gal-track:focus-visible{outline:2px solid #8c7440;outline-offset:2px;}
.cdw-gal-item{flex:0 0 calc((100% - 48px)/4);scroll-snap-align:start;border-radius:8px;overflow:hidden;
  display:block;line-height:0;background:#EDE9E0;}
.cdw-gal-item img{width:100% !important;height:280px !important;max-height:none !important;
  object-fit:cover !important;display:block;transition:transform .4s ease;}
.cdw-gal-item:hover img{transform:scale(1.05);}
.cdw-gal-arrow{flex:0 0 40px;width:40px;height:40px;border-radius:50%;border:1px solid #E8E4DC;
  background:#fff;color:#1a1a1a;display:flex;align-items:center;justify-content:center;cursor:pointer;
  box-shadow:0 2px 8px rgba(0,0,0,.08);transition:opacity .2s,background .2s;padding:0;}
.cdw-gal-arrow svg{width:20px;height:20px;}
.cdw-gal-arrow:hover:not(:disabled){background:#1a1a1a;color:#fff;}
.cdw-gal-arrow:disabled{opacity:.3;cursor:default;}
@media (max-width:1024px){.cdw-gal-item{flex:0 0 calc((100% - 16px)/2);}.cdw-gal-item img{height:240px !important;}}
@media (max-width:767px){
  .cdw-gal-item{flex:0 0 78%;}
  .cdw-gal-item img{height:220px !important;}
  .cdw-gal-arrow{display:none;}
  .cdw-gal-track{scroll-snap-type:x proximity;}
}

/* SECTION C45 — header utility icons as colour emoji */
.cdw-hdr-ic{
  font-size:19px;line-height:1;display:inline-block;
  font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
  transition:transform .15s ease;
}
/* Section C5 fills these chips bronze, which buries full-colour emoji.
   .cdw-emoji-chip is added by JS to the chip element itself, so this beats
   C5 on specificity rather than on source order. */
/* Light cream chip. The red heart carries its own contrast, so the chip can
   stay pale and the blue, purple and grey emoji stay crisp. */
.right-header > .search-icon.cdw-emoji-chip,
.right-header > .wishlist-wrap.cdw-emoji-chip,
.right-header > .mini-cart.cdw-emoji-chip,
.right-header > .navbar-woocommerce > a.navbar-title.cdw-emoji-chip{
  background:#f3efe6 !important;border:1px solid #e5e1d8 !important;
}
.right-header > .search-icon.cdw-emoji-chip:hover,
.right-header > .wishlist-wrap.cdw-emoji-chip:hover,
.right-header > .mini-cart.cdw-emoji-chip:hover,
.right-header > .navbar-woocommerce > a.navbar-title.cdw-emoji-chip:hover{
  background:#ece5d6 !important;border-color:#d8cfb9 !important;
}
/* C6 absolutely-positions header svgs; the emoji span needs the same centring. */
.right-header .cdw-emoji-chip .cdw-hdr-ic{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
}
.right-header .cdw-emoji-chip:hover .cdw-hdr-ic{transform:translate(-50%,-50%) scale(1.12);}

/* SECTION C46 — product summary rhythm (title -> reviews -> list -> CTA -> price) */
.single-product .summary > .product_title{margin:0 0 10px !important;}
.single-product .summary > .cdw-greviews{margin:0 0 16px !important;}

/* One divider, under the bullet list. The price keeps its own rule below. */
.single-product .summary > .woocommerce-product-details__short-description{
  margin:0 0 20px !important;padding:0 0 20px !important;
  border-bottom:1px solid #ede9e0 !important;
}
.single-product .summary .woocommerce-product-details__short-description h2,
.single-product .summary .woocommerce-product-details__short-description h3,
.single-product .summary .woocommerce-product-details__short-description h4{margin:0 0 10px !important;}
.single-product .summary .woocommerce-product-details__short-description ul{margin:0 !important;}
.single-product .summary .woocommerce-product-details__short-description ul li{margin:0 !important;}
.single-product .summary .woocommerce-product-details__short-description > p:empty,
.single-product .summary .woocommerce-product-details__short-description > center:empty{display:none !important;}

/* CTA sits right under the divider, caption hangs beneath it */
.single-product .summary > .cdw-measure-cta{margin:0 0 8px !important;}
.single-product .summary > .cdw-measure-cta-sub{
  margin:0 0 18px !important;text-align:center;font-size:12px;color:#999;font-weight:400;line-height:1.5;
}

/* Price: give "Starting at" some presence and its own separator */
.single-product .summary > p.price{
  margin:0 0 20px !important;padding:0 0 20px !important;
  border-top:0 !important;border-bottom:1px solid #ede9e0 !important;
  font-size:15px !important;color:#666 !important;
}
.single-product .summary > p.price .woocommerce-Price-amount,
.single-product .summary > p.price ins,
.single-product .summary > p.price bdi{
  font-family:'Playfair Display',Georgia,serif;font-size:24px;font-weight:700;color:#1a1a1a;
}
.single-product .summary .woocommerce-product-rating:empty{display:none !important;margin:0 !important;}

/* SECTION C47 — custom image logo (horizontal Cornerstone lockup) */
/* Every Kraftiart header variant renders the_custom_logo() as
   a.custom-logo-link > img.custom-logo. Size it for the header bar. */
.custom-logo-link{display:inline-flex !important;align-items:center;line-height:0;margin:0;padding:0;}
/* Sized for the header bar. The new horizontal lockup has its own baked-in
   depth and saturated wood tones, so no CSS drop-shadow or colour filter is
   applied (removed in v1.16.4 - it was doubling the shadow on the new art). */
.custom-logo{
  height:90px !important;width:auto !important;max-width:none !important;
  max-height:90px !important;display:block;
}
/* Sticky bar sits tighter */
.header-stickybar .custom-logo,
.header-sticky .custom-logo{height:60px !important;max-height:60px !important;}
/* Scale down on smaller screens so it never crowds the hamburger/cart */
@media (max-width:1024px){
  .custom-logo{height:72px !important;max-height:72px !important;}
}
@media (max-width:767px){
  .custom-logo{height:44px !important;max-height:44px !important;}
}
@media (max-width:480px){
  .custom-logo{height:38px !important;max-height:38px !important;}
}
@media (max-width:380px){
  .custom-logo{height:34px !important;max-height:34px !important;}
}

/* SECTION C48 — classic [gallery] shortcode thumbnails fill their grid cells
   (the theme/core set .gallery to display:grid but left .gallery-item at a
   fixed ~33% width + float, collapsing images to ~116px). */
.gallery{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:16px !important;}
.gallery .gallery-item{width:auto !important;max-width:100% !important;float:none !important;margin:0 !important;padding:0 !important;}
.gallery .gallery-item .gallery-icon{margin:0 !important;width:100% !important;}
.gallery .gallery-item .gallery-icon img{width:100% !important;height:auto !important;max-width:100% !important;border:0 !important;display:block;border-radius:8px;}
.gallery br{display:none !important;}
@media (max-width:900px){.gallery{grid-template-columns:repeat(2,1fr) !important;}}
@media (max-width:560px){.gallery{grid-template-columns:1fr !important;}}

/* SECTION C49 — remove the never-configured Mailchimp newsletter bar (footer top strip) */
.footer-top-section,
#footer-top.footer-top-section{display:none !important;}

/* SECTION C50 — sticky mobile call/quote bar (conversion CTA, added v1.16.6) */
#cdw-mobile-cta{display:none;}
@media (max-width:1024px){
  #cdw-mobile-cta{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:99990;
    box-shadow:0 -2px 12px rgba(0,0,0,.20);
  }
  #cdw-mobile-cta a{
    flex:1 1 50%;display:flex;align-items:center;justify-content:center;gap:8px;
    padding:15px 8px;font-size:15px;font-weight:700;letter-spacing:.3px;line-height:1.1;
    text-decoration:none;color:#fff !important;text-align:center;min-height:52px;
  }
  #cdw-mobile-cta .cdw-cta-call{background:#8c7440;}
  #cdw-mobile-cta .cdw-cta-call:active{background:#6f5c33;}
  #cdw-mobile-cta .cdw-cta-quote{background:#1a1a1a;}
  #cdw-mobile-cta .cdw-cta-quote:active{background:#000;}
  #cdw-mobile-cta .cdw-cta-ic{font-size:18px;line-height:1;}
  /* keep page content and the back-to-top button clear of the fixed bar */
  body{padding-bottom:56px !important;}
  #back-to-top,.back-to-top,.scroll-to-top{bottom:68px !important;}
}
