/*
Theme Name: tb38
Author: @artemweb10
Description: Description
Version: 1.0.0
Text Domain: tb38
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

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

:root {
    --dark: #323A62;
    --white: #fff;
    --gray-light-primary: #F5F6FC;
    --purple: #605ECA;
    --purple-light: #F1EFFF;
    --gray: #CED2E1;
    --gray-dark: #636A81;
    --gray-light: #E7EBF6;
    --transition: all .3s ease;
}

html {
    height: 100%;
    scroll-behavior: auto !important;
}

body {
    font-family: "Manrope", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: 0px;
    color: var(--dark);
    overflow-x: hidden;
}

body.lock {
    overflow: hidden;
}

body::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--gray-dark);
    transition: var(--transition);
    opacity: 0;
    visibility: hidden;
    z-index: 9;
}

body.overlay::before {
    transition-delay: 0.15s;
    opacity: 0.3;
    visibility: visible;
}

.container,
.e-parent.e-con {
    max-width: 1440px !important;
    width: 100%;
    margin: 0 auto;
    padding: 0 58px;
}

.full-width {
    margin-inline: calc((100% - 100vw) / 2) !important;
    padding-inline: calc((100vw - 100%) / 2) !important;
}

.full-width-section,
.full-width-section.e-parent.e-con  {
    margin-left: calc((100% - 100vw) / 2) !important;
    max-width: initial !important;
    width: 100vw !important;
}
.full-width-dark-bg {
    background-color: var(--dark);
}
.full-width-dark-bg.page-header {
    padding-top: 50px;
}
input,
textarea,
button {
    font-family: "Manrope", sans-serif;
}

button {
    border: none;
    cursor: pointer;
}

a {
    color: inherit;
    text-decoration: none;
    transition: var(--transition);
}

@media (max-width: 1023px) {
    .container,
    .e-parent.e-con {
        padding: 0 44px;
    }
}

@media (max-width: 767px) {
    body {
        font-size: 16px;
    }

    .container,
    .e-parent.e-con,
    .full-width {
        padding: 0 22px;
    }
}

/*---------- TYPOGRAPHY ----------*/

h1,
.h1,
.h1 h1,
.h1 .elementor-heading-title {
    font-family: "Manrope", sans-serif;
    font-size: 54px;
    font-weight: 400;
    line-height: 110%;
    letter-spacing: 0px;
}

.h1-italic,
.h1-italic .elementor-heading-title {
    font-family: "CormorantGaramond";
    font-weight: 400;
    font-style: Italic;
    font-size: 76px;
    line-height: 100%;
    letter-spacing: 1px;
}

h2,
.h2,
.h2 h2,
.h2 .elementor-heading-title {
    font-family: "Manrope", sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 110%;
    letter-spacing: 0px;
}

.h2-italic,
.h2-italic .elementor-heading-title {
    font-family: "CormorantGaramond";
    font-weight: 400;
    font-style: Italic;
    font-size: 64px;
    line-height: 100%;
    letter-spacing: 1px;
}

h3,
.h3-italic,
.h3-italic h3,
.h3-italic .elementor-heading-title {
    font-family: "CormorantGaramond";
    font-weight: 400;
    font-style: Italic;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 1px;
}

.h3-italic-classic,
.h3-italic-classic h3,
.h3-italic-classic .elementor-heading-title {
    width: 100%;
    font-family: "ClassicaOne";
    font-weight: 500;
    font-size: 26px;
    line-height: 130%;
}

h4,
.h4,
.h4 h4,
.h4 .elementor-heading-title {
    font-family: "Manrope", sans-serif;
    font-size: 26px;
    font-weight: 400;
    line-height: 110%;
    letter-spacing: 0px;
}

h5,
.h5,
.h5 h5,
.h5 .elementor-heading-title {
    font-family: "Manrope", sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 110%;
    letter-spacing: 0px;
}

.section-title {
    font-family: "CormorantGaramond";
    font-weight: 400;
    font-size: 50px;
    line-height: 120%;
    letter-spacing: 0px;
}

.section-quote {
    font-family: "CormorantGaramond";
    font-weight: 400;
    font-style: Italic;
    font-size: 45.27px;
    line-height: 100%;
    letter-spacing: -1.13px;
}

.section-quote em {
    font-family: "ClassicaOne";
    font-weight: 500;
    color: var(--purple);
}

.section-subtitle {
    font-family: "ClassicaOne";
    font-weight: 500;
    font-size: 26px;
    line-height: 130%;
    letter-spacing: 8%;
}

.button-text-italic,
.button-text-italic .elementor-button {
    font-family: "CormorantGaramond";
    font-weight: 400;
    font-style: Italic;
    font-size: 26px;
    line-height: 130%;
    letter-spacing: 1%;
}

.body-1 {
    font-family: 'Manrope';
    font-weight: 400;
    font-size: 18px;
    line-height: 110%;
    letter-spacing: 0%;
}

.body-2 {
    font-family: 'Manrope';
    font-weight: 400;
    font-size: 16px;
    line-height: 110%;
    letter-spacing: 0%;
}

.caption {
    font-family: 'Manrope';
    font-weight: 400;
    font-size: 14px;
    line-height: 120%;
    letter-spacing: 0%;
}

@media (max-width: 1024px) {
    .section-quote {
        font-size: 35px;
    }
}

@media (max-width: 767px) {
    h1,
    .h1,
    .h1 h1,
    .h1 .elementor-heading-title {
        font-size: 25px;
    }

    .h1-italic,
    .h1-italic .elementor-heading-title {
        font-size: 44px;
    }

    h2,
    .h2,
    .h2 h2,
    .h2 .elementor-heading-title {
        font-size: 20px;
    }

    .h2-italic,
    .h2-italic .elementor-heading-title {
        font-size: 38px;
    }

    h3,
    .h3,
    .h3 h3,
    .h3 .elementor-heading-title,
    .h3-italic-classic,
    .h3-italic-classic h3,
    .h3-italic-classic .elementor-heading-title {
        font-size: 16px;
    }

    h4,
    .h4,
    .h4 h4,
    .h4 .elementor-heading-title {
        font-size: 16px;
    }

    h5,
    .h5,
    .h5 h5,
    .h5 .elementor-heading-title {
        font-size: 14px;
    }

    .section-title {
        font-size: 38px;
    }

    .section-quote {
        font-size: 17px;
    }

    .section-subtitle {
        font-size: 16px;
    }

    .button-text-italic,
    .button-text-italic .elementor-button { 
        font-size: 20px;
        line-height: 120%;
    }

    .body-1 {
        font-size: 16px;
    }

    .body-2 {
        font-size: 14px;
    }

    .caption {
        font-size: 12px;
    }
}

