/*
Theme Name: iCreate Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.2.5
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/


:root {
  --v-space: 20px;
  --h-space: 30px;
  --h-space-half: 15px;
}

.e-con {
  --col-1: calc(100% * (1 / 12));
  --col-2: calc(100% * (2 / 12));
  --col-3: calc(100% * (3 / 12));
  --col-4: calc(100% * (4 / 12));
  --col-5: calc(100% * (5 / 12));
  --col-6: calc(100% * (6 / 12));
  --col-7: calc(100% * (7 / 12));
  --col-8: calc(100% * (8 / 12));
  --col-9: calc(100% * (9 / 12));
  --col-10: calc(100% * (10 / 12));
  --col-11: calc(100% * (11 / 12));
  --col-12: 100%;
  --col-width-1: calc(var(--container-max-width) * (1 / 12));
  --col-width-2: calc(var(--container-max-width) * (2 / 12));
  --col-width-3: calc(var(--container-max-width) * (3 / 12));
  --col-width-4: calc(var(--container-max-width) * (4 / 12));
  --col-width-5: calc(var(--container-max-width) * (5 / 12));
  --col-width-6: calc(var(--container-max-width) * (6 / 12));
  --col-width-7: calc(var(--container-max-width) * (7 / 12));
  --col-width-8: calc(var(--container-max-width) * (8 / 12));
  --col-width-9: calc(var(--container-max-width) * (9 / 12));
  --col-width-10: calc(var(--container-max-width) * (10 / 12));
  --col-width-11: calc(var(--container-max-width) * (11 / 12));
  --col-width-12: var(--container-max-width);
}


/*********************************
TYPOGRAPHY
**********************************/

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: var(--v-space);
}

a.elementor-button:hover {
  text-decoration: none;
}

.elementor-widget-text-editor ul,
.elementor-widget-text-editor ol {
  margin-bottom: var(--v-space);
}

.elementor-widget-text-editor .elementor-widget-container > *:last-child,
.elementor-widget-text-editor .elementor-text-editor > *:last-child,
.elementor-widget-theme-post-content > .elementor-widget-container > *:last-child {
  margin-bottom: 0;
}


/*********************************
COLUMNS
**********************************/

.site-width-1 {
  --width: min(var(--col-1), var(--col-width-1));
}

.site-width-2 {
  --width: min(var(--col-2), var(--col-width-2));
}

.site-width-3 {
  --width: min(var(--col-3), var(--col-width-3));
}

.site-width-4 {
  --width: min(var(--col-4), var(--col-width-4));
}

.site-width-5 {
  --width: min(var(--col-5), var(--col-width-5));
}

.site-width-6 {
  --width: min(var(--col-6), var(--col-width-6));
}

.site-width-7 {
  --width: min(var(--col-7), var(--col-width-7));
}

.site-width-8 {
  --width: min(var(--col-8), var(--col-width-8));
}

.site-width-9 {
  --width: min(var(--col-9), var(--col-width-9));
}

.site-width-10 {
  --width: min(var(--col-10), var(--col-width-10));
}

.site-width-11 {
  --width: min(var(--col-11), var(--col-width-11));
}

.site-width-12 {
  --width: min(var(--col-12), var(--col-width-12));
}

.stretch-width-1 {
  --width: max(var(--col-1), (50% - var(--col-width-5)));
}

.stretch-width-2 {
  --width: max(var(--col-2), (50% - var(--col-width-4)));
}

.stretch-width-3 {
  --width: max(var(--col-3), (50% - var(--col-width-3)));
}

.stretch-width-4 {
  --width: max(var(--col-4), (50% - var(--col-width-2)));
}

.stretch-width-5 {
  --width: max(var(--col-5), (50% - var(--col-width-1)));
}

.stretch-width-6 {
  --width: min(var(--col-6), 50%);
}

.stretch-width-7 {
  --width: min(var(--col-7), (50% + var(--col-width-1)));
}

.stretch-width-8 {
  --width: min(var(--col-8), (50% + var(--col-width-2)));
}

.stretch-width-9 {
  --width: min(var(--col-9), (50% + var(--col-width-3)));
}

.stretch-width-10 {
  --width: min(var(--col-10), (50% + var(--col-width-4)));
}

.stretch-width-11 {
  --width: min(var(--col-11), (50% + var(--col-width-5)));
}

