/*
	Theme Name: CCE Design Associates Custom WordPress Theme
	Theme URI: http://www.guidomediaservices.com
	Description: Custom Genesis Child Theme Created For CCE Design Associates
	Author: Guido Media
	Author URI: http://www.guidomediaservices.com
	Version: 1.0.0

	Template: genesis
	Template Version: 2.0.0
*/


/* HTML5 Reset ---------------------------------------------------------------------------------------------------- */

/* Baseline Reset (normalize.css 2.1.2)
	normalize.css v2.1.2 | MIT License | git.io/normalize
--------------------------------------------- */

article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}

/* Box Sizing --------------------------------------------- */
*,
input[type="search"] {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
}

/* Float Clearing --------------------------------------------- */
.clearfix:before,
.entry-content:before,
.entry:before,
.footer-widgets:before,
.nav-primary:before,
.nav-secondary:before,
.pagination:before,
.site-container:before,
.site-footer:before,
.site-header:before,
.site-inner:before,
.widget:before,
.wrap:before {
	content: " ";
	display: table;
}
.clearfix:after,
.entry-content:after,
.entry:after,
.footer-widgets:after,
.nav-primary:after,
.nav-secondary:after,
.pagination:after,
.site-container:after,
.site-footer:after,
.site-header:after,
.site-inner:after,
.widget:after,
.wrap:after {
	clear: both;
	content: " ";
	display: table;
}
.clear {
	clear: both;
}

/* Typographical Elements --------------------------------------------- */
html {
	font-size: 14px;
	font-family: 'Poppins', sans-serif;
}
body {
}
a,
button,
input:focus,
input[type="button"],
input[type="reset"],
input[type="submit"],
textarea:focus,
.home .featured-content img,
.button,
.site-header {
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition:    all 0.3s ease-in-out;
	-ms-transition:     all 0.3s ease-in-out;
	-o-transition:      all 0.3s ease-in-out;
	transition:         all 0.3s ease-in-out;
}
::-moz-selection {
	background-color: #000;
	color: #fff;
}
::selection {
	background-color: #000;
	color: #fff;
}
a {
	color:#eb4c39;
}
a img {
}
a:hover {
}
p {
}
strong {
}
ol,
ul {
}
blockquote,
blockquote::before {
}
blockquote {
}
blockquote::before {
}
.entry-content code {
}
cite {
}

/* Headings --------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
}

/* Objects --------------------------------------------- */
img {
	height: auto;
	max-width: 100%;
}
.featured-content img,
.gallery img {
	width: auto; /* IE8 */
}

