/* =====================================================
           GLOBAL
        ====================================================== */

:root {
	--gm-orange: #f29621;
	--gm-dark: #2c2c2c;
	--gm-dark-2: #202020;
	--gm-black: #111111;
	--gm-white: #ffffff;
	--gm-grey: #eeeeee;
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	font-family: "federoregular";
	font-weight: 400;
	font-style: normal;
	background: #fff;
	color: #2c2c2c;
	font-size: 14px;
}

p {
	font-weight: 400;
	font-style: normal;
}

a {
	text-decoration: none;
	color: #2c2c2c;
}

button {
	font-family: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6,
.gm-footer-contact strong {
	font-family: "Orbitron SemiBold";
}

.navigation, .mobile-navigation {
	font-family: "Orbitron Regular";
}

img {
	max-width: 100%;
}

.header-action img {
	width: 24px;
}

.container-fluid {
	max-width: 100%;
	margin: 0 auto;
	padding-left: 3.5%;
	padding-right: 3.5%;
}

/* =========================================================
   HEADER
========================================================= */

.gear-header {
	position: relative;
	width: 100%;
	background: var(--gm-dark);
	z-index: 9999;
}

.header-main {
	min-height: 175px;
	display: flex;
	align-items: center;
	width: 100%;
	flex-wrap: wrap;
}

.header-inner {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	flex-wrap: wrap;
}

/* =========================================================
   LOGO
========================================================= */

.gear-logo {
	flex: 0 0 190px;
	display: block;
}

.gear-logo img {
	display: block;
	width: 175px;
	height: auto;
}

/* =========================================================
   HEADER RIGHT
========================================================= */

.header-right {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	max-width: 82%;
}

/* =========================================================
   PHONE
========================================================= */

.contact-row {
	display: flex;
	align-items: center;
	margin-bottom: 23px;
}

.phone a {
	color: #fff;
	font-size: 21px;
	line-height: 1;
	font-family: "Orbitron SemiBold";
}

.phone i {
	color: var(--gm-orange);
	margin-right: 10px;
	font-size: 21px;
}

/* =========================================================
   NAVIGATION
========================================================= */

.navigation {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.main-nav {
	list-style: none;
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
}

.main-nav > li {
	position: relative;
}

.main-nav > li > a {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 55px;
	padding: 0 6px;
	color: #fff;
	white-space: nowrap;
	transition: 0.3s ease;
}

.main-nav > li > a:hover {
	color: var(--gm-orange);
}

/* =========================================================
   ORANGE ACTIVE / HOVER LINE
========================================================= */

.main-nav > li > a::after, .main-nav li.active > a::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 0;
	height: 4px;
	background: var(--gm-orange);
	transform: translateX(-50%);
	transition: 0.3s ease;
}

.main-nav > li:hover > a::after, .main-nav li.active > a::after {
	width: calc(100% - 36px);
}

/* =========================================================
   HEADER ACTIONS
========================================================= */

.header-actions {
	display: flex;
	align-items: center;
	gap: 4px;
	margin-left: 20px;
}

.header-action {
	position: relative;
}

.header-icon {
	position: relative;
	width: 35px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--gm-orange);
	font-size: 20px;
	cursor: pointer;
	transition: 0.3s ease;
}

.header-icon:hover {
	color: #fff;
}

/* =========================================================
   CART COUNT
========================================================= */

.cart-count {
	position: absolute;
	top: 0;
	right: -6px;
	min-width: 17px;
	height: 17px;
	padding: 0 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--gm-orange);
	color: #111;
	border-radius: 50%;
	font-family: Arial, sans-serif;
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
}

/* =========================================================
   REQUEST QUOTE
========================================================= */

.quote-btn {
	width: 270px;
	height: 47px;
	margin-left: 60px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 17px 0 27px;
	border: 2px solid var(--gm-orange);
	color: #fff;
	transition: 0.3s ease;
}

.quote-btn i {
	font-size: 21px;
}

.quote-btn:hover {
	background: var(--gm-orange);
	color: #111;
}

/* =========================================================
   =========================================================
   DESKTOP SIMPLE DROPDOWN
   =========================================================
========================================================= */

@media (min-width: 992px) {
	.main-nav > li.has-simple-menu {
		position: relative;
	}

	.desktop-navigation .simple-menu {
		position: absolute;
		top: 94%;
		left: 0;
		min-width: 250px;
		padding: 12px 0;
		background: #fff;
		border-top: 3px solid var(--gm-orange);
		box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: translateY(10px);
		transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
		z-index: 99999;
	}

	.desktop-navigation .main-nav > li.has-simple-menu:hover > .simple-menu {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: translateY(0);
	}

	.desktop-navigation .simple-menu a {
		display: block;
		padding: 11px 22px;
		color: #2c2c2c;
		font-size: 14px;
		white-space: nowrap;
		transition: background 0.2s ease, color 0.2s ease;
	}

	.desktop-navigation .simple-menu a:hover {
		background: #f5f5f5;
		color: var(--gm-orange);
	}
}

/* =========================================================
   =========================================================
   DESKTOP MEGA MENU
   =========================================================
========================================================= */

@media (min-width: 992px) {
  /*
       IMPORTANT:

       Mega menu parent is STATIC.

       This makes the mega menu position relative
       to .gear-header instead of individual LI.
    */

 

	.desktop-navigation .mega-menu {
		position: absolute;
		top: 93%;
		left: 220%;
		width: 50vw;
		padding: 30px 40px;
		background: #fff;
		border-top: 4px solid var(--gm-orange);
		box-shadow: 0 15px 40px rgba(0, 0, 0, 0.25);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: translateX(-50%) translateY(0);
		transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease;
		z-index: 99999;
	}

  /*
       OPEN ON HOVER
    */

	.desktop-navigation .main-nav > li.mega-parent:hover > .mega-menu {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

  /*
       MEGA CONTENT
    */

	.desktop-navigation .mega-menu .mega-grid {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
    /*gap: 20px;*/;
	}
}

/* =========================================================
   MEGA CARD
========================================================= */

.mega-card {
	display: block;
	background: #fff;
	color: #111;
	transition: 0.3s ease;
	padding: 20px;
}

.mega-card a:hover {
	color: var(--gm-orange);
	transform: translateY(-5px);
}

.mega-card-image {
	width: 100%;
	padding: 0;
	overflow: hidden;
	font-family: "Orbitron-Bold";
	color: #2c2c2c;
}

.mega-grid .mega-card:nth-child(1), .mega-grid .mega-card:nth-child(2), .mega-grid .mega-card:nth-child(3) {
	border-bottom: solid 1px #eee;
}

.mega-grid .mega-card:nth-child(1), .mega-grid .mega-card:nth-child(2), .mega-grid .mega-card:nth-child(4), .mega-grid .mega-card:nth-child(5) {
	border-right: solid 1px #eee;
}

.primarycolor {
	color: #f29621;
}

.primarycolor:hover, .mega-card a.primarycolor:hover {
	color: #2c2c2c;
}

.mega-card-image img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	transition: 0.4s ease;
}

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

.mega-card-title {
	margin-top: 12px;
	color: #2c2c2c;
}

.mega-card:hover .mega-card-title {
	color: var(--gm-orange);
}

/* =========================================================
   SUPPORT BOX
========================================================= */

.support-box {
	min-height: 180px;
	padding: 25px;
	background: #000;
	color: #fff;
}

.support-box h3 {
	margin: 0 0 20px;
	color: #fff;
	font-size: 27px;
	font-family: "Orbitron SemiBold";
}

.support-link {
	display: flex;
	align-items: center;
	gap: 3px;
	margin-bottom: 14px;
	color: #fff;
	transition: 0.3s ease;
}

.support-box a {
	font-family: "federoregular";
}

.support-link i {
	width: 22px;
}

.support-link:hover {
	color: var(--gm-orange);
}

/* =========================================================
   SEARCH BOX
========================================================= */

.search-box {
	position: absolute;
	top: calc(100% + 20px);
	right: 0;
	width: 360px;
	padding: 10px;
	background: #fff;
	border-top: 3px solid var(--gm-orange);
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.25);
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: 0.25s ease;
	z-index: 100000;
}

.search-box.show {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.search-box form {
	display: flex;
	width: 100%;
}

.search-box input {
	width: 100%;
	height: 48px;
	padding: 0 15px;
	border: 1px solid #ddd;
	outline: none;
	color: #2c2c2c;
	font-family: "Orbitron";
	font-size: 13px;
}

.search-box input:focus {
	border-color: var(--gm-orange);
}

.search-box button {
	width: 55px;
	flex-shrink: 0;
	border: 0;
	background: var(--gm-orange);
	color: #111;
	font-size: 18px;
	cursor: pointer;
}

/* =========================================================
   GEARMATE HEADER CART DROPDOWN
   ========================================================= */

.cart-wrapper {
    position: relative;
}

.cart-dropdown {
    position: absolute;
    top: calc(100% + 14px);
    right: 0;

    width: 355px;
    max-width: calc(100vw - 30px);

    background: #fff;

    border: 1px solid #e5e5e5;
    border-radius: 3px;

    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.16);

    z-index: 9999;

    overflow: hidden;

    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);

    transition:
        opacity .18s ease,
        visibility .18s ease,
        transform .18s ease;
}

.cart-wrapper:hover .cart-dropdown,
.cart-wrapper.cart-open .cart-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}


/* =========================================================
   CART HEADER
   ========================================================= */

.cart-dropdown .cart-header {
    height: 45px;

    padding: 0 14px;

    display: flex;
    align-items: center;

    border-bottom: 1px solid #e6e6e6;

    background: #fff;
}

.cart-dropdown .cart-header h4 {
    margin: 0;

    color: #202020;

    font-size: 12px;
    font-weight: 700;

    line-height: 1;
    text-transform: uppercase;
}

.cart-dropdown .cart-header span {
    margin-left: 10px;

    color: #555;

    font-size: 12px;
    font-weight: 400;
}


/* =========================================================
   CART ITEMS
   ========================================================= */

.cart-dropdown .cart-items {
    max-height: 220px;

    overflow-y: auto;

    background: #fff;
}

.cart-dropdown .cart-item {
    position: relative;

    display: grid;

    grid-template-columns: 55px 1fr auto;

    gap: 10px;

    padding: 13px 12px;

    border-bottom: 1px solid #eeeeee;

    background: #fff;
}


/* Remove button */

.cart-dropdown .cart-item-remove {
    position: absolute;

    top: 7px;
    left: 7px;

    width: 15px;
    height: 15px;

    padding: 0;

    border: 0;

    background: #ddd;

    color: #fff;

    font-size: 12px;
    line-height: 15px;

    text-align: center;

    cursor: pointer;

    z-index: 2;
}

.cart-dropdown .cart-item-remove:hover {
    background: #f7941d;
}


/* =========================================================
   PRODUCT IMAGE
   ========================================================= */

.cart-dropdown .cart-item-image {
    width: 55px;
    height: 65px;

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

    overflow: hidden;
}

.cart-dropdown .cart-item-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: contain;
}


/* =========================================================
   PRODUCT INFORMATION
   ========================================================= */

.cart-dropdown .cart-item-info {
    min-width: 0;

    padding-top: 1px;
}

.cart-dropdown .cart-item-name {
    margin: 0;

    color: #171717;

    font-size: 13px;
    font-weight: 500;

    line-height: 1.25;

    text-transform: uppercase;

    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;

    overflow: hidden;
}

.cart-dropdown .cart-item-sku {
    margin-top: 4px;

    color: #777;

    font-size: 10px;
}


/* =========================================================
   PRICE + QTY
   ========================================================= */

.cart-dropdown .cart-item-right {
    min-width: 82px;

    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-start;

    gap: 8px;
}

.cart-dropdown .cart-item-price {
    color: #222;

    font-size: 13px;
    font-weight: 700;

    white-space: nowrap;
}


/* =========================================================
   QUANTITY CONTROL
   ========================================================= */

.cart-dropdown .cart-item-qty {
    display: flex;
    align-items: stretch;

    height: 28px;

    border: 1px solid #d8d8d8;

    background: #fff;
}

.cart-dropdown .cart-item-qty input {
    width: 30px;

    padding: 0;

    border: 0;

    background: #fff;

    color: #222;

    font-size: 12px;

    text-align: center;

    outline: none;
}

.cart-dropdown .cart-item-qty button {
    width: 22px;

    padding: 0;

    border: 0;

    background: #fff;

    color: #777;

    font-size: 13px;

    cursor: pointer;
}

.cart-dropdown .cart-item-qty button:hover {
    color: #f7941d;
}


/* =========================================================
   CART FOOTER
   ========================================================= */

.cart-dropdown .cart-footer {
    padding: 15px;

    background: #fff;

    border-top: 1px solid #e7e7e7;
}


/* subtotal */

.cart-dropdown .cart-total {
    display: flex;

    align-items: center;
    justify-content: space-between;

    margin-bottom: 12px;
}

.cart-dropdown .cart-total span {
    color: #777;

    font-size: 13px;
    font-weight: 600;

    text-transform: uppercase;
}

.cart-dropdown .cart-total strong {
    color: #222;

    font-size: 14px;
    font-weight: 700;
}


/* =========================================================
   VIEW / EDIT CART
   ========================================================= */

.cart-dropdown .cart-link {
    width: 100%;

    height: 27px;

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

    margin-bottom: 7px;

    border: 1px solid #222;
    border-radius: 15px;

    background: #fff;

    color: #222;

    font-size: 11px;
    font-weight: 700;

    text-decoration: none;

    text-transform: uppercase;
}

.cart-dropdown .cart-link:hover {
    background: #222;

    color: #fff;
}


/* =========================================================
   CHECKOUT
   ========================================================= */

.cart-dropdown .checkout-btn {
    width: 100%;

    height: 29px;

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

    border-radius: 15px;

    background: linear-gradient(
        90deg,
        #ff7900 0%,
        #ffc400 100%
    );

    color: #fff;

    font-size: 11px;
    font-weight: 700;

    text-decoration: none;

    text-transform: uppercase;

    box-shadow: none;
}

.cart-dropdown .checkout-btn:hover {
    background: linear-gradient(
        90deg,
        #ed6900 0%,
        #f2b600 100%
    );
}


/* Hide arrow in this compact cart design */

.cart-dropdown .checkout-btn .arrow-right {
    display: none;
}


/* =========================================================
   EMPTY CART
   ========================================================= */

.cart-dropdown .cart-empty {
    padding: 35px 15px;

    text-align: center;

    color: #777;

    font-size: 13px;
}

.cart-dropdown .cart-empty i {
    display: block;

    margin-bottom: 8px;

    font-size: 25px;
}

.cart-dropdown .cart-empty p {
    margin: 0;
}


/* =========================================================
   SCROLLBAR
   ========================================================= */

.cart-dropdown .cart-items::-webkit-scrollbar {
    width: 4px;
}

.cart-dropdown .cart-items::-webkit-scrollbar-track {
    background: #f5f5f5;
}

.cart-dropdown .cart-items::-webkit-scrollbar-thumb {
    background: #bbb;
}

.cart-dropdown .cart-items::-webkit-scrollbar-thumb:hover {
    background: #999;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 575px) {

    .cart-dropdown {
        position: fixed;

        top: 70px;
        right: 10px;
        left: 10px;

        width: auto;
        max-width: none;
    }

}

/* =========================================================
   MOBILE TOGGLE
========================================================= */

.mobile-toggle {
	display: none;
	width: 45px;
	height: 45px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #fff;
	font-size: 25px;
	cursor: pointer;
}

.mobile-navigation {
	display: none;
}

/* =========================================================
   =========================================================
   MOBILE
   =========================================================
========================================================= */

@media (max-width: 991px) {
	
	.mega-grid .mega-card {
		border: none;
	}

	.header-main {
		min-height: 85px;
	}

	.header-inner {
		gap: 15px;
	}

	.gear-logo {
		flex: 0 0 auto;
	}

	.gear-logo img {
		width: 145px;
	}

	.header-right {
		flex: 0 0 auto;
		flex-direction: row;
		align-items: center;
	}

	.contact-row {
		display: none;
	}

  /*
       Keep header-actions visible
       on mobile.
    */

	.navigation {
		width: auto;
	}

	.desktop-navigation {
		display: flex;
		width: auto;
	}

  /*
       Hide desktop menu.
    */

	.desktop-navigation .main-nav {
		display: none;
	}

  /*
       Hide quote on mobile.
    */

	.desktop-navigation .quote-btn {
		display: none;
	}

  /*
       Search and cart remain visible.
    */

	.header-actions {
		margin-left: 0;
		gap: 10px;
	}

	.mobile-toggle {
		display: flex;
		align-items: center;
		justify-content: center;
	}

  /* =====================================================
       MOBILE NAVIGATION
    ====================================================== */

	.mobile-navigation {
		background: var(--gm-dark-2);
		padding: 10px 20px 25px;
	}

	.mobile-navigation .main-nav {
		display: block;
		width: 100%;
	}

	.mobile-navigation .main-nav > li {
		position: relative;
		display: block;
		border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	}

	.mobile-navigation .main-nav > li > a {
		min-height: 52px;
		padding: 0px 18px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		color: #fff;
		font-size: 14px;
	}

	.mega-grid .mega-card {
		border-right: none;
	}

	.mobile-navigation .main-nav > li > a::after {
		display: none;
	}

  /* =====================================================
       MOBILE SIMPLE MENU + MEGA MENU
    ====================================================== */

	.mobile-navigation .simple-menu,
  .mobile-navigation .mega-menu {
		position: static !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		min-width: 0 !important;
		margin: 0;
		padding: 0;
		background: transparent;
		border: 0;
		box-shadow: none;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: none;
		display: none;
	}

  /*
       Show menu when .menu-open
    */

	.mobile-navigation .menu-open > .simple-menu,
  .mobile-navigation .menu-open > .mega-menu {
		display: block;
	}

  /* =====================================================
       MOBILE SIMPLE MENU
    ====================================================== */

	.mobile-navigation .simple-menu a {
		display: block;
		padding: 10px 15px;
		color: #fff;
		font-size: 13px;
		border-top: 1px solid rgba(255, 255, 255, 0.06);
	}

	.mobile-navigation .simple-menu a:hover {
		color: var(--gm-orange);
		background: rgba(255, 255, 255, 0.05);
	}

  /* =====================================================
       MOBILE MEGA GRID
    ====================================================== */

	.mobile-navigation .mega-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 4px;
	}



  /* =====================================================
       MOBILE MEGA CARD
    ====================================================== */

	.mobile-navigation .mega-card {
		display: block;
		background: #fff;
		color: #111;
	}

	.mobile-navigation .mega-card-image {
		width: 100%;
		padding: 3px 10px;
		overflow: hidden;
	}

	.mobile-navigation .mega-card-image img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.mobile-navigation .mega-card-title {
		padding: 8px 10px 0;
		margin: 0;
		color: #111;
		font-size: 13px;
	}

  /* =====================================================
       MOBILE SUPPORT
    ====================================================== */

	.mobile-navigation .support-box {
		grid-column: 1 / -1;
		min-height: auto;
		margin-top: 5px;
		padding: 20px;
	}

	.mega-card {
		padding: 0;
	}
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {
	.header-main {
		min-height: 110px;
	}

	.gear-logo img {
		width: 125px;
	}

	.header-actions {
		gap: 5px;
	}

	.header-icon {
		width: 32px;
	}

	.mobile-toggle {
		width: 38px;
		font-size: 22px;
	}

  /* =====================================================
       SEARCH MOBILE
    ====================================================== */

	.search-box {
		position: fixed;
		top: 75px;
		left: 10px;
		right: 10px;
		width: auto;
	}

  /* =====================================================
       CART MOBILE
    ====================================================== */

	.cart-dropdown {
		position: fixed;
		top: 75px;
		left: 10px;
		right: 10px;
		width: auto;
	}

	.mobile-navigation .mega-card-image {
		height: auto;
	}

	.mobile-navigation .mega-card-title {
		font-size: 12px;
	}
}

/* =========================================================
   TABLET DESKTOP MENU
========================================================= */

@media (min-width: 992px) and (max-width: 1199px) {
	.gear-logo {
		flex: 0 0 150px;
	}

	.gear-logo img {
		width: 145px;
	}

	.main-nav > li > a {
		padding: 0 8px;
		font-size: 12px;
	}

	.quote-btn {
		width: 210px;
		height: 50px;
		font-size: 13px;
	}

	.mega-menu .mega-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.mega-card-image {
		height: 150px;
	}
}






/* =========================================================
   GEARMATE MOBILE / TABLET MENU
   Main Menu â†’ Sub Menu â†’ Sub-to-Sub Menu
   Desktop remains untouched
========================================================= */