.stretch-width-12 {
  --width: min(var(--col-12), (50% + var(--col-width-6)));
}

.col-pad-left {
  --margin-inline-start: min(var(--col-1), var(--col-width-1));
}

.col-pad-right {
  --margin-inline-end: min(var(--col-1), var(--col-width-1));
}

.remove-gap-left .elementor-widget-container {
  margin-left: calc(var(--h-space-half) * -1);
}

.remove-gap-right .elementor-widget-container {
  margin-right: calc(var(--h-space-half) * -1);
}

@media (max-width: 767px) {
  .remove-gap-left .elementor-widget-container {
    margin-left: 0;
  }

  .remove-gap-right .elementor-widget-container {
    margin-right: 0;
  }
}


/*********************************
IMAGES/MEDIA
**********************************/

.elementor-widget-image a {
	display: block;
}

.elementor-widget-jet-inline-svg .jet-inline-svg,
.elementor-widget-icon .elementor-icon {
    vertical-align: middle;
}

.icon-dynamic-size .elementor-icon svg {
    height: 1em;
    width: auto;
}

.elementor-widget-image.full-height-image,
.elementor-widget-image.full-height-image .elementor-widget-container,
.elementor-widget-image.full-height-image .elementor-widget-container > a,
.elementor-widget-image-carousel.full-height-image,
.elementor-widget-image-carousel.full-height-image .elementor-widget-container,
.elementor-widget-image-carousel.full-height-image .swiper,
.elementor-widget-image-carousel.full-height-image .swiper-wrapper,
.elementor-widget-image-carousel.full-height-image .swiper-slide,
.elementor-widget-image-carousel.full-height-image .swiper-slide-inner {
    height: 100%;
}
.elementor-widget-image.full-height-image .elementor-widget-container img,
.elementor-widget-image-carousel.full-height-image .swiper-slide img {
    min-height: 100%;
    object-fit: cover;
    object-position: center;
}

/* .image-aspect-1-1 .elementor-widget-container,
.image-aspect-4-3 .elementor-widget-container,
.image-aspect-3-2 .elementor-widget-container,
.image-aspect-5-3 .elementor-widget-container,
.image-aspect-16-9 .elementor-widget-container,
.image-aspect-3-4 .elementor-widget-container,
.image-aspect-2-3 .elementor-widget-container {
  position: relative;
  z-index: 1;
  width: 100%;
}

.image-aspect-1-1 img,
.image-aspect-4-3 img,
.image-aspect-3-2 img,
.image-aspect-5-3 img,
.image-aspect-16-9 img,
.image-aspect-3-4 img,
.image-aspect-2-3 img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  object-fit: cover;
}

.image-aspect-1-1 .elementor-widget-container {
  padding-top: 100%;
}

.image-aspect-4-3 .elementor-widget-container {
  padding-top: 75%;
}

.image-aspect-3-2 .elementor-widget-container {
  padding-top: 66.666%;
}

.image-aspect-5-3 .elementor-widget-container {
  padding-top: 60%;
}

.image-aspect-16-9 .elementor-widget-container {
  padding-top: 56.25%;
}

.image-aspect-3-4 .elementor-widget-container {
  padding-top: 133.333%;
}

.image-aspect-2-3 .elementor-widget-container {
  padding-top: 150%;
} */