/* Forms --------------------------------------------- */
input,
select,
textarea {
	background-color: #fff;
	border: 1px solid #ddd;
	color: #999;
	font-size: 14px;
	padding-left: 12px;
	padding-right:12px;
	height:50px;
	line-height:50px;
	width: 100%;
}
input,
select {
	height:50px;
	line-height:50px;
}
textarea {
	line-height:20px;
	padding-top:20px;
}
input:focus,
textarea:focus {
	border: 1px solid #999;
	outline: none;
}
::-moz-placeholder {
	color: #999;
}
::-webkit-input-placeholder {
	color: #999;
}
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.entry-content .button {
	background-color: transparent;
	border: solid 2px #eb4c39;
	color:#eb4c39;
	cursor: pointer;
	font-size:14px;
	letter-spacing:2px;
	border-radius:2.5px;
	padding-left: 40px;
	padding-right: 40px;
	text-transform: uppercase;
	font-weight: 700;
	text-decoration: none;
	width: auto;
	height: 50px;
	line-height: 46px;
	padding-top: 0;
	padding-bottom: 0;
	display: inline-block;
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.button:hover,
.entry-content .button:hover {
	color: #fff;
	background-color: #eb4c39;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button {
	display: none;
}

/* Gravity Forms ---------------------------------------------------------------------------------------------------- */
.gform_wrapper {
	max-width: 100%;
	width: 100%;
}
.gform_wrapper label,
.gform_wrapper legend {
	padding: 0;
	font-family:'Poppins', sans-serif;
	font-weight:bold;
	font-size:16px;
}
.gform_wrapper .field_sublabel_below span > label{
	display:none;
}
.gform_wrapper .gfield_checkbox li input,
.gform_wrapper .gfield_checkbox li input[type="checkbox"],
.gform_wrapper .gfield_radio li input[type="radio"] {
	margin-top: 0;
}
.gform_wrapper fieldset{
  border:none;
  padding:0;
}
.gform_wrapper ul {
	margin: 0;
	padding: 0;
}
body .gform_wrapper div.gfield,
body .gform_wrapper fieldset {
	margin: 0;
	list-style-type: none;
	margin-bottom: 15px !important;
	min-height: 50px;
}
div.gchoice{
	margin-bottom:7px;
}
div.gchoice > label {
	font-weight:normal;
}
.gform_wrapper .gform_footer input[type="submit"] {
	font-size: 14px;
}
.gform_wrapper .gfield_checkbox label,
.gform_wrapper .show-label label {
	display: block;
	font-weight: normal;
}
div.gform_confirmation_message {
	text-align: center;
}
h3.gsection_title{
	color:#10b5bf;
}

/* Custom radio buttons */
ul.gfield_radio {
	display:flex;
	justify-content:space-between;
}
.gfield_radio div,
.gfield_checkbox div{
  	display: block;
  	position: relative;
  	padding-left: 0px;
  	margin-bottom: 12px;
  	cursor: pointer;
  	-webkit-user-select: none;
  	-moz-user-select: none;
  	-ms-user-select: none;
  	user-select: none;
}
.gfield_radio div label,
.gfield_checkbox div label{
	margin-left: 35px;
}
.gfield_radio div input,
.gfield_checkbox div input[type="checkbox"]{
  	position: absolute;
  	opacity: 0;
  	cursor: pointer;
}
.gfield_radio div label:before,
.gfield_checkbox div label:before {
  	position: absolute;
  	top: 0;
  	left: 0;
  	height: 25px;
  	width: 25px;
  	background-color: #eee;
 	border-radius: 20%;
	content:"";
	cursor:pointer;
}
.gfield_radio div label:hover:before,
.gfield_checkbox div label:hover:before{
  	background-color: #ccc;
}
.gfield_radio div input[type="radio"]:checked ~ label:before,
.gfield_checkbox div input[type="checkbox"]:checked ~ label:before {
  	background-color: #d37c5c;
}
.gfield_radio div label:after,
.gfield_checkbox div label:after {
  	content: "";
  	position: absolute;
  	display: none;
}
.gfield_radio div input[type="radio"]:checked ~ label:after,
.gfield_checkbox div input[type="checkbox"]:checked ~ label:after {
   	display: block;
}
.gfield_radio div label:after,
.gfield_checkbox div label:after {
 	left: 9px;
  	top: 5px;
  	width: 5px;
  	height: 10px;
  	border: solid white;
  	border-width: 0 3px 3px 0;
  	-webkit-transform: rotate(45deg);
  	-ms-transform: rotate(45deg);
  	transform: rotate(45deg);
}

/* Credit Card Fields */
.gform_card_icon_container {
 margin:8px 0 6px;
 height:32px
}
div.gform_card_icon {
 margin-right:4px;
 text-indent:-9000px;
 background-image:url(/wp-content/plugins/gravityforms/images/gf-creditcard-icons.png);
 background-repeat:no-repeat;
 width:36px;
 height:32px;
 float:left
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_visa {
 background-position:0 0
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_visa {
 background-position:0 -32px
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_visa {
 background-position:0 -64px
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_mastercard {
 background-position:-36px 0
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_mastercard {
 background-position:-36px -32px
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_mastercard {
 background-position:-36px -64px
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_amex {
 background-position:-72px 0
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_amex {
 background-position:-72px -32px
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_amex {
 background-position:-72px -64px
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_discover {
 background-position:-108px 0
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_discover {
 background-position:-108px -32px
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_discover {
 background-position:-108px -64px
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_maestro {
 background-position:-144px 0
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_maestro {
 background-position:-144px -32px
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_maestro {
 background-position:-144px -64px
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_jcb {
 background-position:-180px 0
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_jcb {
 background-position:-180px -32px
}
.gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_jcb {
 background-position:-180px -64px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_visa {
 background-position:0 -192px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_visa {
 background-position:0 -224px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_visa {
 background-position:0 -256px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_mastercard {
 background-position:-36px -192px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_mastercard {
 background-position:-36px -224px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_mastercard {
 background-position:-36px -256px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_amex {
 background-position:-72px -192px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_amex {
 background-position:-72px -224px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_amex {
 background-position:-72px -256px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_discover {
 background-position:-108px -192px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_discover {
 background-position:-108px -224px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_discover {
 background-position:-108px -256px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_maestro {
 background-position:-144px -192px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_maestro {
 background-position:-144px -224px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_maestro {
 background-position:-144px -256px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_jcb {
 background-position:-180px -192px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_jcb {
 background-position:-180px -224px
}
.gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_jcb {
 background-position:-180px -256px
}
.ginput_complex .ginput_cardinfo_left,.ginput_complex .ginput_cardinfo_right {
 min-height:43px;
 position:relative;
 float:left
}
.ginput_complex .ginput_cardinfo_left {
 width:50%;
 margin-right:1%
}
.ginput_complex .ginput_cardinfo_right {
 min-width:85px!important
}
.ginput_complex .ginput_cardinfo_right label {
 white-space:nowrap!important
}
.ginput_complex span.ginput_cardextras {
 display:block;
 overflow:hidden;
}
.ginput_container_creditcard input{
 margin-bottom:8px
}
.ginput_complex .ginput_cardinfo_right span.ginput_card_expiration_container {
 position:relative
}
.ginput_complex select.ginput_card_expiration.ginput_card_expiration_month,.ginput_complex select.ginput_card_expiration.ginput_card_expiration_year {
 width:47%!important;
 display:-moz-inline-stack;
 display:inline-block
}
.ginput_complex select.ginput_card_expiration.ginput_card_expiration_month {
 margin-right:4px
}
.ginput_complex .ginput_cardinfo_right input.ginput_card_security_code {
 max-width:50%!important;
 position:relative
}
.ginput_complex .ginput_cardinfo_right span.ginput_card_security_code_icon {
 width:32px;
 height:23px;
 background-image:url(../images/gf-creditcard-icons.png);
 background-repeat:no-repeat;
 background-position:0 -128px;
 position:relative;
 top:-2px;
 left:6px;
 display:-moz-inline-stack;
 display:inline-block
}
div.gfield_creditcard_warning_message {
 display:none!important
}
#gform_fields li.credit_card_setting.field_setting ul li {
 padding:2px 0 4px
}

/* Date Picker --------------------------------------------- */
#ui-datepicker-div {
	background: #FFF;
	border: 1px solid #b85e17;
	display:none;
	padding:20px;
	width:auto;
}
#ui-datepicker-div select {
	height: 25px;
	line-height: 25px;
}
.ui-icon {
	cursor: pointer;
}
.ui-datepicker-header a {
	cursor: pointer;
}
.ui-datepicker-prev {
	float: left;
	width: 10%;
}
.ui-state-disabled {
	display:none;
}
.ui-datepicker-next {
	float: right;
	width: 10%;
}
.ui-state-disabled {
	 display:none;
}
.ui-datepicker-title {
	margin-top: 20px;
}
.ui-datepicker-title select {
	float: left;
	width: 70%;
}
.ui-datepicker-month {
	margin: 0px 5% 6px;
}
.ui-datepicker-year {
	margin: 0px 15% 6px;
}
.ui-datepicker-today {
	border-radius: 4px;
}
.ui-datepicker-today a {
	color: #fff;
}
#ui-datepicker-div table {
	width: 100%;
}
#ui-datepicker-div td,
#ui-datepicker-div th  {
	text-align: center;
}
#ui-datepicker-div td a {
	display: block;
	padding: 5px;
}

/* Tables --------------------------------------------- */
table {
	border-collapse: collapse;
	border-spacing: 0;
	line-height: 2;
	margin-bottom: 40px;
	margin-bottom: 4rem;
	width: 100%;
}
tbody {
	border-bottom: 1px solid #ddd;
}
th,
td {
	text-align: left;
}
th {
	font-weight: bold;
	text-transform: uppercase;
}
td {
	padding: 6px 0;
	padding: 0.6rem 0;
}

/* Site Containers --------------------------------------------- */
.site-container {
}
.wrap {
	margin: 0 auto;
	width: 96%;
	max-width: 1140px;
}
.site-inner {
	margin: 0 auto;
	width: 96%;
	max-width: 1140px;
	clear: both;
}
.home .site-inner {
	padding: 0;
	width: 100%;
	max-width: 100%;
}

/* Primary Sidebar --------------------------------------------- */
.sidebar-primary {
	float: right;
	width: 360px;
}
.sidebar-content .sidebar-primary,
.sidebar-sidebar-content .sidebar-primary {
	float: left;
}

/* WordPress --------------------------------------------- */
.avatar {
	border-radius: 50%;
	float: left;
}
.alignleft .avatar {
	margin-right: 24px;
	margin-right: 2.4rem;
}
.alignright .avatar {
	margin-left: 24px;
	margin-left: 2.4rem;
}
.search-form {
	overflow: hidden;
}
.search-form input[type="submit"] {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	padding: 0;
	position: absolute;
	width: 1px;
}
img.centered,
.aligncenter {
	display: block;
	margin: 0 auto 24px;
	margin: 0 auto 2.4rem;
}
a.alignnone img,
.alignnone img {
	margin-bottom: 12px;
	margin-bottom: 1.2rem;
}
.alignleft {
	float: left;
	text-align: left;
}
.alignright {
	float: right;
	text-align: right;
}
a.alignleft,
a.alignright {
    max-width: 100%;
}
a.alignleft img,
img.alignleft,
.wp-caption.alignleft {
	margin: 0 24px 24px 0;
	margin: 0 2.4rem 2.4rem 0;
}
a.alignright img,
img.alignright,
.wp-caption.alignright {
	margin: 0 0 24px 24px;
	margin: 0 0 2.4rem 2.4rem;
}
.entry-content .wp-caption-text {
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
}
.widget_calendar table {
	width: 100%;
}
.widget_calendar td,
.widget_calendar th {
	text-align: center;
}

/* Site Header ---------------------------------------------------------------------------------------------------- */
.site-header {
	height: 90px;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 99;
	background-color:transparent;
}
body.home .site-header{
	opacity:0;
}
.site-header .wrap {
	width: 96%;
	max-width:1500px;
	height: 100%;
}
.site-header.scrolled  {
	background-color:#fff;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.25);
}

/* Title Area --------------------------------------------- */
.title-area {
	float: left;
}
.site-title {
	margin: 0;
	padding: 0;
	margin-top:12.5px;
}
.site-title a {
	width: 120px;
	height: 65px;
	display: block;
	background-image: url(images/logo-white.png);
	background-size:contain;
	background-repeat:no-repeat;
	background-position:top left;
	text-indent: -9999px;
}
.scrolled .site-title a {
	background-image:url(images/logo.png);
}

/* Page Title */
.page-title::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-color: rgba(0,0,0,0.4);
	z-index: 1;
}
.page-title {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	height: 50vh;
	min-height: 500px;
	position: relative;
}
.page-title .wrap{
	width: 96%;
	max-width:1500px;
	height:100%;
	position:relative;
}
.page-title .headline {
	position: absolute;
	bottom: 50px;
	left: 0;
	z-index: 9;
}
.page-title h1 {
	color: #fff;
	display:inline-block;
	font-size:75px;
	line-height:85px;
	margin:0;
	background-color:#eb4c39;
	padding:25px;
}
.page-title .subline{
	display:block;
	color: #fff;
	font-size: 20px;
	line-height: 30px;
	font-weight: bold;
	max-width:700px;
}

/* Primary Navigation --------------------------------------------- */
.nav-primary {
	float: right;
	width:65%;
	max-width:1200px;
}
.nav-primary ul {
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
}
.nav-primary ul li {
	display: inline-block;
	list-style-type: none;
	padding: 0;
	margin: 0;
}
.nav-primary ul li a {
	display: block;
	text-decoration: none;
	color:#fff;
	line-height:90px;
	font-weight:bold;
	font-size:14px;
	letter-spacing:2px;
	text-transform:uppercase;
	cursor:pointer;
}
.scrolled .nav-primary ul li a {
	color:#111;
}
.nav-primary ul li a:hover {
	color:#eb4c39;
}
.nav-primary ul li:last-of-type a {
	background-color:#eb4c39;
	border:solid 2px #eb4c39;
	padding-left:20px;
	padding-right:20px;
	height:50px;
	line-height:46px;
	margin-top:20px;
	border-radius:2.5px;
}
.scrolled .nav-primary ul li:last-of-type a{
	color:#fff;
}
.nav-primary ul li:last-of-type a:hover{
	background-color:transparent;
	color:#eb4c39;
}
.nav-primary .sub-menu {
	left: -9999px;
	opacity: 0;
	position: absolute;
	-webkit-transition: opacity 0.4s ease-in-out;
	-moz-transition:    opacity 0.4s ease-in-out;
	-ms-transition:     opacity 0.4s ease-in-out;
	-o-transition:      opacity 0.4s ease-in-out;
	transition:         opacity 0.4s ease-in-out;
	width: 280px;
	z-index: 99;
	padding: 0;
	margin: 0;
	height: auto;
}
.nav-primary .sub-menu li {
	width: 100%;
	padding: 0;
	margin: 0;
}
.nav-primary .sub-menu a {
	padding: 0;
	position: relative;
	width: 100%;
	display: block;

}
.nav-primary .sub-menu a:hover {
}
.nav-primary .sub-menu .sub-menu {
	margin: -50px 0 0 179px;
}
.nav-primary .menu-item:hover {
}
.nav-primary .menu-item:hover > .sub-menu {
	left: auto;
	opacity: 1;
}
.show-menu,
.close-menu,
.nav-primary ul li.mobile {
	display: none;
}

/* Home Page --------------------------------------------- */
.site-inner{
	overflow:hidden;
}
#home-hero{
	background-color:#eb4c39;
	width:100%;
	height:100vh;
	min-height:800px;
	position:relative;
}
#home-hero .slides-container{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	z-index:1;
	opacity:0;
}
#home-hero figure::before{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,0.4);
	content:"";
}
#home-hero figure{
	position:absolute;
	width:100%;
	height:100%;
	background-size:cover;
	left:0;
	top:0;
}
#home-hero .wrap{
	max-width:1500px;
	height:100%;
	position:relative;
	z-index:2;
}
#home-hero .wrap section{
	width:520px;
	position:absolute;
	bottom:100px;
	left:0;
	color:#fff;
	font-size:20px;
	line-height:30px;
	font-weight:bold;
}
#home-hero h2{
	font-size:95px;
	line-height:85px;
	max-width:500px;
	margin:0;
	background-color:#eb4c39;
	padding:25px;
}
#home-hero h2 span{
	width:100%;
	overflow:hidden;
	color:#fff;
	display:block;
	z-index:99;
	animation: typing 1.4s steps(40, end);
	animation-delay: 1s;
	animation-fill-mode:forwards;
	position:relative;
	line-height:95px;
	width:0;
}
#home-hero h2 span:first-of-type{
	animation: typing 1.8s steps(50, end);
	animation-fill-mode:forwards;
	z-index:99;
	animation-delay: 0s;
	height:108px;
	margin-bottom:-15px;
}
#home-hero h2 span:last-of-type{
	animation: typing 1.9s steps(55, end);
	animation-fill-mode:forwards;
	animation-delay: 1.5s;
}
@keyframes typing {
	from { width: 0 }
	to { width: 100% }
  }
#home-hero .textwidget p,
#home-hero .textwidget .buttons{
	opacity:0;
}
#home-hero .button{
	margin-right:20px;
	background-color:#eb4c39;
	color:#fff;
	padding-left:30px;
	padding-right:30px;
}
#home-hero .button:hover{
	background-color:transparent;
	color:#eb4c39;
}
#home-hero .button:first-of-type{
	border-color:#fff;
	color:#fff;
	background-color:transparent;
}
#home-hero .button:first-of-type:hover{
	color:#eb4c39;
	background-color:#fff
}

/* Welcome */
#welcome{
	padding-top:100px;
	padding-bottom:100px;
	background-color:#f9f9f9;
}
#welcome .wrap{
	max-width:85%;
	width:85%;
	margin-left:10%;
	display:flex;
	justify-content:center;
}
#welcome section{
	width:50%;
	margin-right:5%;
	position:relative;
}
#welcome section:first-of-type::before{
	position:absolute;
	width:60%;
	left:-50px;
	top:50px;
	border-bottom:dashed 6px #111;
	content:"";
}
#welcome section:first-of-type::after{
	position:absolute;
	width:60%;
	right:-50px;
	bottom:50px;
	border-bottom:dashed 6px #eb4c39;
	content:"";
}
#welcome .widget_media_image .widget-wrap{
	overflow:hidden;
	text-align:center;
}
#welcome .widget_media_image img{
	height:100%!important;
	max-width:500%!important;
	width:auto;
}
#welcome section:last-of-type{
	width:40%;
	font-size:16px;
	line-height:26px;
}
#welcome section:last-of-type a{
	text-decoration:none;
	font-weight:bold;
}

/* Featured Projects */
#featured-projects{
	padding-top:100px;
	padding-bottom:100px;
}
#featured-projects .wrap{
	max-width:90%;
	width:90%;
	overflow:hidden;
	text-align:center;
	font-size:18px;
	line-height:26px;
	color:#111;
}
#featured-projects .widgettitle{
	font-size:40px;
	margin-bottom:0;
}
#featured-projects .wrap p{
	max-width:600px;
	position:relative;
	margin-left:auto;
	margin-right:auto;
}
.scroller-wrapper{
	display:flex;
	justify-content:space-between;
	padding:0;
	margin:0;
}
.scroller-wrapper article{
	display:inline-block;
	flex:0 0 33.33334%;
	margin-bottom:45px;
	position:relative;
}
.scroller-wrapper article .container{
	width:96%;
	background-size:cover;
	background-position:center center;
	background-color:#fff;
	height:400px;
	position:relative;
	margin-left:auto;
	margin-right:auto;
}
.scroller-wrapper article span{
	color:#fff;
	background-color:#eb4c39;
	position:absolute;
	bottom:10px;
	width:50%;
	left:0;
	padding:10px;
	font-size:18px;
	text-align:left;
	-webkit-transition: all 0.6s ease-in-out;
	-moz-transition:    all 0.6s ease-in-out;
	-ms-transition:     all 0.6s ease-in-out;
	-o-transition:      all 0.6s ease-in-out;
	transition:         all 0.6s ease-in-out;
	font-weight:bold;
}