/*---------- TYPOGRAPHY END ----------*/

/*---------- COLORS ----------*/

.white {
    color: var(--white);
}

.gray-dark {
    color: var(--gray-dark);
}

.purple {
    color: var(--purple);
}

/*---------- COLORS END ----------*/

/*---------- BUTTONS ----------*/

.btn,
.button.elementor-widget-button .elementor-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 300px;
    min-height: 46px;
    padding: 0px 10px;
    text-decoration: none;
    border-radius: 4px !important;
    background-color: var(--purple);
    color: var(--white);
    transition: var(--transition);
}

.button.elementor-widget-button .elementor-button {
    width: 100%;
    min-width: auto !important;
}

.btn:hover,
.button.elementor-widget-button .elementor-button:hover,
.btn:active,
.button.elementor-widget-button .elementor-button:active {
    background-color: var(--dark);
}

.btn:disabled,
.btn.disabled,
.button.elementor-widget-button .elementor-button:disabled,
.button.disabled.elementor-widget-button .elementor-button {
    color: var(--orange-dark-60);
    background-color: var(--gray);
    cursor: default;
    pointer-events: none;
}

/* Buttons - Types - Simple */
.btn.simple,
.button.simple.elementor-widget-button .elementor-button {
    position: relative;
    width: fit-content;
    min-width: auto;
    min-height: auto;
    padding: 0 0 3px 0;
    justify-content: flex-start;
    text-decoration: none;
    border: none;
    background-color: transparent !important;
}

.btn.simple::after,
.button.simple.elementor-widget-button .elementor-button::after {
    content: "";
    display: block;
    width: 0%;
    height: 1px;
    position: absolute;
    left: 50%;
    bottom: 0;
    background-color: var(--purple);
    transform: translateX(-50%);
    transition: var(--transition);
    opacity: 1;
}

.btn.simple.reverse::after,
.button.simple.reverse.elementor-widget-button .elementor-button::after {
    width: 100%;
}

.btn.simple:hover,
.button.simple.elementor-widget-button .elementor-button:hover {
    color: var(--purple);
}

.btn.simple:hover::after,
.button.simple.elementor-widget-button .elementor-button:hover::after {
    width: 100%;
}

/* Purple */
.btn.simple.purple,
.button.simple.purple.elementor-widget-button .elementor-button {
    color: var(--purple);
}

/* White */
.btn.simple.white,
.button.simple.white.elementor-widget-button .elementor-button {
    color: var(--white);
}
.btn.simple.white::after,
.button.simple.white.elementor-widget-button .elementor-button::after{
    background-color: var(--white);
}
.btn.simple.white:hover,
.button.simple.white.elementor-widget-button .elementor-button:hover {
    color: var(--white);
}

.btn.simple.white:hover::after,
.button.simple.white.elementor-widget-button .elementor-button:hover::after {
    width: 100%;
}


/* Gray dark */

.btn.gray-dark.simple,
.button.simple.elementor-widget-button .elementor-button {
    color: var(--gray-dark);
}

.btn.simple:hover,
.button.simple.elementor-widget-button .elementor-button:hover {
    color: var(--purple);
}

/* Btn normal */

.btn-normal {
    padding: 6px;
    border-radius: 4px;
    background-color: var(--purple-light);
    color: var(--dark);
    text-align: center;
    transition: var(--transition);
}

.btn-normal:hover, 
.btn-normal.active,
.btn-normal.open {
    background-color: var(--purple);
    color: var(--white);
}

/* Btn with-icon */

.btn.btn-with-icon,
.button.button-with-icon.elementor-widget-button .elementor-button {
    min-width: 360px;
    width: fit-content;
}

.btn.btn-with-icon,
.button.button-with-icon.elementor-widget-button .elementor-button-content-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}

.button.button-with-icon.elementor-widget-button .elementor-button-content-wrapper {
    width: 100%;
}

.btn.btn-with-icon .title,
.button.button-with-icon.elementor-widget-button .elementor-button-text {
    padding: 0px 20px;
    display: inline-flex;
    color: var(--white);
    transition: var(--transition);
}

.btn.btn-with-icon .icon,
.button.button-with-icon.elementor-widget-button .elementor-button-icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin: 0 !important;
    color: var(--white);
    border-radius: 50%;
    transition: var(--transition);
}

.btn.btn-with-icon .icon svg,
.button.button-with-icon.elementor-widget-button .elementor-button-icon svg {
    width: 1em;
    height: 1em;
}

.button .elementor-button-icon svg {
    width: 14px;
}

.btn.btn-with-icon:hover,
.button.button-with-icon.elementor-widget-button .elementor-button:hover {
    background-color: var(--dark); /* Ð±ÑƒÐ´ÐµÑ‚ Ð²Ð¸Ð´ÐµÐ½ Ð¿Ñ€Ð¸ opacity: 0 Ñƒ Ð¿ÑÐµÐ²Ð´Ð¾ÑÐ»ÐµÐ¼ÐµÐ½Ñ‚Ð° */
    transition: var(--transition);
}

.btn.btn-with-icon:hover .title,
.button.button-with-icon.elementor-widget-button .elementor-button:hover .elementor-button-text {
    color: var(--white);
}

.btn.btn-with-icon:hover .icon,
.button.button-with-icon.elementor-widget-button .elementor-button:hover .elementor-button-icon {
    color: var(--white);
}

/* Btn arrow-circle */

.btn-arrow-circle-container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: var(--purple);
}

.btn-arrow-circle-container span {
    width: max-content;
    transition: var(--transition);
}

.btn-arrow-circle {
    display: flex;
    background-color: transparent;
}

.btn-arrow-circle svg {
    width: 92px;
    height: 50px;
    transition: var(--transition);
}