[class*="image-aspect-"] img {
    display: block;
    object-fit: cover;
}
.elementor-widget-image.image-aspect-1-1  .elementor-widget-container img { aspect-ratio: 1; }
.elementor-widget-image.image-aspect-4-3  .elementor-widget-container img { aspect-ratio: 4/3; }
.elementor-widget-image.image-aspect-3-2  .elementor-widget-container img { aspect-ratio: 3/2; }
.elementor-widget-image.image-aspect-5-3  .elementor-widget-container img { aspect-ratio: 5/3; }
.elementor-widget-image.image-aspect-5-4  .elementor-widget-container img { aspect-ratio: 5/4; }
.elementor-widget-image.image-aspect-16-9 .elementor-widget-container img { aspect-ratio: 16/9; }
.elementor-widget-image.image-aspect-3-4  .elementor-widget-container img { aspect-ratio: 3/4; }
.elementor-widget-image.image-aspect-2-3  .elementor-widget-container img { aspect-ratio: 2/3; }
.elementor-widget-image.image-aspect-3-5  .elementor-widget-container img { aspect-ratio: 3/5; }
.elementor-widget-image.image-aspect-4-5  .elementor-widget-container img { aspect-ratio: 4/5; }
.elementor-widget-image-carousel.image-aspect-1-1  .swiper-slide-inner img { aspect-ratio: 1/1; }
.elementor-widget-image-carousel.image-aspect-4-3  .swiper-slide-inner img { aspect-ratio: 4/3; }
.elementor-widget-image-carousel.image-aspect-3-2  .swiper-slide-inner img { aspect-ratio: 3/2; }
.elementor-widget-image-carousel.image-aspect-5-3  .swiper-slide-inner img { aspect-ratio: 5/3; }
.elementor-widget-image-carousel.image-aspect-5-4  .swiper-slide-inner img { aspect-ratio: 5/4; }
.elementor-widget-image-carousel.image-aspect-16-9 .swiper-slide-inner img { aspect-ratio: 16/9; }
.elementor-widget-image-carousel.image-aspect-3-4  .swiper-slide-inner img { aspect-ratio: 3/4; }
.elementor-widget-image-carousel.image-aspect-2-3  .swiper-slide-inner img { aspect-ratio: 2/3; }
.elementor-widget-image-carousel.image-aspect-3-5  .swiper-slide-inner img { aspect-ratio: 3/5; }
.elementor-widget-image-carousel.image-aspect-4-5  .swiper-slide-inner img { aspect-ratio: 4/5; }

.container-aspect-1-1  { aspect-ratio: 1; }
.container-aspect-4-3  { aspect-ratio: 4/3; }
.container-aspect-3-2  { aspect-ratio: 3/2; }
.container-aspect-5-3  { aspect-ratio: 5/3; }
.container-aspect-5-4  { aspect-ratio: 5/4; }
.container-aspect-16-9 { aspect-ratio: 16/9; }
.container-aspect-3-4  { aspect-ratio: 3/4; }
.container-aspect-2-3  { aspect-ratio: 2/3; }
.container-aspect-3-5  { aspect-ratio: 3/5; }
.container-aspect-4-5  { aspect-ratio: 4/5; }


/*********************************
MENUS
**********************************/

.elementor-widget-nav-menu ul.elementor-nav-menu--dropdown a,
.elementor-widget-nav-menu ul.elementor-nav-menu--dropdown a:focus,
.elementor-widget-nav-menu ul.elementor-nav-menu--dropdown a:hover {
  border-left-width: var(--h-space-half);
}

.elementor-widget-nav-menu .elementor-nav-menu--main ul.elementor-nav-menu--dropdown a {
  border: none;
}

.elementor-widget-nav-menu .elementor-menu-toggle {
  padding: 0;
}


/*********************************
FORMS
**********************************/

:is(.gform_wrapper.gravity-theme, .fa-form .wForm) :is(
	input[type=date],
	input[type=datetime-local],
	input[type=datetime],
	input[type=email],
	input[type=month],
	input[type=number],
	input[type=password],
	input[type=search],
	input[type=tel],
	input[type=text],
	input[type=time],
	input[type=url],
	input[type=week],
	select,
	textarea
),
.eael-gravity-form .gform_wrapper.gravity-theme textarea {
	padding-top: var(--input-padding-top);
	padding-bottom: var(--input-padding-bottom);
	padding-left: var(--input-padding-left);
	padding-right: var(--input-padding-right);
	
	font-family: var(--input-font-family);
    font-size: var(--input-font-size);
    line-height: var(--input-line-height);
    font-weight: var(--input-font-weight);
    font-style: var(--input-font-style);
    text-transform: var(--input-text-transform);
    text-decoration: var(--input-text-decoration);
    letter-spacing: var(--input-letter-spacing);
    word-spacing: var(--input-word-spacing);
    
    color: var(--input-color);
    background-color: var(--input-background-color);
	border-style: solid;
	border-color: var(--input-border-color);
    border-top-width: var(--input-border-top);
    border-bottom-width: var(--input-border-bottom);
    border-left-width: var(--input-border-left);
    border-right-width: var(--input-border-right);
	border-radius: var(--input-border-radius);
}
:is(.gform_wrapper.gravity-theme, .fa-form .wForm) :is(
	input[type=date]:focus,
	input[type=datetime-local]:focus,
	input[type=datetime]:focus,
	input[type=email]:focus,
	input[type=month]:focus,
	input[type=number]:focus,
	input[type=password]:focus,
	input[type=search]:focus,
	input[type=tel]:focus,
	input[type=text]:focus,
	input[type=time]:focus,
	input[type=url]:focus,
	input[type=week]:focus,
	select:focus,
	textarea:focus
),
.eael-gravity-form .gform_wrapper.gravity-theme textarea:focus {
    border-color: var(--input-border-color-active);
    background-color: var(--input-background-color-active);
}