/* Content ---------------------------------------------------------------------------------------------------- */
.content {
	width: 96%;
	max-width: 1140px;
	height: 100%;
	position: relative;
	margin-left: auto;
	margin-right: auto;
	z-index: 9;
	color: #222;
	padding-top: 10vh;
	padding-bottom: 10vh;
}
.full-width-content .content {
	width: 100%;
}

/* Full Width */
body.full-width .site-inner,
body.full-width .content{
	max-width:100%;
	width:100%;
}
body.full-width .wp-block-media-text{
	padding-top:50px;
	padding-bottom:50px;
}
body.full-width .wp-block-media-text.has-media-on-the-right{
	background-color:#f9f9f9;
}
body.full-width .wp-block-media-text .wp-block-media-text__content{
	padding-right:35%;
	padding-top:150px;
	padding-bottom:150px;
	font-size:16px;
	line-height:26px;
}
body.full-width .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{
	padding-left:35%;
	padding-right:8%;
}
body.full-width .wp-block-media-text .wp-block-media-text__content h2{
	font-size:32px;
	line-height:42px;
}
body.full-width .wp-block-media-text figure {
	position:relative;
}
body.full-width .wp-block-media-text figure::before{
	position:absolute;
	width:60%;
	right:-50px;
	top:50px;
	border-bottom:dashed 6px #111;
	content:"";
}
body.full-width .wp-block-media-text.has-media-on-the-right figure::before{
	position:absolute;
	width:60%;
	right:auto;
	left:-50px;
	bottom:50px;
	border-bottom:dashed 6px #eb4c39;
	content:"";
}
.wp-block-uagb-blockquote{
	margin-bottom:35px;
}

