.elementor-kit-8{--e-global-color-primary:#007286;--e-global-color-secondary:#2C2C2C;--e-global-color-text:#4F4F4F;--e-global-color-accent:#FF0064;--e-global-color-background:#FFFFFF;--e-global-color-backgroundAccent:#F4F4F4;--e-global-color-transparent:#00000000;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-size:24px;--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-size:20px;--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Figtree";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-accent-font-family:"Figtree";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-line-height:1.5em;--e-global-typography-heading-xl-font-family:"Poppins";--e-global-typography-heading-xl-font-size:56px;--e-global-typography-heading-xl-font-weight:600;--e-global-typography-heading-xl-line-height:1.2em;--e-global-typography-heading-l-font-family:"Poppins";--e-global-typography-heading-l-font-size:48px;--e-global-typography-heading-l-font-weight:600;--e-global-typography-heading-l-line-height:1.2em;--e-global-typography-heading-m-font-family:"Poppins";--e-global-typography-heading-m-font-size:40px;--e-global-typography-heading-m-font-weight:600;--e-global-typography-heading-m-line-height:1.2em;--e-global-typography-heading-s-font-family:"Poppins";--e-global-typography-heading-s-font-size:18px;--e-global-typography-heading-s-font-weight:500;--e-global-typography-body-s-font-family:"Figtree";--e-global-typography-body-s-font-size:14px;--e-global-typography-body-s-font-weight:400;--e-global-typography-body-s-line-height:1.5em;background-color:var( --e-global-color-background );}.elementor-kit-8 e-page-transition{background-color:var( --e-global-color-accent );}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{font-family:"Sofia Sans Semi Condensed", Sans-serif;font-weight:700;text-transform:uppercase;border-style:none;border-radius:5px 5px 5px 5px;padding:4px 10px 3px 10px;}.elementor-kit-8 button:hover,.elementor-kit-8 button:focus,.elementor-kit-8 input[type="button"]:hover,.elementor-kit-8 input[type="button"]:focus,.elementor-kit-8 input[type="submit"]:hover,.elementor-kit-8 input[type="submit"]:focus,.elementor-kit-8 .elementor-button:hover,.elementor-kit-8 .elementor-button:focus{border-style:none;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-8{--e-global-typography-primary-font-size:22px;--e-global-typography-secondary-font-size:18px;--e-global-typography-heading-xl-font-size:48px;--e-global-typography-heading-l-font-size:40px;--e-global-typography-heading-m-font-size:32px;--e-global-typography-heading-s-font-size:18px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8{--e-global-typography-primary-font-size:18px;--e-global-typography-secondary-font-size:16px;--e-global-typography-heading-xl-font-size:40px;--e-global-typography-heading-l-font-size:32px;--e-global-typography-heading-m-font-size:32px;--e-global-typography-heading-s-font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =================================================
   Saved Pins page layout
   ================================================= */
.blaz-saved-pins{
  max-width:660px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:16px;
}
.blaz-saved-pin{
  background:#fff;
  border-radius:12px;
  border:1px solid #e5e7eb;
  box-shadow:0 4px 10px rgba(15,23,42,0.06);
  padding:14px 16px;
}
.blaz-saved-pin-inner{
  display:flex;
  align-items:flex-start;
  gap:16px;
}
.blaz-saved-pin-logo{
  flex:0 0 92px;
  max-width:92px;
}
.blaz-saved-pin-logo img{
  width:92px;
  height:92px;
  object-fit:contain;
  border-radius:10px;
  border:1px solid #e5e7eb;
  background:#ffffff;
}
.blaz-saved-pin-body{ flex:1 1 auto; }
.blaz-saved-pin-title{
  margin:0 0 4px;
  font-size:16px;
  font-weight:600;
  color:#111827;
}
.blaz-saved-pin-address{
  margin:0 0 10px;
  font-size:14px;
  color:#4b5563;
}
.blaz-saved-pin-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.blaz-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 14px;
  border-radius:999px;
  font-size:13px;
  font-weight:600;
  text-decoration:none;
  border:1px solid transparent;
  cursor:pointer;
  line-height:1.4;
}
.blaz-button--primary{
  background:#ff0064;
  border-color:#ff0064;
  color:#fff;
}
.blaz-button--primary:hover{
  background:#e00058;
  border-color:#e00058;
  color:#f6f6ff;
}
.blaz-button--secondary{
  background:#fff;
  border-color:#d1d5db;
  color:#374151;
}
/* Prevent marker drift caused by transform transitions */
.maplibregl-marker,
.maplibregl-marker * {
  transition: none !important;
}