:is(.gform_wrapper.gravity-theme, .fa-form .wForm) select {
	height: calc(
		(var(--input-font-size) * var(--input-line-height))
		+ var(--input-padding-top)
		+ var(--input-padding-bottom)
		+ var(--input-border-top)
		+ var(--input-border-bottom)
	);
}

:is(.gform_wrapper.gravity-theme, .fa-form .wForm) textarea {
    vertical-align: top;
}

:is(.gform_wrapper.gravity-theme .gfield, .fa-form .wForm) textarea.large {
    height: calc(var(--input-font-size) * var(--input-line-height) * 7);
}
:is(.gform_wrapper.gravity-theme .gfield, .fa-form .wForm) textarea.medium {
    height: calc(var(--input-font-size) * var(--input-line-height) * 5);
}
:is(.gform_wrapper.gravity-theme .gfield, .fa-form .wForm) textarea.small {
    height: calc(var(--input-font-size) * var(--input-line-height) * 3);
}


.gform_wrapper.gravity-theme .gfield--type-address .gform-grid-row {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    margin: 0;
}

.gform_wrapper.gravity-theme .gform_fields,
.gform_wrapper.gravity-theme .gfield--type-name .gform-grid-row,
.gform_wrapper.gravity-theme .gfield--type-address .gform-grid-row {
    column-gap: var(--field-col-gap);
    row-gap: var(--field-row-gap);
}

.gform_wrapper.gravity-theme .gfield--type-address .gform-grid-col {
    position: relative;
    grid-column: span 6;
}

.gform_wrapper.gravity-theme .gfield--type-name .gform-grid-col,
.gform_wrapper.gravity-theme .gfield--type-address .gform-grid-col {
    margin: 0 !important;
    padding: 0 !important;
}

.gform_wrapper.gravity-theme .gfield--type-address:not(.fields-half) .ginput_complex .ginput_full {
    grid-column: 1 / -1;
}

.gform_wrapper.gravity-theme .gfield--type-address .gf_clear {
	display: none;
}

.fa-form .wForm .oneField .label,
.gform_wrapper.gravity-theme .gfield_label,
.gform_wrapper.gravity-theme .gfield--type-name .gform-field-label,
.gform_wrapper.gravity-theme .gfield--type-address .gform-field-label {
	font-family: var(--label-font-family);
	font-size: var(--label-font-size);
	line-height: var(--label-line-height);
	font-weight: var(--label-font-weight);
	font-style: var(--label-font-style);
	text-transform: var(--label-text-transform);
	text-decoration: var(--label-text-decoration);
	letter-spacing: var(--label-letter-spacing);
	word-spacing: var(--label-word-spacing);
	
	color: var(--label-color);
    margin-bottom: var(--label-margin-bottom);
}

.gform_wrapper.gravity-theme .gform_footer,
.gform_wrapper.gravity-theme .gform_page_footer {
    margin: var(--footer-gap) 0 0 0;
    padding: 0;
}

@media (max-width: 641px) {
    /* Fix for built in gf theme css */
    .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
        line-height: var(--input-line-height);
        min-height: 0;
    }
}

@media (max-width: 640px) {
    .gform_wrapper.gravity-theme .gfield--type-address .ginput_complex span {
        grid-column: 1 / -1;
    }
}


/* FORM ASSEMBLY */

.fa-form .wFormContainer {
	max-width: none; 
	margin: 0;
}
.fa-form .wForm {
	padding: 0;
}
.fa-form .wForm form {
	display: flex;
	flex-direction: column;
    column-gap: var(--field-col-gap);
    row-gap: var(--field-row-gap);
}
.fa-form .wForm .section,
.fa-form .wForm .oneField,
.fa-form .wForm .actions {
    padding: 0;
    border: none;
	margin: 0;
}

.fa-form .wForm .section {
	display: flex;
    column-gap: var(--field-col-gap);
    row-gap: var(--field-row-gap);
}
.fa-form .wForm .section .oneField {
	flex: 1 1 100%;
}

