@charset "utf-8";
/* CSS Document */
*{-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(--blue);
	color: var(--white);
	text-shadow: none;
}

:root {
	/*=== Fonts ===*/
    --Manrope: "Manrope", sans-serif;

	/*=== Colors ===*/
	--white: #F3F3F3;
	--dk-blue: #01002D;
	--blue: #4990FE;
    --black: #1A1A1A;
    
    /*=== Font Sizes ===*/
    --p: clamp(16px, 5vw, 20px);

	/*=== Spacing ===*/
	--lg-padding: clamp(75px, 5vw, 100px);
	--sm-padding: clamp(25px, 2.5%, 2.5%);
}

    .white{color: var(--white)}
    .dk-blue{color: var(--dk-blue)}
    .blue{color: var(--blue)}
    .black{color: var(--black)}

body {
    position: relative;
	font-family: var(--Manrope), sans-serif !important;
	height: auto !important;
    background-color: var(--white);
    background-image:
        url("/siteart/logo-background.svg");
}

.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;
}
strong, b {
	font-family: var(--Manrope);
    font-weight: 800;
}
p {
    font-size: clamp(16px, 5vw, 18px);
}
/*
.bold {
	font-family: var(--Manrope);
    font-weight: 900;
}
*/

.thick {
	font-family: var(--Manrope);
    font-weight: 900 !important;
}

.nocap {text-transform: none !important;}
.center {text-align: center;}

.xl-heading, .lg-heading, .md-heading, .sm-heading {
	font-family: var(--Manrope);
	text-transform: uppercase;
}

.xl-heading-bold {
	font-family: var(--Manrope);
	text-transform: uppercase;
    font-weight: 900 !important;
}


.xs-heading {
	font-family: var(--Manrope);
    font-weight: 900;
	text-transform: uppercase;
	padding-top: 5px;
}
.xl-heading {font-size: clamp(56px, 5vw, 64px);line-height: clamp(56px, 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%; margin: auto; max-width: 1600px;}

/*=== BODY STYLES 
============================================*/
/*=== BUTTON STYLES 
==============================*/
.btn-clear {display: flex; flex-direction: row; justify-content: flex-start; padding: 10px; align-items: center; border-radius: 100%; color: var(--blue); max-width: 200px; width: inherit; gap: 10px;}
.btn-clear:hover {color: var(--white);}

.btn-blue {display: flex; flex-direction: row; justify-content: center; padding: 10px; align-items: center; border: 1px solid var(--white); border-radius: 100px; background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0)), var(--blue); color: var(--white); max-width: 200px; width: inherit; gap: 10px; align-self: center;}
.btn-blue:hover {color: var(--black); background: var(--white); border: 1px solid var(--blue);}

.btn-white {display: flex; flex-direction: row; justify-content: center; padding: 10px; align-items: center; border: 1px solid var(--blue); border-radius: 100px; background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0)), var(--white); color: var(--blue); max-width: 200px; width: inherit; gap: 10px;}
.btn-white:hover {color: var(--white); background: var(--blue);}

.btn-white-transp {display: flex; flex-direction: row; justify-content: center; padding: 10px; align-items: center; border: 1px solid var(--white); border-radius: 100px; background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0)); color: var(--white); max-width: 200px; width: inherit; gap: 10px;}
.btn-white-transp:hover {color: var(--white); background: var(--blue); border-color: var(--blue);}

/*=== HEADER STYLES 
==============================*/
.top-runner {background-color: var(--black); color: var(--white);}
.top-runner a:hover {color: var(--blue);}
.top-runner > div {width: 90%; margin: auto;  display: flex; flex-direction: row; justify-content: space-between; align-items: center; height: 100%; min-height: 30px;}
.top-runner > div > div {display: flex; gap: 20px;}

.header-wrap {background: linear-gradient(to right,var(--white) 0%, var(--white) 52%, var(--blue) 74%, var(--dk-blue) 100%); border-bottom: 1px solid var(--blue);}

