/*!
Theme Name: Алексей Лаврик
Author: Sergei Saltykov
Description:
Version: 1.0
Text Domain: lavr
*/


:root {
    --lavr-primary: #35276A;
    --lavr-pink: #F4AACC;
    --lavr-orange: #FCC959;
    --lavr-yellow: #E4E038;
    --lavr-green: #BBD151;
    --lavr-turquoise: #90CEC5;
    --lavr-lightblue: #AADDF9;
    --lavr-blue: #43aaff;
    --lavr-text: #35276A;
    --lavr-bg: #F4F3FA;
    --lavr-white: #FFFFFF;
    --lavr-grey: #E2E1E8;
    --lavr-padding-4: 120px;
    --lavr-padding-3: 100px;
    --lavr-padding-2: 80px;
    --lavr-padding-1: 60px;

    --bs-link-color: #35276A;
    --bs-link-color-rgb: 53, 39, 106;
    --bs-link-decoration: underline;
    --bs-link-hover-color: var(--lavr-primary);
    --bs-link-hover-color-rgb: 53, 39, 106;
    --bs-font-sans-serif: "Wix Madefor Display", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";

    --elem-green: url('data:image/svg+xml,<svg width="46" height="46" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 38.3345V0L23.0001 7.66547L46 0V38.3345L23.0001 46L0 38.3345Z" fill="%23BBD151"/></svg>');
    --elem-lightblue: url('data:image/svg+xml,<svg width="46" height="46" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 22.9982L23.0001 46L46 22.9982V0H0V22.9982Z" fill="%23AADDF9"/></svg>');
    --elem-yellow: url('data:image/svg+xml,<svg width="46" height="46" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M39.2645 6.73547L23.0001 0L6.73548 6.73547L0 23L6.73548 39.2646L23.0001 46L39.2645 39.2646L46 23L39.2645 6.73547Z" fill="%23E4E038"/></svg>');
    --elem-orange: url('data:image/svg+xml,<svg width="46" height="46" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 46H46V22.9982L23.0001 0L0 22.9982V46Z" fill="%23FCC959"/></svg>');
    --elem-pink: url('data:image/svg+xml,<svg width="46" height="46" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 23.0016L23.0016 46L46 23.0016V0H30.669L23.0016 7.6672L15.3345 0H0V23.0016Z" fill="%23F4AACC"/></svg>');
    --elem-turquoise: url('data:image/svg+xml,<svg width="46" height="46" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 46V0H22.9984L46 23.0016L22.9984 46H0Z" fill="%2390CEC5"/></svg>');

    --font-headline-1: 64px;
    --font-headline-2: 110px;

    --font-size-1: 48px;
    --font-size-2: 36px;
    --font-size-3: 32px;
    --font-size-4: 24px;

}

body {
    background-color: var(--lavr-bg);
    color: var(--lavr-text);
    font-family: 'Wix Madefor Display', sans-serif;
    line-height: 1.25;
    scroll-behavior: smooth;
}

body * {
    scroll-margin-top: var(--lavr-padding-3);
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    line-height: 1;
    font-weight: 700;
}

ol, ul {
    padding-left: 1rem;
}


.ratio-2x3 {
    --bs-aspect-ratio: 150%;
}

.ratio-3x2 {
    --bs-aspect-ratio: 66.7%;
}

.ratio-3x4 {
    --bs-aspect-ratio: 133.33%;
}

.ratio-4x3 {
    --bs-aspect-ratio: 75%;
}

.ratio-9x16 {
    --bs-aspect-ratio: 177.77%;
}

/* buttons */
.btn {
    --bs-btn-padding-x: 2.5rem;
    --bs-btn-padding-y: 0.625rem;
    --bs-btn-font-size: 1rem;
    --bs-btn-font-weight: 700;
    --bs-btn-line-height: 1.5;
    --bs-btn-border-radius: 4px;
    --bs-btn-border-width: 1px;
    --bs-btn-disabled-opacity: 0.4;
    transition: fill .15s ease-in-out, stroke .15s ease-in-out, color .15s ease-in-out, background .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn:focus-visible {
    fill: var(--bs-btn-hover-color);
    stroke: var(--bs-btn-hover-color);
}

.btn svg {
    fill: var(--bs-btn-color);
    max-width: 100%;
    max-height: 100%;
}

.btn:hover svg {
    fill: var(--bs-btn-hover-color);
}

.btn-primary {
    fill: var(--bs-btn-color);
    stroke: var(--bs-btn-color);
    --bs-btn-box-shadow: unset;
    --bs-btn-focus-box-shadow: unset;
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--lavr-primary);
    --bs-btn-hover-color: var(--lavr-primary);
    --bs-btn-hover-bg: var(--lavr-white);
    --bs-btn-border-color: var(--lavr-primary);
    --bs-btn-hover-border-color: var(--lavr-primary);
    --bs-btn-active-border-color: var(--lavr-primary);
    --bs-btn-active-color: var(--lavr-primary);
    --bs-btn-active-bg: #D9D9D9;
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--lavr-primary);
    --bs-btn-disabled-border-color: var(--lavr-primary);
    position: relative;
    z-index: 1;
    overflow: hidden;
    transition: color .15s ease-in-out;
    transition-delay: 0s;
    --circle-1-bg: var(--lavr-white);
    --circle-2-bg: var(--lavr-lightblue);
}

.btn-secondary {
    fill: var(--bs-btn-color);
    stroke: var(--bs-btn-color);
    --bs-btn-box-shadow: unset;
    --bs-btn-focus-box-shadow: unset;
    --bs-btn-color: var(--lavr-primary);
    --bs-btn-bg: var(--lavr-white);
    --bs-btn-hover-color: var(--lavr-white);
    --bs-btn-hover-bg: var(--lavr-primary);
    --bs-btn-border-color: var(--lavr-white);
    --bs-btn-hover-border-color: var(--lavr-white);
    --bs-btn-active-border-color: var(--lavr-white);
    --bs-btn-active-color: var(--lavr-white);
    --bs-btn-active-bg: var(--lavr-primary);
    --bs-btn-disabled-color: var(--lavr-primary);
    --bs-btn-disabled-bg: var(--lavr-white);
    --bs-btn-disabled-border-color: var(--lavr-white);
    position: relative;
    z-index: 1;
    overflow: hidden;
    transition: color .15s ease-in-out;
    transition-delay: 0s;
    --circle-1-bg: var(--lavr-primary);
    --circle-2-bg: var(--lavr-lightblue);
}

.btn-primary:before, .btn-secondary:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 120%;
    border-radius: 50%;
    width: 0;
    height: 0;
    padding-top: 0;
    background-color: var(--circle-1-bg);
    translate: -50% -50%;
    transition: .2s linear all;
    z-index: -1;
}

.btn-primary:after, .btn-secondary:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 120%;
    border-radius: 50%;
    width: 0;
    height: 0;
    padding-top: 0;
    background-color: var(--circle-2-bg);
    translate: -50% -50%;
    transition: .2s linear all;
    z-index: -2;
}

.btn-primary:hover:before,
.btn-secondary:hover:before {
    width: 150%;
    padding-top: 150%;
}

.btn-primary:hover:after,
.btn-secondary:hover:after {
    width: 200%;
    padding-top: 200%;
}

.btn-primary:hover, .btn-secondary:hover {
    transition: color .15s ease-in-out, background .15s ease-in-out;
    transition-delay: 0s, .2s;
    fill: var(--bs-btn-hover-color);
    stroke: var(--bs-btn-hover-color);
}

.btn-primary:active, .btn-secondary:active {
    fill: var(--bs-btn-active-color);
    stroke: var(--bs-btn-active-color);
}

.main-header {
    position: absolute;
    top: 0;
    z-index: 10;
    width: 100%;
}

.main-header .navbar {
    --bs-navbar-padding-y: 2rem;
    border-bottom: unset;
    --bs-navbar-nav-link-padding-x: 22px;
    --bs-navbar-toggler-border-radius: 0;
    --bs-navbar-toggler-padding-y: 0.25rem;
    --bs-navbar-toggler-padding-x: 0.25rem;
}

.main-header .navbar-nav {
    --bs-nav-link-font-weight: 700;
    --bs-nav-link-color: var(--lavr-primary);
    --bs-nav-link-hover-color: var(--lavr-white);
    --bs-nav-link-padding-y: 12px;
    --bs-nav-link-padding-x: 20px;
    gap: 24px;
    line-height: 22px;
}

.main-header .custom-logo-link {
    height: 60px;
    display: block;
}

.main-header .custom-logo-link img {
    height: 100%;
    width: auto;
}

.nav-item.nav-icon {
    --icon-size: 46px;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.nav-item.nav-icon:before {
    content: "";
    position: absolute;
    display: block;
    left: 0;
    top: 50%;
    translate: 0 -50%;
    height: var(--icon-size);
    width: var(--icon-size);
    aspect-ratio: 1/1;
    z-index: -1;
    transition: .3s cubic-bezier(0.3, -0.6, 0.2, 1) width, .15s linear left;
    background: var(--elem-turquoise);
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
}

.nav-item.nav-icon:hover:before {
    width: 150%;
    left: -25%;
    transition: .3s cubic-bezier(0.3, -0.6, 0.7, 1) width, .15s linear left .15s;

}

.nav-item.icon-green:before {
    background-image: var(--elem-green);
}

.nav-item.icon-lightblue:before {
    background-image: var(--elem-lightblue);
}

.nav-item.icon-yellow:before {
    background-image: var(--elem-yellow);
}

.nav-item.icon-orange:before {
    background-image: var(--elem-orange);
}

.nav-item.icon-pink:before {
    background-image: var(--elem-pink);
}

.header-phone-row {
    text-align: right;
    display: flex;
    flex-direction: column;
    justify-content: left;
    margin: 0 2rem 0 2rem;
}

.header-phone-row .phone {
    color: var(--lavr-primary);
    font-weight: 700;
    text-decoration: unset;
    font-size: 24px;
}

.header-phone-row .working-hours {
    color: var(--lavr-primary);
    font-size: 13px;
}

footer {
    background-color: var(--lavr-white);
    padding-top: var(--lavr-padding-1);
    font-size: 14px;
    margin-top: var(--lavr-padding-4);
}

footer hr {
    color: #E6E6E6;
    opacity: 1;
}

footer .small-info-title {
    font-weight: 700;
    font-size: 1.25rem;
    margin-top: .5rem;
    margin-bottom: 0.75rem;
}

footer .nav {
    --bs-nav-link-padding-x: 0;
    --bs-nav-link-padding-y: 0.25rem;
}

footer a {
    text-decoration: unset;
}

footer a.phone {
    font-size: var(--font-size-4);
    font-weight: 700;
}

.footer-menu {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.footer-logo {
    margin-bottom: 36px;
}

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

.footer-policy {
    padding: 24px 0;
    align-items: center;
}

.social-row {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.btn-social {
    padding: 3px;
    border-radius: 0;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    --bs-btn-color: var(--lavr-white);
    --bs-btn-bg: var(--lavr-primary);
    --bs-btn-hover-color: var(--lavr-white);
    --bs-btn-hover-bg: var(--lavr-primary);
    --bs-btn-border-color: var(--lavr-primary);
    --bs-btn-hover-border-color: var(--lavr-primary);
    --bs-btn-active-border-color: var(--lavr-primary);
    --card-shadow: rgba(var(--bs-link-color-rgb), 0.5);
    --bs-btn-active-color: var(--lavr-white);
    --bs-btn-active-bg: var(--lavr-primary);
    --bs-btn-disabled-color: var(--lavr-white);
    --bs-btn-disabled-bg: var(--lavr-primary);
    --bs-btn-disabled-border-color: var(--lavr-primary);
}


.page-title {
    font-size: var(--font-size-1);
    font-weight: 700;
    line-height: 1;
    position: relative;
    z-index: 1;
    margin-bottom: 1rem;
}

#fp-intro {
    background-color: var(--lavr-white);
    padding-top: var(--lavr-padding-4);
    padding-bottom: var(--lavr-padding-3);
    position: relative;
    z-index: 1;
}

#fp-intro .intro-container {
    padding-top: 120px;
}

#fp-intro .bg {
    position: absolute;
    width: 85%;
    top: 0;
    right: 0;
    z-index: -1;
    user-select: none;
    pointer-events: none;
}

