/**
Theme Name: Ecostars
Author: Ecostars
Author URI: http://wpastra.com/about/
Description: Ecostars Theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ecostars
Template: astra
*/

#open_preferences_center {
	text-align: right;
	font-size: 0.9rem;
	color: #999999;
	
	&is(:hover, :link, :visited) {
		color: #999999;
	}
}

/* >>> fix hamburger menu outline */
.ast-button-wrap .ast-mobile-menu-trigger-minimal:focus {
    border-width: 0px !important;
    outline:none;
}
.ast-mobile-popup-drawer.active .menu-toggle-close:focus {
    border-width: 0px !important;
    outline:none;
}
.ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle {
  border-width: 0px !important;
  outline:none;
}
.ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle:focus,
.ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle:hover {
  border-width: 0px !important;
  outline:none;
}
/* << fix */

.ast-theme-transparent-header:not(.ast-primary-sticky-header-active):is(.page-id-537, .page-id-179, .page-id-1760, .page-id-1993){
	& .ast-builder-menu:not(.ast-builder-menu-mobile) .main-header-menu .menu-link, 
	& [CLASS*="ast-builder-menu-"]:not(.ast-builder-menu-mobile) .main-header-menu .menu-item > .menu-link {
		color: var(--ast-global-color-2) !important;
	}
}

