/*
Table of Contents
1. Generic ----------------------------------------
01. Fonts -------------------------------------
02. Base --------------------------------------
03. Helpers -----------------------------------
2. Page Sections ----------------------------------
01. Wrapper -----------------------------------
02. Header ------------------------------------
03. Main Content ------------------------------
04. Footer ------------------------------------
*/

/* ==========================================================================
I. Generic
========================================================================== */

/* ------------------------------------------------------------
Fonts
------------------------------------------------------------ */


/* ------------------------------------------------------------
Base
------------------------------------------------------------ */
:root {
    --green: #053937;
    --yellow: #F0D2A8;
	--brown: #CEA16D;
    --black: #000000;
    --white: #ffffff;
}

html {
	color: #000000;
	font-size: 10px;
	line-height: 1.5;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

::-ms-clear {
	display: none;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
}

input,
select,
input[type="search"] {
	-webkit-appearance: none;
	border-radius: 0;
	box-shadow: none;
}

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

textarea {
	resize: vertical;
}

img {
	max-width: 100%;
}

.elementor-widget-image .elementor-image>a img[src$=".svg"], 
.elementor-widget-image .elementor-image figure>a img[src$=".svg"]{
	width: auto !important;
}
.elementor-widget-image a img[src$=".svg"] {
    width: auto !important;
}

body p,
.elementor-widget-container,
.elementor-image-box-description {
	font-size: inherit;
	font-family: inherit;
	line-height: inherit;
	color: inherit;
	font-weight: inherit;
}

.elementor-text-editor p {
	font-size: inherit;
	font-family: inherit;
	color: inherit;
	line-height: inherit;
	font-weight: inherit;
	text-transform: inherit;
}

.elementor a,
a {
	font-family: inherit;
	font-weight: inherit;
	text-decoration: underline;
	color: #137CA6;
	font-size: inherit;
	transition: all 0.3s;
}

.elementor p a {
	font-weight: 700;
	text-decoration: underline;
}

.elementor a:hover,
a:hover {
	text-decoration: none;
	color: #137CA6;
}


body a,
body p a {
	color: #137CA6;
	text-decoration: underline;
	font-weight: 700;
}

body a,
body p a:hover {
	color: #137CA6;
	text-decoration: none;
}

/* / =----------------------------UL/OL---------------------------- / */

.site-main ul:not([class]) {
	font-size: inherit;
	list-style: none;
}

.site-main ol {
	list-style: decimal outside;
	font-size: inherit;
	padding-left: 18px;
}

body .site-main ul:not([class]) li,
body .site-main ul:not([class]) li ol li ul:not([class]) li {
	font-size: inherit;
    line-height: 1.43;
    font-family: inherit;
    font-weight: inherit;
    color: inherit;
    margin-bottom: 9px;
    padding-left: 24px;
    position: relative;	
}

.site-main ol li,
.site-main ul:not([class]) li ol li {
	font-size: inherit;
    line-height: 1.43;
    font-family: inherit;
    font-weight: inherit;
    color: inherit;
    margin-bottom: 9px;
    padding-left: 4px;
    position: relative;
}

.site-main ol ol,
.site-main ul:not([class]) ul:not([class]),
.site-main ol ul:not([class]),
.site-main ul:not([class]) ol {
	margin-bottom: 0;
	margin-left: 0px;
	margin-top: 10px;
	margin-bottom: 10px;
}

.site-main ul:not([class]):not(.elementor-editor-element-settings):not(.elementor-select-preset-list):not(.gform_fields) {
	margin-left: 0;
	padding-left: 0;
}

.site-main ul:not([class]):not(.elementor-editor-element-settings):not(.elementor-select-preset-list):not(.gform_fields):not(.camps_and_programs) li:before,
.site-main ul:not([class]) li ol li ul:not([class]) li:after {
    content: "";
    display: inline-block;
    background-color: #F68C1E;
    position: absolute;
    left: 10px;
    top: 9px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
}

.site-main ol li::marker, 
.site-main ul:not([class]) li ol li::marker{
    font-weight: 600;
    color: #F68C1E;
}

.site-main ul:not([class]) ol li::before {
	display: none !important;
}



/* / =----------------------------UL/OL---------------------------- / */

h1[class],
h2[class],
h3[class],
h4[class],
h5[class],
h6[class],
h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child,
ul:last-child,
ol:last-child,
dl:last-child,
table:last-child,
blockquote:last-child {
	margin-bottom: 0;	
}

body {
	margin: 0;
	padding: 0;
	color: rgba(71, 71, 71, 0.8);
	font-family: "Rubik", Arial, Helvetica, sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 32px;
	background-color: #F2F2F3;
}

.elementor-cta--skin-classic .elementor-cta__content-item{
	color: rgba(71, 71, 71, 0.8);
}

body .elementor-widget-heading h1.elementor-heading-title,
body h1,
body .h1, 
body .elementor-widget-heading.h1 .elementor-heading-title, 
h1.elementor-cta__title.elementor-cta__content-item {
	font-family: "Rubik", Arial, Helvetica, sans-serif;
    font-size: 74px;
    font-weight: 800;
	line-height: 1.351351; /* 100px */
	letter-spacing: -0.02em;
}

body .elementor-widget-heading h2.elementor-heading-title,
body h2,
body .h2, 
body .elementor-widget-heading.h2 .elementor-heading-title, 
h2.elementor-cta__title.elementor-cta__content-item,
body .elementor-image-box-content h2.elementor-image-box-title,
.elementor-posts .elementor-post__card h2.elementor-post__title,
.elementor-posts h2.elementor-post__title {
	font-family: "Rubik", Arial, Helvetica, sans-serif;
    font-size: 60px;
    font-weight: 800;
	line-height: 1.333333; /* 80px */
	letter-spacing: -0.02em;
}

body .elementor-widget-heading h3.elementor-heading-title,
body h3,
body .h3, 
body .elementor-widget-heading.h3 .elementor-heading-title, 
h3.elementor-cta__title.elementor-cta__content-item,
body .elementor-image-box-content h3.elementor-image-box-title,
.elementor-posts .elementor-post__card h3.elementor-post__title,
.elementor-posts h3.elementor-post__title {
	font-family: "Rubik", Arial, Helvetica, sans-serif;
    font-size: 40px;
    font-weight: 800;
	line-height: 1.3; /* 52px */
	letter-spacing: -0.02em;
}

body .elementor-widget-heading h4.elementor-heading-title,
body h4,
body .h4, 
body .elementor-widget-heading.h4 .elementor-heading-title, 
h4.elementor-cta__title.elementor-cta__content-item,
body .elementor-image-box-content h4.elementor-image-box-title,
.elementor-posts .elementor-post__card h4.elementor-post__title,
.elementor-posts h4.elementor-post__title {
	font-family: "Rubik", Arial, Helvetica, sans-serif;
    font-size: 32px;
    font-weight: 800;
	line-height: 1.25; /* 40px */
	/* letter-spacing: -0.02em; */
}

body .elementor-widget-heading h5.elementor-heading-title,
body h5,
body .h5, 
body .elementor-widget-heading.h5 .elementor-heading-title, 
h5.elementor-cta__title.elementor-cta__content-item,
body .elementor-image-box-content h5.elementor-image-box-title,
.elementor-posts .elementor-post__card h5.elementor-post__title,
.elementor-posts h5.elementor-post__title {
	font-family: "Rubik", Arial, Helvetica, sans-serif;
    font-size: 28px;
    font-weight: 800;
	line-height: 1.428571; /* 40px */
	letter-spacing: -0.02em;
}


body .elementor-widget-heading h6.elementor-heading-title,
body h6,
body .h6, 
body .elementor-widget-heading.h6 .elementor-heading-title, 
h6.elementor-cta__title.elementor-cta__content-item,
body .elementor-image-box-content h6.elementor-image-box-title,
.elementor-posts .elementor-post__card h6.elementor-post__title,
.elementor-posts h6.elementor-post__title {
	font-family: "Rubik", Arial, Helvetica, sans-serif;
    font-size: 24px;
    font-weight: 700;
	line-height: 1.6666667; /* 40px */
	/* letter-spacing: -0.02em */
}

body .large-text .elementor-text-editor, 
body .large-text .elementor-text-editor p{
    font-size: 20px;
    line-height: 32px;
    font-weight: 500;
}

/* ------------------------------------------------------------
Helpers
------------------------------------------------------------ */

.invisible {
	visibility: hidden !important;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
	-webkit-appearance: none;
}

/* / --------Button style------------ / */

body .elementor-widget-button [type="button"]:not(.gm-control-active),
body .elementor-widget-button [type="submit"]:not(.adminbar-button),
body .elementor-button,
body .elementor-widget-button .elementor-button,
body .elementor-widget-button [type="button"]:not(.gm-control-active):focus,
body .elementor-widget-button [type="button"]:not(.gm-control-active),
body .elementor-widget-button [type="submit"]:not(.adminbar-button):focus,
body .elementor-widget-button button:not(.gm-control-active):focus,
body .elementor-widget-button button:not(.gm-control-active),
body .elementor-widget-button .elementor-cta .elementor-cta__button.elementor-button,
body .elementor-widget-button .elementor-kit-7 .elementor-button:focus,
body .elementor-widget-button .elementor-cta--skin-classic .elementor-cta__button.elementor-button{
	color: var(--yellow);
    background-color: var(--green);
    font-size: 18px;
    line-height: 32px;
    padding: 10px 24px 10px;
    font-weight: 700 !important;
    border: 0;
    border-left: 4px solid var(--yellow);
    display: inline-block;
    text-decoration: none;
    cursor: pointer;
    text-align: center;
    border-radius: 0px;
    -webkit-appearance: none;
    transition: all 0.3s;
    box-sizing: border-box;
    font-family: "Rubik", Arial, Helvetica, sans-serif;
    max-width: 100%;
    position: relative;
}

.elementor-button:after,
[type="button"]:after {
	content: "";
	width: 130px;
	display: block;
	max-width: 100%;
}

body .elementor-widget-button [type="button"]:not(.gm-control-active):hover,
body .elementor-widget-button [type="submit"]:not(.adminbar-button):hover,
body .elementor-widget-button .elementor-button:hover,
body .elementor-button:hover,
body .elementor-widget-button [type="button"]:not(.gm-control-active):focus:hover,
body .elementor-widget-button [type="button"]:not(.gm-control-active):hover,
body .elementor-widget-button [type="submit"]:not(.adminbar-button):focus:hover,
body .elementor-widget-button button:not(.gm-control-active):focus:hover,
body .elementor-widget-button button:not(.gm-control-active):hover,
body .elementor-widget-button .elementor-cta .elementor-cta__button.elementor-button:hover,
body .elementor-widget-button .elementor-kit-7 .elementor-button:focus:hover,
body .elementor-widget-button .elementor-cta--skin-classic .elementor-cta__button.elementor-button:hover{
	color: var(--green);
}

body .elementor-button::before,
body .elementor-widget-button::before{
    content: '';
    width: 0;
    height: 100%;
    background-color: var(--yellow);
    position: absolute;
    left: 0;
    top: 0;
    transition: all 0.3s;
}

body .yellow-button .elementor-button::before,
body .elementor-widget-button.yellow::before{
    background-color: var(--green);
}

body .elementor-button:hover::before,
body .elementor-widget-button:hover::before{
    width: 100%;
}

body .elementor-button .elementor-button-content-wrapper{
  position: relative;
    z-index: 2;
}

.yellow-button .elementor-slides .swiper-slide-inner .elementor-slide-button,
body .elementor-widget-button.yellow-button [type="button"]:not(.gm-control-active),
body .elementor-widget-button.yellow-button [type="submit"]:not(.adminbar-button),
body .yellow-button .elementor-button,
body .elementor-widget-button.yellow-button .elementor-button,
body .elementor-widget-button.yellow-button [type="button"]:not(.gm-control-active):focus,
body .elementor-widget-button.yellow-button [type="button"]:not(.gm-control-active),
body .elementor-widget-button.yellow-button [type="submit"]:not(.adminbar-button):focus,
body .elementor-widget-button.yellow-button button:not(.gm-control-active):focus,
body .elementor-widget-button.yellow-button button:not(.gm-control-active),
body .elementor-widget-button.yellow-button .elementor-cta .elementor-cta__button.elementor-button,
body .elementor-widget-button.yellow-button .elementor-kit-7 .elementor-button:focus,
body .elementor-widget-button.yellow-button .elementor-cta--skin-classic .elementor-cta__button.elementor-button{
    color: var(--green);
    background-color: var(--yellow);
    border-color: var(--green);
}

body .elementor-widget-button.yellow-button [type="button"]:not(.gm-control-active):hover,
body .elementor-widget-button.yellow-button [type="submit"]:not(.adminbar-button):hover,
body .elementor-widget-button.yellow-button .elementor-button:hover,
body .yellow-button .elementor-button:hover,
body .elementor-widget-button.yellow-button [type="button"]:not(.gm-control-active):focus:hover,
body .elementor-widget-button.yellow-button [type="button"]:not(.gm-control-active):hover,
body .elementor-widget-button.yellow-button [type="submit"]:not(.adminbar-button):focus:hover,
body .elementor-widget-button.yellow-button button:not(.gm-control-active):focus:hover,
body .elementor-widget-button.yellow-button button:not(.gm-control-active):hover,
body .elementor-widget-button.yellow-button .elementor-cta .elementor-cta__button.elementor-button:hover,
body .elementor-widget-button.yellow-button .elementor-kit-7 .elementor-button:focus:hover,
body .elementor-widget-button.yellow-button .elementor-cta--skin-classic .elementor-cta__button.elementor-button:hover{
	background-color: var(--yellow);
	color: var(--yellow);
}

body .text-link [type="button"]:not(.gm-control-active),
body .text-link [type="submit"]:not(.adminbar-button),
body .text-link .elementor-button,
body .text-link .elementor-button:focus,
body .text-link [type="button"]:not(.gm-control-active):focus,
body .text-link [type="button"]:not(.gm-control-active),
body .text-link [type="submit"]:not(.adminbar-button):focus,
body .text-link button:not(.gm-control-active):focus,
body .text-link button:not(.gm-control-active),
body .text-link.elementor-widget-call-to-action .elementor-cta__button-wrapper .elementor-cta__button,
body .text-link.elementor-cta--skin-classic .elementor-cta__button.elementor-button {
	color: #137ca6;
    background-color: transparent;
    font-size: 20px !important;
    line-height: 24px;
    padding: 0;
    font-weight: 700 !important;
    border: none;
    display: inline-block;
    text-decoration: none;
    cursor: pointer;
    text-align: left;
    border-radius: 0;
    -webkit-appearance: none;
    transition: all 0.3s;
    box-sizing: border-box;
    font-family: "Rubik", Arial, Helvetica, sans-serif;
    text-transform: capitalize;
    max-width: 100%;
    letter-spacing: -0.02em;
}


body .text-link .elementor-button span.last,
body .text-link.elementor-widget-call-to-action .elementor-cta__button-wrapper .elementor-cta__button span.last,
body .text-link.elementor-cta--skin-classic .elementor-cta__button.elementor-button span.last,
body .arrow-btn .elementor-button span.last{
	display: inline-block;
}

body .text-link .elementor-button span.last:after,
body .text-link.elementor-widget-call-to-action .elementor-cta__button-wrapper .elementor-cta__button span.last:after,
body .text-link.elementor-cta--skin-classic .elementor-cta__button.elementor-button span.last:after,
body .arrow-btn .elementor-button span.last::after {
	content: "";
    width: 26px !important;
    height: 22px;
    display: inline-block;
    background: url("../img/link-arrow.svg") center center no-repeat;
    background-size: contain;
    margin-bottom: -5px;
    margin-left: 15px;
    transition: all 0.3s;
}

body .arrow-btn .elementor-button span.last::after{
	margin-left: 8px;
}

body .arrow-btn .elementor-button span.last::after{
	background-image: url('../img/arrow-right.svg');
}

body .arrow-btn.dark-blue .elementor-button span.last::after{
	background-image: url('../img/arrow-right-light-gray.svg');
}

body .arrow-btn.dark-blue .elementor-button:hover span.last::after{
	background-image: url('../img/arrow-right.svg');
}

body .arrow-btn.light-gray .elementor-button:hover span.last::after{
	background-image: url('../img/arrow-right-light-gray.svg');
}

body .text-link [type="button"]:not(.gm-control-active):hover,
body .text-link [type="submit"]:not(.adminbar-button):hover,
body .text-link .elementor-button:hover,
body .text-link .elementor-button:focus:hover,
body .text-link [type="button"]:not(.gm-control-active):focus:hover,
body .text-link [type="button"]:not(.gm-control-active):hover,
body .text-link [type="submit"]:not(.adminbar-button):focus:hover,
body .text-link button:not(.gm-control-active):focus:hover,
body .text-link button:not(.gm-control-active):hover,
body .text-link.elementor-widget-call-to-action .elementor-cta__button-wrapper .elementor-cta__button:hover,
body .text-link.elementor-cta--skin-classic .elementor-cta__button.elementor-button:hover {
	background-color: transparent;
	color: #137ca6;
	text-decoration: underline;
	border: none;
}

body .text-link .elementor-button:after{
    display: none !important;
}

/* body .text-link .elementor-button:hover span.last:after,
body .text-link.elementor-widget-call-to-action .elementor-cta__button-wrapper .elementor-cta__button:hover span.last:after,
body .text-link.elementor-cta--skin-classic .elementor-cta__button.elementor-button:hover span.last:after {
	border-color: #3c904b #3c904b transparent transparent !important;
} */

body .elementor-button span {
	color: inherit;
}

/* / ----------------------Button style---------------------- / */


/* .elementor-container{
max-width: 1241px;
padding-left: 30px;
padding-right: 30px;
} */

/* .elementor-section.elementor-section-boxed > .elementor-container {
width: calc(100% - 30px);
} */

.elementor-section.elementor-section-boxed > .elementor-container
.elementor-container {
  width: 100%;
}
/* ------------------------------------------------------------
Select Dropdown Custom Style
------------------------------------------------------------ */
/* gravity form select dropdowns */
.ginput_container_select .select{
	position: relative;
}

.ginput_container_select .select select,
.gfield .clear-multi .ginput_container_date .select select,
.gfield .gfield_time_ampm .select select,
body select:not([class*="ui-datepicker"]) {
	width: 100%;
    height: 50px;
    cursor: pointer;
    position: relative;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    -o-border-radius: 50px;
    border-radius: 50px;
    border: 2px solid rgb(71 71 71 / 60%);
    padding-left: 16px;
    padding-right: 16px;
    background: url(../img/arrow-down-black.svg) no-repeat center right 18px;
	background-color: #f2f2f3;
    background-size: 18px;
    padding: 12px 40px 12px 16px !important;
    margin: 0 !important;
}

body .gform_wrapper li.gfield_error .clear-multi .ginput_container_date .select {
	border-color: #e75454;
}

.s-hidden {
	display: none;
}

.styledSelect {
	padding: 10px 45px 10px 20px;
	position: relative;
	height: 50px;
	z-index: 4;
	overflow: hidden;
	text-overflow: ellipsis;
	cursor: pointer;
	border-radius: 50px !important;
	background-color: #F2F2F3;
	border: 2px solid rgb(71 71 71 / 60%);
	box-shadow: none;
	font-size: 16px !important;
	line-height: 28px;
	color: #1E2937 !important;
	text-transform: none;
	letter-spacing: 0px;
  	transition: all 0.3s;
}

.styledSelect:focus{
  	border: 2px solid #a65d43;
}

body .gform_wrapper .gfield_required {
	color: rgb(71 71 72 / 40%);
    font-weight: 400 !important;
    margin-left: 2px;
    text-transform: lowercase;
    letter-spacing: -0.3px;
}

body .gform_wrapper .gfield_time_ampm select {
	width: 80px !important;
	padding-bottom: 17px !important;
	padding-top: 17px !important;
}

/* .styledSelect.active {
  box-shadow: 0 5px 12px rgba(0, 0, 0, .15);
} */

.styledSelect:after {
	content: "";
    position: absolute;
    top: 50%;
    transform: translateY(calc(-50% + 1px));
    right: 18px;
    line-height: 1;
    width: 14px;
    height: 8px;
    background: url(../img/arrow-down-black.svg) no-repeat center;
}

.styledSelect.active:after {
	background: url("../img/arrow-down-black.svg") no-repeat center;
  transform: translateY(-50%) rotate(180deg);
}

body .options {
	display: none;
    position: absolute;
    top: calc(100% + 2px);
    right: 0;
    left: 0;
    z-index: 9;
    margin: 0 !important;
    padding: 0;
    list-style: none;
    background: #f2f2f3;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 30px;
    padding-top: 0;
    padding-bottom: 0;
    max-height: 300px;
    overflow-y: auto;
    border: 2px solid #137ca6;
    box-shadow: 0 1px 2px 0 rgb(0 0 0 / 10%);

}

body form .options li {
	margin: 0;
    padding: 10px 20px 10px;
	font-size: 16px;
	line-height: 28px;
	letter-spacing: -0.18px;
	color: #1E2937;
	text-transform: none;
	/* height: 40px; */
	cursor: pointer;
}

body form .options li:hover {
	background-color: #DBE9EE;
}

.options li::before {
	display: none !important;
}

.options li[rel=""] {
	display: none;
}

.options li.active {
	background-color: #DBE9EE;
	position: relative;
	cursor: default;
	pointer-events: none;
}

.styledSelect.noplaceholder .text-ellipses {
	color: rgba(71, 71, 71, 0.6);
}
/* ------------------------------------------------------------
End of Select Dropdown Custom Style
------------------------------------------------------------ */


/* ------------------------------------------------------------
Checkbox custom style
------------------------------------------------------------ */

/* html structure */
/* <label class="checkbox-container">One
  <input type="checkbox" checked="checked">
  <span class="checkmark"></span>
</label> */
/* end html structure */

/* Create a custom checkbox */
.checkbox-container {
	display: block;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	font-size: 22px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.checkbox-container .checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #eee;
}

/* On mouse-over, add a grey background color */
.checkbox-container:hover input~.checkmark {
	background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.checkbox-container input:checked~.checkmark {
	background-color: #2196f3;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkbox-container .checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

/* Show the checkmark when checked */
.checkbox-container input:checked~.checkmark:after {
	display: block;
}

/* Style the checkmark/indicator */
.checkbox-container .checkmark:after {
	left: 11px;
	top: 6px;
	width: 5px;
	height: 12px;
	border: solid white;
	border-width: 0 2px 2px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* ------------------------------------------------------------
End of checkbox custom style
------------------------------------------------------------ */

/* ------------------------------------------------------------
Checkbox custom style
------------------------------------------------------------ */
/* html structure */
/* <label class="radio-container">One
  <input type="radio" checked="checked" name="radio">
  <span class="checkmark"></span>
</label> */

/* The container */
.radio-container {
	display: block;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	font-size: 22px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

/* Hide the browser's default radio button */
.radio-container input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
}

/* Create a custom radio button */
.radio-container .checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #eee;
	border-radius: 50%;
}

/* On mouse-over, add a grey background color */
.radio-container:hover input~.checkmark {
	background-color: #ccc;
}

/* When the radio button is checked, add a blue background */
.radio-container input:checked~.checkmark {
	background-color: #2196f3;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.radio-container .checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

/* Show the indicator (dot/circle) when checked */
.radio-container input:checked~.checkmark:after {
	display: block;
}

/* Style the indicator (dot/circle) */
.radio-container .checkmark:after {
	top: 7px;
	left: 7.5px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: white;
}

/* ------------------------------------------------------------
End of checkbox custom style
------------------------------------------------------------ */

/* ------------------------------------------------------------
gravity form style
------------------------------------------------------------ */
html body .gform_wrapper *:focus {
	outline: none;
}

html body .gform_wrapper div.validation_error html body .gform_wrapper form {
	border: 2px solid #666;
	padding: 0;
}

html body .gform_wrapper form ul.gform_fields li.gfield {
	margin-top: 0;
	margin-bottom: 16px !important;
	border: 0;
	background: none;
	vertical-align: top;
	letter-spacing: -0.14px;
	padding-left: 0;
	padding-right: 0;
	width: 100%;
}

.gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
	max-width: 100% !important;
}

html body .gform_wrapper form ul.gform_fields li.gfield.bottom-info {
	padding-top: 0px !important;
}

html body .gform_wrapper form ul.gform_fields li.gfield .ginput_container {
	margin-top: 0 !important;
}

html body .gform_wrapper .top_label .gfield_label,
html body .gform_wrapper .gform_wrapper legend.gfield_label {
	font-family: "Rubik", Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-weight: 600;
    color: #474747;
    line-height: 24px;
	margin-bottom: 8px;
	letter-spacing: -0.5px;
	margin-top: 0 !important;
}

html body .gform_wrapper form ul.gform_fields li.gfield input[type="text"],
html body .gform_wrapper form ul.gform_fields li.gfield input[type="email"],
html body .gform_wrapper form ul.gform_fields li.gfield input[type="number"],
html body .gform_wrapper form ul.gform_fields li.gfield input[type="tel"], 
html body .gform_wrapper form ul.gform_fields li.gfield textarea {
	margin-top: 0;
    margin-bottom: 0;
    border-radius: 50px !important;
    background-color: #F2F2F3;
    border: 2px solid rgb(71 71 71 / 60%);
    box-shadow: none;
    font-size: 16px !important;
    line-height: 28px !important;
    color: #1E2937 !important;
    width: 100% !important;
    height: 40px;
    padding: 7px 20px !important;
    transition: all 0.3s;
    height: 50px;
}

html body .gform_wrapper form ul.gform_fields li.gfield input[type="text"]::-webkit-input-placeholder,
html body .gform_wrapper form ul.gform_fields li.gfield input[type="email"]::-webkit-input-placeholder,
html body .gform_wrapper form ul.gform_fields li.gfield input[type="number"]::-webkit-input-placeholder,
html body .gform_wrapper form ul.gform_fields li.gfield input[type="tel"]::-webkit-input-placeholder, 
html body .gform_wrapper form ul.gform_fields li.gfield textarea::-webkit-input-placeholder, 
html body .gform_wrapper form ul.gform_fields li.gfield .styledSelect .text-ellipses {
	color: rgba(71, 71, 71, 0.6);
}

html body .gform_wrapper form ul.gform_fields li.gfield .styledSelect .text-ellipses {
	color: rgba(71, 71, 71, 0.6) !important;
}

html body .gform_wrapper form ul.gform_fields li.gfield input[type="text"]:focus,
html body .gform_wrapper form ul.gform_fields li.gfield input[type="email"]:focus,
html body .gform_wrapper form ul.gform_fields li.gfield input[type="number"]:focus,
html body .gform_wrapper form ul.gform_fields li.gfield input[type="tel"]:focus, 
html body .gform_wrapper form ul.gform_fields li.gfield textarea:focus, 
html body .gform_wrapper form ul.gform_fields li.gfield .styledSelect.active {
	border: 2px solid #137CA6;
}

html body .gform_wrapper form ul.gform_fields li.gfield textarea {
	height: 195px;
	resize: none;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
	-webkit-box-shadow: 0 0 0 30px #ffffff inset !important;
}

/*Change text in autofill textbox*/
input:-webkit-autofill {
	-webkit-text-fill-color: #666666 !important;
}

html body .gform_wrapper form ul.gform_fields li.gfield .styledSelect .text-ellipses.valueAdded{
    color: #1E2937 !important;
}

/* html body .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]) {
	padding: 16px 15px;
	font-size: 18px;
	line-height: 1;
} */

html body .gform_wrapper form ul.gform_fields li.gfield.gfield_error:not(.top-text):not(.recaptcha-field) {
	margin-bottom: 15px !important;
}

html body .gform_wrapper form ul.gform_fields li.gfield.recaptcha-field {
	padding-top: 10px !important;
}

html body .gform_wrapper form ul.gform_fields li.gfield .ginput_container.ginput_recaptcha {
	margin-top: 0 !important;
}

html body .gform_wrapper li.gfield.gfield_error.gfield_contains_required div.gfield_description {
	font-size: 10px;
	color: #e11919;
	font-family: "Open Sans", sans-serif;
	font-weight: 400;
	padding-top: 5px;
	line-height: normal;
	letter-spacing: -0.13px;
	padding-right: 7px;
	display: none;
}

html body .gform_wrapper .validation_message {
	font-size: 10px;
	color: #e11919;
	font-family: "Open Sans", sans-serif;
	font-weight: 400;
	padding-top: 5px;
}

html body .gform_wrapper li.gfield_error .gfield_required{
    color: #d53b12;
	text-transform: capitalize;
}

html body .gform_wrapper div.validation_error {
	border: 0;
	font-size: 20px;
	color: #f02525;
	display: none;
}

html body .gform_wrapper li.gfield_error input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
html body .gform_wrapper .gform_wrapper li.gfield_error textarea, 
.gfield_error .styledSelect {
	border: 2px solid #D73F09 !important;
}


/* -------------------------------------------------------
Radio and Checkbox Styling
---------------------------------------------------------- */

html body .gform_wrapper ul.gfield_checkbox li input[type="checkbox"]:checked+label,
html body .gform_wrapper .gfield_radio li input[type="radio"]:checked+label {
	font-weight: normal;
}

html body .gform_wrapper ul.gform_fields li.gfield.gfield_error+li.gfield.gfield_error {
	margin-top: 0;
}

html body .gform_wrapper li.gfield_error div.ginput_complex.ginput_container label,
html body .gform_wrapper li.gfield_error ul.gfield_checkbox,
html body .gform_wrapper li.gfield_error ul.gfield_radio {
	color: #000;
}

html body .gform_wrapper ul.gfield_radio li {
	display: block;
	position: relative;
	margin-bottom: 12px;
	/* cursor: pointer; */
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

html body .gform_wrapper ul.gfield_radio li:before {
	display: none !important;
}

html body .gform_wrapper ul.gfield_radio li input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
}

html body .gform_wrapper ul.gfield_radio li label {
	padding-left: 40px;
    font-size: 20px;
    line-height: 24px;
    font-weight: 400;
    padding-bottom: 2px;
}

html body .gform_wrapper ul.gfield_radio li label:before {
    content: "";
    position: absolute;
    top: 3px;
    left: 0;
    height: 24px;
    width: 24px;
	border-radius: 50%;
    background-color: #f2f2f3;
    border: 2px solid #8c8c8c;
}

html body .gform_wrapper ul.gfield_radio li input~label:hover:before {
	background-color: #ccc;
}

html body .gform_wrapper ul.gfield_radio li:hover input~label {
	font-weight: normal;
}

html body .gform_wrapper ul.gfield_radio li input:checked~label:before {
	background-color: #12749B;
    border-color: #12749B;
}

html body .gform_wrapper ul.gfield_radio li label:after {
	content: "";
	position: absolute;
	display: none;
}

html body .gform_wrapper ul.gfield_radio li input:checked~label:after {
	display: block;
}

html body .gform_wrapper ul.gfield_radio li label:after {
	top: 10px;
	left: 7px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: white;
}

html body .gform_wrapper ul.gfield_checkbox li {
	display: block;
    position: relative;
    margin-bottom: 12px;
    /* cursor: pointer; */
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

html body .gform_wrapper ul.gfield_checkbox li:before {
	display: none !important;
}

html body .gform_wrapper ul.gfield_checkbox li input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
}

html body .gform_wrapper ul.gfield_checkbox li label {
	padding-left: 40px;
    font-size: 20px;
    line-height: 24px;
    font-weight: 400;
    padding-bottom: 2px;
}

html body .gform_wrapper ul.gfield_checkbox li label:before {
	content: "";
    position: absolute;
    top: 1px;
    left: 0;
    height: 24px;
    width: 24px;
    background-color: #f2f2f3;
    border: 2px solid #8c8c8c;
    border-radius: 6px;
}

html body .gform_wrapper ul.gfield_checkbox li input~label:hover:before {
	background-color: #ccc;
}

html body .gform_wrapper ul.gfield_checkbox li:hover input~label {
	font-weight: normal;
}

html body .gform_wrapper ul.gfield_checkbox li input:checked~label:before {
	background-color: #12749B;
    border-color: #12749B;
}

html body .gform_wrapper ul.gfield_checkbox li label:after {
	content: "";
	position: absolute;
	display: none;
}

html body .gform_wrapper ul.gfield_checkbox li input:checked~label:after {
	display: block;
}

html body .gform_wrapper ul.gfield_checkbox li label:after {
	left: 8px;
    top: 4px;
    width: 8px;
    height: 14px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.elementor .gm-style img {
	max-width: none;
}

html body .gform_wrapper form ul.gform_fields li.gfield.combo-name-fields {
	margin-bottom: 0 !important;
}

html body .gform_wrapper form ul.gform_fields li.gfield.combo-name-fields input {
	margin-bottom: 20px !important;
}

html body .gform_wrapper form ul.gform_fields li.gfield.combo-name-fields .ginput_container>span {
	margin-bottom: 0;
	padding-top: 0;
}

html body .gform_wrapper form ul.gform_fields li.gfield.combo-name-fields .validation_message {
	margin-top: -20px;
	margin-bottom: 20px;
}


/* ------------------------------------------------------------
gravity form Button styling
------------------------------------------------------------ */

html body .gform_wrapper form .gform_footer {
	text-align: left;
	padding: 10px 0 0;
	margin: 0;
}

html body .gform_wrapper form .gform_footer input[type="submit"] {
    color: #1E2937;
    background-color: #F68C1E;
    font-size: 20px !important;
    line-height: 32px !important;
    padding: 12px 24px 12px;
    font-weight: 700 !important;
    border: 2px solid #F68C1E;
    display: inline-block;
    text-decoration: none;
    cursor: pointer;
    text-align: center;
    border-radius: 50px;
    -webkit-appearance: none;
    transition: all 0.3s;
    box-sizing: border-box;
    font-family: "Poppins", Arial, Helvetica, sans-serif;
    max-width: 300px;
    width: 100%;
}

html body .gform_wrapper form .gform_footer input[type="submit"]:hover {
    background-color: transparent;
	color: #1E2937;
	text-decoration: none;
	border: 2px solid #F68C1E;
}

body .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half){
	max-width: 100% !important;
	padding: 0 !important;
}
html body .gform_wrapper form .gform_footer input[type="submit"] + img{
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -30px);
}

body .gform_wrapper.gform_validation_error .top_label li.gfield.gfield_error.gf_left_half, body .gform_wrapper.gform_validation_error .top_label li.gfield.gfield_error.gf_right_half{
	max-width: 50%;
	margin-right: 0 !important;
}
/* ------------------------------------------------------------
End gravity form style
------------------------------------------------------------ */

/* custom code  */

header{
    position: sticky;
    left: 0;
    top: 0;
    right: 0;
    width: 100%;
    z-index: 100;
}

body.admin-bar header{
    top: 32px !important;
}
header .logo-wrapper{
    position: relative;
}

header .logo-wrapper::before{
    content: '';
    position: absolute;
    height: 100%;
    width: 100vw;
    right: 100%;
    border: none;
    top: 0;
    left: auto;
    background-color: #F0D2A8;
}
header .logo-wrapper .elementor-widget-theme-site-logo{
	position: relative;
	top: -21px;
}

.hero-slider .swiper .swiper-wrapper .swiper-slide .swiper-slide-inner{
    max-width: 1470px;
}

.hero-slider .swiper .swiper-wrapper .swiper-slide .elementor-button{
    border: none;
    border-left: 4px solid var(--green);
}

.hero-slider .swiper .swiper-wrapper .swiper-slide .elementor-button:hover{
    background-color: var(--yellow);
}

.hero-slider .swiper .swiper-wrapper .swiper-slide .elementor-button span{
    position: relative;
    z-index: 2;
}

.hero-slider .swiper .elementor-swiper-button.elementor-swiper-button-prev{
    left: 0;
}

.hero-slider .swiper .elementor-swiper-button.elementor-swiper-button-next{
    right: 0;
}

.hero-slider .swiper .elementor-swiper-button{
    width: 40px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,0.4);
    transition: all 0.3s;
}

.hero-slider .swiper .elementor-swiper-button:hover{
    background: rgba(0,0,0,0.7)
}

.header-icon-list .elementor-icon-list-items .elementor-icon-list-item{
    position: relative;
}

.header-icon-list .elementor-icon-list-items .elementor-icon-list-item::before{
    content: '';
    width: 0;
    transition: all 0.3s;
    height: 1px;
    background-color: var(--green);
    position: absolute;
    left: 0;
    bottom: 3px;
}

.header-icon-list .elementor-icon-list-items .elementor-icon-list-item:hover::before{
    width: 100%;
}

header .main-nav nav > ul > li a::after{
    height: 4px !important;
    width: 0 !important;
    background-color: var(--green) !important;
    transition: all 0.3s !important;
}

header .main-nav nav > ul > li.current-menu-item a::after,
header .main-nav nav > ul > li a:hover::after{
    width: 100% !important;
}

.project-wrapper .project-cards .project-card:hover{
    flex: 5 !important;
}

.project-wrapper .project-cards .project-card:first-child{
    flex: 5;
}

.project-wrapper .project-cards .project-card,
.project-wrapper .project-cards:hover .project-card{
    flex: 1;
    transition: all 0.5s;
}

.newsletter-form .elementor-form-fields-wrapper{
    display: flex;
    align-items: center;
}

.newsletter-form .elementor-form-fields-wrapper .elementor-field-type-email{
    width: calc(100% - 175px);
}

.newsletter-form .elementor-form-fields-wrapper .elementor-field-type-submit{
    width: 170px;
}

.newsletter-form .elementor-form-fields-wrapper .elementor-field-type-submit button{
    padding: 8px 20px;
}

.projects-wrapper .elementor-flip-box__image,
.projects-wrapper .elementor-flip-box__image img,
.projects-wrapper .elementor-flip-box__layer__inner{
    height: 100%;
}

.projects-wrapper .elementor-flip-box__image img{
    object-fit: cover;
}

.projects-wrapper .elementor-flip-box__back .elementor-flip-box__layer__inner{
    display: flex;
    align-items: center;
}

.swiper-pagination .swiper-pagination-bullet{
    transition: all 0.3s ease-in-out;
}

.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    width: 100px;
    border-radius: 20px;
}