/* Project Categories Page ---------------------------------------------------------------------------------------------------- */
body.projects .site-inner{
	max-width:96%;
}
body.projects .content{
	max-width:100%;
}
ul.project-categories{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	padding:0;
	margin:0;
}
ul.project-categories li{
	display:inline-block;
	flex:0 0 31.33334%;
	margin-left:1%;
	margin-right:1%;
	margin-bottom:45px;
	position:relative;
}
ul.project-categories li a{
	width:100%;
	background-size:cover;
	background-position:center center;
	background-color:#fff;
	height:500px;
	position:relative;
	display:block;
}
ul.project-categories li a span{
	color:#fff;
	background-color:#eb4c39;
	position:absolute;
	bottom:10px;
	width:50%;
	left:0;
	padding:10px;
	font-size:18px;
	text-align:left;
	-webkit-transition: all 0.6s ease-in-out;
	-moz-transition:    all 0.6s ease-in-out;
	-ms-transition:     all 0.6s ease-in-out;
	-o-transition:      all 0.6s ease-in-out;
	transition:         all 0.6s ease-in-out;
	font-weight:bold;
}

/* Projects Page ---------------------------------------------------------------------------------------------------- */
body.project-category .site-inner{
	max-width:1550px;
}
body.project-category .content{
	max-width:100%;
}
article.project {
	padding-top: 80px;
	padding-bottom: 80px;
	height: auto;
	min-height:500px;
	display:flex;
	justify-content:left;
	border-bottom:solid 4px #f1f1f1;
}
article.project .image {
	flex: 0 0 45%;
	height:500px;
	overflow: hidden;
	margin-right:25px;
	display:flex;
	justify-content:center;
	align-items:center;
}
article.project .image img {
	min-height:100%;
	width:auto;
	max-width:200%;
	height:auto;
}
article.project h2{
	font-size:28px;
	line-height:38px;
	color:#eb4c39;
	margin-top:50px;
	margin-bottom:0px;
}
article.project .subline{
	font-weight:bold;
	color: #111;
	font-size: 18px;
}
article.project .subline p{
	margin-top:0;
}
article.project .wp-block-gallery figure{
	max-height:180px;
	height:auto;
}
article.project .wp-block-gallery figure img {
	cursor: pointer;
}