#fp-intro .family {
    position: absolute;
    width: 57%;
    bottom: -48px;
    right: 0;
    user-select: none;
    pointer-events: none;
}

#fp-intro .intro-text {
    max-width: 420px;
    z-index: 1;
    position: relative;
}

#fp-intro .page-title {
    margin-bottom: 20px;
}

#fp-intro .hashtag {
    font-size: 26px;
    font-weight: 400;
    margin-bottom: 24px;
}


.classes-list {
    padding-top: var(--lavr-padding-2);
    padding-bottom: var(--lavr-padding-4);
}

.classes-row {
    --bs-gutter-x: 16px;
    --bs-gutter-y: 16px;
}

.class-item {
    height: 220px;
    background: var(--lavr-white);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    overflow: hidden;
    padding: 16px 24px;
    text-decoration: unset;
    z-index: 1;
    transition: .3s linear color, .4s linear background-color;
    transition-delay: 0.1s, 0s;
    border-radius: 4px;
    --hover-color: var(--lavr-primary);
    --hover-bg: var(--elem-green);
    --bg-size: 180px;
    --offset-x: 0;
    --offset-y: 0.5;
}

.class-item:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: var(--hover-bg);
    transition: .6s linear all;
    background-size: auto var(--bg-size), auto var(--bg-size);
    background-repeat: repeat, repeat-x;
}

.class-item.item-direction-bottom:before {
    left: 0;
    height: 150%;
    top: -150%;
    background-position: 0 100%, calc(var(--bg-size) * var(--offset-x)) calc(100% - calc(var(--bg-size) * var(--offset-y)));
}

.class-item.item-direction-bottom:hover:before {
    top: 150%;
}


.class-item.item-direction-top:before {
    left: 0;
    height: 150%;
    top: 150%;
    background-position: 0 0, calc(var(--bg-size) * var(--offset-x)) calc(var(--bg-size) * var(--offset-y));
}

.class-item.item-direction-top:hover:before {
    top: -150%;
}

.class-item.item-direction-right:before {
    left: -150%;
    width: 150%;
    top: 0;
    background-position: 100% 0, calc(100% - var(--bg-size) * var(--offset-x)) calc(var(--bg-size) * var(--offset-y));

}

.class-item.item-direction-right:hover:before {
    left: 150%;
}

.class-item.item-direction-left:before {
    left: 150%;
    width: 150%;
    top: 0;
    background-position: 0 0, calc(var(--bg-size) * var(--offset-x)) calc(var(--bg-size) * var(--offset-y));
}

.class-item.item-direction-left:hover:before {
    left: -150%;
}


.class-item:hover {
    color: var(--lavr-white) !important;
    background-color: var(--hover-color);
}

.class-item.item-bg-lightblue {
    --hover-color: var(--lavr-lightblue);
    --hover-bg: url('data:image/svg+xml,<svg width="600" height="599" viewBox="0 0 600 599" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 448.99L149.99 599L300 448.99V299H0V448.99Z" fill="%23AADDF9"/><path d="M300 298.99L449.99 449L600 298.99V149H300V298.99Z" fill="%23AADDF9"/></svg>'), url('data:image/svg+xml,<svg width="600" height="599" viewBox="0 0 600 599" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 448.99L149.99 599L300 448.99V299H0V448.99Z" fill="%23AADDF9"/><path d="M300 298.99L449.99 449L600 298.99V149H300V298.99Z" fill="%23AADDF9"/></svg>');
}

.class-item.item-bg-green {
    --hover-color: var(--lavr-green);
    --hover-bg: url('data:image/svg+xml,<svg width="600" height="550" viewBox="0 0 600 550" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_2079_8088)"><path d="M0 499.997V250L149.99 300.003L300 250V499.997L149.99 550L0 499.997Z" fill="%23BBD151"/><path d="M300 249.997V0L449.99 50.0035L600 0V249.997L449.99 300L300 249.997Z" fill="%23BBD151"/></g><defs><clipPath id="clip0_2079_8088"><rect width="600" height="550" fill="white"/></clipPath></defs></svg>');
}

.class-item.item-bg-yellow {
    --hover-color: var(--lavr-yellow);
    --bg-size: 110px !important;
    --hover-bg: url('data:image/svg+xml,<svg width="301" height="315" viewBox="0 0 301 315" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M256.684 43.9226L150.616 0L44.5498 43.9226L0.605469 149.99L44.5498 256.056L150.616 300L256.684 256.056L300.605 149.99L256.684 43.9226Z" fill="%23E4E038"/></svg>');
}

.class-item.item-bg-orange {
    --hover-color: var(--lavr-orange);
    --hover-bg: url('data:image/svg+xml,<svg width="600" height="599" viewBox="0 0 600 599" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 599H300V449.01L149.99 299L0 449.01V599Z" fill="%23FCC959"/><path d="M300 449H600V299.01L449.99 149L300 299.01V449Z" fill="%23FCC959"/></svg>'),
    url('data:image/svg+xml,<svg width="600" height="599" viewBox="0 0 600 599" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 599H300V449.01L149.99 299L0 449.01V599Z" fill="%23FCC959"/><path d="M300 449H600V299.01L449.99 149L300 299.01V449Z" fill="%23FCC959"/></svg>');
}

.class-item.item-bg-pink {
    --hover-color: var(--lavr-pink);
    --offset-x: 0.58;
    --bg-size: 140px;
    --hover-bg: url('data:image/svg+xml,<svg width="484" height="416" viewBox="0 0 484 416" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 266.01L150.01 416L300 266.01V116H200.015L150.01 166.003L100.008 116H0V266.01Z" fill="%23F4AACC"/></svg>'),
    url('data:image/svg+xml,<svg width="484" height="416" viewBox="0 0 484 416" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 266.01L150.01 416L300 266.01V116H200.015L150.01 166.003L100.008 116H0V266.01Z" fill="%23F4AACC"/></svg>');
}

.class-item.item-bg-turquoise {
    --hover-color: var(--lavr-turquoise);
    --bg-size: 130px;
    --offset-x: 0.5;
    --offset-y: 0;
    --hover-bg: url('data:image/svg+xml,<svg width="600" height="600" viewBox="0 0 600 600" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_2101_8154)"><path d="M0 600V300H149.99L300 450.01L149.99 600H0Z" fill="%2390CEC5"/><path d="M300 300V0H449.99L600 150.01L449.99 300H300Z" fill="%2390CEC5"/></g><defs><clipPath id="clip0_2101_8154"><rect width="600" height="600" fill="white"/></clipPath></defs></svg>');
}

.class-item:hover .title,
.class-item:hover .number {
    color: var(--lavr-white) !important;
}

.class-item:hover .link-icon {
    fill: var(--lavr-white) !important;
}

.class-item .number {
    color: #828282;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    transition: .3s linear color;
}

.class-item .title {
    font-size: var(--font-size-4);
    font-weight: 600;
    width: 100%;
    transition: .3s linear color;
    padding-right: 2.5rem;
    z-index: 3;
}

.class-item .link-icon {
    position: absolute;
    width: 14px;
    height: 14px;
    right: 24px;
    bottom: 20px;
    fill: var(--lavr-primary);
    transition: .3s linear fill;
}

.gallery-wrapper {
    position: relative;
}

.promo-slider-container {
    background-color: var(--lavr-primary);
    color: var(--lavr-white);
    padding-top: var(--lavr-padding-2);
    padding-bottom: var(--lavr-padding-1);
}

.promo-slider-container .tns-controls button {
    height: 12px;
    width: 42px;
    position: absolute;
    bottom: 0;
    border: 0;
}

.promo-slider-container .tns-controls button[data-controls="prev"] {
    background: url('data:image/svg+xml,<svg width="42" height="12" viewBox="0 0 42 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M41.3301 5.76172L1.45135 5.76172" stroke="white" stroke-width="2" stroke-miterlimit="10"/><path d="M5.89004 3.33786e-05L6.80542 1.03319L1.96466 5.76174L6.80542 10.4903L5.89004 11.5234L6.19888e-06 5.76174L5.89004 3.33786e-05Z" fill="white"/></svg>');
    left: 0;
}

.promo-slider-container .tns-controls button[data-controls="next"] {
    background: url('data:image/svg+xml,<svg width="42" height="12" viewBox="0 0 42 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 5.76172H39.8787" stroke="white" stroke-width="2" stroke-miterlimit="10"/><path d="M35.44 11.5234L34.5247 10.4902L39.3654 5.7617L34.5247 1.03316L35.44 0L41.3301 5.7617L35.44 11.5234Z" fill="white"/></svg>');
    right: 0;
}

.promo-slider-container .tns-nav {
    width: 100%;
    display: flex;
    margin-top: 36px;
    padding: 5px 50px;
    height: 12px;
}

.promo-slider-container .tns-nav button {
    flex-grow: 1;
    background-color: var(--lavr-white);
    height: 2px;
    border: 0;
    transition: .15s linear height, .15s linear background-color;
}

.promo-slider-container .tns-nav button:hover {
    background-color: var(--lavr-lightblue);
}

.promo-slider-container .tns-nav button.tns-nav-active {
    background-color: var(--lavr-white);
    height: 4px;
}

.promo-gallery__item {
    display: grid;
    grid-template-columns: auto 42%;
    height: 100%;
    gap: 36px;
}

.promo-gallery__item .text-container {
    display: flex;
    flex-direction: column;
    height: 100%;
    align-items: start;
}

.promo-gallery__item .subtitle {
    line-height: 1.5;
    margin-bottom: 16px;
}

.promo-gallery__item .title {
    font-size: var(--font-size-1);
    font-weight: 700;
    margin-bottom: 10px;
    margin-top: auto;
}

.promo-gallery__item .description {
    line-height: 1.5;
    margin-bottom: 1.25rem;
    max-width: 500px;
}

.promo-gallery__item .btn {
}

.promo-gallery__item .image {
    width: 100%;
    padding-top: 100%;
    flex-shrink: 0;
    position: relative;
}

.promo-gallery__item .image img {
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.ticker {
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    --ticker-duration: 80s;
    --ticker-gap: 80s;
    text-decoration: unset;
}

.ticker__row {
    animation: ticker var(--ticker-duration) infinite linear;
    pointer-events: none;
    user-select: none;
    display: flex;
    gap: var(--ticker-gap);
    align-items: center;
    transform: translateX(0);
    flex-shrink: 0;
}

.ticker__row > * {
    display: flex;
    flex-shrink: 0;
}

.ticker__row > *:last-child {
    margin-right: var(--ticker-gap);
}

.ticker.reverse .ticker__row {
    animation-direction: reverse;
}

@-moz-keyframes ticker {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-100%);
    }
}

@-webkit-keyframes ticker {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-100%);
    }
}

@keyframes ticker {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-100%);
    }
}

.fp-ticker {
    margin-top: var(--lavr-padding-4);
}

.ticker-team {
    --ticker-gap: 68px;
}

.ticker-team .item {
    font-size: 120px;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
    color: #E2E1E8;
    flex-shrink: 0;
}


.page-header {
    padding-top: 92px;
    padding-bottom: 40px;
}

.main-content{
    padding-bottom: 100px;
}

.page-title-icon {
    margin-bottom: 0;
}