.btn-arrow-circle-container:hover,
.btn-arrow-circle-container:hover .btn-purple-arrow-circle {
    color: var(--dark);
}

/* Purple button arrow circle */

.btn-purple-arrow-circle {
    color: var(--purple);
    transition: var(--transition);
}

.btn-purple-arrow-circle:hover {
    color: var(--dark) !important;
}

/* White button arrow circle */

.btn-white-arrow-circle {
    color: var(--white);
    transition: var(--transition);
}

.btn-white-arrow-circle:hover {
    color: var(--purple) !important;
}

@media (max-width: 1359.75px) {}

@media (max-width: 1023px) {}

@media (max-width: 767px) {
    .btn {
        min-height: 42px;
    }
    .btn-arrow-circle svg {
        width: 60px;
        height: 38px;
    }
    .btn.btn-with-icon,
    .button.button-with-icon.elementor-widget-button .elementor-button {
        min-width: fit-content;
    }
}

@media (max-width: 499.75px) {
    .btn,
    .button.elementor-widget-button .elementor-button {
        min-width: 100% !important;
    }

    .btn.simple,
    .button.simple.elementor-widget-button .elementor-button {
        min-width: auto !important;
    }
}

/*---------- BUTTONS END ----------*/

/*---------- FORM ----------*/

.form-footer-section {
    margin-top: 100px;
}