@media (max-width: 991.98px) {

    /* -----------------------------------------------------
       MOBILE MAIN MENU
    ----------------------------------------------------- */

	.mobile-navigation {
		display: none !important;
		width: 100%;
		background: #111;
		padding: 0px;
		position: relative;
		z-index: 9999;
	}

	.mobile-navigation.gm-mobile-open {
		display: block !important;
	}


    /* -----------------------------------------------------
       MAIN NAV
    ----------------------------------------------------- */

	.mobile-navigation .main-nav {
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.mobile-navigation .main-nav > li {
		width: 100%;
		margin: 0;
		padding: 0;
		border-bottom: 1px solid rgba(255,255,255,0.12);
	}


    /* -----------------------------------------------------
       MAIN MENU BUTTON
    ----------------------------------------------------- */

	.mobile-navigation .mobile-submenu-toggle {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 16px 20px;
		background: #111;
		color: #fff;
		border: 0;
		text-decoration: none;
		font-size: 15px;
		font-weight: 600;
		cursor: pointer;
	}

	.mobile-navigation .mobile-submenu-toggle:hover {
		color: #f7941d;
	}

	.mobile-navigation .mobile-submenu-toggle i {
		color: #f7941d;
		font-size: 14px;
		transition: transform 0.25s ease;
	}


    /* -----------------------------------------------------
       MAIN SUBMENU
    ----------------------------------------------------- */

	.mobile-navigation .simple-menu,
    .mobile-navigation .mega-menu {
		display: none;
		width: 100%;
		background: #1b1b1b;
	}

	.mobile-navigation
    .main-nav > li.menu-open
    > .simple-menu,

    .mobile-navigation
    .main-nav > li.menu-open
    > .mega-menu {
		display: block;
	}


    /* -----------------------------------------------------
       SIMPLE MENU LINKS
    ----------------------------------------------------- */

	.mobile-navigation .simple-menu {
		padding: 0;
	}

	.mobile-navigation .simple-menu a {
		display: block;
		padding: 12px 20px;
		color: #ddd;
		background: #1b1b1b;
		text-decoration: none;
		font-size: 14px;
		transition: background 0.25s ease,
            color 0.25s ease,
            padding-left 0.25s ease;
	}

	.mobile-navigation .simple-menu a:hover {
		color: #f7941d;
		background: #222;
		padding-left: 35px;
	}


    /* -----------------------------------------------------
       MEGA GRID
    ----------------------------------------------------- */
 

	.mobile-navigation .mega-grid {
		display: grid;
		grid-template-columns: 1fr;
		gap: 2px;
	}


    /* -----------------------------------------------------
       MEGA CARD
    ----------------------------------------------------- */

	.mobile-navigation .mega-card {
		width: 100%;
		margin: 0;
		background: #222;
		overflow: hidden;
	}

	.mega-grid .mega-card:nth-child(1), .mega-grid .mega-card:nth-child(2), .mega-grid .mega-card:nth-child(4), .mega-grid .mega-card:nth-child(5) {
		border-right: none;
	}

	.mega-grid .mega-card:nth-child(1), .mega-grid .mega-card:nth-child(2), .mega-grid .mega-card:nth-child(3) {
		border-bottom: none;
	}

    /* -----------------------------------------------------
       CARD IMAGE / TITLE
    ----------------------------------------------------- */

	.mobile-navigation .mega-card-image {
		min-height: 70px;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 15px;
		background: #292929;
		color: #fff;
		font-family: "Orbitron", sans-serif;
		font-size: 13px;
		font-weight: 600;
	}

	.mobile-navigation .mega-card-image img {
		width: 100%;
		height: auto;
		display: block;
	}

	.mobile-navigation .mega-card-title {
		padding: 0;
	}


    /* -----------------------------------------------------
       SUB-TO-SUB BUTTON
    ----------------------------------------------------- */

	.mobile-navigation .mobile-sub-submenu-toggle {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 14px 16px;
		border: 0;
		background: #222;
		color: #fff;
		text-align: left;
		cursor: pointer;
		font-size: 14px;
		font-weight: 600;
	}

	.mobile-navigation .mobile-sub-submenu-toggle:hover {
		color: #f7941d;
	}

	.mobile-navigation .mobile-sub-submenu-toggle i {
		color: #f7941d;
		font-size: 13px;
	}


    /* -----------------------------------------------------
       SUB-TO-SUB MENU
    ----------------------------------------------------- */

	.mobile-navigation .mobile-sub-submenu {
		display: none;
		background: #151515;
		border-top: 1px solid rgba(255,255,255,0.08);
	}

	.mobile-navigation
    .mega-card.submenu-open
    .mobile-sub-submenu {
		display: block;
	}


    /* -----------------------------------------------------
       SUB-TO-SUB LINKS
    ----------------------------------------------------- */

	.mobile-navigation .mobile-sub-submenu a {
		display: block;
		padding: 11px 20px;
		color: #ccc;
		background: #222;
		border-top: 1px solid rgba(255,255,255,0.1);
		text-decoration: none;
		font-size: 13px;
		transition: color 0.25s ease,
            background 0.25s ease,
            padding-left 0.25s ease;
	}
	.mobile-navigation .mobile-sub-submenu a.primarycolor {
		color: #f29621;
	}
	.mobile-navigation .mobile-sub-submenu a:hover {
		color: #f7941d;
		background: #202020;
		padding-left: 25px;
	}


    /* -----------------------------------------------------
       HAMBURGER
    ----------------------------------------------------- */

	.mobile-toggle {
		border: 0;
		background: transparent;
		color: #fff;
		font-size: 22px;
		padding: 5px 10px;
		cursor: pointer;
	}

	.mobile-toggle:hover {
		color: #f7941d;
	}


    /* -----------------------------------------------------
       SMOOTH OPENING
    ----------------------------------------------------- */

	.mobile-navigation .simple-menu,
    .mobile-navigation .mega-menu,
    .mobile-navigation .mobile-sub-submenu {
		animation: gmMobileMenuFade 0.25s ease;
	}

    @	keyframes gmMobileMenuFade {
		from {
            opacity: 0;
		transform: translateY(-4px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

}


/* =========================================================
   TABLET
========================================================= */

@media (min-width: 576px) and (max-width: 991.98px) {

	.mobile-navigation .mega-grid {
		grid-template-columns: repeat(1, 1fr);
		gap: 2px;
	}

	.mobile-navigation.gm-mobile-open {
		margin-top: 6px;
	}
}








/* =========================================================
   SEARCH POPUP
========================================================= */

.search-wrapper {
	position: relative;
}

.search-box {
	position: absolute;
	top: calc(100% + 18px);
	right: 0;
	width: 380px;
	padding: 12px;
	background: #ffffff;
	border-top: 3px solid var(--gm-orange);
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.25);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(10px);
	transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease;
	z-index: 100000;
}

/* OPEN */

.search-box.show {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
}

/* FORM */

.search-box form {
	display: flex;
	width: 100%;
}

/* INPUT */

.search-box input {
	flex: 1;
	width: 100%;
	height: 52px;
	padding: 0 16px;
	border: 1px solid #ddd;
	outline: none;
	color: #2c2c2c;
	background: #fff;
	font-family: "Orbitron";
	font-size: 13px;
}

.search-box input:focus {
	border-color: var(--gm-orange);
}

/* SEARCH BUTTON */

.search-box button {
	width: 58px;
	height: 52px;
	flex-shrink: 0;
	border: 0;
	background: var(--gm-orange);
	color: #111;
	font-size: 18px;
	cursor: pointer;
	transition: 0.25s ease;
}

.search-box button:hover {
	background: #111;
	color: #fff;
}

/* =========================================================
   MOBILE SEARCH
========================================================= */

@media (max-width: 575px) {
	.search-box {
		position: fixed;
		top: 75px;
		left: 10px;
		right: 10px;
		width: auto;
		z-index: 100000;
	}
}

/* =========================================================
   BANNER SECTION
========================================================= */

.gm-banner-section {
	width: 100%;
	background: var(--gm-dark);
	padding: 20px 0 50px 0;
	overflow: hidden;
}

/* =========================================================
   CONTAINER
========================================================= */

.gm-banner-container {
	width: 100%;
	padding-left: 3%;
	padding-right: 3%;
}

/* =========================================================
   CAROUSEL
========================================================= */

.gm-banner-carousel {
	position: relative;
	width: 100%;
}

/* =========================================================
   ROW
========================================================= */

.gm-banner-row {
	margin-left: 0;
	margin-right: 0;
}

/* =========================================================
   CARD
========================================================= */

.gm-banner-card {
	position: relative;
	width: 100%;
	min-height: 550px;
	display: flex;
	align-items: center;
	overflow: hidden;
	background-size: cover;
	background-position: center;
	isolation: isolate;
}
 
 
/* =========================================================
   DARK OVERLAY
========================================================= */

.gm-banner-overlay img {
	opacity: .3;
	height: 100%;
	object-fit: cover;
}

.gm-banner-overlay {
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(
    90deg,
    rgba(0, 0, 0, 0.78) 0%,
    rgba(0, 0, 0, 0.58) 55%,
    rgba(0, 0, 0, 0.4) 100%
  );
}

/* =========================================================
   EXTRA DARK BOTTOM
========================================================= */

.gm-banner-card::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.55) 0%, transparent 55%);
	pointer-events: none;
}

/* =========================================================
   CONTENT
========================================================= */

.gm-banner-content {
	width: 100%;
	max-width: 650px;
	padding: 150px 7% 100px;
	color: #fff;
}

/* =========================================================
   TITLE
========================================================= */

.gm-banner-title {
	margin: 0 0 25px;
	color: #fff;
	line-height: 1;
}

.gm-banner-title {
	font-size: 60px;
	font-family: "Orbitron-Bold";
}

/* =========================================================
   DESCRIPTION
========================================================= */

.gm-banner-description {
	max-width: 330px;
	margin: 60px 0;
	color: #fff;
	font-family: "federoregular";
	font-size: 20px;
	line-height: 1.35;
}

/* =========================================================
   BUTTON
========================================================= */

.gm-banner-button {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #f29621;
	color: #fff;
	transition: background 0.3s ease, transform 0.3s ease;
}

.gm-banner-button i {
	font-size: 20px;
	transition: transform 0.3s ease;
}

.gm-banner-button:hover {
	background: #fff;
	color: #111;
	transform: translateY(-3px);
}

.gm-banner-button:hover i {
	transform: translateX(6px);
}

/* =========================================================
   CAROUSEL CONTROLS
========================================================= */

.gm-banner-control {
	width: 55px;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.gm-banner-carousel:hover .gm-banner-control {
	opacity: 1;
}

.gm-banner-arrow {
	width: 45px;
	height: 45px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f29621;
	color: #111;
	font-size: 16px;
	transition: 0.3s ease;
}

.gm-banner-arrow:hover {
	background: #fff;
}

/* =========================================================
   INDICATORS
========================================================= */

.gm-banner-indicators {
	position: absolute;
	bottom: -35px;
	margin-bottom: 0;
}

.gm-banner-indicators button {
	width: 30px;
	height: 3px;
	margin: 0 5px;
	border: 0;
	background: rgba(255, 255, 255, 0.4);
	opacity: 1;
}

.gm-banner-indicators button.active {
	background: #f29621;
}

/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1400px) {
	.gm-banner-container {
		padding-left: 2%;
		padding-right: 2%;
	}

	.gm-banner-card {
		min-height: 670px;
	}

	.gm-banner-content {
		padding-left: 7%;
		padding-right: 7%;
	}
}

/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199px) {
	.gm-banner-card {
		min-height: 500px;
	}

	.gm-banner-title {
		font-size: 48px;
		margin-bottom: 35px;
	}

	.gm-banner-description {
		font-size: 21px;
		margin-bottom: 45px;
	}

	.gm-banner-button {
		width: 260px;
		min-height: 58px;
		padding-left: 30px;
	}
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {
	.gm-banner-section {
		padding-top: 35px;
		padding-bottom: 55px;
	}

	.gm-banner-container {
		padding-left: 20px;
		padding-right: 20px;
	}

	.gm-banner-row {
		--bs-gutter-y: 20px;
	}

	.gm-banner-card {
		min-height: 450px;
	}

	.gm-banner-content {
		padding: 55px 7%;
	}

	.gm-banner-title {
		font-size: 46px;
		margin-bottom: 30px;
	}

	.gm-banner-description {
		max-width: 500px;
		font-size: 21px;
		margin-bottom: 40px;
	}

	.gm-banner-button {
		width: 260px;
	}

	.gm-banner-control {
		display: none;
	}
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
	.gm-banner-section {
		padding: 25px 0 55px;
	}

	.gm-banner-container {
		padding-left: 15px;
		padding-right: 15px;
	}

	.gm-banner-card {
		min-height: 430px;
		background-position: center;
	}

	.gm-banner-content {
		padding: 45px 30px;
	}

	.gm-banner-title {
		font-size: 40px;
		margin-bottom: 25px;
	}

	.gm-banner-description {
		font-size: 20px;
		line-height: 1.35;
		margin-bottom: 35px;
	}

	.gm-banner-button {
		width: 100%;
		max-width: 280px;
		min-height: 56px;
		padding-left: 25px;
	}

	.gm-banner-indicators {
		bottom: -32px;
	}
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {
	.gm-banner-card {
		min-height: 400px;
	}

	.gm-banner-content {
		padding: 35px 25px;
	}

	.gm-banner-title {
		font-size: 34px;
		margin-bottom: 22px;
	}

	.gm-banner-description {
		font-size: 18px;
		margin-bottom: 30px;
	}

	.gm-banner-button {
		max-width: 250px;
		min-height: 54px;
		font-size: 14px;
	}
}
/* =========================================================
   BANNER - MOBILE  
========================================================= */

@media (max-width: 767px) {
	.gm-banner-carousel .carousel-item {
		width: 100%;
	}

	.gm-banner-carousel .gm-banner-row {
		margin-left: 0;
		margin-right: 0;
	}

	.gm-banner-carousel .gm-banner-row > .col-12 {
		padding-left: 0;
		padding-right: 0;
	}

	.gm-banner-carousel .gm-banner-card {
		width: 100%;
	}
}

/* =========================================================
   GEARMATE - KEY RANGES
========================================================= */

.gm-kr-section {
	padding: 150px 0;
}

.gm-kr-heading {
	margin-bottom: 150px;
}

.gm-kr-section {
	width: 100%;
	background: #f7f7f5;
	overflow: hidden;
}

/* =========================================================
   CONTAINER
========================================================= */

.gm-kr-container {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding-right: 3.5%;
}

/* =========================================================
   HEADING
========================================================= */

.gm-kr-heading h2 {
	margin: 0;
	color: #2c2c2c;
	font-family: "Orbitron SemiBold";
	line-height: 1;
}

.gm-kr-heading h2, .gm-wg-heading h2, .gm-cf-content h2, .gm-talk-content h2, .gm-cf-content h2, .gm-follow-title, .gm-instagram-heading h2, .gm-feature-title, .gm-accessory-title {
	font-size: 40px;
}

/* =========================================================
   CAROUSEL
========================================================= */

.gm-kr-carousel {
	width: 100%;
}

/* =========================================================
   ROW
========================================================= */

.gm-kr-row {
	margin-left: -30px;
	margin-right: -30px;
}

/* =========================================================
   COLUMN
========================================================= */

.gm-kr-col {
	padding-left: 30px;
	padding-right: 30px;
}

/* =========================================================
   CARD
========================================================= */

.gm-kr-card {
	position: relative;
	display: block;
	width: 100%;
	height: 620px;
	overflow: hidden;
	text-decoration: none;
	background: #2c2c2c;
}

h3, .gm-kr-content h3 {
	font-size: 24px;
}

.gm-kr-content p {
	font-size: 14px;
}

.gm-banner-overlay img {
	width: 100%;
}
/* =========================================================
   IMAGE WRAPPER
========================================================= */

.gm-kr-image-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
}

/* =========================================================
   IMAGE
========================================================= */

.gm-kr-image {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	object-position: center;
	transition: transform 0.7s ease;
}

/* =========================================================
   IMAGE HOVER
========================================================= */

.gm-kr-card:hover .gm-kr-image {
	transform: scale(1.06);
}

/* =========================================================
   DARK OVERLAY
========================================================= */

.gm-kr-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 44, 44, 0.1);
	z-index: 1;
}

/* =========================================================
   CONTENT
========================================================= */

.gm-kr-content {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 20px;
	z-index: 2;
	padding: 0 28px 42px;
}

/* =========================================================
   CARD TITLE
========================================================= */

.gm-kr-content h3 {
	margin: 0 0 14px;
	color: #fff;
	line-height: 1.15;
	transition: transform 0.3s ease;
}

.gm-kr-card:hover .gm-kr-content h3 {
	transform: translateY(-3px);
}

/* =========================================================
   DESCRIPTION
========================================================= */

.gm-kr-content p {
	margin: 0;
	color: #fff;
	font-family: "federoregular";
	line-height: 1.4;
}

/* =========================================================
   BOTTOM AREA
========================================================= */

.gm-kr-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 125px;
}

/* =========================================================
   PROGRESS
========================================================= */

.gm-kr-progress {
	position: relative;
	width: 290px;
	height: 3px;
	display: flex;
	align-items: center;
}

/* FULL TRACK */

.gm-kr-progress-track {
	width: 100%;
	height: 3px;
	background: #999;
}

/* ACTIVE PART */

.gm-kr-progress-active {
	position: absolute;
	left: 0;
	top: 0;
	width: 64%;
	height: 3px;
	background: #2c2c2c;
	z-index: 2;
	transition: width 0.4s ease;
}

/* =========================================================
   NAVIGATION
========================================================= */

.gm-kr-navigation {
	display: flex;
	align-items: center;
	gap: 45px;
}

/* =========================================================
   NAV BUTTON
========================================================= */

.gm-kr-nav-btn {
	width: 25px;
	height: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 0;
	outline: none;
	background: transparent;
	color: #2c2c2c;
	font-size: 17px;
	cursor: pointer;
	transition: transform 0.25s ease, opacity 0.25s ease;
}

.gm-kr-nav-btn:hover {
	transform: translateX(4px);
}

.gm-kr-prev:hover {
	transform: translateX(-4px);
}

.gm-kr-nav-btn:focus {
	box-shadow: none;
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1199px) {
	.gm-kr-section {
		padding-top: 75px;
		padding-bottom: 70px;
	}

	.gm-kr-container {
		padding-left: 5%;
		padding-right: 5%;
	}

	.gm-kr-heading {
		margin-bottom: 90px;
	}

	.gm-kr-row {
		margin-left: -15px;
		margin-right: -15px;
	}

	.gm-kr-col {
		padding-left: 15px;
		padding-right: 15px;
	}

	.gm-kr-card {
		height: 430px;
	}

	.gm-kr-content {
		padding: 0 22px 30px;
	}

	.gm-kr-bottom {
		margin-top: 80px;
	}
}

/* =========================================================
   TABLET / SMALL LAPTOP
========================================================= */