/* Team Page ---------------------------------------------------------------------------------------------------- */
body.team .content{
	display:flex;
	justify-content:left;
	flex-wrap:wrap;
}
body.team .content .subtitle{
	flex: 0 0 100%;
	border-bottom:solid 4px #eb4c39;
	margin-bottom:35px;
	padding-bottom:5px;
}
body.team .content h2{
	display:inline;
	padding:10px;
	background-color:#eb4c39;
	width:100%;
	color:#fff;
	margin:0;
}
article.team{
	flex: 0 0 30%;
	margin-left:1.5%;
	margin-right:1.5%;
	margin-bottom:65px;
	text-align:center;
}
article.team .image::before{
	width:301px;
	height:312px;
	border-radius:50%;
	content:"";
	position:absolute;
	left:3px;
	top:-1px;
	background-color:#eb4c39;
	z-index:-1;
}
article.team:nth-of-type(2n) .image::before{
	left:-5px;
	top:7px;
}
article.team:nth-of-type(3n) .image::before{
	left:7px;
	top:-5px;
}
article.team:nth-of-type(4n) .image::before{
	left:1px;
	top:-8px;
}
article.team:nth-of-type(5n) .image::before{
	left:7px;
	top:2px;
}
article.team .image{
	width:300px;
	height:300px;
	border-radius:50%;
	margin-left:auto;
	margin-right:auto;
	position:relative;
}
article.team .image span{
	width:100%;
	height:100%;
	border-radius:50%;
	background-size:100%;
	background-position:center center;
	-webkit-transition: background-size 400ms linear;
	-moz-transition: background-size 400 linear;
	-o-transition: background-size 400 linear;
	-ms-transition: background-size 400ms linear;
	transition: background-size 400ms linear;
	overflow:hidden;
	display:block;
	position:absolute;
	top:0;
	left:0;
}
article.team .image.has-alt-image span.alt-image{
	opacity:0;
}
article.team .image:not(.has-alt-image) span:hover{
	background-size:120%;
}
article.team .image.has-alt-image:hover span.main-image{
	opacity:0;
}
article.team .image.has-alt-image:hover span.alt-image{
	opacity:1;
}
article.team h3{
	margin-bottom:0;
}
article.team span.position{
	display:block;
	font-size:18px;
	line-height:28px;
	font-weight:bold;
	color:#eb4c39;
}