.form-footer-wrapper {
    background: url("/wp-content/uploads/2025/09/form-footer-bg.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 40%;
    background-color: var(--black-light);
    border-radius: 10px;
}

.form-header-text {
    margin: 0px 0px 40px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.form-footer-container {
    padding: 50px 0px 50px 50px;
    max-width: 767px;
    width: 100%;
}

.form-footer-banner {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 30%;
}

.form-fields {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.form-field {
    position: relative;
    width: 100%;
    height: 100%;
}

.form-field.w50 {
    width: calc(50% - 12px);
}

.form-field>label {
    margin: 0px 0px 16px;
    display: block;
}


.form-field .wpcf7-form-control-wrap {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.form-field input,
.form-field textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    width: 100%;
    min-height: 42px;
    padding: 0px 20px;
    font-weight: 500;
    letter-spacing: 0px;
    border: none;
    border-radius: 10px;
    background-color: var(--white);
    transition: var(--transition);
    cursor: pointer;
}

.form-field input::-webkit-input-placeholder {
    transition: var(--transition);
}

.form-field input:-moz-placeholder {
    transition: var(--transition);
}

.form-field textarea {
    height: 110px;
    resize: none;
}

.form-field input:-webkit-autofill {
    -webkit-box-shadow: inset 0 0 0 50px var(--white) !important;
    -webkit-text-fill-color: var(--orange-dark) !important;
    color: var(--orange-dark) !important;
}

.form-field input.wpcf7-not-valid,
.form-field textarea.wpcf7-not-valid {
    color: var(--red-error) !important;
    background-color: var(--white-bg);
}

.form-field input.wpcf7-not-valid::-webkit-input-placeholder {
    color: var(--red-error) !important;
}

.form-field input.wpcf7-not-valid:-moz-placeholder {
    color: var(--red-error) !important;
}

.privacy-text {
    color: var(--white-bg);
}

.form-field .wpcf7-not-valid-tip {
    
}

.form-buttons {
    display: flex;
}

.form-buttons.w50 {
    width: calc(50% - 12px);
}

.form-fields+.form-buttons {
    margin-top: 24px;
}

.form-button {
    position: relative;
    display: flex;
    justify-content: center;
    width: 100%;
    color: var(--white);
    border: none;
    overflow: hidden;
    z-index: 1;
}

.form-button input[type="submit"] {
    appearance: none;
    border: none;
    cursor: pointer;
}

.form-buttons.w50 .form-button input[type="submit"],
.form-button--wide input[type="submit"] {
    width: 100%;
    min-width: 100%;
}

.form-button--search {
    display: none;
}

.form-buttons .wpcf7-spinner,
.form .wpcf7-response-output {
    display: none;
}

/* Form - Hover and focus effects */
.form-field input:hover,
.form-field input:focus,
.form-field textarea:hover,
.form-field textarea:focus {
    color: var(--orange-dark);
}

.form-field>input:hover,
.form-field>input:focus,
.form-field>textarea:hover,
.form-field>textarea:focus {
    border-color: var(--white);
}

.form-field input:hover::-webkit-input-placeholder {
    color: var(--orange-dark);
}

.form-field input:hover:-moz-placeholder {
    color: var(--orange-dark);
}

@media (max-width: 1023px) {
    .form-footer-section {
        margin-top: 80px;
    }

    .form-footer-wrapper {
        background: var(--black-light);
    }
    .form-footer-container {
        padding: 50px 40px;
        max-width: 100%;
    }
    .form-buttons {
        justify-content: center;
    }
}

@media (max-width: 767px) {
    .form-footer-section {
        margin-top: 60px;
    }

    .form-footer-container {
        padding: 30px 20px;
    }
    .form-fields {
        gap: 16px;
    }

    .form-field input,
    .form-field textarea {
        min-height: 35px;
        padding: 0px 16px;
        font-size: 14px;
    }

    .form-button .btn-normal {
        min-height: 46px;
    }
}

@media (max-width: 499.75px) {
    .form-field.w50,
    .form-buttons.w50,
    .form-button {
        width: 100%;
    }
}

/*---------- FORM END ----------*/


/*---------- GLOBAL ----------*/

.h3-italic-classic .elementor-heading-title,
.h3-italic-classic.h3-section-italic-classic   {
    position: relative;
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.page-title {
    margin: 32px 0px 24px;
}
.section-padding {
    padding-top: 80px;
}
.section-header-container {
    margin: 0px 0px 50px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 24px
}

.section-header {
    max-width: 770px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.section-header .section-title {
    margin-top: 0px;
}

.section-header-desc {
    max-width: 380px;
    width: 100%;
}

/* Title - start */
.header-title-line {
    position: relative;
    display: flex;
    align-items: center;
}
.h3-italic-classic .elementor-heading-title:before,
.h3-italic-classic .elementor-heading-title:after,
.h3-section-italic-classic:before,
.h3-section-italic-classic:after {
    content: "";
    display: block;
    height: 1px;
    width: 100%;
    background: #636A81;
    opacity: 60%;
}

.h3-italic-classic .elementor-heading-title:before,
.h3-section-italic-classic:before {
    margin-right: 40px;
}

.h3-italic-classic .elementor-heading-title:after,
.h3-section-italic-classic:after {
    margin-left: 40px;
}

.grayscale-img {
    filter: grayscale(100%);
}

/* Title - end */

.paper-bg {
    background-image: url(/wp-content/uploads/2025/11/events-paper-bg.webp);
    background-size: cover;
}

#global-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.4);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
}

.overlay-spinner {
    width: 50px;
    height: 50px;
    border: 5px solid #fff;
    border-top-color: transparent;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

/* Table - start */

.table-container-wrap {
	overflow: auto;
    margin-inline: calc((100% - 100vw) / 2) !important;
    padding-inline: calc((100vw - 100%) / 2) !important;
}

.table-container {
	display: table;
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
}

.table-container-head,
.table-container-body {
	display: table-row-group;
}

.table-container-row {
	display: grid;
    grid-template-columns: 88px 1fr 400px repeat(3, 1fr);
}

.table-container-cell:first-child {
    min-width: 88px;
}

.table-container-cell {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 38px;
	text-align: left;
	vertical-align: top;
	border-right: 1px solid #636A8166;
	border-bottom: 1px solid #636A8166;
	padding: 16px 18px;
	min-width: 200px;
    color: var(--white);
}

.table-container-cell:last-child {
	border-right: 0px solid #636A8166;
}

.table-container-head .table-container-cell {
    justify-content: center;
	border-top: 1px solid #636A8166;
}

.table-container-col-branch {
	min-width: 360px;
	max-width: 480px;
	text-align: left;
}

/* First column (branches) */
.table-container-branch {
	color: var(--white);
}

.table-container-branch-title {
	margin: 0 0 6px;
}

.table-container-branch-sub {
	color: var(--white);
	margin: 0 0 8px;
}

/* Cell content */
.table-container-time {
	color: var(--white);
}

.table-container-note {
	color: var(--white);
}

.contact-shedule-rest-time {
	color: #ffffff66;
}

.table-container-off {
	color: var(--gray-dark);
}

/* Table - end */

@media (max-width: 1023px) {
    .section-padding {
        padding-top: 60px;
    }
    .section-header-container {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }
    .section-header-container {
        margin: 0px 0px 40px;
    }

    .h3-italic-classic .elementor-heading-title:before,
    .h3-section-italic-classic::before {
        margin-right: 12px;
    }

    .h3-italic-classic .elementor-heading-title:after,
    .h3-section-italic-classic::after {
        margin-left: 12px;
    }
}

@media (max-width: 767px) {
    .section-header-container {
        margin: 0px 0px 30px;
    }
}
/*---------- GLOBAL END ----------*/


/*---------- BREADCRUMBS ----------*/

.breadcrumbs {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 10px;
}

.breadcrumbs .breadcrumbs-item a,
.breadcrumbs .breadcrumbs-separator {
    color: var(--dark);
}

.breadcrumbs .breadcrumbs-item a:hover {
    color: var(--gray-dark);
}

.breadcrumbs .breadcrumbs-separator {
    display: inline-flex;
}

.breadcrumbs .breadcrumbs-item--last {
    color: var(--gray-dark);
}

/* white breadcrumbs */

.full-width-dark-bg .breadcrumbs .breadcrumbs-item a,
.full-width-dark-bg .breadcrumbs .breadcrumbs-separator {
    color: var(--white);
}

.full-width-dark-bg .breadcrumbs .breadcrumbs-item a:hover {
    color: var(--gray-dark);
}

.full-width-dark-bg .breadcrumbs .breadcrumbs-item--last {
    color: var(--white);
}


@media (max-width: 767px) {
    .breadcrumbs {
        font-size: 14px;
    }
}

/*---------- BREADCRUMBS END ----------*/


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

/* Исходное состояние */
#header {
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    z-index: 1001;
    transition: transform 0.4s ease, background 0.3s ease, box-shadow 0.3s ease;
    transform: translateY(0);
}

body.admin-bar header {
    top: 32px;
}

body:not(.home) .header-placeholder + main,
header+div[data-elementor-type="single-post"],
header+div[data-elementor-type="archive"] {
    margin-top: 156px;
    padding-top: 15px;
}

.home header+main {
    margin-top: 0px;
    padding-top: 0px;
}

header .header-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 44px;
    padding-top: 20px;
    padding-bottom: 20px;
}

.logo-container {
    display: flex;
    gap: 8px;
    align-items: center;
}

header .logo {
    flex-shrink: 0;
    max-width: 107px;
}

header .belarus-logo {
    max-width: 118px;
}

header .logo a {
    display: flex;
}

header .logo svg {
    width: 100%;
    height: 100%;
}

header .logo img {
    height: auto;
    width: 100%;
}

header .header-main {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

header .header-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header-contact-list {
    display: flex;
    align-items: center;
    gap: 20px;
}

.header-contact-item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.header-contact-item span,
.header-contact-item a {
    color: var(--white);
}

.header-contact-item svg {
    color: var(--purple);
}

.header-social-list {
    display: flex;
}

.header-social-item {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-social-item svg {
    color: var(--white);
    transition: var(--transition);
}

.header-social-item:hover svg {
    color: var(--purple) !important;
}

.header-top-actions {
    display: flex;
    align-items: center;
    gap: 18px;
}

.loop-icon {
    cursor: pointer;
}

.header-top-actions .eye-icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--purple);
    border: 1px solid var(--purple);
    border-radius: 50px;
    transition: var(--transition);
    cursor: pointer;
}

.header-top-actions .eye-icon:hover {
    border-color: var(--gray-light);
    background-color: var(--white);
}

.header-top-actions .eye-icon:hover svg {
    color: var(--purple);
}

.header-top-actions .loop-icon svg,
.header-top-actions .eye-icon svg{
    color: var(--white);
    transition: var(--transition);
}

.header-top-actions .loop-icon svg:hover {
    color: var(--purple);
}

.header-language-switcher {
    position: relative;
    display: flex;
    gap: 6px;
    color: #ffffff99;
}

.header-language-switcher.open a {
    color: #ffffff99;
}

a.glink {
    transition: var(--transition);
}

a.glink:hover,
a.glink.gt-current-lang {
    color: var(--white);
}

header .header-main .header-bottom-container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 24px;
}

header .header-wrapper .menu {
    width: 100%;
    display: flex;
    align-items: center;
}

header .menu .menu-wrapper {
    display: flex;
    width: 100%;
}

header .menu .menu-list {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    list-style: none;
}

header .menu .menu-item {
    width: 100%;
}

header .menu .menu-item>a {
    display: inline-block;
    width: 100%;
    padding: 10px 30px;
    background-color: #605ECA66;
    color: var(--white);
    white-space: nowrap;
    text-align: center;
    transition: var(--transition);
}

header .menu .current-menu-item>a,
header .menu .menu-item>a:hover,
header .menu .menu-item-has-children:hover > a {
    background-color: var(--purple);
}

header .burger-icon {
    display: none;
}

/* ---------- Header fixed ---------- */ 

#header.header-fixed {
    position: fixed;
    top: 0;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 3px 18px rgba(2, 21, 78, 0.09);
}

#header.header-hidden {
    transform: translateY(-100%);
}