.page-title .icon, .title .icon {
    position: absolute;
    left: 0;
    top: 50%;
    translate: -50% -50%;
    z-index: -1;
    width: var(--icon-size);
    height: var(--icon-size);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.icon.icon-green {
    background-image: var(--elem-green);
}

.icon.icon-lightblue {
    background-image: var(--elem-lightblue);
}

.icon.icon-orange {
    background-image: var(--elem-orange);
}

.icon.icon-pink {
    background-image: var(--elem-pink);
}

.icon.icon-yellow {
    background-image: var(--elem-yellow);
}

.icon.icon-turquoise {
    background-image: var(--elem-turquoise);
}

.row-news {
    --bs-gutter-x: 0;
    --bs-gutter-y: 2.25rem;
}

.row-news .new-post {
    border-top: 2px solid var(--lavr-primary);
    display: flex;
    flex-direction: column;
}

.card-news {
    text-decoration: unset;
    display: flex;
    flex-direction: column;
    border-right: 2px solid var(--lavr-primary);
    margin-top: 25px;
    padding: 20px 54px;
    flex-grow: 1;
}

.new-post:nth-child(3n) .card-news {
    border-right: unset;
}


.card-news .card-meta-row {
    padding-bottom: 1rem;
}

.card-news .card-meta {
    font-size: 12px;
    margin-bottom: 0;
}

.card-news .card-title {
    font-size: var(--font-size-4);
    font-weight: 600;
    margin-top: 1rem;
    margin-bottom: 0;
}

.card-news .card-photo img {
    object-fit: cover;
    object-position: center;
}

.screen-reader-text {
    display: none;
}

.row-pagination {
    margin-top: 2.25rem;
}

.row-pagination .btn {
    width: 100%;
}

.row-pagination .nav-links {
    margin: 1rem auto 0;
    display: flex;
    gap: .5rem;
}

.row-pagination .nav-links .page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    flex-shrink: 0;
    text-decoration: unset;
    line-height: 1;
    background-color: var(--lavr-white);
}

.row-pagination .nav-links a.page-numbers:hover {
    background-color: var(--lavr-primary);
    color: var(--lavr-white) !important;
}

.row-pagination .nav-links .page-numbers.current {
    font-weight: bold;
    user-select: none;
    pointer-events: none;
}

.more-news {
    margin-top: 120px
}

.more-news .more-news-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 48px;
    padding-bottom: 82px;
    --icon-size: 128px;
    padding-left: calc(var(--icon-size) * 0.5);
}

.more-news .more-news-header .title {
    position: relative;
    font-weight: 700;
    font-size: var(--font-size-2);
    margin-bottom: 0;
    line-height: 1;
}

.more-news .new-post {
    padding-bottom: 25px;
    border-bottom: 2px solid var(--lavr-primary);
}

.news-title-row {
    margin-top: 3.5rem;
    margin-bottom: 2.5rem;
    display: flex;
    align-items: baseline;
}

.news-title {
    font-size: var(--font-size-4);
    margin-bottom: 0;
    line-height: 1;
}

.news-content {
    padding: 24px 26px;
    border-radius: 4px;
    height: 100%;
    background-color: var(--lavr-white);
}

.news-content *:last-child {
    margin-bottom: 0;
}

.post_thumbnail img {
    object-position: top center;
    object-fit: contain;
    width: 100%;
    height: auto;
    max-height: 80vh;
}

.news-category-link {
    text-decoration: unset;
    opacity: 0.3;
    font-weight: 600;
}

.class-header {
    margin-top: var(--lavr-padding-3);
}

.class-header .hashtag {
    font-size: 26px;
    font-weight: 400;
    margin-top: 1rem;
}

.class-header .content {
    max-width: 600px;
}

.class-header .btn {
    margin-top: 36px;
}

.class-header .icon {
    width: calc(89% - var(--bs-gutter-x));
    padding-top: calc(89% - var(--bs-gutter-x));
    max-width: 370px;
    max-height: 370px;
    background-size: contain;
    background-position: top center;
    background-repeat: no-repeat;
    position: absolute;
    z-index: -1;
    top: 0;
}

.class-header .class-header-img {
    width: 89%;
    max-width: 370px;
    height: auto;
    margin-top: 0;

}

.spacing-x-small-half {
    margin-top: var(--lavr-padding-2);
}

.block-section {
    --icon-size: 100px;
}

.block-section hr {
    margin-top: 25px;
    margin-bottom: 25px;
    opacity: 1;
}


.block-section .title {
    position: relative;
    padding-left: 0;
    font-size: var(--font-size-1);
    line-height: 1;
    font-weight: 700;
    z-index: 1;
    margin-top: 28px;
    margin-bottom: 28px;
}

.block-section .title .icon {
    z-index: -1;
    width: var(--icon-size);
    height: var(--icon-size);
    position: absolute;
    left: calc(var(--icon-size) * -0.5);
    top: -28px;
    translate: 0;
}

.block-section .description {
    margin-top: 0;
    padding-left: var(--icon-size);
}

.block-section .block-border-right {
    border-right: 1px solid;
}

.block-section .row-table {
    text-align: center;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    line-height: 1.5;
    --bs-gutter-x: 0px;
    border-bottom: 1px solid var(--lavr-primary);
    margin-left: 2rem;
}

.block-section .row-table-header {
    margin-bottom: 12px;
    padding-bottom: 0;
    border-bottom: 0;
}

.block-section .row-table:last-child {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0;
}

.block-section .row-table > div {
    padding: 8px 8px;
}


.block-section .row-table.bg-blue div {
    background-color: var(--lavr-primary);
    color: var(--lavr-white);
}

.block-section .row-table .table-header {
    background-color: var(--lavr-white);
    padding: 8px;
    font-weight: 600;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}


.about-intro {
    padding-top: var(--lavr-padding-2);
    padding-bottom: var(--lavr-padding-2);
}

.about-ticker {
    position: relative;
    overflow: hidden;
    padding-top: var(--lavr-padding-1);
    padding-bottom: var(--lavr-padding-1);
    display: flex;
    flex-direction: column;
    gap: 42px;
}

.about-ticker:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 60%;
    height: 1px;
    background-color: var(--lavr-primary);
}

.about-ticker:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 60%;
    height: 1px;
    background-color: var(--lavr-primary);
}

.about-facts {
    margin-top: var(--lavr-padding-3);
}

.ticker-about {
    --ticker-gap: 54px;
}

.ticker-about .item-primary {
    color: #35276A;
    font-size: var(--font-size-2);
    line-height: 1;
    font-weight: 600;
    padding: 14px 42px;
    border: 1px solid var(--lavr-primary);
}

.ticker-about .item-secondary {
    color: #35276A;
    font-size: var(--font-size-2);
    line-height: 1;
    font-weight: 300;
    opacity: .5;
}

.facts-row {
    display: grid;
    gap: 32px 36px;
    grid-template-columns: 1fr 1fr;
}

.facts-row .fact {
    background-color: var(--lavr-white);
    height: 295px;
    position: relative;
    padding: 24px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.facts-row .fact.fact-green {
    background-image: url('data:image/svg+xml,<svg width="412" height="294" viewBox="0 0 412 294" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M207.714 405.286V232.188L311.571 266.812L415.428 232.188V405.286L311.571 439.903L207.714 405.286Z" fill="%23BBD151"/><path d="M0 232.188V59.0972L103.857 93.7141L207.714 59.0972V232.188L103.857 266.811L0 232.188Z" fill="%23BBD151"/><path d="M207.714 59.0974V-114L311.571 -79.3832L415.428 -114V59.0974L311.571 93.7143L207.714 59.0974Z" fill="%23BBD151"/></svg>');
}

.facts-row .fact.fact-orange {
    background-image: url('data:image/svg+xml,<svg width="412" height="294" viewBox="0 0 412 294" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M-20 431.19H225.27V308.55L102.63 185.91L-20 308.55V431.19Z" fill="%23F1BD59"/><path d="M-20 185.91H225.27V63.27L102.63 -59.3701L-20 63.27V185.91Z" fill="%23F1BD59"/><path d="M225.27 308.55H470.55V185.91L347.91 63.27L225.27 185.91V308.55Z" fill="%23F1BD59"/><path d="M225.27 63.27H470.55V-59.3701L347.91 -182L225.27 -59.3701V63.27Z" fill="%23F1BD59"/></svg>');
}

.facts-row .fact.fact-pink {
    background-image: url('data:image/svg+xml,<svg width="412" height="294" viewBox="0 0 412 294" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M-94 281.7L29.9004 405.59L153.79 281.7V157.8H71.2002L29.9004 199.1L-11.4004 157.8H-94V281.7Z" fill="%23F4AACC"/><path d="M29.9102 33.8999L153.81 157.8L277.71 33.8999V-90H195.11L153.81 -48.7002L112.51 -90H29.9102V33.8999Z" fill="%23F4AACC"/><path d="M215.771 218.5L339.67 342.4L463.57 218.5V94.6099H380.97L339.67 135.9L298.37 94.6099H215.771V218.5Z" fill="%23F4AACC"/></svg>');
}

.facts-row .fact.fact-lightblue {
    background-image: url('data:image/svg+xml,<svg width="412" height="294" viewBox="0 0 412 294" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M-44 82.8889L38.8889 165.778L121.778 82.8889V0H-44V82.8889Z" fill="%23AADDF9"/><path d="M121.777 165.778L204.666 248.666L287.555 165.778V82.8887H121.777V165.778Z" fill="%23AADDF9"/><path d="M287.556 82.8889L370.445 165.778L453.333 82.8889V0H287.556V82.8889Z" fill="%23AADDF9"/><path d="M-44 248.667L38.8889 331.556L121.778 248.667V165.778H-44V248.667Z" fill="%23AADDF9"/><path d="M121.777 331.555L204.666 414.444L287.555 331.555V248.667H121.777V331.555Z" fill="%23AADDF9"/><path d="M287.556 248.667L370.445 331.556L453.333 248.667V165.778H287.556V248.667Z" fill="%23AADDF9"/></svg>');
}

.facts-row .fact .title {
    font-size: 96px;
    padding-left: 0;
    font-weight: 700;
    margin: 0;
    position: absolute;
    line-height: .8;
}

.facts-row .fact .subtitle {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.25;
    position: absolute;
}

.facts-row .fact.fact-green .title,
.facts-row .fact.fact-orange .subtitle {
    top: 24px;
    left: 24px;
}

.facts-row .fact.fact-green .subtitle,
.facts-row .fact.fact-orange .title {
    right: 24px;
    bottom: 24px;
}


.facts-row .fact.fact-lightblue .title,
.facts-row .fact.fact-pink .subtitle {
    top: 24px;
    right: 24px;
}

.facts-row .fact.fact-lightblue .subtitle,
.facts-row .fact.fact-pink .title {
    left: 24px;
    bottom: 24px;
}

.row-team {
    --bs-gutter-x: 0;
    --bs-gutter-y: 2.25rem;
}

.team-item {
    position: relative;
    text-decoration: unset;
    overflow: hidden;
    padding-bottom: 40px;
    display: block;
    padding-left: 16px;
    padding-right: 16px;
}

.team-item .photo, .team-member-photo {
    padding-top: 100%;
    clip-path: polygon(0% 0%, 100% 0%, 100% 50%, 50% 100%, 0% 50%);
    overflow: hidden;
    background-color: var(--lavr-white);
    transition: .3s linear background-color;
    position: relative;
}

.team-item:hover .photo {
    background-color: var(--lavr-lightblue);
}

.team-item .photo img,
.team-member-photo img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 0;
}

.team-item .post {
    text-align: left;
    font-size: 13px;
    font-weight: 400;
    position: absolute;
    left: 52%;
    bottom: 0;
    width: 60%;
    transform: rotate(-45deg);
    transform-origin: top left;
    line-height: 1;

}

