/*
Theme Name: Volyn Regional Development Agency
Description: Modern block theme for Volyn Regional Development Agency based on Twenty Twenty-Five
Author: Mirko
Version: 1.0.0
Text Domain: volyn-agency-theme
Domain Path: /languages
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.4
*/

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

:root {
	--va-color-text: #252525;
	--va-dark-gray-color: #423D3E;
	--va-gradient: linear-gradient(90deg, #E5E2D8, #F9CD7D);
	--va-text-gradient: linear-gradient(90deg, #017F4A, #03729D);
	--va-dark-gold-gradient: linear-gradient(229.72deg, #F9CD7D 0%, #E5E2D8 100%);
}

body {
	background-color: var(--wp--preset--color--white);
	color: var(--va-color-text) !important;
	font-family: var(--wp--preset--font-family--e-ukraine), sans-serif;
	font-size: var(--wp--preset--font-size--medium);
	line-height: 1.6;
}

a {
	color: var(--va-color-text);
	text-decoration: none;
	transition: color 0.3s ease;
}

a:not(.wp-element-button):hover {
	color: #F9CD7D;
}

img {
	max-width: 100%;
	height: auto;
}

header {
	background: #FFF;
	position: sticky;
	top: 0;
	left: 0;
	z-index: 999;
}

.va-gradient-in-progress {
	background: linear-gradient(229.72deg, #FFBD44 0%, #F6DB7E 100%);
}

/*>>> Buttons >>>*/
.va-button {
	display: block;
	width: fit-content;
	padding: 0.625rem 1.125rem;
	border: solid 1px var(--wp--preset--color--white);
	border-radius: 0.5rem;
	overflow: hidden;
 	color: var(--va-color-text);
	transition: all 200ms ease;
	font-size: 1rem;
	cursor: pointer;
}

.va-button.va-button-primary {
	--va-button-primary-gradient-start: #E5E2D8;
	--va-button-primary-gradient-end: #F9CD7D;
	background: linear-gradient(90deg, var(--va-button-primary-gradient-start), var(--va-button-primary-gradient-end));
}
.va-button.va-button-primary:hover {
	--va-button-primary-gradient-start: #EA3000;
	--va-button-primary-gradient-end: #FF7B59;
}
.va-button.va-button-primary:active {
	--va-button-primary-gradient-start: #E5E2D8;
	--va-button-primary-gradient-end: #F9CD7D;
}
.va-button.va-button-primary:disabled {
	background: var(--wp--preset--color--white);
	opacity: 50%;
}

.va-button.va-button-secondary {
	background: var(--wp--preset--color--white);
	border-color: var(--va-color-text);
}
.va-button.va-button-secondary:hover {
	border-color: #FF7B59;
	color: #FF7B59;
}
.va-button.va-button-secondary:active {
	border-color: #E5E2D8;
	color: #E5E2D8;
}
.va-button.va-button-secondary:disabled {
	border: var(--wp--preset--color--white);
	opacity: 50%;
}

.va-button.va-button-outline {
	background: transparent;
}
.va-button.va-button-outline:hover {
	background: linear-gradient(90deg, #E5E2D8, #F9CD7D);
}
.va-button.va-button-outline:active {
	background: transparent;
}
.va-button.va-button-outline:disabled {
	opacity: 50%;
}

.va-header-nav-button {
	position: relative;
	color: #423D3E;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.25rem;
	transition: all 200ms ease;
	background-clip: text !important;
	-webkit-background-clip: text !important;
	background: linear-gradient(90deg, #EA3000, #FF7B59);
}

.va-header-nav-button:hover {
	color: transparent;
}

.va-header-nav-button:active,
.va-header-nav-button.va-selected {
	color: transparent;
	background: linear-gradient(90deg, #bbb9ae, #F9CD7D);
}

.va-header-nav-button.va-selected::after {
	position: absolute;
	left: 0;
	bottom: -0.25rem;
	content: "";
	width: 100%;
	height: 2px;
	background: linear-gradient(90deg, #bbb9ae, #F9CD7D);
	animation: va-line-grow 200ms ease-out;
}

@keyframes va-line-grow {
	from {
		width: 0;
	}
	to {
		width: 100%;
	}
}
/*<<< Buttons <<<*/



/*>>> TranslatePress Shortcode Language Switcher >>>*/
.trp-shortcode-switcher__wrapper {
	font-family: var(--wp--preset--font-family--ibm-plex-sans) !important;
	height: 100% !important;
	margin-top: -9px !important;
}
.trp-shortcode-switcher__wrapper .trp-ls-dropdown {
	width: fit-content;
	padding: 0 !important;
	flex-direction: column !important;
}

.trp-shortcode-switcher__wrapper .trp-ls-dropdown .trp-current-language-item__wrapper {
	padding-top: 0.25rem !important;
	margin-bottom: -0.20rem !important;
}
/*<<< TranslatePress Shortcode Language Switcher <<<*/

/*>>> Contact Form >>>*/
form .contact-form__label {
	font-size: 14px;
	line-height: 18px;
	color: rgba(129, 142, 161, 1);
	display: block;
}

form .contact-form__input, form .contact-form__textarea {
	width: 100%;
	height: 44px;
	padding: 10px 14px;
	margin-top: 5px;
	margin-bottom: 1rem;
	border-radius: 8px;
	border: 1px dashed rgba(228, 228, 231, 1);
	font-size: 16px;
	line-height: 20px;
}

form .contact-form__input::placeholder,
form .contact-form__textarea::placeholder {
	color: rgba(129, 142, 161, 1);
}

form .contact-form__submit {
	width: 100%;
	height: 44px;
	background: var(--va-dark-gold-gradient);
	color: white;
	font-weight: 600;
	font-size: 14px;
	line-height: 18px;
	letter-spacing: 0;
	border-radius: 8px;
	padding: 10px 20px;
	border: none;
	cursor: pointer;
}

.wpcf7-spinner {
	display: none;
}

.wpcf7-spinner.is-active {
	display: inline-block;
	width: 30px;
	height: 30px;
	border: 4px solid #f3f3f3;
	border-top: 4px solid #3498db;
	border-radius: 50%;
	animation: spin 1s linear infinite;
}
/*<<< Contact Form <<<*/

/*>>> Footer >>>*/
.va-footer-wrapper {
	font-size: 0.875rem;
	color: var(--wp--preset--color--white);
}
.va-footer-wrapper .va-footer-container {
	padding: 4rem 0;

}
.va-footer-wrapper .va-footer-container .va-footer-content {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: start;
}
.va-footer-wrapper .va-footer-container .va-footer-content > * {
	flex: 1 1 300px;
	min-width: 0;
}
.va-footer-wrapper .va-footer-container hr.va-footer-separator {
	width: 100%;
	height: 1px;
	margin: 1rem 0;
	border: none;
	background-color: rgba(255 255 255 / 50%);
}
.va-footer-wrapper .va-footer-container .va-footer-copyright-container {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
/*<<< Footer <<<*/



/*>>> Home >>>*/
.va-home-partners-section-card {
	height: 350px;
	width: 270px;
	padding: 1rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1rem;
	border-radius: 1rem;
	background-color: #FFF;
}
.va-home-partners-section-card > img {
	flex-shrink: 0;
	width: 220px;
	height: 220px;
	object-fit: contain;
	object-position: center
}
.va-home-partners-section-card > p {
	height: 100%;
	font-size: 1rem;
	line-height: 1.25rem;
	font-weight: 600;
	text-align: center;
}
/*<<< Home <<<*/

.va-gradient-text h1,
.va-gradient-text h2,
.va-gradient-text h3,
.va-gradient-text h4,
.va-gradient-text h5,
.va-gradient-text h6,
.va-gradient-text p,
.va-gradient-text span,
.va-gradient-text a {
	color: transparent !important;
	background-clip: text !important;
	background: var(--va-text-gradient);
}

.title-limited {
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.excerpt-limited {
	display: -webkit-box;
	-webkit-line-clamp: 5;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.mission__title--shifted {
	position: relative;
	left: -32px;
}

.va-opacity-transition {
	transition: opacity 300ms ease;
}
.va-opacity-transition:hover {
	opacity: 60%;
}
.va-opacity-transition:active {
	opacity: 75%;
}

.va-grid-cols-2 {
	display: grid;
	grid-template-columns:repeat(auto-fit, minmax(450px, 1fr));
}

@media (max-width: 768px) {
	.va-footer-wrapper .va-footer-container .va-footer-content > * {
		flex-basis: 100%;
	}
	.va-grid-cols-2 {
		grid-template-columns:1fr;
	}
	.va-footer-wrapper .va-footer-container .va-footer-copyright-container {
		flex-wrap: wrap;
	}
}
