/*Category Banner Changes - Ben*/

/* Climate HVAC promotional product badges */
.product-label.sale-label + .climate-product-badge-label {
    margin-left: 50px;
}

.climate-product-badge-label > .climate-product-badge[data-badge] {
    align-items: center;
    border: 2px solid #ffffff;
    border-radius: 50%;
    box-shadow: 0 3px 9px rgba(13, 66, 89, 0.24), inset 0 1px 1px rgba(255, 255, 255, 0.32);
    box-sizing: border-box;
    color: #ffffff;
    display: inline-flex;
    flex-direction: column;
    font-family: inherit;
    font-size: 9px;
    font-weight: 600;
    height: 58px;
    justify-content: center;
    letter-spacing: 0.02em;
    line-height: 1.02;
    padding: 5px;
    text-align: center;
    text-transform: uppercase;
    transform: rotate(-5deg);
    vertical-align: middle;
    white-space: normal;
    width: 58px;
}

.climate-product-badge[data-badge] > .climate-product-badge__icon {
    background-color: transparent;
    color: inherit;
    display: block;
    font-size: 12px;
    line-height: 1;
    margin: 0 0 3px;
    padding: 0;
}

.climate-product-badge[data-badge] > .climate-product-badge__text {
    background-color: transparent;
    color: inherit;
    display: block;
    font-size: inherit;
    font-weight: 600;
    line-height: 1.02;
    margin: 0;
    padding: 0;
}