.header-logo img {max-height: 75px;}
.primary.nav {display: flex; flex-direction: row; justify-content: space-between; align-items: center; z-index: 99;}
ul.nav-links {border: 1px solid var(--blue); border-radius: 100px; backdrop-filter: blur(10px); background-color: rgba(255,255,255,0.5);}
ul.nav-links ul li a > i {display: none;}
ul.nav-links ul li a:hover > i {display: block !important;}

#menu-button {display: flex; flex-direction: row; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--blue); padding: 10px 5% !important;}

@media screen and (max-width: 1000px) {
    .primary.nav {display: none !important;}
}

/*=== HOME PAGE 
==============================*/
.home-hero {background: linear-gradient(to right, rgba(1, 0, 45, 0.5) 0%, rgba(73, 144, 254, 0.5) 100%), url("../siteart/scenic-background.jpg"); background-repeat: no-repeat; background-size: cover; background-position: center center; position: relative; overflow: hidden; z-index: 0; padding: 0 0 100px 0;}
.hero-text {max-width: 750px; padding: 100px 0 50px 0;}
.hero-text h1 {font-size: clamp(50px, 10vw, 128px); line-height: clamp(40px, 8vw, 100px);}
.hero-cutout {position: absolute; right: calc(-300px + 20vw); bottom: 100px;}
.hero-cutout img {width: 50vw;}