.fa-form .wForm .oneField br {
	display: none;
}
.fa-form .wForm .oneField > * {
	display: block;
}
.fa-form .wForm .oneField .preField {
	padding: 0;
}

.fa-form .wForm .lengthIndicator {
	position: absolute;
	bottom: 100%;
	right: 0;
	left: auto !important;
	color: var(--label-color);
	opacity: .6;
}

.fa-form .wForm :focus-visible {
	outline: none;
}

.fa-form .wForm ::placeholder {
/* 	font-family: var(--label-font-family);
    font-size: var(--label-font-size);
    line-height: var(--label-line-height);
    font-weight: var(--label-font-weight);
    font-style: var(--label-font-style);
    text-transform: var(--label-text-transform);
    text-decoration: var(--label-text-decoration);
    letter-spacing: var(--label-letter-spacing);
    word-spacing: var(--label-word-spacing);
    
    color: var(--input-color); */
	opacity: 0;
}

.fa-form .wFormHeader,
.fa-form .wFormFooter {
	display: none;
}

.fa-form .wForm form > div:last-of-type {
	display: none;
}

.fa-form .wForm .lengthIndicator,
.fa-form .wForm .errMsg {
	font-family: var(--label-font-family);
/*     font-size: var(--label-font-size); */
    line-height: var(--label-line-height);
    font-weight: var(--label-font-weight);
    font-style: var(--label-font-style);
    text-transform: var(--label-text-transform);
    text-decoration: var(--label-text-decoration);
    letter-spacing: var(--label-letter-spacing);
    word-spacing: var(--label-word-spacing);
	
	font-size: calc(var(--label-font-size) * 0.8);
}


@media (max-width: 460px) {
    .fa-form .wForm .section {
		flex-direction: column;
    }
}



/* FANCY FIELDS */

.fancy-field, .fa-form .wForm .oneField {
    position: relative;
}

.fa-form .wForm .oneField > label,
.fancy-field .gfield_label,
.fancy-field.gfield--type-name .gform-field-label--type-sub,
.fancy-field.gfield--type-address .gform-field-label--type-sub {
    --label-position: calc(
	    (var(--input-font-size) * var(--input-line-height) / 2)
	    + var(--input-padding-top)
        + var(--input-border-top)
    );
    
    position: absolute;
    left: var(--input-padding-left);
    bottom: calc(100% - var(--label-position));
    margin: 0 !important;
    padding: 0 !important;
    transform: translateY(50%);
    transition: all 0.3s;
    pointer-events: none;
}

.fa-form .wForm .oneField.filling > label,
.fancy-field.filling .gfield_label,
.fancy-field.gfield--type-name span.filling .gform-field-label--type-sub,
.fancy-field.gfield--type-address span.filling .gform-field-label--type-sub {
    left: 0;
    bottom: 100%;
    transform: translateY(0);
    font-size: var(--fancy-field-active-label-size);
    pointer-events: auto;
}

.fancy-field.gfield--type-name .gfield_label,
.fancy-field.gfield--type-address .gfield_label {
    display: none;
}


/* add extra space above fancy fields when not on the first row */
.fancy-field {
    margin-top: var(--fancy-field-extra-space);
}
.fancy-field:nth-child(1 of :not(.gfield--type-honeypot)) {
	margin-top: 0;
}
@media (min-width: 641px) {
	.fancy-field:nth-child(2 of :is(.gfield--width-half, .gfield--width-third, .gfield--width-quarter)) {
		margin-top: 0;
	}
	.fancy-field:nth-child(3 of :is(.gfield--width-third, .gfield--width-quarter)) {
		margin-top: 0;
	}
	.fancy-field:nth-child(4 of :is(.gfield--width-quarter)) {
		margin-top: 0;
	}
}





/*********************************
MAPOVIS
**********************************/

.masterplan {
  width: 100%;
  display: block;
  height: calc(100vh - 136.8px);
}
@media (max-width: 1024px) {
  .masterplan {
    height: calc(100vh - 80px);
  }
}

/*Prevent logo hanging over on desktkop*/
/*
.page-template-t-masterplan .header-logo {
  min-height: 91px;
}
*/

/*Prevent logo hanging over on smaller screens*/

/* @media (max-width: 1024px) {
  .page-template-t-masterplan .header-logo {
    min-height: 62px;
  }
} */