.team-item .name {
    text-align: right;
    font-size: 13px;
    font-weight: 700;
    position: absolute;
    right: 52%;
    bottom: 0;
    width: 60%;
    transform: rotate(45deg);
    transform-origin: top right;
    line-height: 1;
}

.team-member-title {
    font-size: var(--font-size-2);
    line-height: 1;
    font-weight: 700;
    margin-bottom: 8px;
}

.team-member-post {
    font-size: var(--font-size-4);
    font-weight: 400;
    margin-bottom: 16px;

}

.row-reviews {
    --bs-gutter-x: 30px;
    --bs-gutter-y: 30px;
}

.review-item {
    background-color: var(--lavr-white);
    position: relative;
}

.review-item.review-text {
    padding: 25px 20px 25px 35px;
    display: flex;
    flex-direction: column;
}

.review-item.review-inline .class-title-wrapper {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 1;
    padding-left: 35px;
    padding-top: 25px;
    padding-bottom: 20px;
    background-color: #ffffffcc;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.class-title {
    display: block;
    text-decoration: unset;
    font-size: 16px;
    font-weight: 700;
    line-height: 30px;
    position: relative;
    padding-left: 15px;
    z-index: 1;
}

.class-title .icon {
    display: block;
    width: 30px;
    height: 30px;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.review-item .text {
    margin-top: 20px;
    margin-bottom: 20px;
    font-weight: 400;
    line-height: 1.5;
    color: #2B2A29;
}

.review-item .author {
    text-align: end;
    color: #828282;
}

.review-item .source {
    text-align: end;
    text-decoration: unset;
}


.btn-close {
    --bs-btn-close-color: #FFF;
    --bs-btn-close-bg: url('data:image/svg+xml,<svg width="79" height="75" viewBox="0 0 79 75" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M32.9871 5.64105C32.2709 5.85647 31.5834 6.0719 30.8673 6.28732C25.4818 7.74143 20.2396 9.38403 16 13.1539C9.55461 18.9165 4.97124 25.8101 3.19519 33.9154C1.56236 41.2936 1.93476 48.6719 6.28896 55.5385C9.72649 60.9241 13.5937 65.7172 19.7813 68.5177C24.2787 70.5643 29.1485 71.2105 34.0183 71.8299C42.5262 72.8801 50.2607 70.5104 57.4508 66.7136C63.4951 63.5361 67.6202 58.4198 70.7712 52.6303C73.0343 48.4295 75.1827 44.148 75.4119 39.3009C75.8702 30.0647 73.4926 21.7439 66.6749 14.7696C57.5368 5.42562 46.2216 1.44029 32.8725 2.46355C30.4376 2.65205 28.06 3.5676 25.6537 4.10616C24.9948 4.26772 24.336 4.34851 23.6771 4.45622C23.5912 4.29465 23.5052 4.13309 23.3907 3.99845C23.8203 3.59453 24.1927 3.10982 24.6797 2.81362C27.5157 1.00945 30.7813 0.174681 34.1329 0.0400417C51.1487 -0.5793 64.2399 5.99111 73.4353 19.4012C76.4718 23.8443 77.3312 28.9876 77.9041 34.1577C78.7348 41.2936 76.3286 47.6755 72.9197 53.8689C66.7608 65.0171 57.0498 71.399 44.0158 73.7687C38.0001 74.8727 32.2423 73.9303 26.4271 72.8262C16.5442 70.9682 9.55461 65.5018 4.82801 57.2349C3.02331 54.0574 0.989439 50.9877 0.445164 47.3524C0.130057 45.1982 0.301933 42.9631 0.101411 40.782C-0.47151 34.7771 1.44778 29.3645 4.22644 24.1136C7.29157 18.4587 11.302 13.6386 16.5729 9.73409C20.6406 6.74509 25.4245 5.42562 30.4089 4.69857C31.2397 4.59086 32.1277 4.86014 33.0157 4.96785C33.0157 5.18327 33.0157 5.3987 32.9871 5.64105Z" fill="%2335276A"/><path d="M30.7937 31.9181C28.905 29.8597 27.0085 27.8076 25.1276 25.743C24.0721 24.5927 23.3741 23.5222 23.5347 23.1809C23.6919 22.895 24.2033 22.7443 24.8753 23.2553C26.6145 24.5902 28.5526 26.1862 30.3988 27.9622C36.7184 34.0825 42.8277 40.6374 48.6808 47.3999C49.8085 48.7027 50.902 50.0861 51.8532 51.3736C53.2579 53.2437 53.554 54.1122 52.9948 54.1961C52.3768 54.2749 50.8998 53.2553 49.3056 51.5916C47.8503 50.0793 46.3827 48.5241 44.9429 46.9992C40.1991 41.9768 35.4909 36.9783 30.7471 31.9558C30.7626 31.9433 30.7781 31.9307 30.7937 31.9181Z" fill="%2335276A"/><path d="M42.6553 29.3369C44.1243 26.9955 45.5844 24.6491 47.0621 22.3126C47.883 21.0042 48.7381 20.0395 49.1335 20.0731C49.472 20.1215 49.7877 20.5286 49.4881 21.2907C48.7003 23.2672 47.7132 25.5044 46.5151 27.7176C42.3729 35.3062 37.7255 42.8468 32.7867 50.2259C31.8353 51.6476 30.7916 53.0645 29.7991 54.3242C28.3647 56.1743 27.5844 56.7163 27.3207 56.2452C27.0432 55.7202 27.5974 54.0782 28.763 52.1255C29.8205 50.345 30.9173 48.5398 31.9926 46.7691C35.5334 40.9354 39.0615 35.1411 42.6023 29.3075C42.62 29.3173 42.6377 29.3271 42.6553 29.3369Z" fill="%2335276A"/></svg>');
    --bs-btn-close-opacity: 1;
    --bs-btn-close-hover-opacity: 1;
    --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    --bs-btn-close-focus-opacity: 1;
    --bs-btn-close-disabled-opacity: 0.25;
    --bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);
    box-sizing: content-box;
    position: fixed;
    display: flex;
    width: 74px;
    height: 74px;
    right: 30px;
    top: 30px;
    padding: .25em .25em;
    color: var(--bs-btn-close-color);
    background: #fff0 var(--bs-btn-close-bg) center/70px auto no-repeat;
    border: 0;
    border-radius: .375rem;
    opacity: var(--bs-btn-close-opacity)
}

.btn-close:before {
    content: '';
    position: absolute;
    background: url('data:image/svg+xml,<svg width="13" height="17" viewBox="0 0 13 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.27772 16.5607C8.10323 16.7222 7.47302 15.9683 7.41572 15.1066C7.12926 10.475 6.95739 5.84336 9.62147 1.66953C9.99387 1.10405 10.4809 0.565488 10.9965 0.161569C11.2543 -0.0269263 11.7413 0.0538558 12.1423 0C12.1423 0.323135 12.2569 0.700128 12.1137 0.969407C11.7699 1.69646 11.1397 2.34273 10.9392 3.09671C10.309 5.41251 9.62147 7.75524 9.30636 10.1249C9.0772 12.1983 9.27772 14.3526 9.27772 16.5607Z" fill="%2335276A"/><path d="M2.1749 14.9184C1.02905 14.9723 0.570717 14.326 0.427487 13.5721C-0.145435 10.9062 -0.202727 8.24032 0.628009 5.62832C0.742593 5.2244 1.34416 4.92819 1.71656 4.57812C1.8025 5.0359 1.97437 5.49368 1.97437 5.95145C2.03167 8.61731 2.06031 11.2832 2.08896 13.949C2.1176 14.2183 2.14625 14.4607 2.1749 14.9184Z" fill="%2335276A"/></svg>');
    top: calc(50% - 10px);
    width: 15px;
    height: 20px;
    background-repeat: no-repeat;
    background-position: right center;
    background-size: contain;
    left: 0;
    opacity: 0;
    transition: .2s linear transform, .2s linear opacity;
}

.btn-close:after {
    content: '';
    position: absolute;
    background: url('data:image/svg+xml,<svg width="11" height="17" viewBox="0 0 11 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 16.6953C0.171876 15.8875 0.315103 15.1335 0.515626 14.3795C1.23178 11.4982 1.74741 8.56308 1.26042 5.60101C1.03126 4.17383 0.486985 2.77358 0.171878 1.3464C0.0859399 0.915549 0.229167 0.457775 0.257813 0C0.687504 0.188495 1.23178 0.296208 1.48959 0.619343C2.00522 1.29254 2.5495 2.07345 2.72138 2.85436C3.6094 7.10897 3.89586 11.3636 1.91928 15.4566C1.57553 16.1029 1.34636 16.9646 0 16.6953Z" fill="%2335276A"/><path d="M10.1408 9.80357C9.6252 10.9615 9.10957 12.254 8.47936 13.5196C8.36477 13.735 7.87779 13.762 7.53403 13.8697C7.47674 13.6004 7.24758 13.2773 7.33352 13.0349C8.07831 10.9615 8.04966 8.83416 7.82049 6.67993C7.79185 6.35679 8.10696 6.00673 8.25019 5.68359C8.56529 5.92594 9.02363 6.11444 9.13822 6.41065C9.51061 7.43391 9.76843 8.45717 10.1408 9.80357Z" fill="%2335276A"/></svg>');
    top: calc(50% - 10px);
    width: 15px;
    height: 20px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    right: 0;
    opacity: 0;
    transition: .2s linear transform, .2s linear opacity;
}

.btn-close:hover:before {
    opacity: 1;
    transform: translateX(-100%);
}

.btn-close:hover:after {
    opacity: 1;
    transform: translateX(100%);
}

.modal-header .btn-close {
    width: 56px;
    height: 56px;
    color: var(--bs-btn-close-color);
    background: #fff0 var(--bs-btn-close-bg) left/56px auto no-repeat;
    border: 0;
    border-radius: 0;
    box-sizing: content-box !important;
    opacity: 1;
    padding: 0;
    font-weight: 400;
    text-transform: lowercase;
    filter: invert(1) grayscale(1) brightness(2);
    position: relative;
    right: 0;
    top: 0;
}


.modal-header .modal-title {
    margin-bottom: 10px;
}


.modal-form {
    background-color: var(--lavr-primary);
    color: var(--lavr-white);
    border-radius: 4px;
}

.modal {
    --bs-modal-padding: 0 56px 56px 56px;
    --bs-modal-margin: 0.5rem;
    --bs-modal-bg: var(--lavr-bg);
    --bs-modal-border-width: 0;
    --bs-modal-border-radius: 0;
    --bs-modal-inner-border-radius: 0;
    --bs-modal-header-padding-x: 56px;
    --bs-modal-header-padding-y: 36px;
    --bs-modal-header-padding: 36px 56px 36px 56px;
    --bs-modal-header-border-width: 0;
    --bs-modal-title-line-height: 1.5;
}

.modal .about-ticker {
    margin-top: auto;
    margin-bottom: 40px;
    flex-shrink: 0;
}

.modal-text {
    margin-top: 40px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.modal-text .container {
    margin: auto;
    display: flex;
    align-items: center;
    flex-direction: column;
}

.modal-fullscreen .modal-content {
    overflow-y: auto;
}

.modal-title {
    font-size: var(--font-size-1);
    text-align: center;
    margin-bottom: 24px;
    font-weight: bold;
    line-height: 1.2;
}

.modal-subtitle {
    font-size: var(--font-size-4);
    font-weight: 600;
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
    z-index: 1;
}

.modal-text .social-link {
    width: 100%;
    max-width: 410px;
    margin: 48px auto 0 auto;
}


.modal-gallery {
    margin-top: 36px;
    overflow: hidden;
    position: relative;
    margin-bottom: 60px;
    flex-shrink: 0;
}

.modal-gallery:before {
    content: "";
    position: absolute;
    width: 100%;
    top: -60px;
    height: 120px;
    border-radius: 100%;
    background-color: var(--lavr-bg);
    left: 0;
    z-index: 2;
}

.modal-gallery:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 120px;
    border-radius: 100%;
    bottom: -60px;
    background-color: var(--lavr-bg);
    left: 0;
}

