* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box; 
}
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video, input, select {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	color: unset;
}
html {
	scroll-behavior: smooth;
}
a {text-decoration:none;cursor: pointer;}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
button {
	cursor: pointer;
	border: none;
	border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/*=== END RESET ===*/
::-moz-selection {
    background: #000;
    color: #fff;
    text-shadow: none;
}
::selection {
    background: #000;
    color: #fff;
    text-shadow: none;
}

/*=== Clearfix ===*/
.clear {clear: both;}
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
    zoom: 1;
}

/*=== ELEMENTS ===*/
img {max-width: 100%;}
body {
	font-family: "Roboto Condensed", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}
strong, b {
	font-weight: 500;
}
.xl-heading, .lg-heading, .md-heading, .sm-heading, .xs-heading {
	font-family: "Anton", serif;
	font-weight: 400;
	font-style: normal;
	text-transform: uppercase;
}
.xl-heading {font-size: clamp(40px, 5vw, 48px);line-height: clamp(42px, 5vw, 50px);}
.lg-heading {font-size: clamp(34px, 5vw, 42px);line-height: clamp(36px, 5vw, 44px);}
.md-heading {font-size: clamp(27px, 5vw, 35px);line-height: clamp(29px, 5vw, 37px);}
.sm-heading {font-size: clamp(18px, 5vw, 26px);line-height: clamp(20px, 5vw, 28px);}
.xs-heading {font-size: clamp(18px, 5vw, 24px);line-height: clamp(20px, 5vw, 26px);}
.button-group {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}
button.primary-button {
	font-family: "Roboto Condensed", sans-serif;
	font-size: 18px;
	line-height: 18px;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
    padding: 10px 20px;
	border-radius: 15px;
    background-color: #000000;
    color: #ffffff;
	opacity: 1;
	transition: all ease 0.3s;
}
button.primary-button:hover {
	opacity: 0.6;
}
button.secondary-button {
	font-family: "Roboto Condensed", sans-serif;
	font-size: 16px;
	line-height: 18px;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
    padding: 5px 15px;
	border-radius: 20px;
    background-color: #F4F4F4;
    color: #000000;
	opacity: 1;
	transition: all ease 0.3s;
}
button.secondary-button:hover {
	opacity: 0.6;
}
button.text-button {
	font-family: "Roboto Condensed", sans-serif;
	font-size: 18px;
	line-height: 18px;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
    padding: 5px 0;
	border-radius: 20px;
    background-color: transparent;
    color: #ffffff;
	opacity: 1;
	transition: all ease 0.3s;
	text-transform: uppercase;
	margin-bottom: 10px;
}

/*=== GLOBAL ===*/
.flex-container{display:flex}.flex-vertical{flex-direction:column}.flex-horizontal{flex-direction:row}.flex-width{flex-grow:1;flex-shrink:1;flex-basis:100%}.flex-height{height:100%}.flex-wrap{flex-wrap:wrap}.set-width{flex-grow:0;flex-shrink:0;flex-basis:auto}.justify-center{justify-content:center}.justify-right{justify-content:flex-end}.justify-left{justify-content:flex-start}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.align-center{align-items:center}.align-top{align-items:flex-start}.align-bottom{align-items:flex-end}.align-stretch{align-items:stretch}.align-all-center{align-items:center;justify-content:center}.align-self-center{align-self:center}.align-self-right{align-self:flex-end}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}

.mobile-only {
	display: none;
}

.max-width {
	max-width: 1920px;
	width: 90%;
	margin: 0 auto;
}
.logo-container .logo {
	display: flex;
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: auto;
	width: 100%;
	max-width: 175px;
	height: 100%;
    object-fit: contain;
    object-position: center;
}
a.logo-container {
	line-height: 0;
}
p.paragraph {
	padding-top: 20px;
}
ul.list {
	list-style-type: disc;
	list-style-position: inside;
	padding-top: 10px;
}
.split-tone-bg {
	background-image: linear-gradient(to right, #F4F4F4 0,#F4F4F4 50%, #ffffff 50%, #ffffff 100%);
}
.map {
	line-height: 0;
	min-height: 350px;
}
.banner {
	background-color: #F4F4F4;
	color: #000000;
	padding: 50px 0;
	margin: clamp(50px, 5vw, 75px) 0 0;
}
.banner .text-button {
	color: #000000;
}

#loading {
	position: fixed;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 1;
	background-color: #fff;
	z-index: 9999;
}
  