.our-projects .swiper .swiper-slide figure img{
    width: 100%;
    height: 600px;
    object-fit: cover;
}

.our-projects,
.our-projects .elementor-widget-image-carousel{
    position: relative;
}

.our-projects .elementor-widget-image-carousel::before{
    content: '';
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 2;
    position: absolute;
    background: rgba(0,0,0,0.5);
}

.our-projects .elementor-widget-heading{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.projects-main-wrapper .project-popup{
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease-in-out;
    padding: 20px;
    opacity: 0;
    visibility: hidden;
}

body.popup-active .projects-main-wrapper .project-popup{
    opacity: 1;
    visibility: visible;
}

.projects-main-wrapper .project-popup .project-cta .project-content{
    display: none;
}

.projects-main-wrapper .project-cta{
	cursor: pointer;
}

.projects-main-wrapper .project-popup .project-cta{
    flex-direction: row;
    max-width: 900px;
    width: 100%;
}

.projects-main-wrapper .project-popup .project-cta .elementor-widget-image{
    width: 42%;
}

.projects-main-wrapper .project-popup .project-cta .elementor-widget-image img{
    height: 450px;
}

.close-icon{
    max-width: 1000px !important;
    width: 100%;
}

.close-icon .elementor-icon-wrapper{
    display: flex;
    justify-content: flex-end;
	margin-bottom: 20px;
}

.close-icon .elementor-icon-wrapper .elementor-icon{
    cursor: pointer;
}

.project-cta .project-popup-content{
    display: none;
}

.project-popup .project-popup-content{
    display: block;
    width: 58%;
	display: flex;
    align-items: flex-start;
}

.project-cta .project-content{
    transform: translatey(-100%);
    opacity: 0;
    visibility: hidden;
    transition: all 0.7s ease-in-out;
    z-index: 2;
    transition-delay: 0.7s;
    background: transparent !important;
	bottom: 50px !important
}

.project-cta .project-content .elementor-heading-title{
    color: #ffffff;
}

.project-cta:hover .project-content{
    transform: translatey(0);
    opacity: 1;
    visibility: visible;
}

body .project-cta{
    position: relative;
}

body .project-cta::before{
	content: "" !important;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(32,28,27,0.9);
    -webkit-transform: perspective(400px) rotateX(90deg) scaleY(0.5);
    -ms-transform: perspective(400px) rotateX(90deg) scaleY(0.5);
    transform: perspective(400px) rotateX(90deg) scaleY(0.5);
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    transition-delay: 0.1s;
    transition-timing-function: 
ease-in-out;
    transition-duration: 0.5s;
    transition-property: all;
    z-index: 1;
}

body .project-cta:hover::before{
    -webkit-transform: perspective(400px) rotateX(0deg) scaleY(1);
    -ms-transform: perspective(400px) rotateX(0deg) scaleY(1);
    transform: perspective(400px) rotateX(0deg) scaleY(1);
    transition-delay: 0.1s;
    transition-timing-function: 
ease-in-out;
    transition-duration: 0.7s;
    transition-property: all;
}

.project-popup .project-cta::before{
    display: none;
}

.all-projects-wrapper .elementor-widget-n-tabs .e-n-tabs-heading{
    width: max-content;
    margin: 0 auto;
    border-radius: 10px;
    box-shadow: 0 0 5px 1px;
}

.all-projects-wrapper .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title{
    min-width: 300px !important;
    cursor: pointer;
}

.all-projects-wrapper .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title:hover,
.all-projects-wrapper .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected="true"]{
    transform: scale(1.10);
    z-index: 2;
}