.modal-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.modal-slider img {
    aspect-ratio: 1/1;
}

.form-row {
    --bs-gutter-y: 1rem;
}

.form-control {
    border: 0;
    border-radius: 4px;
    padding: 0.75rem .75rem;
}

.form-label {
    display: block;
    margin-bottom: 8px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
}


.btn-social-group {
    display: flex;
    gap: 16px;
    align-items: center;
    z-index: 2;
}

.btn-social-group .form-floating {
    flex-grow: 1;
}

.btn-social-group .btn-social {
    --bs-btn-bg: var(--lavr-white);
    background-color: var(--lavr-white);
    position: relative;
    padding: 0;
    width: 48px;
    height: 48px;
    border: none;
    flex-shrink: 0;
    border-radius: 4px;
}

.btn-social-group .btn-social img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.btn-check:checked + .btn-social {
    border: none;
    background-color: var(--lavr-lightblue);
}

.wpcf7-acceptance .wpcf7-list-item {
    margin-left: 0;
}

.row-submit {
    position: relative;
}

.row-submit .btn {
    width: 100%;
}

.row-submit .wpcf7-spinner {
    margin: 0;
    position: absolute;
    left: 0;
    top: 50%;
    translate: 50% -50%;
    z-index: 1;
}

.wpcf7-acceptance {
    color: white;
}

.wpcf7-acceptance .form-check-input[type=checkbox] {
    border-color: var(--lavr-white);
    background-color: transparent;
    margin-top: 0;
    width: 1rem;
    height: 1rem;
    border-radius: 0;
}

.wpcf7-acceptance .form-check-input[type=checkbox]:checked {
    border-color: var(--lavr-white);
}

.link-secondary {
    color: white;
}

.link-secondary:focus, .link-secondary:hover {
    color: white;
}

.wpcf7-acceptance label {
    display: flex;
    gap: 1rem;
}

section.hello {
    height: 700px;
}

.hello-container {
    display: flex;
    flex-direction: column;
    height: 100%;
    position: relative;
    justify-content: end;
}

.hello-bg {
    position: absolute;
    bottom: 0;
    left: 50%;
    translate: -50% 0;
    z-index: -1;
    width: 61.5%;
}

.lavrik-hello {
    position: absolute;
    bottom: 0;
    left: 53%;
    translate: -50% 0;
    z-index: 2;
    width: 36.4%;
    height: auto;
}

.hello-title {
    margin-bottom: auto;
    margin-top: 160px;
}

.hello-text__headline {
    font-size: var(--font-headline-1);
    color: var(--lavr-grey);
    text-transform: uppercase;
    font-weight: bold;
    line-height: 1.1;
}

.hello-text__name {
    font-size: var(--font-headline-2);
    color: var(--lavr-primary);
    text-transform: uppercase;
    font-weight: 900;
    line-height: 1.1;
}

.tooltip-qr {
    background-color: var(--lavr-primary);
    color: var(--lavr-white);
    font-weight: bold;
    padding: 15px 40px;
    line-height: 1.5;
    border-radius: 4px;
}

.hello-row {
    z-index: 3;
    align-items: end;
    padding-bottom: 40px;
    display: flex;
    justify-content: space-between;
}

.hello-row .col-right {
    display: flex;
    width: 290px;
    max-width: 100%;
    flex-direction: column;
}

.hello-text__small {
    position: relative;
    width: 245px;
}

.line-top {
    position: relative;
}

.line-top:before {
    position: absolute;
    content: "";
    width: 100px;
    height: 2px;
    display: block;
    top: -20px;
    left: 0;
    background-color: var(--lavr-primary);
}

.block-section.quote {
    padding-top: calc(var(--lavr-padding-3) * 0.5);
    padding-bottom: calc(var(--lavr-padding-3));
    position: relative;
}

.block-section.quote .decor-arrow {
    position: absolute;
    left: 50%;
    top: -40px;
    z-index: 3;
    width: 360px;
}

.quote-tooltip {
    position: relative;
    margin-bottom: 12px;
}

.quote-tooltip__bg {
    position: relative;
    z-index: -1;
    width: 100%;
}

.quote-tooltip__text {
    position: absolute;
    color: var(--lavr-white);
    font-weight: 500;
    font-size: var(--font-size-4);
    top: 36%;
    left: 15%;
    right: 14%;
    text-align: center;
}

.quote-find {
    font-size: var(--font-size-3);
    font-weight: bold;
    line-height: 1.2;
}

.quote .btn-row {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 40px;
}

.hl {
    position: relative;
}

.hl:before {
    content: '';
    position: absolute;
    border-radius: 4px;
    height: 117%;
    width: 102%;
    left: -1%;
    top: 3%;
    z-index: -1;
}

.hl.item-bg-green:before {
    background-color: var(--lavr-green);
}

.hl.item-bg-turquoise:before {
    background-color: var(--lavr-turquoise);
}

.hl.item-bg-pink:before {
    background-color: var(--lavr-pink);
}

.hl.item-bg-lightblue:before {
    background-color: var(--lavr-lightblue);
}

.hl.item-bg-orange:before {
    background-color: var(--lavr-orange);
}

.hl.rotate1:before {
    rotate: -1.56deg;
}

.hl.rotate2:before {
    rotate: -1.86deg;
}

.hl.rotate3:before {
    rotate: 2.68deg;
}

.hl.rotate4:before {
    rotate: 0.2deg;
}

.quote-find .hl:before {
    top: 10%;
    height: 100%;
    left: -3%;
    width: 102%;
}

.quote-find .hl.rotate1:before {
    width: 120%;
    left: -13%;
    top: 0;
}


.block-section.belief {
    background-color: var(--lavr-white);
    margin-top: var(--lavr-padding-3);
    padding-top: var(--lavr-padding-2);
}

.belief .description {
    background: url(./img/line-2.svg) no-repeat center;
    background-size: 100% 100%;
    width: 290px;
    padding: 32px 30px 25px 70px;
    margin-left: 0;
}

.belief-nav {
    display: flex;
    gap: 16px;
    margin-bottom: 40px;
}

.belief-nav .nav-item {
    flex: 1;
}

.belief-tab-btn {
    background: unset;
    position: relative;
    z-index: 1;
    width: 100%;
    height: 60px;
    border: none;
    font-weight: bold;
    font-size: 18px;
    color: var(--primary-color);
    transition: .2s linear color;
    padding: 0;

    --primary-color: var(--lavr-primary);
    --hover-color: var(--lavr-primary);
    --hover-bg: transparent;
    --primary-bg: transparent;

}

.belief-tab-btn:before {
    content: "";
    position: absolute;
    width: 95%;
    height: 90%;
    background-color: var(--primary-bg);
    z-index: -1;
    left: 2%;
    top: 10%;
    transition: .2s linear background-color;
}

.belief-tab-btn:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 1;
    user-select: none;
    pointer-events: none;
    background: url("./img/square-1.svg");
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.belief-tab-btn.active:before,
.belief-tab-btn:hover:before {
    background-color: var(--hover-bg);
}

.belief-tab-btn.active,
.belief-tab-btn:hover {
    color: var(--hover-color);
}


.belief-tab-btn.nav-green {
    --primary-color: var(--lavr-green);
    --hover-bg: var(--lavr-green);
}

.belief-tab-btn.nav-turquoise {
    --primary-color: var(--lavr-turquoise);
    --hover-bg: var(--lavr-turquoise);
}

.belief-tab-btn.nav-orange {
    --primary-color: var(--lavr-orange);
    --hover-bg: var(--lavr-orange);
}


.belief-tab-btn.nav-pink {
    --primary-color: var(--lavr-pink);
    --hover-bg: var(--lavr-pink);
}

.belief .row-tab {
    --bs-gutter-x: 3rem;
}

.belief .col-text {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.belief .decor-line {
    background-image: url("./img/arrow-2.svg");
    background-size: auto 95%;
    background-repeat: no-repeat;
    background-position: center;
    flex-grow: 1;
}

.social-link {
    margin-top: auto;
    display: flex;
    gap: 3rem;
    justify-content: space-between;
    align-items: end;
}

.social-link .btn-social {
    margin-left: auto;
    flex-shrink: 0;
    width: 36px;
    height: 36px;
}

.social-link .btn-social-full {
    margin-left: auto;
    flex-shrink: 0;
    width: 100%;
    height: auto;
    font-weight: normal;
    text-align: left;
    padding: 10px 40px;
    line-height: 1;
}

.social-link .btn-social-full svg {
    margin-left: 10px;
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    fill: var(--lavr-text);
    background: var(--lavr-white);
    padding: 4px;
}

.belief .books {
    position: relative;
    height: 340px;
    width: auto;
    margin: auto;
    margin-bottom: -28px;
    object-fit: contain;
}

.belief .col-books .decor-line {
    background-image: url("./img/line-1.svg");
    background-size: 100%;
    background-position: top center;
    width: 225px;
    margin-top: 12px;
}

.belief .col-books .text-books {
    width: 250px;
}

.belief .col-books {
    width: 360px;
    flex-grow: 0;
}

.belief .col-books .btn {
    width: 100%;
    font-size: 16px;
}


.block-section.pedagogy {
    padding-top: var(--lavr-padding-3);
    background-color: var(--lavr-white);
    padding-bottom: var(--lavr-padding-2);
}

.pedagogy-about {
    display: flex;
    justify-content: space-between;
    padding-top: 32px;
}

.pedagogy-about__circles {
    min-height: 280px;
    display: grid;
    margin-left: auto;
    grid-template-columns: repeat(4, 1fr);
    align-content: start;
}

.pedagogy-about__circles .placeholder-1 {
    grid-row: 1 / 2;
    grid-column: 2 / 3;
    height: 80px;
}

.pedagogy-about__circles .placeholder-2 {
    grid-row: 1 / 2;
    grid-column: 4 / 5;
    height: 80px;
}

.pedagogy-about__circles .circle {
    grid-row: span 2;
    width: 200px;
    height: 200px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    font-size: calc(var(--font-size-4) * .75);
    font-weight: bold;
    padding: 20px;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    /*margin-left: -10px;*/
    position: relative;
    z-index: 1;
    cursor: pointer;
}

.pedagogy-about__circles .circle:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0%;
    left: -1.5%;
    border-radius: 50%;
    background-color: var(--hover-bg);
    z-index: -1;
    opacity: 0;
    transition: .2s linear opacity;
    user-select: none;
    pointer-events: none;
}

.circle:hover:before {
    opacity: .5;
}

.pedagogy-about__circles .circle.circle-blue {
    background-image: url("./img/circle-1.svg");
    --hover-bg: var(--lavr-blue);
}

.pedagogy-about__circles .circle.circle-green {
    background-image: url("./img/circle-2.svg");
    --hover-bg: var(--lavr-green);
}

.pedagogy-about__circles .circle.circle-turquoise {
    background-image: url("./img/circle-3.svg");
    --hover-bg: var(--lavr-turquoise);
}

.pedagogy-about__circles .circle.circle-yellow {
    background-image: url("./img/circle-4.svg");
    --hover-bg: var(--lavr-yellow);
}

.pedagogy-about__text {
    width: 380px;
    z-index: 1;
}

.pedagogy__academy-link {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    font-weight: bold;
    width: 250px;
    font-size: 14px;
    margin-top: 24px;
}

.pedagogy__academy-link img {
    width: 100%;
}