@media (max-width: 991px) {
	.gm-kr-heading {
		margin-bottom: 65px;
	}

	.gm-kr-card {
		height: 440px;
	}

	.gm-kr-col:nth-child(3) {
		margin-top: 30px;
	}

	.gm-kr-bottom {
		margin-top: 60px;
	}
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
	.gm-kr-section {
		padding: 55px 0 60px;
	}

	.gm-kr-container {
		padding-left: 20px;
		padding-right: 20px;
	}

	.gm-kr-heading {
		margin-bottom: 45px;
	}

	.gm-kr-heading h2 {
		font-size: 34px;
	}

	.gm-kr-row {
		margin: 0;
	}

	.gm-kr-col {
		padding: 0;
		margin-top: 0 !important;
	}

	.gm-kr-card {
		height: 500px;
	}

	.gm-kr-content {
		padding: 0 25px 30px;
	}

	.gm-kr-content h3 {
		font-size: 24px;
		margin-bottom: 10px;
	}

	.gm-kr-content p {
		font-size: 15px;
	}

	.gm-kr-bottom {
		margin-top: 45px;
	}

	.gm-kr-progress {
		width: 170px;
	}

	.gm-kr-navigation {
		gap: 28px;
	}
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {
	.gm-kr-section {
		padding-top: 100px;
		padding-bottom: 100px;
	}

	.gm-kr-heading {
		margin-bottom: 35px;
	}

	.gm-kr-heading h2 {
		font-size: 30px;
	}

	.gm-kr-card {
		height: 430px;
	}

	.gm-kr-content {
		padding: 0 20px 25px;
	}

	.gm-kr-content h3 {
		font-size: 21px;
	}

	.gm-kr-bottom {
		margin-top: 35px;
	}

	.gm-kr-progress {
		width: 130px;
	}
}
/* =========================================================
   MOBILE - ONE CARD PER CAROUSEL SLIDE
========================================================= */

@media (max-width: 767px) {
	.gm-kr-carousel.gm-mobile-single .carousel-item {
		width: 100%;
	}

	.gm-kr-carousel.gm-mobile-single .gm-kr-row {
		margin: 0;
	}

	.gm-kr-carousel.gm-mobile-single .gm-kr-col {
		width: 100%;
		max-width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	.gm-kr-carousel.gm-mobile-single .gm-kr-card {
		width: 100%;
	}
}
/* =========================================================
   GEARMATE - WHY GEARMATE
========================================================= */

.gm-wg-section {
	position: relative;
	width: 100%;
	padding: 220px 0 180px;
	background: #ffffff;
	overflow: hidden;
}

/* =========================================================
   DECORATIVE BACKGROUND BLOCK
========================================================= */

.gm-wg-bg-block {
	position: absolute;
	top: 18%;
	left: 0;
	width: 27.5%;
	height: 400px;
	background: #e3e3e3;
	z-index: 0;
}

/* =========================================================
   CONTAINER
========================================================= */

.gm-wg-container {
	position: relative;
	z-index: 1;
	max-width: 100%;
	margin: 0 auto;
	padding-left: 3.1%;
	padding-right: 5%;
}

/* =========================================================
   MAIN DARK BOX
========================================================= */

.gm-wg-box {
	position: relative;
	width: 100%;
	min-height: 530px;
	background: #2c2c2c;
	padding: 100px 100px 150px;
}

/* =========================================================
   HEADING
========================================================= */

.gm-wg-heading {
	margin-bottom: 105px;
}

.gm-wg-heading h2 {
	margin: 0;
	color: #ffffff;
	font-family: "Orbitron SemiBold";
	line-height: 1.1;
}

/* =========================================================
   FEATURES ROW
========================================================= */

.gm-wg-features {
	margin: 0 -86px;
}

/* =========================================================
   FEATURE
========================================================= */

.gm-wg-feature {
	text-align: center;
	padding: 0 15px;
	color: #ffffff;
}

/* =========================================================
   ICON
========================================================= */

.gm-wg-icon {
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 12px;
}

.gm-wg-icon i {
	line-height: 1;
}

/* =========================================================
   FEATURE TITLE
========================================================= */

.gm-wg-feature h3 {
	margin: 0 0 14px;
	color: #ffffff;
	font-family: "Orbitron";
	font-size: 18px;
	font-family: "Orbitron SemiBold";
	line-height: 1.2;
	white-space: nowrap;
}

.gm-wg-icon img {
	height: 36px;
}
/* =========================================================
   FEATURE DESCRIPTION
========================================================= */

.gm-wg-feature p {
	margin: 0;
	color: #ffffff;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.35;
}

/* =========================================================
   CTA WRAPPER
========================================================= */

.gm-wg-cta-wrap {
	position: absolute;
	right: 0;
	bottom: 0;
}

/* =========================================================
   CTA BUTTON
========================================================= */

.gm-banner-button, .gm-wg-cta, .gm-cf-quote-btn, .gm-talk-btn, .gm-instagram-load-btn, .gm-feature-btn {
	width: 250px;
	min-height: 50px;
	padding: 0 24px 0 30px;
	font-family: "Orbitron SemiBold";
	transition: all 0.3s ease;
	transition: background 0.3s ease, padding 0.3s ease;
	text-decoration: none;
	font-size: 14px;
	cursor: pointer;
}

.gm-wg-cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
	background: #f29621;
	color: #ffffff;
	width: 276px;
	min-height: 72px;
}

.gm-wg-cta:hover {
	background: #e98b0b;
	color: #ffffff;
	padding-right: 20px;
}

/* =========================================================
   CTA ARROW
========================================================= */

.gm-wg-cta i {
	font-size: 21px;
	transition: transform 0.3s ease;
}

.gm-wg-cta:hover i {
	transform: translateX(5px);
}

/* =========================================================
   LARGE TABLET
========================================================= */

@media (max-width: 1199px) {
	.gm-wg-section {
		padding: 80px 0;
	}

	.gm-wg-box {
		min-height: auto;
		padding: 65px 45px 105px;
	}

	.gm-wg-heading {
		margin-bottom: 75px;
	}

	.gm-wg-feature h3 {
		font-size: 17px;
	}

	.gm-wg-feature p {
		font-size: 14px;
	}
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {
	.gm-wg-section {
		padding: 70px 0;
	}

	.gm-wg-bg-block {
		width: 35%;
		height: 300px;
	}

	.gm-wg-box {
		padding: 55px 35px 110px;
	}

	.gm-wg-heading {
		margin-bottom: 60px;
	}

	.gm-wg-features {
		row-gap: 50px;
	}

	.gm-wg-feature {
		flex: 0 0 33.333333%;
		max-width: 33.333333%;
	}

	.gm-wg-feature h3 {
		font-size: 18px;
	}

	.gm-wg-cta {
		width: 290px;
		min-height: 68px;
	}
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
	.gm-wg-section {
		padding: 45px 0 50px;
	}

	.gm-wg-bg-block {
		width: 55%;
		height: 220px;
	}

	.gm-wg-container {
		padding-left: 15px;
		padding-right: 15px;
	}

	.gm-wg-box {
		padding: 45px 25px 100px;
	}

	.gm-wg-heading {
		margin-bottom: 50px;
	}

	.gm-wg-heading h2 {
		font-size: 34px;
	}

	.gm-wg-features {
		row-gap: 45px;
	}

	.gm-wg-feature {
		flex: 0 0 50%;
		max-width: 50%;
	}

	.gm-wg-feature h3 {
		font-size: 17px;
		white-space: normal;
	}

	.gm-wg-feature p {
		font-size: 14px;
	}

	.gm-wg-icon {
		font-size: 27px;
	}

	.gm-wg-cta-wrap {
		left: 0;
		right: 0;
	}

	.gm-wg-cta {
		width: 100%;
		min-height: 65px;
	}
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {
	.gm-wg-section {
		padding-top: 30px;
	}

	.gm-wg-box {
		padding: 38px 20px 90px;
	}

	.gm-wg-heading {
		margin-bottom: 45px;
	}

	.gm-wg-heading h2 {
		font-size: 30px;
	}

	.gm-wg-features {
		row-gap: 40px;
	}

	.gm-wg-feature h3 {
		font-size: 15px;
	}

	.gm-wg-feature p {
		font-size: 13px;
	}

	.gm-wg-icon {
		font-size: 24px;
		margin-bottom: 12px;
	}

	.gm-wg-cta {
		min-height: 62px;
		padding-left: 22px;
		padding-right: 20px;
		font-size: 14px;
	}
}
/* =========================================================
   GEARMATE - COMMERCIAL & FLEET HERO
========================================================= */

.gm-cf-hero {
	position: relative;
	width: 100%;
	max-width: 90%;
	min-height: 385px;
	margin: 150px 0 100px;
	padding: 0;
	overflow: hidden;
	background: #2c2c2c;
	margin-right: 10%;
}
/* =========================================================
   BACKGROUND IMAGE
========================================================= */

.gm-cf-hero-bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(
      90deg,
      rgba(44, 44, 44, 0.1) 0%,
      rgba(44, 44, 44, 0.1) 45%,
      rgba(44, 44, 44, 0.1) 100%
    ),
    url("../images/commercial-fleet.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	z-index: 0;
}

/* =========================================================
   CONTAINER
========================================================= */

.gm-cf-container {
	position: relative;
	width: 100%;
	max-width: 100%;
	min-height: 386px;
	margin: 0;
	padding-left: 5%;
	padding-right: 5%;
	display: flex;
	align-items: center;
	z-index: 1;
}

/* =========================================================
   CONTENT
========================================================= */

.gm-cf-content {
	width: 100%;
	max-width: 650px;
	padding-top: 5px;
}

/* =========================================================
   HEADING
========================================================= */

.gm-cf-content h2, .gm-talk-content h2 {
	margin: 40px 0;
}

.gm-cf-content h2 {
	color: #ffffff;
	line-height: 1.1;
}

/* =========================================================
   DESCRIPTION
========================================================= */

.gm-cf-content p, .gm-talk-content p {
	font-size: 16px;
	font-family: "federoregular";
	line-height: 1.35;
}

.gm-cf-content p {
	margin: 0 0 48px;
	color: #ffffff;
	font-weight: 400;
}

/* =========================================================
   REQUEST QUOTE BUTTON
========================================================= */

.gm-cf-quote-btn {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border: 2px solid #ffffff;
	background: transparent;
	color: #ffffff;
	text-decoration: none;
}

.gm-cf-quote-btn, .gm-talk-btn {
	margin-bottom: 40px;
}

.gm-cf-quote-btn i {
	font-size: 19px;
	transition: transform 0.3s ease;
}

.gm-cf-quote-btn:hover {
	background: #f29621;
	border-color: #f29621;
	color: #ffffff;
}

.gm-cf-quote-btn:hover i {
	transform: translateX(5px);
}

/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1600px) {
	.gm-cf-container {
		padding-left: 7%;
		padding-right: 7%;
	}
}

/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199px) {
	.gm-cf-hero,
  .gm-cf-container {
		min-height: 350px;
	}

	.gm-cf-container {
		padding-left: 5%;
		padding-right: 5%;
	}

	.gm-cf-content h1 {
		margin-bottom: 30px;
		font-size: 42px;
	}

	.gm-cf-content p {
		margin-bottom: 38px;
		font-size: 18px;
	}
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {
	.gm-cf-hero,
  .gm-cf-container {
		min-height: 330px;
	}

	.gm-cf-container {
		padding-left: 40px;
		padding-right: 40px;
	}

	.gm-cf-content {
		max-width: 580px;
	}

	.gm-cf-content h1 {
		font-size: 38px;
	}

	.gm-cf-content p {
		font-size: 17px;
		margin-bottom: 35px;
	}
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
	.gm-cf-hero,
  .gm-cf-container {
		min-height: 470px;
	}

	.gm-cf-container {
		padding-left: 25px;
		padding-right: 25px;
		align-items: center;
	}

	.gm-cf-content {
		max-width: 100%;
	}

	.gm-cf-content h1 {
		margin-bottom: 25px;
		font-size: 34px;
		line-height: 1.15;
	}

	.gm-cf-content p {
		margin-bottom: 32px;
		font-size: 17px;
		line-height: 1.45;
	}

	.gm-cf-desktop {
		display: none;
	}

	.gm-cf-quote-btn {
		width: 100%;
		max-width: 300px;
		min-height: 58px;
		padding-left: 22px;
		font-size: 13px;
	}

	.gm-cf-hero-bg {
		background-position: center center;
	}
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {
	.gm-cf-hero,
  .gm-cf-container {
		min-height: 430px;
	}

	.gm-cf-container {
		padding-left: 20px;
		padding-right: 20px;
	}

	.gm-cf-content h1 {
		font-size: 30px;
	}

	.gm-cf-content p {
		font-size: 16px;
	}

	.gm-cf-quote-btn {
		max-width: 100%;
	}
}
/* =========================================================
   GEARMATE - TALK TO OUR TEAM
========================================================= */

.gm-talk-section {
	position: relative;
	width: 100%;
	min-height: auto;
	background: #ffffff;
	overflow: hidden;
	padding: 100px 0;
}

/* =========================================================
   BACKGROUND GREY SHAPE
========================================================= */

.gm-talk-bg-shape {
	position: absolute;
	left: 20%;
	bottom: 8%;
	width: 28%;
	height: 350px;
	background: #dedede;
	z-index: 0;
}

/* =========================================================
   MAIN WHITE PANEL
========================================================= */

.gm-talk-wrapper {
	position: relative;
	z-index: 1;
	width: calc(100% - 23%);
	margin-left: 23%;
	min-height: 393px;
	background: #f7f7f5;
	padding: 55px 4%;
}

/* =========================================================
   CONTACT OPTIONS
========================================================= */

.gm-talk-options {
	height: 100%;
	align-items: flex-start;
}

.gm-talk-item {
	text-align: center;
	padding: 10px 15px;
}

/* =========================================================
   ICON
========================================================= */

.gm-talk-icon {
	margin-bottom: 18px;
	color: #f29621;
	font-size: 39px;
	line-height: 1;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.gm-talk-icon i {
	font-size: inherit;
}

.gm-talk-icon img {
	width: 40px;
}

/* =========================================================
   ITEM HEADING
========================================================= */

.gm-talk-item h3 {
	margin: 0 0 20px;
	color: #2c2c2c;
	font-size: 18px;
	font-family: "Orbitron SemiBold";
	line-height: 1.2;
}

/* =========================================================
   ITEM DESCRIPTION
========================================================= */

.gm-talk-item p {
	margin: 0;
	color: #2c2c2c;
	font-family: "federoregular";
	font-weight: 400;
	line-height: 1.25;
}

/* =========================================================
   RIGHT CONTENT
========================================================= */

.gm-talk-content {
	text-align: right;
	padding-right: 0;
}

/* =========================================================
   MAIN TITLE
========================================================= */

.gm-talk-content h2 {
	color: #2c2c2c;
	line-height: 1.1;
	white-space: nowrap;
}

/* =========================================================
   DESCRIPTION
========================================================= */

.gm-talk-content p {
	margin: 0 0 48px;
	color: #2c2c2c;
}

/* =========================================================
   REQUEST QUOTE BUTTON
========================================================= */

.gm-talk-btn {
	margin-left: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #f29621;
	color: #ffffff;
	text-decoration: none;
}

.gm-talk-btn i {
	font-size: 20px;
	transition: transform 0.3s ease;
}

.gm-talk-btn:hover {
	background: #f29621;
	color: #ffffff;
}

.gm-talk-btn:hover i {
	transform: translateX(5px);
}

/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1600px) {
	.gm-talk-wrapper {
		width: calc(100% - 23%);
		margin-left: 23%;
		padding-left: 5%;
		padding-right: 4%;
	}
}

/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199px) {
	.gm-talk-wrapper {
		width: calc(100% - 18%);
		margin-left: 18%;
		padding-left: 35px;
		padding-right: 35px;
	}

	.gm-talk-content h2 {
		font-size: 38px;
	}

	.gm-talk-item h3 {
		font-size: 17px;
	}

	.gm-talk-item p {
		font-size: 15px;
	}
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {
	.gm-talk-section {
		min-height: auto;
		padding: 50px 0;
	}

	.gm-talk-bg-shape {
		width: 100%;
		height: 70%;
		bottom: 0;
	}

	.gm-talk-wrapper {
		width: calc(100% - 50px);
		margin: 0 25px;
		min-height: auto;
		padding: 45px 30px;
	}

	.gm-talk-content {
		margin-top: 45px;
		text-align: center;
	}

	.gm-talk-content h2 {
		font-size: 38px;
		white-space: normal;
	}

	.gm-talk-content p {
		margin-bottom: 30px;
	}

	.gm-talk-btn {
		margin-left: auto;
		margin-right: auto;
	}
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
	.gm-talk-section {
		padding: 25px 0 40px;
	}

	.gm-talk-bg-shape {
		height: 85%;
	}

	.gm-talk-wrapper {
		width: calc(100% - 30px);
		margin: 0 15px;
		padding: 35px 20px;
	}

	.gm-talk-item {
		padding: 15px 10px;
	}

	.gm-talk-icon {
		font-size: 34px;
		margin-bottom: 15px;
	}

	.gm-talk-item h3 {
		font-size: 17px;
		margin-bottom: 12px;
	}

	.gm-talk-item p {
		font-size: 15px;
		line-height: 1.35;
	}

	.gm-talk-content {
		margin-top: 25px;
	}

	.gm-talk-content h2 {
		font-size: 31px;
		margin-bottom: 20px;
		white-space: normal;
	}

	.gm-talk-content p {
		font-size: 16px;
		margin-bottom: 28px;
	}

	.gm-talk-btn {
		width: 100%;
		max-width: 305px;
		height: 56px;
		padding-left: 22px;
	}
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {
	.gm-talk-wrapper {
		width: calc(100% - 20px);
		margin: 0 10px;
		padding: 30px 15px;
	}

	.gm-talk-content h2 {
		font-size: 27px;
	}

	.gm-talk-item p {
		font-size: 14px;
	}

	.gm-talk-btn {
		max-width: 100%;
	}
}

.reviews-bg {
	background-image: linear-gradient(
      90deg,
      rgba(44, 44, 44, 0.1) 0%,
      rgba(44, 44, 44, 0.1) 45%,
      rgba(44, 44, 44, 0.1) 100%
    ),
    url("../images/reviews-bg.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	z-index: 0;
}
/* =========================================================
   GEARMATE - FOLLOW US SECTION
========================================================= */

.gm-follow-section {
	width: 100%;
	background: #f7f7f5;
	padding: 0;
	overflow: hidden;
}

/* =========================================================
   INNER
========================================================= */

.gm-follow-inner {
	width: 100%;
	min-height: 255px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

/* =========================================================
   TITLE
========================================================= */

.gm-follow-title {
	margin: 0 0 75px;
	color: #2c2c2c;
	font-size: clamp(38px, 4vw, 48px);
	line-height: 1;
	text-align: center;
}

/* =========================================================
   SOCIAL ICON WRAPPER
========================================================= */

.gm-follow-socials {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 1025px;
	padding: 0 10px;
}

/* =========================================================
   SOCIAL ICON
========================================================= */

.gm-follow-social {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #f29621;
	text-decoration: none;
	line-height: 1;
	transition: transform 0.3s ease, color 0.3s ease;
}

/* =========================================================
   HOVER
========================================================= */

.gm-follow-social:hover {
	color: #2c2c2c;
	transform: translateY(-4px);
}

/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1600px) {
	.gm-follow-inner {
		min-height: 270px;
	}

	.gm-follow-socials {
		max-width: 1060px;
	}
}

/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199px) {
	.gm-follow-inner {
		min-height: 230px;
	}

	.gm-follow-title {
		margin-bottom: 60px;
		font-size: 42px;
	}

	.gm-follow-socials {
		max-width: 850px;
	}
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {
	.gm-follow-inner {
		min-height: 220px;
		padding: 35px 30px;
	}

	.gm-follow-title {
		margin-bottom: 50px;
		font-size: 38px;
	}

	.gm-follow-socials {
		max-width: 700px;
	}

	.gm-follow-social {
		font-size: 29px;
	}
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
	.gm-follow-inner {
		min-height: auto;
		padding: 45px 25px;
	}

	.gm-follow-title {
		margin-bottom: 40px;
		font-size: 32px;
	}

	.gm-follow-socials {
		max-width: 100%;
		padding: 0;
		justify-content: space-around;
		gap: 20px;
	}

	.gm-follow-social {
		width: 32px;
		height: 32px;
		font-size: 27px;
	}
}

/* =========================================================
   GEARMATE - FOLLOW US SECTION
========================================================= */

.gm-follow-section {
	width: 100%;
	background: #f7f7f5;
	padding: 0;
	overflow: hidden;
}

/* =========================================================
   INNER
========================================================= */

.gm-follow-inner {
	width: 100%;
	min-height: 255px;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: center;
	align-content: flex-end;
}

/* =========================================================
   TITLE
========================================================= */

.gm-follow-title {
	margin: 0 0 50px;
	color: #2c2c2c;
	line-height: 1;
	text-align: center;
}

/* =========================================================
   SOCIAL ICON WRAPPER
========================================================= */

.gm-follow-socials {
	width: 100%;
	display: flex;
	align-items: inherit;
	justify-content: flex-end;
	padding: 0 10px;
}

/* =========================================================
   SOCIAL ICON
========================================================= */

.gm-follow-social {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #f29621;
	text-decoration: none;
	transition: transform 0.3s ease, color 0.3s ease;
}

.gm-follow-social {
	margin: 0 25px;
}

.gm-follow-social img {
	width: 34px;
} 


/* =========================================================
   HOVER
========================================================= */

.gm-follow-social:hover {
	color: #2c2c2c;
	transform: translateY(-4px);
}

/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1600px) {
	.gm-follow-inner {
		min-height: 270px;
	}

	.gm-follow-socials {
		max-width: 1060px;
	}
}

/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199px) {
	.gm-follow-inner {
		min-height: 230px;
	}

	.gm-follow-title {
		margin-bottom: 60px;
		font-size: 42px;
	}

	.gm-follow-socials {
		max-width: 850px;
	}
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {
	.gm-follow-inner {
		min-height: 220px;
		padding: 35px 30px;
	}

	.gm-follow-title {
		margin-bottom: 50px;
		font-size: 38px;
	}

	.gm-follow-socials {
		max-width: 700px;
	}

	.gm-follow-social {
		font-size: 29px;
	}
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
	.gm-follow-inner {
		min-height: auto;
		padding: 45px 25px;
	}

	.gm-follow-title {
		margin-bottom: 40px;
		font-size: 32px;
	}

	.gm-follow-socials {
		max-width: 100%;
		padding: 0;
		justify-content: space-around;
		gap: 20px;
	}

	.gm-follow-social {
		width: 32px;
		height: 32px;
		font-size: 27px;
	}
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {
	.gm-follow-inner {
		padding: 40px 15px;
	}

	.gm-follow-title {
		margin-bottom: 35px;
		font-size: 29px;
	}

	.gm-follow-socials {
		gap: 10px;
	}

	.gm-follow-social {
		font-size: 25px;
		margin: 0 8px;
	}
}
/* =========================================================
   GEARMATE - INSTAGRAM SECTION
========================================================= */

.gm-instagram-section {
	width: 100%;
	background: #ffffff;
	padding: 85px 0 100px;
	overflow: hidden;
}

/* =========================================================
   HEADING
========================================================= */

.gm-instagram-heading {
	margin-bottom: 180px;
}

.gm-instagram-heading h2 {
	margin: 0;
	color: #2c2c2c;
	line-height: 1.1;
}

/* =========================================================
   INSTAGRAM GRID
========================================================= */

.gm-instagram-grid {
	--bs-gutter-x: 62px;
	row-gap: 30px;
	align-items: stretch;
}

/* =========================================================
   POST CARD
========================================================= */

.gm-instagram-card {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 1.5 / 1;
	overflow: hidden;
	background: #eeeeee;
	text-decoration: none;
}

/* =========================================================
   IMAGE
========================================================= */

.gm-instagram-card img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	transition: transform 0.5s ease, opacity 0.3s ease;
}

/* =========================================================
   HOVER
========================================================= */

.gm-instagram-card:hover img {
	transform: scale(1.04);
	opacity: 0.9;
}

/* =========================================================
   LOAD MORE AREA
========================================================= */

.gm-instagram-load {
	display: flex;
	justify-content: center;
	margin-top: 100px;
}

/* =========================================================
   LOAD MORE BUTTON
========================================================= */

.gm-instagram-load-btn {
	border: 0;
	background: #f29621;
	color: #ffffff;
}

.gm-instagram-load-btn:hover {
	background: #f29621;
	transform: translateY(-2px);
}

/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1400px) {
	.gm-instagram-section {
		padding: 180px 0 230px;
	}

	.gm-instagram-heading {
		margin-bottom: 180px;
	}

	.gm-instagram-grid {
		--bs-gutter-x: 62px;
	}
}

/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199px) {
	.gm-instagram-section {
		padding: 70px 0 80px;
	}

	.gm-instagram-heading {
		margin-bottom: 110px;
	}

	.gm-instagram-grid {
		--bs-gutter-x: 40px;
	}

	.gm-instagram-load {
		margin-top: 75px;
	}
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {
	.gm-instagram-section {
		padding: 60px 0 70px;
	}

	.gm-instagram-heading {
		margin-bottom: 80px;
	}

	.gm-instagram-heading h2 {
		font-size: 40px;
	}

	.gm-instagram-grid {
		--bs-gutter-x: 30px;
	}

	.gm-instagram-load {
		margin-top: 60px;
	}
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
	.gm-instagram-section {
		padding: 50px 0 60px;
	}

	.gm-instagram-heading {
		margin-bottom: 45px;
		text-align: center;
	}

	.gm-instagram-heading h2 {
		font-size: 32px;
	}

	.gm-instagram-grid {
		--bs-gutter-x: 20px;
		row-gap: 20px;
	}

	.gm-instagram-card {
		aspect-ratio: 1.35 / 1;
	}

	.gm-instagram-load {
		margin-top: 45px;
	}

	.gm-instagram-load-btn {
		width: 100%;
		max-width: 304px;
		height: 60px;
	}
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {
	.gm-instagram-section {
		padding: 150px 0;
	}

	.gm-instagram-heading {
		margin-bottom: 35px;
	}

	.gm-instagram-heading h2 {
		font-size: 29px;
	}

	.gm-instagram-grid {
		--bs-gutter-x: 15px;
		row-gap: 15px;
	}

	.gm-instagram-card {
		aspect-ratio: 1 / 1;
	}

	.gm-instagram-load {
		margin-top: 40px;
	}
	.gm-feature-card {
		padding: 100px 0;
	}
	.botcard {
		padding-top: 0;
	}
}
/* ==========================================
   GEARMate Feature Section
========================================== */

.gm-feature-section {
	width: 100%;
	padding: 220px 0;
	background: #f6f6f4;
	overflow: hidden;
}

.gm-feature-container {
	max-width: 1320px;
	margin: 0 auto;
	padding-left: 3.5%;
	padding-right: 3.5%;
}

.gm-feature-row {
	align-items: flex-start;
}

/* Card */

.gm-feature-card {
	width: 100%;
}

/* Image */

.gm-feature-image-wrap {
	aspect-ratio: 1 / 0.84;
	overflow: hidden;
}

.gm-feature-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Content */

.gm-feature-image-wrap, .gm-feature-content {
	width: 100%;
	max-width: 600px;
	padding-left: 100px;
}

.gm-feature-image-wrap, .gm-feature-image-wrap img {
	height: 600px;
	object-fit: cover;
}

.gm-feature-title {
	margin: 70px 0;
	color: #2b2b2b;
	line-height: 1.1;
}

.gm-feature-description {
	margin: 0;
	max-width: 500px;
	color: #2b2b2b;
	font-size: 17px;
	line-height: 1.28;
	min-height: 160px;
}

/* Button */

.gm-feature-btn {
	margin-top: 60px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #f29621;
	color: #ffffff;
}

.gm-feature-btn:hover {
	background: #e8870d;
	color: #ffffff;
}

.gm-feature-arrow {
	font-family: Arial, sans-serif;
	font-size: 31px;
	font-weight: 300;
	line-height: 1;
	transition: transform 0.3s ease;
}

.gm-feature-btn:hover .gm-feature-arrow {
	transform: translateX(5px);
}
 
/* ==========================================
   Large Desktop
========================================== */

@media (min-width: 1400px) {
	.gm-feature-container {
		max-width: 100%;
	}

	.gm-feature-description {
		font-size: 17px;
	}
}

/* ==========================================
   Tablet
========================================== */

@media (max-width: 991.98px) {
	.gm-feature-section {
		padding: 70px 0 80px;
	}

	.gm-feature-container {
		padding-left: 30px;
		padding-right: 30px;
	}

	.gm-feature-row {
		--bs-gutter-x: 35px;
		--bs-gutter-y: 70px;
	}

	.gm-feature-image-wrap {
		margin-bottom: 35px;
		aspect-ratio: 1 / 0.85;
	}

	.gm-feature-title {
		font-size: 36px;
		margin-bottom: 35px;
	}

	.gm-feature-description {
		font-size: 16px;
	}

	.gm-feature-btn {
		margin-top: 35px;
	}
	/*pages*/
	.gm-cf-hero {
		max-width: 100%;
		margin-right: 0;
	}

	.gm-wg-features {
		margin: 0;
	}

	.gm-wg-features {
		justify-content: center;
	}
}

/* ==========================================
   Mobile
========================================== */

@media (max-width: 767.98px) {
	.gm-feature-section {
		padding: 55px 0 65px;
	}

	.gm-feature-container {
		padding-left: 20px;
		padding-right: 20px;
	}

	.gm-feature-row {
		--bs-gutter-y: 60px;
	}

	.gm-feature-image-wrap {
		margin-bottom: 30px;
		aspect-ratio: 1 / 0.82;
		padding-left: 0;
	}

	.gm-feature-content {
		max-width: 100%;
		padding-left: 0;
	}

	.gm-feature-title {
		font-size: 32px;
		margin-bottom: 28px;
	}

	.gm-feature-description {
		max-width: 100%;
		font-size: 16px;
		line-height: 1.4;
	}

	.gm-feature-btn {
		width: 100%;
		max-width: 280px;
		margin-top: 30px;
		min-height: 56px;
		padding: 0 22px;
	}
}

/* ==========================================
   Small Mobile
========================================== */

@media (max-width: 480px) {
	.gm-feature-section {
		padding: 45px 0 55px;
	}

	.gm-feature-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.gm-feature-title {
		font-size: 28px;
	}

	.gm-feature-description {
		font-size: 15px;
	}

	.gm-feature-btn {
		max-width: 100%;
	}
}
/* =========================================
   GEARMATE - FIND YOUR ACCESSORIES
========================================= */

.gm-accessory-section {
	position: relative;
	width: 100%;
	min-height: 340px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-image: url("../images/accessories-bg.jpg");
	background-size: cover;
	background-position: center center;
	overflow: visible;
}

/* Dark overlay */

.gm-accessory-overlay {
	position: absolute;
	inset: 0;
	background: rgba(44, 44, 44, 0.8);
	z-index: 1;
}

/* Container */

.gm-accessory-container {
	position: relative;
	z-index: 2;
	width: 100%;
	padding-top: 86px;
	padding-bottom: 86px;
}

/* Content */

.gm-accessory-content {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
}

/* =========================================
   TITLE
========================================= */

.gm-accessory-title {
	margin: 0 0 70px;
	color: #ffffff;
	line-height: 1.15;
	text-align: center;
}

/* =========================================
   SEARCH WRAPPER
========================================= */

.gm-accessory-search-wrap {
	display: flex;
	align-items: stretch;
	justify-content: center;
	gap: 75px;
	width: 100%;
}

/* =========================================
   CUSTOM DROPDOWN
========================================= */

.gm-accessory-dropdown {
	position: relative;
	width: 360px;
	z-index: 20;
}

/* Select button */

.gm-accessory-select, .gm-accessory-search-btn, .gm-footer-newsletter-form {
	height: 50px;
}

.gm-accessory-select {
	width: 100%;
	padding: 0 26px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border: 1px solid #ffffff;
	border-radius: 0;
	background: rgba(20, 20, 20, 0.25);
	color: #ffffff;
	font-family: "Orbitron";
	font-size: 14px;
	text-align: left;
	cursor: pointer;
	transition: background 0.3s ease;
}

.gm-accessory-select:hover {
	background: rgba(255, 255, 255, 0.08);
}

/* Chevron */

.gm-accessory-chevron {
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.3s ease;
}

.gm-accessory-chevron i {
	font-size: 18px;
}

/* Rotate when open */

.gm-accessory-dropdown.gm-accessory-open .gm-accessory-chevron {
	transform: rotate(180deg);
}

/* =========================================
   DROPDOWN MENU
========================================= */

.gm-accessory-dropdown-menu {
	position: absolute;
	top: calc(100% + 5px);
	left: 0;
	width: 100%;
	max-height: 250px;
	overflow-y: auto;
	padding: 5px 0;
	background: #ffffff;
	border: 1px solid #dddddd;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-8px);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
}

/* Open state */

.gm-accessory-dropdown.gm-accessory-open .gm-accessory-dropdown-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

/* Dropdown option */

.gm-accessory-option {
	display: block;
	width: 100%;
	padding: 14px 22px;
	border: 0;
	background: #ffffff;
	color: #2c2c2c;
	font-family: "Orbitron";
	font-size: 13px;
	text-align: left;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}

.gm-accessory-option:hover {
	background: #f29621;
	color: #ffffff;
}

/* =========================================
   SEARCH BUTTON
========================================= */

.gm-accessory-search-btn {
	width: 158px;
	padding: 0 27px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border: 0;
	border-radius: 0;
	background: #f29621;
	color: #ffffff;
	font-family: "Orbitron";
	font-size: 14px;
	cursor: pointer;
	transition: background 0.3s ease, transform 0.3s ease;
}

.gm-accessory-search-btn:hover {
	background: #f29621;
	transform: translateY(-2px);
}

.gm-accessory-search-btn i {
	font-size: 20px;
}

/* =========================================
   SCROLLBAR
========================================= */

.gm-accessory-dropdown-menu::-webkit-scrollbar {
	width: 5px;
}

.gm-accessory-dropdown-menu::-webkit-scrollbar-track {
	background: #f1f1f1;
}

.gm-accessory-dropdown-menu::-webkit-scrollbar-thumb {
	background: #f29621;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 991.98px) {
	.gm-accessory-section {
		min-height: 320px;
	}

	.gm-accessory-title {
		margin-bottom: 55px;
	}

	.gm-accessory-search-wrap {
		gap: 30px;
	}

	.gm-accessory-dropdown {
		width: 330px;
	}
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 767.98px) {
	.gm-accessory-section {
		min-height: auto;
	}

	.gm-accessory-container {
		padding-top: 55px;
		padding-bottom: 60px;
	}

	.gm-accessory-title {
		margin-bottom: 40px;
		font-size: 31px;
		line-height: 1.2;
	}

	.gm-accessory-search-wrap {
		flex-direction: column;
		align-items: center;
		gap: 15px;
	}

	.gm-accessory-dropdown {
		width: 100%;
		max-width: 400px;
	}

	.gm-accessory-search-btn {
		width: 100%;
		max-width: 400px;
		justify-content: space-between;
	}
}

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {
	.gm-accessory-container {
		padding-left: 18px;
		padding-right: 18px;
	}

	.gm-accessory-title {
		font-size: 27px;
	}

	.gm-accessory-select,
  .gm-accessory-search-btn {
		height: 58px;
	}
}
/* =========================================================
   GEARMATE FOOTER
========================================================= */

.gm-footer {
	width: 100%;
	background: #2c2c2c;
	color: #ffffff;
	overflow: hidden;
}

.gm-footer-container {
	max-width: 100%;
	margin: 0 auto;
	padding: 120px 60px 80px;
}

/* =========================================================
   MAIN LAYOUT
========================================================= */

.gm-footer-main {
	--bs-gutter-x: 70px;
}

.gm-footer-left {
	width: 100%;
}

.gm-footer-links-row {
	--bs-gutter-x: 70px;
	padding-top: 120px;
}

/* =========================================================
   NEWSLETTER
========================================================= */

.gm-footer-newsletter {
	margin-bottom: 55px;
}

.gm-footer-newsletter-title {
	margin: 0 0 42px;
	color: #ffffff;
	font-size: 24px;
	line-height: 1.2;
}

/* Newsletter Form */

.gm-footer-newsletter-form {
	width: 452px;
	max-width: 100%;
	display: flex;
	border: 1px solid #ffffff;
}

/* Email */

.gm-footer-email {
	width: calc(100% - 85px);
	height: 100%;
	padding: 0 25px;
	border: 0;
	outline: none;
	background: transparent;
	color: #ffffff;
	font-family: "Orbitron Regular";
	font-size: 13px;
}

.gm-footer-email::placeholder {
	color: #ffffff;
	opacity: 1;
}

/* Submit */

.gm-footer-newsletter-btn {
	width: 85px;
	height: 100%;
	border: 0;
	background: #f29621;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background 0.3s ease;
}

.gm-footer-newsletter-btn:hover {
	background: #f29621;
}

.gm-footer-newsletter-btn span {
	font-family: Arial, sans-serif;
	font-size: 39px;
	font-weight: 200;
	line-height: 1;
}

/* =========================================================
   MADE IN BRITAIN
========================================================= */

.gm-footer-made {
	margin-bottom: 50px;
}

.gm-footer-made-img {
	width: 220px;
	max-width: 100%;
	height: auto;
	display: block;
}

/* =========================================================
   SOCIAL
========================================================= */

.gm-footer-social {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 70px;
}

.gm-footer-social a {
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	text-decoration: none;
	transition: background 0.3s ease, transform 0.3s ease;
}

.gm-footer-social a:hover {
	transform: translateY(-3px);
}

.gm-footer-social i {
	font-size: 22px;
	line-height: 1;
}

.gm-footer-social img {
	width: 44px;
} 


/* =========================================================
   FOOTER HEADINGS
========================================================= */

.gm-footer-heading {
	margin: 0 0 30px;
	color: #ffffff;
	font-size: 22px;
	line-height: 1.2;
}

.gm-footer-subheading {
	margin-top: 45px;
}

/* =========================================================
   MENUS
========================================================= */

.gm-footer-menu {
	margin: 0;
	padding: 0;
	list-style: none;
}

.gm-footer-menu li {
	margin: 0 0 5px;
}

.gm-footer-menu a {
	color: #ffffff;
	text-decoration: none;
	font-size: 16px;
	line-height: 1.35;
	transition: color 0.25s ease;
}

.gm-footer-menu a:hover {
	color: #f29621;
}

/* =========================================================
   CONTACT
========================================================= */

.gm-footer-contact {
	max-width: 400px;
}

.gm-footer-contact p {
	margin: 0 0 17px;
	color: #ffffff;
	font-size: 16px;
	line-height: 1.45;
}

.gm-footer-contact strong {
	color: #f29621;
	font-size: 13px;
	font-family: "Orbitron Regular";
}

.gm-footer-contact a {
	color: #ffffff;
	text-decoration: none;
	transition: color 0.25s ease;
}

.gm-footer-contact a:hover {
	color: #f29621;
}

/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1400px) {
	.gm-footer-container {
		padding-left: 3.5%;
		padding-right: 3.5%;
	}
}

/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199.98px) {
	.gm-footer-container {
		padding: 70px 45px 90px;
	}

	.gm-footer-main {
		--bs-gutter-x: 45px;
	}

	.gm-footer-links-row {
		--bs-gutter-x: 35px;
	}

	.gm-footer-newsletter-title {
		font-size: 21px;
	}

	.gm-footer-heading {
		font-size: 21px;
	}

	.gm-footer-menu a {
		font-size: 16px;
	}
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {
	.gm-footer-container {
		padding: 65px 35px 75px;
	}

	.gm-footer-left {
		margin-bottom: 65px;
	}

	.gm-footer-links-row {
		--bs-gutter-y: 50px;
	}

	.gm-footer-newsletter-title {
		font-size: 22px;
	}

	.gm-footer-newsletter-form {
		width: 500px;
	}
	.gm-footer-links-row {
    padding-top: 0;
}
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767.98px) {
	.gm-footer-container {
		padding: 55px 22px 65px;
	}

	.gm-footer-left {
		margin-bottom: 50px;
	}

	.gm-footer-newsletter {
		margin-bottom: 40px;
	}

	.gm-footer-newsletter-title {
		font-size: 20px;
		margin-bottom: 28px;
	}

	.gm-footer-newsletter-form {
		width: 100%;
		height: 56px;
	}

	.gm-footer-email {
		padding: 0 18px;
		font-size: 12px;
	}

	.gm-footer-newsletter-btn {
		width: 70px;
	}

	.gm-footer-made {
		margin-bottom: 35px;
	}

	.gm-footer-made-img {
		width: 220px;
	}

	.gm-footer-social {
		gap: 12px;
		margin-bottom: 45px;
	}

	.gm-footer-social a {
		width: 40px;
		height: 40px;
	}

	.gm-footer-social i {
		font-size: 19px;
	}

	.gm-footer-contact {
		max-width: 100%;
	}

	.gm-footer-heading {
		font-size: 20px;
		margin-bottom: 22px;
	}

	.gm-footer-subheading {
		margin-top: 35px;
	}

	.gm-footer-menu a {
		font-size: 15px;
	}

	.gm-footer-contact p {
		font-size: 15px;
	}
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {
	.gm-footer-container {
		padding-left: 18px;
		padding-right: 18px;
	}

	.gm-footer-links-row {
		--bs-gutter-x: 20px;
	}

	.gm-footer-newsletter-title {
		font-size: 18px;
	}

	.gm-footer-social {
		flex-wrap: wrap;
	}

	.gm-footer-heading {
		font-size: 18px;
	}

	.gm-footer-menu a {
		font-size: 14px;
	}

	.gm-footer-contact p {
		font-size: 14px;
	}
}

/* =========================================================
   10-09-26
   ========================================================= */

/* =========================================================
   GEAR MATE INTERNAL PAGES
   SERVICE STRIP
   Prefix: gm-ip-
   ========================================================= */

.gm-ip-service-strip {
	width: 100%;
	background: #151515;
	color: #ffffff;
	overflow: hidden;
}

.gm-ip-service-item {
	min-height: 125px;
	display: flex;
	align-items: center;
	gap: 22px;
	padding: 22px 35px;
	border-right: 1px solid rgba(255, 255, 255, 0.25);
}

.gm-ip-service-item:last-child {
	border-right: none;
}


/* Icon */

.gm-ip-service-icon {
	flex: 0 0 58px;
	width: 58px;
	height: 58px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: 45px;
	line-height: 1;
}


/* Content */

.gm-ip-service-content {
	flex: 1;
	min-width: 0;
}

.gm-ip-service-content h3 {
	margin: 0 0 7px;
	color: #ffffff;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.25;
}

.gm-ip-service-content p {
	margin: 0;
	color: #ffffff;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.55;
}


/* =========================================================
   OFFER BAR
   ========================================================= */

.gm-ip-offer-bar {
	width: 100%;
	background: #ed1c24;
	color: #ffffff;
}

.gm-ip-offer-content {
	min-height: 37px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 7px 20px;
	text-align: center;
}

.gm-ip-offer-content i {
	font-size: 16px;
	line-height: 1;
}

.gm-ip-offer-content span {
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.4;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1199.98px) {

	.gm-ip-service-item {
		min-height: 115px;
		padding: 20px 25px;
		gap: 16px;
	}

	.gm-ip-service-icon {
		flex-basis: 50px;
		width: 50px;
		height: 50px;
		font-size: 38px;
	}

	.gm-ip-service-content h3 {
		font-size: 15px;
	}

	.gm-ip-service-content p {
		font-size: 12px;
	}
}

@media (max-width: 767.98px) {

	.gm-ip-service-item {
		min-height: auto;
		padding: 18px 20px;
		border-right: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.18);
	}

	.gm-ip-service-item:last-child {
		border-bottom: none;
	}

	.gm-ip-service-icon {
		flex-basis: 48px;
		width: 48px;
		height: 48px;
		font-size: 36px;
	}

	.gm-ip-service-content h3 {
		font-size: 15px;
		margin-bottom: 5px;
	}

	.gm-ip-service-content p {
		font-size: 12px;
		line-height: 1.45;
	}

	.gm-ip-offer-content {
		min-height: 42px;
		padding: 8px 15px;
		gap: 7px;
	}

	.gm-ip-offer-content i {
		font-size: 14px;
	}

	.gm-ip-offer-content span {
		font-size: 12px;
		line-height: 1.35;
	}
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 479.98px) {

	.gm-ip-service-item {
		padding: 16px;
		gap: 14px;
	}

	.gm-ip-service-icon {
		flex-basis: 42px;
		width: 42px;
		height: 42px;
		font-size: 31px;
	}

	.gm-ip-service-content h3 {
		font-size: 14px;
	}

	.gm-ip-service-content p {
		font-size: 11px;
	}

	.gm-ip-offer-content span {
		font-size: 11px;
	}
}
/* =========================================================
   GEAR MATE
   INTERNAL PAGE - VAN ROOF BARS HERO

   Unique Prefix:
   gm-ip-vrb-

   No Home Page classes / IDs / JS used
   ========================================================= */


/* =========================================================
   HERO
   ========================================================= */

.gm-ip-vrb-hero {
	position: relative;
	width: 100%;
	min-height: 205px;
	overflow: hidden;
	background: #171b1e;
	color: #ffffff;
}


/* =========================================================
   BACKGROUND IMAGE
   ========================================================= */

.gm-ip-vrb-hero-bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.gm-ip-vrb-hero-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}


/* =========================================================
   DARK OVERLAY
   ========================================================= */

.gm-ip-vrb-hero-overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	background: linear-gradient(
            90deg,
            rgba(15, 19, 21, 0.97) 0%,
            rgba(15, 19, 21, 0.92) 34%,
            rgba(15, 19, 21, 0.55) 57%,
            rgba(15, 19, 21, 0.08) 100%
        );
}


/* =========================================================
   CONTENT WRAPPER
   ========================================================= */

.gm-ip-vrb-hero-content {
	position: relative;
	min-height: 205px;
	padding-top: 26px;
	padding-bottom: 27px;
	z-index: 3;
}


/* =========================================================
   BREADCRUMB
   ========================================================= */

.gm-ip-vrb-breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 9px;
	margin-bottom: 19px;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 15px;
	line-height: 1.4;
}