.all-projects-wrapper .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title:first-child:not([aria-selected="true"]){
    border-radius: 10px 0 0 10px;
}

.all-projects-wrapper .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title:last-child:not([aria-selected="true"]){
    border-radius: 0 10px 10px 0;
}

.projects-main-wrapper .project-cta:not(.project-popup .project-cta)::after{
    content: '';
    width: 100%;
    height: 100%;
    border: 5px solid #053937;
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
}

@media screen and (max-width:1024px){
	.all-projects-wrapper .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title{
		min-width: 250px !important;
	}
}

@media screen and (max-width:767px){
	header .logo-wrapper .elementor-widget-theme-site-logo{
		top: 0;
	}
	
	.hero-slider .swiper .elementor-swiper-button{
		display: none !important;
	}
	
	.our-projects .swiper .swiper-slide figure img {
		height: 400px;
	}
	
	.projects-main-wrapper .project-popup .project-cta{
		flex-direction: column;
		flex-wrap: nowrap;
	}

	.project-popup .project-popup-content,
	.projects-main-wrapper .project-popup .project-cta .elementor-widget-image{
		width: 100%;
	}
	
	.all-projects-wrapper .elementor-widget-n-tabs .e-n-tabs-heading{
		flex-direction: column;
		width: 100%;
	}

	.all-projects-wrapper .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title{
		min-width: 100% !important;
		transform: scale(1) !important;
	}
	
	.all-projects-wrapper .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title:first-child:not([aria-selected="true"]){
		border-radius: 10px 10px 0 0;
	}
	
	.all-projects-wrapper .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title:last-child:not([aria-selected="true"]){
		border-radius: 0 0 10px 10px;
	}
	
}

@media screen and (max-width: 479px){
	.newsletter-form .elementor-form-fields-wrapper .elementor-field-type-submit{
		width: 120px;
	}

	.newsletter-form .elementor-form-fields-wrapper .elementor-field-type-submit button{
		padding: 6px 0;
	}
	
	.projects-main-wrapper .project-popup .project-cta .elementor-widget-image img {
		height: 350px;
	}

	.newsletter-form .elementor-form-fields-wrapper .elementor-field-type-email {
		width: calc(100% - 125px);
	}
	
	.our-projects .swiper .swiper-slide figure img {
		height: 350px;
	}
}