@font-face {
font-family: 'Makita Sans';
src: url('https://store-media.mpowerpromo.com/66915dbe3eb07647f8427df7/assets/MakitaSansVF_W_WghtWdth-1758145247174.woff2') format('woff2-variations');

font-weight: 100 900; /* Weight: From Hair (100) to Black (900) */
font-stretch: 75% 125%; /* Width: From Condensed (75%) to Extended (125%) */
font-style: normal;
}

html {
scroll-behavior: smooth !important;
}

h1, h2 {
font-family: 'Makita Sans', sans-serif;
font-weight: 700;
}

h3 {
font-family: 'Makita Sans', sans-serif;
font-weight: 500;
}

body, h4, h5, h6 {
font-family: 'Makita Sans', sans-serif;
font-weight: 400;
}

body {
text-transform: uppercase;
}

a, button, .btn {
text-transform: uppercase !important;
}

#nav-modal, #nav-modal .modal-content {background-color:#008290 !important}
#nav-modal .close{color:#ffffff !important; opacity:1 !important;}

.section__title {
display: block;
max-width: 440px !important;
margin: 0 auto 24px;
position: relative;
text-align: center;
}

.page_title::after {
content: '';
position: absolute;
display: block;
width: 50px;
height: 4px;
background-color: #008290 !important;
left: 50%;
transform: translateX(-50%);
margin-top: 1.5rem;
}

.image-gallery {
display: flex;
overflow-x: auto;
gap: 15px;
scroll-snap-type: x mandatory;
-webkit-overflow-scrolling: touch;
padding-left: 15px;
padding-right: 15px;
scroll-padding-left: 30px;
}

.image-gallery::-webkit-scrollbar {
display: none;
}

.image-item {
flex: 0 0 80%;
overflow: hidden;
aspect-ratio: 1 / 1;
scroll-snap-align: start;
border-radius: 8px;
}

.image-item img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.3s ease-in-out;
}

.image-item:hover img {
transform: scale(1.05);
}

.pagination-dots-static .dot:first-child {
background-color: #333;
}

@media (min-width: 768px) {
.image-gallery {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 20px;
padding: 20px;
background-color: #fff;
border-radius: 8px;
overflow-x: hidden;
}

.image-item {
box-shadow: 0 2px 4px rgba(0,0,0,0.08);
}

.pagination-dots-static {
display: none;
}

.scroll-spacer {
display: none;
}

}

.hover-underline-animation {
display: inline-block;
position: relative;
color: white;
}

.hover-underline-animation::after {
content: '';
position: absolute;
width: 100%;
transform: scaleX(0);
height: 2px;
bottom: 0;
left: 0;
background-color: white;
transform-origin: bottom right;
transition: transform 0.25s ease-out;
}

.hover-underline-animation:hover::after {
transform: scaleX(1);
transform: translateY(-10px);
transform-origin: bottom left;
}

.fa-search:hover, .header-icons-hover-effect i:hover, .logo:hover{
opacity: 75%;
}

.desktop-header {
display: none;
}

.mobile-header {
display: block;
}

@media (min-width: 768px) {
.desktop-header {
display: block;
}

.mobile-header {
display: none;
}
}

.mobile-header:active{
opacity: 85%
}

.carousel-inner img:hover {
opacity: 90%;
cursor: pointer;
}

footer a:hover {
opacity: 85%;
text-decoration: underline !important;
}

.cards {
overflow: hidden;
width: 100%;
height: 100%;
aspect-ratio: 3 / 2;
}

@media (min-width: 768px) {
.cards {
aspect-ratio: 4 / 5; /* Switch to 4:5 ratio on desktop */
}
}

.card-img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease-in-out;
}

.card:hover .card-img:hover {
transform: scale(1.1);
}

header[id="nav-modal___BV_modal_header_"] > h5::after {
content: "";
display: inline-block;
width: 120px; /* adjust */
height: 40px; /* adjust */
background: url("https://store-media.mpowerpromo.com/66915dbe3eb07647f8427df7/assets/Makita-Logo-1755992681324.png") no-repeat center;
background-size: contain;
margin-left: 8px;
}