#header.header-init-hidden {
    opacity: 0;
}

.header-white .header-contact-item span, 
.header-white .header-contact-item a,
.header-white .header-social-item svg,
.header-white .header-top-actions .loop-icon svg,
.header-white a.glink:hover, 
.header-white a.glink.gt-current-lang,
.header-wrapper.active .header-contact-item span, 
.header-wrapper.active .header-contact-item a,
.header-wrapper.active .header-social-item svg,
.header-wrapper.active .header-top-actions .loop-icon svg,
.header-wrapper.active a.glink:hover, 
.header-wrapper.active a.glink.gt-current-lang {
    color: var(--dark);
}

.header-white .burger-icon span,
.header-wrapper.active .burger-icon span {
    background-color: var(--dark);
}

.header-white .header-language-switcher,
.header-wrapper.active .header-language-switcher {
    color: var(--gray-dark);
}

/* --------------------- Submenu - start --------------------- */

header .menu-list,
header .menu-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

header .menu-list > li {
  position: relative;
  display: inline-block; 
}

header .menu-list a {
  display: block;
  padding: 10px 15px;
  text-decoration: none;
}

header .menu-list ul.sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  display: none;
  background: #fff;
  border: 1px solid var(--white);
  width: 228px;
  z-index: 10;
}

header .menu-list li:hover > ul.sub-menu {
  display: block;
}

header .menu-list ul.sub-menu ul.sub-menu {
  top: 0;
  left: 100%;
}

header .menu-list li {
  position: relative;
}

header .menu-list ul.sub-menu li a {
    padding: 12px 18px;
    white-space: normal;
    color: var(--dark);
    text-align: left;
    background-color: var(--white);
}

header .menu-list ul.sub-menu li:hover > a,
header .menu-list ul.sub-menu li.current-menu-item > a{
  background-color: var(--purple);
  color: var(--white);
}

/* --------------------- Submenu - end --------------------- */

@media (max-width: 1440px) {
    header .belarus-logo {
        max-width: 88px ;
    }
    header .menu .menu-item>a {
        padding: 10px 18px;
    }
    .header-social-item {
        width: 26px;
        height: 26px;
    }
    .header-contact-list,
    .header-top-actions {
        gap: 10px;
    }
}

@media (max-width: 1279px) {
    .header-contact-item-address {
        display: none;
    }
    header .menu .menu-item>a {
        padding: 10px 8px;
    }
}

@media (max-width: 1023px) {
    body:not(.home) .header-placeholder + main, header+div[data-elementor-type="single-post"], header+div[data-elementor-type="archive"] {
        margin-top: 80px;
    }

    #header:has(.header-wrapper.active) {
        background: white;
    }

    header .header-wrapper {
        gap: 14px;
    }

    .header-contact-list,
    .header-social-list {
        display: none;
    }

    header .header-main {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    header .header-main .header-top {
        width: 100%;
        gap: 14px;
    }

    header .header-wrapper .menu {
        position: absolute;
        top: -100vh;
        left: 0;
        display: flex;
        flex-direction: column;
        gap: 40px;
        width: 100%;
        padding: 0 0 40px 0;
        min-height: calc(100dvh - 104px);
        height: 100%;
        background: var(--white);
        transition: var(--transition);
        transition-duration: 0.6s;
        z-index: -1;
    }

    header .header-wrapper.active .menu {
        top: 104px;
    }

    header .menu .menu-wrapper {
        flex-grow: 0;
        width: 100%;
        padding: 40px 36px 0;
        overflow: auto;
    }

    header .menu .menu-list {
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
    }

    header .menu .menu-list a {
        width: fit-content;
        padding: 0px;
        font-size: 16px;
        background-color: var(--white);
        color: var(--dark)
    }

    header .menu .menu-list a:hover,
    header .menu .menu-item-has-children:hover > a,
    header .menu-list ul.sub-menu li:hover > a {
        background-color: transparent;
        color: var(--purple);
    }

    header .burger-icon {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 24px;
        height: 22px;
        margin-left: auto;
        cursor: pointer;
        z-index: 5;
        overflow: hidden;
    }

    header .burger-icon span {
        position: absolute;
        height: 2px;
        width: 100%;
        background: var(--white);
        border-radius: 30px;
        transition: var(--transition);
    }

    header .burger-icon span:nth-child(1) {
        transform: translate(0px, -10px);
        transition-delay: 0s;
    }

    header .burger-icon span:nth-child(2) {
        /* right: 0;
        width: 72%; */
        transition-delay: 0.2s;
    }

    header .burger-icon span:nth-child(3) {
        transform: translate(0px, 10px);
        transition-delay: 0s;
    }

    header .header-wrapper.active .burger-icon span:nth-child(1) {
        transform: rotate(45deg);
        transition-delay: 0.15s;
    }

    header .header-wrapper.active .burger-icon span:nth-child(2) {
        right: -100%;
        transition-delay: 0s;
    }

    header .header-wrapper.active .burger-icon span:nth-child(3) {
        transform: rotate(-45deg);
        transition-delay: 0.15s;
    }

    /* Submenu - start */

    header .menu .menu-item.menu-item-has-children {
        display: grid;
        grid-template-columns: max-content 1fr;
        grid-template-areas: 
        "menu-item-link toggle"
        "submenu submenu";
    }

    header .menu .menu-item.menu-item-has-children>a {
        grid-area: menu-item-link;
    }

    header .menu .menu-item.menu-item-has-children>.submenu-toggle {
        grid-area: toggle;
    }
    
    header .submenu-toggle svg {
        transition: var(--transition);
    }

    header .submenu-toggle.active svg {
        transform: rotate(180deg);
    }

    header .menu .menu-item.menu-item-has-children>.sub-menu:has(.menu-item-has-children) {
        grid-area: submenu;
        width: 100vw;
        margin-top: 24px;
        margin-bottom: 10px;
        padding-top: 24px;
        padding-bottom: 24px;
        margin-inline: calc(50% - 50vw) !important;
        padding-inline: calc(-50% + 50vw) !important;
        flex-direction: column;
        gap: 8px;
        border-top: 5px solid var(--purple);
        background-color: #605ECA14;
    }

    header .menu .menu-item.menu-item-has-children>.sub-menu {
        flex-direction: column;
        gap: 8px;
    }

    header .menu-list ul.sub-menu li a {
        padding: 0px;
        padding-left: 14px;
        background-color: transparent;
    }

    header .menu-list > li {
        display: block;
    }

    header .menu-list li:hover > ul.sub-menu {
        display: none;
    }

    header .menu-list .submenu-toggle {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        cursor: pointer;
        transition: transform 0.3s ease;
    }

    header .menu-list ul.sub-menu {
        display: none; /* скрыты по умолчанию */
        position: static;
        border: none;
        width: 100%;
        background: transparent;
    }

    header .menu-list ul.sub-menu ul.sub-menu {
        padding: 16px 0px 8px;

    }

    header .menu-list ul.sub-menu ul.sub-menu li a {
        padding-left: 24px;
    }

    /* Submenu - end */
}