/* Contact ---------------------------------------------------------------------------------------------------- */
body.contact .page-title{
	height:300px;
	min-height:100px;
}
body.contact .page-title .headline{
	width:400px;
	left:calc(50% - 200px);
	bottom:-50px;
}
body.contact .page-title h1{
	width:100%;
	text-align:center;
}
body.contact .content{
	padding-top:0;
	padding-bottom:0;
}

/* Footer CTA ---------------------------------------------------------------------------------------------------- */
#footer-cta{
	background-color:#111;
	color:#fff;
	padding-top:100px;
	padding-bottom:100px;
}
#footer-cta .wrap{
	display:flex;
	justify-content:center;
}
#footer-cta section{
	width:46%;
	margin-left:2%;
	margin-right:2%;
}
#footer-cta .widgettitle{
	font-size:32px;
	line-height:42px;
	font-weight:bold;
	display:block;
}
#footer-cta section:last-of-type .widgettitle{
	margin-bottom:20px;
}
#footer-cta section:first-of-type strong{
	font-size:22px;
	margin-top:25px;
	padding-top:15px;
	border-top:dashed 2px #333;
	display:block;
	max-width:400px;
}
#footer-cta section form label, 
#footer-cta section form legend{
	display:none;
}
#footer-cta section a{
	color:#fff;
	text-decoration:none;
}
#footer-cta section a:hover{
	color:#eb4c39;
}