.block-section.community {
    margin-top: var(--lavr-padding-3);
}

.lavr-directions {
    position: relative;
    height: 470px;
    margin-top: var(--lavr-padding-1);
    margin-left: 117px;
    width: 1110px;
}

.direction {
    position: absolute;
    cursor: pointer;
    --primary-bg: transparent;
    --hover-bg: transparent;
    --hover-color: var(--lavr-primary);
    --primary-color: transparent;

    --base-bg: var(--primary-bg);
    --base-color: var(--primary-color)
}

.direction svg {
    fill: transparent;
    width: 100%;
    height: auto;
}

.direction .bg {
    transition: .2s linear fill;
    fill: var(--base-bg);
}

.direction .svg {
    width: 100%;
    height: auto;
}

.direction-title {
    position: absolute;
    font-weight: bold;
    font-size: var(--font-size-4);
    color: var(--base-color);
    transition: .2s linear color;
    display: flex;
    top: 0;
    left: 0;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 100%;
    height: 100%;
    padding: 10% 20%;
}

.direction:hover .direction-title {
    --base-color: var(--hover-color);
}

.direction:hover .bg {
    --base-bg: var(--hover-bg);
}

.direction-community {
    --primary-color: var(--lavr-white);
    --primary-bg: var(--lavr-primary);
    --hover-bg: var(--lavr-lightblue);
    width: 470px;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
}

.direction-community .direction-title {
    font-size: var(--font-size-1);
}

.direction-center {
    --primary-color: var(--lavr-green);
    --hover-bg: var(--lavr-green);
    width: 388px;
    left: 0;
    bottom: 0;
}

.direction-kindergarten {
    --primary-color: var(--lavr-pink);
    --hover-bg: var(--lavr-pink);
    width: 388px;
    right: 0;
    bottom: 0;
}

.lavr-directions .text-1 {
    position: absolute;
    right: 35px;
    top: 73px;
    width: 245px;
}

.lavr-directions .text-2 {
    position: absolute;
    bottom: 190px;
    left: 38px;
    width: 323px;
}

.lavr-directions .text-3 {
    position: absolute;
    bottom: 200px;
    right: 30px;
    width: 300px;
}

.lavr-directions .decor-1 {
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url("./img/decor-1.svg");
    aspect-ratio: 54/44;
    top: 24px;
    left: -36px;
    width: 54px;
    pointer-events: none;
}

.lavr-directions .decor-2 {
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url("./img/decor-2.svg");
    aspect-ratio: 2/1;
    width: 68px;
    top: calc(100% + 13px);
    left: 200px;
    pointer-events: none;
}

.lavr-directions .decor-3, .lavr-directions .decor-4 {
    position: absolute;
    width: 135px;
    height: 62px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.lavr-directions .decor-3 {
    background-image: url("./img/arrow-3.svg");
    left: 329px;
    bottom: 163px;
}

.lavr-directions .decor-4 {
    background-image: url("./img/arrow-4.svg");
    right: 335px;
    bottom: 158px;
}

.block-section.speaker {
    margin-top: var(--lavr-padding-3);
    height: 850px;
}

.block-section.speaker .tooltip-qr {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    line-height: 1.2;
}

.block-section.speaker .tooltip-qr .btn-row {
    flex-shrink: 0;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-left: auto;
}

.block-section.speaker .tooltip-qr .btn {
    --bs-btn-padding-x: 12px;
}

.block-section.speaker .tooltip-qr .btn-social-vk:hover:before {
    width: 250%;
    height: 250%;
}

.block-section.speaker .tooltip-qr .btn-social-vk:hover:after {
}

.block-section.speaker .decor-line-5 {
    position: absolute;
    width: 125px;
    bottom: 120px;
    left: 240px;
}

.block-section.speaker .decor-line-6 {
    position: absolute;
    width: 100px;
    bottom: 90px;
    right: 270px;
}

.block-section.speaker .container {
    height: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
}

.block-section.speaker .lavrik-bottom {
    position: absolute;
    width: 38.7%;
    height: auto;
    bottom: 0;
    left: 33%;
}

.quote-tooltip-2 {
    position: relative;
    width: 600px;
    top: -30px;
    left: -60px;
}

.quote-tooltip-2 .quote-tooltip__text {
    top: 23%;
    left: 8%;
    right: 16%;
    font-weight: 600;
}

.block-section.speaker .tooltip-qr {
    position: absolute;
    bottom: 60px;
    left: calc(50% - 233px);
    width: 466px;
}

.speaker-thesis {
    display: grid;
    gap: 12px 8px;
    font-size: var(--font-size-4);
    font-weight: bold;
    text-align: center;
    grid-auto-columns: 1fr 1fr;
    grid-auto-rows: 110px 110px 110px 120px;
    width: 380px;
    z-index: 1;
}

.speaker-thesis * {
    display: flex;
    align-items: center;
    justify-content: center;
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    padding: 20px;
}

.speaker-thesis .thesis-1, .speaker-thesis .thesis-2, .speaker-thesis .thesis-3 {
    grid-column: span 2;
    background-image: url("./img/square-4.svg");

}

.speaker-thesis .thesis-4 {
    background-image: url("./img/square-6.svg");

}

.speaker-thesis .thesis-5 {
    background-image: url("./img/square-5.svg");
}

.kg-row {
    --bs-gutter-x: 60px;
    margin-top: 80px;
    margin-bottom: 60px;
    position: relative;
}

.decor-line-9 {
    position: absolute;
    right: calc(50% + 300px);
    top: 70px;
}

.decor-line-7 {
    position: absolute;
    display: block;
    padding: 0;
    width: 75px;
    height: auto;
    left: calc(50% - 85px);
    bottom: calc(100% + 10px);
}

.decor-line-8 {
    position: absolute;
    display: block;
    padding: 0;
    width: 75px;
    height: auto;
    left: calc(50% + 10px);
    bottom: calc(100% + 12px);
}

.kg-item {
    width: 360px;
}

.kg-item .kg-title {
    font-weight: bold;
    font-size: 24px;
    margin-bottom: 24px;
}

.kg-item .kg-photo {
    width: 100%;
    height: auto;
    aspect-ratio: 3/2;
    object-fit: cover;
    object-position: center;
    border-radius: 4px;
}

.kg-item .social-link {
    width: 100%;
    margin-top: 24px;
    align-items: center;
}


#cookie-banner {
    display: none;
    position: fixed;
    bottom: 0;
    padding-top: .75rem;
    padding-bottom: .75rem;
    width: 100%;
    left: 0;
    z-index: 1000;
    background-color: var(--lavr-primary);
    color: var(--lavr-white);
    font-size: 15px;
}

#cookie-banner a {
    color: var(--lavr-white);
}

#cookie-banner .btn {
    font-weight: normal;
    font-size: 15px;
    --bs-btn-padding-y: .5rem;
    --bs-btn-padding-x: 1rem;
}


@media (max-width: 1399.98px) {

    :root {

        --lavr-padding-4: 96px;
        --lavr-padding-3: 80px;
        --lavr-padding-2: 64px;
        --lavr-padding-1: 54px;


        --font-headline-1: 50px;
        --font-headline-2: 96px;
        --font-size-1: 42px;
        --font-size-2: 32px;
        --font-size-3: 28px;
        --font-size-4: 20px;
    }

    #fp-intro .intro-container {
        padding-top: 60px;
    }

    section.hello {
        height: 630px;
    }

    .block-section {
        --icon-size: 90px;
    }

    .block-section .title .icon {
        top: -20px;
        left: calc(var(--icon-size) * -0.4);
    }

    .block-section.quote .decor-arrow {
        left: 52%;
        top: -20px;
        width: 300px;
    }

    .lavr-directions {
        margin-left: 0;
    }

    .quote-tooltip-2 {
        position: relative;
        width: 550px;
        top: -30px;
        left: -60px;
    }

    .tooltip-qr {
        padding: 12px 16px;
    }

    .belief-nav {
        gap: 10px;
        margin-bottom: 32px;
    }

    .belief-tab-btn {
        font-size: 15px;
    }


    .pedagogy-about__circles .circle {
        width: 180px;
        height: 180px;
    }

    .pedagogy-about__circles .placeholder-2, .pedagogy-about__circles .placeholder-1 {
        height: 72px;
    }

    .pedagogy__academy-link {
        width: 230px;
    }

    .speaker-thesis {
        width: 370px;
        gap: 6px 8px;
        grid-auto-rows: 105px 105px 105px 115px;
    }

    .block-section.speaker {
        height: 790px;
    }

    .block-section.speaker .decor-line-5 {
        position: absolute;
        width: 110px;
        bottom: 140px;
        left: 230px;
    }

    .block-section.speaker .decor-line-6 {
        width: 90px;
        right: 230px;
    }

    .belief .row-tab {
        --bs-gutter-x: 2rem;
    }

    .kg-row {
        margin-bottom: 0;
    }

    .social-link {
        gap: 2rem;
        font-size: 15px;
    }
}

@media (max-width: 1199.98px) {

    :root {
        --lavr-padding-4: 80px;
        --lavr-padding-3: 60px;
        --lavr-padding-2: 48px;
        --lavr-padding-1: 32px;

        --font-headline-1: 42px;
        --font-headline-2: 78px;
        --font-size-1: 36px;
        --font-size-2: 28px;
        --font-size-3: 24px;
        --font-size-4: 18px;
    }

    .btn {
        --bs-btn-padding-x: 1.75rem;
        --bs-btn-padding-y: 6px;
    }


    .custom-logo {
        height: 36px;
    }

    .main-header .navbar-nav {
        --bs-nav-link-padding-y: 8px;
        gap: 10px;
    }

    .main-header .navbar {
        --bs-navbar-nav-link-padding-x: 16px;
    }

    .nav-item.nav-icon {
        --icon-size: 36px;
    }


    .page-title, .promo-gallery__item .title {
        font-size: 46px;
    }

    .class-item .title {
        font-size: 20px;
    }

    .class-item {
        height: 160px;
        padding: 16px 20px;
    }


    .ticker-team {
        --ticker-gap: 52px;
    }

    .ticker-team .item {
        font-size: 100px;
    }


    .footer-info-wrapper {
        gap: 20px;
    }


    .footer-policy {
        padding: 20px 0;
    }

    .new-post .card-news, .new-post:nth-child(3n) .card-news {
        border-right: 2px solid var(--lavr-primary);
    }

    .new-post:nth-child(2n) .card-news {
        border-right: unset;
    }

    .page-title, .promo-gallery__item .title {
        font-size: 36px;
    }

    .page-header {
        padding-top: 64px;
        padding-bottom: 28px;
    }

    .more-news .more-news-header {
        padding-top: 36px;
        padding-bottom: 64px;
    }

    .header-phone-row .phone {
        font-size: 22px;
    }

    .header-phone-row {
        margin: 0 1rem 0 0;
    }

    section.hello {
        height: 560px;
    }

    .lavr-directions {
        width: 100%;
    }

    .direction-community {
        width: 400px;
    }

    .lavr-directions .decor-2 {
        width: 56px;
        top: calc(100% + -5px);
        left: 200px;
    }

    .lavr-directions .decor-1 {
        top: 24px;
        left: -30px;
        width: 42px;
    }

    .block-section {
        --icon-size: 72px;
    }

    .tooltip-qr {
        font-size: 13px;
    }

    .main-header .custom-logo-link {
        height: 50px;
        display: block;
    }

    .block-section .title .icon {
        top: -10px;
        left: calc(var(--icon-size) * -0.3);
    }

    .belief-tab-btn {
        height: 44px;
        font-size: 13px;
    }

    .belief-nav {
        margin-bottom: 24px;
    }

    .belief .description {
        width: 250px;
        padding: 31px 20px 25px 47px;
    }

    .pedagogy-about__circles .circle {
        width: 154px;
        height: 154px;
    }

    .pedagogy__academy-link {
        width: 200px;
    }

    .belief .col-books {
        width: 320px;
    }

    .belief .books {
        height: 300px;
        margin-bottom: 0;
    }

    .belief .row-tab {
        --bs-gutter-y: 1.5rem;
        --bs-gutter-x: 1.5rem;
    }

    .belief .decor-line {
        min-height: 100px;
    }

    .lavr-directions .text-3 {
        bottom: 180px;
        right: 0;
    }


    .lavr-directions .text-2 {
        bottom: 170px;
        left: 0;
    }

    .lavr-directions .decor-3, .lavr-directions .decor-4 {
        width: 120px;
        height: 50px;
    }

    .speaker-thesis {
        width: 260px;
        grid-auto-rows: 80px 80px 80px 88px;
    }

    .block-section.speaker {
        height: 680px;
    }

    .block-section.speaker .decor-line-6 {
        width: 72px;
        bottom: 100px;
        right: 170px;
    }

    .quote-tooltip-2 {
        width: 450px;
        top: -30px;
        left: -40px;
    }

    .block-section.speaker .decor-line-5 {
        width: 90px;
        bottom: 140px;
        left: 190px;
    }


    .block-section.speaker .tooltip-qr {
        bottom: 40px;
        left: calc(50% - 210px);
        width: 420px;
    }

    .modal-subtitle {
        max-width: 550px;
    }

    .decor-line-9 {
        position: absolute;
        right: calc(50% + 250px);
        top: 70px;
        width: 230px;
    }

    .lavr-directions .text-1 {
        right: 0;
    }

    .modal-gallery {
        margin-top: 24px;
        overflow: hidden;
        margin-bottom: 30px;
    }

    .modal-gallery:before {
        top: -50px;
        height: 100px;
        border-radius: 50%;
    }

    .modal-gallery:after {
        height: 100px;
        border-radius: 50%;
        bottom: -50px;
    }

    .kg-item {
        width: 100%;
    }

    .kg-row {
        --bs-gutter-x: 32px;
        margin-top: 40px;
    }

    .kg-item .kg-title {
        font-size: 20px;
        margin-bottom: 16px;
    }

    .kg-item .social-link {
        margin-top: 16px;
    }
}