.gm-ip-vrb-breadcrumb-home {
	color: #d7dce0;
	text-decoration: none;
	transition: color 0.2s ease;
}

.gm-ip-vrb-breadcrumb-home:hover {
	color: #f39a16;
}

.gm-ip-vrb-breadcrumb-separator {
	display: flex;
	align-items: center;
	color: #c7cbd0;
	font-size: 10px;
}

.gm-ip-vrb-breadcrumb-current {
	color: #f39a16;
}


/* =========================================================
   MAIN TITLE
   ========================================================= */

.gm-ip-vrb-title {
	margin: 0 0 12px;
	color: #ffffff;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: clamp(34px, 4vw, 47px);
	font-weight: 600;
	line-height: 1.05;
	text-transform: uppercase;
}


/* =========================================================
   DESCRIPTION
   ========================================================= */

.gm-ip-vrb-description {
	max-width: 680px;
	margin: 0;
	color: #e3e7ea;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.45;
}


/* =========================================================
   RIGHT SIDE MESSAGE
   ========================================================= */

.gm-ip-vrb-hero-message {
	position: absolute;
	top: 30px;
	right: 15px;
	display: flex;
	flex-direction: column;
	width: 125px;
	z-index: 4;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-weight: 600;
	line-height: 0.95;
	text-transform: uppercase;
}

.gm-ip-vrb-message-line {
	display: block;
	color: #e5e7e9;
	font-size: 31px;
}

.gm-ip-vrb-message-highlight {
	display: block;
	color: #f7941d;
	font-size: 31px;
}

.gm-ip-vrb-message-underline {
	display: block;
	width: 55px;
	height: 2px;
	margin-top: 10px;
	background: #f7941d;
}


/* =========================================================
   LARGE DESKTOP
   ========================================================= */

@media (min-width: 1400px) {

	.gm-ip-vrb-hero {
		min-height: 220px;
	}

	.gm-ip-vrb-hero-content {
		min-height: 220px;
		padding-top: 29px;
		padding-bottom: 29px;
	}

	.gm-ip-vrb-title {
		font-size: 48px;
	}

	.gm-ip-vrb-description {
		font-size: 17px;
		max-width: 710px;
	}

	.gm-ip-vrb-hero-message {
		top: 35px;
		right: 15px;
	}

	.gm-ip-vrb-message-line,
    .gm-ip-vrb-message-highlight {
		font-size: 34px;
	}
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991.98px) {

	.gm-ip-vrb-hero {
		min-height: 230px;
	}

	.gm-ip-vrb-hero-content {
		min-height: 230px;
		padding-top: 25px;
		padding-bottom: 25px;
	}

	.gm-ip-vrb-title {
		font-size: 38px;
	}

	.gm-ip-vrb-description {
		max-width: 590px;
		font-size: 15px;
	}

	.gm-ip-vrb-hero-message {
		top: auto;
		bottom: 25px;
		right: 25px;
		width: 105px;
	}

	.gm-ip-vrb-message-line,
    .gm-ip-vrb-message-highlight {
		font-size: 25px;
	}
}

@media (max-width: 767.98px) {

	.gm-ip-vrb-hero {
		min-height: 310px;
	}

	.gm-ip-vrb-hero-image {
		object-position: 62% center;
	}

	.gm-ip-vrb-hero-overlay {
		background: linear-gradient(
                90deg,
                rgba(15, 19, 21, 0.97) 0%,
                rgba(15, 19, 21, 0.82) 55%,
                rgba(15, 19, 21, 0.45) 100%
            );
	}

	.gm-ip-vrb-hero-content {
		min-height: 310px;
		padding-top: 22px;
		padding-bottom: 25px;
	}


    /* Breadcrumb */

	.gm-ip-vrb-breadcrumb {
		margin-bottom: 22px;
		gap: 7px;
		font-size: 13px;
	}


    /* Title */

	.gm-ip-vrb-title {
		max-width: 100%;
		margin-bottom: 13px;
		font-size: 31px;
		line-height: 1.05;
	}


    /* Description */

	.gm-ip-vrb-description {
		max-width: 78%;
		font-size: 14px;
		line-height: 1.45;
	}


    /* Message */

	.gm-ip-vrb-hero-message {
		top: auto;
		right: 18px;
		bottom: 20px;
		width: 82px;
	}

	.gm-ip-vrb-message-line,
    .gm-ip-vrb-message-highlight {
		font-size: 20px;
	}

	.gm-ip-vrb-message-underline {
		width: 38px;
		margin-top: 7px;
	}
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 479.98px) {

	.gm-ip-vrb-hero {
		min-height: 300px;
	}

	.gm-ip-vrb-hero-content {
		min-height: 300px;
		padding-top: 19px;
	}

	.gm-ip-vrb-breadcrumb {
		margin-bottom: 19px;
		font-size: 12px;
	}

	.gm-ip-vrb-title {
		font-size: 26px;
	}

	.gm-ip-vrb-description {
		max-width: 72%;
		font-size: 12px;
	}

	.gm-ip-vrb-hero-message {
		right: 14px;
		bottom: 18px;
		width: 70px;
	}

	.gm-ip-vrb-message-line,
    .gm-ip-vrb-message-highlight {
		font-size: 17px;
	}
}









/* =========================================================
   GEAR MATE - INTERNAL PAGE
   VEHICLE SELECTOR

   Unique Prefix:
   gm-ip-vrb-

   No Home Page CSS
   No Home Page IDs
   No Custom JavaScript
   ========================================================= */


/* =========================================================
   MAIN SECTION
   ========================================================= */

.gm-ip-vrb-vehicle-section {
	width: 100%;
	padding: 55px 0 75px;
	background: #ffffff;
}


/* =========================================================
   LEFT CATEGORY BOX
   ========================================================= */

.gm-ip-vrb-category-box {
	width: 100%;
	padding: 20px 15px 18px;
	background: #ffffff;
	border: 1px solid #e4e6e8;
	border-radius: 5px;
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.06);
}

.gm-ip-vrb-category-title {
	margin: 0 0 17px;
	padding: 0 4px;
	color: #101722;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 22px;
	font-weight: 600;
	line-height: 1.2;
}


/* =========================================================
   ACCORDION
   ========================================================= */

.gm-ip-vrb-category-accordion {
	--bs-accordion-border-width: 0;
	--bs-accordion-bg: transparent;
}

.gm-ip-vrb-accordion-item {
	background: transparent;
	border: 0;
	border-bottom: 1px solid #e4e6e8;
}

.gm-ip-vrb-accordion-item:last-child {
	border-bottom: 0;
}


/* Accordion Button */

.gm-ip-vrb-accordion-button {
	position: relative;
	width: 100%;
	padding: 15px 12px;
	color: #111827;
	background: transparent;
	border: 0;
	border-radius: 4px !important;
	box-shadow: none !important;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4;
	text-align: left;
}

.gm-ip-vrb-accordion-button:hover {
	color: #111827;
	background: #f5f6f7;
}


/* Open Accordion */

.gm-ip-vrb-accordion-button:not(.collapsed) {
	color: #111827;
	background: #f1f2f3;
	box-shadow: none;
}


/* Bootstrap arrow */

.gm-ip-vrb-accordion-button::after {
	width: 11px;
	height: 11px;
	margin-left: auto;
	background-size: 11px;
	transition: transform 0.25s ease;
}

.gm-ip-vrb-accordion-button:not(.collapsed)::after {
	filter: none;
}


/* Accordion Content */

.gm-ip-vrb-accordion-body {
	padding: 3px 14px 15px;
}

.gm-ip-vrb-category-link {
	display: block;
	padding: 7px 0 7px 10px;
	color: #202733;
	font-family: "federoregular", "Federo", sans-serif;
	font-weight: 400;
	line-height: 1.4;
	text-decoration: none;
	transition: color 0.2s ease,
        padding-left 0.2s ease;
}

.gm-ip-vrb-category-link:hover {
	padding-left: 15px;
	color: #f7941d;
}


/* =========================================================
   RIGHT SIDE
   ========================================================= */

.gm-ip-vrb-vehicle-content {
	position: relative;
	width: 100%;
}


/* Heading */

.gm-ip-vrb-vehicle-heading {
	padding-right: 310px;
}

.gm-ip-vrb-vehicle-heading h2 {
	margin: 7px 0 6px;
	color: #0e1622;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 27px;
	font-weight: 600;
	line-height: 1.15;
}

.gm-ip-vrb-vehicle-heading p {
	max-width: 650px;
	margin: 0;
	color: #4e5866;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
}


/* =========================================================
   SEARCH
   ========================================================= */

.gm-ip-vrb-search {
	position: absolute;
	top: 0;
	right: 0;
	width: 285px;
	height: 48px;
	display: flex;
	align-items: center;
	padding: 0 15px;
	background: #ffffff;
	border: 1px solid #dfe3e7;
	border-radius: 6px;
	box-shadow: 0 2px 7px rgba(0, 0, 0, 0.03);
}

.gm-ip-vrb-search i {
	flex: 0 0 auto;
	margin-right: 11px;
	color: #111827;
	font-size: 17px;
}

.gm-ip-vrb-search-input {
	width: 100%;
	padding: 0;
	color: #202733;
	background: transparent;
	border: 0;
	outline: 0;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 14px;
}

.gm-ip-vrb-search-input::placeholder {
	color: #8b939e;
	opacity: 1;
}


/* =========================================================
   LOGO GRID
   ========================================================= */

.gm-ip-vrb-logo-grid {
	margin-top: 28px;
}


/* =========================================================
   CLICKABLE LOGO CARD
   ========================================================= */

.gm-ip-vrb-logo-card {
	width: 100%;
	min-height: 112px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 13px 8px 10px;
	color: #171d27;
	background: #ffffff;
	border: 1px solid #e3e6e9;
	border-radius: 4px;
	text-decoration: none;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
	transition: transform 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

.gm-ip-vrb-logo-card:hover {
	color: #171d27;
	border-color: #f7941d;
	box-shadow: 0 5px 14px rgba(0, 0, 0, 0.09);
	transform: translateY(-3px);
}


/* Logo Image */

.gm-ip-vrb-logo-card img {
	width: auto;
	height: 120px;
	object-fit: contain;
	display: block;
	margin-bottom: 7px;
}


/* Logo Name */

.gm-ip-vrb-logo-card span {
	display: block;
	color: #202733;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.2;
	text-align: center;
}


/* =========================================================
   LARGE DESKTOP
   ========================================================= */

@media (min-width: 1400px) {

	.gm-ip-vrb-vehicle-section {
		padding-top: 60px;
	}

	.gm-ip-vrb-category-box {
		padding: 20px 15px;
	}

	.gm-ip-vrb-category-title {
		font-size: 23px;
	}

	.gm-ip-vrb-vehicle-heading h2 {
		font-size: 29px;
	}

	.gm-ip-vrb-logo-card {
		min-height: 115px;
	}
}


/* =========================================================
   TABLET / SMALL DESKTOP
   ========================================================= */

@media (max-width: 1199.98px) {

	.gm-ip-vrb-vehicle-heading {
		padding-right: 250px;
	}

	.gm-ip-vrb-search {
		width: 230px;
	}

	.gm-ip-vrb-logo-card {
		min-height: 108px;
	}

	.gm-ip-vrb-logo-card img {
		width: 78px;
		height: 53px;
	}
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991.98px) {

	.gm-ip-vrb-vehicle-section {
		padding: 45px 0 60px;
	}


    /* Sidebar becomes full width */

	.gm-ip-vrb-category-box {
		margin-bottom: 5px;
	}


    /* Search moves below heading */

	.gm-ip-vrb-vehicle-heading {
		padding-right: 0;
	}

	.gm-ip-vrb-search {
		position: relative;
		top: auto;
		right: auto;
		width: 100%;
		margin-top: 20px;
	}

	.gm-ip-vrb-logo-grid {
		margin-top: 20px;
	}
}

@media (max-width: 767.98px) {

	.gm-ip-vrb-vehicle-section {
		padding: 35px 0 50px;
	}


    /* Category */

	.gm-ip-vrb-category-box {
		padding: 17px 12px;
	}

	.gm-ip-vrb-category-title {
		font-size: 20px;
		margin-bottom: 14px;
	}

	.gm-ip-vrb-accordion-button {
		padding: 14px 10px;
		font-size: 15px;
	}

	.gm-ip-vrb-category-link {
		padding-left: 8px;
		font-size: 14px;
	}


    /* Heading */

	.gm-ip-vrb-vehicle-heading h2 {
		margin-top: 0;
		font-size: 23px;
	}

	.gm-ip-vrb-vehicle-heading p {
		font-size: 14px;
	}


    /* Search */

	.gm-ip-vrb-search {
		height: 46px;
		margin-top: 17px;
	}


    /* Logos */

	.gm-ip-vrb-logo-grid {
		margin-top: 18px;
	}

	.gm-ip-vrb-logo-card {
		min-height: 105px;
		padding: 10px 6px;
	}

	.gm-ip-vrb-logo-card img {
		width: 72px;
		height: 50px;
	}

	.gm-ip-vrb-logo-card span {
		font-size: 13px;
	}
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 479.98px) {

	.gm-ip-vrb-category-title {
		font-size: 18px;
	}

	.gm-ip-vrb-vehicle-heading h2 {
		font-size: 20px;
	}

	.gm-ip-vrb-vehicle-heading p {
		font-size: 13px;
	}

	.gm-ip-vrb-logo-card {
		min-height: 100px;
	}

	.gm-ip-vrb-logo-card img {
		width: auto;
		height: 80px;
	}

	.gm-ip-vrb-logo-card span {
		font-size: 12px;
	}
}

/* =========================================================
   GEAR MATE - RIGHT SIDE VEHICLE SELECTOR

   Unique Prefix:
   gm-ip-vrb-right-

   ========================================================= */


/* Main wrapper */

.gm-ip-vrb-right-wrapper {
	position: relative;
	width: 100%;
}


/* =========================================================
   HEADER
   ========================================================= */

.gm-ip-vrb-right-header {
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 27px;
}

.gm-ip-vrb-right-heading-content {
	min-width: 0;
}


/* Eyebrow */

.gm-ip-vrb-right-eyebrow {
	display: block;
	margin-bottom: 5px;
	color: #f7941d;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.3;
}


/* Main heading */

.gm-ip-vrb-right-title {
	margin: 0 0 7px;
	color: #0e1622;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 30px;
	font-weight: 600;
	line-height: 1.15;
}


/* Description */

.gm-ip-vrb-right-description {
	max-width: 760px;
	margin: 0;
	color: #4e5866;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
}


/* =========================================================
   BRAND LOGO
   ========================================================= */

.gm-ip-vrb-right-brand {
	flex: 0 0 145px;
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	padding-top: 2px;
}

.gm-ip-vrb-right-brand-image {
	width: 135px;
	height: 58px;
	object-fit: contain;
	display: block;
}


/* =========================================================
   FILTERS
   ========================================================= */

.gm-ip-vrb-right-filters {
	display: flex;
	align-items: stretch;
	gap: 12px;
	width: 100%;
	margin-bottom: 18px;
}


/* Search */

.gm-ip-vrb-right-search {
	flex: 1;
	min-width: 0;
	height: 48px;
	display: flex;
	align-items: center;
	padding: 0 16px;
	background: #ffffff;
	border: 1px solid #dfe4e9;
	border-radius: 7px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.025);
}