/* =================================================
   FORCE thumbnail/placeholder to always show
   (append this after your existing Saved Pins CSS)
   ================================================= */

/* 1) Guarantee the thumbnail slot always has a visible box */
.blaz-saved-pin-logo{
  position:relative !important;
  flex:0 0 92px;
  width:92px;
  height:92px;
  max-width:92px;
  min-width:92px;
  min-height:92px;
  border-radius:10px;
  overflow:hidden;
  border:1px solid #e5e7eb;
  background:#f9fafb;
}

/* 2) Always paint a fallback image behind (50% opacity) */
.blaz-saved-pin-logo::before{
  content:'';
  position:absolute;
  inset:0;
  background-image:url('/wp-content/uploads/2025/10/BLAZ-fallback.png'); /* <-- change this */
  background-repeat:no-repeat;
  background-position:center;
  background-size:60%;
  opacity:.5;
  pointer-events:none;
  z-index:0;
}

/* 3) Real image always sits above fallback and fills the box */
.blaz-saved-pin-logo img{
  position:relative;
  z-index:1;
  display:block;
  width:92px !important;
  height:92px !important;
  max-width:none;
  object-fit:contain;
  border:0 !important;            /* border is on the container now */
  border-radius:0 !important;     /* container handles rounding */
  opacity:1 !important;
}

/* 4) If the <img> is broken/empty, hide it so fallback shows */
.blaz-saved-pin-logo img:not([src]),
.blaz-saved-pin-logo img[src=""],
.blaz-saved-pin-logo img[src="#"],
.blaz-saved-pin-logo img[alt=""]{
  display:none !important;
}

/* 5) If the logo column is missing in some cards, reserve space */
.blaz-saved-pin-inner{
  align-items:flex-start;
}
.blaz-saved-pin-inner::before{
  content:'';
  display:block;
  flex:0 0 92px;
  width:92px;
  height:92px;
  border-radius:10px;
  border:1px solid #e5e7eb;
  background:#f9fafb url('/wp-content/uploads/2025/10/BLAZ-fallback.png') center/60% no-repeat; /* <-- change this */
  opacity:.5;
}
/* If a real .blaz-saved-pin-logo exists, don't duplicate the reserved slot */
.blaz-saved-pin-logo + .blaz-saved-pin-body,
.blaz-saved-pin-logo + *{
  /* no-op; just ensures normal flow */
}
.blaz-saved-pin-inner:has(.blaz-saved-pin-logo)::before{
  content:none;
}

/* 6) Mobile sizing (keeps it consistent) */
@media (max-width:520px){
  .blaz-saved-pin-logo,
  .blaz-saved-pin-logo img{
    width:72px !important;
    height:72px !important;
  }
  .blaz-saved-pin-logo{
    flex:0 0 72px;
    min-width:72px;
    min-height:72px;
  }
  .blaz-saved-pin-inner::before{
    flex:0 0 72px;
    width:72px;
    height:72px;
    background-size:60%;
  }
}

/* =================================================
   Saved Pins – Remove (X) button
   EXACT match to map popup behaviour
   ================================================= */

.blaz-saved-pin{
  position:relative;
}

.blaz-saved-pin-remove{
  position:absolute;
  top:6px;
  right:6px;
  width:24px;
  height:24px;
  padding:0;

  /* hard reset */
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
  outline:none !important;

  color:#9ca3af;
  font-size:18px;
  font-weight:600;
  line-height:1;

  display:flex;
  align-items:center;
  justify-content:center;

  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;

  transition:color .18s ease;
}

/* hide button text completely */
.blaz-saved-pin-remove{
  font-size:0;
}

/* draw the X */
.blaz-saved-pin-remove::before{
  content:'×';
  font-size:18px;
  font-weight:600;
  line-height:1;
  color:inherit;
}

/* hover = color only (NO background) */
.blaz-saved-pin-remove:hover,
.blaz-saved-pin-remove:focus{
  background:none !important;
  box-shadow:none !important;
  color:#ff0064; /* BLAZ pink */
}





/* =========================================
   BLAZ – Single Product page (card style)
   Targets the default Woo single-product layout
   ========================================= */

:root{
  --blaz-accent:#ff0064;
  --blaz-border:rgba(0,0,0,.08);
  --blaz-shadow:0 8px 22px rgba(0,0,0,.06);
  --blaz-radius:16px;
}