@media (max-width: 991.98px) {

    :root {
        --font-headline-1: 32px;
        --font-headline-2: 58px;
        --font-size-1: 32px;
        --font-size-2: 24px;
        --font-size-3: 20px;
        --font-size-4: 16px;
    }

    #primary-menu {
        margin-top: 16px;
        margin-bottom: 16px;
    }


    .footer-logo {
        margin-bottom: 24px;
    }

    .footer-info-wrapper {
        display: grid;
        grid-template-columns: 1fr 1fr;
        margin-bottom: 20px;
    }

    .class-item {
        height: 140px;
        padding: 12px 12px;
    }

    .class-item .title {
        font-size: 18px;
    }

    .class-item .link-icon {
        right: 12px;
        top: 12px;
        bottom: unset;
    }

    .class-item .number {
        right: 14px;
        top: 16px;
        bottom: unset;
        width: 12px;
        height: 12px;
    }


    .ticker-team .item {
        font-size: 80px;
    }


    .page-header {
        padding-top: 54px;
        padding-bottom: 20px;
    }

    .about-ticker {
        gap: 24px;
    }

    .ticker-about {
        --ticker-gap: 42px;
    }

    .ticker-about .item-primary {
        padding: 10px 20px;
    }

    .facts-row .fact {
        height: 250px;
    }

    .facts-row .fact .title {
        font-size: 72px;
    }

    .block-section {
        --icon-size: 60px;
    }

    .block-section .title .icon {
        top: -16px;
    }

    .block-section .title {
        margin-top: 16px;
        margin-bottom: 16px;
    }

    .facts-row {
        gap: 20px 24px;
    }

    .facts-row .fact {
        height: 200px;
    }

    .facts-row .fact.fact-lightblue .title, .facts-row .fact.fact-pink .subtitle {
        top: 20px;
        right: 20px;
    }

    .facts-row .fact.fact-lightblue .subtitle, .facts-row .fact.fact-pink .title {
        left: 20px;
        bottom: 20px;
    }

    .row-news {
        --bs-gutter-y: 2rem;
    }

    .card-news {
        margin-top: 20px;
        padding: 16px 32px;
    }

    .block-section.quote .decor-arrow {
        left: 40%;
        top: -89px;
        width: 175px;
        rotate: 78deg;
        scale: -1 1 1;
    }

    .pedagogy-about {
        flex-direction: column;
        padding-top: 16px;
    }

    .pedagogy-about__text {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
    }

    .pedagogy__academy-link {
        flex-shrink: 0;
    }


    .pedagogy-about__circles {
        margin-left: 0;
        margin-top: 32px;
    }

    .pedagogy-about__circles .circle {
        width: 174px;
        height: 174px;
    }

    .quote-find {
        margin-bottom: 2rem;
        text-align: center;
    }

    .belief-title {
        position: relative;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 2rem;
    }

    .belief-title .description {
        font-size: 14px;
    }

    .quote .btn-row {
        margin-top: 20px;
    }

    section.hello {
        height: 650px;
    }

    .hello-bg {
        bottom: 200px;
    }

    .lavrik-hello {
        bottom: 200px;
    }

    .tooltip-qr {
        width: 350px;
        margin: auto;
        max-width: 100%;
    }

    .hello-row {
        flex-wrap: wrap;
        gap: 1rem 0;
    }

    .hello-title {
        margin-top: 130px;
    }

    .direction-center {
        width: 48%;
        bottom: 100px;
    }

    .direction-kindergarten {
        width: 48%;
        bottom: 70px;
    }

    .lavr-directions .decor-4 {
        right: 200px;
        bottom: 230px;
    }

    .lavr-directions .decor-3 {
        left: 200px;
        bottom: 250px;
    }

    .lavr-directions .text-2 {
        bottom: 0;
    }

    .lavr-directions .text-3 {
        bottom: 0;
    }

    .lavr-directions .text-1 {
        width: 180px;
    }

    .direction-community {
        width: 350px;
        left: 46%;
    }

    .lavr-directions {
        height: 510px;
    }

    .lavr-directions .decor-2 {
        width: 44px;
        top: calc(100% - 36px);
        left: 270px;
    }

    .lavr-directions .decor-1 {
        top: 32px;
        left: -10px;
        width: 32px;
    }

    .hello-row {
        padding-bottom: 0;
    }

    .belief .decor-line {
        background-position: calc(100% - 40px);
    }

    .quote-tooltip-2 {
        width: 400px;
    }

    .quote-tooltip-2 .quote-tooltip__text {
        left: 8%;
    }

    .speaker-thesis {
        grid-auto-rows: 68px 68px 68px 76px;
        width: 225px;
    }

    .block-section.speaker .decor-line-6 {
        width: 72px;
        bottom: 180px;
        right: 150px;
    }

    .block-section.speaker .decor-line-5 {
        width: 80px;
        bottom: 210px;
        left: 170px;
    }

    .decor-line-9 {
        display: none;
    }
}