.gm-ip-vrb-right-search > i {
	flex: 0 0 auto;
	margin-right: 12px;
	color: #13213a;
	font-size: 18px;
}

.gm-ip-vrb-right-search-input {
	width: 100%;
	min-width: 0;
	padding: 0;
	color: #202733;
	background: transparent;
	border: 0;
	outline: 0;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 14px;
}

.gm-ip-vrb-right-search-input::placeholder {
	color: #929aa5;
	opacity: 1;
}


/* Year */

.gm-ip-vrb-right-year {
	flex: 0 0 185px;
	height: 48px;
	display: flex;
	align-items: center;
	padding: 0 13px;
	background: #ffffff;
	border: 1px solid #dfe4e9;
	border-radius: 7px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.025);
}

.gm-ip-vrb-right-year > i {
	flex: 0 0 auto;
	margin-right: 10px;
	color: #13213a;
	font-size: 17px;
}

.gm-ip-vrb-right-year-select {
	width: 100%;
	color: #17233a;
	background-color: transparent;
	border: 0;
	outline: 0;
	cursor: pointer;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 14px;
}


/* =========================================================
   CARD GRID
   ========================================================= */

.gm-ip-vrb-right-grid {
	width: 100%;
}


/* =========================================================
   VEHICLE CARD
   ========================================================= */

.gm-ip-vrb-right-card {
	position: relative;
	width: 100%;
	height: 100%;
	min-height: 205px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	color: #14213a;
	background: #ffffff;
	border: 1px solid #e2e6ea;
	border-radius: 7px;
	text-decoration: none;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.045);
	transition: transform 0.22s ease,
        box-shadow 0.22s ease,
        border-color 0.22s ease;
}

.gm-ip-vrb-right-card:hover {
	color: #14213a;
	border-color: #cbd3dc;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.09);
	transform: translateY(-3px);
}


/* =========================================================
   VEHICLE IMAGE
   ========================================================= */

.gm-ip-vrb-right-card-image {
	width: 100%;
	height: 145px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 12px 15px 4px;
	background: #ffffff;
}

.gm-ip-vrb-right-card-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}


/* =========================================================
   CARD INFORMATION
   ========================================================= */

.gm-ip-vrb-right-card-info {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 14px 13px;
}

.gm-ip-vrb-right-card-info h3 {
	margin: 0 0 4px;
	color: #12213d;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.25;
}

.gm-ip-vrb-right-card-info p {
	margin: 0;
	color: #61708a;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.25;
}


/* =========================================================
   ARROW
   ========================================================= */

.gm-ip-vrb-right-card-arrow {
	flex: 0 0 43px;
	width: 43px;
	height: 43px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #f7941d;
	background: rgba(248,129,48,.1);
	border-radius: 50%;
	font-size: 21px;
	transition: background 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

.gm-ip-vrb-right-card:hover .gm-ip-vrb-right-card-arrow {
	color: #ffffff;
	background: #f7941d;
	transform: translateX(2px);
}


/* =========================================================
   LARGE DESKTOP
   ========================================================= */

@media (min-width: 1400px) {

	.gm-ip-vrb-right-title {
		font-size: 32px;
	}

	.gm-ip-vrb-right-card {
		min-height: 215px;
	}

	.gm-ip-vrb-right-card-image {
		height: 150px;
	}
}


/* =========================================================
   TABLET / SMALL DESKTOP
   ========================================================= */

@media (max-width: 1199.98px) {

	.gm-ip-vrb-right-header {
		gap: 20px;
	}

	.gm-ip-vrb-right-title {
		font-size: 27px;
	}

	.gm-ip-vrb-right-brand {
		flex-basis: 120px;
	}

	.gm-ip-vrb-right-brand-image {
		width: 115px;
		height: 50px;
	}

	.gm-ip-vrb-right-card {
		min-height: 195px;
	}

	.gm-ip-vrb-right-card-image {
		height: 135px;
	}
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991.98px) {

	.gm-ip-vrb-right-header {
		display: block;
		margin-bottom: 20px;
	}

	.gm-ip-vrb-right-brand {
		position: absolute;
		top: 0;
		right: 0;
		padding: 0;
	}

	.gm-ip-vrb-right-heading-content {
		padding-right: 140px;
	}

	.gm-ip-vrb-right-title {
		font-size: 26px;
	}

	.gm-ip-vrb-right-description {
		font-size: 14px;
	}

	.gm-ip-vrb-right-filters {
		gap: 10px;
	}

	.gm-ip-vrb-right-year {
		flex-basis: 165px;
	}
}

@media (max-width: 767.98px) {

	.gm-ip-vrb-right-title {
		font-size: 23px;
	}

	.gm-ip-vrb-right-eyebrow {
		font-size: 10px;
	}

	.gm-ip-vrb-right-description {
		font-size: 13px;
		line-height: 1.45;
	}

	.gm-ip-vrb-right-heading-content {
		padding-right: 105px;
	}

	.gm-ip-vrb-right-brand {
		top: 0;
	}

	.gm-ip-vrb-right-brand-image {
		width: 95px;
		height: 42px;
	}


    /* Stack filters */

	.gm-ip-vrb-right-filters {
		flex-direction: column;
		gap: 9px;
		margin-bottom: 16px;
	}

	.gm-ip-vrb-right-search {
		width: 100%;
		height: 46px;
	}

	.gm-ip-vrb-right-year {
		width: 100%;
		height: 46px;
		flex-basis: auto;
	}


    /* Cards */

	.gm-ip-vrb-right-card {
		min-height: 210px;
	}

	.gm-ip-vrb-right-card-image {
		height: 155px;
		padding: 12px 20px 3px;
	}

	.gm-ip-vrb-right-card-info {
		padding: 9px 14px 12px;
	}

	.gm-ip-vrb-right-card-info h3 {
		font-size: 14px;
	}

	.gm-ip-vrb-right-card-info p {
		font-size: 13px;
	}
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 479.98px) {

	.gm-ip-vrb-right-title {
		font-size: 20px;
	}

	.gm-ip-vrb-right-eyebrow {
		font-size: 12px;
	}

	.gm-ip-vrb-right-description {
		font-size: 12px;
	}

	.gm-ip-vrb-right-heading-content {
		padding-right: 85px;
	}

	.gm-ip-vrb-right-brand-image {
		width: 78px;
		height: 35px;
	}

	.gm-ip-vrb-right-card {
		min-height: 200px;
	}

	.gm-ip-vrb-right-card-image {
		height: 145px;
	}

	.gm-ip-vrb-right-card-arrow {
		flex-basis: 38px;
		width: 38px;
		height: 38px;
		font-size: 18px;
	}
}

/* =========================================================
   GEAR MATE - VEHICLE SPECIFICATION HERO

   Unique Prefix:
   gm-ip-vspec-

   Completely independent from Home Page CSS
   ========================================================= */


/* =========================================================
   MAIN WRAPPER
   ========================================================= */

.gm-ip-vspec-wrapper {
	position: relative;
	width: 100%;
	overflow: hidden;
	background: linear-gradient(
            105deg,
            #ffffff 0%,
            #ffffff 62%,
            #f4f6f7 100%
        );
	border-bottom: 1px solid #e9ecef;
}


/* Decorative angled background */

.gm-ip-vspec-wrapper::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 34%;
	height: 100%;
	background: #f1f3f4;
	clip-path: polygon(
        25% 0,
        100% 0,
        100% 100%,
        0 100%
    );
	opacity: 0.75;
	pointer-events: none;
}


/* =========================================================
   INNER
   ========================================================= */

.gm-ip-vspec-inner {
	position: relative;
	min-height: 235px;
	display: flex;
	align-items: center;
	z-index: 2;
	justify-content: space-between;
}


/* =========================================================
   LEFT CONTENT
   ========================================================= */

.gm-ip-vspec-content {
	position: relative;
	width: 61%;
	padding: 27px 20px 27px 0;
	z-index: 3;
}


/* =========================================================
   BREADCRUMB
   ========================================================= */

.gm-ip-vspec-breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 15px;
	color: #344054;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.5;
	text-transform: uppercase;
}

.gm-ip-vspec-breadcrumb a {
	color: #344054;
	text-decoration: none;
	transition: color 0.2s ease;
}

.gm-ip-vspec-breadcrumb a:hover {
	color: #f7941d;
}

.gm-ip-vspec-breadcrumb span {
	color: #667085;
}


/* =========================================================
   TITLE
   ========================================================= */

.gm-ip-vspec-title {
	max-width: 680px;
	margin: 0 0 27px;
	color: #101827;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 27px;
	font-weight: 600;
	line-height: 1.3;
}


/* =========================================================
   SPECIFICATIONS
   ========================================================= */

.gm-ip-vspec-details {
	display: flex;
	align-items: center;
	gap: 38px;
}

.gm-ip-vspec-detail {
	display: flex;
	align-items: center;
	gap: 11px;
}


/* =========================================================
   SPEC ICON
   ========================================================= */

.gm-ip-vspec-icon {
	width: 52px;
	height: 52px;
	flex: 0 0 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #101827;
	background: #ffffff;
	border: 2px solid #f7941d;
	border-radius: 50%;
	font-size: 21px;
	box-sizing: border-box;
}

.gm-ip-vspec-icon i {
	line-height: 1;
}


/* =========================================================
   SPEC TEXT
   ========================================================= */

.gm-ip-vspec-detail-text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.gm-ip-vspec-label {
	color: #172033;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.3;
}

.gm-ip-vspec-detail-text strong {
	color: #172033;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
}


/* =========================================================
   VEHICLE IMAGE AREA
   ========================================================= */

.gm-ip-vspec-vehicle {
	position: relative;
	width: 22%;
	height: 235px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 15px 0 10px;
	z-index: 3;
}

.gm-ip-vspec-vehicle-image {
	width: 100%;
	max-width: 430px;
	height: 155px;
	display: block;
	object-fit: contain;
	object-position: center center;
}


/* Vehicle caption */

.gm-ip-vspec-vehicle-name {
	display: block;
	margin-top: 4px;
	color: #596474;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.4;
	text-align: center;
}


/* =========================================================
   LARGE DESKTOP
   ========================================================= */

@media (min-width: 1400px) {

	.gm-ip-vspec-inner {
		min-height: 250px;
	}

	.gm-ip-vspec-content {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.gm-ip-vspec-title {
		font-size: 29px;
	}

	.gm-ip-vspec-vehicle {
		height: 250px;
	}

	.gm-ip-vspec-vehicle-image {
		max-width: 470px;
		height: 170px;
	}
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1199.98px) {

	.gm-ip-vspec-content {
		width: 63%;
	}

	.gm-ip-vspec-vehicle {
		width: 37%;
	}

	.gm-ip-vspec-title {
		font-size: 24px;
	}

	.gm-ip-vspec-details {
		gap: 25px;
	}

	.gm-ip-vspec-icon {
		width: 48px;
		height: 48px;
		flex-basis: 48px;
		font-size: 19px;
	}
}


/* =========================================================
   TABLET / MOBILE
   ========================================================= */

@media (max-width: 991.98px) {

	.gm-ip-vspec-inner {
		min-height: auto;
		flex-direction: column;
		align-items: stretch;
	}

	.gm-ip-vspec-content {
		width: 100%;
		padding: 25px 0 10px;
	}

	.gm-ip-vspec-title {
		max-width: 100%;
		margin-bottom: 22px;
		font-size: 23px;
	}

	.gm-ip-vspec-vehicle {
		width: 100%;
		height: 190px;
		padding: 5px 0 20px;
	}

	.gm-ip-vspec-vehicle-image {
		width: 80%;
		max-width: 430px;
		height: 135px;
	}

	.gm-ip-vspec-vehicle-name {
		font-size: 12px;
	}

	.gm-ip-vspec-wrapper::after {
		width: 100%;
		height: 45%;
		top: auto;
		bottom: 0;
		clip-path: none;
		opacity: 0.5;
	}
}

@media (max-width: 767.98px) {

	.gm-ip-vspec-content {
		padding-top: 20px;
	}

	.gm-ip-vspec-breadcrumb {
		gap: 5px;
		margin-bottom: 13px;
		font-size: 12px;
		line-height: 1.6;
	}

	.gm-ip-vspec-title {
		margin-bottom: 20px;
		font-size: 20px;
		line-height: 1.3;
	}

	.gm-ip-vspec-details {
		width: 100%;
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 10px;
	}

	.gm-ip-vspec-detail {
		gap: 6px;
		align-items: center;
	}

	.gm-ip-vspec-icon {
		width: 42px;
		height: 42px;
		flex-basis: 42px;
		font-size: 16px;
		border-width: 2px;
	}

	.gm-ip-vspec-label {
		font-size: 12px;
	}

	.gm-ip-vspec-detail-text strong {
		font-size: 12px;
	}

	.gm-ip-vspec-vehicle {
		height: 165px;
		padding-top: 0;
	}

	.gm-ip-vspec-vehicle-image {
		width: 90%;
		height: 115px;
	}

	.gm-ip-vspec-vehicle-name {
		max-width: 90%;
		font-size: 12px;
	}
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 479.98px) {

	.gm-ip-vspec-breadcrumb {
		font-size: 12px;
	}

	.gm-ip-vspec-title {
		font-size: 18px;
	}

	.gm-ip-vspec-details {
		gap: 5px;
	}

	.gm-ip-vspec-detail {
		gap: 5px;
	}

	.gm-ip-vspec-icon {
		width: 37px;
		height: 37px;
		flex-basis: 37px;
		font-size: 14px;
	}

	.gm-ip-vspec-label {
		font-size: 12px;
	}

	.gm-ip-vspec-detail-text strong {
		font-size: 12px;
	}

	.gm-ip-vspec-vehicle {
		height: 145px;
	}

	.gm-ip-vspec-vehicle-image {
		height: 100px;
	}
}

/* =========================================================
   GEAR MATE PRODUCT LISTING
   UNIQUE PREFIX: gm-ip-pl-
   ========================================================= */


/* =========================================================
   MAIN WRAPPER
   ========================================================= */

.gm-ip-pl-wrapper {
	width: 100%;
	padding: 30px 0 70px;
	background: #ffffff;
}

.gm-ip-pl-products-area {
	width: 100%;
}


/* =========================================================
   FILTER SIDEBAR
   ========================================================= */

.gm-ip-pl-filter-sidebar {
	width: 100%;
	padding: 20px;
	background: #ffffff;
	border: 1px solid #e4e7eb;
	border-radius: 9px;
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.045);
}

.gm-ip-pl-filter-title {
	color: #111827;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 22px;
	font-weight: 600;
	line-height: 1.25;
}

.gm-ip-pl-filter-line {
	position: relative;
	width: 100%;
	height: 1px;
	margin: 16px 0 8px;
	background: #e5e7eb;
}

.gm-ip-pl-filter-line::before {
	content: "";
	position: absolute;
	left: 0;
	top: -1px;
	width: 90px;
	height: 2px;
	background: #f7941d;
}


/* =========================================================
   ACCORDION
   ========================================================= */

.gm-ip-pl-filter-accordion {
	--bs-accordion-border-width: 0;
	--bs-accordion-bg: transparent;
}

.gm-ip-pl-filter-item {
	background: transparent;
	border: 0;
	border-bottom: 1px solid #e5e7eb;
}

.gm-ip-pl-filter-button {
	padding: 15px 5px;
	color: #172033 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
}

.gm-ip-pl-filter-button::after {
	width: 11px;
	height: 11px;
	background-size: 11px;
}

.gm-ip-pl-filter-body {
	padding: 3px 5px 17px;
}


/* =========================================================
   PRICE
   ========================================================= */

.gm-ip-pl-price-fields {
	display: flex;
	align-items: center;
	gap: 10px;
}

.gm-ip-pl-price-box {
	flex: 1;
	padding: 10px 9px;
	color: #172033;
	background: #ffffff;
	border: 1px solid #dfe4e9;
	border-radius: 5px;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 13px;
	text-align: center;
}

.gm-ip-pl-price-dash {
	color: #202733;
}

.gm-ip-pl-range-wrapper {
	position: relative;
	height: 30px;
	margin: 13px 7px 5px;
}

.gm-ip-pl-range-line {
	position: absolute;
	top: 13px;
	left: 0;
	right: 0;
	height: 4px;
	background: #f7941d;
	border-radius: 10px;
}

.gm-ip-pl-range-dot {
	position: absolute;
	top: 5px;
	width: 20px;
	height: 20px;
	background: #f7941d;
	border: 2px solid #ffffff;
	border-radius: 50%;
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.2);
}

.gm-ip-pl-range-start {
	left: -7px;
}

.gm-ip-pl-range-end {
	right: -7px;
}

.gm-ip-pl-price-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-top: 5px;
	color: #172033;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 14px;
}

.gm-ip-pl-apply-btn {
	min-width: 86px;
	padding: 10px 17px;
	color: #ffffff;
	background: #000000;
	border: 1px solid #000000;
	border-radius: 5px;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 13px;
	cursor: pointer;
	transition: 0.2s ease;
}

.gm-ip-pl-apply-btn:hover {
	background: #f7941d;
	border-color: #f7941d;
}


/* =========================================================
   CHECKBOXES
   ========================================================= */

.gm-ip-pl-check-row {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 10px;
	color: #3b4555;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 13px;
	cursor: pointer;
}

.gm-ip-pl-check-row:last-child {
	margin-bottom: 0;
}

.gm-ip-pl-check-row input {
	width: 15px;
	height: 15px;
	accent-color: #f7941d;
}


/* =========================================================
   HELP BOX
   ========================================================= */

.gm-ip-pl-help-box {
	display: flex;
	align-items: center;
	gap: 13px;
	margin-top: 22px;
	padding: 17px;
	background: #f8f9fa;
	border: 1px solid #e4e7eb;
	border-radius: 7px;
}

.gm-ip-pl-help-icon {
	flex: 0 0 45px;
	width: 45px;
	height: 45px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #f7941d;
	font-size: 27px;
}

.gm-ip-pl-help-content {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.gm-ip-pl-help-content strong {
	color: #172033;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 12px;
}

.gm-ip-pl-help-content span {
	color: #667085;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 12px;
}

.gm-ip-pl-help-content a {
	color: #f7941d;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 13px;
	text-decoration: none;
}


/* =========================================================
   TOOLBAR
   ========================================================= */

.gm-ip-pl-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	width: 100%;
	margin-bottom: 16px;
}


/* =========================================================
   VIEW BUTTONS
   ========================================================= */

.gm-ip-pl-view-buttons {
	display: flex;
	align-items: center;
}

.gm-ip-pl-view-btn {
	width: 43px;
	height: 39px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #172033;
	background: #ffffff;
	border: 1px solid #dfe4e9;
	font-size: 17px;
	cursor: pointer;
	transition: 0.2s ease;
}

.gm-ip-pl-view-btn:first-child {
	border-radius: 5px 0 0 5px;
}

.gm-ip-pl-view-btn:last-child {
	border-left: 0;
	border-radius: 0 5px 5px 0;
}

.gm-ip-pl-view-btn:hover {
	color: #ffffff;
	background: #f7941d;
	border-color: #f7941d;
}

.gm-ip-pl-view-btn.gm-ip-pl-active {
	color: #ffffff;
	background: #f7941d;
	border-color: #f7941d;
}


/* =========================================================
   SORT
   ========================================================= */

.gm-ip-pl-sort-area {
	display: flex;
	align-items: center;
	gap: 15px;
}

.gm-ip-pl-sort-select {
	width: 160px;
	height: 39px;
	padding: 0 12px;
	color: #172033;
	background: #ffffff;
	border: 1px solid #dfe4e9;
	border-radius: 5px;
	outline: none;
	font-family: "federoregular", "Federo", sans-serif;
	cursor: pointer;
}

.gm-ip-pl-product-count {
	color: #687386;
	white-space: nowrap;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 13px;
}


/* =========================================================
   GRID PRODUCT CARD
   ========================================================= */

.gm-ip-pl-product-card {
	width: 100%;
	height: 100%;
	min-height: 365px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background: #ffffff;
	border: 1px solid #e4e8ec;
	border-radius: 8px;
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.035);
	transition: transform 0.2s ease,
        box-shadow 0.2s ease;
}

.gm-ip-pl-product-card:hover {
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.08);
	transform: translateY(-2px);
}


/* =========================================================
   PRODUCT IMAGE
   ========================================================= */

.gm-ip-pl-product-image {
	width: 100%;
	height: 210px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 18px;
	background: #ffffff;
	text-decoration: none;
}

.gm-ip-pl-product-image img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	transition: transform 0.25s ease;
}

.gm-ip-pl-product-card:hover
.gm-ip-pl-product-image img {
	transform: scale(1.03);
}


/* =========================================================
   PRODUCT CONTENT
   ========================================================= */

.gm-ip-pl-product-content {
	flex: 1;
	display: flex;
	flex-direction: column;
	padding: 5px 16px 15px;
}

.gm-ip-pl-product-name {
	min-height: 58px;
	margin-bottom: 8px;
	color: #172a4b;
	font-family: "federoregular", "Federo", sans-serif;
	font-weight: 400;
	line-height: 1.4;
	text-decoration: none;
}

.gm-ip-pl-product-name:hover {
	color: #f7941d;
}


/* Divider */

.gm-ip-pl-product-divider {
	width: 100%;
	height: 1px;
	margin: 5px 0 13px;
	background: #8b8b8b;
}


/* =========================================================
   PRODUCT PRICE
   ========================================================= */

.gm-ip-pl-product-price {
	color: #111827;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.3;
}

.gm-ip-pl-product-vat {
	margin-top: 3px;
	color: #687386;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 12px;
	line-height: 1.3;
}


/* =========================================================
   ADD TO BASKET
   ========================================================= */

.gm-ip-pl-basket-btn {
	width: 100%;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 13px;
	color: #ffffff;
	background: #000000;
	border: 1px solid #000000;
	border-radius: 5px;
	font-family: "federoregular", "Federo", sans-serif;
	cursor: pointer;
	transition: 0.2s ease;
}

.gm-ip-pl-basket-btn i {
	font-size: 19px;
}

.gm-ip-pl-basket-btn:hover {
	color: #ffffff;
	background: #f7941d;
	border-color: #f7941d;
}


/* =========================================================
   =================== LIST VIEW ===========================
   ========================================================= */

