/* All */

header {
  font-size:90%;
  line-height: 1.4em;
}

/* Announcement */

header .announcement {
	font-size: 95%;
}

header .announcement p {
	margin: 0;
	padding: 0;
}

header .announcement p a {
	text-decoration: underline;
	display: inline-block;
}

/* Logo */

header .logo img{
	height: auto;
}

header .logo.invert img {
	filter: invert(100%);
}

/* Sticky */

header.active {
	position: fixed !important;
	width: 100%;
	top: 0;
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.1);
	z-index: 1000;
}


/* Menu */

header .menu {
  line-height: 1.2em;
 }

header .menu ul li {
	position: relative;
	display: inline-block;
}

header .menu ul li a {
	display: block;
	text-decoration: none;
	font-weight: 500;
	font-size: 1.1em;
}

header[data-template-name="classic"] .menu ul li a {
	padding: 10px 15px;
}

header[data-template-name="legacy"] .menu ul li a, header[data-template-name="heritage"] .menu ul li a {
	padding: 17.5px 15px;
}

header .menu ul li a:hover {
	text-decoration: underline;
}

header .menu ul.desktop li ul.dropdown {
	position: absolute;
	display: none; 
    z-index: 1000;
}

header .menu ul.desktop li ul.dropdown li {
	display: block;
}

header .menu ul.desktop li ul.dropdown {
	padding: 5px;
}

header .menu ul.desktop li ul.dropdown li a {
	display: block;
	padding: 10px 20px;
	font-weight: 500;
}

header .menu ul.desktop li ul.dropdown:hover, header .menu ul.desktop li a:hover+ul.dropdown {
	display: block;
	text-align: left;
}

header .menu ul.desktop li ul.dropdown.manufacturer {
	position: absolute;
	display: none;
	grid-template-columns: repeat(3, 1fr);
	grid-column-gap: 5px;
	z-index: 1000;
	padding: 10px 25px;
}

header .menu ul li ul.dropdown.manufacturer li a {
	font-style: normal;
	text-align: left;
}

header .menu ul li ul.dropdown.manufacturer li a.one_col {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 0px;
	justify-content: center;
	font-weight: normal;
	align-items: center;
}


header .menu ul li ul.dropdown.manufacturer li a.two_col {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-gap: 10px;
	justify-content: center;
	font-weight: normal;
	align-items: center;
	min-height: 25px;
}

header .menu ul li ul.dropdown.manufacturer li.view-all {
	grid-column: 1 / 5;
	grid-row-end: auto;
	text-align: right;
}

header .menu ul li ul.dropdown.manufacturer li.view-all a{
	grid-template-columns: 1fr;
	text-decoration: underline;
	padding: 0;
	margin-top: 15px;
}

header .menu ul li ul.dropdown.manufacturer li.view-all::after {
	content: none;
}


header .menu ul li ul.dropdown.manufacturer li a span {
	font-size: 90%;
	white-space: nowrap;
	text-decoration: underline;
}

header .menu ul li ul.dropdown.manufacturer li a img {
	width: 25px;
	height: auto;
}

header .menu ul li ul.dropdown.manufacturer li a span:hover {
	text-decoration: underline;
}

header .menu ul li a:hover+ul.dropdown.manufacturer, header .menu ul li ul.dropdown.manufacturer:hover {
	display: grid
}

/* Target only parent <li> that has a dropdown inside */
header .menu ul li:has(> .dropdown) > a::after, section.menu.mobile .container ul li:has(> .dropdown) > a::after {
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    border-left: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(-45deg);
    margin: 2.5px 7.5px;
    transition: transform 0.2s ease-in-out;
}

header .menu ul li.options span, section.menu.mobile ul li.options i{
	display: none;
}

section.menu.mobile .container ul li.stock.footer {
	display: none;
}




/* Display Stock link in footer links as basic list item */

header ul li.stock.footer {
	display: none;
}

/* Mobile Menu */

section.menu.mobile {
  display: none;
  top: 0;
  width: 300px;
  height: 100%;
  position: fixed;
  padding: 25px;
  overflow-x: hidden;
  z-index: 9999;
  box-shadow: 3px 0px 10px 2px rgba(0, 0, 0, 0.5);
}

section.menu.mobile .container address {
	margin: 0 0 10px 0;
}

