/* 
Theme Name: Hello Elementor Child
Template: hello-elementor
Version: 2.0.0
*/

/* Add your custom styles here */
.tnp.tnp-subscription{ margin:0 !important; position:relative;
	padding-right: 110px !important; }
.tnp-field.tnp-field-email label{ display:none;}

.tnp-field-email .tnp-email{    
	background: transparent !important;
    border: 1px solid #5C6370 !important;
    border-radius: 6px;
    color: #5C6370;
    outline: none !important;
    box-shadow: none !important;
}
.tnp-field.tnp-field-button{
	position: absolute !important;
    right: 0;
    top: 0;
	min-width:100px;
}
.tnp-field.tnp-field-button .tnp-submit{
	background: #008CE4;
    color: #fff;
    border: #008CE4 solid 1px;
    box-shadow: none;
    outline: none;
	    font-family: "Open Sans", Sans-serif;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;    
    border-radius: 6px 6px 6px 6px;
    padding: 12px 20px 12px 20px;
}

.subscrib_form .tnp-field.tnp-field-button .tnp-submit{ background: #EF7E18; border: #EF7E18 solid 1px; }
.subscrib_form .tnp-field-email .tnp-email{border: 1px solid #fff !important; color:#fff !important;}
.subscrib_form .tnp.tnp-subscription{padding-right:110px !important;}
.subscrib_form .tnp-field.tnp-field-button{ min-width:100px; }
.overlay-img {
    opacity: 1;
    transition: opacity 0.25s ease;
    cursor: pointer;
}
.overlay-img.dimmed {
    opacity: 0;
}

.map-stage.overlays-locked .overlay-img.dimmed {
    pointer-events: none;
}

.cus-map-outer{overflow:hidden;}
.map-images-wrapper {
    overflow: hidden;
    cursor: grab;
}

.map-images-wrapper .elementor-widget-image img {
    user-select: none;
    -webkit-user-drag: none;
    transform-origin: center center;
}

.subscrib_form .forminator-label, .subscrib_form .forminator-edit-module{ display:none; }
.subscrib_form .forminator-input{
	    background: transparent;
    border: 1px solid #fff !important;
    border-radius: 6px;
    color: #fff;
	outline:none !important; box-shadow:none !important;
}
.subscrib_form .forminator-row{margin:0 !important; }

.subscrib_form .forminator-row.forminator-row-last{
	    position: absolute;
    right: 0;
    top: 0;
    margin: 0;
}
.subscrib_form .forminator-custom-form{ position:relative; padding-right:120px;}
.subscrib_form .forminator-error-message,.subscrib_form .forminator-response-message{ color: #fff;  position: absolute;
    top: 100%;
    left: 0;
    font-size: 11px; }
.subscrib_form .forminator-button.forminator-button-submit{
	background: #EF7E18;
    color: #fff;
    border: #EF7E18 solid 1px;
    box-shadow: none;
    outline: none;
}
.map-links-wrapper ul li{
	flex-direction: row-reverse;
    justify-content: space-between;
	cursor:pointer;
	opacity:0.5;
}

.map-links-wrapper ul li.active, .map-links-wrapper ul li:hover{
	opacity:1;
}
.map-links-wrapper ul li .elementor-icon-list-text{
	flex:auto;
}
.map-links-wrapper ul li.active .elementor-icon-list-text{
	color:#FFCC00 !important;
}
.map-links-wrapper ul li > a{
	text-decoration:none;
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-direction:row-reverse;
	pointer-events:none;
}
.map-links-wrapper ul li > a[data-map="sub-1"] svg{ background: #fff; border-radius: 100%;  border: 1px solid #fff; }
.map-links-wrapper ul li > a[data-map="sub-2"] svg{ background: #fff; border-radius: 100%;  border: 1px solid #fff; }
.map-links-wrapper ul li > a[data-map="sub-2"] svg path{ fill: #fff;}
.map-links-wrapper ul li > a[data-map="sub-2"] svg circle{ fill: #880e24;}
.map-links-wrapper ul li > a[data-map="sub-3"] svg { background: #fff; border-radius: 100%;  border: 1px solid #fff; }
.map-links-wrapper ul li > a[data-map="sub-3"] svg circle{ fill: #fdcb13;}
.map-links-wrapper ul li > a[data-map="sub-4"] svg{ background: #fff; border-radius: 100%;  border: 1px solid #fff; }

.ftr_flower img{vertical-align:top;}
.map-images-wrapper .elementor-widget-image{cursor:pointer;}
.map_gallery_1 .swiper-wrapper{ gap:1px !important;}


.doe-form .forminator-label, .doe-form .forminator-edit-module{ display:none; }
.doe-form .forminator-input{
	    background: transparent;
    border: 1px solid #5C6370 !important;
    border-radius: 6px;
    color: #5C6370;
	outline:none !important; box-shadow:none !important;
}
.doe-form .forminator-row{margin:0 !important; }
.doe-form .forminator-field-email{ padding-left:0 !important;}
.doe-form .forminator-row.forminator-row-last{
	    position: absolute;
    right: 0;
    top: 0;
    margin: 0;
}
.doe-form .forminator-custom-form{ position:relative; padding-right:120px;}
.doe-form .forminator-error-message,.subscrib_form .forminator-response-message{ color: #5C6370;  }
.doe-form .forminator-response-message.forminator-error{ display:none;}
.doe-form .forminator-button.forminator-button-submit{
	background: #008CE4;
    color: #fff;
    border: #008CE4 solid 1px;
    box-shadow: none;
    outline: none;
}

body.home .site_header{box-shadow:none !important;}
.planing_tabs{position:relative;}
.planing_tabs .elementor-icon-list-items{    justify-content: space-around; position:relative;}
.planing_tabs .elementor-icon-list-items:after{ position:absolute; content:''; background:#fff; height:2px; left:0; right:0; bottom:6px;}
.planing_tabs .elementor-icon-list-items .elementor-icon-list-item{ flex-direction:column-reverse; gap:8px; position:relative; z-index:1; cursor:pointer; }
.planing_tabs .elementor-icon-list-items .elementor-icon-list-item:hover .elementor-icon-list-text{color:#FFCC00;}
.planing_tabs .elementor-icon-list-items .elementor-icon-list-item:hover .elementor-icon-list-icon svg{fill:#FFCC00;}
.planing_tabs .elementor-icon-list-items .elementor-icon-list-item.active .elementor-icon-list-text{color:#FFCC00;}
.planing_tabs .elementor-icon-list-items .elementor-icon-list-item.active .elementor-icon-list-icon svg{fill:#FFCC00;}
.planing_tabs.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg{margin:0; outline:5px solid #13387f; border-radius:100%;}

.timeline-tabs-title h2{ text-align:center; color:#fff; font-family: "Crimson Text", Sans-serif; font-size: 48px; font-weight: 700; }
.timeline-tabs-title h2 span{ opacity:0.10; cursor:pointer;}
.timeline-tabs-title h2 span.active{opacity:1;}
.timeline_2kfive{ display:none;}
.timeline_2ksix{ display:none;}
.timeline_2kfive.active,.timeline_2ksix.active{display:flex;}

@media only screen and (max-width: 1024px) {
	.hfe-nav-menu__align-right.hfe-submenu-icon-arrow,
	.hfe-nav-menu__align-right.hfe-submenu-icon-arrow .elementor-widget-container,
	.hfe-nav-menu.hfe-layout-horizontal.hfe-nav-menu-layout{ position:static !important;}
    .hfe-nav-menu__breakpoint-tablet .hfe-nav-menu__layout-horizontal, .hfe-nav-menu__breakpoint-tablet .hfe-nav-menu__layout-vertical {
          position: absolute !important; top:100% !important; right:0 !important; left:0 !important;
    }
	.map-images-wrapper{bottom:0;}
	.map-images-wrapper .elementor-widget-image{ height:100%;}
	.timeline-tabs-title h2{ font-size:32px;}	
}





/* Map version 2.0 starts */
.project-map{
    display:flex;
    border-radius:32px;
    overflow:hidden;
}

.project-sidebar{
    width:420px;
    background:#0f3b88;
    padding:40px;
}
.project-sidebar h2{
	    font-family: "Crimson Text", Sans-serif;
    font-size: 48px;
    font-weight: 700;
    color: #FFFFFF;
}

.project-menu{
    list-style:none;
    padding:0;
    margin:30px 0;
}

.project-menu li{
    padding:15px 0;
    border-bottom:2px solid rgba(255,255,255,.2);
    cursor:pointer;
	color:#fff;
	font-size:13px;
	text-transform:uppercase;
	font-weight:bold;	
	opacity:0.5;
}
.project-menu li:hover{
	opacity:1;
}
.project-menu li.active{
	opacity:1;
	color:#FFCC00;
	border-color:#FFCC00;
}
.project-menu li.has-children{ border-bottom:none; padding-bottom:0;}

.sub-menu{
    margin-top:15px;
	list-style:none;
	padding:0;
}

.sub-menu li{
    padding-left:0;
	border-top:2px solid rgba(255,255,255,1);
	border-bottom:0;
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.sub-menu li span img{
	max-width:20px;
}
.map-overlay{position:absolute; }
.map-overlay[data-overlay="college"]{ max-width: 300px;  left: 63%; top: 17%; }
.map-overlay[data-overlay="theater"]{max-width: 200px;  left: 50%;  top: 35%;}
.map-overlay[data-overlay="mfa"]{ max-width: 300px;  left: 38%;  top: 26%;}
.map-overlay[data-overlay="parking"]{ max-width: 120px; left: 22%; top: 40%;}
.map-overlay[data-overlay="lagewaard"]{ max-width: 200px; left: 51%; top: 40%; }

.map-viewer{
    flex:1;
    position:relative;
    overflow:hidden;
}

.map-stage{
    width:100%;
    height:100%;
    overflow:hidden;
    position:relative;   
}
.map-image{ height:100% !important; object-fit:cover; width:100% !important;}
.map-image,
.map-overlay{
    position:absolute;
    top:0;
    left:0;
    transform-origin:center center;
}

.map-overlay{   
    z-index:2;
	cursor:pointer;
}

.map-controls{
    position:absolute;
    right:20px;
    top:20px;
    z-index:100;
}



.map-popover {
    position: absolute;
    bottom: 32px;
    left: 50%;
    transform: translateX(-50%);
    width: 300px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18), 0 2px 8px rgba(0,0,0,0.10);
    padding: 28px 24px 22px;
    z-index: 100;
    animation: popoverIn 0.22s cubic-bezier(.4,0,.2,1);
}

@keyframes popoverIn {
    from { opacity: 0; transform: translateX(-50%) translateY(12px); }
    to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}

.map-popover__close {
    position: absolute;
    top: 10px;
    right: 14px;
    background: none;
    border: none;
    font-size: 22px;
    line-height: 1;
    color: #888;
    cursor: pointer;
    transition: color 0.15s;
}
.map-popover__close:hover { color: #222; }

.map-popover__icon {
    width: 48px;
    height: 48px;
    margin-bottom: 12px;
}
.map-popover__icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.map-popover__title {
    font-size: 20px;
    font-weight: 700;
    margin: 0 0 5px;
    color: #333;
    font-family: "Crimson Text", Sans-serif;
}

.map-popover__desc {
    font-size: 14px;
    color: #5C6370;
    line-height: 1.55;
    margin: 0 0 10px;
}

.map-popover__btn {
    display: inline-block;
    padding: 6px 14px;
    border: 2px solid #008CE4;
    border-radius: 6px;
    color: #008CE4;
    text-decoration: none;
    font-weight: 500;
    font-size: 14px;
    text-decoration: none !important;
    transition: background 0.18s;
}
.map-popover__btn:hover { background: #008ce414; border: 2px solid #008CE4; color: #008CE4; }

@media screen and (max-width:1023px){
	.project-menu{margin:0;}
	.project-sidebar h2 {
		font-size: 32px;
		margin-bottom: 10px;
		margin-top: 0;
	}
	.map-viewer{ height: 460px; width:100%; flex: auto; border-radius: 0 0 20px 20px; }
	.project-map{ border-radius:20px 20px 0 0 ;}
	.project-sidebar{width:100%; padding: 25px;}
	.project-map{flex-wrap:wrap; flex-direction: column;}
	

	.map-overlay[data-overlay="parking"] {
		max-width: 75px;
		left: 16%;
		top: 38%;
	}
	.map-overlay[data-overlay="mfa"] {
		max-width: 180px;
	}
	.map-overlay[data-overlay="theater"]{
		max-width: 110px;
	}
	.map-overlay[data-overlay="college"]{
		max-width: 120px;
	}
}
@media screen and (max-width:991px){
	.map-viewer{ height: 260px; }
	.map-popover__desc{font-size:10px; line-height: 1.3; padding-right: 20px; margin-bottom:5px; }
	.map-popover__btn{font-size:10px;  padding: 2px 5px; border-radius: 3px;  border-width: 1px;}
	.map-popover{width:90%; max-width:250px; bottom:10px; padding:10px; border-radius:8px; }
}
/* Map version 2.0 ends */