.gm-ip-pl-wrapper.gm-ip-pl-list-mode
.gm-ip-pl-product-grid {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.gm-ip-pl-wrapper.gm-ip-pl-list-mode
.gm-ip-pl-product-column {
	width: 100%;
	padding: 0;
}


/* List card */

.gm-ip-pl-wrapper.gm-ip-pl-list-mode
.gm-ip-pl-product-card {
	width: 100%;
	min-height: 265px;
	display: flex;
	flex-direction: row;
	overflow: hidden;
	border-radius: 7px;
	transform: none;
}


/* List image */

.gm-ip-pl-wrapper.gm-ip-pl-list-mode
.gm-ip-pl-product-image {
	flex: 0 0 35%;
	width: 35%;
	height: 265px;
	padding: 25px 35px;
}


/* List content */

.gm-ip-pl-wrapper.gm-ip-pl-list-mode
.gm-ip-pl-product-content {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	padding: 30px 30px 25px;
}


/* List product title */

.gm-ip-pl-wrapper.gm-ip-pl-list-mode
.gm-ip-pl-product-name {
	min-height: auto;
	margin: 0;
	max-width: 700px;
	color: #172a4b;
	font-size: 16px;
	line-height: 1.45;
}


/* List divider */

.gm-ip-pl-wrapper.gm-ip-pl-list-mode
.gm-ip-pl-product-divider {
	margin-top: auto;
	margin-bottom: 40px;
}


/* List price */

.gm-ip-pl-wrapper.gm-ip-pl-list-mode
.gm-ip-pl-product-price {
	font-size: 17px;
}

.gm-ip-pl-wrapper.gm-ip-pl-list-mode
.gm-ip-pl-product-vat {
	font-size: 12px;
}


/* List basket button */

.gm-ip-pl-wrapper.gm-ip-pl-list-mode
.gm-ip-pl-basket-btn {
	width: 180px;
	align-self: flex-end;
	margin-top: 15px;
}


/* =========================================================
   LARGE DESKTOP
   ========================================================= */

@media (min-width: 1400px) {

	.gm-ip-pl-product-image {
		height: 330px;
	}

	.gm-ip-pl-product-card {
		min-height: 380px;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-card {
		min-height: 285px;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-image {
		height: 285px;
	}
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1199.98px) {

	.gm-ip-pl-filter-sidebar {
		padding: 17px;
	}

	.gm-ip-pl-filter-title {
		font-size: 20px;
	}

	.gm-ip-pl-product-image {
		height: 190px;
	}

	.gm-ip-pl-product-card {
		min-height: 345px;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-image {
		flex-basis: 32%;
		width: 32%;
	}
}


/* =========================================================
   TABLET / MOBILE
   ========================================================= */

@media (max-width: 991.98px) {

	.gm-ip-pl-wrapper {
		padding-top: 20px;
	}

	.gm-ip-pl-filter-sidebar {
		margin-bottom: 5px;
	}

	.gm-ip-pl-toolbar {
		margin-top: 5px;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-card {
		min-height: 230px;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-image {
		height: 230px;
		padding: 20px;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-content {
		padding: 25px;
	}
}

@media (max-width: 767.98px) {

	.gm-ip-pl-toolbar {
		align-items: flex-start;
	}

	.gm-ip-pl-sort-area {
		gap: 8px;
	}

	.gm-ip-pl-sort-select {
		width: 130px;
	}

	.gm-ip-pl-product-count {
		display: none;
	}


    /* GRID */

	.gm-ip-pl-product-image {
		height: 220px;
	}

	.gm-ip-pl-product-card {
		min-height: 370px;
	}


    /* LIST */

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-card {
		min-height: auto;
		display: flex;
		flex-direction: column;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-image {
		flex: 0 0 auto;
		width: 100%;
		height: 220px;
		padding: 20px 30px;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-content {
		padding: 18px;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-name {
		font-size: 14px;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-divider {
		margin-top: 18px;
		margin-bottom: 15px;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-basket-btn {
		width: 100%;
		align-self: stretch;
	}
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 479.98px) {

	.gm-ip-pl-filter-sidebar {
		padding: 15px;
	}

	.gm-ip-pl-filter-title {
		font-size: 18px;
	}

	.gm-ip-pl-toolbar {
		gap: 8px;
	}

	.gm-ip-pl-view-btn {
		width: 40px;
		height: 38px;
	}

	.gm-ip-pl-sort-select {
		width: 115px;
		font-size: 12px;
	}

	.gm-ip-pl-product-image {
		height: 200px;
	}

	.gm-ip-pl-product-card {
		min-height: 350px;
	}

	.gm-ip-pl-wrapper.gm-ip-pl-list-mode
    .gm-ip-pl-product-image {
		height: 190px;
	}
}

.prosec {
	width: 100%;
	overflow: hidden;
}

.gm-pv-wrapper {
	width: 100%;
	padding: 18px 0 70px;
	background: #ffffff;
	color: #111b33;
}

.gm-pv-product-layout {
	align-items: flex-start;
}


/* =========================================================
   BREADCRUMB
   ========================================================= */

.gm-pv-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 18px;
	color: #667085;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 14px;
}

.gm-pv-breadcrumb a {
	color: #f29621;
	text-decoration: none;
	transition: 0.2s ease;
}

.gm-pv-breadcrumb a:hover {
	color: #111b33;
}

.gm-pv-breadcrumb span:last-child {
	color: #172a4b;
}


/* =========================================================
   LEFT STICKY GALLERY
   ========================================================= */

.gm-pv-gallery-sticky {
	position: sticky;
	top: 20px;
	width: 100%;
}

.gm-pv-main-image-wrap {
	position: relative;
	width: 100%;
	overflow: hidden;
	padding: 10px;
	background: #ffffff;
	border: 1px solid #e2e6eb;
	border-radius: 8px;
	box-shadow: 0 3px 14px rgba(0, 0, 0, 0.045);
}

.gm-pv-main-image-button {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: zoom-in;
}

.gm-pv-main-image {
	display: block;
	width: 100%;
	height: 490px;
	object-fit: contain;
	background: #ffffff;
	transition: transform 0.25s ease;
}

.gm-pv-main-image-button:hover
.gm-pv-main-image {
	transform: scale(1.015);
}


/* =========================================================
   MAIN IMAGE ARROWS
   ========================================================= */

.gm-pv-main-arrow {
	position: absolute;
	z-index: 5;
	top: 50%;
	width: 42px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: -21px;
	color: #111b33;
	background: rgba(255, 255, 255, 0.96);
	border: 1px solid #e0e4e8;
	border-radius: 50%;
	font-size: 18px;
	cursor: pointer;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
	transition: 0.2s ease;
}

.gm-pv-main-arrow:hover {
	color: #ffffff;
	background: #000000;
	border-color: #000000;
}

.gm-pv-main-prev {
	left: 22px;
}

.gm-pv-main-next {
	right: 22px;
}


/* =========================================================
   ZOOM
   ========================================================= */

.gm-pv-zoom-button {
	position: absolute;
	right: 22px;
	bottom: 22px;
	z-index: 5;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	background: rgba(17, 27, 51, 0.85);
	border: 0;
	border-radius: 50%;
	font-size: 17px;
	cursor: pointer;
	transition: 0.2s ease;
}

.gm-pv-zoom-button:hover {
	background: #f7941d;
}


/* =========================================================
   THUMBNAIL SLIDER
   ========================================================= */

.gm-pv-thumbnail-wrapper {
	display: flex;
	align-items: center;
	gap: 9px;
	width: 100%;
	margin-top: 13px;
}

.gm-pv-thumbnail-viewport {
	flex: 1;
	overflow: hidden;
}

.gm-pv-thumbnail-track {
	display: flex;
	gap: 10px;
	width: max-content;
	transition: transform 0.35s ease;
}

.gm-pv-thumbnail {
	flex: 0 0 108px;
	width: 108px;
	height: 78px;
	padding: 3px;
	overflow: hidden;
	background: #ffffff;
	border: 2px solid #e1e5e9;
	border-radius: 5px;
	cursor: pointer;
	transition: border-color 0.2s ease,
        transform 0.2s ease;
}

.gm-pv-thumbnail:hover {
	border-color: #f7941d;
}

.gm-pv-thumbnail-active {
	border-color: #f7941d;
}

.gm-pv-thumbnail img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	border-radius: 3px;
}

.gm-pv-thumb-arrow {
	flex: 0 0 35px;
	width: 35px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #172033;
	background: #ffffff;
	border: 0;
	font-size: 20px;
	cursor: pointer;
	transition: 0.2s ease;
}

.gm-pv-thumb-arrow:hover {
	color: #f7941d;
}


/* =========================================================
   SERVICE CARDS
   ========================================================= */

.gm-pv-service-row {
	margin-top: 25px;
}

.gm-pv-service-card {
	min-height: 125px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 14px 8px;
	background: #ffffff;
	border: 1px solid #e5e8ec;
	border-radius: 7px;
	text-align: center;
	transition: 0.2s ease;
}

.gm-pv-service-card:hover {
	border-color: #f7941d;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

.gm-pv-service-icon {
	margin-bottom: 8px;
	color: #f7941d;
	font-size: 27px;
}

.gm-pv-service-card strong {
	color: #111b33;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 13px;
	line-height: 1.35;
}

.gm-pv-service-card span {
	margin-top: 4px;
	color: #687386;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 12px;
}


/* =========================================================
   RIGHT PRODUCT DETAILS
   ========================================================= */

.gm-pv-product-details {
	width: 100%;
}

.gm-pv-product-label {
	display: inline-flex;
	padding: 6px 11px;
	color: #ffffff;
	background: #f7941d;
	border-radius: 4px;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 11px;
	font-weight: 600;
}

.gm-pv-product-title {
	margin: 10px 0 6px;
	color: #111b33;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 31px;
	font-weight: 600;
	line-height: 1.15;
}

.gm-pv-short-description {
	margin: 0;
	color: #526176;
	font-family: "federoregular", "Federo", sans-serif;
}


/* =========================================================
   RATING
   ========================================================= */

.gm-pv-rating-row {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 15px;
	color: #172033;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 13px;
}

.gm-pv-stars {
	display: flex;
	gap: 2px;
	color: #f7941d;
	font-size: 17px;
}

.gm-pv-rating-row a {
	margin-left: auto;
	color: #172033;
	text-decoration: underline;
}

.gm-pv-rating-row a:hover {
	color: #f7941d;
}


/* =========================================================
   DIVIDER
   ========================================================= */

.gm-pv-divider {
	width: 100%;
	height: 1px;
	margin: 13px 0;
	background: #dfe4e8;
}


/* =========================================================
   SKU
   ========================================================= */

.gm-pv-meta-row {
	display: flex;
	margin-bottom: 13px;
}

.gm-pv-meta-row > div {
	width: 100%;
	display: flex;
	justify-content: space-between;
}

.gm-pv-meta-label {
	color: #647086;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 13px;
}

.gm-pv-meta-row strong {
	color: #3c4960;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 13px;
	font-weight: 400;
}


/* =========================================================
   STOCK
   ========================================================= */

.gm-pv-stock {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin-bottom: 14px;
}

.gm-pv-stock-dot {
	flex: 0 0 19px;
	width: 19px;
	height: 19px;
	margin-top: 2px;
	background: #19b978;
	border-radius: 50%;
}

.gm-pv-stock > div {
	display: flex;
	flex-direction: column;
}

.gm-pv-stock strong {
	color: #16945f;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 14px;
}

.gm-pv-stock span {
	color: #687386;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 11px;
}


/* =========================================================
   PURCHASE
   ========================================================= */

.gm-pv-purchase-row {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 18px;
}

.gm-pv-price {
	color: #111b33;
	font-family: "Orbitron SemiBold", "Orbitron", sans-serif;
	font-size: 29px;
	font-weight: 600;
}

.gm-pv-vat {
	margin-top: 2px;
	color: #526176;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 13px;
}

.gm-pv-cart-controls {
	display: flex;
	align-items: center;
	gap: 12px;
}


/* =========================================================
   QUANTITY
   ========================================================= */

.gm-pv-quantity {
	height: 46px;
	display: flex;
	align-items: center;
	background: #ffffff;
	border: 1px solid #dce2e8;
	border-radius: 5px;
	overflow: hidden;
}

.gm-pv-quantity button {
	width: 38px;
	height: 46px;
	color: #172033;
	background: #ffffff;
	border: 0;
	font-size: 18px;
	cursor: pointer;
}

.gm-pv-quantity button:hover {
	color: #f7941d;
}

.gm-pv-qty-value {
	min-width: 42px;
	color: #172033;
	border-left: 1px solid #e1e5e9;
	border-right: 1px solid #e1e5e9;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 14px;
	line-height: 46px;
	text-align: center;
}


/* =========================================================
   ADD TO BASKET
   ========================================================= */

.gm-pv-add-basket {
	min-width: 190px;
	height: 46px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 20px;
	color: #ffffff;
	background: #000000;
	border: 1px solid #000000;
	border-radius: 5px;
	font-family: "federoregular", "Federo", sans-serif;
	cursor: pointer;
	transition: 0.2s ease;
}

.gm-pv-add-basket i {
	font-size: 20px;
}

.gm-pv-add-basket:hover {
	background: #f7941d;
	border-color: #f7941d;
}


/* =========================================================
   PRODUCT ACCORDION
   ========================================================= */

.gm-pv-accordion {
	width: 100%;
}

.gm-pv-accordion-item {
	overflow: hidden;
	margin-bottom: 8px;
	background: #ffffff;
	border: 1px solid #e2e6eb;
	border-radius: 6px;
}

.gm-pv-accordion-button {
	width: 100%;
	min-height: 55px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 17px;
	color: #111b33;
	background: #ffffff;
	border: 0;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 18px;
	cursor: pointer;
	text-align: left;
}

.gm-pv-accordion-left {
	display: flex;
	align-items: center;
	gap: 17px;
}

.gm-pv-accordion-left > i {
	color: #111b33;
	font-size: 21px;
}

.gm-pv-accordion-open
.gm-pv-accordion-left > i {
	color: #f7941d;
}

.gm-pv-accordion-icon {
	color: #111b33;
	font-size: 17px;
	transition: transform 0.2s ease;
}

.gm-pv-accordion-open
.gm-pv-accordion-icon {
	color: #f7941d;
}

.gm-pv-accordion-content {
	display: none;
	padding: 0 18px 18px;
	color: #526176;
	font-family: "federoregular", "Federo", sans-serif;
}

.gm-pv-accordion-open
.gm-pv-accordion-content {
	display: block;
}

.gm-pv-accordion-content p {
	margin: 0 0 10px;
}

.gm-pv-accordion-content h3 {
	margin: 10px 0 5px;
	color: #172033;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 16px;
	font-weight: 700;
}

.gm-pv-description-block {
	padding-top: 8px;
	margin-top: 8px;
	border-top: 1px solid #e5e8eb;
}


/* =========================================================
   FEATURES
   ========================================================= */

.gm-pv-feature-list {
	margin: 0;
	padding-left: 19px;
}

.gm-pv-feature-list li {
	margin-bottom: 7px;
}

.gm-pv-feature-list li:last-child {
	margin-bottom: 0;
}


/* =========================================================
   LIGHTBOX
   ========================================================= */

.gm-pv-lightbox {
	position: fixed;
	z-index: 99999;
	inset: 0;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 30px;
	background: rgba(0, 0, 0, 0.92);
}

.gm-pv-lightbox.gm-pv-lightbox-open {
	display: flex;
}

.gm-pv-lightbox-overlay {
	position: absolute;
	inset: 0;
	cursor: pointer;
}

.gm-pv-lightbox-content {
	position: relative;
	z-index: 2;
	width: min(1100px, 94vw);
	height: min(800px, 90vh);
	display: flex;
	align-items: center;
	justify-content: center;
}

.gm-pv-lightbox-image-wrap {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 30px 70px;
}

.gm-pv-lightbox-image {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}


/* =========================================================
   LIGHTBOX BUTTONS
   ========================================================= */

.gm-pv-lightbox-close,
.gm-pv-lightbox-prev,
.gm-pv-lightbox-next {
	position: absolute;
	z-index: 5;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	background: rgba(255, 255, 255, 0.13);
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 50%;
	cursor: pointer;
	transition: 0.2s ease;
}

.gm-pv-lightbox-close {
	top: 5px;
	right: 5px;
	width: 43px;
	height: 43px;
	font-size: 18px;
}

.gm-pv-lightbox-prev,
.gm-pv-lightbox-next {
	top: 50%;
	width: 48px;
	height: 48px;
	margin-top: -24px;
	font-size: 21px;
}

.gm-pv-lightbox-prev {
	left: 5px;
}

.gm-pv-lightbox-next {
	right: 5px;
}

.gm-pv-lightbox-close:hover,
.gm-pv-lightbox-prev:hover,
.gm-pv-lightbox-next:hover {
	color: #ffffff;
	background: #f7941d;
	border-color: #f7941d;
}


/* =========================================================
   LIGHTBOX COUNTER
   ========================================================= */

.gm-pv-lightbox-counter {
	position: absolute;
	bottom: 5px;
	left: 50%;
	transform: translateX(-50%);
	padding: 5px 11px;
	color: #ffffff;
	background: rgba(0, 0, 0, 0.55);
	border-radius: 4px;
	font-family: "federoregular", "Federo", sans-serif;
	font-size: 12px;
}


/* =========================================================
   LARGE DESKTOP
   ========================================================= */

@media (min-width: 1400px) {

	.gm-pv-main-image {
		height: 100%;
	}

	.gm-pv-thumbnail {
		flex-basis: 115px;
		width: 115px;
		height: 82px;
	}

	.gm-pv-product-title {
		font-size: 34px;
	}
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1199.98px) {

	.gm-pv-main-image {
		height: 430px;
	}

	.gm-pv-product-title {
		font-size: 27px;
	}

	.gm-pv-purchase-row {
		flex-direction: column;
		align-items: flex-start;
	}

	.gm-pv-cart-controls {
		width: 100%;
	}

	.gm-pv-add-basket {
		flex: 1;
	}
}


/* =========================================================
   BELOW LG
   ========================================================= */

@media (max-width: 991.98px) {

    /*
       Disable sticky on tablet/mobile.
       The gallery will scroll normally.
    */

	.gm-pv-gallery-sticky {
		position: relative;
		top: auto;
	}

	.gm-pv-main-image {
		height: 480px;
	}

	.gm-pv-product-details {
		margin-top: 10px;
	}
}

@media (max-width: 767.98px) {

	.gm-pv-wrapper {
		padding-top: 14px;
	}

	.gm-pv-breadcrumb {
		gap: 5px;
		margin-bottom: 13px;
		font-size: 11px;
	}

	.gm-pv-main-image {
		height: 350px;
	}

	.gm-pv-main-arrow {
		width: 36px;
		height: 36px;
		margin-top: -18px;
	}

	.gm-pv-main-prev {
		left: 14px;
	}

	.gm-pv-main-next {
		right: 14px;
	}

	.gm-pv-zoom-button {
		right: 14px;
		bottom: 14px;
		width: 36px;
		height: 36px;
	}

	.gm-pv-thumbnail-wrapper {
		gap: 4px;
	}

	.gm-pv-thumbnail {
		flex-basis: 83px;
		width: 83px;
		height: 65px;
	}

	.gm-pv-thumb-arrow {
		flex-basis: 28px;
		width: 28px;
		height: 40px;
	}

	.gm-pv-product-title {
		font-size: 24px;
	}

	.gm-pv-short-description {
		font-size: 13px;
	}

	.gm-pv-rating-row {
		flex-wrap: wrap;
	}

	.gm-pv-rating-row a {
		width: 100%;
		margin-left: 0;
	}

	.gm-pv-purchase-row {
		gap: 15px;
	}

	.gm-pv-cart-controls {
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}

	.gm-pv-quantity {
		width: 100%;
		justify-content: center;
	}

	.gm-pv-add-basket {
		width: 100%;
	}

	.gm-pv-service-card {
		min-height: 115px;
	}

	.gm-pv-service-card strong {
		font-size: 10px;
	}

	.gm-pv-service-card span {
		font-size: 10px;
	}

	.gm-pv-lightbox {
		padding: 15px;
	}

	.gm-pv-lightbox-content {
		width: 100%;
		height: 80vh;
	}

	.gm-pv-lightbox-image-wrap {
		padding: 35px 45px;
	}

	.gm-pv-lightbox-prev,
    .gm-pv-lightbox-next {
		width: 40px;
		height: 40px;
		margin-top: -20px;
	}

	.gm-pv-lightbox-prev {
		left: 0;
	}

	.gm-pv-lightbox-next {
		right: 0;
	}
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 479.98px) {

	.gm-pv-main-image {
		height: 290px;
	}

	.gm-pv-thumbnail {
		flex-basis: 70px;
		width: 70px;
		height: 55px;
	}

	.gm-pv-product-title {
		font-size: 21px;
	}

	.gm-pv-price {
		font-size: 25px;
	}

	.gm-pv-service-card {
		padding: 10px 5px;
	}

	.gm-pv-service-icon {
		font-size: 23px;
	}

	.gm-pv-lightbox-image-wrap {
		padding: 35px;
	}
}
/* =========================================================
   SMOOTH TRANSITIONS - GEARMATE PRODUCT VIEW
   ========================================================= */

.gm-pv-wrapper *,
.gm-pv-wrapper *::before,
.gm-pv-wrapper *::after {
	box-sizing: border-box;
}


/* =========================================================
   MAIN PRODUCT IMAGE - SMOOTH CHANGE
   ========================================================= */

.gm-pv-main-image {
	opacity: 1;
	transform: scale(1);
	transition: opacity 0.35s ease,
        transform 0.45s ease;
}


/* Temporary animation when image changes */

.gm-pv-main-image.gm-pv-image-changing {
	opacity: 0;
	transform: scale(0.98);
}


/* =========================================================
   THUMBNAIL SLIDER - SMOOTH SCROLL
   ========================================================= */

.gm-pv-thumbnail-track {
	will-change: transform;
	transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}


/* =========================================================
   THUMBNAILS
   ========================================================= */

.gm-pv-thumbnail {
	transition: border-color 0.3s ease,
        transform 0.3s ease,
        opacity 0.3s ease,
        box-shadow 0.3s ease;
}

.gm-pv-thumbnail:hover {
	transform: translateY(-2px);
}

.gm-pv-thumbnail-active {
	transform: translateY(-2px);
	box-shadow: 0 0 0 1px #f7941d,
        0 4px 12px rgba(247, 148, 29, 0.12);
}


/* =========================================================
   MAIN IMAGE ARROWS
   ========================================================= */

.gm-pv-main-arrow {
	transition: background 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.gm-pv-main-arrow:hover {
	transform: scale(1.08);
	}


/* =========================================================
   THUMBNAIL ARROWS
   ========================================================= */

.gm-pv-thumb-arrow {
	transition: color 0.3s ease,
        transform 0.3s ease;
}

.gm-pv-thumb-arrow:hover {
	transform: scale(1.08);
}


/* =========================================================
   ZOOM BUTTON
   ========================================================= */

.gm-pv-zoom-button {
	transition: background 0.3s ease,
        transform 0.3s ease;
}

.gm-pv-zoom-button:hover {
	transform: scale(1.08);
}


/* =========================================================
   ACCORDION
   ========================================================= */

.gm-pv-accordion-content {
	display: grid;
	grid-template-rows: 0fr;
	padding: 0 18px;
	opacity: 0;
	overflow: hidden;
	transition: grid-template-rows 0.45s ease,
        opacity 0.35s ease,
        padding 0.45s ease;
}

.gm-pv-accordion-content > * {
	min-height: 0;
}


/* Open accordion */

.gm-pv-accordion-open
.gm-pv-accordion-content {
	grid-template-rows: 1fr;
	padding-top: 0;
	padding-bottom: 18px;
	opacity: 1;
}


/* =========================================================
   ACCORDION BUTTON
   ========================================================= */

.gm-pv-accordion-button {
	transition: color 0.3s ease,
        background 0.3s ease;
}

.gm-pv-accordion-button:hover {
	background: #fafafa;
}

.gm-pv-accordion-icon {
	transition: transform 0.4s ease,
        color 0.3s ease;
}

.gm-pv-accordion-open
.gm-pv-accordion-icon {
	transform: rotate(0deg);
}


/* =========================================================
   SERVICE CARDS
   ========================================================= */

.gm-pv-service-card {
	transition: transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.gm-pv-service-card:hover {
	transform: translateY(-3px);
}


/* =========================================================
   ADD TO BASKET
   ========================================================= */

.gm-pv-add-basket {
	transition: background 0.3s ease,
        border-color 0.3s ease,
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.gm-pv-add-basket:hover {
	transform: translateY(-2px);
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
}

.gm-pv-add-basket:active {
	transform: translateY(0);
}


/* =========================================================
   QUANTITY BUTTONS
   ========================================================= */

.gm-pv-quantity button {
	transition: color 0.2s ease,
        background 0.2s ease;
}

.gm-pv-quantity button:active {
	background: #f5f5f5;
}


/* =========================================================
   LIGHTBOX
   ========================================================= */

.gm-pv-lightbox {
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.35s ease,
        visibility 0.35s ease;
}

.gm-pv-lightbox.gm-pv-lightbox-open {
	opacity: 1;
	visibility: visible;
}


/* =========================================================
   LIGHTBOX CONTENT
   ========================================================= */

.gm-pv-lightbox-content {
	opacity: 0;
	transform: scale(0.94);
	transition: opacity 0.4s ease,
        transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.gm-pv-lightbox.gm-pv-lightbox-open
.gm-pv-lightbox-content {
	opacity: 1;
	transform: scale(1);
}


/* =========================================================
   LIGHTBOX IMAGE
   ========================================================= */

.gm-pv-lightbox-image {
	opacity: 1;
	transform: scale(1);
	transition: opacity 0.3s ease,
        transform 0.35s ease;
}

.gm-pv-lightbox-image.gm-pv-lightbox-image-changing {
	opacity: 0;
	transform: scale(0.97);
}


/* =========================================================
   LIGHTBOX BUTTONS
   ========================================================= */

.gm-pv-lightbox-close,
.gm-pv-lightbox-prev,
.gm-pv-lightbox-next {
	transition: background 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease,
        transform 0.3s ease;
}

.gm-pv-lightbox-close:hover {
	transform: rotate(90deg);
}

.gm-pv-lightbox-prev:hover,
.gm-pv-lightbox-next:hover {
	transform: scale(1.1);
}

@media (max-width: 767.98px) {

	.gm-pv-thumbnail-track {
		transition-duration: 0.45s;
	}

	.gm-pv-accordion-content {
		transition-duration: 0.35s;
	}
}

.content_cms h4 {
	margin: 30px 0 10px;
	font-size: 30px;
}

.content_cms h5 {
	margin: 30px 0 10px;
	font-size: 22px;
	font-family: "federoregular";
	font-weight: bold;
}

.content_cms ul {
	list-style-type: circle;
}

.content_cms p {
	margin-top: 20px;
}

.content_cms ul, .content_cms ol {
	margin-top: 20px;
}

.content_cms li {
	margin-top: 4px;
}
 
/* =========================================================
   GEARMate - GET IN TOUCH
   Unique Prefix: gm-contact-
========================================================= */

.gm-contact-section {
	position: relative;
	padding: 95px 0 110px;
	background: #f7f7f5;
	overflow: hidden;
}

.gm-contact-section::before {
	content: "";
	position: absolute;
	top: -180px;
	left: -180px;
	width: 500px;
	height: 500px;
	background: repeating-linear-gradient(
            135deg,
            rgba(0, 0, 0, 0.025) 0px,
            rgba(0, 0, 0, 0.025) 2px,
            transparent 2px,
            transparent 25px);
	transform: rotate(15deg);
	pointer-events: none;
}

.gm-contact-section::after {
	content: "";
	position: absolute;
	right: -150px;
	bottom: -250px;
	width: 550px;
	height: 550px;
	border: 80px solid rgba(247, 148, 29, 0.08);
	transform: rotate(45deg);
	pointer-events: none;
}

.gm-contact-heading {
	position: relative;
	z-index: 2;
	margin-bottom: 55px;
}

.gm-contact-eyebrow {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	margin-bottom: 12px;
	color: #f7941d;
	font-family: "federoregular", sans-serif;
	font-weight: 600;
}

.gm-contact-eyebrow span {
	width: 65px;
	height: 2px;
	background: #f7941d;
}

.gm-contact-heading h2 {
	margin: 0;
	color: #171717;
	font-family: "Orbitron SemiBold", sans-serif;
	font-size: 42px;
	line-height: 1.2;
}

.gm-contact-heading h2 strong {
	color: #f7941d;
	font-weight: inherit;
}

.gm-contact-heading p {
	margin: 18px 0 0;
	color: #686868;
	font-family: "federoregular", sans-serif;
	line-height: 1.7;
}

.gm-contact-form-card {
	position: relative;
	z-index: 2;
	height: 100%;
	padding: 35px 30px 32px;
	background: #fff;
	border: 1px solid #e7e7e7;
	border-radius: 6px;
	box-shadow: 0 15px 50px rgba(0, 0, 0, 0.06);
	overflow: hidden;
}

.gm-contact-form-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 150px;
	height: 4px;
	background: #f7941d;
}

.gm-contact-form-title {
	position: relative;
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 25px;
	padding-bottom: 25px;
	border-bottom: 1px solid #eeeeee;
}

.gm-contact-form-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	background: #f7941d;
	color: #fff;
	font-size: 19px;
	border-radius: 3px;
}

.gm-contact-form-title h3 {
	margin: 0 0 4px;
	color: #171717;
	font-family: "Orbitron SemiBold", sans-serif;
}

.gm-contact-form-title p {
	margin: 0;
	color: #777;
	font-family: "federoregular", sans-serif;
}

.gm-contact-number {
	position: absolute;
	right: 0;
	top: 0;
	color: #e4e4e4;
	font-family: "Orbitron SemiBold", sans-serif;
	font-size: 38px;
	line-height: 1;
}

.gm-contact-captcha {
	display: flex;
	align-items: center;
	width: 315px;
	max-width: 100%;
	min-height: 66px;
	margin-bottom: 28px;
	padding: 9px 12px;
	background: #fafafa;
	border: 1px solid #dedede;
}

.gm-contact-captcha-check {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	margin-right: 9px;
	background: #20a34a;
	border-radius: 50%;
	color: #fff;
	font-size: 17px;
}

.gm-contact-captcha-text {
	display: flex;
	flex-direction: column;
	font-family: Arial, sans-serif;
}

.gm-contact-captcha-text span {
	color: #444;
	font-size: 12px;
}

.gm-contact-captcha-text small {
	color: #888;
	font-size: 7px;
}

.gm-contact-cloudflare {
	margin-left: auto;
	text-align: center;
	font-family: Arial, sans-serif;
}

.gm-contact-cloudflare strong {
	display: block;
	color: #333;
	font-size: 8px;
}

.gm-contact-cloudflare small {
	color: #777;
	font-size: 7px;
}

.gm-contact-field {
	position: relative;
}

.gm-contact-field label {
	display: flex;
	align-items: center;
	gap: 2px;
	margin-bottom: 8px;
	color: #191919;
	font-family: "Orbitron SemiBold", sans-serif;
	font-size: 14px;
	font-weight: 600;
}

.gm-contact-field label i {
	width: 17px;
	color: #f7941d;
	font-size: 13px;
}

.gm-contact-field label span {
	color: #f7941d;
}

.gm-contact-field input,
.gm-contact-field textarea, .gm-contact-field select {
	width: 100%;
	padding: 11px 4px;
	background: transparent;
	border: 0;
	border-bottom: 1px solid #bdbdbd;
	border-radius: 0;
	outline: none;
	color: #333;
	font-family: "federoregular", sans-serif;
	transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.gm-contact-field input::placeholder, .gm-contact-field textarea::placeholder, .gm-contact-select-wrap select {
	color: #333;
}

.gm-contact-field input:focus, .gm-contact-field textarea:focus, .gm-contact-field select:focus {
	border-bottom-color: #f7941d;
	box-shadow: 0 1px 0 #f7941d;
}

.gm-contact-field textarea {
	min-height: 105px;
	resize: none;
}

.gm-contact-select-wrap {
	position: relative;
}

.gm-contact-select-wrap select {
	padding-right: 30px;
	appearance: none;
	cursor: pointer;
}

.gm-contact-select-wrap > i {
	position: absolute;
	right: 4px;
	bottom: 14px;
	color: #f7941d;
	font-size: 11px;
	pointer-events: none;
}

.gm-contact-submit {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	min-width: 225px;
	padding: 0;
	background: #202020;
	border: 0;
	border-radius: 4px;
	color: #fff;
	font-family: "Orbitron SemiBold", sans-serif;
	overflow: hidden;
	cursor: pointer;
	transition: background 0.3s ease, transform 0.3s ease;
}

.gm-contact-submit span {
	padding: 16px 28px;
}

.gm-contact-submit > i {
	display: flex;
	align-items: center;
	justify-content: center;
	align-self: stretch;
	width: 55px;
	background: #f7941d;
	color: #fff;
	font-size: 18px;
	transition: transform 0.3s ease;
}

.gm-contact-submit:hover {
	background: #111;
	transform: translateY(-2px);
}

.gm-contact-submit:hover > i {
	transform: translateX(4px);
}

.gm-contact-location-card {
	position: relative;
	z-index: 2;
	height: 100%;
	background: #fff;
	border-radius: 6px;
	box-shadow: 0 15px 50px rgba(0, 0, 0, 0.07);
	overflow: hidden;
}

.gm-contact-location-header {
	position: relative;
	display: flex;
	align-items: stretch;
	min-height: 150px;
	background: #202020;
	overflow: hidden;
}

.gm-contact-location-header::after {
	content: "";
	position: absolute;
	right: -60px;
	top: -100px;
	width: 260px;
	height: 270px;
	background: #f7941d;
	transform: rotate(35deg);
}

.gm-contact-location-info {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	gap: 18px;
	padding: 28px 20px 25px 28px;
	flex: 1;
}

.gm-contact-location-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 55px;
	width: 55px;
	height: 55px;
	background: #f7941d;
	color: #fff;
	border-radius: 50%;
	font-size: 21px;
	box-shadow: 0 8px 20px rgba(247, 148, 29, 0.25);
}

.gm-contact-location-info > div:last-child {
	padding-top: 2px;
}

.gm-contact-location-info span {
	display: block;
	margin-bottom: 4px;
	color: #f7941d;
	font-family: "federoregular", sans-serif;
	font-size: 12px;
	font-weight: 600;
}

.gm-contact-location-info h3 {
	margin: 0 0 5px;
	color: #fff;
	font-family: "Orbitron SemiBold", sans-serif;
}

.gm-contact-location-info p {
	margin: 0;
	color: #cfcfcf;
	font-family: "federoregular", sans-serif;
	line-height: 1.6;
}

.gm-contact-find-us {
	position: relative;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 145px;
	padding: 15px 20px;
	color: #202020;
	text-align: center;
}

.gm-contact-find-us span {
	color: #202020;
	font-family: "Orbitron SemiBold", sans-serif;
	font-size: 15px;
	line-height: 1.3;
}

.gm-contact-find-us i {
	margin-top: 10px;
	color: #202020;
	font-size: 40px;
	transform: rotate(105deg);
	margin-right: 50px;
}

.gm-contact-map {
	position: relative;
	height: 542px;
	background: #ddd;
}

.gm-contact-map iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

.gm-contact-location-footer {
	border-top: 1px solid #ededed;
}

.gm-contact-directions {
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 17px 22px;
	color: #2c2c2c;
	text-decoration: none;
	transition: background 0.3s ease, color 0.3s ease;
}

.gm-contact-directions > i:first-child {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	background: #f7941d;
	color: #fff;
	border-radius: 50%;
}

.gm-contact-directions span {
	display: flex;
	flex-direction: column;
	flex: 1;
	font-family: "federoregular", sans-serif;
}

.gm-contact-directions span small {
	margin-bottom: 2px;
	color: #f7941d;
	font-family: "federoregular", sans-serif;
	font-weight: 600;
}

.gm-contact-directions > i:last-child {
	color: #777;
	font-size: 13px;
}

.gm-contact-directions:hover {
	background: #f7941d;
	color: #fff;
}

.gm-contact-directions:hover span small, .gm-contact-directions:hover >i:last-child {
	color: #fff;
}

.gm-contact-directions:hover >i:first-child {
	background: #202020;
}

@media (max-width : 1199.98px) {
	.gm-contact-section {
		padding: 80px 0 90px;
	}

	.gm-contact-heading h2 {
		font-size: 36px;
	}

	.gm-contact-form-card {
		padding: 30px 25px;
	}

	.gm-contact-location-info {
		padding-left: 22px;
	}

	.gm-contact-find-us {
		width: 125px;
	}

	.gm-contact-map {
		height: 350px;
	}
}

@media (max-width : 991.98px) {
	.gm-contact-section {
		padding: 70px 0 80px;
	}

	.gm-contact-heading {
		margin-bottom: 40px;
	}

	.gm-contact-heading h2 {
		font-size: 32px;
	}

	.gm-contact-map {
		height: 380px;
	}

	.gm-contact-location-header {
		min-height: 145px;
	}
}

@media (max-width : 767.98px) {
	.gm-contact-section {
		padding: 60px 0 70px;
	}

	.gm-contact-heading {
		margin-bottom: 35px;
	}

	.gm-contact-eyebrow {
		gap: 10px;
		font-size: 11px;
	}

	.gm-contact-eyebrow span {
		width: 35px;
	}

	.gm-contact-heading h2 {
		font-size: 27px;
	}

	.gm-contact-heading p {
		font-size: 14px;
	}

	.gm-contact-form-card {
		padding: 27px 20px;
	}

	.gm-contact-form-title {
		align-items: flex-start;
	}

	.gm-contact-form-title h3 {
		font-size: 15px;
	}

	.gm-contact-form-title p {
		font-size: 12px;
	}

	.gm-contact-number {
		font-size: 30px;
	}

	.gm-contact-location-header {
		display: block;
	}

	.gm-contact-location-info {
		padding: 25px 20px;
	}

	.gm-contact-find-us {
		position: absolute;
		right: 0;
		bottom: 0;
		width: 120px;
		height: 100%;
		padding: 10px;
	}

	.gm-contact-find-us span {
		font-size: 13px;
	}

	.gm-contact-location-info {
		padding-right: 125px;
	}

	.gm-contact-map {
		height: 330px;
	}
}

@media (max-width : 575.98px) {
	.gm-contact-section {
		padding: 50px 0 60px;
	}

	.gm-contact-heading h2 {
		font-size: 23px;
	}

	.gm-contact-heading p {
		font-size: 13px;
		line-height: 1.6;
	}

	.gm-contact-form-title {
		gap: 10px;
	}

	.gm-contact-form-icon {
		flex: 0 0 42px;
		width: 42px;
		height: 42px;
		font-size: 16px;
	}

	.gm-contact-number {
		display: none;
	}

	.gm-contact-captcha {
		width: 100%;
	}

	.gm-contact-location-info {
		padding: 22px 15px;
		padding-right: 105px;
		gap: 10px;
	}

	.gm-contact-location-icon {
		flex: 0 0 43px;
		width: 43px;
		height: 43px;
		font-size: 17px;
	}

	.gm-contact-location-info h3 {
		font-size: 16px;
	}

	.gm-contact-location-info p {
		font-size: 11px;
	}

	.gm-contact-find-us {
		width: 100px;
	}

	.gm-contact-find-us span {
		font-size: 11px;
	}

	.gm-contact-map {
		height: 280px;
	}

	.gm-contact-directions {
		padding: 14px 15px;
		gap: 10px;
	}

	.gm-contact-directions span {
		font-size: 12px;
	}

	.gm-contact-submit {
		width: 100%;
	}

	.gm-contact-submit span {
		flex: 1;
	}
}

@media (min-width: 1400px) {
	.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
		max-width: 100%;
		padding-left: 3.5%;
		padding-right: 3.5%;
	}
}

.gm-icon {
	filter: brightness(0) saturate(100%)
            invert(64%)
            sepia(96%)
            saturate(1700%)
            hue-rotate(359deg)
            brightness(101%)
            contrast(101%);
}

.gm-icon-black, .gm-banner-button:hover img.gm-icon-white, .quote-btn:hover img.gm-icon-white {
	filter: brightness(0) saturate(100%)
            invert(16%)
            sepia(0%)
            saturate(0%)
            hue-rotate(0deg)
            brightness(17%)
            contrast(100%);
}

.gm-icon-white, .search-box button:hover .gm-icon-black {
	filter: brightness(0) invert(1);
}

.arrow-right {
	width: 32px;
}

.gm-accessory-search-btn .gm-icon-white {
	width: 24px;
}


/* =========================================================
   GEARMATE - DYNAMIC CATEGORY MEGA MENU
   ========================================================= */

/*
 * IMPORTANT:
 * header.phtml uses:
 * .dynamic-category-parent
 * .dynamic-mega-menu
 * .dynamic-mega-grid
 * .dynamic-mega-column
 * .dynamic-mega-heading
 * .dynamic-mega-links
 *
 * Therefore these selectors must be styled directly.
 */

/* =========================================================
   DESKTOP NAV POSITIONING
   ========================================================= */

.gear-header .desktop-navigation {
    position: relative;
}

.gear-header .desktop-navigation .main-nav {
    position: static;
}

.gear-header .desktop-navigation .main-nav > .dynamic-category-parent {
    position: static;
}

/* =========================================================
   DYNAMIC MEGA MENU
   ========================================================= */

.gear-header .desktop-navigation .dynamic-category-parent > .dynamic-mega-menu {
    position: absolute;

    top: 100%;
    left: 0;
    right: 0;

    width: 100%;

    box-sizing: border-box;

    background: #ffffff;

    z-index: 99999;

    padding: 30px 40px;

    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transform: translateY(8px);

    transition:
        opacity 0.18s ease,
        visibility 0.18s ease,
        transform 0.18s ease;
}

.gear-header .desktop-navigation .dynamic-category-parent:hover > .dynamic-mega-menu,
.gear-header .desktop-navigation .dynamic-category-parent:focus-within > .dynamic-mega-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

/* =========================================================
   GRID
   ========================================================= */

.gear-header .dynamic-mega-grid {
    width: 100%;
    max-width: 1170px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    column-gap: 0;
    row-gap: 0;
}

/* =========================================================
   COLUMN
   ========================================================= */

.gear-header .dynamic-mega-column {
    box-sizing: border-box;

    min-width: 0;
    min-height: 145px;

    padding: 0 28px 24px;

    border-right: 1px solid #e5e5e5;
}

/*
 * Remove right border from every third column
 */
.gear-header .dynamic-mega-column:nth-child(3n) {
    border-right: 0;
}

/*
 * Horizontal divider for the second row onward
 */
.gear-header .dynamic-mega-column:nth-child(n + 4) {
    padding-top: 24px;

    border-top: 1px solid #e5e5e5;
}

/* =========================================================
   FIRST LEVEL CATEGORY
   ========================================================= */

.gear-header .dynamic-mega-heading {
    display: block;

    margin: 0 0 12px;

    padding: 0;

    color: #222222;

    font-family: inherit;

    font-size: 16px;
    font-weight: 700;

    line-height: 1.35;

    text-decoration: none;
}

.gear-header .dynamic-mega-heading:hover,
.gear-header .dynamic-mega-heading:focus {
    color: #f7941d;

    text-decoration: none;
}

/* =========================================================
   SECOND LEVEL CATEGORIES
   ========================================================= */

.gear-header .dynamic-mega-links {
    display: flex;

    flex-direction: column;

    align-items: flex-start;

    gap: 8px;

    margin: 0;
    padding: 0;
}

.gear-header .dynamic-mega-links a {
    display: block;

    width: auto;

    margin: 0;
    padding: 0;

    color: #555555;

    font-family: inherit;

    font-size: 14px;

    font-weight: 400;

    line-height: 1.45;

    text-decoration: none;
}

.gear-header .dynamic-mega-links a:hover,
.gear-header .dynamic-mega-links a:focus {
    color: #f7941d;

    text-decoration: none;

    padding-left: 3px;
}

/* =========================================================
   OVERRIDE OLD MEGA MENU RULES
   ========================================================= */

.gear-header .dynamic-category-parent > .dynamic-mega-menu .dynamic-mega-grid {
    display: grid;
}

.gear-header .dynamic-category-parent > .dynamic-mega-menu .dynamic-mega-column {
    display: block;
}

.gear-header .dynamic-category-parent > .dynamic-mega-menu a {
    text-decoration: none;
}

/*
 * Prevent old .mega-menu/.mega-grid styles from forcing
 * a different layout.
 */
.gear-header .dynamic-category-parent > .dynamic-mega-menu .dynamic-mega-column img {
    max-width: none;
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 991px) {

    .gear-header .desktop-navigation {
        display: none;
    }

    .gear-header .dynamic-category-parent {
        position: relative;
    }

    .gear-header .desktop-navigation .dynamic-category-parent > .dynamic-mega-menu {
        position: static;

        width: 100%;

        padding: 15px;

        box-shadow: none;

        opacity: 1;
        visibility: visible;
        pointer-events: auto;

        transform: none;

        display: none;
    }

    .gear-header .dynamic-mega-grid {
        grid-template-columns: 1fr;
    }

    .gear-header .dynamic-mega-column,
    .gear-header .dynamic-mega-column:nth-child(n + 4) {
        min-height: 0;

        padding: 15px 0;

        border-top: 0;
        border-right: 0;
        border-bottom: 1px solid #e5e5e5;
    }

    .gear-header .dynamic-mega-column:last-child {
        border-bottom: 0;
    }

    .gear-header .dynamic-mega-heading {
        font-size: 15px;
    }

    .gear-header .dynamic-mega-links a {
        font-size: 14px;
    }
}

/* =========================================================
   LARGE DESKTOP
   ========================================================= */

@media (min-width: 1200px) {

    .gear-header .desktop-navigation .dynamic-category-parent > .dynamic-mega-menu {
        padding-left: 50px;
        padding-right: 50px;
    }

    .gear-header .dynamic-mega-grid {
        max-width: 1200px;
    }

    .gear-header .dynamic-mega-column {
        padding-left: 30px;
        padding-right: 30px;
    }
}

.page-main {
    margin-block: 0 !important;
    flex-grow: 1;
}

/* =========================================
   PRODUCT VIEW - CLEAN NATIVE LAYOUT
   ========================================= */

/* Hide product description */
.gm-pv-native-form .product-description {
    display: none !important;
}

/* Hide the unnecessary empty/extra blocks */
.gm-pv-native-form [class~="hidden"][class~="md:block"] {
    display: none !important;
}

.gm-pv-native-form [class~="my-2"][class~="flex"] {
    display: none !important;
}

.gm-pv-native-form [class~="sm:flex-row"][class~="justify-between"] {
    display: none !important;
}

/* Don't hide #product-details -
   SKU + stock information is required */
.gm-pv-native-form #product-details {
    display: none !important;
}




/* Remove the large empty area caused by the
   outer flex container */
.gm-pv-native-form [class~="sm:flex-row"] {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
}

/* Quantity + Add to Cart */
.gm-pv-native-form form[data-product-addtocart-form] .flex {
    align-items: center;
}

/* Avoid giant blank product form area */
.gm-pv-native-form form[data-product-addtocart-form] {
    min-height: 0 !important;
    height: auto !important;
}

/* Remove unwanted padding/borders from the container */
.gm-pv-native-form > .card {
    border: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
}

/* Add to Cart button - orange */
.gm-pv-native-form #product-addtocart-button {
    background-color: #f7931e !important;
    border-color: #f7931e !important;
    color: #ffffff !important;
}

/* Hover */
.gm-pv-native-form #product-addtocart-button:hover {
    background-color: #e8830d !important;
    border-color: #e8830d !important;
}

/* SVG/cart icon */
.gm-pv-native-form #product-addtocart-button svg {
    color: #ffffff !important;
    stroke: #ffffff !important;
}

/* =========================================================
   GEARMATE REVIEW POPUP
   ========================================================= */

.gm-pv-review-modal {
    position: fixed;
    inset: 0;
    z-index: 99999;

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

    padding: 24px;
}

.gm-pv-review-modal.gm-pv-review-modal-open {
    display: flex;
}


/* =========================================================
   OVERLAY
   ========================================================= */

.gm-pv-review-modal-overlay {
    position: absolute;
    inset: 0;

    background: rgba(0, 0, 0, 0.68);
}
.gm-pv-review-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    padding: 0 0 14px;
    border-bottom: 1px solid #e5e5e5;
}

.gm-pv-review-summary-left {
    display: flex;
    align-items: center;
    min-width: 0;
}

/* Magento native review summary */
.gm-pv-review-summary-left .product-reviews-summary {
    margin: 0;
    display: flex;
    align-items: center;
}

/* Stars */
.gm-pv-review-summary-left .rating-summary {
    margin-right: 12px;
}

/* Review text */
.gm-pv-review-summary-left .reviews-actions {
    display: flex;
    align-items: center;
}

/* Hide Magento's own Write a review link */
.gm-pv-review-summary-left .reviews-actions .action.add {
    display: none !important;
}

/* Our Write a review link */
.gm-pv-write-review {
    padding: 0;
    margin: 0;
    border: 0;
    background: transparent;
    color: #111;
    text-decoration: underline;
    text-underline-offset: 2px;
    cursor: pointer;
    font-size: 14px;
    line-height: 1.4;
    white-space: nowrap;
}

.gm-pv-write-review:hover {
    color: #f7941d;
}



/* =========================================================
   MODAL
   ========================================================= */

.gm-pv-review-modal-dialog {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 620px;
    max-height: calc(100vh - 48px);

    background: #ffffff;

    border-radius: 3px;

    overflow-y: auto;

    box-shadow:
        0 20px 60px rgba(0, 0, 0, 0.28);
}


/* =========================================================
   CLOSE BUTTON
   ========================================================= */

.gm-pv-review-modal-close {
    position: absolute;
    top: 17px;
    right: 18px;

    z-index: 10;

    width: 36px;
    height: 36px;

    padding: 0;

    border: 0;
    border-radius: 50%;

    background: #f5f5f5;

    color: #222;

    cursor: pointer;

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

    font-size: 26px;
    line-height: 1;

    transition:
        background-color 0.2s ease,
        color 0.2s ease;
}

.gm-pv-review-modal-close:hover {
    background: #f7941d;
    color: #ffffff;
}


/* =========================================================
   MODAL HEADER
   ========================================================= */

.gm-pv-review-modal-header {
    padding: 28px 32px 22px;

    border-bottom: 1px solid #e5e5e5;
}

.gm-pv-review-modal-header h2 {
    margin: 0;

    padding-right: 45px;

    color: #171717;

    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
}

.gm-pv-review-modal-header p {
    margin: 7px 0 0;

    color: #6b6b6b;

    font-size: 14px;
    line-height: 1.5;
}


/* =========================================================
   FORM CONTAINER
   ========================================================= */

.gm-pv-review-modal-body {
    padding: 0;
}


/*
 * Override Hyvä review form outer spacing
 */

.gm-pv-review-modal-body #review-form {
    width: 100%;

    margin: 0 !important;
    padding: 0 !important;
}


/*
 * Override:
 * .card.w-full.px-6.py-3
 */

.gm-pv-review-modal-body #review-form > .card {
    width: 100%;

    margin: 0 !important;

    padding: 28px 32px 32px !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: #ffffff !important;

    box-shadow: none !important;
}


/*
 * Hide duplicate "Write Your Own Review"
 *
 * Our modal header already contains
 * "Write a review".
 */

.gm-pv-review-modal-body #review-form > .card > .text-xl {
    display: none !important;
}


/* =========================================================
   PRODUCT BEING REVIEWED
   ========================================================= */

.gm-pv-review-modal-body .review-form fieldset {
    margin: 0;

    padding: 0;

    border: 0;
}

.gm-pv-review-modal-body .review-form legend {
    width: 100%;

    margin: 0 0 22px;

    padding: 0;

    color: #555;

    font-size: 14px;
    line-height: 1.5;
}

.gm-pv-review-modal-body .review-form legend .font-semibold {
    color: #171717;

    font-weight: 700;
}


/* =========================================================
   FORM FIELDS
   ========================================================= */

.gm-pv-review-modal-body .review-form fieldset > div > div {
    margin-bottom: 17px;
}


/*
 * Hide Tailwind sr-only labels.
 *
 * We use placeholders as the visual labels.
 */

.gm-pv-review-modal-body .review-form label.sr-only {
    position: absolute !important;

    width: 1px !important;
    height: 1px !important;

    padding: 0 !important;
    margin: -1px !important;

    overflow: hidden !important;

    clip: rect(0, 0, 0, 0) !important;

    white-space: nowrap !important;

    border: 0 !important;
}


/* =========================================================
   INPUTS + TEXTAREA
   ========================================================= */

.gm-pv-review-modal-body .review-form input.form-input,
.gm-pv-review-modal-body .review-form textarea.form-input {

    display: block;

    width: 100%;

    box-sizing: border-box;

    margin-top: 0 !important;

    padding: 13px 15px !important;

    border: 1px solid #d7d7d7 !important;

    border-radius: 2px !important;

    background: #ffffff !important;

    color: #222222 !important;

    font-family: inherit;

    font-size: 14px;

    line-height: 1.5;

    outline: none;

    box-shadow: none !important;

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}


/* Placeholder */

.gm-pv-review-modal-body
.review-form input::placeholder,
.gm-pv-review-modal-body
.review-form textarea::placeholder {

    color: #777;

    opacity: 1;
}


/* Focus */

.gm-pv-review-modal-body
.review-form input.form-input:focus,
.gm-pv-review-modal-body
.review-form textarea.form-input:focus {

    border-color: #f7941d !important;

    box-shadow:
        0 0 0 2px rgba(247, 148, 29, 0.12) !important;
}


/* Textarea */

.gm-pv-review-modal-body
.review-form textarea.form-input {

    min-height: 135px;

    resize: vertical;
}


/* =========================================================
   SUBMIT AREA
   ========================================================= */

.gm-pv-review-modal-body .review-form > .my-3 {

    margin: 22px 0 0 !important;
}


/* =========================================================
   SUBMIT BUTTON
   ========================================================= */

.gm-pv-review-modal-body
.review-form button.btn.btn-primary {

    display: inline-flex;

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

    min-width: 150px;

    min-height: 46px;

    padding: 11px 25px !important;

    border: 0 !important;
    border-radius: 2px !important;

    background: #f7941d !important;

    color: #ffffff !important;

    font-size: 14px;
    font-weight: 700;

    line-height: 1.4;

    cursor: pointer;

    box-shadow: none !important;

    transition:
        background-color 0.2s ease,
        transform 0.15s ease;
}

.gm-pv-review-modal-body
.review-form button.btn.btn-primary:hover {

    background: #df7f0c !important;

    color: #ffffff !important;
}

.gm-pv-review-modal-body
.review-form button.btn.btn-primary:active {

    transform: translateY(1px);
}


/* =========================================================
   LOADING
   ========================================================= */

.gm-pv-review-modal-body
.review-form [x-show="isLoading"] {

    min-height: 46px;

    color: #555;

    font-size: 14px;
}


/* =========================================================
   SUCCESS MESSAGE
   ========================================================= */

.gm-pv-review-modal-body
.review-form [x-show="displaySuccessMessage"] {

    margin-top: 18px;

    padding: 13px 15px;

    border: 1px solid #c8e6c9;

    border-radius: 2px;

    background: #f1f8f2;

    color: #2e7d32;

    font-size: 14px;
}


/* =========================================================
   ERROR MESSAGE
   ========================================================= */

.gm-pv-review-modal-body
.review-form [x-show="displayErrorMessage"] {

    margin-top: 18px;

    padding: 13px 15px;

    border: 1px solid #f0b8b8;

    border-radius: 2px;

    background: #fff5f5;

    color: #c62828;

    font-size: 14px;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .gm-pv-review-modal {
        padding: 10px;
    }

    .gm-pv-review-modal-dialog {
        max-height: calc(100vh - 20px);
    }

    .gm-pv-review-modal-header {
        padding: 22px 20px 18px;
    }

    .gm-pv-review-modal-header h2 {
        font-size: 21px;
    }

    .gm-pv-review-modal-body #review-form > .card {
        padding: 22px 20px 25px !important;
    }

    .gm-pv-review-modal-close {
        top: 12px;
        right: 12px;
    }

}


/* =========================================================
   GEARMATE CART PAGE
   FINAL CSS
   CSS ONLY
   DOES NOT AFFECT HEADER / HEADER CART
   ========================================================= */


/* =========================================================
   PAGE
   ========================================================= */

.checkout-cart-index .page-main {
    width: 100%;
    max-width: 1380px;

    margin-left: auto;
    margin-right: auto;

    padding: 35px 30px 70px;

    box-sizing: border-box;
}


/* =========================================================
   SHOPPING CART TITLE
   ========================================================= */

.checkout-cart-index .page-main .page-title {
    margin: 0 0 32px;

    color: #171717;

    font-size: 42px;
    font-weight: 600;

    line-height: 1.1;

    letter-spacing: -1px;
}


/* =========================================================
   NATIVE HYVA CART LAYOUT
   DO NOT CHANGE .columns
   ========================================================= */

.checkout-cart-index .page-main
.cart-form > .flex {

    width: 100%;

    align-items: flex-start;
}


/* =========================================================
   LEFT CART AREA
   ========================================================= */

.checkout-cart-index .page-main
.form-cart {

    width: 100%;
}


/* =========================================================
   CART ITEM
   ========================================================= */

.checkout-cart-index .page-main
.form-cart .cart.item {

    margin-bottom: 15px;

    padding: 20px;

    border: 1px solid #dedede;

    border-radius: 4px;

    background: #fff;

    box-sizing: border-box;
}


/* =========================================================
   PRODUCT IMAGE
   ========================================================= */

.checkout-cart-index .page-main
.form-cart .cart.item
.product-image-container {

    background: #f7f7f7;

    border-radius: 3px;

    overflow: hidden;
}

.checkout-cart-index .page-main
.form-cart .cart.item
.product-image-container img {

    max-width: 100%;

    height: auto;

    object-fit: contain;
}


/* =========================================================
   PRODUCT NAME
   ========================================================= */

.checkout-cart-index .page-main
.form-cart .cart.item
.product-item-name {

    margin: 0 0 6px;

    color: #171717;

    font-size: 18px;

    font-weight: 600;

    line-height: 1.3;
}

.checkout-cart-index .page-main
.form-cart .cart.item
.product-item-name a {

    color: #171717;

    text-decoration: none;
}

.checkout-cart-index .page-main
.form-cart .cart.item
.product-item-name a:hover {

    color: #f7941d;
}


/* =========================================================
   PRODUCT PRICE
   ========================================================= */

.checkout-cart-index .page-main
.form-cart .cart.item .price {

    color: #171717;

    font-size: 16px;

    font-weight: 700;
}


/* =========================================================
   QUANTITY
   ========================================================= */

.checkout-cart-index .page-main
.form-cart .cart.item input.qty {

    width: 58px;

    min-width: 58px;

    height: 42px;

    padding: 0;

    border: 1px solid #d3d3d3;

    border-radius: 3px;

    background: #fff;

    color: #222;

    font-size: 14px;

    font-weight: 600;

    text-align: center;

    box-shadow: none;
}

.checkout-cart-index .page-main
.form-cart .cart.item input.qty:focus {

    border-color: #f7941d;

    outline: none;

    box-shadow:
        0 0 0 2px rgba(247,148,29,.12);
}


/* =========================================================
   EDIT / DELETE
   ========================================================= */

.checkout-cart-index .page-main
.form-cart .cart.item
.action-edit,

.checkout-cart-index .page-main
.form-cart .cart.item
.action-delete {

    color: #444;

    text-decoration: none;
}

.checkout-cart-index .page-main
.form-cart .cart.item
.action-edit:hover,

.checkout-cart-index .page-main
.form-cart .cart.item
.action-delete:hover {

    color: #f7941d;
}


/* =========================================================
   UPDATE SHOPPING CART
   ========================================================= */

.checkout-cart-index .page-main
.form-cart button[name="update_cart_action"] {

    min-height: 45px;

    min-width: 215px;

    padding: 11px 24px;

    border: 0;

    border-radius: 3px;

    background: #6d757b !important;

    color: #fff !important;

    font-size: 12px;

    font-weight: 700;

    line-height: 1;

    text-transform: uppercase;

    box-shadow: none !important;

    cursor: pointer;
}

.checkout-cart-index .page-main
.form-cart button[name="update_cart_action"]:hover {

    background: #555c62 !important;
}


/* =========================================================
   SUMMARY CARD
   TARGETS REAL HYVA STRUCTURE
   ========================================================= */

.checkout-cart-index .page-main
.cart-form > .flex > .card {

    width: 100%;

    max-width: 384px;

    padding: 10px;

    border: 1px solid #d7d7d7;

    border-radius: 4px;

    background: #fff;

    box-shadow: none;

    overflow: hidden;

    box-sizing: border-box;
	
	top: 0px !important;
}

.checkout-cart-index .page-main .actions-toolbar {
	border: none !important;
}


/* =========================================================
   SUMMARY TITLE
   ========================================================= */

.checkout-cart-index .page-main
.cart-form > .flex > .card > h2 {

    margin: 0;

    padding: 20px 18px 15px;

    color: #171717;

    font-size: 32px;

    font-weight: 600;

    line-height: 1;

    letter-spacing: -1px;
}


/* =========================================================
   CHECKOUT BUTTON
   REAL HYVA CLASS:
   .btn.btn-primary.btn-checkout
   ========================================================= */

.checkout-cart-index .page-main
.cart-form > .flex > .card
.cart-summary
.btn.btn-primary.btn-checkout {

    display: flex !important;

    align-items: center;

    justify-content: center;

    width: calc(100% - 30px) !important;

    min-height: 48px;

    margin: 0 15px 12px;

    padding: 12px 16px;

    border: 0 !important;

    border-radius: 4px !important;

    background:
        linear-gradient(
            90deg,
            #ff7900 0%,
            #ffc400 100%
        ) !important;

    color: #fff !important;

    font-size: 14px;

    font-weight: 700;

    line-height: 1;

    text-align: center;

    text-transform: uppercase;

    text-decoration: none;

    box-shadow: none !important;

    opacity: 1 !important;

    transition:
        opacity .2s ease,
        transform .2s ease;
}

.checkout-cart-index .page-main
.cart-form > .flex > .card
.cart-summary
.btn.btn-primary.btn-checkout:hover {

    background:
        linear-gradient(
            90deg,
            #ed6900 0%,
            #f2b600 100%
        ) !important;

    color: #fff !important;

    opacity: 1 !important;

    transform: translateY(-1px);
}


/* =========================================================
   SUMMARY ACCORDIONS
   REAL HYVA MARKUP:
   <details>
       <summary>
           ...
           <svg>
       </summary>
   </details>
   ========================================================= */

.checkout-cart-index .page-main
.cart-summary > details {

    margin: 0;

    border-top: 1px solid #e5e5e5;
}


/* Summary row */

.checkout-cart-index .page-main
.cart-summary > details > summary {

    display: flex !important;

    align-items: center;

    justify-content: space-between !important;

    width: 100%;

    min-height: 52px;

    box-sizing: border-box;

    padding: 0 18px !important;

    color: #222;

    font-size: 14px;

    font-weight: 600;

    line-height: 1;

    list-style: none;

    cursor: pointer;
}


/* Remove browser marker */

.checkout-cart-index .page-main
.cart-summary > details > summary::-webkit-details-marker {

    display: none;
}

.checkout-cart-index .page-main
.cart-summary > details > summary::marker {

    display: none;
}


/* Left content */

.checkout-cart-index .page-main
.cart-summary > details > summary
> span:first-child {

    display: inline-flex;

    align-items: center;

    gap: 9px;
}


/* =========================================================
   ICONS
   ========================================================= */

.checkout-cart-index .page-main
.cart-summary > details > summary
svg:first-child {

    width: 20px;

    height: 20px;

    flex: 0 0 20px;

    color: #147cff;
}


/* =========================================================
   DOWN ARROW
   ========================================================= */

.checkout-cart-index .page-main
.cart-summary > details > summary
svg:last-child {

    display: block !important;

    width: 18px !important;

    height: 18px !important;

    min-width: 18px;

    margin-left: auto;

    color: #444;

    flex: 0 0 18px;

    transform: rotate(0deg);

    transition: transform .2s ease;
}


/* Open state */

.checkout-cart-index .page-main
.cart-summary > details[open] > summary
svg:last-child {

    transform: rotate(180deg);
}


/* =========================================================
   ACCORDION CONTENT
   ========================================================= */

.checkout-cart-index .page-main
.cart-summary > details > form,

.checkout-cart-index .page-main
.cart-summary > details > div {

    padding-left: 18px;

    padding-right: 18px;

    padding-bottom: 18px;
}


/* =========================================================
   COUPON INPUT
   ========================================================= */

.checkout-cart-index .page-main
.cart-summary
input.form-input {

    width: 100%;

    min-height: 42px;

    box-sizing: border-box;

    border: 1px solid #d3d3d3;

    border-radius: 3px;

    background: #fff;

    color: #222;

    font-size: 14px;

    box-shadow: none;
}

.checkout-cart-index .page-main
.cart-summary
input.form-input:focus {

    border-color: #f7941d;

    outline: none;

    box-shadow:
        0 0 0 2px rgba(247,148,29,.12);
}


/* Apply coupon button */

.checkout-cart-index .page-main
.cart-summary
.btn.btn-secondary {

    width: 100%;

    min-height: 42px;

    border: 1px solid #222;

    border-radius: 3px;

    background: #fff;

    color: #222;

    font-size: 12px;

    font-weight: 700;

    text-transform: uppercase;
}

.checkout-cart-index .page-main
.cart-summary
.btn.btn-secondary:hover {

    background: #222;

    color: #fff;
}


/* =========================================================
   TOTALS
   ========================================================= */

.checkout-cart-index .page-main
.cart-summary .totals {

    border-top: 1px solid #ddd;
}


/* =========================================================
   GRAND TOTAL
   ========================================================= */

.checkout-cart-index .page-main
.cart-summary .grand.totals {

    border-top: 1px solid #ddd;

    margin: 0;
}

.checkout-cart-index .page-main
.cart-summary .grand.totals .mark {

    color: #171717;

    font-size: 19px;

    font-weight: 700;
}

.checkout-cart-index .page-main
.cart-summary .grand.totals .amount {

    color: #171717;

    font-size: 20px;

    font-weight: 800;
}


/* =========================================================
   SUMMARY SPACING
   ========================================================= */

.checkout-cart-index .page-main
.cart-summary-actions {

    margin: 0 !important;
}

.checkout-cart-index .page-main
.cart-summary-actions svg{
	float: right;
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 1023px) {

    .checkout-cart-index .page-main {
        padding-left: 20px;
        padding-right: 20px;
    }

    .checkout-cart-index .page-main
    .cart-form > .flex > .card {

        max-width: none;

        margin-top: 25px;
    }

}


@media (max-width: 639px) {

    .checkout-cart-index .page-main {

        padding:
            25px 15px 50px;
    }

    .checkout-cart-index .page-main
    .page-title {

        font-size: 32px;
    }

    .checkout-cart-index .page-main
    .cart-form > .flex > .card > h2 {

        font-size: 28px;
    }

}

/*** 
    Updated
	        ***/
			
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #f29621;
    --bs-btn-border-color: #f29621;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #f29621;
    --bs-btn-hover-border-color: #f29621;
    --bs-btn-focus-shadow-rgb: 49,132,253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #f29621;
    --bs-btn-active-border-color: #f29621;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #f29621;
    --bs-btn-disabled-border-color: #f29621;
}
.btn-primary {
    width: 250px;
    min-height: 50px;
    font-family: "Orbitron SemiBold";
    font-size: 14px;
    cursor: pointer;
    padding: 0px 24px 0px 30px;
    transition: background 0.3s, padding 0.3s;
    text-decoration: none;
	display: flex;
    align-items: center;
    justify-content: space-between;
    color: rgb(255, 255, 255);
    background: rgb(242, 150, 33);
	border-radius: 0;
}
.btn:hover {
    color: #fff;
    background-color: #e98b0b;
    border-color: #e98b0b;
}
.message.info, .message.notice {
    border-width: 1px;
    border-color: #f7941d;
    background-color: rgba(247,148,29,.1);
    padding: 20px;
}
.message.info.empty {
    padding: 20px;
}
.customer-account-create .columns, .customer-account-login .columns, .customer-account-forgotpassword .columns {
    max-width: 100%;
    padding-left: 3.5%;
    padding-right: 3.5%;
    padding-top: 40px;
    padding-bottom: 40px;
}
.card {
    padding: 30px;
    background: #f7f7f5;
}
.actions-toolbar {
    margin: 30px 0 0;
    padding: 22px 0 0;
}
button, input[type=text],input[type=email],input[type=url],input[type=password],input[type=number],input[type=date], optgroup, select, textarea {
    padding: 10px;
    border-radius: 0px;
}
label {
    display: inline-block;
    margin-top: 12px;
}
:is(input:where(:not([type])),[type=text],[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],textarea,select,.form-input,.form-textarea {
    border-color: oklch(70.7% .022 261.325);
    outline-color: oklch(70.7% .022 261.325);
}
:is([type=checkbox], .form-checkbox):checked,
:is([type=checkbox], .form-checkbox):indeterminate {
    --form-active-color: #f29621 !important;
}
 .form-select, .form-multiselect):focus {
	 border-color: #f29621;
    outline-color: #f29621;
}
:where(:focus-visible) {
	 border-color: #f29621;
    outline-color: #f29621;
}
ul#accountcreate-1 {
    padding: 0;
}
.control {
    width: 100%;
}
input#password, input[type="password"] {
    width: 100%;
}
.field.choice label {
    margin: 0 0 0 6px;
}
.field.choice.newsletter {
    margin: 40px 0 0;
}
:root, :host {
    --form-active-color: #f7941d;
}
h1.page-title {
    margin-top: 40px;
}
h1.page-title, h1, h1, .titletext, .gm-ip-vspec-title {
        font-size: 34px;
        line-height: 26px;
    }