/* Page container + spacing */
.woocommerce.single-product div.product{
  max-width:1100px;
  margin: 0 auto;
  padding: 0 14px;
}

/* Two-column spacing (image + content) */
.woocommerce.single-product div.product .woocommerce-product-gallery{
  padding-right: 12px;
}
.woocommerce.single-product div.product .summary{
  padding-left: 12px;
}

/* Card look on image + summary */
.woocommerce.single-product div.product .woocommerce-product-gallery,
.woocommerce.single-product div.product .summary{
  background:#fff;
  border:1px solid var(--blaz-border);
  border-radius:var(--blaz-radius);
  box-shadow:var(--blaz-shadow);
  padding:22px;
}

/* Gallery image rounding (your screenshot is a hard rectangle) */
.woocommerce.single-product .woocommerce-product-gallery__wrapper,
.woocommerce.single-product .woocommerce-product-gallery__image,
.woocommerce.single-product .woocommerce-product-gallery__image img{
  border-radius: 14px;
}

/* Title + text rhythm */
.woocommerce.single-product .product_title{
  font-weight: 700;
  letter-spacing:.2px;
  margin: 0 0 10px;
}
.woocommerce.single-product .summary p{
  line-height: 1.55;
}

/* Price – bigger + brand */
.woocommerce.single-product div.product p.price,
.woocommerce.single-product div.product span.price{
  color: var(--blaz-accent);
  font-weight: 900;
  font-size: 22px;
  margin: 10px 0 14px;
}

/* Variation “Tier” block as a mini-card */
.woocommerce.single-product form.cart{
  margin-top: 14px;
}
.woocommerce.single-product form.cart .variations{
  background: #fff;
  border: 1px solid var(--blaz-border);
  border-radius: 14px;
  padding: 14px;
  margin: 0 0 14px;
}

/* Make variation label + select align nicely */
.woocommerce.single-product form.cart .variations th{
  width: 100px;
  padding: 8px 10px 8px 0;
  font-weight: 800;
}
.woocommerce.single-product form.cart .variations td{
  padding: 2px 0;
}

/* Select styling */
.woocommerce.single-product form.cart select{
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.12);
  padding: 12px 12px;
  background: #fff;
  box-shadow: none;
}

/* “Clear” link */
.woocommerce.single-product a.reset_variations{
  color: var(--blaz-accent);
  font-weight: 700;
  text-decoration: none;
}
.woocommerce.single-product a.reset_variations:hover{
  text-decoration: underline;
}

/* Quantity + Add to cart row */
.woocommerce.single-product .quantity .qty{
  width: 86px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.12);
  padding: 10px 10px;
}

/* Button match to checkout */
.woocommerce.single-product button.single_add_to_cart_button,
.woocommerce.single-product a.button.alt,
.woocommerce.single-product button.button.alt,
.woocommerce.single-product input.button.alt{
  background: var(--blaz-accent);
  color: #fff;
  border: 0;
  border-radius: 14px;
  padding: 13px 18px;
  font-weight: 900;
  letter-spacing: .2px;
  box-shadow: 0 10px 24px rgba(255,0,100,.18);
}
.woocommerce.single-product button.single_add_to_cart_button:hover,
.woocommerce.single-product a.button.alt:hover,
.woocommerce.single-product button.button.alt:hover,
.woocommerce.single-product input.button.alt:hover{
  filter: brightness(.95);
}

/* Optional: tighten the “Add to cart” area to look like one unit */
.woocommerce.single-product form.cart .single_variation_wrap{
  padding-top: 12px;
  margin-top: 6px;
  border-top: 1px solid rgba(0,0,0,.08);
}

/* Tabs area (Description etc.) into a card too */
.woocommerce.single-product .woocommerce-tabs{
  margin-top: 18px;
}
.woocommerce.single-product .woocommerce-tabs .panel{
  background:#fff;
  border:1px solid var(--blaz-border);
  border-radius:var(--blaz-radius);
  box-shadow:var(--blaz-shadow);
  padding:18px;
}

/* Mobile: stack cards cleanly */
@media (max-width: 768px){
  .woocommerce.single-product div.product .woocommerce-product-gallery,
  .woocommerce.single-product div.product .summary{
    padding: 16px;
  }
  .woocommerce.single-product div.product .woocommerce-product-gallery{
    margin-bottom: 14px;
    padding-right: 16px;
  }
  .woocommerce.single-product div.product .summary{
    padding-left: 16px;
  }
  .woocommerce.single-product button.single_add_to_cart_button{
    width: 100%;
  }
}





