/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
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: 2.0.0
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
*/



.service-item.service-item__button, .service-item .service-item__title span, .service-item .service-item__desc  {
    transition: all 0.3s ease-in-out;
}

.service-item:hover .service-item__button .elementor-button {
    background-color: var( --e-global-color-3fb2f5c );
    color: var( --e-global-color-primary );
    border-color: var( --e-global-color-3fb2f5c );
}

.service-item:hover .service-item__title span, 
.service-item:hover .service-item__title h3, .service-item:hover .service-item__desc  {
    color: #fff;
}

.what .e-n-accordion-item {
    background-color: #fff;
padding-left: 30px;
    border-radius: 12px;
    box-shadow: 0 20px 20px #95959540;
}

.rank-math-breadcrumb {
	font-size: 14px;
}

.rank-math-breadcrumb .last, .rank-math-breadcrumb .separator {
	color: #fff;
}

.rank-math-breadcrumb p {
	margin: 0;
}

.rank-math-breadcrumb a {
	color: rgba(255, 255, 255, 0.5);
}

.rank-math-breadcrumb a:hover {
	color: #fff;
}


/* ----- HEADER ----- */

body .trp-shortcode-switcher {
    padding: 7px 0;
	transition: all 0.3s ease-in-out;
}

body .trp-shortcode-switcher:hover {
	background: #F0FAFF;
}

body .trp-shortcode-switcher__wrapper {
    line-height: 1;
}

body .trp-language-item {
    padding: 7px 7px 7px 16px;
}



body .trp-language-item-name {
    font-size: 16px;
    line-height: 1;
    font-family: inherit;
    font-weight: 500;
}

/* ----- VACANCIES ----- */