.card h2 {
    font-size: 24px;
}
.mega-card a:hover {
    transform: translateY(0px);
}


/* =====================================================
   VEHICLE BRAND PAGE
   ===================================================== */

.gm-vc-brands-page {
    color: #171b20;
    background: #fff;
}

.gm-vc-brands-page .container-fluid {
    padding-left: 3.5%;
    padding-right: 3.5%;
}

.gm-vc-brands-hero {
    min-height: 220px;
    background-color: #151a1d;
    background-position: center right;
    background-size: cover;
    background-repeat: no-repeat;
    color: #fff;
}

.gm-vc-brands-hero-overlay {
    min-height: 220px;
    padding: 28px 0 34px;
    background: linear-gradient(
        90deg,
        rgba(13, 18, 21, .98) 0%,
        rgba(13, 18, 21, .88) 42%,
        rgba(13, 18, 21, .12) 100%
    );
}

.gm-vc-brands-breadcrumb {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 22px;
    font-size: 14px;
}

.gm-vc-brands-breadcrumb a {
    color: #fff;
    text-decoration: none;
}

.gm-vc-brands-breadcrumb span:last-child {
    color: #f29621;
}

.gm-vc-brands-hero h1 {
    margin: 0 0 12px;
    color: #fff;
    font-size: clamp(32px, 4vw, 48px);
    line-height: 1.15;
}