#nav-modal___BV_modal_body_ a.nav-link {
color: white;
text-transform: uppercase;
margin-bottom: .5rem;
font-weight: 700;
line-height: 1.2;
}

ul[role="menu"].dropdown-menu.mt-0{
font-size: .875rem;
background-color: #008290 !important;
translate3d(0px, 55px, 0px) !important;
}

ul[role="menu"].dropdown-menu.mt-0 > a{
color: white;
}

ul[role="menu"].dropdown-menu.mt-0 > a:hover {
background-color: #03a9bb !important;
}

span.hover-underline-animation div.dropdown.b-dropdown button.btn.dropdown-toggle{
text-decoration: none !important;
}


/*Product tagger badges*/
.cstm-badge {
    font-weight: 700 !important;
    font-size: 75% !important;
    padding: .25em .4em !important;
    white-space: nowrap !important;
}

/* Maintain proper spacing between badges in the cart */
.cstm-badge-wrapper .badge + .badge {
    margin-left: 0.25rem !important;
}

/* Speed optimization: hardware acceleration */
.cstm-badge-wrapper {
    will-change: contents;
}


.header-title::after {
    content: "";
    width: 56px;
    height: 8px;
    background: #008290;
    position: absolute;
    left: 0;
    bottom: 0;
}

/*Account Progress Bar Color Overrides*/
div.progress-bar.bg-primary {
background-color: #4a4a4a !important;
}

/*Remove Clear All Filters Button From Categories*/
a[data-cy="clear-all-filters"], [data-cy="inventory-filter"]{
	visibility: hidden;
}

h4#productDecorationTotal{
	visibility: hidden;
}

/*Used to change the placement of the product page elements*/

/* Target the specific div parent that houses the skeletons */
div.col-md-6.pt-2 div:has(.product-pricing-skeleton) {
    display: flex !important;
    flex-direction: column !important;
}

/* Move Pricing to the second position */
.product-pricing-skeleton {
    order: 2 !important;
}

/* Move Decoration (Screen Print/Method) to the first position */
.product-decoration-skeleton {
    order: 1 !important;
    margin-bottom: 1.5rem !important; /* var(--spacer-3) equivalent */
}

/* Ensure Quantity stays at the bottom */
.product-quantity-skeleton {
    order: 3 !important;
}

.product-buttons-skeleton {
    order: 4 !important;
}

/*Updating product description tab names for co-branded products*/
.description-1::before {
  content: "Co-Brand Info";
}

.description-1 {
  font-size: 0;
}

.description-1::before {
  font-size: 1rem;
}

@media (min-width: 1330px) {
	    .d-lg-inline-block-new {
        display: inline-block !important;
    }
	div.navbar-logo-container>a:first-child{
		display: none !important;
	}
}

@media (max-width: 1330px) {
	    .d-lg-none-new {
        display: none !important;
    }
		div.navbar-logo-container>a{
		display: inline-block !important;
	}
}


/*Making All Pages Full Height*/
#__layout > div, 
#__layout > div > div {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 0 auto !important;
    height: auto !important; 
}

div:has(> [data-id="mPower-Cart1"]) {
    flex-grow: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    /* Use the JS variable; fallback to your measured 324px */
    min-height: calc(100vh - var(--navbar-footer-offset, 324px)) !important;
}


footer.fdb-block.footer-large {
    margin-top: auto !important;
    flex-shrink: 0 !important;
    width: 100% !important;
    background-color: var(--secondary) !important;
}

/*Pre-Order page changes*/
#preorder-countdown-wrapper .h2 {
    font-weight: 700 !important;
    line-height: 1 !important;
}

#preorder-countdown-wrapper small {
    font-size: 0.65rem !important;
    font-weight: 700 !important;
    color: var(--secondary) !important;
    letter-spacing: 0.5px;
}








/* Precise Alignment for PDP Badge Row */

/* 1. Standardize the pill container and text */
.pdp-cstm-badge.badge-primary,
.product-item-details .badge-success,
.product-item-details .badge-warning {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 20px !important; /* Forces pixel-perfect horizontal leveling */
    vertical-align: middle !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}