﻿@charset "UTF-8";


/* RESET 
------------------------------------------------*/
* {margin:0; padding: 0; border: 0; outline: 0; background: transparent;}
	

/* GLOBAL SITE FRAMEWORK
------------------------------------------------*/
body {/*margin:0; line-height:12px;*/ font-size:100%; font-family:"libre-franklin", sans-serif !important; background:#fff;}


/* SELECTION */	
::selection {color:#fff; background:#ed1c24;}
::-moz-selection {color:#fff; background:#ed1c24;}


/* CLEAR */
.clear {clear: both;}

/* HEADERS */
/*Remove or simplify font-weight and font-height */
h1, h2, h3, h4 ,h5 ,h6 {line-height: normal;}
h1 {font-weight:600; color:#323232;}
h2 {font-weight:600; color:#323232;}
h3 {font-weight:400; color:#323232;}
h4 {font-weight:normal;}
h5 {font-size:16px; font-weight:normal;}
h6 {font-size:14px; font-weight:normal;}


/* PARAGRAPH/LIST/GENERAL TEXT */

/* LINKS */
a{-webkit-transition:.5s ease-in; -moz-transition:.5s ease-in; -o-transition:.5s ease-in; transition:.5s ease-in;}
a:link, a:visited {color:inherit; text-decoration:none;}
a:hover, a:active {color:inherit; text-decoration:none;}

a[href^="tel:"] {color:inherit;  text-decoration: none;}

/* IMAGES */
img {display:block;}

/* TEXT EMPHASIS */
em {font-style: italic;}
strong {font-weight:700;}







/* TEXT STYLINGS */
.dark {color:#131313;}
.gray {color:#4F4F4F;}
.red {color:#ed1c24;}
.heavy {font-weight: 800;}

/* ALIGNMENT */
.left {float:left;}
.right {float:right;}
.center {text-align:center;}




/* GENERAL BUTTON - BLACK
------------------------------------------------*/	
a.btn-general,
button.btn-general {	
	box-sizing:border-box; width:200px; padding:1em 1em .9em 1em; font-size:1.2em; line-height:1; color:#fff; border:0; background:#1b1b1b;
	cursor:pointer; font-weight: 300;
	-webkit-transition:.65s ease-in; -moz-transition:.65s ease-in; -o-transition:.65s ease-in; transition:.65s ease-in;
}

a.btn-general:hover,
button.btn-general:hover {background:#555;}


/* GENERAL BUTTON - RED
------------------------------------------------*/	
a.btn-red,
button.btn-red {	
	box-sizing:border-box; width:200px; padding:1em 1em .9em 1em; font-size:1.2em; line-height:1;  color:#fff; border:0; background:#ed1c24;
	cursor:pointer; font-weight: 300;
	-webkit-transition:.65s ease-in; -moz-transition:.65s ease-in; -o-transition:.65s ease-in; transition:.65s ease-in;
}

a.btn-red:hover,
button.btn-red:hover {filter:grayscale(0.70);}


/* GENERAL BUTTON - ORANGE
------------------------------------------------*/	
a.btn-orange,
button.btn-orange {	
	box-sizing:border-box; width:200px; padding:1em 1em .9em 1em; font-size:1.2em; line-height:1; color:#1f1f20; border:0; background:#f59426;
	cursor:pointer; font-weight: 500;
	-webkit-transition:.65s ease-in; -moz-transition:.65s ease-in; -o-transition:.65s ease-in; transition:.65s ease-in;
}

a.btn-orange:hover,
button.btn-orange:hover {filter:grayscale(0.70);}




/* HEADER
------------------------------------------------*/	
.site-header {padding:0 0 .5em 0; background:#1b1b1b;}	
	


.header-contact {display:flex; flex-flow:row wrap; align-items:center; justify-content:flex-end; padding:1em 5.5% 1em 0;}

.location-contact {display:flex; flex-flow:row wrap; align-items:center; margin:0 3.5% 0 0;}
.location-contact:last-of-type {margin:0;}
.location-contact span {font-size:1.525em;  text-transform:uppercase; font-weight: 200;}
.location-contact a {position:relative; box-sizing:content-box; display:inline-block; width:35px; height:35px; margin:0 0 0 .25em; color:#333; background:#d8d5db; }
.location-contact a i {position:absolute; top:50%; left:50%; transform: translate(-50%, -50%);}
.location-contact a img {position:absolute; top:50%; left:50%; transform: translate(-50%, -55%);}

.location-contact-mobile {/*display:none;*/}

/*a.location-icon {color:#fff; background:#414042;}
a.phone-icon {color:#fff; background:#020202;}
a.email-icon {color:#434343; background:#d8d5db;}

a.social-icon {color:#fff; background:#1b1b1b;} */




/* LOGO
------------------------------------------------*/	
.logo {position:absolute; z-index:10; top:1.95em; left:5%;}	
.logo img {width:100%; max-width:235px;}


/*  NAVIGATION
------------------------------------------------*/
#menu-button{display:none;}
nav.mobile {display:none;}

nav.primary {position:relative; z-index:9; display:flex; flex-flow:row wrap; align-items:center; justify-content:flex-end; margin:0 5.5% 0 0; padding:0;}

nav.primary ul {display:flex; flex-flow:row wrap; align-items:center; justify-content:flex-end; margin:0; padding:0;}
nav.primary ul li {margin:0; padding:0; list-style-type:none;}
				
nav.primary ul li a {
	display:block; margin:0 5px; padding:12px 10px;
    font-size:1.35em; line-height:1; text-align:center; text-decoration:none; text-transform:uppercase; color:#f3f3f3; font-weight: 600; 
	-webkit-transition:.5s ease-in; -moz-transition:.5s ease-in; -o-transition:.5s ease-in; transition:.5s ease-in;	
}	
nav.primary ul li a.drop-icon {position:relative;}
nav.primary ul li a.drop-icon::after {
	content:'\f0d7'; position:absolute; right:-.215em; top:2.15em;  margin:0 0 0 0; font-size:.35em; color:#fff; font-family: FontAwesome;
	-webkit-transition:.5s ease-in; -moz-transition:.5s ease-in; -o-transition:.5s ease-in; transition:.5s ease-in;	
}
nav.primary ul li a:hover {color:#ed1c24;}
nav.primary ul li a:hover.drop-icon::after { color:#ed1c24;}


/*  SUB NAV
------------------------------------------------*/
nav.primary ul li li {width: 225px;}
nav.primary ul li li a:link, nav.primary ul li li a:visited{
	width: 225px; padding:15px 0; font-size:.94em; line-height:18px; text-indent:20px; text-align:left; color:#fff; border:0; background: #181818;
}

nav.primary ul li li a:hover,nav.primary ul li li a:active {line-height:18px; color:#fff; background:#ed1c24;}

/*  NAV DROPDOWNS
------------------------------------------------*/
nav.primary ul ul {display: none; position: absolute;} 
nav.primary ul ul ul {position: absolute; left: 100%; top:0;}
nav.primary ul li:hover > ul {display: block; line-height:18px; z-index: 500;}
nav.primary ul ul li {float: none; position: relative; margin:0;}


/*  HEADER HIDDEN SEARCH
------------------------------------------------*/
#search-button{display:none;}
.search-button {margin:0 0 0 10px; font-size:1.25em; color:#fff; cursor: pointer;}
.search-button a:hover {color:#ed1c24;} 


.hidden-search{display:none; background: #333; padding:20px 0; box-shadow: inset 0px -14px 80px -19px rgba(0,0,0,1);}
.hidden-search .search-wrap {max-width:100%; margin: 0 6.5%;}
.hidden-search form{display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; font-size: 15px;}
.hidden-search input[type="text"] {
	display: block; box-sizing:border-box;  width: calc(90% - 130px) !important; height:49px !important; margin: 5px; padding: 15px !important; line-height:inherit !important; border:0 !important; border-radius:0 !important;background:#fff !important;
}
.hidden-search input[type="submit"]{
	width:100px !important; padding:18px 15px 16px 15px; text-align: center; color: #fff; border:0; background: #ed1c24; transition: all .2s ease-in-out;
	font-weight: 700
}
.hidden-search input[type="submit"]:hover{color:#fff; background:#474747;}


/*  HERO
------------------------------------------------*/
.hero {position:relative; z-index: 1; margin:0 0 -7.5% 0; 
	-webkit-clip-path: polygon(100% 0%, 100% 98%, 50% 100%, 0% 98%, 0% 0%);
    		clip-path: polygon(100% 0%, 100% 98%, 50% 100%, 0% 98%, 0% 0%);
}
.hero img {width:100%;}

.hero-overlay {position:absolute; bottom:35%; z-index:10; display:flex; flex-flow:row wrap; align-items:center; width:100%; color:#fff;}

.hero-brand {width:25%; background:#414042;}
.hero-brand img {box-sizing:border-box; width:100%; max-width:304px; margin:0 0 0 auto; padding:1.5em .85em 1.5em 0;}

.hero-title {width:71.5%; margin:-.2em 0 0 2.5%; font-size:3.65vw; line-height:1; text-transform:uppercase; font-weight: 700; }
.hero-title span {font-size:.65em;}

.hero-gradient {position:absolute; width:100%; height:100%; background:rgb(0,0,0); background: linear-gradient(0deg, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0) 63%);}


/*  HERO SECTION
------------------------------------------------*/
.hero-categories {display:flex; flex-flow:row wrap; align-items:center; justify-content:center;}

.highlight-cat {
	position:relative; z-index:5; box-sizing:border-box;
	width:100%; max-width:22%; margin:0 1em 0 0; padding:20px 2em; text-align:center; border-bottom:1em #f1f1f1 solid; background:#f8f8f8; 
}
.highlight-cat:last-of-type {margin:0;}

.cat-icon {margin:-165px auto 1em auto; -webkit-transition:.5s ease-in; -moz-transition:.5s ease-in; -o-transition:.5s ease-in; transition:.5s ease-in;}
.cat-icon img{width:100%; max-width:329px;}

.highlight-cat:hover .cat-icon {margin:-185px auto 1em auto;}	

.cat-brand {margin:2em 0; -webkit-transition:.5s ease-in; -moz-transition:.5s ease-in; -o-transition:.5s ease-in; transition:.5s ease-in;}
.cat-brand img {width:100%; max-width:211px;}

.cat-title {position:relative; font-size:1.65em; text-transform:uppercase; text-align: left; color:#4b4b4b; font-weight: 700;}
.cat-title::before {content:''; position:absolute; left:0; top:-.35em; width:70px; height:5px; margin:auto; background:#ea1c24;}


/*  HOME SECTION
------------------------------------------------*/
.home-section {background:url("/siteart/diamond-background-pattern.jpg") no-repeat center center;  background-size:cover;}


/*  HOME INTRO
------------------------------------------------*/
.home-intro {display:flex; flex-flow:row wrap; align-items:center; justify-content:space-between; padding:5% 0;}

.home-intro-body {width:calc(88% - 785px); /*max-width:43%;*/ margin:0 4% 0 8%;}
.home-intro-body h1 {margin:0 0 .5em 0; font-size:2.5em; text-transform:uppercase;}
.home-intro-body h3 {margin:0 0 .35em 0;position:relative; font-size:1.5em;}
.home-intro-body h3::before {content:''; position:absolute; left:-.15em; top:-.75em; width:134px; height:5px; margin:auto; background:#ea1c24;}
.home-intro-body p {font-size:1.3125em; line-height:1.35; color:#4b4b4b; font-weight:300;}
.home-intro-body button {margin:1em 0 0 0;}

.home-intro-promo {width:785px; height:580px; background:url('/siteart/takeuchi-tb2150-promo.jpg') no-repeat center; background-size:cover;}


/*  SUPPORT BANNER
------------------------------------------------*/
.support-banner {display:flex; flex-flow:row wrap;justify-content:space-between; background:#323232;}

.support-banner-image {
	position:relative; z-index:1; width:600px; height:auto; background:url("/siteart/takeuchi-service.jpg") no-repeat center; background-size:cover;
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 90% 100%, 0% 100%);
    		clip-path: polygon(0% 0%, 100% 0%, 90% 100%, 0% 100%);
}

.support-banner-body {width:calc(90% - 600px); margin:0 5% 0 0; padding:3.5% 0; color:#fff;}
.support-banner-body .support-title {margin:0 0 .5em 0; font-size:2.15em; text-transform:uppercase; font-weight:700;;}
.support-banner-body .support-subtitle {margin:0 0 .55em 0; font-size:1.375em; font-style:italic; font-weight:500;}
.support-banner-body p {font-size:1.3125em; line-height:1.45; font-weight:200;}
.support-banner-body button {margin:1em 0 0 0;}


/*  BRANDS SECTION
------------------------------------------------*/
.brands-section{display:flex; flex-flow:row wrap;justify-content:space-around; width:92.5%; max-width:1570px; margin:0 auto; padding:3.5% 0 5% 0;}
.brands-section img {margin: 1em 0.5em;}
.brands-title {position:relative; width:100%; margin:0 0 2em 0; font-size:2.15em; text-transform:uppercase; color:#323232; font-weight:700; }
.brands-title::before {content:''; position:absolute; left:-.15em; top:-.75em; width:134px; height:5px; margin:auto; background:#ea1c24;}


/*  INVENTORY CATEGORIES SECTION
------------------------------------------------*/
.inventory-categories {display:flex; flex-flow:row wrap;justify-content: space-between;}
.category-block {
	flex:1; height:300px; text-align:center; color:#fff; border-right:6px #fff solid; 
	background-color: #373737; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%232f2f2f' fill-opacity='0.4' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");
}
.category-block:first-of-type {background-color: #1c1c1c; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%23242424' fill-opacity='0.4' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");}
.category-block:last-of-type {border:none;}
.category-block.takeuchi-red {background-color: #ed1c24; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%23c7171d' fill-opacity='0.4' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");}

.category-block a {display:flex; flex-flow:column wrap;justify-content:center; width:100%; height:100%;}
.cat-block-title {font-size:3.75em; text-transform:uppercase; font-weight:500;}
.cat-block-subtitle {font-size:1.1em;text-transform:uppercase; font-weight:500;}


/*  COMPANY BLURB
------------------------------------------------*/
.company-blurb {display:flex; flex-flow:row wrap; align-items:center; justify-content:space-between; padding:5% 8.5%;}

.company-blurb-image {width:100%; max-width:45%; margin:0 3% 0 0;}
.company-blurb-image img {width:100%; max-width:658px; margin:0 auto;}

.company-blurb-body {width:100%; max-width:50%;}
.company-blurb-body h2 {position:relative; margin:0 0 .5em 0; font-size:2.35em; text-transform:uppercase;}
.company-blurb-body h2::before {content:''; position:absolute; left:-.15em; top:-.75em; width:134px; height:5px; margin:auto; background:#ea1c24;}
.company-blurb-body p {font-size:1.3125em; line-height:1.35; color:#4b4b4b; font-weight:200;}
.company-blurb-body button {margin:1.25em 0 0 0;}


/*  SUB PAGE HEADING
------------------------------------------------*/
.sub-page-heading {padding:7.5em 7.5% 2em 7.5%; color:#fff; border-top:1px #272727 solid; background:url("/siteart/page-heading-texture.jpg") no-repeat left center; background-size:cover;}
.sub-page-heading .sub-page-title {position:relative;margin:0 0 .25em 0; font-size:2.15em; text-transform:uppercase; font-weight:600;}
.sub-page-heading .sub-page-title::before {content:''; position:absolute; left:.15em; top:-.5em; width:88px; height:5px; margin:auto; background:#ea1c24;}
.sub-page-heading .sub-page-body{font-size:1.3125em; line-height:1.45; font-weight: 300; font-style:italic ;}


/*  MAIN
------------------------------------------------*/	
.main {margin:4em 0 3em 0; padding:0 7.5% 0 6.8%;}
.inv-main {padding:0 7.5% 0 6.8%;}


/*  SERVICE MAIN
------------------------------------------------*/	
.service-main {display:flex; flex-flow:row wrap; align-items:center; justify-content:space-between; margin:4em 0 0 0; padding:0;}
.service-main article {width:40%; margin:0; padding:5%;}
.service-main article h1 {font-size:2.35em;}
.service-main article h3 {position:relative; margin:0 0 .5em 0; font-size:2.05em; text-transform:uppercase;}
.service-main article h3::before {content:''; position:absolute; left:-.15em; top:-.75em; width:134px; height:5px; margin:auto; background:#ea1c24;}







/*  ARTICLE
------------------------------------------------*/
article {}
article h1 {margin:0 0 .5em 0; font-size:2.35em;}
article p {font-size:1.3125em; line-height:1.35;}
article.full-article {width:100%; margin:1% 0 2% 0; padding:0 7.5% 0 6.8%;}



.main-link-group {display:flex; flex-flow:row wrap; align-items:center; justify-content:flex-start; width:100%;}
.main-link-group button {margin:0 .5em 0 0;}


/*   SIDE IMAGES
------------------------------------------------*/
.side-image {overflow:hidden; width:50%; height:620px;}
.side-image img {width:100%;}

.side-image.field-tech {background:url("/siteart/service/field-tech-repair.jpg") no-repeat center; background-size:cover;}
.side-image.safety-training {background:url("/siteart/service/safety-training.jpg") no-repeat right center; background-size:cover;}
.side-image.logisitics {background:url("/siteart/service/logistics-hauling.jpg") no-repeat right center; background-size:cover;}






.main-side-body {display:flex; flex-flow:row wrap; align-items:flex-start; justify-content: space-between;}


.side-nav {width:285px;}
.side-nav h3 {margin:0 0 .5em 0; font-size:1.85em; text-transform:uppercase; color:#ed1c24; font-weight:800;}
.side-nav ul {display:block;}
.side-nav ul li{list-style:none; border-top:1px #f1f1f1 solid;}
.side-nav ul li:last-of-type {border-bottom:1px #f1f1f1 solid;}

.side-nav ul li a {display:block; padding:.85em .35em .65em .35em; font-size:1.2em; text-transform:uppercase; }
.side-nav ul li a:hover {background:#f3f3f3; }


.side-nav ul ul.link-group-1,.side-nav ul ul.link-group-2, .side-nav ul ul.link-group-3, .side-nav ul ul.link-group-4{display:none;}
.side-nav ul.link-list li a.link-button-1, .side-nav ul.link-list li a.link-button-2, .side-nav ul.link-list li a.link-button-3, .side-nav ul.link-list li a.link-button-4 {cursor:pointer;}

.side-nav ul ul li a {
	display:block; position:relative; padding:.85em .5em .65em 1em; font-size:1.05em; text-transform:capitalize; background:#f5f5f5;
	-webkit-transition:.35s ease; -moz-transition:.35s ease; -o-transition:.35s ease; transition:.35s ease;	
}
.side-nav ul ul li a::before{-webkit-transition:.5s ease-in; -moz-transition:.5s ease-in; -o-transition:.5s ease-in; transition:.5s ease-in;	}
.side-nav ul ul li a:hover {padding:.85em .5em .65em 1.2em; background:#E4E4E4; }
.side-nav ul ul li a:hover::before {
	content:'\f054'; position:absolute; left:.415em; top:2.15em;  margin:0 0 0 0; font-size:.5em; color:#333; font-family: FontAwesome;
}
.side-nav ul ul li:last-of-type a {color:#fff; background:#ed1c24;} 
.side-nav ul ul li:last-of-type a:hover::before {color:#fff;}




.main-body {width:calc(96.5% - 285px); display:flex; flex-flow:row wrap; justify-content: space-between;}

.main-body h1 {width:100%; margin:0 0 .65em 0; font-weight:600;}
.main-body h4 {font-size:1.125em; color:#9A9A9A; font-weight:600; font-style:italic;}
.main-body p {font-size:1.2125em; line-height:1.35;}


.main-body-intro {width:48.5%; height:420px;}
.main-body-intro img {height:100%; margin:auto; padding:.5em;}

.dealer-corona {background:url("/siteart/locations/corona-store.jpg") no-repeat center; background-size:cover;}
.dealer-santa-fe {background:url("/siteart/locations/santa-fe-springs-store.jpg") no-repeat center; background-size:cover;}
.dealer-sun-valley {background:url("/siteart/locations/sun-valley-store.jpg") no-repeat center; background-size:cover;}

.dealer-temecula {background:url("/siteart/locations/store-placeholder.jpg") no-repeat center; background-size:cover;}
.dealer-escondido {background:url("/siteart/locations/store-placeholder.jpg") no-repeat center; background-size:cover;}
.dealer-vista {background:url("/siteart/locations/store-placeholder.jpg") no-repeat center; background-size:cover;}
.showroom-takeuchi {background:url("/siteart/takeuchi-machines-excavators-skid-steer-wheel-loader.png") no-repeat center; background-size:cover;}


.main-body-main {display:flex; flex-flow:row wrap; justify-content: space-between; width:48.5%;}
.main-body-contact {width:250px;}
.main-body-text {width:calc(100% - 250px);}



.main-body-full{width:100%;}



/*  LOCATION LANDING HIGHLIGHT / QUICK DETAILS
------------------------------------------------*/
.location-highlight {display:flex; flex-flow:row wrap; justify-content:space-between; width:calc(100% - 4em); margin:2em 1em 1em 1em; padding:1em; border: 1px #272727 solid;}
.location-highlight .loc-contact {width:300px;}

.location-highlight .loc-map{width:calc(100% - 300px); height:100%;}
.location-highlight .loc-map iframe{width:100%; height:100%;}


/*  FINANCING SECTION
------------------------------------------------*/
.financing-section {display:flex; flex-flow:row wrap; justify-content:center; width:92.5%; max-width:1570px; margin:0 auto; padding:2em 0 5% 0;}
.financing-section a {margin:10px; padding:8.5% 10%; border:1px #272727 solid;}
.financing-section img {width:100%; max-width:300px;}


/*  RED BANNER
------------------------------------------------*/
.red-banner {padding:5%; text-align:center; color:#fff; background: #ed1c24;}
.red-banner p {font-size:1.25em; line-height:1.4; }
.red-banner-title {font-size:1.85em; line-height:1.3; font-weight:600; font-style:italic;}


/*  FOOTER
------------------------------------------------*/
.site-footer {
	display:flex; flex-flow:row wrap; align-items:flex-start; justify-content: space-between;
	padding:3.5% 5.5% 2% 5.5%; color:#fff; background:#262527;
}
.site-footer strong {line-height:3.15; font-weight:600;}
.site-footer ul {}
.site-footer ul.dual-list {column-count:2; }
.site-footer ul li {list-style:none; line-height:1.65;}
.site-footer ul li a {font-size:.9375em; font-weight:300;}


/*  LOWER FOOTER
------------------------------------------------*/
.foot-lower {
	display:flex; flex-flow:row wrap; align-items:flex-start; justify-content: space-between;
	width:100%;  margin:5% 0 0 0;  padding:2% 0 0 0; font-size:.875em; border-top:1px #5e5e5e solid;
}

.ft-lower-copyright {line-height:1.4;}
.ft-lower-copyright span {font-size:1.072em;}
.ft-lower-copyright a {text-decoration:underline;}





/************************************************ Responsive Styles **/

@media screen and (max-width: 1625px) {
	.main-body-contact {width:100%;}
	.main-body-text {width:100%; margin:2em 0 0 0;}
}


@media screen and (max-width: 1550px) {
	.header-contact {padding: 2em 3.5% 2em 0;}
	.logo {top: 3.25em; transform:none;}	
	.logo img {width:100%; max-width:185px;}
	nav.primary {margin: 0 3.5% 0 0;}
}

@media screen and (max-width: 1500px) {
	.logo {position:absolute; z-index:10; top:2.5em; left:3%;}
	/*.logo img {max-width:200px;}*/
	.header-contact {padding:1em 3.5% 1em 0;}
	nav.primary {margin:0 3.5% 0 0;}	
	.hidden-search .search-wrap {margin: 0 3.5% 0 0;}
}

@media screen and (max-width: 1450px) {
	.cat-icon {margin:-130px auto .85em auto;}
	.cat-block-title {font-size:3em;}
	.cat-block-subtitle {font-size:.9em;}
	.service-main article p {font-size:1.1em; line-height:1.3;}
	.side-image {overflow:hidden; width:50%; height:705px;}
	.main-body-intro {width:58.5%;}
	.main-body-main {width:38.5%;}
}

@media screen and (max-width: 1400px) {
	.logo img {max-width:185px;}
	nav.primary ul li a {margin:0 2px; padding:12px 8px; font-size:1.15em;}
	nav.primary ul li a.drop-icon::after {top:2.75em;}
	.search-button {margin:0 0 0 8px;}
}

@media screen and (max-width: 1375px) {
	
	.cat-title {font-size:1.5em;}
	.home-intro {padding:8.5% 0;}
	.home-intro-body {width:calc(91% - 600px);margin:0 4% 0 5%;}
	.home-intro-promo {width:600px; height:600px;}
	.support-banner-image {width:450px;}
	.support-banner-body {width:calc(90% - 450px);}
	.brands-section{display:flex; flex-flow:row wrap;justify-content:space-around; padding:8.5% 0 5% 0;}
	.brands-section img {margin:1em .5em;}
	.brands-title {margin:0 0 .5em 0;}	
}

@media screen and (max-width: 1275px) {
	.location-contact {margin:0 1.25em 0 0;}
	.location-contact span {font-size:1.25em;}
	.cat-icon {margin:-80px auto .85em auto;}
}

@media screen and (max-width: 1200px) {
	nav.primary ul li a {margin:0;}
	.home-intro {padding:10% 10% 0 10%}
	.home-intro-body {width:90%; margin:0 5% 5% 5%;}
	.home-intro-promo {width:100%; height:650px;}
	.company-blurb {padding:10%;}
	.company-blurb-image {max-width:37%; margin:0 3% 0 0;}
	.company-blurb-body {max-width:60%;}
	.main-body-intro {width:100%; height:470px; margin:0 0 2em 0;}
	.main-body-main {width:100%;}
	.main-body-contact {width:250px;}
	.main-body-text {width:calc(100% - 250px);}
	.site-footer ul.dual-list {column-count:1;}
}

@media screen and (max-width: 1175px) {
	.header-contact {padding:1em 3.5% 1em 0;}
	.location-contact span {font-size:1.15em;}
	.logo {top:.5em}
	
	.site-header {display:flex; flex-flow:row wrap; align-items:center; justify-content:flex-end; padding:0 2.5% 0 0;}
	nav.primary{display:none;}
	#menu-button{display:block; padding:12px 0; font-size:1.25em; line-height:1; position: relative; z-index:400; font-weight:700; }
	#menu-button a{color:#fff; text-decoration: none; margin:0 6px; padding:0;}
	#search-button {display:block;}
	
	nav.mobile ul li a .fa{
		width:25px;
		font-weight:100;
		padding:8px 3px;
		margin:0 0 0 5px;
		text-align:center;
		background:#292929;
		-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
		border-radius: 30px;
		text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	}
	
	nav.mobile ul li .fa-chevron-down {position:absolute; right:10px; margin:18px 0 0 0;}

	nav.mobile {
		display:block;
		position: fixed;
		top: 0;
		right: -285px;
		width: 285px;
		height: 100%;
		z-index: 500;
		overflow:auto;
		background:#333;
	}
	
	/* MENU HEADER SOCIAL MEDIA */
	nav.mobile .social-media {
		position: absolute;
		text-decoration: none;
		vertical-align: top;
		z-index:9999;
		display: inline-block;
		
		top: 15px;
		left: 15px;
		font-size:16px;
		word-spacing:13px;
		color: #ccc !important;
	}
	
	nav.mobile .social-media a:link, nav.mobile .social-media a:visited {color:#ccc; text-decoration:none;}
	nav.mobile .social-media a:hover, nav.mobile .social-media a:active {color:#fff; text-decoration:underline;}
	
	/* MENU HEADER STYLES */
	nav.mobile h3 {	
		color: #ccc;
		padding: 23px 0;
		position: relative;
		font-size: 18px;
		background:#313131;
	}			
	nav.mobile .menu-title {position: absolute; vertical-align: top; top: 16px; right: 47px; text-transform:uppercase; font-size:12px; color: #ccc;}
		
	/* MENU CLOSE 'X' BUTTON */
	nav.mobile .menu-toggle {position: absolute; top: 8px; right: 10px; padding: 6px 9px 5px; display: inline-block; font-weight: 700; font-size: 18px; line-height: 1; color: #ccc; text-decoration: none; vertical-align: top; font-family: Arial, sans-serif;}
	nav.mobile .menu-toggle:hover {color: #fff;}
	
	/* MENU LIST STYLE */
	nav.mobile ul {list-style: none; font-weight: 300; margin:0; padding:0;}
	nav.mobile ul li {color: #999; font-size:15px; border-bottom: 1px solid #303030;}
	
	/* FIRST LEVEL */
	nav.mobile ul li a {
		color: #999;
		position: relative;
		display: block;
		font-size:15px;
		text-align:left;
		text-decoration: none;
		border-left:4px #333 solid;
		padding: 15px 35px 15px 20px;
		text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	}
	nav.mobile ul li a:hover {background:rgba(45,45,45,0.5); color: #fff; border-left:4px #C8102E solid;}
	
	/* SECOND LEVEL */
	nav.mobile ul li li:last-child {border:none;}
	nav.mobile ul li li a {color: #ccc; background: #444; border-left:4px #444 solid; padding: 15px 10px 15px 15px;}
	nav.mobile ul li li a:hover {background:rgba(65,65,65,0.5);}
	
	/* THIRD LEVEL */
	nav.mobile ul li li li:last-child {border:none;}
	nav.mobile ul li li li a {color: #ccc; background: #555; border-left:4px #555 solid;}
	nav.mobile ul li li li a:hover {background:rgba(85,85,85,0.5);}
	
	.nav-footer {color:#292929; position:relative; text-align:center; font-size:16px; line-height:16px; padding:15px 0;}
	
	.hidden-search{ padding:40px 0 10px 0; }
	.hidden-search input[type="text"] {width: calc(100% - 130px) !important;}
	.highlight-cat {max-width: 23%;}
	.cat-icon {display:none;}
	.cat-brand {margin:0 0 2em 0;}
	.cat-title {font-size:2.1vw;}
	.cat-title::before {top:-.5em;}
	.category-block {height:220px; border:none;}
	.cat-block-title {font-size:2.75em;}
	.cat-block-subtitle {font-size:.8em;}
	.location-highlight .loc-contact {width:100%; text-align:center;}
	.location-highlight .loc-map{width:100%; height:270px; margin:2em 0 0 0;}
}

@media screen and (max-width: 1024px) {
	.location-contact span {font-size:.95em;}
}

@media screen and (max-width: 1024px) {	
	.home-intro {padding:10% 8.5% 0 8.5%}
	.home-intro-body {width:90%; margin:0 5% 8.5% 5%;}
	.support-banner {background:#323232 url("/siteart/takeuchi-service-mobile.png") no-repeat center !important; background-size:cover !important;}
	.support-banner-image {display:none;}
	.support-banner-body {width:100%; margin:0; padding:8.5%;}
	.cat-block-title {font-size:2.5em;}
	.cat-block-subtitle {font-size:.7em;}
	.company-blurb {padding:15% 5% 10% 5%;}
	.company-blurb-image {order:2; max-width:100%; margin:2.5em 0 0 0;}
	.company-blurb-body {order:1; max-width:100%;}
	.main {margin:5em 0 3em 0;}
	.service-main {margin:0 0 0 0;}
	.side-image {width:100%; height:445px;}
	.service-main article {width:90%; margin:0; padding:5em 5% 3em 5%;}
	.side-image.shop-tech {order:1;}
	article.shop-tech {order:2;}
	.side-image.safety-training {order:3;}
	article.safety-training {order:4;}
	.side-image.logisitics {order:5;}
	article.logisitics {order:6;}
	.side-nav {width:280px;}
	.main-body {width: calc(96.5% - 280px);}
	.main-body h1 {font-size:1.85em;}
	.foot-links {width:100%;}
	.foot-links-one ul,
	.foot-links-two ul,
	.foot-links-three ul,
	.foot-links-four ul,
	.foot-links-five ul,
	.foot-links-six ul,
	.foot-links-seven ul{display:none;}
}

@media screen and (max-width: 950px){
	.location-contact, .location-contact span {display:none;}
	.location-contact a { width:45px; height:45px;}
	.location-contact-mobile, .social-contact {display:block;}
	.inventory-categories {display:flex; flex-flow:column wrap; justify-content:space-between;}
	.category-block a{box-sizing:border-box; padding:2.5em 1em;}
	.main-body-contact {width:100%;}
	.main-body-text {width:100%; margin:2.5em 0 0 0;}
}

@media screen and (max-width: 768px){
	.header-contact {justify-content:center; width: 100%; padding:1em 0;}
	.logo {top: 4.75em;}
	.hero-overlay {bottom: 22%;}
	.hero-brand {width:50%;}
	.hero-brand img {box-sizing:border-box; width:100%; max-width:280px; margin:0 0 0 auto; padding:1.5em .85em 1.5em 0;}
	.hero-title {width:95%; margin:0 0 0 5%; font-size:4.75vw;}
	.home-intro {padding:15% 0 0 0;}
	.home-intro-body {width:90%; margin:0 5% 8.5% 5%;}
	.home-intro-promo {width:100%; height:375px;}
	.support-banner-body {padding:12.5% 8.5% 10% 8.5%;}
	.brands-section{display:flex; flex-flow:row wrap;justify-content:space-around; padding:15% 0 8.5% 0;}
	.main-link-group {display:flex; flex-flow:column wrap; width:100%; margin:2% 0 0 0;}
	.main-link-group button {margin:0 0 .5em 0;}
	.side-nav {width:100%;}
	.side-nav h3 {position:relative; margin:0; padding:.68em 1.1em .5em .5em; font-size:1.85em; line-height:1; color:#272727; background:#ccc;}
	.side-nav h3::after {
		content:'\f0d7'; position:absolute; right:1em; top:40%;  margin:0 0 0 0; font-size:.5em; color:#272727; font-family: FontAwesome;
		-webkit-transition:.5s ease-in; -moz-transition:.5s ease-in; -o-transition:.5s ease-in; transition:.5s ease-in;	
	}
	.side-nav ul {display:none;}
	.side-nav ul li{border-top:0; border-bottom:1px #f1f1f1 solid;}
	.side-nav ul li:last-of-type {border-bottom:1px #f1f1f1 solid;}
	.main-body {width:100%; margin:3.5em 0 0 0;}
	.main-body h1 {font-size:1.65em;}
	.main-body-contact {width:250px;}
	.main-body-text {width:calc(100% - 250px); margin:0;}
}

@media screen and (max-width: 625px) {
	.header-contact {justify-content: center; margin:1.5em 0;}
	.logo {top:7em;}
	.logo img {width:100%; max-width:165px;}
	.hero {margin: 0 0 -3.5% 0;}
	.hero-categories {display:none;}
	.hero-overlay {bottom: 10%;}
	.hero-brand {width:40%;}
	.hero-brand img {width:60%; padding: 1em 0.85em 1em 0;}
}

@media screen and (max-width: 600px) {
	.main-body-contact {width:100%;}
	.main-body-text {width:100%; margin:2.5em 0 0 0;}
	.foot-lower {display:flex; flex-flow:column wrap; align-items:center; justify-content:center; margin:8.5% 0 0 0;  padding:5% 0 0 0;}
	.ft-lower-copyright {margin:0 0 .75em 0; text-align: center;}
	.ft-lower-host{text-align:center;}
}

@media screen and (max-width: 410px){
	.header-contact {justify-content: center; margin:2em 1em;}
	.social-contact {margin: 0.5em 0 0 0 !important;}
	.logo {top:10.5em;}
}