#loading-image {
	z-index: 100;
}
  

/*=== HEADER ===*/
header.site-header {
	padding: 15px 0;
	border-bottom: 1px solid #dfdfdf;
}

/*=== FOOTER ===*/
footer.site-footer {
	font-size: 16px;
	line-height: 18px;
	gap: 20px;
	padding-bottom: clamp(50px, 5vw, 75px);
}
footer.site-footer .middle-footer {
	font-family: "Anton", sans-serif;
	font-weight: 400;
	font-style: normal;
	text-transform: uppercase;
	font-size: 21px;
	line-height: 23px;
}
footer.site-footer .middle-footer ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 25px;
}
footer.site-footer .bottom-footer {
	padding-top: 10px;
	font-size: 14px;
}

/*=== PAGE STYLES ===*/

/*=== SUB-PAGE ===*/
/* .sub-page */
#sub-page:not(.inventory-page), .default-page, .site-header, .site-footer {
	font-family: "Roboto Condensed", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 20px;
	line-height: 26px;
}
#sub-page  {
	padding: clamp(50px, 5vw, 75px) 0;
}

/*=== DEFAULT-PAGE ===*/
.default-page .hero-container {
    background-image: linear-gradient(to right, rgba(0, 0, 0, .75) 0,rgba(0, 0, 0, .0) 100%), url("/siteart/telehandler-on-jobsite.jpg");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    color: #ffffff;
}
.default-page .hero-container .hero-text {
	padding: 350px 0 100px;
}
.default-page .slider {
    overflow: hidden;
	padding: clamp(50px, 5vw, 75px) 0;
}
.default-page .slider .slick-slide {
    margin: 0 8px;
}
.default-page .slider .slide {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.default-page .slider .slide a {
	display: block;
	border-radius: 15px;
	padding: 25px;
	aspect-ratio: 9/5;
	align-content: center;
	height: 100%;
}
.default-page .slider .slide a img {
	height: 100%;
	max-height: 75px;
	width: 100%;
	max-width: 200px;
	object-fit: contain;
	object-position: center;
	margin: auto;
}
.default-page .home-about .split-tone-bg {
	padding: clamp(50px, 5vw, 75px) 0;
}
.default-page .home-about .telehandler {
	background-image: url("/siteart/telehandler-cutout.png");
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	height: 100%;
	width: 80%;
	margin: auto;
	min-height: 200px;
}
.default-page .home-about .about-text {
	padding: clamp(75px, 5vw, 100px) 0;
}
.default-page .home-about .about-text > * {
	max-width: 90%;
	margin: 0 auto 0 0;
}
.default-page .home-contact {
	padding: clamp(50px, 5vw, 75px) 0;
}
.default-page .home-contact .contact-form-group {
	padding: clamp(50px, 5vw, 75px) 0;
}
.default-page .home-contact .contact-form-group > * {
	max-width: 80%;
	margin: auto;
}

@media screen and (max-width: 875px) {
	.flex-horizontal {
		flex-direction: column
	}
	.desktop-only {
		display: none;
	}
	.mobile-only {
		display: flex;
	}

	/*=== HEADER ===*/
	header.site-header > .align-stretch {
		align-items: center;
	}

	/*=== FOOTER ===*/
	footer.site-footer .middle-footer ul {
		gap: 10px 15px;
	}

	/*=== PAGE STYLES ===*/
	/*=== DEFAULT-PAGE ===*/
	.default-page .home-about .telehandler {
		width: 90%;
	}
	.default-page .home-about .about-text > * {
		max-width: 90%;
		margin: auto 10%;
	}
	.default-page .home-contact .contact-form-group {
		padding: 0 0 clamp(50px, 5vw, 75px) 0;
	}
}