@charset "utf-8";
/* CSS Document */


@font-face {
  font-family: 'Guildhall';
  src: url('../siteart/fonts/Guildhall-Condensed-Italic.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

*{-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}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}img{max-width:100%;}
/*=== END RESET ===*/

/*=== CLEARFIX ===*/
.clear{clear:both}.cf:before,.cf:after{content:" ";display:table}.cf:after{clear:both}.cf{zoom:1}

/*=== 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{margin:0 var(--sm-padding)}.map{min-height:350px;line-height:0;}


*,
*::before,
*::after {
    transition: all 0.3s ease;
}
a:hover {cursor: pointer !important;}

/*=== SELECT STYLES ===*/
::selection, ::-moz-selection {
	background: var(--red);
	color: var(--white);
	text-shadow: none;
}

:root {
	/*=== Fonts ===*/
    --Roboto: "Roboto", sans-serif;
    --Guildhall: "Guildhall", "Roboto Condensed", sans-serif;
    --Manrope: "Manrope", sans-serif;
    --Roboto-Cond: "Roboto Condensed", sans-serif;

	/*=== Colors ===*/
	--black: #1a1a1a;
	--white: #FFFFFF;
	--blue: #0A2C60;
	--orange: #FD6B03;
    --gray: #D0D0D0;
    --dk-gray: #45505C;
    
    /*=== Font Sizes ===*/
    --p: clamp(16px, 5vw, 20px);

	/*=== Spacing ===*/
	--lg-padding: clamp(75px, 5vw, 100px);
	--sm-padding: clamp(25px, 2.5%, 2.5%);
}

    .black{color: var(--black)}
    .white{color: var(--white)}
    .blue{color: var(--blue)}
    .orange{color: var(--orange)}
    .gray{color: var(--gray)}
    .dk-gray{color: var(--dk-gray)}


.orange-grad  {
	background: linear-gradient(to bottom, var(--orange) 0%, #974002 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	color: transparent;
    display: inline-block;
    width: 110%;
}

body {
    position: relative;
    z-index: 0;
	font-family: var(--Manrope), sans-serif !important;
	height: auto !important;
}

.page-shadow {
	max-width: 1920px!important;
    width: 100%!important;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 20px 0px!important;
    background-color: rgb(255, 255, 255)!important;
    margin: 0 auto!important;
	overflow-x: hidden;
}

p {
    font-size: clamp(16px, 5vw, 18px);
}


.thick {
    font-weight: 900 !important;
}

.robo-caps {font-family: var(--Roboto-Cond) !important; text-transform: uppercase; font-size: clamp(27px, 5vw, 35px); line-height: clamp(27px, 5vw, 35px); font-weight: 300;}

.center {text-align: center;}

.xxl-heading, .xl-heading, .lg-heading, .md-heading, .sm-heading {
	font-family: var(--Guildhall);
	text-transform: uppercase;
    display: inline-block;
}

.xl-heading-bold {
	text-transform: uppercase;
    font-weight: 900 !important;
}


.xs-heading {
	font-family: var(--Roboto-Cond);
	text-transform: uppercase;
    font-style: italic;
	padding-top: 5px;
}
.xxl-heading {font-size: clamp(56px, 5vw, 96px);line-height: clamp(56px, 5vw, 96px);}
.xl-heading {font-size: clamp(36px, 5vw, 64px);line-height: clamp(36px, 5vw, 64px);}
.lg-heading {font-size: clamp(34px, 5vw, 42px);line-height: clamp(34px, 5vw, 42px);}
.md-heading {font-size: clamp(27px, 5vw, 35px);line-height: clamp(27px, 5vw, 35px);}
.sm-heading {font-size: clamp(18px, 5vw, 26px);line-height: clamp(18px, 5vw, 26px);}
.xs-heading {font-size: clamp(16px, 5vw, 18px);line-height: clamp(16px, 5vw, 18px);}

.sm-padding {padding: 20px 0;}

.width90 {width: 90%; max-width: 1600px; margin: auto;}

/*=== BODY STYLES 
============================================*/
.btns-row {display: flex; justify-content: flex-start; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 20px;}

.btn-orange { position: relative; display: inline-flex; align-items: center; justify-content: center; padding: 10px 20px; background:linear-gradient(rgba(0,0,0,0)), var(--orange); color: #fff; font-style: italic; text-transform: uppercase; text-decoration: none; border-radius: 5px; overflow: hidden; transition: all 0.3s ease; }
.btn-orange::before { content: ""; position: absolute; top: 0; left: -20%; width: 120px; height: 100%; background: rgba(255,255,255,0.18); transform: skewX(-40deg); transition: all 0.4s ease; }
.btn-orange::after { content: ""; position: absolute; top: 0; left: 15%; width: 40px; height: 100%; background: rgba(255,255,255,0.22); transform: skewX(-40deg); transition: all 0.4s ease; }
.btn-orange span { position: relative; z-index: 2; }
.btn-orange:hover { background: #ff8400; transform: translateY(-2px); box-shadow: 0 8px 20px rgba(255,115,0,.35); }
.btn-orange:hover::before,
.btn-orange:hover::after { transform: translateX(40px) skewX(-40deg); }

.btn-clear { position: relative; display: inline-flex; align-items: center; justify-content: center; padding: 10px 20px; background: transparent; color: #fff; font-style: italic; text-transform: uppercase; text-decoration: none; border-radius: 5px; overflow: hidden; transition: all 0.3s ease; border: 1px solid var(--white);}
.btn-clear::before { content: ""; position: absolute; top: 0; left: -20%; width: 120px; height: 100%; background: rgba(255,255,255,0.18); transform: skewX(-40deg); transition: all 0.4s ease; }
.btn-clear::after { content: ""; position: absolute; top: 0; left: 15%; width: 40px; height: 100%; background: rgba(255,255,255,0.22); transform: skewX(-40deg); transition: all 0.4s ease; }
.btn-clear span { position: relative; z-index: 2; }
.btn-clear:hover { background: var(--blue); transform: translateY(-2px); box-shadow: 0 8px 20px rgba(10,44,96,.35); border-color: var(--blue);}
.btn-clear:hover::before,
.btn-clear:hover::after { transform: translateX(40px) skewX(-40deg); }

.btn-large {display: flex; justify-content: space-between; align-items: center; gap: 10px; background: linear-gradient(rgba(0,0,0,0)), var(--orange); border-radius: 5px; padding: 5px 5px 5px 20px; margin-top: 25px;}
.btn-large i {display: flex; aspect-ratio: 1/1; padding: 25px; background: var(--white); border-radius: 5px; font-size: 32px;}
.btn-large:hover {background: #974002;}
.btn-large:hover i {transform: translateX(-20px);}
/*=== HEADER STYLES 
==============================*/
.header-wrap {position: relative; z-index: 99;}
.header {background: linear-gradient(to top, var(--white) 0%, var(--white) 10%, transparent 20%), linear-gradient(to right, var(--gray) 0%, var(--white) 30%); display: flex; justify-content: flex-end; align-items: center; padding: 5px 20px; border-radius: 0px 0px 20px 20px; position: fixed; left: 50%; transform: translateX(-50%); box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.25);}
.header-logo {width: 100%; max-width: 250px; height: auto; position: absolute; top: 10px; left: -1.5vw;}
.header-logo:hover {transform: rotate(5deg) scale(1.05);}
nav.primary {z-index: 99 !important;}

.call-now {display: flex; justify-content: flex-start; align-items: center; gap: 10px; border: 1px solid var(--gray); padding: 10px; border-radius: 5px;}
.call-now:hover {background: #f6f6f6;}
.call-now > div {display: flex; flex-direction: column; gap: 0;}
.call-now  i {font-size: 32px;}

/*=== FOOTER STYLES 
==============================*/
.footer-wrap {border-top: 2px solid var(--blue); padding: 50px 0;}
.footer-wrap > div {display: flex; justify-content: space-between; align-items: flex-start; gap: 50px; flex-wrap: wrap;}
.footer-wrap > div ul li {margin-bottom: 20px;}
.footer-wrap > div ul li a:hover {color: var(--orange);}
.footer-logo {max-width: 200px;}
.footer-wrap > div > div > p {max-width: 300px;}

/*=== HOME PAGE 
==============================*/
.home-hero {background: linear-gradient(to right, rgba(0,0,0,1), rgba(0,0,0,0)), url("../siteart/scissor-lift-ceiling.jpg"); background-position: center center; background-size: cover; overflow: hidden;}
.home-hero > div > div {display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; gap: 25px; min-height: 700px; max-width: 600px; padding: 50px 0;}
.home-hero > div > div h1 { line-height: 70% !important;}


.inventory-search {background: linear-gradient(15deg, var(--blue), rgba(0,0,0,1));}
.inventory-search form { display: flex; justify-content: flex-start; align-items: center; width: 100%; padding: 20px 0; gap: 50px; flex-wrap: wrap;}
.inventory-search form > div {display: flex; flex-wrap: wrap;}
.inventory-search form > div >* {flex: 1 1 0;}
div:has(#slide-search-input) {display: flex; gap: 10px;}
#slide-search-input, #mobile-form-submit, .inventory-search select  { border-radius: 5px; padding: 10px;}
#mobile-form-submit { background: var(--orange); color: var(--white); padding: 10px 15px;}
#mobile-form-submit:hover {background-color: var(--dk-gray);}
.inventory-search select:focus-visible, .inventory-search input:focus-visible {outline: 2px solid var(--orange);}

.quicklinks {display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; padding: 50px 0;}
.quicklink-box {display: flex; flex-direction: column; justify-content: center; align-content: stretch; border: 1px solid #ebebeb; border-radius: 5px; overflow: hidden;}
.quicklink-box:hover {transform: translateY(-10px); box-shadow: 5px 5px 15px 5px rgba(0,0,0,0.05);}
.quicklink-box > img {object-fit: contain; background: var(--white);}
.quicklink-box > div {display: flex; justify-content: space-between; align-items: stretch; height: 100%; background: var(--blue); padding: 0px 0px 0px 10px;}
.quicklink-box > div h3 {padding: 10px;}
.quicklink-box > div i {background: var(--orange); padding: 10px 15px;}

.hero-grid { display:grid; grid-template-columns:2fr 1.2fr 0.9fr; gap:10px; min-height:650px; }
.hero-card { position:relative; overflow:hidden; }
.hero-card img { width:100%; height:100%; object-fit:cover; display:block; }
.hero-card::before { content:""; position:absolute; inset:0; background:rgba(12,25,50,.45); z-index:1; }
.hero-card-main {clip-path: polygon(0 0, 100% 0, calc(100% - 50px) 100%, 0 100%);}
.hero-card-main::before { background:linear-gradient(to right, rgba(0,0,0,.75), rgba(0,0,0,.15)); }
.hero-card-middle { clip-path:polygon(calc(0% + 50px) 0, 100% 0, 100% 100%, 0 100%); transform: translateX(-20px);}
.hero-side { display:grid; grid-template-rows:1fr 1fr; gap:25px; }
.hero-overlay { position:absolute; top:50%; left:5vw; transform:translateY(-50%); z-index:2; max-width:350px; background:linear-gradient(rgba(0,0,0,0));}
.hero-btn { display:inline-block; padding:14px 28px; background:#ff7900; color:#fff; text-decoration:none; font-weight:700; border-radius:4px; }
.hero-btn:hover { background:#e86f00; }

.half-photo {display: flex; justify-content: space-between; align-items: stretch;gap: 20px; padding: 100px 0;}
.half-photo-text {padding-right: 5vw;}
.half-photo-img {clip-path: polygon(0 0, 100% 0, calc(100% - 50px) 100%, 0 100%);}
.half-photo-img img {height: 100%; width: auto; object-fit: cover;}
.half-photo > div {flex: 1 1 0; height: auto;}

.half-photo2 {display: flex; justify-content: space-between; align-items: stretch;gap: 20px; padding: 100px 0;}
.half-photo-img2 {clip-path: polygon(0 0, calc(100% - 50px) 0, 100% 100%, 50px 100%); width: clamp(0px, 30vw, 400px); height: auto;}
.half-photo-img2 img {height: 100%; width: auto; object-fit: cover;}
.half-photo-text2 {margin-left: 5vw;}
.half-photo2 > div:nth-child(2) {display: flex; justify-content: flex-start; align-items: stretch; height: auto; }
.half-photo2 > div:nth-child(2) div:has(iframe) {width: 100%;}
.half-photo2 > div:nth-child(2) iframe {height: 100%; width: 100%;clip-path: polygon(0 0, 100% 0, 100% 100%, 50px 100%);}
.half-photo2 > div {flex: 1 1 0; height: auto;}


.callout {border-left: 5px solid var(--orange); padding-left: 15px; margin-bottom: 20px;}

.contact-box {display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 10px; padding: 20px; background: var(--gray-light); border-radius: 10px;}
.contact-box span {font-family: "Big Shoulders"; font-size: 18px; text-transform: uppercase; color: var(--navy); font-weight: 800; letter-spacing: 5%;}
/*.contact-box a::after {content: '\f105'; font-family: "Font Awesome 6 Free";}*/

.flex-form { width: 100%; margin: 0 auto 2rem auto; padding: 25px; background: #fff; border-radius: 8px; box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06); font-size: 15px; }
.flex-form label { display: block; margin-bottom: 0.5rem; font-weight: 600; color: #222; letter-spacing: 0.02em; }
.flex-form input,
.flex-form select,
.flex-form textarea { width: 100%; padding: 12px 14px; margin-bottom: 1.2rem; border: 1px solid #ccc; border-radius: 5px; font-family: var(--body-font); background: #ffffff; font-size: 15px; color: #333; transition: border-color 0.2s; box-sizing: border-box; }
.flex-form input:focus,
.flex-form select:focus,
.flex-form textarea:focus { border-color: var(--primary); outline: none; }
.flex-form textarea { min-height: 100px; resize: vertical; }
.flex-form .form-row { display: flex; flex-direction: row; justify-content: flex-start; flex-wrap: wrap; gap: 1rem; }
.flex-form .form-note { font-size: 13px; color: #888; margin-bottom: 1rem; }
.flex-form .flex-row { display: flex; flex-direction: row; justify-content: flex-start; flex-wrap: wrap; gap: 1rem; }
.flex-form .form-whole { width: 100%; }
.flex-form .form-half { width: calc(50% - 0.5rem); }
.flex-form .form-third { width: calc(33.333% - 0.67rem); }

@media (max-width: 900px) {
    .form-half,
    .form-third { width: 100%; }
}
@media (max-width: 600px) {
    #formpage .flex-row {flex-direction: column; width: 100%; max-width: none;}
    #formpage .flex-row .form-half {width: 100%;}
    #formpage .flex-row .form-third {width: 100%;}
}

/*=== CONTACT PAGE
==============================*/
.subpage-hero {padding: 200px 0 100px; background-size: cover; background-position: center center;}
.subpage-hero.contact { background: linear-gradient(to right, rgba(0,0,0,1), rgba(0,0,0,0)), url("/siteart/lift-buckets-white-sky.jpg");}


/*=== MEDIA QUERIES 
==============================*/
@media screen and (max-width: 1000px) {
    .header-wrap {background: var(--black);}
    .header {position: fixed; width: 100%;}
    .header-logo {left: 0; width: clamp(0px, 50%, 250px);}
    
    .home-hero {background: linear-gradient(rgba(0,0,0,0.75)), url("../siteart/telehandler-orange-construction.jpg"); background-position: center center; background-size: cover;}
    
    .quicklinks {grid-template-columns: repeat(2, 1fr);}
    
    .hero-card-middle {display: none;}
    .hero-side {display: none;}
    .hero-grid {grid-template-columns:repeat(1, 1fr); gap: 0px; min-height: 300px;}
    
    .half-photo, .half-photo2 {flex-direction: column;}
    .half-photo-img, .half-photo-img2 {order: 1 !important; height: 300px;}
    .half-photo-img img, .half-photo-img2 img {order: 1 !important; height: 300px; width: 100%}
    .half-photo-text, .half-photo-text2 {order: 2 !important; width: 90%; margin: auto;}
    .half-photo2 iframe {clip-path: polygon(0 0, calc(100% - 50px) 0, 100% 100%, 50px 100%) !important; transform: translateX(25px);}
}

@media screen and (max-width: 500px) {
    .inventory-search form > div{flex-direction: column; width: 100%;}
    
    .quicklinks {grid-template-columns: repeat(1, 1fr);}
    .call-now {display: none;}
    
    .hero-card-main {clip-path: none;}
    
    .half-photo2 iframe {clip-path:none !important; width: 100%; transform: none;}
    .half-photo2 .half-photo-img2 {display: none;}
    
    .btn-large {flex-direction: column; gap: 20px;}
    .btn-large span {padding-top: 20px;}
    .btn-large i {align-self: flex-end;}
}





