section.menu.mobile .container address a {
	display: block;
	text-decoration: underline;
}

section.menu.mobile .container address a.whatsapp, address a.whatsapp {
	display: inline-block;
	text-decoration: none;
	background-color:#075e54;
	color:#25d366;
	font-size: 80%;
	border-radius: 5px;
	padding: 2.5px 10px;
	margin: 10px 0 0 0;
}

section.menu.mobile .container ul {
	margin: 0 0 25px 0;
}

section.menu.mobile .container ul li {
	position: relative;
	border-radius: 0 !important;
}

section.menu.mobile .container ul.menu li {
	border-bottom: 1px solid currentColor;
}

section.menu.mobile .container ul.menu li ul.dropdown li {
	border:none;
}

section.menu.mobile .container ul.menu li ul.dropdown li a:hover {
	padding-left:5px;
}


section.menu.mobile .container ul li a:hover {
	/* text-decoration: underline; */
}

section.menu.mobile .container ul li::after {
  content: ''; 
  display: block; 
  position: absolute; 
  bottom: 0; 
  left: 0;
  width: 100%;
  height: 1px; 
} 

section.menu.mobile .container {
	position: relative;
}

section.menu.mobile small.provider {
	font-size: 60%;
	display: block;
}

section.menu.mobile .container ul li ul.dropdown a {
	display: block;
	padding: 5px 0;
	text-decoration: underline;
}

section.menu.mobile .container ul li a {
	display: block;
	padding: 7.5px 0;
}

section.menu.mobile  ul.desktop li:first-child {
	display: none;
}

section.menu.mobile button {
	position: absolute;
  top: 15px;
  right: 15px;
  font-size: 1.4em;
  cursor: pointer;
  background: none;
  border: none;
  width: auto !important;
  box-shadow: none;
}

section.menu.mobile ul.desktop li ul.dropdown {
	position: relative;
  display: none;
  z-index: 1000;
  background: none !important;
}

section.menu.mobile  ul.desktop li ul.dropdown li, section.menu.mobile  ul.desktop li a:hover+ul.dropdown, section.menu.mobile  ul.desktop li ul.dropdown:hover , section.menu.mobile  li a:hover+ul.dropdown, section.menu.mobile  ul.desktop li ul.dropdown li a, section.menu.mobile  li ul.dropdown:hover {
	display: block;
}

section.menu.mobile  ul.desktop li ul.dropdown li:last-child:after {
	box-shadow: none;
	background: none;
}

section.menu.mobile  ul.desktop li ul.dropdown li a:hover {
	text-decoration: underline;
}

section.menu.mobile .container ul li ul.dropdown.manufacturer li , section.menu.mobile .container ul li ul.dropdown{
	padding: 0 10px;
	font-size: 95%;
}

section.menu.mobile .container ul li ul.dropdown.manufacturer li.view-all a{
	text-decoration: underline;
}


section.menu.mobile .container ul li ul.dropdown.manufacturer li a img {
	display: none;
}
/* Mobile Menu Button */

header .call-to-action ul.mobile-btn li button {
	font-size: 1.6em;
    background: none;
    border: none;
    box-shadow: none;
    border-radius: 0;
    cursor: pointer;
}

/* Call to Action */

header .call-to-action ul.mobile-btn {
	/*display: none; */
}

header .call-to-action ul li.telephone {
	font-weight: 500;
}

header .call-to-action ul li.telephone a, header .call-to-action ul li.email a {
	text-decoration: none;
}

header .call-to-action a.btn {
	font-weight: bold;
}

/* Absolute Menu */

header.absolute {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 999;
}

/* Remove default background on homepage if absolute header */

body.homepage header.absolute .logo, body.homepage header.absolute .menu, body.homepage header.absolute .call-to-action, body.homepage header.absolute .social {
	background: none;
}


/* Remove the Horizontal menu if header is in absolute position */

header[data-template-name="heritage"].absolute .menu, header[data-template-name="legacy"].absolute .menu {
	display: none;
}


/* Slider */


.slider.h100 {
	height: 100dvh; 
}

.owl-carousel.h100 .hero {
    height: 100dvh; /* Full viewport height */
}

.owl-carousel.h75 .hero {
   height: 75dvh; /* Full viewport height */
}

.owl-carousel.h50 .hero {
   height: 50dvh; /* Full viewport height */
}