/* =========================================
   BLAZ – WooCommerce notice colours (remove green)
   Applies across site: success/info/error + top border line
   ========================================= */

:root{
  --blaz-accent: #ff0064;   /* main brand */
  --blaz-info:   #0ea5e9;   /* optional: info blue */
  --blaz-warn:   #f59e0b;   /* optional: amber */
  --blaz-error:  #ef4444;   /* optional: red */
}

/* Base notice styling */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error{
  border-radius: 14px;
  border: 0px solid rgba(0,0,0,.08);
  box-shadow: 0 8px 22px rgba(0,0,0,.06);
}

/* SUCCESS (was green) */
.woocommerce .woocommerce-message{
  border-top: 4px solid var(--blaz-accent) !important;
}
.woocommerce .woocommerce-message::before{
  color: var(--blaz-accent) !important;
}

/* INFO */
.woocommerce .woocommerce-info{
  border-top: 4px solid var(--blaz-info) !important;
}
.woocommerce .woocommerce-info::before{
  color: var(--blaz-info) !important;
}

/* ERROR */
.woocommerce .woocommerce-error{
  border-top: 4px solid var(--blaz-error) !important;
}
.woocommerce .woocommerce-error::before{
  color: var(--blaz-error) !important;
}

/* Buttons inside notices (e.g., View cart) */
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-error .button{
  background: var(--blaz-accent) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 12px !important;
  font-weight: 800 !important;
  padding: 10px 14px !important;
}
.woocommerce .woocommerce-message .button:hover,
.woocommerce .woocommerce-info .button:hover,
.woocommerce .woocommerce-error .button:hover{
  filter: brightness(.95);
}

/* If your theme adds a green outline somewhere on notice wrappers */
.woocommerce-notices-wrapper *{
  outline-color: var(--blaz-accent);
}

/* Disable WooCommerce product image zoom */
.woocommerce div.product .woocommerce-product-gallery__trigger,
.woocommerce div.product .zoomImg{
  display: none !important;
}

.woocommerce div.product .woocommerce-product-gallery img{
  pointer-events: none;
}

/* Prevent Chrome scroll chaining on the map container */
#bcard-directory-map {
  overscroll-behavior: contain;
}

/* Ensure proper gesture handling on trackpads + touch */
#bcard-directory-map canvas {
  touch-action: pan-x pan-y;
}

.maplibregl-popup,
.maplibregl-popup-pane{
  z-index:999999 !important;
}
.elementor-section,
.elementor-widget-container{
  overflow:visible !important;
}

#bcard-directory-map{
  overflow:visible !important;
}

/* Stripe card container */
.wc-stripe-upe-element,
.wc-stripe-upe-element .StripeElement {
    background: #f5f5f5 !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 8px !important;
    padding: 10px !important;
    box-shadow: none !important;
}

/* Remove heavy Stripe box shadow */
.wc-stripe-upe-element iframe {
    border-radius: 8px !important;
}

/* Match spacing */
.wc-stripe-upe-element {
    margin-bottom: 20px !important;
}

/* Save payment box */
.woocommerce-SavedPaymentMethods-saveNew {
    background: #f5f5f5;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    padding: 10px;
}
.wc-stripe-upe-element {
    border: none !important;
}
.wc_payment_method label {
    font-weight: 600;
    font-size: 12px;
    color: #0f6b6f; /* match your teal */
}
.wc-stripe-upe-element {
    min-height: 120px;
}
/* Remove border around Stripe payment method */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Remove border from payment methods wrapper */
.woocommerce-checkout #payment ul.payment_methods {
    border: none !important;
}

/* Remove Stripe inner box border just in case */
.woocommerce-checkout .payment_method_stripe .payment_box {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Remove Stripe UPE fieldset border */
.woocommerce-checkout #wc-stripe-upe-form {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Safety: remove any fieldset borders inside payment */
.woocommerce-checkout #payment fieldset {
    border: none !important;
}

.woocommerce-checkout #payment ul.payment_methods li input {
    margin: 0 0.1em 0 0;
    
}

.bcard-logo-note { color: #ff0064; font-weight: 600
    
}
  {
    padding-left: 8px;
    padding-right: 8px;
  }
.bcard-divider-title{
  padding-top: 15px;
}/* End custom CSS */