@media (max-width: 767.98px) {

    :root {
        --lavr-padding-4: 64px;
        --lavr-padding-3: 40px;
        --lavr-padding-2: 32px;
        --lavr-padding-1: 24px;

        --font-headline-1: 22px;
        --font-headline-2: 40px;
        --font-size-1: 26px;
        --font-size-2: 22px;
        --font-size-3: 18px;
        --font-size-4: 16px;
    }

    .main-header .navbar {
        --bs-navbar-padding-y: 1rem;
    }

    .promo-gallery__item {
        display: grid;
        grid-template-columns: 100%;
        grid-template-rows: auto auto;
        height: 100%;
        gap: 32px;
    }

    .ticker-team {
        --ticker-gap: 32px;
    }

    .ticker-team .item {
        font-size: 64px;
    }

    footer .small-info-title {
        font-size: 1rem;
        margin-top: 1.5rem;
        margin-bottom: .5rem;
    }

    footer .nav {
        line-height: 1.3;
    }

    .footer-menu {
        padding-top: 24px;
        padding-bottom: 24px;
    }

    .btn-ask, .class-header .btn {
        width: 100%;
    }

    .social-row {
        justify-content: end;
    }

    .footer-policy {
        --bs-gutter-y: 1rem;
    }

    .footer-info-wrapper {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    #fp-intro .family {
        width: 50%;
        bottom: 32px;
    }


    .page-title, .promo-gallery__item .title {
        font-size: 38px;
    }

    .page-header {
        padding-top: 54px;
        padding-bottom: 20px;
    }

    .about-ticker {
        gap: 20px;
    }

    .ticker-about {
        --ticker-gap: 24px;
    }

    .ticker-about .item-primary {
        font-size: 20px;
        padding: 8px 20px;
    }

    .ticker-about .item-secondary {
        font-size: 20px;
    }

    .facts-row .fact .title {
        font-size: 54px;
    }

    .about-facts .row {
        --bs-gutter-y: 24px;
    }

    .new-post .card-news, .new-post:nth-child(3n) .card-news {
        border-right: unset;
    }

    .news-title {
        font-size: 18px;
    }

    .news-title-row {
        margin-top: 1.5rem;
        margin-bottom: 2rem;
    }

    .more-news {
        margin-top: 40px;
    }

    .more-news .new-post {
        padding-bottom: 20px;
        border-bottom: unset;
    }

    .row-reviews {
        --bs-gutter-x: 24px;
        --bs-gutter-y: 24px;
    }

    .facts-row {
        gap: 16px;
        grid-template-columns: 1fr;
    }

    .block-section .block-border-right {
        border-right: 0;
    }

    .block-section .row-table {
        margin-left: 0;
    }

    .block-section .title .icon {
        top: -12px;
    }

    .class-header .page-title {
        text-align: center;
        margin-bottom: 1rem;
        margin-top: 1rem;
    }

    .pedagogy-about__circles {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .pedagogy-about__circles .circle {
        font-size: var(--font-size-3);
    }

    .pedagogy-about__circles .placeholder-1 {
        height: 0;
        padding-top: 50%;
    }

    .pedagogy-about__circles .placeholder-2 {
        display: none;
    }

    .pedagogy-about__circles .circle {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
    }

    .belief-nav {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }


    .hello-bg {
        left: 50%;
        width: 90%;
    }

    .lavrik-hello {
        left: 55%;
        width: 54.4%;
    }

    .hello-title {
        margin-top: 80px;
    }

    .main-header .custom-logo-link {
        height: 46px;
        display: block;
    }

    .block-section.quote .decor-arrow {
        display: none;
    }

    .hello-text__small {
        position: relative;
        width: 235px;
    }

    .belief-tab-btn {
        height: 60px;
        font-size: 20px;
    }

    .belief .col-books {
        width: 100%;
    }

    .belief .col-books .text-books, .belief .col-books .decor-line {
        width: 50%;
    }

    .belief .row-tab {
        position: relative;
    }

    .belief .books {
        top: 50px;
        position: absolute;
        right: 0;
        height: auto;
        width: 48%;
    }

    .pedagogy__academy-link {
        width: 160px;
        font-size: 13px;
        line-height: 1.2;
    }

    .block-section.speaker {
        height: auto;
    }

    .block-section.speaker .container {
        padding-bottom: 100px;
    }

    .speaker-thesis {
        width: 190px;
        grid-template-columns: 1fr;
        grid-auto-rows: 56px;
        gap: 4px;
        margin-left: 0;
        justify-content: end;
        display: grid;
        align-content: end;
    }

    .speaker-thesis .thesis-1,
    .speaker-thesis .thesis-2,
    .speaker-thesis .thesis-3,
    .speaker-thesis .thesis-4,
    .speaker-thesis .thesis-5 {
        grid-column: span 1;
        width: 100%;
        background-image: url(./img/square-4.svg);
        padding: 10px;
        font-size: 14px;
    }

    .quote-tooltip {
        margin-bottom: 24px;
    }

    .quote-find {
        margin-bottom: 1rem;
        text-align: center;
    }

    .quote-tooltip-2 {
        width: 450px;
        top: 0;
        left: 0;
        margin-bottom: 0;
    }

    .block-section.speaker .lavrik-bottom {
        position: absolute;
        width: 60.7%;
        height: auto;
        bottom: 0;
        left: unset;
        right: 0;
    }

    .block-section.speaker .tooltip-qr {
        max-width: 100%;
        bottom: 20px;
    }

    .block-section.speaker .decor-line-5 {
        display: none;
    }

    .lavr-directions .text-2,
    .lavr-directions .text-3 {
        width: 48%;
    }

    .direction-community {
        width: 80%;
        left: 10%;
        transform: unset;
    }

    .lavr-directions .text-1 {
        width: 100%;
        top: 220px;
    }

    .lavr-directions .decor-3 {
        bottom: 200px;
        left: unset;
        right: 52%;
        width: 20%;
        background-size: contain;
    }

    .lavr-directions .decor-4 {
        bottom: 190px;
        right: unset;
        left: 52%;
        width: 20%;
        background-size: contain;
    }

    .line-top:before {
        width: 60px;
        top: -12px;
    }

    .block-section.speaker .decor-line-6 {
        display: none;
    }

    .direction-kindergarten {
        bottom: 93px;
    }

    .modal {
        --bs-modal-padding: 0 20px 20px 20px;
        --bs-modal-header-padding-x: 20px;
        --bs-modal-header-padding-y: 16px;
        --bs-modal-header-padding: 20px 20px 16px 20px;
    }

    .modal-title {
        margin-bottom: 12px;
    }

    .btn-close {
        width: 48px;
        height: 48px;
        right: 20px;
        top: 20px;
        background: #fff0 var(--bs-btn-close-bg) center / 48px auto no-repeat;
        z-index: 10;
    }

    .modal-header .btn-close {
        width: 48px;
        height: 48px;
        right: 0;
        top: 0;
        background: #fff0 var(--bs-btn-close-bg) left / 48px auto no-repeat;
    }

    .modal-gallery:before {
        top: -30px;
        height: 60px;
        border-radius: 35%;
    }

    .modal-gallery:after {
        bottom: -30px;
        height: 60px;
        border-radius: 35%;
    }

    .kg-row {
        --bs-gutter-x: 12px;
        margin-top: 20px;
        overflow: auto;
        flex-wrap: nowrap;
        padding-bottom: 10px;
        justify-content: start;
        width: 100%;
    }

    .kg-item .kg-title {
        font-size: 16px;
        margin-bottom: 8px;
    }

    .modal-text .social-link {
        margin: 16px auto 0 auto;
        font-size: 13px;
        align-items: center;
    }

    .social-link .btn-social {
        width: 32px;
        height: 32px;
    }

    .social-link .btn-social-full {
        width: 100%;
        height: auto;
    }

}

@media (max-width: 575.98px) {

    :root {

        --lavr-padding-4: 60px;
        --lavr-padding-3: 36px;
        --lavr-padding-2: 28px;
        --lavr-padding-1: 24px;


        --font-headline-1: 4vw;
        --font-headline-2: 7.5vw;
        --font-size-1: 20px;
        --font-size-2: 18px;
        --font-size-3: 16px;
        --font-size-4: 14px;
    }

    body {
        font-size: 14px;
    }

    .page-title, .promo-gallery__item .title {
        font-size: 32px;
    }

    #fp-intro .hashtag {
        font-size: 22px;
    }

    #fp-intro .intro-container {
        padding-top: 0;
    }

    #fp-intro .bg {
        top: unset;
        bottom: 0;
        right: calc(var(--bs-gutter-x) * .5);
    }


    #fp-intro .family {
        position: relative;
        bottom: 0;
        margin-left: auto;
        left: 43%;
        margin-top: 54px;
    }

    .ticker-team .item {
        font-size: 42px;
    }

    .review-item.review-text {
        padding: 25px 20px 20px 20px;
    }

    .review-item .author, .review-item .source {
        font-size: 13px;
    }

    .review-item .text {
        margin-top: 16px;
        margin-bottom: 16px;
        line-height: 1.4;
    }

    .classes-row {
        --bs-gutter-x: 12px;
        --bs-gutter-y: 12px;
    }

    .class-item .title {
        padding-right: 0;
    }

    .card-news {
        margin-top: 20px;
        padding: 0 0;
    }

    .news-content {
        padding: 16px 8px;
        border-radius: 4px;
    }

    .news-title-row {
        flex-wrap: wrap;
    }

    h1.news-title {
        width: 100%
    }

    .more-news .more-news-header {
        --icon-size: 72px;
        padding-top: 30px;
        padding-bottom: 30px;
        position: relative;
        margin-bottom: 1rem;
    }

    .more-news .more-news-header .title {
        font-size: 30px;
    }

    .more-news .more-news-header .category-link {
        display: none;
    }

    .card-news .card-title {
        font-size: 20px;
    }

    .row-team {
        justify-content: center;
    }

    .team-item .post, .team-item .name {
        line-height: 1.15;
    }

    .team-member-title {
        font-size: 30px;
        text-align: center;
    }

    .team-member-post {
        font-size: 20px;
        text-align: center;
        line-height: 1.4;
    }

    .block-section .row-table > div {
        line-height: 1.3;
        padding: 4px;
        font-size: 13px;
        text-align: center;
    }

    .block-section hr {
        margin-top: 12px;
        margin-bottom: 12px;
        opacity: 1;
    }

    .block-section .row-table {
        margin-bottom: .75rem;
        padding-bottom: .75rem;
    }


    .header-phone-row .phone {
        font-size: 20px;
    }

    .header-phone-row {
        margin: .25rem;
    }

    .header-phone-row .working-hours {
        font-size: 12px;
    }

    .speaker-thesis {
        width: 160px;
        grid-template-columns: 1fr;
        grid-auto-rows: 48px;
        gap: 4px;
        margin-left: 0;
        min-height: min(350px, 70vw);
        justify-content: end;
        display: grid;
        align-content: end;
    }

    .speaker-thesis .thesis-1,
    .speaker-thesis .thesis-2,
    .speaker-thesis .thesis-3,
    .speaker-thesis .thesis-4,
    .speaker-thesis .thesis-5 {
        grid-column: span 1;
        width: 100%;
        background-image: url(./img/square-4.svg);
        padding: 10px;
        font-size: 12px;
    }

    .block-section.speaker .tooltip-qr {
        position: relative;
        width: calc(100% + 24px);
        border-radius: 0;
        left: 0;
        bottom: 0;
        margin-top: 16px;
        margin-left: -12px;
        max-width: unset;
    }

    .block-section.speaker .decor-line-6 {
        display: none;
    }

    .quote-tooltip-2 {
        width: 100%;
        top: 0;
        left: 0;
        margin-bottom: -5vw;
    }

    .block-section.speaker .container {
        padding-bottom: 0;
    }

    .block-section.speaker .lavrik-bottom {
        width: calc(100% - 170px);
        bottom: 60px;
        max-width: 300px;
    }

    .hello-text__small {
        max-width: 100%;
    }

    .block-section {
        --icon-size: 32px;
    }

    .block-section .title {
        flex-shrink: 0;
        margin-bottom: 12px;
    }

    .block-section .title .icon {
        top: -6px;
    }


    .belief .description {
        width: 220px;
        padding: 22px 27px 16px 45px;
    }

    .belief-title .description {
        font-size: 12px;
    }

    .belief-nav {
        gap: 1vw 3vw;
    }

    .belief-tab-btn {
        height: 12vw;
        font-size: 4vw;
    }

    .pedagogy-about__circles .circle {
        font-size: 13px;
    }

    .pedagogy-about__text {
        gap: 16px;
        flex-direction: column;
    }

    .pedagogy__academy-link {
        width: 120px;
        flex-shrink: 1;
        margin-top: 0;
        font-size: 10px;
        min-width: 70px;
    }

    .belief .decor-line {
        min-height: 60px;
    }

    .belief-title {
        margin-bottom: 1rem;
    }

    .main-header .custom-logo-link {
        height: 36px;
    }

    section.hello {
        height: calc(230px + 95vw);
    }

    .hello-title {
        margin-top: 35vw;
    }

    .quote-tooltip {
        max-width: 350px;
        margin-left: auto;
        margin-right: auto;
    }

    .direction-center {
        bottom: 125px;
    }

    .direction-kindergarten {
        bottom: 110px;
    }

    .lavr-directions {
        height: calc(300px + 40vw);
    }

    .lavr-directions .text-1 {
        top: 3vw
    }

    .lavr-directions .direction.direction-community {
        margin-top: 15vw;
    }

    .lavr-directions .decor-2 {
        width: 10vw;
        top: 89%;
        left: 82%;
    }

    .hello-row {
        gap: 0;
    }

    .hello-text__small {
        width: 100%;
    }

    .hello-row .line-top {
        margin-top: 32px;
    }

    .btn-close {
        width: 32px;
        height: 32px;
        right: 12px;
        top: 12px;
        background: #fff0 var(--bs-btn-close-bg) center / 32px auto no-repeat;
        z-index: 10;
    }

    .modal-header .btn-close {
        width: 32px;
        height: 32px;
        top: 0;
        right: 0;
        background: #fff0 var(--bs-btn-close-bg) left / 32px auto no-repeat;
    }

    .modal-header .modal-title {
        margin-bottom: 4px;
    }


    .modal-gallery:before {
        top: -25px;
        height: 50px;
        border-radius: 20%;
    }

    .modal-gallery:after {
        height: 50px;
        border-radius: 20%;
        bottom: -25px;
    }

    .modal-slider img {
        aspect-ratio: 3 / 2;
    }

    .modal-text {
        margin-top: 20px;
    }

    .modal-subtitle {
        font-size: 13px;
        line-height: 1.5;
    }

    .modal .about-ticker {
        margin-bottom: 12px;
    }

    .social-link .btn-social-full {
        padding: 6px 6px 6px 10px;
        font-size: 14px;
    }

    .social-link .btn-social-full svg {
        margin-left: auto;
        width: 28px;
        height: 28px;
    }

    .modal-gallery {
        margin-top: 12px;
        margin-bottom: 16px;
    }

    .hello-row .col-right {
        width: 100%;
    }

    .lavr-directions .direction {
        -webkit-animation-name: test;
        animation-name: test;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
        animation-duration: 5s;
        animation-iteration-count: infinite;
        animation-fill-mode: both;
        animation-delay: .5s;
    }

    .lavr-directions .direction.direction-kindergarten {
        animation-delay: 2s;
    }

    .lavr-directions .direction.direction-community {
        animation-delay: 3.5s;
    }
}

@keyframes test {
    0% {
        transform: translateY(0);
        --base-bg: var(--hover-bg);
        --base-color: var(--hover-color);
    }

    8% {
        transform: translateY(0) rotate(2deg);
    }

    16% {
        -webkit-transform: translateY(0px);
        transform: translateY(0) rotate(-3deg);
    }

    24% {
        transform: translateY(0) rotate(0deg);
        --base-bg: var(--hover-bg);
        --base-color: var(--hover-color);
    }

    30% {
        transform: translateY(0) rotate(0deg);
        --base-bg: var(--primary-bg);
        --base-color: var(--primary-color);
    }

    to {
        transform: translateY(0) rotate(0deg);
    }
}

@media (max-width: 350px) {

}