@media (max-width: 767px) {
    body.admin-bar header {
        top: 46px;
    }

    body:not(.home) .header-placeholder + main, header+div[data-elementor-type="single-post"], header+div[data-elementor-type="archive"]{
        margin-top: 80px;
    }

    header .header-wrapper {
        padding: 18px;
    }

    header .logo {
        max-width: 70px;
    }

    header .belarus-logo {
        max-width: 50px;
    }

    header .header-main {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .header-top-actions {
        gap: 4px;
    }

    .header-top-actions .eye-icon {
        width: 30px;
        height: 30px;
        margin-left: 4px;
    }

    header .header-main .header-top {
        padding-bottom: 0;
        margin-bottom: 0;
        border-bottom: none;
    }

    header .menu .menu-wrapper {
        padding: 30px 18px 0;
    }

    header .header-actions-container {
        gap: 12px;
    }

    header .header-bottom .menu {
        min-height: calc(100dvh - 78px);
        padding: 0 0 30px 0;
    }

    header .header-wrapper.active .menu {
        top: 78px;
    }

    .header-language-switcher-container {
        position: relative;
        width: 60px;
        height: 18px;
    }

    .header-language-switcher {
        padding: 0px 10px;
        display: inline-block;
    }

    .header-language-switcher .header-language-slug,
    .header-language-switcher .header-language-separator {
        display: none;
    }

  /* показываем только текущий язык */
    .header-language-switcher .header-language-slug:has(.gt-current-lang) {
        display: inline-flex;
        align-items: center;
        cursor: pointer;
    }

    .header-language-switcher .header-language-slug:has(.gt-current-lang)::after {
        content: "▼";
        font-size: 10px;
        margin-left: 4px;
    }

    /* выпадающий список */
    .header-language-switcher.open .header-language-slug,
    .header-language-switcher.open .header-language-separator {
        display: block;
    }

    .header-language-switcher.open .header-language-slug:has(.gt-current-lang)::after {
        content: "▲";
    }

    .header-language-switcher.open {
        position: absolute;
        top: -10px;
        background: var(--purple);
        padding: 6px 10px;
        border-radius: 6px;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    }

    .header-fixed .header-language-switcher.open a.glink:hover, 
    .header-fixed .header-language-switcher.open a.glink.gt-current-lang {
        color: var(--white);
    }
    .header-fixed .header-language-switcher.open .header-language-switcher {
        color: #ffffff99;
    }

    .header-language-switcher.open .header-language-slug {
        display: block;
        padding: 4px 0;
    }

    .header-language-switcher.open .header-language-separator {
        display: none !important;
    }
}

@media (max-width: 390px) {
    header .logo {
        max-width: 60px;
    }
    header .header-wrapper.active .menu {
        top: 68px;
    }
    header .header-actions-container {
        gap: 6px;
    }

    header .cta-button {
        padding: 2px 8px;
        font-size: 16px;
    }
}

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

/*---------- FOOTER ----------*/

.footer  {
    position: relative;
    margin: 80px 0px 0px;
    background-color: var(--gray-light-primary);
    overflow: hidden;
}

.footer-wave-icon {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
}

.towel-footer-icon {
    position: absolute;
    bottom: 0;
    right: -10px;
    height: 252px;
    object-fit: contain;
}

.footer-wrapper {
    padding-top: 92px;
    padding-bottom: 64px;
}

.footer-top {
    max-width: 984px;
    width: 100%;
    display: grid;
    grid-template-columns: 357px 1fr 224px;
    justify-content: space-between;
    gap: 20px;
}

.footer-top-logos {
    display: flex;
    align-items: center;
    gap: 6px;
}

.footer-top-logos .logo img {
    max-width: 117px;
    height: auto;
}

.footer-top-logos img.belarus-logo {
    max-width: 126px;
    height: auto;
}

.footer-top-column-title {
    margin: 0px 0px 18px;
}

.column-identic {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.column-identic-info {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

footer .menu-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style: none;
}

footer .menu-list .menu-item>a {
    text-align: left;
}

.column-contacts {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.footer-social-list {
    display: flex;
}

.footer-social-item {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--purple);
    transition: var(--transition);
}

.footer-social-item:hover {
    color: var(--dark);
}

.footer-bottom {
    display: none;
}

@media (max-width: 1279px) {
    .towel-footer-icon {
        height: 100px;
    }
}

@media (max-width: 1024px) {
    .footer-top-logos {
        flex-direction: column;
        align-items: flex-start;
    }
    .footer-top {
        grid-template-columns: 194px 1fr 224px;
    }
}

@media (max-width: 767px) {
    .footer {
        margin: 40px 0px 0px;
    }
    .towel-footer-icon {
        display: none;
    }
    .column-identic-info {
        display: none;
    }

    .column-identic {
        grid-area: column-identic;
    }

    .column-pages {
        grid-area: column-pages;
    }

    .column-contacts {
        grid-area: column-contacts;
    }

    .footer-top {
        grid-template-columns: repeat(2,1fr);
        grid-template-areas: "column-identic column-identic"
        "column-pages column-contacts";
        gap: 25px 20px;
    }
}

@media (max-width: 480px) {
    .footer-wrapper {
        padding-top: 26px;
        padding-bottom: 26px;
    }
    .footer-top {
        grid-template-columns: 1fr;
        grid-template-areas: "column-identic"
        "column-pages"
        "column-contacts";
    }

    .column-contacts {
        gap: 18px;
    }

    .footer-bottom {
        margin: 50px 0px 0px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 8px;
        text-align: center;
    }
}

/*---------- FOOTER END ----------*/

/*---------- SEARCH START ----------*/

.search-bar {
    position: absolute;
    top: -100vh;
    left: 0;
    width: 100%;
    padding: 16px 0px;
    background: var(--white);
    transition: var(--transition);
    transition-duration: 0.3s;
    z-index: -1;
}  

.search-logo-container {
    display: none;
}

.search-field-preview-text {
    margin-right: 34px;
}

.search-bar-container {
    width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.search-bar-form {
    position: relative;
    width: 100%;
    display: flex;
}

.search-loop-icon-container {
    position: absolute;
    top: 12px;
    left: 18px;
}

.search-bar-closing {
    position: relative;
    z-index: 1;
    cursor: pointer;
    color: var(--white);
    transition: var(--transition);
}

.search-bar-closing {
    margin-left: 40px;
    color: var(--black);
}

.search-bar-closing:hover {
    color: var(--purple);
}

.active .search-bar {
    position: fixed;
    top: 0px;
    overflow: auto;
    z-index: 9999;
}

input.search-field {
    padding: 13px 16px 13px 44px;
    width: 100%;
    border: none;
    visibility: visible;
    border-radius: 4px;
    border: 1px solid var(--gray-light);
    color: var(--purple);
}

.search-submit {
    position: absolute;
    top: 50%;
    left: -40px;
    transform: translateY(-50%);
    height: 24px;
    width: 24px;
    cursor: pointer;
    border: none;
    background: transparent;
}

.search-bar-form .btn {
    max-width: 176px;
    min-width: 176px;
    margin-left: 16px;
}

@media (max-width: 1024px) {
    .search-bar {
        height: 100vh;
        display: flex;
        align-items: center;
        background-color: var(--dark);
    }

    .search-logo-container {
        position: absolute;
        top: 34px;
        left: 46px;
        display: flex;
    }

    .search-logo-container img {
        width: auto;
        height: 65px;
    }

    .search-loop-icon-container {
        left: 16px;
    }

    input.search-field {
        padding: 14px 0px 14px 40px;
    }

    .search-field-preview-text,
    .search-bar-closing {
        color: var(--white);
    }

    .search-bar-container {
        flex-wrap: wrap;
    }

    .search-field-preview-text {
        width: 100%;
        margin: 0px 0px 24px;
    }

    .search-bar-closing {
        position: absolute;
        top: 50px;
        right: 50px;
        margin: 0px;
    }
}


@media only screen and (max-width: 767px) {
    .search-logo-container {
        top: 26px;
        left: 26px;
    }

    .search-logo-container img {
        width: auto;
        height: 42px;
    }

    .search-bar-container {
        flex-direction: column;
    }

    .search-bar-form {
        margin: 0px;
        flex-direction: column;
        gap: 8px;
    }

    .search-field-preview-text {
        margin: 0px 0px 20px;
    }

    input.search-field {
        padding: 14px 0px 14px 42px;
    }

    .search-bar-form .btn {
        margin-left: 0px;
        min-width: 100%;
        max-width: 100%;
    }

    .search-bar-closing {
        top: 38px;
        right: 26px;
    }
}

/*---------- SEARCH END ----------*/   

/*---------- NOT FOUND START ----------*/

.not-found-img {
    width: 100%;
}

.not-found-data {
    max-width: 733px;
    width: 100%;
    margin: 24px auto 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.not-found-desc {
    margin: 18px 0px 0px;
    text-align: center;
}
.not-found-btn {
    margin: 36px 0px 0px;
}
/*---------- NOT FOUND END ----------*/   

/*---------- ELEMENTOR ----------*/

.elementor-element h1+*,
.elementor-element h2+*,
.elementor-element h3+*,
.elementor-element h4+*,
.elementor-element h5+*,
.elementor-element h6+* {
    margin-top: 1em;
}

.elementor-element p+* {
    margin-top: 1em;
}

.elementor-element p+h1,
.elementor-element p+h2,
.elementor-element p+h3,
.elementor-element p+h4,
.elementor-element p+h5,
.elementor-element p+h6 {
    margin-top: 1em;
}

.elementor-element p+ul,
.elementor-element p+ol {
    margin-top: 0.5em;
}

.elementor-element ul+*,
.elementor-element ol+* {
    margin-top: 1em;
}

.elementor-element ul+h1,
.elementor-element ul+h2,
.elementor-element ul+h3,
.elementor-element ul+h4,
.elementor-element ul+h5,
.elementor-element ul+h6,
.elementor-element ol+h1,
.elementor-element ol+h2,
.elementor-element ol+h3,
.elementor-element ol+h4,
.elementor-element ol+h5,
.elementor-element ol+h6 {
    margin-top: 1.4em;
}

.elementor-element ul>li {
    position: relative;
    list-style-type: none;
    padding-left: 1.1em;
}

.elementor-element ul>li+li {
    margin-top: 8px;
}

.elementor-element ul>li:not([class])::before {
    content: "";
    position: absolute;
    top: 6px;
    left: 1px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--purple);
}

.elementor-element ol {
    margin-left: 1.15em;
}

.elementor-element ol>li {
    margin-top: 8px;
}

.elementor-element strong {
    color: var(--purple);
    font-weight: 700;
}

.elementor-widget-text-editor a {
    position: relative;
    display: inline-flex;
    padding: 0 0 3px 0;
    color: var(--purple);
    transition: var(--transition);
}

.elementor-widget-text-editor a::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    left: 50%;
    bottom: 0;
    background-color: var(--purple);
    transition: var(--transition);
    transform: translateX(-50%);
    opacity: 1;
}

.elementor-widget-text-editor a:hover::after {
    width: 0%;
}

.elementor-widget-icon-box a {
    position: relative;
    display: inline-flex;
}

.elementor-widget-icon-box a:hover {
    color: var(--green);
}

/* Elementor blockquote - start */

.elementor-element.elementor-widget.elementor-widget-blockquote .elementor-widget-container .elementor-blockquote {
    position: relative;
    padding: 40px 100px;
    border-radius: 10px;
    box-shadow: 0px 4px 50px 0px #A68B7433;
}

.elementor-element.elementor-widget.elementor-widget-blockquote .elementor-widget-container .elementor-blockquote::before {
    content: "";
    position: absolute;
    top: 40px;
    left: 40px;
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    width: 30px;
    height: 30px;
    background-image: url(/wp-content/uploads/2025/10/open-quote.png);
}

.elementor-element.elementor-widget.elementor-widget-blockquote .elementor-widget-container .elementor-blockquote::after {
    content: "";
    position: absolute;
    bottom: 40px;
    right: 40px;
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    width: 30px;
    height: 30px;
    background-image: url(/wp-content/uploads/2025/10/close-quote.png);
}

.elementor-element.elementor-widget.elementor-widget-blockquote .elementor-blockquote__content {
    color: var(--black);
    font-weight: 400;
    font-size: 24px;
    line-height: 110%;
    letter-spacing: 3%;
}

.elementor-element.elementor-widget.elementor-widget-blockquote .elementor-blockquote__author {
    color: var(--gray);
    font-weight: 400;
    font-size: 20px;
    line-height: 110%;
    letter-spacing: 3%;
}

/* Elementor blockquote - end */

/* Elementor video - start */

.elementor-element .elementor-custom-embed-play svg {
    fill: transparent !important;
}

.elementor-element .elementor-widget-video {
    position: relative;
    overflow: hidden;
}

.elementor-element .elementor-widget-video:has(.elementor-custom-embed-image-overlay):before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
    width: 100vw;
    height: 30px;
    background-image: url(/wp-content/uploads/2025/11/management-info-wave.webp);
    background-size: contain;
}

.elementor-element .e-hosted-video:not(:has(.elementor-custom-embed-image-overlay)) {
    filter: none !important;
}

.elementor-element .elementor-custom-embed-play i, 
.elementor-element .elementor-custom-embed-play svg {
    opacity: 1;
}

/* Elementor video - end */

/* Elementor icon box - start */

.elementor-widget-icon-box .elementor-icon-box-title a {
    font-size: 30px;
    transition: var(--transition);
}

.elementor-widget-icon-box .elementor-icon-box-title a:hover {
    color: var(--purple);
}

/* Elementor icon box - end */

/* Elementor default slider - start */

.elementor-element.elementor-pagination-position-outside .swiper .elementor-swiper-button {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--purple);
}

