
/*
  ======================
MASTER TEMPLATE
  ======================
*/


/*
  ======================
DOCUMENT BASE
  ======================
*/

.cc-main-container * {
	box-sizing: border-box;
	line-height: 145%;
	font-size: 18px !important;
}

.cc-main-container {
	width: 100%;
	max-width: 1500px;
	background-color: white;
	margin: 0px auto 0px;
	text-align: center !important;
	position: relative;
}


.cc-main-container2 {
    width: 100%;
    max-width: 1500px;
    background-color: white;
    margin: 0px auto 40px;
    position: relative;
}

.overflow-hidden {
	overflow: hidden !important;
}
.mx-width-1500 {
		max-width: 1500px !important;
}

.mx-width-1400 {
		max-width: 1400px !important;
}

.mx-width-1300 {
		max-width: 1300px !important;
}

.mx-width-1200 {
		max-width: 1200px !important;
}

.cc-bg-white {
	background-color: #ffffff;
}

.cc-bg-darkgray {
	background-color: #262626;
}
.cc-bg-black {
	background-color: #000000;
}

.cc-bg-lightgray {
	background-color: #f7f7f7;
}

.cc-bg-blue {
	background-color: #1c394f;
}


.cc-icon {
	max-width: 66px;
}


/*
  ======================
GRID CONTENT
  ======================
*/

.cc-row {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	margin: 5px auto;
}


/* 1/12 */

.cc-col-1 {
	width: 6.33%;
}


/* 2/12 */

.cc-col-2 {
	width: 14.66%;
}


/* 3/12 */

.cc-col-3 {
	width: 23%;
}


/* 4/12 */

.cc-col-4 {
	width: 31.33%;
}


/* 5/12 */

.cc-col-5 {
	width: 39.66%;
}


/* 6/12 */

.cc-col-6 {
	width: 48%;
}


/* 7/12 */

.cc-col-7 {
	width: 56.33%;
}


/* 8/12 */

.cc-col-8 {
	width: 64.66%;
}


/* 9/12 */

.cc-col-9 {
	width: 73%;
}


/* 10/12 */

.cc-col-10 {
	width: 81.33%;
}


/* 11/12 */

.cc-col-11 {
	width: 89.66%;
}


/* 12/12 */

.cc-col-12 {
	width: 100%;
}



/*
  ======================
WIDTH  & HEIGHT CONTROL
  ======================
*/

.w-100 {
	width: 100% !important;
}

.w-75 {
	width: 75% !important;
}

.w-50 {
	width: 50% !important;
}

.w-25 {
	width: 25% !important;
}

.h-100 {
	height: 100% !important;
}

.h-75 {
	height: 75% !important;
}

.h-50 {
	height: 50% !important;
}

.h-25 {
	height: 25% !important;
}


/*
  ======================
TEXT CONTROL: alignment, color, size
  ======================
*/

.text-center {
	text-align: center !important;
}

.text-center h2:after {
	margin: 20px auto !important;
}

.text-left {
	text-align: left!important;
}


.text-left h2:after {
	margin-right: auto !important;
}


.text-right {
	text-align: right !important;
}


.text-right h2:after {
	margin-left:auto !important;
}


.text-white, .text-white a, .text-white h2, .text-white h3, .text-white h4  {
	color: #ffffff !important;
}

.text-white h2:after {
	background: #ffffff !important;
}

.text-black, .text-black a, .text-black h2, .text-black h3, .text-white h4 {
	color: #000000 !important;
}
	
.cc-main-container h2 {
	font-size: 38px !important;
}

.cc-main-container h2 > span {
	font-size: 20px !important;
	display: block;
}


.cc-disclaimer, .cc-disclaimer > p, .cc-disclaimer > p > sup {
	font-size: 12px !important;
}

.font-caps {
	text-transform: uppercase !important;
	font-size: inherit !important;
}
.font-underline {
	text-decoration: underline !important;
		font-size: inherit !important;
}

.font-italic {
	font-style: italic !important;
		font-size: inherit !important;
}

.font-bold {
	font-weight: bold;
	font-size: inherit !important;
}

.font-xlarge, .font-xlarge > a {
	font-size: 60px !important;
}