.gm-vc-brands-hero p {
    max-width: 720px;
    margin: 0;
    color: #fff;
    font-size: 16px;
}

.gm-vc-brands-content {
    padding: 60px 0 75px;
}

.gm-vc-brands-sidebar {
    padding: 22px 15px;
    border: 1px solid #e4e7eb;
    border-radius: 5px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .05);
}

.gm-vc-brands-sidebar h2 {
    margin: 0 0 16px;
    font-size: 23px;
    line-height: 1.2;
}

.gm-vc-brands-sidebar-line {
    width: 100%;
    height: 1px;
    margin-bottom: 12px;
    background: #e4e7eb;
    position: relative;
}

.gm-vc-brands-sidebar-line::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 90px;
    height: 2px;
    background: #f29621;
}

.gm-vc-brands-sidebar > a {
    display: block;
    padding: 13px 8px;
    border-bottom: 1px solid #e4e7eb;
    color: #242424;
    text-decoration: none;
}

.gm-vc-brands-sidebar > a:hover {
    color: #f29621;
}

.gm-vc-brands-heading-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 25px;
    margin-bottom: 44px;
}

.gm-vc-brands-heading-row h2 {
    margin: 0 0 7px;
    font-size: clamp(23px, 2.3vw, 30px);
    line-height: 1.2;
}

.gm-vc-brands-heading-row p {
    margin: 0;
    font-size: 15px;
}

.gm-vc-brand-search {
    flex: 0 0 285px;
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 49px;
    padding: 0 14px;
    border: 1px solid #dfe3e8;
    border-radius: 5px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .04);
}

.gm-vc-brand-search-icon {
    color: #222;
    font-size: 28px;
    line-height: 1;
}

.gm-vc-brand-search input {
    width: 100%;
    min-width: 0;
    padding: 10px 0;
    border: 0;
    outline: 0;
    box-shadow: none;
    background: transparent;
}

.gm-vc-brand-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.gm-vc-brand-item[hidden],
.gm-vc-brand-no-results[hidden] {
    display: none !important;
}

.gm-vc-brand-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 150px;
    overflow: hidden;
    border: 1px solid #e0e4e9;
    border-radius: 4px;
    background: #fff;
    color: #1d2024;
    text-decoration: none;
    box-shadow: 0 2px 7px rgba(0, 0, 0, .04);
    transition: border-color .2s ease, box-shadow .2s ease;
}

.gm-vc-brand-card:hover {
    border-color: #f29621;
    color: #1d2024;
    box-shadow: 0 5px 18px rgba(0, 0, 0, .10);
    text-decoration: none;
}

.gm-vc-brand-card-image {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 150px;
    padding: 16px;
}

.gm-vc-brand-card-image img {
    display: block;
    width: 100%;
    max-width: 200px;
    height: 105px;
    object-fit: contain;
}

.gm-vc-brand-text {
    font-size: 24px;
    font-weight: 600;
    text-align: center;
}

.gm-vc-brand-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 12px 15px;
    border-top: 1px solid #edf0f2;
}

.gm-vc-brand-card-footer h3 {
    margin: 0;
    font-size: 16px;
}

.gm-vc-brand-card-footer > span {
    color: #f29621;
    font-size: 22px;
}

.gm-vc-brand-no-results {
    grid-column: 1 / -1;
    padding: 25px 0;
}

@media (max-width: 1199px) {
    .gm-vc-brand-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .gm-vc-brands-heading-row {
        flex-wrap: wrap;
    }
}

@media (max-width: 767px) {
    .gm-vc-brands-content {
        padding: 30px 0 45px;
    }

    .gm-vc-brands-hero,
    .gm-vc-brands-hero-overlay {
        min-height: 190px;
    }

    .gm-vc-brand-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .gm-vc-brand-search {
        flex-basis: 100%;
    }

    .gm-vc-brand-card-image {
        min-height: 120px;
        padding: 10px;
    }

    .gm-vc-brand-card-image img {
        height: 85px;
    }
}

@media (max-width: 420px) {
    .gm-vc-brand-grid {
        grid-template-columns: 1fr;
    }
}

.vehicle-index-brands .page-title, .vehicle-index-models .page-title, .vehicle-index-products .page-title {
	
	display: none;
}

@media (min-width: 96rem) {
    main#maincontent.page-main
    .vehicle-index-products.columns,
    main#maincontent.page-main > .columns {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    .vehicle-index-products .column.main,
    .vehicle-index-products .sidebar,
    .vehicle-index-products .sidebar-main,
    .vehicle-index-products .sidebar-additional {
        min-width: 0;
        box-sizing: border-box;
    }

    .vehicle-index-products .gm-ip-pl-product-grid {
        min-width: 0;
        max-width: 100%;
    }

    .vehicle-index-products .gm-ip-pl-product-column {
        min-width: 0;
    }
}

html,
body {
    max-width: 100%;
    overflow-x: clip;
}

.vehicle-index-products .columns, .catalog-category-view .columns {margin-top: 25px;}

.catalog-category-view .top-container, .catalog-product-view .top-container, .cms-page-view .top-container{display:none;}