/* Elementor default slider - end */

/* Elementor accordeom - start */

.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title {
    padding: 20px 10px;
    border: 0px;
    border-bottom: 1px solid #d5d8dc;
}

.e-n-accordion .e-n-accordion-item .elementor-element.e-child {
    padding: 10px;
    border: 0px;
}

.e-n-accordion .e-n-accordion-item .elementor-element+.elementor-element {
    padding: 20px 0px 0px;
}

/* Elementor accordeom - end */


@media (max-width: 1024px) {
    .elementor-element.elementor-widget.elementor-widget-blockquote .elementor-blockquote__content {
        font-size: 20px;
    }

    .elementor-element.elementor-widget.elementor-widget-blockquote .elementor-blockquote__author {
        font-size: 18px;
    }
}

@media (max-width: 767.75px) {
    .elementor .elementor-hidden-mobile,
    .elementor .elementor-hidden-phone {
        display: none;
    }

    .elementor-element.elementor-widget.elementor-widget-blockquote .elementor-widget-container .elementor-blockquote {
        padding: 40px 80px;
    }

    .elementor-element.elementor-widget.elementor-widget-blockquote .elementor-widget-container .elementor-blockquote::before {
        left: 30px;
    }

    .elementor-element.elementor-widget.elementor-widget-blockquote .elementor-widget-container .elementor-blockquote::before {
        right: 30px;
    }

    .elementor-element.elementor-widget.elementor-widget-blockquote .elementor-blockquote__content {
        font-size: 16px;
    }

    .elementor-element.elementor-widget.elementor-widget-blockquote .elementor-blockquote__author {
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .elementor-element.elementor-widget.elementor-widget-blockquote .elementor-widget-container .elementor-blockquote {
        padding: 40px 20px;
    }
    .elementor-element.elementor-widget.elementor-widget-blockquote .elementor-widget-container .elementor-blockquote::before,
    .elementor-element.elementor-widget.elementor-widget-blockquote .elementor-widget-container .elementor-blockquote::after {
        display: none;
    }
}
/*---------- ELEMENTOR END ----------*/

.person-title {
    margin-bottom: 10px;
    font-weight: 700;
}

.person-name {
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--e-global-color-border, #eee);
}

.contact-person {
    padding: 25px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    border-top: 3px solid #605ECA;
    transition: transform 0.3s ease;
}

.contact-person:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
}
.elementor .elementor-widget-image img  {
	border-radius:4px;
}
.elementor img.swiper-slide-image {
	border-radius:4px;
}