/* --- Спільне для всіх списків вакансії --- */
.vacancy-conditions,
.vacancy-benefits,
.vacancy-responsibilities,
.vacancy-requirements {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

/* Відступи між елементами 16px */
.vacancy-conditions > li,
.vacancy-benefits > li,
.vacancy-responsibilities > li,
.vacancy-requirements > li {
    margin-bottom: 16px;
}

.vacancy-conditions > li:last-child,
.vacancy-benefits > li:last-child,
.vacancy-responsibilities > li:last-child,
.vacancy-requirements > li:last-child {
    margin-bottom: 0;
}

/* --- Co zajišťuje Neo Crafts: білі елементи --- */
.vacancy-benefits > li {
    color: #fff;
}

.vacancy-benefit {
    display: flex;
    align-items: center;
    gap: 12px;
}

.vacancy-benefit::before {
    content: "";
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    background-image: url("https://neocrafts.h2bro.cz/wp-content/uploads/2026/07/checkcircle.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* --- Náplň práce + Požadavky: тире спереду --- */
.vacancy-responsibilities > li,
.vacancy-requirements > li {
    position: relative;
    padding-left: 20px;
}

.vacancy-responsibilities > li::before,
.vacancy-requirements > li::before {
    content: "—";
    position: absolute;
    left: 0;
}

.vacancy-condition {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
}

.vacancy-condition .vc-label {
    color: rgba(6, 20, 48, 0.4);
}

.vacancy-condition .vc-value {
    color: rgba(6, 20, 48, 0.8);
    text-align: right;
	font-weight: 500;
}

.vacancy-search {
    display: flex;
    align-items: stretch;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    width: 500px;
	max-width: 100%;
}

/* Поле вибору міста */
.vacancy-search .vs-input {
    flex: 1;
    border: none;
    background: transparent;
    padding: 22px 28px;
    font-size: 17px;
    color: rgba(6, 20, 48, 0.8);
    outline: none;
    min-width: 0;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
}

/* Приглушений плейсхолдер (перший пункт) */
.vacancy-search .vs-select option:first-child {
    color: rgba(6, 20, 48, 0.4);
}

/* Синя кнопка */
.vacancy-search .vs-submit {
    border: none;
    background: var( --e-global-color-primary );
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    padding: 22px 44px;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.2s ease;
	border-radius: 0 12px 12px 0 !important;
}

.vacancy-search .vs-submit:hover {
    background: var( --e-global-color-accent );
	border: none;
		border-radius: 12px;
}

@media (max-width: 768px) {
    .vacancy-search {
        flex-direction: column;
        background: transparent;
    }

    .vacancy-search .vs-input {
        width: 100%;
        background: rgba(250, 250, 250, 1);
         border-radius: 12px 12px 0 0 !important;
        padding: 18px 20px;
    }

    .vacancy-search .vs-submit {
        width: 100%;
        border-radius: 0 0 12px 12px !important;
    }
}

/* ----- ELEMENTS ----- */

.wp-block-quote {
    overflow-wrap: break-word;
    border-left: 3px solid #3000ff;
    padding-left: 20px;
	margin-left: 0;
}

.blog-post__content .wp-block-separator {
    border-top: 2px solid #5c4ed5;
	margin-top: 20px !important;
    margin-bottom: 20px !important;
}

.blur-background {
  position: relative;
  overflow: hidden;
}

.blur-background::before,
.blur-background::after {
  content: '';
  position: absolute;
  width: 45%;
  height: 500px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(108, 92, 231, 0.5), #ffffff6b 70%);
  filter: blur(80px);
  mix-blend-mode: screen;
  animation: moveBlob 12s ease-in-out infinite alternate;
  z-index: 0;
	pointer-events: none;
}

.blur-background::before {
  top: -50px;
  left: -100px;
  animation-delay: 0s;
    background: radial-gradient(circle, #5D4AD1, transparent 70%);
}

.blur-background::after {
  top: -10px;
  right: -100px;
  background: radial-gradient(circle, #5D4AD9, #ffffff6e 80%);
  animation-delay: 4s;
}

/* Анімація */
@keyframes moveBlob {
  0% {
    transform: scale(1) translate(0, 0) skew(0deg, 0deg);
  }
  33% {
    transform: scale(1.2, 1.1) translate(40px, 30px) skew(-50deg, -5deg);
  }
  66% {
    transform: scale(0.95, 1.4) translate(-30px, -40px) skew(-26deg, 22deg);
  }
  100% {
    transform: scale(1) translate(0, 0) skew(0deg, 0deg);
  }
}




/* ----- CONTACT FORMS ----- */

.elementor-kit-7 select {
    font-family: "TT Norms", Sans-serif;
    font-size: 18px;
    font-weight: 500;
	line-height: 1.222em;
    color: var(--e-global-color-1587dd0);
    accent-color: var(--e-global-color-1587dd0);
    background-color: #FFFFFF00;
    border-style: solid;
    border-width: 1px;
    border-color: var(--e-global-color-1587dd0);
    border-radius: 8px;
    padding: 20px;
    box-sizing: border-box;
    appearance: none; /* прибирає стандартну стрілочку у більшості браузерів */
}

/* Додаткова стрілочка для select (необов’язково) */
.elementor-kit-7 select {
    background-image: url("data:image/svg+xml;utf8,<svg fill='%23333' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 1rem;
    padding-right: 3rem;
    cursor: pointer;
}

.phone-country-choose {
	display: flex;
	gap: 30px;
	margin-bottom: 30px;
}

.phone-country-choose .phone-choose, .phone-country-choose .country-choose {
	width: 50%;
}

.phone-country-choose .phone-choose .iti {
	width: 100%;
}

.contact-form .contact-form__fields {
	display: flex;
	flex-wrap: wrap;
	gap: 30px 50px;
	justify-content: space-between;
    align-items: flex-start;
	margin-bottom: 30px;
}

.contact-form .contact-form__as {
	display: flex;
	flex-wrap: wrap;
	gap: 30px 50px;
	justify-content: space-between;
    align-items: center;
}

.contact-form .contact-form__fields-input, .contact-form .contact-form__as-field {
	width: calc(50% - 25px);
}

.contact-form .contact-form__fields-input label, .contact-form .contact-form__as-field.send input {
	width: 100%;
}

.contact-form .contact-form__fields-input input, 
.contact-form .contact-form__fields-input input:focus {
	outline: none;
}

.contact-form .wpcf7-list-item, .contact-form p {
    margin: 0;
	padding: 0;
}

.contact-form .field-label {
	font-size: 20px;
	font-weight: 600;	
	color: var( --e-global-color-text );
	margin-bottom: 8px;
	display: block;
}

.contact-form .wpcf7-list-item .wpcf7-list-item-label {
	font-size: 17px;
	font-weight: 500;
	line-height: 1.1;
	color: var( --e-global-color-1587dd0 );
	transition: all 0.3s ease-in-out;
	cursor: pointer;
}

.contact-form .wpcf7-list-item:hover .wpcf7-list-item-label {
	color: var( --e-global-color-primary );
}

.contact-form .wpcf7-spinner {
	position: absolute;
    bottom: -25px;
    right: -25px;
    margin: 0;
    padding: 0;
}

.wpcf7 form .wpcf7-response-output {
    margin: 20px 0 0;
    padding: 0;
    border: none;
    color: var(--e-global-color-0721978);
    font-size: 22px;
}

.wpcf7 .wpcf7-form.sent .contact-form {
	display: none;
}

.wpcf7-form-control.wpcf7-submit:disabled {
	opacity: 0.5;
}

.wpcf7-not-valid-tip {
    font-size: 13px;
}

.contact-form .wpcf7-checkbox, .contact-form .wpcf7-radio {
	display: flex;
	flex-direction: column;
}




/* ----- LIGHTBOX ----- */

/* Повертаємо базові стилі GLightbox */
.glightbox-container {
    all: initial;
    font-family: sans-serif;
}

.glightbox-container.glightbox-clean .gprev,
.glightbox-container.glightbox-clean .gnext,
.glightbox-container.glightbox-clean .gclose,
.glightbox-container.glightbox-clean .gslide-description,
.glightbox-container.glightbox-clean .gslide-media, 
.glightbox-container.glightbox-clean .gprev:hover,
.glightbox-container.glightbox-clean .gnext:hover,
.glightbox-container.glightbox-clean .gclose:hover, 
.glightbox-container.glightbox-clean .gprev:focus,
.glightbox-container.glightbox-clean .gnext:focus,
.glightbox-container.glightbox-clean .gclose:focus {
   background-color: transparent; 
	box-shadow: none;
	border: none;
	padding: 0;
	margin: 0;
	
}

.glightbox-container.glightbox-clean .plyr__control--overlaid {
    background: #00b3ff;
    background: var(--plyr-video-control-background-hover, var(--plyr-color-main, var(--plyr-color-main, #00b3ff)));
    border: 0;
    border-radius: 100%;
    color: #fff;
    color: var(--plyr-video-control-color, #fff);
    display: none;
    left: 50%;
    opacity: .9;
    padding: 15px;
    padding: calc(var(--plyr-control-spacing, 10px) * 1.5);
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: .3s;
    z-index: 2;
}

.glightbox-container.glightbox-clean .plyr__control {
    background: 0 0;
    border: 0;
    border-radius: 3px;
    border-radius: var(--plyr-control-radius, 3px);
    color: inherit;
    cursor: pointer;
    flex-shrink: 0;
    overflow: visible;
    padding: 7px;
    padding: calc(var(--plyr-control-spacing, 10px) * .7);
    position: relative;
    transition: all .3s ease;
}

.glightbox-container.glightbox-clean .plyr--full-ui input[type="range"] {
    appearance: none;
    color: var(--plyr-range-fill-background, var(--plyr-color-main, var(--plyr-color-main, #00b3ff)));
    display: block;
    height: calc(var(--plyr-range-thumb-active-shadow-width, 3px) * 2 + var(--plyr-range-thumb-height, 13px));
    min-width: 0px;
    width: 100%;
    background: 0px 0px;
    border-width: 0px;
    border-style: initial;
    border-color: initial;
    border-image: initial;
    border-radius: calc(var(--plyr-range-thumb-height, 13px) * 2);
    margin: 0px;
    padding: 0px;
    transition: box-shadow 0.3s;
}



/* Екрани більшого розміру (настільні комп'ютери та інше) */
@media (min-width: 1367px) {
    /* Ваші стилі для екранів великого розміру */
}

/* Ноутбуки */
@media (max-width: 1366px) {
    /* Ваші стилі для ноутбуків */
}

/* Планшети (горизонтальна орієнтація) */
@media (max-width: 1200px) {
    /* Ваші стилі для планшетів у горизонтальній орієнтації */
}

/* Планшети (вертикальна орієнтація) */
@media (max-width: 1024px) {
    /* Ваші стилі для планшетів у вертикальній орієнтації */
}

/* Мобільні пристрої (горизонтальна орієнтація) */
@media (max-width: 880px) {
    /* Ваші стилі для мобільних пристроїв у горизонтальній орієнтації */
}

/* Мобільні пристрої (вертикальна орієнтація) */
@media (max-width: 767px) {
   
	body .trp-shortcode-switcher {
		padding: 3px 0;
	}
	
}