.ast-theme-transparent-header:is(.page-id-537, .page-id-179, .page-id-1760, .page-id-1993){
	
	& [data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {
		/* fill: var(--ast-global-color-2); */
	}

}

.menu-toggle-close {
	& svg {
		width: 40px;
    	height: 40px;
	}
}

::selection {
  background-color: #114C5A;
  color: #ffffff;
}
::-moz-selection {
  background-color: #114C5A;
  color: #ffffff;
}

.text-balance {
	text-wrap: balance;
}

/* >>> HOME - From Certification to CSRD Compliance */
.is-accordion-item {
	--cbb--item-border-top: none;
	--cbb--border-bottom: 1px solid #ffffff;
	--cbb--border-top: 1px solid #ffffff;
	--cbb--border-right: none;
	--cbb--border-left: none;
	
	& .accordion-link {
		outline: none;
	}
	
	& .accordion-header.is-expanded .accordion-link {
		border-bottom: none;
	}
}

.is-accordion-item:first-of-type {
	--cbb--item-border-top: 1px solid #ffffff;
}
/* <<< HOME - From Certification to CSRD Compliance */

/* -- Override slick carousel padding */
.page-id-179 .uagb-slick-carousel,
.page-id-1920 .uagb-slick-carousel{
	padding: 0;
	
	& .slick-arrow {
		top: 0;
		left: auto;
		right: 0;
		padding: 3px;
	}
	
	& .slick-prev {
		transform: translate(-50px, -35px);
	}
	
	& .slick-next {
		transform: translate(-10px, -35px);
	}

}
.uagb-post-grid .uagb-post__image img {
	height: 250px;
	object-fit: cover;
	border-radius: 10px;
}

/* -- */

/* -- Override header colors - glossary, resources */


.ast-theme-transparent-header:not(.ast-primary-sticky-header-active):is(.page-id-537, .page-id-179, .page-id-1760, .page-id-1993) .site-logo-img .transparent-custom-logo img,
.ast-theme-transparent-header:not(.ast-primary-sticky-header-active):is(.page-id-537, .page-id-179, .page-id-1760, .page-id-1993) .site-logo-img img {
	filter: none;
}

/* -- */

.main-header-menu .nav-main-login .menu-link {
	color: var(--ast-global-color-1) !important;
}

.wp-block-uagb-loop-search:not(.woocommerce-js) input[type=text]:focus, .wp-block-uagb-loop-search:not(.woocommerce-js) input[type=text]:where(:not([type])):focus {
	border-style: none;
}

div.wpforms-container-full input[type=submit],
div.wpforms-container-full button[type=submit],
div.wpforms-container-full .wpforms-page-button,
.wp-core-ui div.wpforms-container-full input[type=submit],
.wp-core-ui div.wpforms-container-full button[type=submit],
.wp-core-ui div.wpforms-container-full .wpforms-page-button {
	padding-left: 30px;
	padding-right: 30px;
	font-weight: 600;
	
	&:is(:hover,:active) {
		--wpforms-button-background-color-alt: #ffc801;
		background: var(--wpforms-button-background-color-alt);
		border-color: var(--wpforms-button-background-color-alt);
	}
}

.wpforms-container { 

	& .wpforms-form {
		--wpforms-field-size-input-spacing: 5px;
		
		& .wpforms-field {
			padding-top: 0;
		}
	}
}

.wpforms-container.contact-form {

	&.wpforms-container-full:not(:empty) {
		margin-top: 0;
	}

	& .wpforms-field {
		
		
		&:first-child {
			
		}
		
	}

}

.home-features {
	& h3 {
		text-wrap: balance;		
	}	
}

.home-hotels-container {
	
	& .wp-block-uagb-image__figure {
		
		& img {
			max-width: 90px;
			max-height: 45px;
			filter: grayscale(1);
		}
	}	
}

.nav-csrd-compliance.wp-block-uagb-buttons {
	
	& .wp-block-uagb-buttons-child {
		
		& a.active {
			background: #f1f6f4;
			position: relative;
			
			&:after {
				content: "";
				position: absolute;
				top: 100%;
				width: 0; 
				height: 0; 
				border-left: 10px solid transparent;
				border-right: 10px solid transparent;
				border-top: 10px solid #f1f6f4;
			}
		}
	}
	
	
	
}

.post-loop-type {
	position: absolute;
	top: 10px;
	right: 10px;
}

.entry-content {
	& ul.home-posts {
		& .wp-block-post-excerpt__excerpt {
			margin-bottom: 0;
		}
	}
}

.home-posts ul {
	
	grid-template-columns: repeat(6, minmax(0, 1fr));
	
	& > li {
		
		grid-column: span 3;
		
		& > .wp-block-uagb-container {
			position: relative;
			height: 100%;
						
			& .post-type-label {
				position: absolute;
				top: 12px;
				right: 12px;
				z-index: 10;
				width: auto;
				height: auto;
			}
		}
		
	}

		
	& > li:nth-child(-n+3) {
		grid-column: span 2;
	}
	
}

.site-footer {
	
	& #menu-footer-menu {
	
		display: flex;
		gap: 15px;

		& a {
			color: #ffffff;
			font-weight: 600;
			text-transform: uppercase;
			font-size: 0.8em;
		}

	}

	& .widget.widget_nav_menu {
		margin-bottom: 0
	}
	
	& .contact-data {
		& a {
			display: inline-block;
			margin-left: 5px;
		}
	}
}

.contact-form {
	
}

.careers-testimonial {
	
	position: relative;
	
	&:after {
		content: "";
        position: absolute;
        bottom: -20px;
        right: -16px;
		width: 0;
        height: 0;
		display: inline-block;
		border-left: 25px solid transparent;
        border-right: 25px solid transparent;
        border-top: 25px solid #172B36;
		transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
	}
}

.careers-icon-list.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child {
	border-bottom: 1px solid #508cbb;
	width: 100%;
	
	&:first-child {
		border-top: 1px solid #508cbb;
	}
}

.solutions-price-slider .wp-block-uagb-icon-list .wp-block-uagb-icon-list-child {
	border-bottom: 1px solid #508cbb44;
	width: 100%;
	justify-content: space-between;
	padding-top: 7px;
	padding-bottom: 7px;
	margin: 0 !important;
	
	&:first-child {
		border-top: 1px solid #508cbb44;
	}
}

.swiper-slide { height: auto; }

/* >>> MEGAMENU BACKGROUND HOVER  */
.nav-mm-item:hover {
	background: #f5f5f5;
}
.ast-desktop .ast-mm-custom-content,
.ast-desktop .ast-mega-menu-enabled .ast-mm-custom-content {
	margin: 0 !important;
	padding: 0 !important;
}
/* <<< MEGAMENU BACKGROUND HOVER  */