.climate-product-badge[data-badge="top-seller"] {
    background: linear-gradient(145deg, #0d5978, #07384f);
}

.climate-product-badge[data-badge="new"] {
    background: linear-gradient(145deg, #12a18a, #087064);
}

.climate-product-badge[data-badge="trade-pick"] {
    background: linear-gradient(145deg, #2589b7, #0d5f88);
}

.climate-product-badge[data-badge="runout"] {
    background: linear-gradient(145deg, #ee5a31, #b92f18);
}

.climate-product-badge[data-badge="bulk-buy"] {
    background: linear-gradient(145deg, #ffc338, #d48608);
    color: #173747;
}

@media (max-width: 767px) {
    .climate-product-badge-label > .climate-product-badge[data-badge] {
        font-size: 8px;
        height: 50px;
        padding: 4px;
        width: 50px;
    }

    .climate-product-badge[data-badge] > .climate-product-badge__icon {
        font-size: 10px;
        margin-bottom: 2px;
    }
}
.banner-category {
    position: relative;
    width: 100%;
    max-width: 100%;
    text-align: center; /* Center text horizontally */
    overflow: hidden;
}
.banner-category .banner-category-heading-box {
    position: absolute;
    bottom: 50%; /* Center box vertically */
    left: 50%; /* Center box horizontally */
    transform: translate(-50%, 50%);
    background-color: rgba(255, 255, 255, 0.9);
    border-radius: 4px;
    padding: 20px 0 20px 0;
    width: 60%;
    text-align: center; /* Center text horizontally inside the box */
}
@media (max-width: 768px) {
  .banner-category .banner-category-heading {
    font-size: calc (1rem + 2dvw);
  }
  .banner-category .banner-category-heading-box{
    width: 102%;
    border-radius: 0;
    max-height: 60%;
    padding: 0 10px 0 10px;
  }
}
/*css for subcategory lists on subcategory pages - Ben*/
.push-right {
  position: relative;
  right: 0;
  transition: right ease 0.5s;
}
.push-right:hover {
  right: -5px;
}

.btn-primary-text {
    color: rgb(19, 110, 153);
    
}
.btn-primary-text:hover {
    color: #2e6da4;
}
/*Product Page Zoomed Image Fix*/
.zoomImg {
     background-color: white;
}
  /* fix for the white space issue */
 .category-images {
  position: relative;
 }
  .category-images > a {
  position: relative;
 }
  .category-images > a > p {
  position: absolute;
  bottom: 0;
  left: 0;
  width:100%;
  margin: 0;
  }
  
 /*Commercial & Residential Headings on the Home Page - Ben*/
.home-cat-header-cont {
    padding: 8px;
    text-align: center;
    color: #000;
    font-size: 1.2rem;
    font-weight: 500;
    background: #fff;
    transition: background-color 0.5s ease, color 0.5s ease;
    text-transform: uppercase;
    margin: 0 0 1px 0;
}

/*Custom brand grid for search results and category pages*/
.dropdown-option {
    color: #545454;
    font-weight: 500;
}
.custom-brand-grid {
    display: flex;
    justify-content: center;
    padding: 0px!important;
}
.custom-brand-grid::before {
    content: none!important;
}
.custom-brand-align::before {
    content: none!important;
}

.custom-brand-align {
    display: grid;
    gap: 20px;
    box-sizing: border-box;
    margin: 0;
    padding: 0px!important;
}

@media (min-width: 1024px) {
    .custom-brand-align {
        grid-template-columns: repeat(6, 1fr);
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .custom-brand-align {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (min-width: 451px) and (max-width: 767px) {
    .custom-brand-align {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (max-width: 450px) {
    .custom-brand-align {
        grid-template-columns: repeat(2, 1fr);
    }
}
.custom-brand-align > a {
    width: 100%; 
    border: 1px solid #ddd;
    border-radius:4px;
    background-color: #fff;
    padding: 15px;
    display: flex;
    align-items: center;
    transition: box-shadow 0.1s;
}
.custom-brand-align > a:hover {
    border-color: #ddd;
    outline: 0;
    -webkit-box-shadow: inset 0 0 8px rgba(102, 175, 233, 0.6);
    box-shadow: inset 0 0 8px rgba(102, 175, 233, 0.6);
}

/*added elipsis to the end of product thumbnail titles*/
.thumbnail .caption .title-price a {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -ms-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/*Brand Dropdown Box Styling - to make it look similar to the chrome default select style*/
.custom-dropdown {
    position: relative;
    display: inline-block;
    width: 100%; /* Make it responsive */
    border-radius: 4px;
    border: 1px solid #ccc;
    font-size: 14px;
    background-color: white;
}

.selected-option {
    display: flex;
    /*align-items: center;*/
    justify-content: space-between;
    padding: 5px 5px 5px 8px;
    cursor: pointer;
    border-radius: 4px;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    background-color: #fff;
    color: #333;
    font-size: 14px;
}
.custom-dropdown:focus, .custom-dropdown:hover {
    -webkit-box-shadow: inset 0 0 8px rgba(102, 175, 233, 0.6);
    box-shadow: inset 0 0 0 8px rgba(102, 175, 233, 0.6);
    border-color: #66afe9;
    -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.custom-dropdown:focus-within .dropdown-options, .custom-dropdown:hover .dropdown-options {
    display: block;
}

.selected-option .dropdown-arrow {
    font-size: 14px;
    color: #333;
}

/* Dropdown Options */
.dropdown-options {
    display: none;
    position: absolute;
    top: 100%;
    margin-top: 1px;
    text-align: left;
    left: 0;
    right: 0;
    border: 1px solid #ccc;
    border-radius: 9px;
    background-color: #fff;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    z-index: 999;
    max-height: 200px;
    overflow-y: auto;
}

.custom-dropdown.open .dropdown-options {
    display: block;
}

.dropdown-option {
    padding: 5px;
    cursor: pointer;
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; /* Hide text that overflows */
    /*border-bottom: 1px solid #f1f1f1;*/
}

.dropdown-option:hover {
    background-color: #1967d2;
    color: white;
}

@media (max-width: 767px) {
    .custom-dropdown {
        width: 100%;
    }

    .dropdown-options {
        width: 100%;
    }

    .selected-option {
        width: 100%;
    }
}

/*Fix to prevent horizontal scrolling of the whole webpage on safari - BF*/

html {
  overflow-x: hidden;
}
body, html {
  width: 100%;
}

/*Fix padding on left and right side of screen on mobile - added to divs that broke specifically on mobile screens usually by .row*/
@media screen and (max-width: 767px) {
.container-small {
  padding-right: 5px;
  padding-left: 5px;
}
}

/*above was moved from the app.css file to the custom.css file - BF*/

/* space between wholesale form and footer */
#adduser {
    margin-bottom: 25px;
}
.caption .price {
	margin-bottom: 10px;
}
.title-price  {
	height: 165px; /* Changed from 159px to 165px, added those pixels to the margin below h3 thumb title - BF */ 
}
.thumb-btns {
	height: 34px;
}
.wrap-prod-msg {
	text-align: center;
}
.wrap-prod-msg img {
	max-width: 100%;
	width: auto !important;
	height: auto !important;
}

/* Disable popup checkout */
/*
.thumb_cart button.checkout {
    display: none;
}
.npopup-checkout {
    display: none;
}
*/
.thumb_cart button.checkout {
          display: none;
      }
      .npopup-checkout {
          display: none;
      }

/*above was moved from the syle.css file to the custom.css file - BF*/

.store-finder-section {
    padding: 5px;
    border: 1px solid #ddd;
    border-radius: 4px;
    transition: box-shadow 0.1s, background-color 0.2s, border 0.1s;
}
.store-finder-left {
    padding: 5px 10px;   
}
.store-finder-right {
    padding-top: 5px; 
    padding-right: 5px;
}
.store-finder-right > iframe {
    border-radius: 4px;
}
@media (max-width: 767px) {
.store-finder-left img {
    display: none;
}
}
@media (min-width: 768px) {
.store-finder-section:hover {
    /*outline: 0;*/
    -webkit-box-shadow: inset 0 0 8px rgba(102, 175, 233, 0.6);
    box-shadow: inset 0 0 8px rgba(102, 175, 233, 0.6);
    background-color: #fafafe;
    border: 1px solid #888;
}
}
.store-finder-image {
    width: 100%;
    height: 280px;
    box-shadow: inset 100em 100em #00000030;
    border-radius: 4px;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position-y: center;
    margin-bottom: 10px;
    align-content: center;
    padding-left: 20px;
    padding-right: 20px;
}
.store-finder-image h2 a {
    color: white;
    font-weight: 600;
}
.store-finder-section iframe {
    border: 1px solid #ddd;
    transition: border 0.1s;
}
.store-finder-section iframe:hover {
    box-shadow: 0 0 8px rgba(102, 175, 233, 0.6);
    border: 1px solid #888;
}

/*The default padding was causing multiline display issues on specific tablet sizes, this overrides that behaviour - BF*/
.top-navbar-wrapper > .container {
    padding: 0px;
}

/*Normalized the above hover effects to use everywhere else on the site, remember to rename and remove class tags on the store-finder template and brand buttons when you have time - BF*/
.hover-inset {
    padding: 5px;
    border: 1px solid #ddd;
    border-radius: 4px;
    transition: box-shadow 0.1s, background-color 0.2s, border 0.1s;
}
@media (min-width: 768px) {
.hover-inset:hover {
    /*outline: 0;*/
    -webkit-box-shadow: inset 0 0 8px rgba(102, 175, 233, 0.6);
    box-shadow: inset 0 0 8px rgba(102, 175, 233, 0.6);
    background-color: #fafafe;
    border: 1px solid #888;
}
}
/*Placeholder for slow loading elements - BF*/
.bg-loading {
    background-image:url(/assets/images/Loading%20Background%20Image.png);
    background-position: center;
}
/*Installation Partners Page Design*/
.flip-card {
  background-color: transparent;
  width: 300px;
  height: 300px;
  perspective: 1000px;
}

.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  transition: transform 0.6s;
  transform-style: preserve-3d;
}

.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}

.flip-card-front, .flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flip-card-back {
    background-color: #0D4259;
    color: white;
    transform: rotateY(180deg);
    text-align: center;
    padding: 15px;
}
.store-finder-section .installation-partners-img {
    display: block;
}
.installation-partners-bordered{
    max-width: 100%;
}

@media (max-width:768px){
    .store-finder-section .installation-partners{
    text-align: center;
    justify-items: center;
    }
    .store-finder-left .installation-partners {
        justify-items: center;
    }
    .installation-partners-main {
        justify-items: center;
    }
}
@media (min-width:768px){
    .store-finder-right.installation-partners {
    padding-left: 20px;
}
}

.store-finder-right.installation-partners > * {
    line-height:1em;
}