.brand-quicklinks {display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: stretch; max-width: 750px; gap: 20px}
.brand-ql { height: auto; padding: 20px; border: 1px solid var(--white); border-radius: 10px;}
.brand-ql:hover {transform: translateY(-5px);}
.brand-ql:nth-child(1):hover {background-color: #D8221E;}
.brand-ql:nth-child(2):hover {background-color: #F9A24A;}
.brand-ql:nth-child(3):hover {background-color: #b62d37;}

.blue-banner {background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0)), linear-gradient(var(--blue), var(--blue));}
.banner-text {padding: 50px 0;}
.banner-text p {max-width: 300px;}
.service-banner-text {padding: 50px 0;}
.service-banner-text p {max-width: 500px;}
.banner-fb {display: flex; flex-direction: row; justify-content: space-between; align-items: stretch; flex-wrap: wrap;}
.banner-fb img {object-fit: cover; object-position: bottom center; overflow: visible; padding: 0 5% 0 0; max-height: 200px; align-self: flex-end;}
.banner-fb .btn-blue {margin-bottom: 30px;}

.ql-grid {display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; gap: 20px; padding: 50px 0;}
.ql-box {display: flex; flex-direction: column; gap: 10px; padding: 50px 20px 20px 20px; border-radius: 10px; box-shadow: 0 4px 10px 5px rgba(0,0,0,0.25); justify-content: flex-end; border: 2px solid transparent;}
.ql-box:hover {transform: translateY(-5px); border: 2px solid var(--blue);}
.ql-box:nth-child(1) {background: linear-gradient(rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%), url("../siteart/hyrax-Non-marking-tracks.jpg"); background-position: center center; background-size: cover; }
.ql-box:nth-child(2) {background: linear-gradient(rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%), url("../siteart/titan-wheel-closeup.jpg"); background-position: center center; background-size: cover;}
.ql-box:nth-child(3) {background: linear-gradient(rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%), url("../siteart/scraper-closeup-2.jpg"); background-position: center center; background-size: cover;}
.ql-box:nth-child(4) {background: linear-gradient(rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%), url("../siteart/silage-blade-closeup.jpg"); background-position: center center; background-size: cover;}

.blue-gutters {display: flex; flex-direction: row; justify-content: space-between; align-items: stretch; gap: 2.5%; padding: 100px 0;}
.blue5 {width: 5%; height: auto; background-color: var(--blue); align-self: stretch;}
.gutter-text {text-align: left; max-width: 33%;}
.blue-gutters img {max-height: 400px; object-fit: cover; object-position: center center; width: 100%; height: 400px; border-radius: 20px;}

#half-photos {display: flex; flex-direction: column; gap: 50px; margin-bottom: 100px;}
.photo-row {display: flex; flex-direction: row; justify-content: flex-start; align-items: center; gap: 2.5%;}
.photo-row.photo-left {margin: 0 8.5% 0 1.5%;}
.photo-row.photo-right {margin: 0 2.5% 0 5%;}
.photo-row.photo-90 {width: 90%; margin: auto; max-width: 1600px;}
.photo-row > img {width: 50%;}
.photo-row-text {width: 50%;}
/*.photo-row-text p {max-width: 500px;}*/
.photo-row > iframe {border-radius: 20px; border: 3px solid var(--blue);}

.mountain-topper {width: clamp(100px, 15vw, 500px); margin: auto auto -10px auto;}
#option-columns-section {background: linear-gradient(to top,var(--blue) 0%, var(--blue) 15%, var(--dk-blue) 15%, var(--blue) 100%); height: 100%; width: 100%;}
.option-columns-fb {padding: 100px 0; display: flex; flex-direction: row; gap: 5%;}
.option-column { border-radius: 20px; color: var(--white); padding: 50px 20px; width: 33%; display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 100px; line-height: 32px; background-position: center center !important; background-repeat: no-repeat !important; background-size: cover !important;}
.option-column:nth-child(1) {background: linear-gradient(rgba(1, 0, 45, 0.8),rgba(1, 0, 45, 0.8)), url("../siteart/man-on-hyrax-lift.jpg");}
.option-column:nth-child(2) {background: linear-gradient(rgba(1, 0, 45, 0.8),rgba(1, 0, 45, 0.8)), url("../siteart/man-on-hyrax-lift-green.jpg");}
.option-column:nth-child(3) {background: linear-gradient(rgba(1, 0, 45, 0.8),rgba(1, 0, 45, 0.8)), url("../siteart/rief-side-dumper.jpg");}
.option-ql a:hover {color: var(--blue);}

/*=== FOOTER STYLES 
==============================*/
.footer-wrap {display: flex; flex-direction: row; justify-content: space-between; align-items: center; padding: 50px 0;line-height: 32px; border-top: 1px solid var(--blue);}
.footer-wrap > div {display: flex; flex-direction: row; justify-content: space-between; align-items: center; width: 100%;}
.footer-wrap > div > ul, .footer-wrap > div > div {width: 50%;}
.footer-wrap i {font-size: 25px;}
.footer-wrap a:not(.btn-white):hover {color: var(--blue);}
.footer-logo {padding: 0 50px 0 0;}

/*=== ABOUT PAGE 
==============================*/
.subpage-hero {background-repeat: no-repeat !important; background-size: cover !important; background-position: center center !important;}
.subpage-hero > div {display: flex; align-items: flex-end; padding: 0 0 50px 0; min-height: 35vh; max-height: 1000px; height: 100%;}

#about-hero {background: linear-gradient(to right, rgba(1, 0, 45, 0.9) 0%, rgba(73, 144, 254, 0.9) 100%), url("../siteart/v-blade-scraper-closeup-2.jpg");}

#map-callout iframe {max-height: 400px;}

/*=== CONTACT PAGE 
==============================*/
#contact-hero {background: linear-gradient(to right, rgba(1, 0, 45, 0.9) 0%, rgba(73, 144, 254, 0.9) 100%), url("../siteart/man-on-hyrax-lift-green.jpg"); background-position: 0% 75% !important;}

#contact-form {display: flex; flex-direction: column; gap: 10px; font-size: var(--p); max-width: 100%; padding: 100px 0;}
#contact-form label {display: none;}
#contact-form input {padding: 20px; width: 100%; border-radius: 20px;}
#contact-form .input-row {display: flex; flex-direction: row; gap: 10px;}
#contact-form .dualFields {width: 50%;}
#contact-form textarea {width: 100%; height: 200px; border: none; font-family: var(--Manrope); padding: 20px; font-size: var(--p); border-radius: 20px;}
#contact-form button.submit {border-radius: 100px;}
#contact-form button.submit:hover {cursor: pointer ;}
#contact-form #submit-btn > button {padding: 20px; font-size: var(--p);}
#contact-form .captcha-button > button {padding: 20px; font-size: var(--p);}

/*control the Captcha */
.CaptchaPanel {margin:0 0 0 0 !important;padding:0 0 0 0 !important;text-align: center;line-height:normal !important;}
.CaptchaImagePanel {margin:0 0 0 0;padding:0 0 0 0;}
.CaptchaMessagePanel {padding:0 0 0 0 !important;margin:0 0 0 0 !important;font-weight:normal !important;font-size:12px;line-height:14px;}
.CaptchaAnswerPanel {margin:0 auto;padding:2px 0px 2px 0px !important; max-width: 300px;}
.CaptchaWhatsThisPanel {line-height:2;text-decoration: underline !important;margin:0 0 0 0;padding:8px 0 8px 0 !important;}
.CaptchaWhatsThisPanel a {color:#000;}
.CaptchaWhatsThisPanel a:hover {text-decoration:none;}

@media screen and (max-width: 700px) {
    #contact-form .input-row {flex-direction: column; width: 100%;}
    #contact-form .dualFields {width: 100%;}
}

/*=== HYRAX PAGE 
==============================*/
.brand-subpage-hero {background-repeat: no-repeat !important; background-size: cover !important; background-position: center center !important;}
.brand-subpage-hero > div {display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; gap: 50px; padding:50px 0; min-height: 20vh; max-height: 1000px; height: 100%;}
.brand-logo-header img {max-width: 300px;}

#brand-video {position: relative; }
#brand-video > a {position: absolute; bottom: 120px; left: 20px;}
#brand-video video {width: 100%; border-radius: 20px; margin-bottom: 100px;}
#brand-video iframe {height: 100%; min-height: 500px; width: 100%; margin-bottom: 100px;}

#hyrax-hero {background: linear-gradient(to right, rgba(216, 34, 30, 0.9) 0%, rgba(1, 0, 45, 0.9) 100%), url("../siteart/man-on-hyrax-light.jpg"); background-position: 0% 50% !important;}



/*=== TITAN PAGE 
==============================*/
#titan-hero {background: linear-gradient(to right, rgba(249, 162, 74, 0.9) 0%, rgba(1, 0, 45, 0.9) 100%), url("../siteart/titan-wheel-closeup.jpg"); background-position: 0% 75% !important;}


/*=== RIEF PAGE 
==============================*/
#rief-hero {background: linear-gradient(to right, rgba(182, 45, 55, 0.9) 0%, rgba(1, 0, 45, 0.9) 100%), url("../siteart/man-on-hyrax-lift-green.jpg"); background-position: 0% 75% !important;}





@media screen and (max-width: 1200px) {
    .footer-wrap {flex-direction: column;}
}

@media screen and (max-width: 1000px) {
    .brand-quicklinks {grid-template-columns: 1fr; gap: 20px;}
    .brand-ql img {max-height: 50px;}
    .hero-cutout {right: 0;}
    
    .banner-fb img {display: none;}
    
    .ql-grid {grid-template-columns: 1fr 1fr;}
    
    .gutter-text {width: 100%; max-width: none;}
    .blue-gutters img {width: 50%; max-width: none;}
    
    .photo-row.photo-90 {flex-direction: column-reverse; gap: 50px;}
    .photo-row.photo-90 .photo-row-text {width: 100%;}
    .photo-row.photo-90 iframe {height: 300px;}
    .photo-row.photo-90 img {width: 100%;}
    
    .option-columns-fb {flex-wrap: wrap; justify-content: center; gap: 50px;}
    .option-column {width: 45%;}
}
@media screen and (max-width: 680px) {
    .hero-cutout {display: none;}
    
    .ql-grid {grid-template-columns: 1fr;}
    
    .blue-gutters {flex-direction: column; width: 90%; margin: auto;}
    .gutter-text {padding-bottom: 50px;}
    .blue-gutters img {width: 100%;}
    
    .photo-row {flex-direction: column; gap: 50px;}
    .photo-row.photo-left {margin: 0 5% 0 5%;}
    .photo-row-text {width: 100%; order: 2;}
    .photo-row > img {width: 100%; max-width: 100%; order: 1;}
    
    .option-column {width: 100%;}
    
    .footer-wrap {gap: 50px; align-items: flex-start;}
    .footer-wrap > div {flex-direction: column; gap: 50px; align-items: flex-start;}
    .footer-wrap > div > ul, .footer-wrap > div > div {width: 100%;}
}