.termsfeed-com---nb {
	max-width: 100% !important;
	font-family: 'Plus Jakarta Sans', sans-serif !important;
	
	&.termsfeed-com---reset {
		& button {
			border-radius: 40px;
			text-transform: uppercase;
			letter-spacing: 0.1em;
			font-size: 13px;
			
			&:focus {
				box-shadow: none;
			}
		}	
	}
	
	& button.cc-nb-reject {
		background-color: transparent;
		border: 2px solid var(--ast-global-color-1);
		color: var(--ast-global-color-1);
	}

	& button.cc-nb-okagree {
		background-color: var(--ast-global-color-1);
		color: var(--ast-global-color-3);
	}
	
	& .cc-nb-main-container {
		background: var(--ast-global-color-3);
		padding: 2rem !important;
	}
	
	& .cc-nb-text {
		font-size: 14px !important;
		color: #ffffff !important;
	}
	
	& .cc-nb-title {
		font-size: 20px !important;
		color: #ffffff !important;
	}
	
}

.termsfeed-com---pc-dialog {
	& input[type=checkbox].cc-custom-checkbox:checked+label:before {
		background: #508cbb !important;
	}
	& .cc-cp-foot-save {
		background: transparent !important;
		color: #508cbb !important;
		border: 2px solid #508cbb !important;
		border-radius: 40px;
		text-transform: uppercase;
		letter-spacing: 0.1em;
		&:focus {
			box-shadow: none !important;
		}
	}
	
}

#termsfeed-com---preferences-center {
	& :is(
		.cc-pc-head-close:active, 
		.cc-pc-head-close:focus,
	){
		border-color: #508cbb;
	}
	
	.cc-pc-head-lang select:focus {
		box-shadow: 0 0 0 2px #508cbb;	
	}
	
}

.timeline {
	--timeline-item-max-width: 250px;
	--timeline-item-margin-side: 85px;
	--timeline-dot-points-left: 50px;
	--timeline-bg-position-left: -178px;
	--timeline-bg-position-top: 110px;
	--timeline-padding-bottom: 30px;
	--timeline-image-max-width: 50px;
	--timeline-year-title-fontsize: 2em;
	
	position: relative;
	background-position: var(--timeline-bg-position-left) var(--timeline-bg-position-top) !important;
    background-size: auto calc(100% - (var(--timeline-bg-position-top) + var(--timeline-padding-bottom))) !important;
}