/* Site Footer ---------------------------------------------------------------------------------------------------- */
.site-footer {
	padding-top:40px;
	padding-bottom:40px;
	background-color:#fff;
	color:#111;
	font-size:12.5px;
	text-align:center;
}
.footer-logo{
	display:block;
	position:relative;
	margin-left:auto;
	margin-right:auto;
	background-image:url(images/logo.png);
	width:200px;
	height:100px;
	background-size:contain;
	background-repeat:no-repeat;
	background-position: top center;
	text-indent:-9999px;
	margin-bottom:15px;
}
.site-footer a {
	color:#111;
	text-decoration:none;
}
.site-footer a:hover {
	color:#eb4c39;
}
.site-footer ul{
	padding:0;
	margin:0;
	display:flex;
	justify-content:center;
}
.site-footer ul li{
	margin-left:5px;
	margin-right:5px;
	display:inline-block;
}
ul#menu-social-media-navigation li a {
	display:block;
	width:35px;
	height:35px;
	background-image:url(images/sprite-social-media.webp);
	background-size:auto 100%;
	background-repeat:no-repeat;
	background-position:left center;
	text-indent:-9999px;
}
ul#menu-social-media-navigation li.instagram a {
	background-position:-35px center;
}
ul#menu-social-media-navigation li.facebook a {
	background-position:-70px center;
}


/* Popup---------------------------------------------------------------------------------------------------- */
#popup{
	position:fixed;
	width:100%;
	height:100vh;
	background-color:#eb4c39;
	left:0;
	top:0;
	z-index:9999;
	display:none;
	overflow-y:scroll;
}
#popup .wrap{
	max-width:600px;
	height:90%;
	margin-top:5%;
	position:relative;
}
#popup .widgettitle{
	font-weight:bold;
	color:#fff;
	text-align:center;
	display:block;
	margin-bottom:25px;
	font-size:45px;
	line-height:50px;
}
#popup .gform_wrapper.gravity-theme .gfield_label, #popup .gform_wrapper.gravity-theme .ginput_complex label, #popup .gform_wrapper.gravity-theme .ginput_complex legend{
	display:none;
}
body #popup .gform_wrapper div.gfield, body #popup .gform_wrapper fieldset{
	margin-bottom:0px!important;
}
#popup .gform_wrapper.gravity-theme .gform_footer input{
	margin-left:auto;
	margin-right:auto;
	border-color:#fff;
	color:#fff;
}
#popup .gform_wrapper.gravity-theme .gform_footer input:hover{
	background-color:#111;
	border-color:#111;
}
#popup .close-popup{
	position:absolute;
	top:-40px;
	right:0;
	width:30px;
	height:30px;
	display:block;
	background-image:url(images/icon-close.webp);
	background-size:cover;
	text-indent:-99999px;
	cursor:pointer;
}

/* ------------------------------------------------------------------------------------------------------------------ */
/* Media Queries ---------------------------------------------------------------------------------------------------- */
/* ------------------------------------------------------------------------------------------------------------------ */

@media only screen and (max-width: 1520px) {
	ul.project-categories li a span{
		width:75%;
	}
}

@media only screen and (max-width: 1320px) {
	.nav-primary{
		width:75%;
	}
	#welcome section:first-of-type::after{
		bottom:120px;
		right:-30px;
	}
	#welcome section:last-of-type{
		width:50%;
		margin-right:0;
	}
	#featured-projects .wrap{
		width:95%;
		max-width:95%;
	}
	.scroller-wrapper article span{
		width:80%;
	}
}

@media only screen and (max-width: 1220px) {
	#welcome .wrap{
		width:95%;
		max-width:95%;
		margin-left:auto;
		margin-right:auto;
	}
	#welcome section:first-of-type::after{
		bottom:250px;
	}
	.scroller-wrapper article span{
		width:100%;
	}
	ul.project-categories li{
		flex: 0 0 48%;
	}
	ul.project-categories li a{
		height:400px;
	}
	article.project .image{
		flex: 0 0 50%;
	}
	body.full-width .wp-block-media-text .wp-block-media-text__content{
		padding-right:20%;
	}
	body.full-width .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{
		padding-left:20%;
	}
	#popup .wrap{
		margin-top:60px;
	}
}