.font-large, .font-large > a {
	font-size: 40px !important;
}
.font-medium, .font-medium > a, .font-medium > strong {
	font-size: 22px !important;
}

.font-medium2, .font-medium2 > a, .font-medium2 > strong {
	font-size: 32px !important;
}

.font-small, .font-small > a {
	font-size: 14px !important;
}

.letter-spacing-sm {
	letter-spacing: 2px !important;
		font-size: inherit !important;
}

.letter-spacing-md {
	letter-spacing: 4px !important;
	font-size: inherit !important;
}

.letter-spacing-lrg {
	letter-spacing: 6px !important;
	font-size: inherit !important;
}


/*
  ======================
OPTIONAL NAV CONTROL
  ======================
*/

.cc-anchor-nav a {
	font-size: 22px;
	display: inline-block;
	margin: 5px 0;
	text-decoration: none;
}

.cc-anchor-nav a:hover {
	letter-spacing: 2px;
	transition: ease 1s;
}

.cc-anchor-nav a:not(:last-child):after {
	content: "|";
	padding: 0 30px;
}


/*
  ======================
IMAGE CONTROL
  ======================
*/

.cc-main-container img {
	width: 100%;
}

.cc-bg-top {
	background-position: top !important;
}

.cc-bg-bottom{
	background-position: bottom !important;
}

.cc-bg-left {
	background-position: left !important;
}

.cc-bg-right {
	background-position: right !important;
}

.cc-bg-center {
	background-position: center !important;
}

.cc-bg-cover {
	background-size: cover !important;
}

.cc-bg-gradient-black {
	position: relative !important;
	height: auto;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 0;
	background-image: linear-gradient(-40deg, transparent, black) !important;
}

.cc-bg-gradient-white {
	position: relative !important;
	height: auto;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 0;
	background-image: linear-gradient(-40deg, transparent, white) !important;
}

.cc-bg-gradient-black::before {
	content: "";
	position: absolute !important;
	top: 0px;
	right: 0px;
	bottom: 0px;
	left: 0px;
	opacity: 0.3;
	z-index: -1;
}


/*
  ======================
BORDER & BOX SHADOW CONTROL
  ======================
*/

.sm-border-radius {
	border-radius: 10px;
}

.md-border-radius {
	border-radius: 20px;
}

.lrg-border-radius {
	border-radius: 30px;
}