.timeline::before {
	content: "";
	position: absolute;
	top: 0;
	left: var(--timeline-dot-points-left);
	transform: translateX(-50%);
	height: calc(100% - var(--timeline-padding-bottom));
	z-index: 0;
	width: 10px;
	background-image: radial-gradient(#508cbb 2px, transparent 0px);
	background-repeat: repeat-y;
	background-size: 10px 10px;
	background-position: center;
}

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

.timeline-year-title {
	display: inline-block;
	font-size: var(--timeline-year-title-fontsize) !important;
	margin: 0 auto 30px 0 !important;
}

.timeline-quarter-title.wp-block-uagb-advanced-heading {
		position: absolute !important;
		/* top: 50%; */
		width: 40px !important;
		height: 40px !important;
		border-radius: 100%;
		z-index: 10;
		
		& .uagb-heading-text {
			font-weight: 500;
			width: 40px !important;
			height: 40px !important;
			display: flex;
			justify-content: center;
			align-items: center;
		}

	}

.timeline-quarter {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin-left: 0 !important;

	& .timeline-quarter-items {
		margin-left: var(--timeline-item-margin-side);
		margin-right: 0;
		transform: translateX(7px);
		align-items: flex-start !important;

		& .wp-block-uagb-info-box:before {
			left: calc(var(--timeline-item-margin-side) / 2 * -1);
			right: auto;
		}

		& .timeline-quarter-title {
			left: calc(var(--timeline-item-margin-side) / 2 * -1);
			right: auto;
			transform: translateX(-50%);
		}
	}

	& .timeline-quarter-items {
		max-width: var(--timeline-item-max-width) !important;
		display: flex;
		flex-direction: column;
		gap: 20px;
	}

	& .wp-block-uagb-info-box {
		max-width: 100% !important;
		
		& img {
			max-width: var(--timeline-image-max-width);
		}
		
		/*
		display: flex;
		text-align: left;
		margin-top: 0;
		margin-bottom: 0;
		position: relative;
		width: fit-content;
		*/

		&:before {
			z-index: 1;
			content: "";
			position: absolute;
			width: calc(var(--timeline-item-margin-side) / 2);
			top: 50%;
			height: 1px;
			border-bottom: 1px solid #508CBB;
			transform: translateY(-50%);
		}
		
		& .uagb-ifb-title,
		& .uagb-ifb-desc {
			text-align: left;
		}
	}
}

.footer-menu-wrapper {
	& ul {
		list-style-type: none;
		padding: 0;
		margin: 0;
		display: flex;
		gap: 10px;
		align-items: center;
		justify-content: flex-end;
		
		& li {
			letter-spacing: 0.1em;
		}
	}
}

@media (min-width: 600px) {
	
	.home-posts ul {
		
		& > li {
		
			& .wp-block-uagb-buttons {
				display: none;
			}

			&:hover {

				& .home-posts-item-content {
					position: absolute;
					bottom: 0;
				}

				& .wp-block-uagb-buttons {
					display: block;
				}
			}
		}
	}
	
	.termsfeed-com---nb {

		& .cc-nb-main-container {
			display: grid;
			grid-template-areas:
			  "a a c"
			  "b b c"
			  "b b c";
			grid-template-rows: auto 1fr;
			grid-template-columns: 1fr 150px;
			padding: 2rem !important;
		}

		& .cc-nb-title-container {
			grid-area: a;
		}

		& .cc-nb-text-container {
			grid-area: b;
		}

		& .cc-nb-buttons-container {
			display: flex;
			flex-direction: column;
			grid-area: c;
			justify-content: center;
			margin-left: 10px;
		}

	}

}

@media (min-width: 768px) {
	
	.timeline {
		--timeline-dot-points-left: 50%;
		--timeline-bg-position-left: 50%;
		--timeline-image-max-width: 75px;
		--timeline-year-title-fontsize: 2.5em;
	}
	
	.timeline-year {
		text-align: center !important;
	}
	
	.timeline-year-title {
		margin-left: auto !important;
		margin-right: auto !important;
	}
	
	.timeline-quarter {
		
		align-items: center;
		margin-left: auto !important;
		
		& .timeline-quarter-items {
			--timeline-item-max-width: 300px;
			transform: translatex(50%);
		}

		&:nth-child(odd) {
			& .timeline-quarter-items {
				margin-left: 0;
				margin-right: var(--timeline-item-margin-side);
				transform: translateX(-50%);
				align-items: flex-end !important;

				& .wp-block-uagb-info-box {
					&:before {
						left: auto;
						right: calc(var(--timeline-item-margin-side) / 2 * -1);
					}
					
					& .uagb-ifb-title,
					& .uagb-ifb-desc {
						text-align: right;
					}
				}

				& .timeline-quarter-title {
					left: auto;
					right: calc(var(--timeline-item-margin-side) / 2 * -1);
					transform: translateX(50%);
				}
			}
		}
	}
}

@media (min-width: 900px) {
	
	.timeline-quarter {
		
		& .timeline-quarter-items {
			max-width: 350px !important;
		}
	}
}

@media (max-width: 600px) {
	.sm-removed-br {
		
		& br {
			display: none;
		}

		
	}
	
	.home-posts ul {
	
		grid-template-columns: repeat(1, minmax(0, 1fr));
		
		& > li {
			grid-column: 1;
		}
	}
}