/* Social */

ul.social li {
	display: inline-block;
	margin: 0 2.5px;
}

ul.social li a {
	display: block;
	padding: 5px 7.5px;
	font-size: 1.4em;
}

ul.social.round li{
	font-size: inherit;
	border-radius: 5px;
}

ul.social.circle li{
	border-radius: 50%;
}

ul.social.circle li a {
	padding: 5px 10px;
}

ul.social.brand li.facebook {
	background-color:#1877F2;
}

ul.social.brand li.instagram {
	background: linear-gradient(45deg, #F77737, #E4405F, #C13584, #5851DB);
}

ul.social.brand li.tiktok {
	background-color:#000;
}

ul.social.brand li.linkedin {
	background-color:#0077B5;
}

ul.social.brand li.youtube {
	background-color:#ff0000;
}

ul.social.brand li.facebook a, ul.social.brand li.instagram a, ul.social.brand li.tiktok a, ul.social.brand li.linkedin a, ul.social.brand li.youtube a {
	color:#fff;
}




/* Top Header */

header .top-header {
	display: grid;
	grid-template-columns: auto 1fr;
	padding: 0 25px;
}

header .top-header address {
	padding: 0;
}


header .top-header address ul li {
	display: inline-block;
	font-size: 80%;
	padding: 0 15px 0 0;
}

header .top-header address ul li i {
	padding: 0 5px;
}

header .top-header address ul li a {
	display: inline-block;
}

header .top-header address ul li a:hover {
	text-decoration: underline;
}

header .top-header ul.social {
	text-align: right;
	font-size: 80%;
}

header .top-header ul.social li a {
	font-size: 1.2em;
}


/* Sub Header */

header .sub-header {
		overflow: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar; 
}

header .sub-header ul {
    display: flex;
    justify-content: space-between; /* Evenly distribute items */
    padding: 0;
    margin: 0;
    list-style: none; /* Remove default bullet points */
    font-size: 90%;
}

header .sub-header ul li {
    flex: 1; /* Ensures equal spacing */
    text-align: center; /* Centers text inside each item */
    padding: 10px 15px;
}


/* Classic */

header[data-template-name="classic"] {
	grid-template-columns: auto 1fr auto;
}

header[data-template-name="classic"] .call-to-action {
		display: grid;
	grid-template-columns: auto auto;
	grid-gap: 25px;
}


header[data-template-name="classic"] .announcement , .top-header, .sub-header {
	grid-column:  1 / 4;
}

header.absolute .announcement, header.absolute .top-header , header.absolute .sub-header {
	display: none;
}

/* Legacy */

header[data-template-name="legacy"] {
	grid-template-columns: auto 1fr;
}

header[data-template-name="legacy"] .announcement {
	grid-column:  1 / 3;
}

header[data-template-name="legacy"] .logo {
	grid-column: 1 / 2; 
}

header[data-template-name="legacy"] .menu {
	grid-column: 1 / 3;
	box-shadow: 0px 2px 10px 2px rgb(0,0,0,0.1);

}
header[data-template-name="legacy"] .menu ul {
	padding: 0 25px;
}

header[data-template-name="legacy"] .menu ul li ul.dropdown {
	padding: 0;
}

header[data-template-name="legacy"] .menu ul li:last-child {
	float: right;
}

header[data-template-name="legacy"] .call-to-action {
	display: grid;
	grid-template-columns: auto auto;
	grid-gap: 25px;
}

/* Heritage */

header[data-template-name="heritage"] .announcement {
	grid-column:  1 / 4;
}

header[data-template-name="heritage"] {
	grid-template-columns: 1fr auto 1fr;
}

header[data-template-name="heritage"] .menu {
	grid-column: 1 / 4;
	text-align: center;
	box-shadow: 0px 2px 10px 2px rgb(0,0,0,0.1);
}

header[data-template-name="heritage"] .menu ul {
	padding: 0 25px;
}

header[data-template-name="heritage"] .menu ul li ul.dropdown {
	padding: 0;
}


header[data-template-name="heritage"] .logo {
	grid-column: 2 / 3;
}

header[data-template-name="heritage"] .call-to-action {
	display: grid;
	grid-template-columns: auto auto;
	grid-gap: 25px;
	grid-column: 3 / 4;
}