.sm-box-shadow {
	box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.md-box-shadow {
	box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
}

.lrg-box-shadow {
	box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
}


/*
  ======================
CTA STYLING
  ======================
*/

.cc-cta {
	padding: 15px 0px;
	margin: 5px 2px;
	font-size: 18px;
	text-decoration: none !important;
	text-align: center;
	transition: .6s;
}

.cc-subcta {
	background-color: #262626 !important;
	color: white !important;
}

.cc-cta:hover {
	opacity: .3;
}

.cc-maincta:focus {
	border: 2px dotted #C1C1C1;
}

.cc-subcta:focus {
	border: 2px dotted #C1C1C1;
}


/*
  ======================
SPACIAL ALIGNMENT CONTROL
  ======================
*/

.cc-auto-mrg {
	margin: 0 auto !important;
}

.cc-left-mrg {
	margin-right: auto !important;
}

.cc-right-mrg {
	margin-left: auto !important;
}

.cc-sm-lr-mrg {
	margin: 0 10px !important;
}

.cc-sm-mrg {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

.cc-sm-mrg-top {
	margin-top: 10px !important;
}

.cc-sm-mrg-bottom {
	margin-bottom: 10px !important;
}

.cc-md-mrg {
	margin-top: 20px !important;
	margin-bottom: 20px !important;
}
	
.cc-md-mrg-top {
	margin-top: 20px !important;
}

.cc-md-mrg-bottom {
	margin-bottom: 20px !important;
}

.cc-lrg-mrg {
	margin-top: 40px !important;
	margin-bottom: 40px !important;
}
.cc-lrg-mrg-top {
	margin-top: 40px !important;
}

.cc-lrg-mrg-bottom {
	margin-bottom: 40px !important;
}

.cc-no-padding {
	padding: 0 !important;
}

.cc-sm-padding {
	padding: 2% !important;
}
.cc-sm-padding-top {
	padding-top: 2% !important;
}

.cc-sm-padding-bottom {
	padding-bottom: 2% !important;
}

.cc-md-padding {
	padding: 4% !important;
}

.cc-md-padding-top {
	padding-top: 4% !important;
}

.cc-md-padding-bottom {
	padding-bottom: 4% !important;
}

.cc-lrg-padding {
	padding: 7% !important;
}

.cc-lrg-padding-top {
	padding-top: 7% !important;
}

.cc-lrg-padding-bottom {
	padding-bottom: 7% !important;
}

.cc-sm-padding-lr {
	padding: 0 2% !important;
}
.cc-sm-padding-left {
	padding-left: 2% !important;
}
.cc-sm-padding-right {
	padding-right: 2% !important;
}

.cc-md-padding-lr {
	padding: 0 4% !important;
}
.cc-md-padding-left {
	padding-left: 4% !important;
}
.cc-md-padding-right {
	padding-right: 4% !important;
}

.cc-lrg-padding-lr {
	padding: 0 7% !important;
}
.cc-lrg-padding-left {
	padding-left: 7% !important;
}
.cc-lrg-padding-right {
	padding-right: 7% !important;
}


.cc-offset-top-sm {
	margin-top: -20px !important;
	z-index: 3 !important;
}

.cc-offset-top-md {
	margin-top: -40px !important;
	z-index: 3 !important;
}

.cc-offset-top-lrg {
	margin-top: -60px !important;
	z-index: 3 !important;
}

.cc-offset-left-sm {
	margin-left: -40px !important;
	z-index: 3 !important;
}

.cc-offset-left-md {
	margin-left: -60px !important;
	z-index: 3 !important;
}

.cc-offset-left-lrg {
	margin-left: -80px !important;
	z-index: 3 !important;
}
	
	.cc-offset-right-sm {
	margin-right: -40px !important;
	z-index: 3 !important;
}

.cc-offset-right-md {
	margin-right: -60px !important;
	z-index: 3 !important;
}

.cc-offset-right-lrg {
	margin-right: -80px !important;
	z-index: 3 !important;
}

.valign-middle {
	align-items: center !important;
	justify-content: center !important;
}

.valign-top {
	align-items: flex-start;
	justify-content: flex-start;
}

.valign-bottom {
	align-items: flex-end !important;
	justify-content: flex-end !important;
}


/* viewport <= 768px */

@media only screen and (max-width: 800px) {
	.cc-col-1,
	.cc-col-2,
	.cc-col-3,
	.cc-col-4 {
		width: 49% !important;
		margin: 10px auto !important;
		transition: .4s
	}
	.cc-row div {
		margin: 10px auto;
	}
	.cc-col-5,
	.cc-col-6,
	.cc-col-7,
	.cc-col-8,
	.cc-col-9,
	.cc-col-10,
	.cc-col-11,
	.cc-col-12 {
		width: 100% !important;
		margin: 10px auto !important;
		transition: .4s
	}
	.show-first {
		order: 1 !important;
	}
	.show-second {
		order: 2 !important;
	}
	.show-third {
		order: 3 !important;
	}
	.show-fourth {
		order: 4 !important;
	}
	
	.cc-mobile-col-2 {
	width: 49% !important;
	}
	
	.font-large, .font-large > a {
	font-size: 30px !important;
}
	.mobile-text-center {
		text-align: center !important;
	}
	
	.cc-anchor-nav a {
	display: block !important;
}

.cc-anchor-nav a:hover {
	letter-spacing: 2px;
	transition: ease 1s;
}

.cc-anchor-nav a:not(:last-child):after {
display: none !important;
}


}


/* viewport <= 650px */

@media screen and (max-width: 650px) {
	.cc-col-1,
	.cc-col-2,
	.cc-col-3,
	.cc-col-4,
	.cc-col-5,
	.cc-col-6,
	.cc-col-7,
	.cc-col-8,
	.cc-col-9,
	.cc-col-10,
	.cc-col-11,
	.cc-col-12 {
		width: 100% !important;
		margin: 10px auto !important;
		transition: .4s
	}
		.cc-mobile-col-2 {
	width: 49% !important;
	}
}