@media only screen and (max-width: 1023px) {
	.show-menu,
	.nav-primary ul li.mobile{
		display: block;
	}
	.show-menu, .close-menu{
		position: absolute;
		top:23px;
		right: 30px;
		width: 35px;
		height: 35px;
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center center;
		text-indent: -99999px;
		cursor: pointer;
	}
	.show-menu{
		background-image: url(images/icon-mobile-menu.webp);
	}
	.close-menu{
		background-image: url(images/icon-close.webp);
	}
	.scrolled .show-menu{
		background-image: url(images/icon-mobile-menu-dark.webp);
	}
	.scrolled .close-menu{
		background-image: url(images/icon-close-dark.webp);
	}
	.nav-primary {
		position: fixed;
		height: 100%;
		width: 80%;
		left: -100%;
		top:0;
		background-color:#eb4c39;
		border-right: solid 1px #fff;
		overflow-y:scroll;
	}
	.nav-primary ul {
		display: block;
	}
	.nav-primary ul li.home a {
		width: 100%;
		height: 85px;
		display: block;
		background-image: url(images/logo-white-alt.webp);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center left;
		text-indent: -9999px;
		margin-top:10px;
		margin-bottom:20px;
	}
	.nav-primary ul li {
		width: 100%;
		display: block;
		height:auto;
		min-height:11vh;
		border-bottom: 1px #fff dotted;
	}
	.nav-primary ul li a,
	.scrolled .nav-primary ul li a{
		height:11vh;
		line-height:11vh;
		color: #fff;
		font-size:16px;
		display:block;
	}
	.nav-primary ul li:last-of-type a {
		background-color: transparent;
		border: none;
		padding-left: 0px;
		padding-right: 0px;
		height:11vh;
		line-height:11vh;
		margin-top: 0px;
	}
	.nav-primary ul li a:hover,
	.scrolled .nav-primary ul li a:hover, 
	.nav-primary ul li:last-of-type a:hover{
		color:#222;
	}
	#welcome section{
		width:40%;
		margin-right:5%;
	}
	#welcome section:last-of-type{
		width:55%;
	}
	#welcome .widget_media_image img{
		margin-left:-150px;
	}
	.scroller-wrapper article{
		flex: 0 0 50%;
	}
	body.full-width .wp-block-media-text .wp-block-media-text__content{
		padding-right:10%;
	}
	body.full-width .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{
		padding-left:10%;
	}
	article.team{
		flex: 0 0 47%;
	}
}

@media only screen and (max-width: 800px) {
	#home-hero .wrap section{
		left:calc(50% - 260px);
	}
	#home-hero h2{
		margin-left:auto;
		margin-right:auto;
	}
	#home-hero .button{
		width:48%;
		padding:0;
		margin-left:1%;
		margin-right:1%;
		text-align:center;
	}
	#welcome .wrap{
		display:block;
	}
	#welcome section,
	#welcome section:last-of-type{
		width:100%;
		margin-right:0;
	}
	#welcome .widget_media_image img{
		margin-left:0px;
	}
	#welcome section:first-of-type::before{
		top:-2.5px;
	}
	#welcome section:first-of-type::after{
		bottom:2.5px;
	}
	article.project{
		display:block;
		padding-top:20px;
	}
	article.project .image{
		width:100%;
		height:300px;
	}
	article.project h2{
		margin-top:0px;
	}
	.content{
		padding-top:50px;
		padding-bottom:50px;
	}
	.wp-block-media-text.is-stacked-on-mobile {
		grid-template-columns: 100% !important;
	}
	body.full-width .wp-block-media-text{
		padding-top:0px;
		padding-bottom:30px;
	}
	body.full-width .wp-block-media-text .wp-block-media-text__content,
	body.full-width .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{
		padding-top:25px;
		padding-bottom:25px;
		padding-left:2.5%;
		padding-right:2.5%;
	}
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media {
		grid-column: 1;
		grid-row: 1;
	}
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
		grid-column: 1;
		grid-row: 2;
	}
	#footer-cta .wrap{
		display:block;
	}
	#footer-cta section{
		width:96%;
		margin-bottom:50px;
	}
	#footer-cta .widgettitle{
		text-align:center;
	}
	#footer-cta .textwidget{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	#footer-cta .textwidget p{
		flex: 0 0 30%;
	}
}

@media only screen and (max-width: 680px) {
	#home-hero{
		min-height:700px;
	}
	#home-hero .wrap section{
		width:100%;
		left:0;
	}
	#home-hero h2{
		max-width:100%;
		font-size:85px;
		line-height:75px;
	}
	#home-hero h2 span:first-of-type{
		margin-bottom:-35px;
	}
	#home-hero h2 span{
		line-height:75px;
	}
	.scroller-wrapper article{
		flex: 0 0 100%;
	}
	#welcome,
	#featured-projects{
		padding-top:50px;
		padding-bottom:50px;
	}
	.page-title .headline{
		width:100%;
	}
	.page-title h1{
		display:block;
		text-align:center;
		font-size:10vw;
		line-height:10.5vw;
	}
	.page-title .subline{
		max-width:100%;
		text-align:center;
	}
	ul.project-categories li{
		flex: 0 0 100%;
		margin-left:auto;
		margin-right:auto;
	}
	article.team{
		flex: 0 0 97%;
	}
	#footer-cta .textwidget p{
		flex: 0 0 100%;
		text-align:center;
	}
	#footer-cta section:first-of-type strong{
		max-width:100%;
		text-align:center;
	}
	#footer-cta .gform_wrapper .gform_footer input[type="submit"]{
		margin-left:auto;
		margin-right:auto;
	}
}

@media only screen and (max-width: 480px) {
	.show-menu, .close-menu{
		right:20px;
	}
	#home-hero{
		min-height:600px;
	}
	#home-hero h2{
		font-size:70px;
		line-height:60px;
	}
	#home-hero h2 span:first-of-type{
		margin-bottom:-50px;
	}
	#home-hero h2 span{
		line-height:60px;
	}
	#home-hero .button{
		width:100%;
		margin-left:auto;
		margin-right:auto;
		margin-bottom:8px;
	}
	#featured-projects .widgettitle{
		font-size:10vw;
		line-height:11vw;
	}
	.page-title .subline{
		font-size:18px;
		line-height:26px;
	}
}
