﻿/***** BEGIN RESET *****/

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, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	background: transparent;
	border: 0;
	margin: 0;
	padding: 0;	
}

ol, ul {
	list-style: none;
}

table{border-collapse:collapse; width:100%;}
td{vertical-align:top;}

/* Make HTML 5 elements display block-level for consistent styling */  
header, nav, article, footer, address {  
    display: block;  
} 

/*-------- COLORS --------

*/

/***** END RESET *****/
::-moz-selection {
    background: #000; 
    color: #fff;
    text-shadow: none;
}
::selection {
    background: #000;
    color: #fff;
    text-shadow: none;
}


/* Clearfix */
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
    *zoom: 1;
}

/*-------- BODY STYLES --------*/

body {

}

a:link, a:visited, a:active {text-decoration:none;}
a:hover {text-decoration:none;}


hr{border:#000 1px solid;}


.uppercase { text-transform: uppercase; }
.capitalize { text-transform: capitalize; }
.italic { font-style: italic; }
.black { color: #000000; }
.black-bg { background-color: #000000; }
.not-blk { color: #212121; }
.not-blk-bg { background-color: #212121; }
.white { color: #fff; }
.white-bg { background-color: #fff; }
.red { color: #D71D17; }
.red-bg { background-color: #D71D17; }
.grey { color: #D9D9D9; }
.grey-bg { background-color: #ebebeb; }

.heading1 {
    font-size: 80px;
	font-family: "inria-sans", sans-serif;
    font-weight: 700;
    font-style: normal;
    line-height: 85px;
    margin-bottom: 15px;
}
.subheading1 {
    font-size: 32px;
	font-family: "inria-sans", sans-serif;
    font-weight: 300;
    font-style: normal;
    line-height: inherit;
}
.l-heading {
    font-size: 55px;
	font-family: "inria-sans", sans-serif;
    font-weight: 700;
    font-style: normal;
    line-height: 70px;
    margin-bottom: 15px;
}
.m-heading {
    font-size: 40px;
	font-family: "inria-sans", sans-serif;
    font-weight: 700;
    font-style: normal;
    line-height: 45px;
	text-transform: uppercase;
	letter-spacing: 1px;
}
.body {
	font-size: 18px;
	font-family: "inria-sans", sans-serif;
	font-weight: 300;
	font-style: normal;
	line-height: 28px;
}
.cta-title {
	font-size: 18px;
	font-family: "inria-sans", sans-serif;
	font-weight: 700;
	font-style: normal;
	text-transform: uppercase;
}

.inria { font-family: "inria-sans", sans-serif; font-weight: 400; }
.inria-l { font-family: "inria-sans", sans-serif; font-weight: 300; }
.inria-b { font-family: "inria-sans", sans-serif; font-weight: 700; }


.wid95 { width: 95%; margin: 0 auto;}
.wid90 { width: 90%; margin: 0 auto;}
.wid85 { width: 85%; margin: 0 auto;}
.wid80 { width: 80%; margin: 0 auto;}

.padlr-norm { padding-left: max(4%, calc(50% - 1200px)); padding-right: max(4%, calc(50% - 1200px)); }
.padtb-norm { padding-top: max(4%, calc(50% - 1200px)); padding-bottom: max(4%, calc(50% - 1200px)); }
.padtb-20 { padding-top: 20px; padding-bottom: 20px; }
.padtb-40 { padding-top: 40px; padding-bottom: 40px; }
.padtb-50 { padding-top: 50px; padding-bottom: 50px; }
.padtb-80 { padding-top: 80px; padding-bottom: 80px; }
.padtb-90 { padding-top: 90px; padding-bottom: 90px; }
.padtb-100 { padding-top: 100px; padding-bottom: 100px; }

.colgap-24 { column-gap: 24px; }
.colgap-60 { column-gap: 60px; }
.colgap-lg { column-gap: min(200px, 10vw); }

.rowgap-24 { row-gap: 24px; }
.rowgap-32 { row-gap: 32px; }
.rowgap-40 { row-gap: 40px; }
.rowgap-50 { row-gap: 50px; }




.bread-crumbs {
    display: flex;
    font-size: 15px !important;
    color: #fff !important;
    padding: 3% 0 2%;
    flex-wrap: wrap;
    align-items: center;
    letter-spacing: 0.05em;
    gap: 10px;
	font-family: "inria-sans", sans-serif;
}
.bread-crumbs a {
    display: inline-block;
    padding: 12px;
    border-radius: 5px;
    border: solid 1px #cbcbcb;
    color: #fff;
    font-size: 15px !important;
	font-family: "inria-sans", sans-serif;
}

/*buttons*/
.btnclass {
	font-family: "inria-sans", sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
    font-size: 18px;
    text-transform: uppercase;
    padding: 14px 20px;
    position: relative;
    display: inline-flex;
    min-width: 50px;
    transition: .25s ease all;
    border-radius: 40px
}
.btn-red {
    color: #fff;
    background-color: #D71D17;
}
.btn-red:hover {
    background-color: #AD0C08;
}
.btn-blk {
    color: #fff;
    background-color: #323232;
}
.btn-blk:hover {
    background-color: #323232;
}


/*--- HEADER STYLES ---------------------*/
header {}


.ch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.head-contact i {
    color: #fff;
    background-color: #D71D17;
    padding: 12px;
    border-radius: 20px;
}
.head-contact a i {
    transition: .25s ease all;
}
.head-contact a i:hover {
    background-color: #AD0C08;
}
.head-phone a {
	font-family: "inria-sans", sans-serif;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	position: relative;
    align-items: center;
    min-width: 50px;
    min-height: 50px;
    transition: .25s ease all;
	border-radius: 40px;
	padding: 12px 20px;
}
.ch-head-logo img {
    width: 100%;
    padding: 15px 0;
}

/*---BODY--------------------------------*/

.hero-wrap {
    position: relative;
}
.hero-txt {
    position: absolute;
    z-index: 10;
    place-self: center;
	margin: 0 50px;
	top: 0;
    bottom: 0;
}
.cycle-slideshow img {
    height: 100%;
    filter: brightness(0.5);
	object-fit: cover;
}
.cycle-slideshow {
    display: flex;
    align-items: center;
}
.hero-wrap .slick-slider {
	overflow: hidden;
	height: 700px;
}

.home-search {
    border-radius: 10px;
	border: solid 1px #D9D9D9;
    margin-top: -100px;
    z-index: 10;
    position: relative;
}
/* HOME SEARCH */
.flex-container {
	display: flex;}
.search-bar {
	padding: 15px 0;justify-content: space-between;gap:20px;align-items: center; flex-direction: column;}
.search-col {
	width: 100%;flex: 1; color: #fff; text-transform: uppercase;}
.search-col label {
	display: block; font-family: "inria-sans", sans-serif;font-weight: 700;letter-spacing: 1px;margin-bottom: 15px; font-size: 18px;}
.search-col select, .search-col input {
	width: 100%;box-sizing: border-box;padding: 15px;font-size: 16px; border-radius: 5px;color: #000 !important; border: none;}
.example-val {
	margin-bottom: 25px; font-family: "inria-sans", sans-serif; font-weight: 600;letter-spacing: 1px;}
.search-col.last {
	width:100%; flex: .1; align-self: flex-end;}
button.search-btn {
	background: #D71D17; border: none;color: #fff;padding: 14px;border-radius: 40px;box-sizing: border-box;font-size: 18px; width: 100%;cursor: pointer;transition: all .2s ease-in-out; }
button.search-btn:hover {
	background-color: #AD0C08; transition: all .2s ease-in-out;}
.row {
    display: grid;
    gap: 12px;
    width: 100%;
}
.row-2 {
    grid-template-columns: repeat(2, 1fr);
}
.row.row-3 {
    grid-template-columns: repeat(3, 3fr);
}
/* NOUI SLIDER */
.noUi-target{position: relative; direction: ltr}
.noUi-origin{position: absolute; right: 0; top: 0; left: 0; bottom: 0; border-radius: 2px}
.noUi-marker, .noUi-pips, .noUi-tooltip, .noUi-value{position: absolute}
.noUi-horizontal{height: 12px; z-index: 0}
.noUi-horizontal .noUi-handle{width: 25px; height: 21px; left: -13px; top: -6px}
.noUi-horizontal .noUi-handle-upper{top: -5px}
.noUi-background{background: #ccc;}
.noUi-connect{background: #fff!important; border: 1px #999999 solid;}
.noUi-target{width: calc(100% - 15px); margin: 15px auto;}
.noUi-handle{position: relative;background: #fff !important;border: 1px solid #c8c8c8;border-radius: 3px;z-index: 1;}
.noUi-handle:after, .noUi-handle:before{content: ""; display: block; position: absolute; height: 12px; width: 1px; background: #999999; left: 10px; top: 3px}
.noUi-handle:after{left: 12px}
.noUi-pips-horizontal{padding: 5px 0; height: 10px; top: 100%; left: 0; width: 100%}
.noUi-marker-horizontal.noUi-marker{margin-left: -1px; width: 1px; height: 5px; background: #555;}
.example-val{font-weight: 700; font-size: 18px;}
.example-val span{font-weight: 500;}
#slider-price-value-lower:before, #slider-price-value-upper:before{content: '$'; padding-right: 2px}


/* zoom buttons */
.zoom-wrapper {    
	width: 90%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 0;
    margin: 6em auto;}
.zoom-container.scroll {width: auto; margin: auto;}
.zoom-container { 
	background-color: #D71d17;
    width: calc(25% - .5em);
    margin: .25em;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    display: flex;
    text-align: center;
    border-radius: 5px;
    padding: 25px;
    align-items: center;
    min-height: 210px;
    justify-content: center;
    flex-direction: column;
    gap: 1em;
    transition: .25s ease all;}
.zoom-container img { max-width: 100%; }
/*.zoom-container:hover img {transform:scale(1.25); transition: all .5s ease;}*/
.zoom-container .zoom-caption {
	z-index: 1;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    transition: all .5s ease;
    margin: 0 auto;
    height: 100%;
    color: #fff;
    letter-spacing: 1px;
    text-align: center;
}
a.zoom-container:hover {
    background-color: #AD0C08;
}


.home-about { text-align: center; }
.home-about h3 { margin-bottom: 25px; }



/*contact page*/

.contact-hero {
    background-image: url(../siteart/cheemongaerial1.jpg);
    height: 500px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #000;
    box-sizing: border-box;
    align-items: center;
    width: 100%;
    max-width: 100%;
    position: relative;
    z-index: 1;
}
.contact-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
}
.contact-hero * {
    position: relative;
    z-index: 1;
}
.sub-rt {
    gap: 20px;
    display: grid;
}
.contact .subpage-hero .heading1 {
    flex: 2;
}
.contact .subpage-hero .sub-rt {
    flex: 1;
}
.sub-btns {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}






/*--------FORM STYLES--------------------*/




/*-------- FOOTER STYLES ----------------*/
footer{}

.foot {
	display: flex;
}
.ft-col.contact {
    flex: 1;
	background-image: url(../siteart/Cheemong-ft-bg.png);
    background-repeat: no-repeat;
    background-position: left;
	background-position: unset;
}
.ft-col.contact .padtb-90 {
    justify-self: center;
}
.ft-col-rt {
    flex: 2;
}
.ft-col-rt .padtb-90 {
    display: flex;
    flex: 2;
    justify-content: space-around;
}
.ft-col .cta-title {
    margin-bottom: 25px;
}
.ft-link.body {
    line-height: 35px;
}
.ft-link.large {
    font-size: 25px;
    font-family: "inria-sans", sans-serif;
    font-weight: 700;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.ft-col.contact {
    padding: 0 25px;
}

/*----INVENTORY STYLES - KEEP AT BOTTOM OF CSS----*/







/*---------- RESPONSIVE STYLES ----------*/

@media only screen and (min-width: 768px) {
	
}

@media only screen and (min-width:768px) and (max-width: 1130px) {
	
}

@media screen and (max-width: 1440px) {
	.heading1 { font-size: 60px; line-height: 65px; }
	.subheading1 { font-size: 28px; line-height: 33px; }
	.hero-wrap .slick-slider {height: 500px;}
}
@media screen and (max-width: 1300px) {
    .zoom-wrapper .zoom-container {
        width: calc(33.33% - .5em);
    }
}
@media screen and (max-width: 1150px) {
    .zoom-wrapper .zoom-container {
        width: calc(50% - .5em);
    }
	.cta-title {
		font-size: 20px;
	}
	.zoom-container img {
		max-width: 40%;
	}
	.heading1 br { display: none; }
	.heading1 { font-size: 50px; line-height: 55px; }
	.subheading1 { font-size: 22px; line-height: 27px; }
	.l-heading { font-size: 40px; line-height: 45px; }
	.m-heading { font-size: 30px; line-height: 35px; }
	.ch-head-logo img { width: 70%; }
	.ch-head-logo { text-align-last: center; }
	.head-contact, .head-phone { display: none; }
	.ch-header { justify-content: center; }
}
@media screen and (max-width: 850px) {
	.zoom-container img {
        max-width: 25%;
    }
	.zoom-container {
		padding: 20px;
		min-height: 170px;
	}
	.row-2 { grid-template-columns: repeat(1, 1fr); }
	.row.row-3 { grid-template-columns: repeat(1, 3fr); }
	.subpage-hero { flex-direction: column; }
	.heading1 { font-size: 32px; line-height: 37px; }
	.subheading1 { font-size: 20px; line-height: 25px; }
	.l-heading { font-size: 35px; line-height: 40px; }
	.hero-wrap .slick-slider {height: 400px;}
	.slick-track {place-items: center;}
}
@media screen and (max-width: 700px) {
	.foot {
		flex-direction: column;
	}
	.ft-col.contact {
		background-size: cover;
	}
	.ft-col-rt .padtb-90 {
		display: flex;
		flex: 2;
		margin: auto 25px;
		flex-wrap: wrap;
		gap: 25px;
	}
	.hero-wrap { height: 550px;max-height: fit-content;}
	.cycle-slideshow img {
		height: 550px;
	}
}
@media screen and (max-width: 615px) {
	.ch-head-logo img { width: 100%; }
}
@media screen and (max-width: 550px) {
    .zoom-container {
		min-height: 100px;
    }
	.zoom-container img {
        max-width: 30%;
		max-height: 50px;
    }
	.zoom-container .zoom-caption {
		margin: 0;
	}
	.zoom-wrapper .zoom-container {
        width: calc(100% - .5em);
    }
/*	.hero-wrap { height: 400px;}*/
	.m-heading { font-size: 25px; line-height: 30px; margin-bottom: 10px; }
	.home-search { margin-top: -40px; }
	.hero-txt {
		margin: 0 25px;
	}
}
@media screen and (max-width: 400px) {
	.ft-col-rt .padtb-90 {
		justify-content: flex-start;
	}
	.heading1 { font-size: 22px; line-height: 25px; }
	.subheading1 { font-size: 16px; line-height: 20px; }
}



