/*!
Theme Name: titan
Author: Made in 13
Author URI: https://madein13.com/
Version: 1.0.0
Text Domain: titan
*/


/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color:#18161b;
	font-family: 'Inter', sans-serif;
	font-style:normal;
	font-weight:400;
}

@font-face {
    font-family: 'AddictiveRegular';
    src: url('webFonts/AddictiveRegular/font.woff2') format('woff2'),
         url('webFonts/AddictiveRegular/font.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

.fw-normal {
	font-weight:400;
}

.fw-bold, strong, b {
	font-weight:700 !important;
}

.fw-bolder, stronger {
	font-weight:800 !important;
}

h1,h2,h3,h4,h5,
.letter-spacing {
	font-weight:800 !important;
	letter-spacing:-1px;
}

h1 em,
h2 em,
h3 em,
.mega-menu-link em,
.banner em,
.cards-image-overlay em {
    font-family: 'AddictiveRegular';
    font-style: normal !important;
	font-weight:400 !important;
	line-height: 1;
}

.hero-store h1 em {
	margin-right:1rem;
}

.fsc-medium {
    font-size: calc(1.325rem + .9vw) !important;
}

.fsc-large {
	font-size: calc(1.375rem + 1.5vw) !important;
}

	@media (min-width: 1200px) {
		.fsc-medium {
			font-size: 2rem !important;
    		}
		.fsc-large {
			font-size: 2.5rem !important;
		}
		.qt-form .fs-1 {
			font-size:2.25rem !important;
		}
	}

.fs-6 {
	font-size:1.125rem !important;
}

p {
	margin-bottom:1.5rem;
}

.small {
	font-size:0.9rem;
}

* {
	box-sizing: border-box;
}

:root {
	--bs-box-shadow: 0 0.2rem 0.3rem rgba(0, 0, 0, 0.15) !important;
}


/* Backgrounds, Colors, Buttons and Custom links
--------------------------------------------- */
.bg-transparent { background:transparent; }

.bg-offwhite { background:#fcfcf9; }

.bg-dark { background:#122023 !important; }

.bg-sand { background:#d9d4c0;}

.bg-lte-sand { background:#f0eee6; }

.bg-lte-grey { background:#e7e7e7; }

.bg-xlte-grey { background:#f5f5f5; }

.bg-lte-grey-green { 	background:#cadadb; }

.bg-dark-grey-green { background:#9cb8bb; }

.bg-neon-yellow { background:#e1f861; }	

.bg-blue { background:#005990; }

.dark-grey-green { color:#9cb8bb; }

.titan-blue { color:#005990; }

.lte-grey-green { color:#cadadb; }

.neon-yellow { color:#e1f861; }	

.btn:not(.site-header .btn, .stores .btn, .qt-form .btn) {
	max-width:100% !important;
}

	@media (min-width: 576px) {
		.btn:not(.site-header .btn, .stores .btn, .qt-form .btn) {
			width:337px !important;
		}
	}

.btn-primary {
    --bs-btn-color: #18161b;
    --bs-btn-bg: #e1f861;
    --bs-btn-border-color: #e1f861;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #18161b;
    --bs-btn-hover-border-color: #18161b;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #18161b;
    --bs-btn-active-border-color: #0a53be;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #e1f861;
    --bs-btn-disabled-border-color: #e1f861;
}

.btn-primary.disabled {
    color:  #18161b;
    opacity:0.5;
}

.tel-link,
.email-link {
    align-items: center;
    color: inherit;
    display: inline-flex;
	font-weight:600;
    margin: 1px 0;
    position: relative;
    gap: 10px;
    text-decoration: none;
	padding-left: 24px; 
}

.tel-link:not(.stores .tel-link) {
	background: url('images/Icon-phone-alt.png') no-repeat left center;
	background-size: 16px 16px;
}

.email-link {
	background: url('images/Icon-feather-mail.png') no-repeat left 8px;
	background-size: 16px 12px;
	display: inline-block;
	word-break: break-all;
	overflow-wrap: break-word;
}

.stores .tel-link {
    justify-content: center;
    padding-left: 0; 
}

.stores .email-link {
	font-size:1.125rem;
}

.stores .tel-link::before,
.stores .tel-link:hover::before,
.rounded-arrow-link::before  {
	content: '';
	background: url('images/Icon-phone-alt.png') no-repeat center center;
	background-size: 16px 16px;
	width: 16px;
	height: 16px;
	display: inline-block;
}

.stores .tel-link:hover::before {
	background: url('images/Icon-phone-white.png') no-repeat center center;
	background-size: 16px 16px;
}

.rounded-arrow-link::before  {
	background: url('images/link-right-arrow-white.png') no-repeat left;
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
}

.site-footer a[href^="tel"] {
	color: inherit !important;
	text-decoration: none;
	-webkit-text-fill-color: inherit;
}


/* Spacing
--------------------------------------------- */
#page {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

#primary,
#primary > article,
#qt2-content,
.qt-form {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto; 
    min-height: 0; 
}

.qt-form form {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}

.qt-form form {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}

.qt-form form > .flex-fill {
    flex: 1 1 auto !important;
    min-height: 0;
}

.qt-form form > .qt-nav-buttons {
    margin-top: auto;
}

.container-fluid { max-width: 1185px; }

.container-fluid.width--lg { max-width: 1280px; }

	@media (min-width: 1920px) {
		.container-fluid { max-width:1400px; } 
		.container-fluid.width--lg { max-width:1495px; }
	}

.container-fluid.width--full { max-width: 100%; }

	@media (min-width: 992px) and (max-width: 1199.98px) { 
		.container-fluid.px-5 {
			padding-right:3rem !important;
			padding-left:3rem !important;
		}
	}
	
	@media (max-width: 767.98px) {
		.container-fluid.px-5 {
			padding-right:2.25rem !important;
			padding-left:2.25rem !important;
		}
		.container-fluid.px-3 {
			padding-right:1rem !important;
			padding-left:1rem !important;
		}
	}

.gx-4x {
	--bs-gutter-x: 2.375rem !important;
}
	
	@media (max-width: 1199.98px) {
		.g-5, .gx-5 {
			--bs-gutter-x: 2rem;
		}
	}

	@media (min-width: 1200px) {
		.g-6 {
			--bs-gutter-y: 4rem !important;
			--bs-gutter-x: 4rem !important;
		}
	}

.mt-6 {
	margin-top:7rem;
}

.p-6 {
	padding:7rem;
}

.pt-6 {
	padding-top:7rem;
}

.pb-6 {
	padding-bottom:7rem;
}

.py-6 {
	padding-top:7rem;
	padding-bottom:7rem;
}

.py-4x {
	padding-top:2.125rem;
	padding-bottom:2.125rem;
}

.px-6 {
	padding-right: 5rem;
	padding-left: 5rem;
}

	@media (max-width: 991.98px) {
		.py-4x {
			padding-top:1.25rem;
			padding-bottom:1.25rem;
		}
		.mt-6 {
			margin-top:4rem;
		}
		.p-6 {
			padding:4rem;
		}
		.pt-6 {
			padding-top:4rem;
		}
		.pb-6 {
			padding-bottom:4rem;
		}
		.py-6 {
			padding-top:4rem;
			padding-bottom:4rem;
		}
		.px-6 {
			padding-right: 3rem !important;
			padding-left: 3rem !important;
		}
	}

.sticky-lg-top {
    top: 20px; 
}


/* Header
----------------------------------------------- */
.hero-page .site-header {
	background:transparent;
	position:absolute;
	z-index:10000;
}

body.has-title-cards-icons .site-header {
	background:#f0eee6;
}

.logo {
	max-width:80px !important;
}

.logo-white {
	display:none; 
}

.hero-page .logo-dark { 
	display:none; 
}

.hero-page .logo-white { 
	display:inline;
}

.page-template-tmpl-store-office-full-details .site-header .btn-primary,
.page-template-tmpl-store-office-full-details .hero .btn-primary {
    --bs-btn-hover-bg: #999 !important;
    --bs-btn-hover-border-color: #999 !important;
}

.navbar-nav .nav-link {
	color:#18161B;
	font-size:1.125rem;
	font-weight:600;
}

.dropdown-menu .nav-link {
	font-size:1rem;
}

	@media (min-width: 1200px) {
		.navbar-nav .nav-link {
			padding-left:1.125rem !important;
			padding-right:1.125rem !important;
		}
		.hero-page .navbar-nav .nav-link:not(.dropdown-menu .nav-link) {
			color:#fff;
		}
	}

.navbar-toggler {
	color:#18161b;
}

.hero-page .navbar-toggler {
	color:#fff;
}

/* target non mega menu dropdown */
.nav-item:not(.mega-cards) .dropdown-menu.show {
    width: auto;
    min-width: max-content;
}

/* custom mega menu link */
.mega-cards-container {
	background: #fff !important;
	border: none !important;
	box-shadow: 0 10px 30px rgba(0,0,0,0.1);
	border-radius: 8px;
	padding: 20px !important;
}

	@media (min-width: 1400px) {
		.mega-cards {
			position: static !important;
		}
		.mega-cards .dropdown-menu.mega-cards-container {
			position: absolute !important;
			top: 100% !important;
			left: 50% !important;
			right: auto !important;
			transform: translateX(-50%) !important;
			width: 1145px !important;
		}
	}

.mega-cards-item {
	list-style: none !important;
}

.mega-cards-container .card {
	transition: all 0.3s ease;
	border-radius: 8px;
	border: 1px solid #eee;
}

.mega-cards-container .d-none {
	display: none !important;
}

.nav-link.dropdown-toggle {
	cursor: pointer;
}

.navbar-nav .dropdown-menu {
	display:none;
}

.navbar-nav .dropdown-menu.show {
	display: block;
}

.mega-cards-container .menu-item:not(.mega-card-link) {
    display: none !important;
}

	@media (max-width: 1199.98px) {
		.navbar-nav {
			border-top:1px solid #707070;
		}
		.navbar-nav .menu-item {
			border-bottom:1px solid #707070;
			padding-top:1.25rem !important;
			padding-bottom:1.25rem !important;
		}
		.navbar-nav .nav-link {
			font-weight:800;
		}
		.navbar-nav .dropdown-menu,
		.navbar-nav .dropdown-menu .menu-item {
			border:none;
			padding:0 !important;
		}
		.navbar-nav .dropdown-menu .nav-link {
			font-size: 1.125rem;
			font-weight:400;
		}
		.navbar-nav .dropdown-toggle {
			position: relative;
			padding-right: 2rem;
		}
		.navbar-nav .dropdown-toggle::after {
			content: "";      
			position: absolute;
			right: 0.5rem;
			top: 50%;
			font-size: 22px;      
			line-height: 1;
			border:none;
			transform: translateY(-50%);
			transition:none; 
		}
		.navbar-nav .dropdown-toggle.show::after {
			content: "×";           
			font-size: 22px;       
			line-height: 1;
			transform: translateY(-50%);
		}
	}


/* Posts and pages
--------------------------------------------- */
body:not(.woocommerce):not(.single-product):not(.post-type-archive-product):not(.tax-product_cat) 
.entry-content a:not(.btn) {
  color: #18161b;
  border-bottom: 2px solid #9cb8bb;
  padding-bottom: 1px;
  text-decoration: none;
}

.entry-content h2,
.entry-content h3,
.entry-content h4 {
	font-size: calc(1.3rem + .6vw);
	font-weight:bolder;
	margin-top:3rem;    
	margin-bottom:1rem;  
}

.entry-content .woocommerce h2,
.entry-content .woocommerce h3,
.entry-content .woocommerce h4 {
	margin-top:1rem;    
}

.entry-content h2:first-child {
  margin-top: 0;
}

.entry-content h3 {
	font-size: calc(1.275rem + .3vw);
}

.entry-content h4 {
    font-size:1.25rem;
}

.entry-content p,
.entry-content ul,
.entry-content ol {
	margin-bottom: 1.5rem;
}

body:not(.woocommerce):not(.woocommerce-page):not(.woocommerce-checkout) .entry-content table {
    border-collapse: collapse;
    border-spacing: 1px;
    margin-bottom: 3rem;
    table-layout: fixed;
    text-align: left;
    width: 100%;
    font-size: 1rem;
    background-color: #fff;
}

body:not(.woocommerce):not(.woocommerce-page):not(.woocommerce-checkout) .entry-content table th,
body:not(.woocommerce):not(.woocommerce-page):not(.woocommerce-checkout) .entry-content table td {
    border: 1px solid #ddd;
    padding: 10px;
}

body:not(.woocommerce):not(.woocommerce-page):not(.woocommerce-checkout) .entry-content table th {
    font-weight: 600;
    background-color: #f9f9f9;
}

body:not(.woocommerce):not(.woocommerce-page):not(.woocommerce-checkout) .entry-content table tr:nth-child(even) {
    background-color: #fefefe;
}

body:not(.woocommerce):not(.woocommerce-page):not(.woocommerce-checkout) .entry-content table tr:hover {
    background-color: #f1f1f1;
}

	@media (max-width: 767.98px) {
		body:not(.woocommerce):not(.woocommerce-page):not(.woocommerce-checkout) .entry-content table {
			display: block;
			font-size: 0.9rem;
			overflow-x: auto;
			-webkit-overflow-scrolling: touch;
			width: 100%;
		}

		body:not(.woocommerce):not(.woocommerce-page):not(.woocommerce-checkout) .entry-content table th,
		body:not(.woocommerce):not(.woocommerce-page):not(.woocommerce-checkout) .entry-content table td {
			white-space: nowrap;
		}
	}

.entry-meta a,
.entry-footer a {
	color:#18161b;
	border-bottom:2px solid #9cb8bb;
	font-size:0.93rem;
	padding-bottom:1px;
	text-decoration:none;
}

.entry-footer .edit-link {
	display:none;
}

.sticky {
	display: block;
}

.post,
.page {
	margin:0;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin:0;
}

.page-links {
	clear: both;
	margin:0;
}


/* =Post Navigation
----------------------------------------------- */
.post-navigation {
	margin-top:3rem;	
}

.nav-previous,
.nav-next {
	margin:0.25rem 0;
}

.nav-previous a:before,
.nav-next a:after {
	font-size:1.3rem;
	margin:0;
	padding:0;
}

.nav-previous a:before {
	content:"\2190";
	padding-right:0.5rem;
}

.nav-next a:after {
	content:"\2192";
	padding-left:0.5rem;
}

.nav-previous a,
.nav-next a,
.nav-previous a:hover,
.nav-next a:hover {
	color:#18161b;
	font-size:0.938rem;
	font-weight:800;	
	text-decoration:none;
}


/* Blog pages
--------------------------------------------- */
body.blog,
body.single-post,
body.archive.category,
body.archive.tag {
	background: #cadadb;
}

	@media (max-width: 1199.98px) {
		body.blog .display-4,
		body.single-post .display-4,
		body.archive.category .display-4,
		body.archive.tag .display-4{
			font-size:3.625rem !important;
		}
	}

.archive .page-header em {
	display:block;
	font-style:italic;
	text-align:right;
}

	@media (min-width: 768px) {
		.archive .page-header em {
			margin-right:2rem;
		}
	}
	
	@media (max-width: 767.98px) {
		.archive .page-header {
			max-width:400px;
		}
	}

.category-dropdown select {
    appearance: none;     
    -webkit-appearance: none;
    -moz-appearance: none;
    background:#fff url('images/Dropdown-Arrow-Down.png') no-repeat right 1rem center;
    background-size: 26px 26px; 
	box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    border: 1px solid #ccc; 
    border-radius:50rem; 
	color:#666;
    font-size:1.25rem;
	font-weight:500;
    padding:0.8rem 4rem 0.8rem 2rem; 
}

/* Hide arrow in IE */
.category-dropdown select::-ms-expand {
    display: none;
}

	@media (min-width: 1200px) {
		.category-dropdown select {
			width:350px;
		}
	}
	
/* related posts */	
.crp_related ul {
	display: grid;
	grid-template-columns: repeat(3, 1fr); /* 2 items per row */
	gap: 20px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.crp_related li {
  text-align:left;
}

.crp_related figure {
	margin: 0;
}

.crp_related img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  display: block;
}

.crp_related .crp_title {
	display: block;
	margin-top:1rem;
	font-size: 1rem;
	font-weight:600;
	color:#18161b;
	text-decoration: none;
}

.crp_related a {
	color: inherit;
	text-decoration: none;
}

	@media (max-width: 600px) {
		.crp_related ul {
			grid-template-columns: 1fr;
		}
		.crp_related li {
			margin-top:1rem;
		}
	}
	

/* Pages + Heroes
----------------------------------------------- */
.hero span,
.custom-header span {
	display:block;
}

.hero em,
.custom-header em {
	font-style:italic;
}

	@media (max-width: 991.98px) {
		.entry-header .display-3 {
			font-size:3.625rem !important;

		}
	}


/* Heroes
----------------------------------------------- */
.hero {
	padding-top:10rem;
	padding-bottom:5rem;
}

.hero-store {
	padding-top:9rem;
}

.home .hero {
	padding-top:7.5rem;
	padding-bottom:7.5rem;
}

.hero p {
	max-width:400px;
}

.hero .ps-6 {
	padding-left:9rem;
}

.hero a:not(.btn) {
	border-bottom:1px solid #585c5d;
	padding-bottom:1px;
	text-decoration:none;
}

	@media (min-width: 1920px) {
		.hero {
			min-height:580px;
		}
		.home .hero {
			height: min(100vh, 800px);
		}
	}

	@media (max-width: 1199.98px) {
		.hero .display-1 {
			font-size: 3.6rem !important;
			line-height: 1 !important;
		}
		.hero .display-3 {
			font-size: 3.625rem !important;
		}
		.hero .display-6 {
			font-size: 2.25rem !important;
		}
	}

	@media (max-width: 575.98px) {
		.hero-store {
			padding-top:6rem;
			padding-bottom:2rem;
		}
		.hero:not(.hero-store) {
			display: flex;
			flex-direction: column;
			justify-content: flex-end; 
			align-items: center; 
			min-height:450px;
			margin-bottom:3rem;
			padding:2rem 0 0 0 !important; 
			position: relative;
			overflow: visible;
		}
		.home .hero {
			/*min-height:700px;*/
			height:80vh;
		}
		.hero-inner {
			max-width:400px;
		}
		.hero-position {
			width: 100%;
			margin: 0;
			padding: 0;
			position: relative; /* keep in normal flow so text doesn’t disappear */
		}
		.hero:not(.hero-store) .btn {
			bottom: -1.5rem;          /* overlaps bottom of hero */
			position: relative;       /* stays inside flow */
			left: 50%;
			transform: translateX(-50%);
			z-index: 10;
		}
		.hero .ps-6 {
			padding-left:3rem;
		}
		.hero p {
			max-width: 100%;
			margin-bottom: 0;
		}
	}

	
/* Carousels
--------------------------------------------- */
.carousel-control-prev,
.carousel-control-next {
	opacity:100;
}

.carousel-control-next {
	right:-44px;
}

.carousel-control-prev {
	left:-44px;
}

	@media (max-width: 575.98px) {
		.carousel-control-next {
			right:-36px;
		}

		.carousel-control-prev {
			left:-36px;
		}
	}

	@media (max-width: 480px) {
		.carousel-control-next {
			right:-28px;
		}

		.carousel-control-prev {
			left:-28px;
		}
	}


/* Heading + Content
--------------------------------------------- */
.heading-content.lead-text p:only-child {
    margin-bottom: 0;
}


/* Cards
--------------------------------------------- */
.card-img-overlay {
	background: rgba(0, 0, 0, 0.2);
}

.card-img-overlay .fs-1 {
	font-size:2.25rem !important;
}

	@media (min-width: 1920px) {
		.card-img-overlay .fs-1 {
			font-size:3rem !important;
		}
	}
	
	@media (min-width: 768px) and (max-width: 1199.98px) {
		.card-img-overlay .fs-1 {
			font-size:1.625rem !important;
		}
	}
	
	@media (max-width: 767.98px) {
		.card-img-overlay .fs-1 {
			font-size:2.25rem !important;
		}
	}

.cards-image-overlay em {
    display: block;                  
    line-height: 1 !important;
    margin: 0 !important;  
    margin-top: 0.3em !important;     
    transform: translateY(0.05em);   
}

.cards-image-overlay .card-top {
	left: 1.125rem; 
	position: absolute;
}

.cards-image-overlay .card-bottom {
	bottom: 1rem; 
	display: flex;
	left: 1.125rem; 
	position: absolute;
	right: 1.125rem;   
	justify-content: space-between;
	align-items: center;
}

.stores .card-top {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.storage-types .card-bottom,
.blog-posts .card-bottom,
.testimonials .card-bottom {
	display:flex;
	justify-content:space-between;
	align-items:center;
}

.card.decorated-text .underline,
.card.decorated-text .wiggly-underline {
	position: relative;
	padding-bottom: 0.6rem;
}

.card.decorated-text .underline::after,
.card.decorated-text .wiggly-underline::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 10px; 
	background: url('images/Drawn-Line.png') no-repeat center/contain;
	pointer-events: none;
}

.card.decorated-text .wiggly-underline::after {
	background: url('images/Drawn-wiggly-line.png') no-repeat center/contain;
}

.card.decorated-text .circle {
	position: relative;
	display: inline-block;
	padding: 0 0.2em;
}

.card.decorated-text .circle::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 120%;  
	height: 140%;
	transform: translate(-50%, -50%);
	background: url('images/Drawn-Circle.png') no-repeat center/contain;
	pointer-events: none;
}

#cardTabs .nav-link {
	cursor:pointer;
}

#cardTabs .nav-link.active .tab-text {
    border-bottom: 1px solid #222;
    padding-bottom: 1px;
}

#card-map #map { 
	height: 600px; 
	width:100%; 
}

	@media (max-width: 767.98px) {
		#card-map #map { 
			height: 500px; 
		}
	}


/* Custom lists + Icons
--------------------------------------------- */
.checklist {
	list-style: none;
	margin:2rem 0;
	padding: 0;
}

.checklist li {
    font-size: 1.25rem !important;
    font-weight: 800 !important;
	line-height:36px;
	margin-bottom:0.5rem;
	padding-left:44px;
	text-transform: uppercase;
}     

.checklist.green li {
    background: url('images/Green-Circle-black-tick.png') left top no-repeat;
	background-size:36px 30px;
}     

.checklist.yellow li {
    background: url('images/Yellow-Circle-white-tick.png') left top no-repeat;
	background-size:36px 30px;
}     

.checkmark-circle.yellow {
    background: url('images/YellowCircle-black-tick.png') left no-repeat;
	background-size: contain;
	background-repeat: no-repeat;
	display: flex;
	height: 40px;
	margin-bottom:0.8rem;
	width:40px;
	justify-content: center;
	align-items: center;
}

.circle-with-image {
	background-size: contain;
	background-repeat: no-repeat;
	display: flex;
	height: 52px;
	margin-bottom:0.8rem;
	width:62px;
	justify-content: center;
	align-items: center;
}

.circle-with-image.number {
	background-image: url('images/Yellow-Circle.png');
    font-family: 'AddictiveRegular';
    font-style: normal;
	font-size:2.375rem;
	font-weight:400;
	padding-top:12px;
}

.circle-arrow {
	background:#e1f861 url('images/right-arrow.png') center no-repeat;
	border-radius: 50%;
	display: inline-block; 
	height: 32px;
	width: 32px;
}

.circle-arrow.bg-green {
	background-size: 16px 16px;
}

.circle-arrow.bg-white {
	background-size: 18px 18px;
	border:1px solid #333;
	height: 36px;
	width: 36px;
}

	@media (max-width: 991.98px) {
		.card-with-icons .lh-lg {
			line-height: var(--bs-line-height-sm) !important;
		}
	}

.title-cards-icons .fs-3 {
	font-size: 1.75rem !important;
}

	@media (max-width: 575.98px) {
		.title-cards-icons .card  {      
			border-radius: 0 !important;
			margin-top:0 !important;
		}
		.title-cards-icons .card:first-child {
			border-top-left-radius: 12px !important;
			border-top-right-radius: 12px !important;
		}
		.title-cards-icons .card:last-child {
			border-bottom-left-radius: 12px !important;
			border-bottom-right-radius: 12px !important;
		}
	}


/* Cards dynamic colors
----------------------------------------------- */
.card.quote-result .unit-size {
    background: #9cb8bb; 
}

.col-md-6:nth-child(2) .card.quote-result .unit-size {
    background: #cadadb;
}


/* Stores nav list
----------------------------------------------- */
.store-list .menu {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap:1.125rem;
	list-style:none;
	padding:0;
}

	@media (max-width: 575.98px) {
		.store-list .menu {
			gap:0;
		}
	}

.store-list .menu-item {
	background-color:#cadadb;
	border-radius:1rem;
	display: flex;
	position: relative;	
	padding:1rem 1.5rem 1rem 1.5rem;
	justify-content: space-between;
	align-items: center;
}

	@media (max-width: 575.98px) {
		.store-list {
			background-color:#cadadb;
			border-radius:1rem;
			padding-top:2rem;
			padding-bottom:0.5rem;
		}
		.store-list .menu-item {
			border-radius:0;
			padding-top:0.3rem;
		}
		.store-list .menu-item:not(:last-child) a {
			border-bottom: 1px solid #fff;
			padding-bottom: 1rem;
		}	
	}
        
.store-list .menu-item:hover {
	background-color:#cadadb;
}
        
.store-list .menu-item a {
	color:#18161b;
	font-weight:400;
	font-size:1.1rem;
	text-align:left;
	text-decoration:none;
	height:100%;
	width:100%;
}

.store-list .menu-item a::after {
	background: url('images/Icon-ionic-ios-information-circle-outline.png') no-repeat center center;
	background-size: contain;
	content: "";
	height:26px;
	position: absolute;
	right:20px;
	top:50%;
	transform:translateY(-50%);
	width:26px;
}
        
	@media (max-width: 900px) {
		.store-list .menu {
			grid-template-columns: repeat(2, 1fr);
		}
	}
        
	@media (max-width: 575.98px) {
		.store-list .menu {
			grid-template-columns: 1fr;
		}
		.store-list .menu-item a::after {
			right:25px;
			top:5px;
			transform:none;
		}
	}


/* Overlaps
--------------------------------------------- */
.overlap--x-sm { margin-bottom: -50px; }
.overlap--sm { margin-bottom: -100px; }
.overlap--md { margin-bottom: -150px; }
.overlap--lg { margin-bottom: -200px; }

	@media (max-width: 991.98px) {
		.overlap--x-sm { margin-bottom: -25px; }
		.overlap--sm { margin-bottom: -60px; }
		.overlap--md { margin-bottom: -100px; }
		.overlap--lg { margin-bottom: -150px; }
	}


/* Accordions
--------------------------------------------- */
.accordion-button:not(.collapsed)::after {
	background: url('images/Dropdown-Arrow-Up.png');
	background-size: 28px;
	height: 28px;
	width: 28px;
	transform: none;  
}

.accordion-button::after {
	background: url('images/Dropdown-Arrow.png');
	background-size: 28px;
	height: 28px;
	width: 28px;
	transform: none;
}

.accordion-button:not(.collapsed) {
	background-color:#f0eee6;
	border-bottom-left-radius:0 !important;	
	border-bottom-right-radius:0 !important;	
	box-shadow:none !important;
	color:#18161b;
}

.accordion-collapse.show .accordion-body {
    border-bottom-left-radius:1rem;
    border-bottom-right-radius:1rem;
}

.accordion-collapse:not(.show) .accordion-body {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.accordion-body {
    border-radius: 0;
}

.accordion-body a {
	color:#18161b;
	border-bottom:2px solid #18161b;
	padding-bottom:1px;
	text-decoration:none;
}

.accordion-button {
	scroll-margin-top: 120px;
}


/* Sliders
--------------------------------------------- */
.slider-flush-wrapper {
	overflow-x: hidden;
}

.slider-flush-right {
	display: flex;
	flex-wrap: wrap;
	margin-left: max(1.5rem, calc((100% - min(100%, 1280px)) / 2));
	margin-right:0;
}

.slider-flush-right.width--lg {
	margin-left: max(1.5rem, calc((100% - min(100%, 1170px)) / 2));
}

	@media (min-width: 1920px) {
		.slider-flush-right {
			margin-left: max(1.5rem, calc((100% - min(100%, 1400px)) / 2));
		}
		.slider-flush-right.width--lg {
			margin-left: max(1.5rem, calc((100% - min(100%, 1400px)) / 2));
		}
	}

.swiper {
	padding-bottom:60px;
}

.swiper.blog-posts {
	padding-bottom:0;
}

.swiper-wrapper {
	visibility: hidden; /* hide until images load */
}

.swiper.size-esimator.pills-swiper {
	padding-bottom:0;
}

	@media (max-width: 575.98px) {
		.swiper.size-esimator.pills-swiper {
			padding-bottom:0;
		}
	}

.swiper.size-esimator.main-swiper {
	padding-bottom:0;
}

.swiper.team-posts {
	padding-bottom:70px;
}

.swiper-scrollbar { 
	bottom: 0; /* default */
	background:#fff;
	border-radius:5px;
	height:10px !important; 
	left:0 !important;
	right:0 !important;
}

.blog-posts .swiper-scrollbar,
.trustpilot .swiper-scrollbar {
	width:90% !important;
}

.swiper-scrollbar-drag {
	border-radius:5px;
	cursor:pointer; 
}

.blog-posts .swiper-scrollbar-drag {
	background-color:#18161b;
}

.testimonials .swiper-scrollbar-drag,
.team-posts .swiper-scrollbar-drag,
.trustpilot .swiper-scrollbar-drag {
	background-color:#9cb8bb;
}

.swiper-wrapper {
	display: flex; 
	align-items: stretch; 
}

.swiper-slide {
	display: flex; 
	height: auto; 
}

/* Force Swiper to be visible */
.swiper {
    visibility: visible !important;
    opacity: 1 !important;
}

.swiper-wrapper {
    visibility: visible !important;
    opacity: 1 !important;
    display: flex !important;
}

.swiper-slide {
    height: auto;
    visibility: visible !important;
}

/* fix for cards to be same height */
.blog-posts .swiper-slide .card-body h5 {
	line-height: 1.3;
	min-height: calc(1.3em * 3);
}


/* Ticker
--------------------------------------------- */
.ticker-container {
	position: relative;
	width: 100%;
	height:50px;
	background:#e1f861;
	overflow: hidden;
}

.ticker {
	display: flex;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	align-items: center;
	animation: ticker-scroll 20s linear infinite;
	white-space: nowrap;
}

.ticker-item {
	display: inline-flex;
	align-items: center;
	padding: 0 30px; /* 100px spacing between items */
	color:#18161B;
	font-size: 1.25rem;
	font-weight: 800;
	letter-spacing:-1px;
	text-transform:uppercase;
}

@keyframes ticker-scroll {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-33.33%);
	}
}

	@media (max-width: 767.98px) {
		.ticker-item {
			font-size:1.125rem;
			padding: 0 30px;
		}
	}
     

/* =Google Maps
--------------------------------------------------------------*/
.google-map {
	position: relative;
	aspect-ratio: 16 / 9; 
	overflow: hidden;
}

.google-map.square-map {
	aspect-ratio: 4 / 3; 
}

.google-map iframe {
	position: absolute;
	inset: 0; 
	width: 100%;
	height: 100%;
	border: 0;
}


/* =Videos
--------------------------------------------------------------*/
.youtube,
.youtube-video-wrapper /* Posts */ {
    position: relative;
    width: 100%;
    padding-top: 56.25%; /* 16:9 aspect ratio */
    background-color: #000;
    border-radius: 8px;
    margin-bottom: 30px;
    overflow: hidden;
    cursor: pointer;
}

.youtube img.cover-img,
.youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* fill container without black bars */
}

.youtube .play-button {
    background: url('images/Icon-play-circle.png') center no-repeat;
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    position: absolute;
    bottom: 25px;
    left: 25px;
    z-index: 2;
    cursor: pointer;
}


/* Media
--------------------------------------------- */
img {
	height:auto;
	max-width:100%;
}

.view-size-estimator-section img {
	max-width:380px;
}

	@media (max-width: 575.98px) {
		.view-size-estimator-section img {
			max-width:270px;
		}
	}


/* Widgets
--------------------------------------------- */
.widget-area .widget {
	font-size:1rem;
	margin-bottom:3rem;
}

.widget-area .widget-title { 
    font-size:1.75rem;
	font-weight:800;
	margin-bottom:1rem;
}

.widget-area li a {
	display:block;
	padding:0.3rem 0;
}

.widget-area .widget a {
	color:#101010;
	font-size:1rem;
	text-decoration:none;
}

.widget select {
	font-size:1rem;
	padding:0.625rem;
	max-width:100%;
	width:100%;
}

.widget_search label {
	max-width:100%;
	width:100%;
}

.widget_search .search-field {
	background:#fff;
	border:none;
	border-radius: .375rem;	
	font-size:1rem;
	padding:0.625rem;
	width:100%;
}

.widget_search .search-submit {
	display:none;
}


/* Footer
--------------------------------------------- */
.site-footer {
	font-size:1.125rem;
}

.site-footer .footer-logo {
	margin-right:1rem;
	max-width:80px;
}

.site-footer ul {
	list-style:none;
	margin:0;
	padding:0;
}

.site-footer a {
	text-decoration:none;
}

.site-footer .footer-nav .nav-link.dropdown-toggle {
	font-size: 1.5rem !important;
	font-weight: 800 !important;	
	margin-bottom: .5rem !important;
}

.site-footer .footer-nav .dropdown-menu {
	background:transparent;
	border:none;
}

	@media (min-width: 768px) {
		.site-footer .footer-nav .nav-link.dropdown-toggle::after {
			display:none;
		}
		.site-footer .footer-nav .nav-link.dropdown-toggle {
			cursor:none;     
			pointer-events: none; 
			margin-bottom:0;
		}
		.site-footer .footer-nav .dropdown-menu {
			display:block;
		}
	}

	@media (max-width: 767.98px) {
		.site-footer .footer-nav .dropdown-menu {
			background: transparent;
			border: none;
			position: static !important;
			transform: none !important; /* removes Popper.js offsets */
			top: auto !important;
			left: auto !important;
			margin: 0 !important;       /* removes the default Bootstrap margin */
			padding: 0;
			width: 100%;
		}		
		.site-footer .footer-nav .nav-link.dropdown-toggle {
			margin-bottom:10px !important;
		}
		.site-footer .footer-nav .dropdown-menu.show {
			display: block;
			margin-bottom:1rem !important;
			padding:0 !important;
		}
	}

.site-footer .footer-nav li {
	padding-top:0.15rem;
	padding-bottom:0.15rem;
}

.site-footer .footer-nav a {
	color:#18161b;
	font-size:1.125rem;
	font-weight:500;
}

.site-footer .site-info,
.site-footer .site-info a {
	font-size:0.875rem;
}

	@media (min-width: 768px) {
		.site-footer .site-info {
			display:flex;
		}
		.site-footer .site-info li {
			margin-right:1.25rem;
		}
	}
	
	@media (max-width: 767.98px) {
		.site-footer .site-info li {
			margin-top:0.2rem;
			margin-bottom:0.2rem;
		}
	}


/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {
	float: left;
	margin-right: 1.5rem;
	margin-bottom: 1.5rem;
}

.alignright {
	float: right;
	margin-left: 1.5rem;
	margin-bottom: 1.5rem;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5rem;
}


/* WooCommerce
--------------------------------------------- */
/* grid */
.woocommerce ul.products li.product {
    margin-top:1.563rem;
	margin-bottom:2.188rem;
    padding-left:1rem;
    padding-right:1rem;
}

	@media (max-width: 767.98px) {
		.woocommerce ul.products[class*=columns-] li.product, 
		.woocommerce-page ul.products[class*=columns-] li.product {
			margin:2rem 0 !important;
		}
	}

/* global text & link colours */
.woocommerce .site-main,
.woocommerce-page .site-main {
color: #18161b;
}

/* links inside WooCommerce areas */
.woocommerce .site-main a,
.woocommerce-page .site-main a {
	color: #18161b;
	text-decoration: none;
}

/* link hover/focus states: slightly visible change (adjust if you want) */
.woocommerce .site-main a:hover,
.woocommerce .site-main a:focus,
.woocommerce-page .site-main a:hover,
.woocommerce-page .site-main a:focus {
	color: #18161b;
	text-decoration: underline;
}

/* headings */
.woocommerce .site-main h1,
.woocommerce .site-main h2,
.woocommerce .site-main h3,
.woocommerce .site-main h4,
.woocommerce .site-main h5,
.woocommerce .site-main h6,
.woocommerce .site-main .product_title {
	color: #18161b;
}

/* buttons: background #18161b and white text */
.woocommerce .site-main a.button,
.woocommerce .site-main button.button,
.woocommerce .site-main input.button,
.woocommerce .site-main #respond input#submit,
.woocommerce-page .site-main a.button,
.woocommerce-page .site-main button.button,
.woocommerce-page .site-main input.button {
	background-color: #18161b;
	border-radius:50rem !important;
	color: #fff !important;
	border:1px solid #18161b;
    padding-top: .8rem !important;
    padding-bottom: .8rem !important;
    padding-right: 3rem !important;
    padding-left: 3rem !important;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.woocommerce .site-main a.button:hover,
.woocommerce .site-main button.button:hover,
.woocommerce .site-main input.button:hover,
.woocommerce-page .site-main a.button:hover,
.woocommerce-page .site-main button.button:hover,
.woocommerce-page .site-main input.button:hover,
.woocommerce .site-main a.button:focus,
.woocommerce .site-main button.button:focus,
.woocommerce .site-main input.button:focus {
	background-color: #fff;
	color:#18161b !important;
	text-decoration:none;
}

/* outline for keyboard accessibility */
.woocommerce .site-main a.button:focus,
.woocommerce .site-main button.button:focus,
.woocommerce .site-main input.button:focus {
	outline: 3px solid rgba(24,22,27,0.12);
	outline-offset: 2px;
}

/* ensure quantity inputs and minor controls inherit text colour */
.woocommerce .site-main .quantity,
.woocommerce .site-main .qty,
.woocommerce .site-main .price,
.woocommerce .site-main .stock,
.woocommerce .site-main .woocommerce-loop-product__title,
.woocommerce .site-main .product_meta,
.woocommerce .site-main .woocommerce-review__author {
	color: #18161b !important;
}

/* single product */
.up-sells.upsells.products,
.related.products {
	margin-top:4rem !important;
}

.up-sells.upsells.products h2:first-of-type,
.related.products h2:first-of-type {
	margin-bottom:1.5rem;
}

/* cart */
	@media (min-width: 1200px) {
		.coupon .input-text {
			width:200px !important;
		}
	}

/* checkout */
.woocommerce-additional-fields__field-wrapper {
	display:none;
}

.woocommerce-additional-fields h3 {
	display:none;
}

.shipping-inactive .woocommerce .col2-set .col-1, 
.shipping-inactive .woocommerce-page .col2-set .col-1,
.shipping-inactive .woocommerce .col2-set .col-2, 
.shipping-inactive .woocommerce-page .col2-set .col-2 {
    width: 100%;
}

.shipping-inactive .woocommerce .col2-set .col-2, 
.shipping-inactive .woocommerce-page .col2-set .col-2 {
    margin-top:2rem;
}

.payment-order-overview .left-col,
.payment-order-overview .right-col {
	margin-top:2rem;
}

/* change payment method bg color */
#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment {
    background:#fff;
    border-radius: 5px;
}

/* style payment radios buttons */
.wc_payment_methods input[type="radio"] {
    display: none;
}

.wc_payment_methods label {
    position: relative;
    padding-left: 40px; /* space for the checkmark */
    cursor: pointer;
    display: inline-block;
	font-size:18px;
    line-height: 26px; /* align with checkmark */
	margin:0.5rem 0;
}

.wc_payment_methods label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 26px;
    height: 26px;
    border: 2px solid #18161b;
    border-radius: 50%;
    background: #fff;
    transition: all 0.3s ease;
}

.wc_payment_methods input[type="radio"]:checked + label:after {
    content: '';
    position: absolute;
    left: 8px;
    top: 4px;
    width: 8px;
    height: 14px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.wc_payment_methods input[type="radio"]:checked + label:before {
    background: #18161b;
    border-color: #18161b;
}

/* hide paypal logo and text */
.wc_payment_method.payment_method_paypal img,
.wc_payment_method.payment_method_paypal .about_paypal {
	display:none;
}

#add_payment_method #payment div.payment_box, .woocommerce-cart #payment div.payment_box, .woocommerce-checkout #payment div.payment_box {
    background-color: #fff;
    color:#18161b;
}

#add_payment_method #payment div.payment_box::before, .woocommerce-cart #payment div.payment_box::before, .woocommerce-checkout #payment div.payment_box::before {
    border: 1em solid #fff;
    border-right-color: transparent;
    border-left-color: transparent;
    border-top-color: transparent;
}

#add_payment_method #payment ul.payment_methods, .woocommerce-cart #payment ul.payment_methods, .woocommerce-checkout #payment ul.payment_methods {
	padding-left:0;
	padding-right:0;
}

#add_payment_method #payment div.form-row, .woocommerce-cart #payment div.form-row, .woocommerce-checkout #payment div.form-row {
	padding-left:0;
	padding-right:0;
}

/* checkout button */
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order {
    float:left;
}

.woocommerce-checkout-payment .button.alt {
	background:#e1f861;
	border-radius:50rem !important;
	color: #18161b;
    font-size: 1.15rem !important;
	font-weight: 800 !important;
	margin-top:2rem;
    padding-top: .8rem !important;
    padding-bottom: .8rem !important;
    padding-right: 3rem !important;
    padding-left: 3rem !important;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
		
.woocommerce-checkout-payment .button.alt {
	width:100% !important;
}

	@media (min-width: 576px) {
		.woocommerce-checkout-payment .button.alt {
			width:350px !important;
		}
	}	

/* messages */
.woocommerce-message {
    border-top-color: #18161b;
}

.woocommerce-message::before {
    color: #18161b;
}

.woocommerce-error, .woocommerce-info, .woocommerce-message {
    color: #18161b;
    border-top: 3px solid #18161b;
}

.woocommerce span.onsale {
    background-color: #c00;
}