:root {
    --blue: #164194;
    --blue-light: #0091ED;
    --blue-lighten: #f2fbff;
    --blue-dark: #00224a;
    --yellow: #FFCC00;
    --orange: #EA5B0C;
}

a,
abbr,
acronym,
address,
applet,
b,
big,
blockquote,
body,
caption,
center,
cite,
code,
dd,
del,
dfn,
div,
dl,
dt,
em,
fieldset,
font,
form,
h1,
h2,
h3,
h4,
h5,
h6,
html,
i,
iframe,
img,
input,
ins,
kbd,
label,
legend,
li,
menu,
object,
ol,
p,
pre,
q,
s,
samp,
small,
span,
strike,
strong,
sub,
sup,
table,
tbody,
td,
textarea,
tfoot,
th,
thead,
tr,
tt,
u,
ul,
var {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: 0 0;
    -webkit-appearance: none;
    border-radius: 0;
    box-sizing: border-box;
    font-weight: inherit;
    font-family: inherit;
}

b,
strong {
    font-weight: bold;
}

.us,
h1,
h2,
h3,
input,
p,
textarea {
    cursor: text
}

ol,
ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

:focus {
    outline: 0
}

input:focus::placeholder {
    color: transparent;
}

ins {
    text-decoration: none
}

del {
    text-decoration: line-through
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

ol li {
    list-style: decimal;
    list-style-position: outside;
    margin-left: 15px;
    margin-bottom: 20px;
    padding-left: 15px;
}

ul li {
    list-style: disc;
    list-style-position: outside;
    margin-left: 15px;
    margin-bottom: 20px;
    padding-left: 15px;
}

h1 {
    font-weight: 700;
    font-size: 80px;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: var(--blue);
    position: relative;
    margin-bottom: 70px;
}

h1.shortMargin {
    margin-bottom: 24px;
}

h1 svg {
    display: block;
    margin-bottom: 24px;
}

h2 {
    font-weight: 700;
    font-size: 52px;
    line-height: 120%;
    color: var(--blue);
    margin-bottom: 26px;
}

h3 svg {
    margin-bottom: 16px;
    display: block;
    max-width: 90px;
}

h3 {
    text-align: left;
    margin-bottom: 16px;
    font-size: 36px;
    letter-spacing: normal;
    font-weight: bold;
    color: var(--blue-dark);
}

b,
strong {
    font-weight: bold;
}

p {
    margin-bottom: 20px;
    line-height: 22px;
    max-width: 800px;
}

p:last-child {
    margin-bottom: 0;
}

html {
    -webkit-text-size-adjust: none;
    height: 100%;
    min-height: 100%;
    position: relative;
}

img {
    border: none;
    display: block;
    max-width: 100%;
}

input {
    vertical-align: middle
}

body {
    font-family: 'Comfortaa', 'Arial';
    font-size: 16px;
    color: var(--main-text);
    background: #ffffff;
    height: auto;
    min-height: 100%;
    position: relative;
}

body.noscroll {
    overflow: hidden;
}

::-moz-selection {
    background: #e60026;
    color: #fff
}

::selection {
    background: #e60026;
    color: #fff
}

::-moz-selection {
    background: #e60026;
    color: #fff
}

input[type="checkbox"],
input[type="radio"] {
    display: none;
}

input[type="checkbox"]+label,
input[type="radio"]+label {
    cursor: pointer;
}

input[type="checkbox"]+label::before,
input[type="radio"]+label::before {
    content: "";
    position: relative;
    display: inline-block;
    height: 18px;
    width: 18px;
    margin: 0 0 -3px;
    background: #fff;
    border: 1px solid #ebeef3;
    border-radius: 4px;
    box-sizing: border-box;
}

input[type="radio"]+label::before {
    border-radius: 50%;
}

input[type="checkbox"]:checked+label::before {
    background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAV9JREFUOBGllDtLA0EUhb9Zg0TUQi1CMFjENjEQFCxjoyCIf8HfYJHGByLYBLQT7CxFbLTQOq2NkCgIioIatNJCBUUw472bYhNmMa8DA7t35n5757Acg8ieTSSwtiBPOSxxrTWV4QVMEWPyZr5cMTVItSSA4abNYQcMbxgvE/En6RSiYL/XFjz/OmFfaqtmc17LnvwHFl9lojblRWF6H6Z2GxrbB6VXYWQSeoe6ACUWQdfvF5QEWKfWJxpIQmql1nq1BZ/3dRhwQbEZiM82HEJ9ye5ATx88HUPlpHFf3lxQSkbObsPoQnBYfRkch4870GlCFHFqt3uQXpe1UZsgGgt8uViG6rfTogUX9HgE/WOQXBLYWtB0uen4EmyGgXT3Wq72fiNezckEP/BwCK/n9X3Os7Gnqeeu/25JAjFboqBrmaKneYJGQafyY8TkPQ0lzRMBHghQwqpF6Vm/x8so4w+sLVpTHlO/HwAAAABJRU5ErkJggg==');
    border: none;
}

input[type="radio"]:checked+label::before {
    border: 5px solid var(--blue);
}

blockquote {
    font-size: 24px;
    font-weight: 600;
    padding-left: 24px;
    border-left: 8px solid var(--orange);
    position: relative;
    margin: 40px 0;
}

label {
    cursor: pointer;
}

a {
    text-decoration: none;
    transition: 0.2s;
    color: var(--blue);
}

a:hover {
    color: var(--blue-light);
}

a:active {
    color: var(--orange);
}

.pb150 {
    padding-bottom: 150px !important;
}

body {
    background: url(../img/top-wave-bg.jpg) no-repeat top center;
    background-size: cover;
}

body.index,
body.price,
body.faq,
body.contacts {
    background: #fff;
}

div.price p {
    max-width: none;
}

.center {
    width: 1360px;
    max-width: 100%;
    box-sizing: border-box;
    padding-left: 30px;
    padding-right: 30px;
    margin: 0 auto;
    position: relative;
}

header .top {
    padding-top: 30px;
    padding-bottom: 30px;
    display: flex;
    align-items: center;
    position: relative;
    gap: 20px;
}

header .top .logo {
    width: 240px;
}

header .top .logoMob {
    display: none;
}

header .top .vk {
    display: flex;
    gap: 8px;
}

header .top .vk img {
    width: 44px;
    border: 2px dashed #CACACA;
    border-radius: 12px;
}

header a {
    font-weight: bold;
    text-decoration: none;
}

header .phone {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-left: auto;
}

header .phone a {
    display: flex;
    align-items: center;
    white-space: nowrap;
}

header .phone a.phoneMobile {
    display: none;
}

header .phone a:first-child {
    font-size: 24px;
    margin-bottom: 5px;
    letter-spacing: 1px;
}

header .phone a.callme {
    letter-spacing: 1px;
    font-weight: 700;
    font-size: 16px;
    line-height: 18px;
    color: #9C9C9C;
    border-bottom: 2px dashed #CACACA;
}

header .phone a.callme:hover {
    color: var(--blue-light);
    border-bottom: 2px dashed var(--blue-light);
}

header .phone a.callme:active {
    color: var(--orange);
    border-bottom: 2px dashed var(--orange);
}

header .phone a:last-child {
    font-size: 14px;
    color: var(--blue-light);
}

header .phone img {
    width: 18px;
    height: 18px;
    margin-right: 4px;
}

header .spec {
    display: flex;
    align-items: center;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.3;
}

header .spec img {
    width: 37px;
    height: 29px;
    margin-right: 8px;
}

header .time {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

header .temp {
    border: 2px dashed #CACACA;
    box-sizing: border-box;
    border-radius: 17px;
    padding: 14px 16px;
    line-height: 1.4;
}

header .time div {
    display: flex;
    gap: 4px;
}

header .time div span {
    font-weight: 400;
    font-size: 16px;
}

header .time div span:first-child {
    color: #9C9C9C;
    width: 90px;
}

header .time div:last-child span {
    width: auto !important;
}

header .time div span:nth-child(2) {
    width: 70px;
}

header nav {
    margin-bottom: 50px;
}

header nav>input,
header nav>label {
    display: none;
}

header nav>input {
    position: absolute;
    left: -9999px;
}

header nav div {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

header nav div .close {
    display: none;
}

header nav div a {
    color: var(--blue);
    font-size: 20px;
}

header nav div a.active {
    color: var(--orange);
}

header nav div a:first-child {
    margin-left: 0;
}

header nav div a.lk {
    margin-left: auto;
    display: flex;
    align-items: center;
}

header nav div a.lk img {
    width: 18px;
    height: 18px;
    margin-right: 8px;
}

#indexSliderWrapper {
    position: relative;
    z-index: 52;
}

#indexSlider .owl-nav .owl-prev span,
#indexSlider .owl-nav .owl-next span {
    display: none;
}

#indexSlider .owl-nav .owl-prev,
#indexSlider .owl-nav .owl-next {
    position: absolute;
    left: 0;
    top: 50%;
    width: 56px;
    height: 56px;
    background: url(../img/arrow-left.png) #fff center center no-repeat;
    background-size: 28px 20px;
    margin: -28px 0 0 -20px;
    border-radius: 50%;
    box-shadow: 0px 5px 50px rgba(0, 0, 0, 0.1);
}

#indexSlider .owl-nav .owl-next {
    left: auto;
    right: 0;
    transform: rotate(180deg);
    margin: -28px -20px 0 0;
}

#indexSlider .owl-item img {
    border-radius: 32px;
}

#indexSliderDots {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: center;
    margin-top: 20px;
}

#indexSliderDots a {
    position: relative;
}

#indexSliderDots a:before {
    content: "";
    background: rgba(255, 255, 255, 0.8);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    transition: 0.2s;
    border-radius: 6px;
}

#indexSliderDots a.active:before {
    opacity: 1;
}

#indexSliderDots img {
    width: 116px;
    border-radius: 6px;
}

.indexSliders {
    position: relative;
    padding-top: 40px;
}

.indexSliders:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(../img/wave-orange.png) no-repeat bottom center;
    background-size: cover;
    height: 340px;
    z-index: 1;
}

.indexSliders .slider {
    position: relative;
    z-index: 2;
    height: 618px;
}

.indexSliders .slider:before {
    content: "";
    z-index: 13;
    height: 230px;
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(0, 34, 74, 0.65));
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.indexSliders .slider:after {
    content: "";
    z-index: 16;
    height: 200px;
    background: url(../img/wave-blue.png) no-repeat bottom center;
    background-size: cover;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.indexSliders .slider .sliderItem {
    position: absolute;
    opacity: 0;
    visibility: hidden;
    transition: 1.5s;
    width: 100%;
    display: flex;
    align-items: flex-end;
    height: 618px;
}

.indexSliders .slider .sliderItem .mainImg {
    position: relative;
    background-size: cover;
    background-position: right;
    width: 875px;
    height: 618px;
    margin-bottom: -150px;
    transition: 1s;
}

.indexSliders .slider .sliderItem.active .mainImg {
    margin-bottom: 0;
}

.indexSliders .slider .sliderItem.active {
    opacity: 1;
    visibility: visible;
}

.indexSliders .slider .sliderItem .center {
    position: absolute;
    top: 40px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: flex-end;
    overflow: hidden;
}

.indexSliders .slider .sliderItem .center .bannerContent {
    display: flex;
    flex-direction: column;
    width: 50%;
}

.indexSliders .slider .sliderItem .bannerTitle {
    font-size: 49px;
    font-weight: bold;
    color: var(--blue);
    padding-top: 30px;
    position: relative;
    margin-bottom: 54px;
    transition: 0.2s;
    text-align: left;
}

.indexSliders .slider .sliderItem .bannerTitle svg {
    display: block;
    margin-bottom: 16px;
}

.indexSliders .slider .sliderItem .bannerLinks {
    display: flex;
    justify-content: flex-end;
}

.indexSliders .slider .sliderItem .bannerLinks a {
    display: flex;
    align-items: center;
    font-size: 24px;
    font-weight: bold;
    color: var(--blue-light);
    margin-left: 50px;
}

.indexSliders .slider .sliderItem .bannerLinks a:first-child {
    margin-left: 0;
}

.indexSliders .slider .sliderItem .bannerLinks a img {
    width: 32px;
    height: 32px;
    margin-right: 4px;
}

.indexSliders .slider .dots {
    position: absolute;
    bottom: 90px;
    left: 0;
    width: 100%;
    z-index: 20;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.indexSliders .slider .dots a {
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    text-decoration: none;
    position: relative;
    padding-left: 64px;
    margin-right: 30px;
    margin-bottom: 30px;
    border-radius: 50%;
    background-size: cover;
    height: 48px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
}

.indexSliders .slider .dots a:last-child {
    margin-right: 0;
}

.indexSliders .slider .dots a img {
    border-radius: 50%;
    width: 48px;
    height: 48px;
    position: absolute;
    left: 0;
    top: 0;
}

.indexSliders .slider .dots a label {
    position: absolute;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    white-space: nowrap;
    left: 0;
    top: 50%;
    margin-top: -24px;
    box-sizing: border-box;
    opacity: 0;
}

.indexSliders .slider .dots a.active label {
    border: none;
    animation: timer 10s steps(200, start);
    background: linear-gradient(90deg, var(--blue-light) 50%, var(--blue-lighten) 50%);
    border-radius: 50%;
    box-sizing: border-box;
    opacity: 0.4;
}

.indexSliders .slider .dots a.active label:after {
    animation: mask 10s steps(100, start);
    border-radius: 100% 0 0 100% / 50% 0 0 50%;
    content: '';
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transform-origin: 100% 50%;
    width: 50%;
}

@keyframes timer {
    100% {
        transform: rotate(360deg);
    }
}

@keyframes mask {
    0% {
        background: var(--blue-lighten);
        transform: rotate(0deg);
    }

    50% {
        background: var(--blue-lighten);
        transform: rotate(-180deg);
    }

    50.01% {
        background: var(--blue-light);
        transform: rotate(0deg);
    }

    100% {
        background: var(--blue-light);
        transform: rotate(-180deg);
    }
}

.blueWaved {
    background: url(../img/wave-blue-n.png) top center;
    background-size: cover;
}

.contents {
    margin-top: -360px;
    padding-top: 420px;
}

.whatInsideText {
    max-width: 700px;
    margin: 0 auto;
}

.whatInsideText .smallTitle {
    color: #EA5B0C;
    font-weight: 700;
    font-size: 52px;
    margin-bottom: 40px;
}

.whatInsideText .item {
    position: relative;
}

.whatInsideText .item .num {
    font-weight: 400;
    font-size: 80px;
    position: absolute;
    left: -60px;
}

.whatInsideText .content {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.whatInsideText .item:nth-child(1) .num {
    color: #C00000;
}

.whatInsideText .item:nth-child(2) .num {
    color: #DE6B00;
}

.whatInsideText .item:nth-child(3) .num {
    color: #FFCC00;
}

.whatInsideText .item:nth-child(4) .num {
    color: #76B82A;
    margin-top: -0.2em;
}

.whatInsideText .item .name {
    font-weight: 700;
    font-size: 36px;
    line-height: 1.3;
    color: #fff;
    margin-bottom: 10px;
}

.whatInsideText .item .desc {
    font-weight: 400;
    font-size: 20px;
    line-height: 1.4;
    color: #fff;
}

.pluses.inner {
    background: none;
}

.contents .center {
    padding-top: 40px;
    padding-bottom: 220px;
}

.contents .center .title,
.plan .title {
    font-weight: 700;
    font-size: 80px;
    color: #fff;
    margin-bottom: 70px;
}

.plan .title {
    color: #00224A;
}

.contents .center .title svg,
.plan .title svg {
    display: block;
    margin-bottom: 22px;
}

.contents .center .right {
    width: 840px;
    box-sizing: border-box;
    padding-left: 40px;
}

.contents .center .right .title {
    font-size: 28px;
    font-weight: bold;
    color: #fff;
    margin-bottom: 20px;
}

.contents .center .right .content {
    color: #fff;
    line-height: 1.28;
    font-size: 18px;
}

.pluses .center {
    padding-top: 60px;
    padding-bottom: 60px;
    display: flex;
    justify-content: center;
}

.pluses .center figure {
    display: flex;
    align-items: center;
}

.pluses .center figure img {
    width: 64px;
    height: 64px;
    margin-right: 12px;
}

.pluses .center figure figcaption {
    font-size: 21.6px;
    font-weight: bold;
    color: #fff;
}

.pluses.inner .center figure figcaption {
    color: #004394;
}

.gallery {
    margin-bottom: 80px;
}

.gallery.about {
    padding-top: 0;
    margin-bottom: 0;
}

.questions {
    padding-bottom: 100px;
}

.questions .center .content {
    display: flex;
    justify-content: space-between;
}

.questions .center .content .left {
    width: 700px;
    max-width: 100%;
}

.questions h2 {
    font-weight: 700;
    font-size: 80px;
    color: #00224A;
    margin-bottom: 40px;
}

.questions h2 svg {
    display: block;
    margin-bottom: 25px;
}

.questions .center .content ul li {
    list-style: none;
    position: relative;
    margin: 0 0 40px;
}

.questions .center .content ul li input {
    position: absolute;
    left: -9999px;
}

.questions .center .content ul li label {
    display: block;
    position: relative;
    font-size: 36px;
    margin-bottom: 10px;
    font-weight: bold;
    user-select: none;
}

.questions .center .content ul li div {
    font-size: 20px;
    line-height: 1.2;
}

.questions .center .content .button {
    color: var(--blue-light);
    padding: 23px 38px;
    font-size: 20px;
    font-weight: bold;
    display: inline-block;
    margin-top: 40px;
    border: 2px solid var(--blue-light);
    border-radius: 20px;
    transition: 0.2s;
}

.questions .center .content .button:hover {
    color: var(--blue);
    border: 2px solid var(--blue);
}

.questions .center .content .button:active {
    color: var(--orange);
    border: 2px solid var(--orange);
}

.questions .center aside {
    width: 250px;
}

.questions .center aside a,
.finePrice a {
    display: flex;
}

.questions .center aside a span,
.finePrice a span {
    display: block;
    font-size: 24.1px;
    font-weight: bold;
    line-height: 1;
    color: #00224a;
    padding-top: 18px;
}

.finePrice a img {
    max-width: 80px;
}

.questions .center aside a span b,
.finePrice a span b {
    display: block;
    margin-bottom: 10px;
    font-size: 14px;
}

.questions .center aside a span i,
.finePrice a span i {
    border-radius: 6px;
    background-color: var(--yellow);
    padding: 4px 8px;
    font-style: normal;
    font-size: 12.4px;
    font-weight: bold;
}

.questions .center aside p {
    font-size: 12.1px;
    font-weight: bold;
    color: #b6b8bf;
    padding-left: 18px;
    margin-top: 10px;
}

.plan.inner {
    margin-top: 190px;
    padding-bottom: 80px;
}

.plan {
    background: #f5f6fa;
    position: relative;
}

.plan:before {
    content: "";
    background-image: url(../img/wave-gray-n.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    height: 150px;
    position: absolute;
    top: -150px;
    left: 0;
    right: 0;
}

.forchild .plan .center {
    display: block;
}

.stocks {
    background: #f5f6fa;
    position: relative;
    padding-bottom: 0;
    z-index: 20;
}

.stocks.inner {
    background: none;
}

.stocks .title {
    font-size: 36.1px;
    font-weight: bold;
    color: var(--blue-dark);
    margin-bottom: 40px;
}

.stocks .title svg {
    display: block;
    margin-bottom: 20px;
}

.stocks .container {
    display: flex;
    justify-content: space-between;
    padding-bottom: 40px;
    position: relative;
    z-index: 10;
}

.stocks.inner .container {
    flex-wrap: wrap;
}

.stocks .container .item {
    width: calc(25% - 20px);
}

.stocks.inner .container .item {
    margin-bottom: 20px;
}

.stocks .container .item img {
    width: 100%;
    display: block;
    margin-bottom: 15px;
    border-radius: 20px;
    transition: 0.2s;
}

.stocks .container .item img:hover {
    box-shadow: 0 5px 16px 0 rgba(158, 158, 158, 0.4);
}

.stocks .container .item .link {
    font-size: 18.1px;
    font-weight: bold;
    line-height: 1.33;
    color: var(--blue-dark);
    max-width: 80%;
    display: block;
}

.stocks .container .item .link:hover {
    color: #e30016;
}

.stocks .button {
    position: absolute;
    z-index: 10;
    text-align: center;
    left: 0;
    right: 0;
}

.stocks .button a {
    width: 215px;
    border-radius: 40px;
    background-color: #8e0fb3;
    color: #fff;
    padding: 25px 0;
    display: inline-block;
    font-size: 24.1px;
    font-weight: bold;
    transition: 0.2s;
}

.stocks .button a:hover {
    box-shadow: 0 5px 16px 0 rgba(142, 15, 179, 0.4);
}

.stocks .bg {
    position: absolute;
    z-index: 5;
    bottom: 0;
    left: 0;
    right: 0;
    height: 320px;
    background: #fff;
}

.stocks .bg:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100px;
    background: url(../img/silver-wave-bottom.png);
    background-size: cover;
}

.newsText {
    max-width: 100%;
    width: 660px;
    margin: 0 auto;
    padding-bottom: 80px;
}

.newsText,
.newsText p,
.newsText div {
    font-weight: 400;
    font-size: 20px;
    line-height: 140%;
}

.indexNews {
    position: relative;
    padding-bottom: 220px;
}

.inner .indexNews {
    background: none;
    padding-top: 0;
    padding-bottom: 120px;
}

.indexNews .title {
    margin-bottom: 40px;
}

.indexNews .title svg {
    display: block;
    margin-bottom: 25px;
}

.indexNews .title .titleText {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.indexNews .title span {
    font-size: 80px;
    font-weight: bold;
    color: var(--blue-dark);
}

.indexNews .title b {
    font-size: 24.1px;
    font-weight: bold;
    color: #d4d7e6;
    margin: 0 16px;
}

.indexNews .title a {
    font-size: 24.1px;
    font-weight: bold;
    color: #e30016;
}

.indexNews .title a:hover {
    color: #8e0fb3;
}

.indexNews .container {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.indexNews .container .item {
    width: calc(25% - 12px);
    margin-bottom: 0;
    box-sizing: border-box;
}

.indexNews .container .item a {
    border: 2px solid #E9E9E9;
    box-sizing: border-box;
    border-radius: 36px;
    display: block;
    height: 100%;
    padding-bottom: 32px;
    background: white;
}

.indexNews .container .item .img {
    display: block;
    position: relative;
    margin: -2px -2px 16px -2px;
}

.indexNews .container .item .img b {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 25px;
    background: url(../img/wave-white-n.png);
    background-size: 100% 100%;
}

.indexNews .container .item .img b:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 8px;
    width: 2px;
    background: #E9E9E9;
}

.indexNews .container .item .img b:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    height: 9px;
    width: 2px;
    background: #E9E9E9;
}

.indexNews .container .item .img img {
    border-radius: 36px 36px 0 0;
}

.indexNews .container .item .name {
    display: block;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 8px;
    padding: 0 30px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -moz-box;
    -moz-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    line-clamp: 3;
    box-orient: vertical;
}

.indexNews .container .item span.date {
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.92px;
    color: #bcc8d7;
    position: relative;
    padding: 0 30px;
}

.indexNews .container .newsBottomContainer {
    display: flex;
    gap: 16px;
}

.indexNews .container .newsBottomContainer .left {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    width: calc(50% - 8px);
}

.indexNews .container .newsBottomContainer .left .item {
    width: calc(50% - 8px);
}

.indexNews .container .newsBottomContainer .left .item:last-child {
    width: 100%;
}

.indexNews .container .item:last-child .img b {
    height: 52px
}

.indexNews .container .item:last-child .img b:before {
    height: 18px;
}

.indexNews .container .item:last-child .img b:after {
    height: 19px;
}

.indexNews .container .newsBottomContainer .right {
    width: calc(50% - 8px);
}

.indexNews .container .newsBottomContainer .right .item {
    width: 100%;
    height: 100%;
}

.indexNews .container .buttonContainer {
    width: 100%;
    text-align: center;
    margin-top: 23px;
}

.indexNews .container .buttonContainer a {
    display: inline-block;
    border: 2px solid var(--blue-light);
    color: var(--blue-light);
    box-sizing: border-box;
    border-radius: 20px;
    padding: 23px 38px;
    font-weight: 400;
    font-size: 20px;
}

.indexNews .container .buttonContainer a:hover {
    border: 2px solid var(--blue);
    color: var(--blue);
}

.indexNews .container .buttonContainer a:active {
    border: 2px solid var(--orange);
    color: var(--orange);
}

.news-date-time {
    margin-bottom: 20px;
}

footer {
    padding-top: 70px;
    padding-bottom: 70px;
    background-image: linear-gradient(to bottom, #004394, #00224a);
    position: relative;
    margin-top: 80px;
    z-index: 5;
}

body.about footer,
body.faq footer,
body.index footer,
body.contacts footer,
body.forchild footer {
    margin-top: 0;
}

footer:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    height: 141px;
    background-image: url(../img/footer-top-wave.png);
    background-size: contain;
    background-repeat: repeat-x;
}

footer:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 23px;
    background-image: url(../img/footer-bottom-wave.png);
    background-size: contain;
    background-repeat: repeat-x;
}

footer .center {
    display: flex;
    gap: 32px;
    justify-content: space-between;
}

footer .center .column {
    box-sizing: border-box;
}

footer .center .column.info {
    position: relative;
    margin-left: 20px;
    padding: 40px 20px;
}

footer .center .column .title {
    font-size: 24.1px;
    font-weight: bold;
    color: #fff;
    margin-bottom: 24px;
}

footer .center .column .content {
    display: flex;
    flex-direction: column;
}

footer .center .column .content a {
    margin-bottom: 24px;
    color: #5ac1ff;
}

footer .center .column .content a:hover {
    color: #ffcb00;
}

footer .center .column.info img.logo {
    width: 133px;
    margin-bottom: 30px;
}

footer .center .column.info .copy {
    opacity: 0.3;
    font-size: 14.1px;
    font-weight: bold;
    color: #fff;
    margin-bottom: 30px;
}

footer .center .column.info .phone {
    font-size: 24.1px;
    font-weight: bold;
    letter-spacing: 1px;
    color: #fff;
}

footer .center .column.info .callme {
    display: flex;
    align-items: center;
    margin-top: 8px;
    margin-bottom: 30px;
    font-size: 14.1px;
    font-weight: bold;
    color: #fff;
}

footer .center .column.info .callme img {
    width: 18px;
    height: 18px;
    margin-right: 4px;
}

footer .center .column.info .phoneMobile {
    display: none;
}

footer .center .column.info .developer img {
    width: 225px;
}

#mask {
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(5px);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99;
}

.fwcontainer {
    display: none;
}

.fwnotify {
    font-size: 10px;
    line-height: 12px;
    margin-top: 10px;
}

.faqForm .fwnotify {
    color: #fff;
}

#fw {
    position: absolute;
    top: 300px;
    left: 50%;
    transform: translateX(-50%);
    background: #fff;
    width: 514px;
    max-width: 90%;
    border-radius: 16px;
    box-shadow: 0 15px 50px 0 rgba(0, 34, 74, 0.3);
    padding: 40px 50px 50px;
    z-index: 199;
}

#fw.loading:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 16px;
}

#fw.loading:after {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    background: url(../img/loading.gif);
    background-size: cover;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#fw .close {
    position: absolute;
    right: -30px;
    top: -30px;
    transition: 0.4s;
    cursor: pointer;
    padding: 12px;
    border-radius: 16px;
}

#fw .close:hover {
    transform: rotate(360deg);
}

#fw .title {
    position: relative;
    padding: 0 0 30px;
    font-size: 24.1px;
    font-weight: bold;
    color: #004394;
    margin-bottom: 30px;
}

#fw .title.noborder {
    margin-bottom: 0px;
}

#fw .title:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    opacity: 0.1;
    background-color: var(--blue);
}

#fw .title.noborder:after {
    display: none;
}

#fw .title svg {
    display: block;
    margin-bottom: 20px;
}

#fw.fwwateroff {
    padding: 0;
    border-radius: 16px;
}

#fw.fwwateroff img {
    width: 100%;
    border-radius: 16px;
}

table#tempData {
    width: 100%;
}

table#tempData tr th,
table#tempData tr td {
    border-collapse: collapse;
    padding: 10px 20px 10px 0;
    text-align: left;
}

table#tempData tr th img {
    width: 18px;
    float: left;
    margin-top: -4px;
    margin-right: 4px;
}

table#tempData tr th {
    font-size: 12.1px;
    font-weight: bold;
    color: var(--blue);
    padding-bottom: 30px;
    border-bottom: 2px solid #e5ecf4;
    vertical-align: middle;
}

table#tempData tr th:first-child {
    width: 150px;
}

table#tempData tr td {
    font-size: 9.1px;
    font-weight: bold;
    letter-spacing: 0.5px;
    color: #00224a;
    padding-top: 30px;
    padding-bottom: 0;
    vertical-align: middle;
}

#fw .content form label {
    display: flex;
    font-size: 14.1px;
    font-weight: bold;
    letter-spacing: 0.3px;
    color: #b6b8bf;
    margin-bottom: 4px;
}

#fw .content form input[type="text"].error {
    border: 2px solid #E30613;
}

#fw .content form input[type="text"].success {
    border: 2px solid #76B82A;
}

#fw .content form input[type=text] {
    display: block;
    height: 67px;
    padding: 0 38px;
    border-radius: 16px;
    border: 2px solid #E9E9E9;
    width: 100%;
    margin-bottom: 16px;
    box-sizing: border-box;
    font-weight: 400;
    font-size: 20px;
}

#fw .content form input[type=submit] {
    box-sizing: border-box;
    font-weight: bold;
    color: var(--blue);
    padding: 23px 38px;
    cursor: pointer;
    background: #E2F2F8;
    border-radius: 20px;
}

#fw .content form.valid input[type=submit] {
    background: var(--blue);
    color: #fff;
}

#fw.ny_2022 {
    padding: 0;
    border-radius: 16px;
    overflow: hidden;
}

#fw.ny_2022 .close {
    top: 0px;
    right: 0px
}

.tags {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.tags a {
    white-space: nowrap;
    border-radius: 8px;
    background-color: rgba(0, 116, 255, 0.05);
    padding: 11px 14px 8px;
    color: #000;
    margin: 0 8px 8px 0;
    font-size: 16px;
}

.tags a:hover {
    background-color: #FFE8DC;
}

.columnedVideoContent {
    display: flex;
    border-bottom: 2px solid #e5f1f8;
    padding-bottom: 70px;
    margin-bottom: 70px;
}

.columnedVideoContent.about {
    margin-bottom: 0;
}

.columnedVideoContent .left {
    width: 500px;
    margin-right: 65px;
    box-sizing: border-box;
    position: relative;
    background: url(../img/services_vid.jpg) center center;
    background-size: cover;
    border-radius: 16px;
    box-shadow: 0 8px 50px 0 rgba(0, 55, 88, 0.3);
}

.columnedVideoContent .left:before {
    content: "";
    background: url(../img/play@3x.png) no-repeat;
    background-size: contain;
    width: 54px;
    height: 66px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: 0.2s;
}

.columnedVideoContent .left:hover:before {
    transform: translate(-50%, -50%) scale(1.2, 1.2);
}

.columnedVideoContent .right {
    width: calc(100% - 500px);
}

.columnedVideoContent .right .title {
    font-size: 28px;
    font-weight: bold;
    color: var(--blue-dark);
    margin-bottom: 24px;
}

.columnedVideoContent .right .content {
    font-size: 18px;
    line-height: 1.28;
    color: var(--blue-dark);
}

.columnedVideoContent .right .content p {
    margin-bottom: 8px;
}

.services h3 {
    margin-bottom: 80px;
}

.services .item {
    border-bottom: 2px solid #e5f1f8;
    padding-bottom: 30px;
    margin-bottom: 70px;
    display: flex;
    flex-direction: column;
}

.services .item:last-child {
    margin-bottom: 0;
    border-bottom: 0;
}

.services .item .title {
    font-size: 36.1px;
    font-weight: bold;
    color: var(--blue-dark);
    margin-bottom: 40px;
    order: 1;
}

.services .item .title a {
    color: #000;
}

.services .item .title svg {
    display: block;
    margin-bottom: 25px;
}

.services .item .servicesGallery {
    order: 2;
}

.services .item .chars {
    order: 3;
}

.services .item .content {
    order: 4;
}

.servicesShorts .item {
    display: flex;
    flex-direction: row;
    gap: 40px;
}

.servicesShorts .item .sLeft {
    width: 33.33%;
}

.servicesShorts .item .sLeft .title svg {
    display: none;
}

.servicesShorts .item .sRight {
    width: calc(66.66% - 40px);
}

.servicesShorts .item:nth-child(2n+1) .sLeft {
    order: 1;
}

.servicesShorts .item:nth-child(2n+1) .sRight {
    order: 2;
}

.servicesShorts .item:nth-child(2n) .sLeft {
    order: 2;
}

.servicesShorts .item:nth-child(2n) .sRight {
    order: 1;
}

.servicesGallery,
.serviceGallery {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

.servicesGallery .slick-list {
    order: 2;
}

.servicesGallery .slick-dots {
    order: 1;
}

.chars {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-bottom: 20px;
}

.chars .char {
    display: flex;
    align-items: center;
    margin-right: 40px;
    margin-bottom: 20px;
}

.chars .char img {
    margin-right: 8px;
    width: 32px;
    height: 32px;
}

.chars .char label {
    font-size: 32px;
    color: #004394;
    margin: 0 8px;
}

.chars .char span {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.14;
    letter-spacing: 0.3px;
    color: var(--blue);
}

.services .content {
    width: 800px;
    max-width: 100%;
    font-size: 18px;
    line-height: 1.28;
    color: var(--blue-dark);
    margin-bottom: 40px;
}

.service .content {
    width: 800px;
    max-width: 100%;
}

.service .location {
    padding: 70px 0;
}

.service .location .title svg {
    display: block;
    margin-bottom: 25px;
}

.service .location .title {
    font-size: 36.1px;
    font-weight: bold;
    color: #00224a;
    margin-bottom: 40px;
}

.service .location .content {
    text-align: center;
    width: 100%;
}

.service .location .content img {
    display: inline-block;
}

.service .ask {
    text-align: center;
}

.service .ask a {
    background-color: var(--yellow);
    padding: 20px 40px;
    font-size: 24.1px;
    font-weight: bold;
    color: #000000;
    display: inline-block;
    margin-top: 40px;
    border-radius: 40px;
}

.aboutMap {
    background: url(../img/deep-wave-bg.jpg) #004394 no-repeat top center;
    background-size: cover;
    padding: 70px 0 280px;
}

.aboutMap .container {
    width: 550px;
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.aboutMap .container .img {
    width: 300px;
    height: 300px;
    border-radius: 50%;
    box-shadow: 0 20px 50px 0 rgba(0, 67, 148, 0.2);
    border: solid 4px var(--yellow);
}

.aboutMap .container .img img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.aboutMap .container a {
    font-size: 36.1px;
    font-weight: bold;
    color: #fff;
}

.aboutMap .container a:hover {
    color: var(--yellow);
}

.aboutMap .container a svg {
    display: block;
    margin-bottom: 24px;
}

div.price {
    padding-bottom: 40px;
}

.priceContainer {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-bottom: 80px;
}

.hiddenContent {
    display: none;
}

.hiddenContent.fancybox-content .fancybox-button svg path {
    fill: #fff;
    stroke: #fff;
    stroke-width: 2px;
}

.hiddenContent.fancybox-content {
    border-radius: 40px;
    padding: 0;
    width: 500px;
    max-width: 100%;
}

.hiddenContent.fancybox-content .name {
    position: relative;
    padding: 40px;
    font-size: 32px;
    font-weight: bold;
    text-transform: uppercase;
    background: radial-gradient(37.84% 297.54% at 85.24% 91.48%, #164194 0%, #0056BB 100%), #164194;
    color: #fff;
}

.hiddenContent.fancybox-content .textContent {
    padding: 40px;
}

.priceContainer .item,
.priceContainer .item3.small {
    width: calc(25% - 14px);
    transition: 0.2s;
    color: var(--main-text);
}

.priceContainer .item:hover,
.priceContainer .item3.small:hover {
    box-shadow: 0px 4px 70px rgba(0, 0, 0, 0.2);
    z-index: 20;
}

.priceContainer .item,
.priceContainer .item3,
.priceContainer .item.type17 {
    width: calc(33.33% - 12px);
    /*border: 2px solid #E9E9E9;*/
    box-shadow: 0 0 12px #d9d9d9;
    box-sizing: border-box;
    border-radius: 36px;
    min-height: 490px;
    display: flex;
    flex-direction: column;
    z-index: 10;
    position: relative;
}

.priceContainer .item .top {
    background: radial-gradient(37.84% 297.54% at 85.24% 91.48%, #164194 0%, #0056BB 100%), #164194;
    padding: 40px 60px 50px;
    position: relative;
    border-radius: 36px 36px 0 0;
    margin: -2px -2px 0 -2px;
    margin: 0;
}

.priceContainer .item.type10,
.priceContainer .item.type24 {
    width: calc(50% - 10px);
    min-height: 400px;
}

h3#tar23,
h3#tar24 {
    margin-top: -3em;
}

a.goto[href="#tar23"],
a.goto[href="#tar24"] {
    display: none;
}

.priceContainer .item.type10 .top,
.priceContainer .item.type24 .top,
.hiddenContent.fancybox-content .name.tc10 {
    /*READY*/
    background: radial-gradient(136.17% 844.86% at 98.96% 100%, #164194 0%, #0046CE 100%);
}

.priceContainer .item.type5 .top,
.priceContainer .item.type23 .top,
.hiddenContent.fancybox-content .name.tc5 {
    background: radial-gradient(97.19% 817.64% at 100% 91.18%, #457D05 0%, #70C212 100%);
}

.priceContainer .item.type12 .top,
.hiddenContent.fancybox-content .name.tc12 {
    /*READY*/
    background: radial-gradient(97.19% 817.64% at 100% 91.18%, #D72700 0%, #FF7A00 100%), #D72700;
}

.priceContainer .item.type7 .top,
.hiddenContent.fancybox-content .name.tc7 {
    /*READY*/
    background: radial-gradient(97.19% 817.64% at 100% 91.18%, #FF9900 0%, #FFCC00 100%);
}

.priceContainer .item.type7 .top .desc {
    color: #EA5B0C;
}

.priceContainer .item.type9,
.priceContainer .item.type8 {
    width: calc(25% - 14px);
}

.priceContainer .item.type9 .top .name,
.priceContainer .item.type8 .top .name {
    font-size: 24px;
}

.priceContainer .item.type8 .top,
.hiddenContent.fancybox-content .name.tc19 {
    background: radial-gradient(97.19% 817.64% at 100% 91.18%, #A90909 0%, #EC0000 100%);
    padding: 40px;
}

.priceContainer .item.type9 .top,
.hiddenContent.fancybox-content .name.tc9 {
    background: radial-gradient(97.19% 817.64% at 100% 91.18%, #702283 0%, #9700BC 100%);
    padding: 40px;
}

.priceContainer .item.type9 .bottom,
.priceContainer .item.type8 .bottom {
    padding: 40px;
}

.priceContainer .item.type11,
.priceContainer .item.type6,
.priceContainer .item.type7 {
    width: calc(33.33% - 12px);
}

.priceContainer .item.type777 .top,
.hiddenContent.fancybox-content .name.tc777 {
    background: radial-gradient(137.64% 853.98% at 100% 101.04%, #0051B0 0%, #0091ED 100%)
}

.priceContainer .item.type11 .top,
.hiddenContent.fancybox-content .name.tc11 {
    background: radial-gradient(97.19% 817.64% at 100% 91.18%, #D72700 0%, #FF7A00 100%)
}

.priceContainer .item.type6 .top,
.hiddenContent.fancybox-content .name.tc6 {
    background: radial-gradient(97.19% 817.64% at 100% 91.18%, #457D05 0%, #70C212 100%)
}

.priceContainer .item .bottom {
    display: flex;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
}

.priceContainer .item .bottom .columned {
    display: flex;
    flex-direction: row;
}

.priceContainer .item .bottom .columned .left,
.priceContainer .item .bottom .columned .right {
    width: 50%;
}

.priceContainer .item.type7 .bottom {
    padding: 40px;
}

.priceContainer .item.type7 .bottom li {
    padding-left: 5px;
}

.priceContainer .item .bottom .price {
    margin-top: auto;
    font-weight: 700;
    font-size: 36px;
    display: flex;
    justify-content: space-between;
    padding-bottom: 16px;
}

.priceContainer .item .bottom .price div {
    display: flex;
    flex-direction: column;
}

.priceContainer .item .bottom .price div span:first-child {
    font-weight: 700;
    font-size: 24px;
}

.priceContainer .item .bottom .price div span:last-child {
    font-weight: 700;
    font-size: 16px;
}

.priceContainer .item .bottom .desc {
    font-weight: 700;
    font-size: 14px;
    color: #9C9C9C;
}

.priceContainer .item .top span,
.hiddenContent.fancybox-content .name:after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    height: 26px;
    background: url(../img/wave-white-n.png);
    background-size: auto 100%;
    background-position: 0px 0px;
}

@keyframes animateSectionBackground {
    to {
        background-position: -22417px 0;
    }
}

.priceContainer .item:hover .top span {
    animation: animateSectionBackground infinite 60s linear;
}

.priceContainer .item .top span:before,
.priceContainer .item .top span:after {
    display: none;
}

.priceContainer .item .top span:before {
    content: "";
    position: absolute;
    left: 0;
    width: 2px;
    bottom: 0;
    background: #E9E9E9;
    height: 9px;
}

.priceContainer .item .top span:after {
    content: "";
    position: absolute;
    right: 0;
    width: 2px;
    bottom: 0;
    background: #E9E9E9;
    height: 6px;
}

.priceContainer .item.type7 .top span:after,
.priceContainer .item.type6 .top span:after,
.priceContainer .item.type11 .top span:after {
    height: 12px;
}

.priceContainer .item.type9 .top span:after {
    height: 15px;
}

.priceContainer .item .top .name {
    font-weight: 700;
    font-size: 38px;
    line-height: 1.3;
    color: #fff;
}

.priceContainer .item .top .name .colored b:nth-child(1) {
    color: #E70000;
}

.priceContainer .item .top .name .colored b:nth-child(2) {
    color: #FF8A00;
}

.priceContainer .item .top .name .colored b:nth-child(3) {
    color: #EFD700;
}

.priceContainer .item .top .name .colored b:nth-child(4) {
    color: #50D100;
}

.priceContainer .item .top .desc {
    font-weight: 400;
    font-size: 20px;
    line-height: 1.3;
    color: var(--yellow);
}

.priceContainer .item .bottom {
    padding: 25px 60px 40px;
}

.priceContainer .item table {
    width: 100%;
}

.priceContainer .item table tr th {
    font-weight: 400;
    font-size: 14px;
    color: #9C9C9C;
    text-align: left;
    padding-bottom: 16px;
}

.priceContainer .item table tr td {
    padding-bottom: 24px;
    font-size: 18px;
    padding-right: 16px;
}

.priceContainer .item table tr td:last-child {
    padding-right: 0;
}

.priceContainer .item3 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: radial-gradient(97.19% 817.64% at 100% 91.18%, #FF9900 0%, #FFCC00 100%);
    gap: 16px;
    border: none;
}

.priceContainer .item3 img {
    width: calc(100% - 40px);
    margin: 16px auto 0;
}

.priceContainer .item3 span {
    font-weight: 700;
    font-size: 36px;
    color: #fff;
    text-align: center;
}

.priceContainer .item2 {
    background: url(../img/baloon_img.png) #fee400 right center no-repeat;
    background-size: auto 100%;
    width: calc(33.33% - 12px);
    border-radius: 36px;
    padding: 50px 60px;
    display: flex;
    flex-direction: column;
}

.priceContainer .item2 .name {
    color: #E30000;
    font-weight: 700;
    font-size: 36px;
    line-height: 1.2em;
}

.priceContainer .item2 .more,
.priceContainer .item3 .more {
    font-weight: 400;
    font-size: 20px;
    color: #E30000;
    border: 2px solid #E30000;
    border-radius: 20px;
    padding: 23px 38px;
    margin-top: 25px;
    display: inline-block;
}

.priceContainer .item2 .more {
    margin-top: auto;
}

.priceContainer .item3 .more {
    margin-top: 0;
}

#priceTableContainer {
    overflow: auto;
}

#priceTable {
    width: 100%;
}

#priceTable tr td {
    padding: 16px 30px 16px;
    position: relative;
}

#priceTable tr td {
    background-color: #fffae4;
}

#priceTable tr:nth-child(2n) td {
    background-color: #ecf0d8;
}

#priceTable tr:nth-child(1) td {
    vertical-align: middle;
}

#priceTable tr .brtl {
    border-radius: 30px 0 0;
}

#priceTable tr .brtr {
    border-radius: 0 30px 0 0;
}

#priceTable tr .brbl {
    border-radius: 0 0 0 30px;
}

#priceTable tr .brbr {
    border-radius: 0 0 30px 0;
}

#priceTable tr.paddBott td {
    padding-bottom: 24px;
}

#priceTable tr .column1 {
    background: #f7f8fa;
    font-weight: bold;
    padding-top: 24px;
    padding-bottom: 24px;
    font-size: 28px;
}

#priceTable tr .column2 {
    background: #fffae4;
}

#priceTable tr .column3 {
    background: #ecf0d8;
}

#priceTable tr th {
    font-size: 18px;
    font-weight: bold;
    color: #00224a;
    text-align: left;
    padding: 16px;
    vertical-align: bottom;
}

/*#priceTable tr:nth-child(1) td div {
    font-size: 24px;
    font-weight: bold;
    line-height: 0.6;
    color: #00224a;
    display:inline-block;
    text-align: right;
}
#priceTable tr:nth-child(1) td div img {
    width:30px;height:30px;
    margin-right:8px;
    display:inline;
}
#priceTable tr:nth-child(1) td div span {
    font-size: 10px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.3px;
    color: #00224a;
    margin-left:8px;
}
#priceTable tr:nth-child(2) td {
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 0.3px;
    color: rgba(79, 103, 133, 0.5);
}
#priceTable tr td.duration {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.64;
    color: #00224a;
}
#priceTable tr td.day {
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
    color: #00224a;
}
#priceTable tr td.duration p.notify {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.64;
    letter-spacing: 0.3px;
    color: #b6b8bf;
}
#priceTable tr td.day p.notify {
    font-size: 18px;
    color: #b6b8bf;
    margin-top:8px;
}
#priceTable tr.stroke {
    position: relative;
}
#priceTable tr.stroke td.column1 {
    background: #eeeff1;
}
#priceTable tr.stroke td.column2 {
    background: #f5f1df;
}
#priceTable tr.stroke td.column3 {
    background: #e6e9d6;
}
/*#priceTable tr.stroke div.bg {
    position: absolute;
    left:0;top:0;bottom:0;right:0;
    background: #ccc;
    opacity: 0.2;
}*/
.finePrice {
    border-top: 2px solid #e5f1f8;
    margin-top: 30px;
    padding-top: 30px;
    padding-bottom: 70px;
    display: flex;
    width: 100%;
    justify-content: flex-start;
}

.finePrice .item {
    margin-right: 50px;
}

.finePrice .item .value {
    font-size: 24px;
    font-weight: bold;
    line-height: 0.96;
    color: #00224a;
    margin-bottom: 12px;
}

.finePrice .item .desc {
    font-size: 14px;
    letter-spacing: 0.3px;
    color: #737580;
}

.finePrice a {
    margin-left: auto;
}

.addedPrices {
    background-color: #f5f6fa;
    padding-top: 70px;
    padding-bottom: 70px;
    margin-bottom: 70px;
}

.addedPrices .title svg {
    display: block;
    margin-bottom: 24px;
}

.addedPrices .title {
    font-size: 36.1px;
    font-weight: bold;
    color: #00224a;
    margin-bottom: 46px;
}

.addedPrices .container {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 24px;
}

.addedPrices .item {
    width: calc(25% - 10px);
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 10px 30px 0 rgba(0, 67, 148, 0.1);
    padding: 32px 30px 0;
    transition: 0.2s;
    position: relative;
    margin-bottom: 20px;
    margin-right: 10px;
    display: flex;
    flex-direction: column;
}

.addedPrices .item:hover {
    box-shadow: 0 10px 30px 0 rgba(0, 67, 148, 0.3);
}

.addedPrices .item .status {
    position: absolute;
    top: 0;
    right: 0;
    border-radius: 0 16px;
    background-color: #e30016;
    padding: 14px 16px;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    text-transform: uppercase;
}

.addedPrices .item .categ {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.28;
    color: #004394;
    margin-bottom: 14px;
}

.addedPrices .item .name {
    font-size: 18px;
    line-height: 20px;
    font-weight: bold;
    color: #00224a;
    padding-bottom: 14px;
    display: block;
}

.addedPrices .item ul {
    margin-bottom: 50px;
    border-top: 2px solid var(--yellow);
    padding-top: 30px;
}

.addedPrices .item ul li {
    list-style: none;
    padding-left: 12px;
    position: relative;
    margin-bottom: 14px;
    margin-left: 0;
    font-size: 14px;
    font-weight: bold;
    color: #00224a;
}

.addedPrices .item ul li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -2px;
    width: 4px;
    height: 4px;
    border-radius: 2px;
    background-color: #009eff;
}

.addedPrices .item .content {
    margin-left: -30px;
    margin-right: -30px;
    position: relative;
    background: #004394;
    margin-top: auto;
    padding: 0 30px 20px;
    border-radius: 0 0 16px 16px;
}

.addedPrices .item .content:before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    height: 30px;
    background: url(../img/deep-wave-top.png) no-repeat top center;
    background-size: cover;
}

.addedPrices .item .content .desc {
    font-size: 12px;
    font-weight: normal;
    line-height: 1.64;
    letter-spacing: 0.3px;
    color: #fff;
    margin-bottom: 4px;
}

.addedPrices .item .content .price {
    font-size: 24px;
    font-weight: bold;
    line-height: 0.96;
    color: #fff;
}

.stock .container {
    display: flex;
    justify-content: space-between;
}

.stock .container .img {
    padding-right: 60px;
    width: 500px;
    box-sizing: border-box;
}

.stock .container .img img {
    border-radius: 16px;
}

.stock .container .content {
    width: calc(100% - 500px);
}

.stock .container .content p {
    font-size: 18px;
    line-height: 1.28;
    color: #00224a;
}

.stock .container .content .separator {
    height: 2px;
    opacity: 0.1;
    background-color: #0076be;
    margin: 40px 0;
}

.stock .container .content a.all {
    font-size: 18px;
    font-weight: bold;
    color: #009eff;
}

.faqForm {
    background: url(../img/deep-wave-bg.jpg) #004394 no-repeat top center;
    background-size: cover;
    padding: 0 0 280px;
    position: relative;
    margin-top: 140px;
}

.faqForm:before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    height: 140px;
    background: url(../img/deep-wave-top.png) no-repeat top center;
    background-size: cover;
}

.faqForm .container {
    display: flex;
    flex-direction: column;
    width: 600px;
    max-width: 90%;
    margin: 0 auto;
}

.faqForm .container .title svg {
    display: block;
    margin-bottom: 24px;
}

.faqForm .container .title {
    font-size: 36.1px;
    font-weight: bold;
    color: #fff;
    margin-bottom: 40px;
}

.faqForm .container form {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.faqForm .container form label {
    font-size: 14.1px;
    font-weight: bold;
    letter-spacing: 0.3px;
    color: #b6b8bf;
    margin-bottom: 4px;
    padding-left: 20px;
}

.faqForm .container form input[type=text],
.faqForm .container form textarea {
    border-radius: 16px;
    border: solid 3px #ffcb00;
    background-color: #fff;
    padding: 23px 20px;
    margin-bottom: 16px;
    font-size: 20.1px;
    font-weight: bold;
    color: #000000;
    width: 100%;
}

.faqForm .container form textarea {
    height: 180px;
}

.faqForm .container form input[type=submit] {
    border-radius: 40px;
    background-color: #ffcb00;
    padding: 20px 30px;
    font-size: 24.1px;
    font-weight: bold;
    color: #00224a;
}

.contacts .datas>div {
    display: flex;
    margin-bottom: 30px;
    flex-wrap: wrap;
}

.contacts .datas a {
    display: flex;
    align-items: center;
    margin-right: 50px;
    font-size: 36px;
    font-weight: bold;
    color: #00224a;
    margin-bottom: 20px;
}

.contacts .datas a img {
    margin-right: 16px;
}

.contacts .datas>div>div {
    margin-right: 50px;
    margin-bottom: 20px;
}

.contacts .datas>div>div div.title {
    font-size: 24px;
    font-weight: bold;
    color: #00224a;
    margin-bottom: 8px;
}

.contacts .datas>div>div p {
    font-size: 18px;
    line-height: 1.28;
    color: #00224a;
    margin-bottom: 0;
}

.contactsMapContainer {
    position: relative;
    z-index: 50;
}

.contactsMap {
    border-radius: 24px;
    box-shadow: 0 20px 50px 0 rgba(0, 67, 148, 0.2);
    border: solid 4px #ffcb00;
}

.contactsItems {
    position: relative;
    z-index: 2;
    padding-top: 300px;
    margin-top: -200px;
    padding-bottom: 180px;
    background-color: #f5f6fa;
}

.contactsItems:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    height: 140px;
    background: url(../img/silver-wave-top.png) top center;
    background-size: cover;
}

.contactsItems .center {
    display: flex;
    flex-wrap: wrap;
}

.contactsItems .item {
    width: calc(33% - 20px);
    margin-right: 30px;
    background: #fff;
    border-radius: 16px;
    margin-bottom: 30px;
    padding: 20px;
}

.contactsItems .item:nth-child(3n) {
    margin-right: 0;
}

.contactsItems .item .post {
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.3px;
    color: #737580;
}

.contactsItems .item .name {
    font-size: 18px;
    font-weight: bold;
    color: #00224a;
    border-bottom: 2px solid #e5ecf4;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.contactsItems .item .phone {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.contactsItems .item .phone img {
    width: 20px;
    height: 19px;
    margin-right: 8px;
}

.contactsItems .item .mail {
    display: flex;
    align-items: center;
}

.contactsItems .item .mail img {
    width: 18px;
    height: 18px;
    margin-right: 8px;
}

.intructors {
    display: flex;
    flex-wrap: wrap;
}

.intructors .intructor {
    width: calc(25% - 9px);
    margin-bottom: 24px;
    margin-right: 9px;
}

.intructors .intructor img {
    border-radius: 50%;
    transition: 0.2s;
}

.intructors .intructor:hover img {
    box-shadow: 0 12px 50px 0 rgba(0, 67, 148, 0.1);
}

.intructors .intructor .name {
    text-align: center;
    margin-top: 5px;
    font-size: 18.1px;
    font-weight: bold;
    color: #00224a;
}

.intructors .intructor .post {
    margin-top: 8px;
    font-size: 14.1px;
    font-weight: bold;
    text-align: center;
    color: #b6b8bf;
}

.childPrices {
    background: #f5f6fa;
    padding-bottom: 250px;
    padding-top: 32px;
}

.forchild .plan {
    margin-top: 180px;
}

#indexCalendarTable {
    width: 100%;
    border-radius: 15px;
}

#indexCalendarTable hr {
    height: 1px;
    background: #000;
    border: none;
}

#indexCalendarTable tr th {
    background: #ecf0d8;
    padding: 20px 10px;
    font-weight: bold;
    vertical-align: middle;
    border-collapse: separate;
}

#indexCalendarTable tr td {
    background: #ecf0d8;
}

#indexCalendarTable tr td:first-child {
    background: #eeeff1;
}

#indexCalendarTable tr:nth-child(2n) td:first-child {
    background: #fffae4;
}

#indexCalendarTable tr td p {
    line-height: 18px;
}

#indexCalendarTable tr:first-child th:last-child {
    border-radius: 0 15px 0 0;
}

#indexCalendarTable tr:first-child th:first-child {
    border-radius: 15px 0 0 0;
}

#indexCalendarTable tr:last-child th:last-child {
    border-radius: 0 0 15px 0;
}

#indexCalendarTable tr:last-child th:first-child {
    border-radius: 0 0 0 15px;
}

#indexCalendarTable tr td {
    font-size: 12px;
    padding: 10px;
    border: 1px solid #fff;
}

#indexCalendarTable tr td p {
    margin-bottom: 0;
    white-space: nowrap;
}

#indexCalendarTable tr td.dark,
#indexCalendarTable tr th.dark {
    background: #fffae4;
}

#indexCalendarTable tr td.light,
#indexCalendarTable tr th.light {
    background: #eeeff1;
}

.tableContainer {
    overflow: auto;
}

.member {
    padding-bottom: 100px;
}

.member .content {
    display: flex;
    justify-content: space-between;
}

.member .content .img {
    width: 300px;
}

.member .content .text {
    width: calc(100% - 340px);
}

.member .content .text .prop {
    margin-bottom: 24px;
}

.member .content .text .prop label {
    display: block;
    font-weight: bold;
    margin-bottom: 8px;
}

.svgTitle {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 5px;
}

.tooltipster-content ul li {
    margin-bottom: 8px;
}

body .tooltipster-box .tooltipster-content,
body .tooltipster-box .tooltipster-content ul li,
body .tooltipster-box .tooltipster-content p {
    line-height: 1.4em;
    font-size: 16px;
}

.scheme {
    text-align: center;
}

.scheme svg {
    max-width: 100%;
    overflow: visible;
    width: 1000px;
    height: 938px;
    margin: 0 auto;
    display: block;
}

.docs {
    padding-top: 70px;
    padding-bottom: 70px;
    border-bottom: 2px solid #e5f1f8;
}

#docsList {
    padding-bottom: 40px;
}

#docsList .doc {
    padding-right: 15px;
    box-sizing: border-box;
    min-width: 200px;
}

#docsList .doc img {
    width: 100px;
}

#docsList .doc span {
    margin-top: 10px;
    padding-left: 20px;
    display: block;
    font-size: 14px;
}

#docsList .owl-dots {
    text-align: center;
}

#docsList .owl-dots button {
    display: inline-block;
    width: 16px;
    height: 16px;
    background: #e5f1f8;
    border-radius: 50%;
    margin: 0 4px;
}

#docsList .owl-dots button.active {
    background: var(--blue);
}

.inner.about {
    padding: 30px 0 70px;
}

.inner.about h3 {
    text-transform: uppercase;
    font-size: 28px;
}

.inner.about .item {
    padding-top: 40px;
    border-bottom: 2px solid #e5f1f8;
}

.inner.about .text {
    display: flex;
    margin-bottom: 40px;
}

.inner.about .text .img {
    width: 60%;
    box-sizing: border-box;
}

.inner.about .item .text .content {
    width: 40%;
    padding-left: 40px;
    box-sizing: border-box;
    line-height: 18px;
}

.inner.about .item .text .content p {
    line-height: 18px;
}

.inner.about .text.odd .content {
    padding-left: 0;
    padding-right: 40px;
}

.inner.about img {
    border-radius: 16px;
}

.inner.about .text h5 {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 10px;
}

.fancybox-content#fwwateroff {
    padding: 0;
}

.fancybox-content#fwwateroff button path {
    fill: #fff;
}

.detTimes {
    margin-bottom: 16px;
}

.detTimes tr td {
    padding: 4px 8px 4px 8px;
    border-bottom: 1px solid var(--blue-light);
}

.detTimes tr:last-child td {
    border-bottom: none;
}

#fwSuccess {
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 34px;
    text-align: center;
}

.detail_picture {
    border-radius: 24px;
    margin-bottom: 80px;
    width: 100%;
}

.pricesDocs {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 24px 0;
    flex-wrap: wrap;
}

.pricesDocs a {
    display: flex;
    align-items: center;
    gap: 0px;
}

.pricesDocs a span {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}

.pricesDocs a span b {
    display: block;
    margin-bottom: 10px;
    font-size: 14px;
}

.pricesDocs a span i {
    border-radius: 6px;
    background-color: var(--yellow);
    padding: 4px 8px;
    font-style: normal;
    font-size: 12.4px;
    font-weight: bold;
}

@media(max-width:1440px) {
    .indexSliders .slider:after {
        height: 150px;
    }
}

@media(max-width:1350px) {
    header .phone a:first-child {
        font-size: 20px;
    }

    header .time div span {
        font-size: 14px;
    }

    header .temp {
        padding: 10px 20px;
    }

    header .top {
        gap: 20px;
    }
}

@media(max-width:1300px) {
    header nav div a {
        font-size: 16px;
    }

    .contents {
        margin-top: -260px;
        padding-top: 320px;
    }
}

@media(max-width:1250px) {
    header .time {
        display: none;
    }
}

@media(max-width:1180px) {
    header .phone a:first-child {
        font-size: 20px;
    }

    header .spec {
        font-size: 14px;
    }

    header .spec img {
        width: 24px;
        height: 18px;
    }

    header nav div a {
        font-size: 14px;
    }

    footer:before {
        height: 100px;
    }

    .priceContainer .item .top .name {
        font-size: 24px;
    }

    .priceContainer .item .top .desc {
        font-size: 16px;
    }

    .priceContainer .item .bottom {
        padding: 15px 20px 20px;
    }
}

@media(max-width:1050px) {
    header {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    header .top .logo {
        width: 170px;
    }

    header .spec {
        display: none;
    }

    header .top {
        width: calc(100% - 84px);
    }

    header nav {
        margin-bottom: 0;
    }

    header nav div {
        position: fixed;
        top: 0;
        right: 0;
        width: 0;
        height: 0;
        transition: 0.2s;
        z-index: 500;
        background: #fff;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        box-sizing: border-box;
        padding: 40px 20px 20px 50px;
        opacity: 0;
        visibility: hidden;
    }

    header nav input:checked+label+label+div {
        width: 300px;
        height: 100%;
        max-width: 90%;
        opacity: 1;
        visibility: visible;
    }

    header nav input:checked+label+label {
        background-color: rgba(0, 0, 0, 0.5);
        backdrop-filter: blur(5px);
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 99;
        display: block;
    }

    header nav div a {
        display: block;
        margin: 0;
        padding: 10px 0;
        margin: 0 0 10px;
    }

    header nav div a.lk {
        margin: 0 0 0 -26px;
    }

    header nav div .close {
        display: block;
        position: absolute;
        top: 20px;
        right: 20px;
        transition: 0.4s;
    }

    header nav div .close:hover {
        transform: rotate(360deg);
    }

    header .top:after {
        display: none;
    }

    header nav>input {
        display: block;
    }

    header nav input[type="checkbox"]+label:before {
        display: none;
    }

    header nav>label#menuButton {
        display: flex;
        flex-direction: column;
        gap: 5px;
        align-items: center;
        justify-content: center;
        width: 63px;
        height: 62px;
        border-radius: 15px;
        border: 3px solid #164194;
        color: #164194;
        font-weight: 700;
        font-size: 11px;
        position: relative;
        z-index: 2;
    }

    header nav>label#menuButton img {
        margin-top: 6px;
    }

    #indexSliderWrapper .center {
        padding-left: 0;
        padding-right: 0;
    }

    #indexSliderDots {
        display: none;
    }

    .contents .center .left {
        width: 360px;
    }

    .contents .center .right {
        width: 740px;
    }

    .contents .center .left .title {
        font-size: 36px;
        margin-top: -10px;
    }

    .contents .center .right .title {
        font-size: 22px;
    }

    .contents .center .right .content {
        font-size: 16px;
    }

    .pluses .center figure figcaption {
        font-size: 18px;
    }

    .questions .center .content h2 {
        font-size: 28px;
    }

    .questions .center .content ul li label {
        font-size: 18px;
    }

    .questions .center .content ul li div {
        font-size: 16px;
    }

    .questions .center .content .button {
        padding: 15px 30px;
        font-size: 18px;
    }

    .questions .center aside a span {
        font-size: 18px;
    }

    .questions .center aside a img {
        width: 80px;
    }

    .plan:before {
        height: 100px;
        top: -100px;
    }

    .stocks .bg {
        height: 200px;
    }

    .stocks .container .item .link {
        font-size: 16px;
        max-width: 100%;
    }

    .stocks .button a {
        padding: 15px 0;
        font-size: 18px;
    }

    .indexNews .container .item .name {
        font-size: 16px
    }

    .indexNews .container .item span.date {
        font-size: 12px;
    }

    footer .center .column {
        padding-right: 30px;
    }

    footer .center .column .title {
        font-size: 18px;
    }

    footer .center .column .content a {
        font-size: 14px;
    }

    footer .center .column.info .phone {
        font-size: 18px;
    }

    .finePrice .item {
        margin-right: 20px;
    }

    .addedPrices .container {
        justify-content: flex-start;
    }

    .addedPrices .item {
        width: calc(33% - 20px);
        margin-right: 20px;
    }

    .addedPrices .item:nth-child(3n) {
        margin-right: 0;
    }

    .addedPrices .center {
        padding-left: 0;
        padding-right: 0;
    }

    .addedPrices .center .title {
        padding-left: 20px;
        padding-right: 20px;
    }

    .stock .container .img {
        padding-right: 40px;
        width: 40%;
    }

    .stock .container .content {
        width: 60%;
    }

    .intructors {
        flex-wrap: wrap;
    }

    .intructors .intructor {
        width: calc(33.33% - 9px);
    }

    .member .content .img {
        width: 260px;
    }

    .member .content .text {
        width: calc(100% - 300px);
    }

    .questions h2,
    .indexNews .title span {
        font-size: 60px;
    }

    .priceContainer .item {
        width: calc(50% - 18px) !important;
        min-height: 390px;
    }

    .priceContainer .item2,
    .priceContainer .item3,
    .priceContainer .item3.small {
        width: calc(50% - 18px);
    }

    .priceContainer .item2 .name {
        font-size: 40px;
        line-height: 1.1em;
    }

    .priceContainer .item .bottom {
        padding: 25px 40px 40px;
    }
}

@media(max-width:950px) {
    .contents {
        margin-top: -160px;
        padding-top: 220px;
    }

    .contents .center .title,
    .plan .title {
        font-size: 54px;
        margin-bottom: 35px;
    }

    .whatInsideText .smallTitle {
        font-size: 34px;
    }

    .indexSliders .slider .sliderItem.active .mainImg {
        height: 650px;
    }

    .indexSliders .slider .dots {
        bottom: 80px;
    }

    .whatInsideText .item .num {
        font-size: 60px;
    }

    .whatInsideText .item .name {
        font-size: 28px;
    }

    .whatInsideText .item .desc {
        font-size: 16px;
    }

    .contents .center {
        padding-bottom: 120px;
    }

    .pluses .center figure figcaption {
        font-size: 16px;
    }

    .plan .center {
        flex-direction: column;
    }

    .plan .center .title {
        margin-bottom: 40px;
    }

    .indexNews .container .item {
        width: calc(50% - 8px);
    }

    .indexNews .container .newsBottomContainer {
        display: none;
    }

    .indexNews {
        padding-bottom: 120px;
    }

    footer {
        padding-top: 100px;
    }

    footer:before {
        height: 70px;
    }

    footer:after {
        height: 18px;
    }

    footer .center .column {
        padding-right: 0;
    }

    footer .center .column.info .phone {
        font-size: 12px;
    }

    footer .center .column.info .callme {
        font-size: 12px;
    }

    .columnedVideoContent .left {
        width: 300px;
        margin-right: 30px;
    }

    .columnedVideoContent .right .title {
        font-size: 24px;
    }

    .columnedVideoContent .right .content {
        font-size: 16px;
    }

    .columnedVideoContent .right {
        width: calc(100% - 330px);
    }

    .servicesGallery .slick-dots li button {
        font-size: 14px !important;
    }

    .services .content {
        font-size: 16px;
    }

    .services .item {
        margin-bottom: 40px;
        padding-bottom: 40px;
    }

    .addedPrices .item {
        width: 300px;
        margin-right: 20px;
    }

    .addedPrices .item:nth-child(3n) {
        margin-right: 20px;
    }

    .stocks.inner .container {
        justify-content: flex-start;
    }

    .stocks.inner .container .item {
        width: calc(33.33% - 10px);
        margin-right: 15px;
    }

    .stocks.inner .container .item:nth-child(3n) {
        margin-right: 0;
    }

    .contactsItems .item {
        width: calc(50% - 20px);
        margin-right: 20px;
    }

    .contactsItems .item:nth-child(3n) {
        margin-right: 20px;
    }

    .contactsItems .item:nth-child(2n) {
        margin-right: 20px;
    }

    .scheme svg {
        height: 738px;
    }

    .whatInsideText .item {
        padding-left: 40px;
    }

    .whatInsideText .item .num {
        left: 0;
        font-size: 40px;
    }

    .questions h2,
    .indexNews .title span {
        font-size: 40px;
    }

    .contactsItems {
        padding-bottom: 80px;
    }

    .servicesShorts .item {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .servicesShorts .item .sLeft {
        width: 100%;
    }

    .servicesShorts .item .sRight {
        width: 100%;
    }

    .servicesShorts .item:nth-child(2n+1) .sLeft {
        order: 1;
    }

    .servicesShorts .item:nth-child(2n+1) .sRight {
        order: 2;
    }

    .servicesShorts .item:nth-child(2n) .sLeft {
        order: 1;
    }

    .servicesShorts .item:nth-child(2n) .sRight {
        order: 2;
    }
}

@media(max-width:850px) {
    header .temp {
        display: none;
    }
}

@media(max-width:780px) {
    h1 {
        font-size: 36px;
    }

    .contents {
        margin-top: -100px;
        padding-top: 160px;
    }

    .contents .center {
        padding-top: 0;
    }

    .questions h2,
    .indexNews .title span {
        font-size: 30px;
    }

    .questions .center .content .button {
        margin-top: 10px;
    }

    .questions {
        padding-bottom: 40px;
    }

    .indexSliders .slider .sliderItem .bannerLinks a {
        font-size: 18px;
    }

    .indexSliders .slider .sliderItem .bannerLinks a img {
        width: 24px;
        height: 24px;
    }

    .indexSliders .slider:after {
        height: 100px;
    }

    .contents .center .title,
    .plan .title {
        font-size: 40px;
    }

    .contents .center .title svg,
    .plan .title svg {
        margin-bottom: 10px;
    }

    .whatInsideText .smallTitle {
        font-size: 24px;
        margin-bottom: 20px;
    }

    .pluses .center {
        flex-direction: column;
        align-items: center;
    }

    .contents .center {
        padding-bottom: 40px;
    }

    .pluses .center {
        padding-top: 40px;
    }

    .questions .center {
        flex-direction: column;
    }

    .questions .center .content {
        width: 100%;
        margin-bottom: 50px;
    }

    .questions .center .content .button {
        margin-top: 30px;
    }

    .plan:before {
        height: 70px;
        top: -70px;
    }

    .contents .center {
        padding-bottom: 100px;
    }

    footer {
        padding-top: 0;
        padding-bottom: 0;
        margin-top: 50px;
    }

    footer .column {
        display: none;
    }

    footer .center .column.info {
        display: flex;
        width: 100%;
        justify-content: space-between;
        align-items: center;
        padding: 20px 20px 40px;
        background: none;
        margin-left: 0;
    }

    footer .column.info:before {
        display: none;
    }

    footer .center .column.info img.logo {
        margin-bottom: 0;
    }

    footer .center .column.info .phoneMobile {
        display: flex;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        box-shadow: 0 5px 16px 0 rgba(0, 158, 255, 0.4);
        background-color: #009eff;
        align-items: center;
        justify-content: center;
    }

    footer .center .column.info .phone,
    footer .center .column.info .callme {
        display: none;
    }

    footer .center .column.info .copy {
        font-size: 12px;
        max-width: 130px;
        margin-bottom: 0;
    }

    footer .center .column.info .developer img {
        width: 180px;
    }

    .columnedVideoContent .left {
        width: 200px;
        margin-right: 20px;
    }

    .columnedVideoContent .right {
        width: calc(100% - 220px);
    }

    .aboutMap .container .img {
        width: 200px;
        height: 200px;
        margin-right: 30px;
        background: url(../img/map.jpg) no-repeat center center;
        background-size: 160% 160%;
    }

    .aboutMap .container .img img {
        display: none;
    }

    .aboutMap .container {
        width: 400px;
    }

    .aboutMap .container a {
        font-size: 24px;
    }

    .finePrice {
        flex-direction: column;
        align-items: flex-start;
        padding-bottom: 30px;
    }

    .finePrice .item {
        margin-bottom: 30px;
    }

    .finePrice a {
        margin-left: 0;
    }

    .finePrice a.serv {
        margin-top: 24px;
    }

    .addedPrices .center .title {
        margin-bottom: 16px;
    }

    .addedPrices {
        padding-bottom: 40px;
    }

    .addedPrices .container .slick-list {
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }

    .addedPrices .center .title {
        font-size: 24px;
    }

    .stock .container .content p {
        font-size: 14px;
    }

    .member .content {
        flex-wrap: wrap;
    }

    .member .content .img {
        width: 100%;
    }

    .member .content .text {
        width: 100%;
    }

    .plan .center .title {
        margin-bottom: 20px;
    }

    .slick-dots li button {
        width: 30px;
        height: 15px;
    }

    .indexNews .container .buttonContainer a {
        padding: 15px 20px;
        font-size: 16px;
    }

    .priceContainer {
        width: calc(100% + 30px) !important;
        margin-left: -15px;
        margin-right: -15px;
        margin-bottom: 40px;
    }

    .priceContainer .item:hover {
        box-shadow: 0 0 12px #d9d9d9;
    }

    .priceContainer .item2,
    .priceContainer .item3 {
        display: none;
    }

    .priceContainer .item .bottom.columned {
        flex-direction: column-reverse;
        align-items: flex-start;
        justify-content: flex-start;
    }

    .priceContainer .item .bottom.columned .left,
    .priceContainer .item .bottom.columned .right {
        width: 100%;
    }

    .priceContainer .item {
        width: 100% !important;
        margin-bottom: 0;
        min-height: 3px;
    }

    .owl-carousel.priceContainer .owl-item {
        height: unset;
    }

    .owl-carousel.priceContainer .owl-item .item {
        height: 100%;
    }

    .priceContainer .item {
        height: 100%;
    }

    div.price {
        margin-bottom: 80px;
    }

    .priceContainer .item {
        border-radius: 20px;
        min-height: 3px !important;
    }

    .priceContainer .item .bottom {
        padding: 25px 16px 40px;
    }

    .priceContainer .item.type7 .bottom,
    .priceContainer .item.type9 .bottom,
    .priceContainer .item.type8 .bottom {
        padding: 25px 16px 40px;
    }

    .priceContainer .item table tr th {
        font-size: 12px;
        padding-bottom: 8px;
    }

    .priceContainer .item table tr td {
        font-size: 14px;
        padding-bottom: 12px;
    }

    .priceContainer .item .top {
        padding: 20px 30px 30px !important;
        border-radius: 20px 20px 0 0;
    }

    .priceContainer .item .top span {
        height: 18px;
    }

    .priceContainer ul li {
        font-size: 14px;
        margin-bottom: 8px;
    }

    .priceContainer .item .bottom .price {
        font-size: 26px;
        margin-bottom: 20px;
    }

    .priceContainer .item .bottom .price div span:first-child {
        font-size: 20px;
    }

    .priceContainer .item .bottom .price div span:last-child {
        font-size: 12px;
    }

    .priceContainer .item,
    .priceContainer .item3,
    .priceContainer .item.type17 {
        min-height: 3px;
    }

    .detail_picture {
        border-radius: 16px;
        margin-bottom: 40px;
    }

    .newsText {
        padding-bottom: 20px;
    }

    .newsText,
    .newsText p,
    .newsText div {
        font-size: 16px;
        line-height: 140%;
    }
}

@media(max-width:650px) {

    h1,
    .stocks .title {
        font-size: 24px;
        margin-bottom: 30px;
    }

    h1 svg,
    .stocks .title svg,
    h3 svg,
    .services .item .title svg {
        width: 45px !important;
        height: 7px !important;
        margin-bottom: 12px;
    }

    h3,
    .services .item .title {
        font-size: 20px;
    }

    header .top .logo {
        display: none;
    }

    header .top .logoMob {
        display: block;
    }

    header .time span {
        display: none;
    }

    header .time {
        position: relative;
    }

    header .time:before {
        content: "Время посещения";
    }

    .contents .center {
        flex-direction: column;
    }

    .contents .center .left {
        display: flex;
        flex-direction: column;
        text-align: left;
        width: 100%;
    }

    .contents .center .left svg {
        order: 1;
    }

    .contents .center .left .title {
        order: 2;
        text-align: left;
        margin-top: 20px;
    }

    .contents .center .right {
        width: 100%;
        padding: 0;
    }

    .plan {
        margin-top: 40px;
    }

    .plan:before {
        height: 60px;
        top: -60px;
    }

    .plan {
        display: none;
    }

    .forchild .plan {
        display: block;
        margin-top: 100px;
    }

    .stocks:before {
        content: "";
        background-image: url(../img/silver-wave-top.png);
        background-size: cover;
        background-position: center top;
        background-repeat: no-repeat;
        height: 60px;
        position: absolute;
        top: -60px;
        left: 0;
        right: 0;
    }

    .stocks.inner:before {
        display: none;
    }

    .stocks .bg {
        height: 120px;
    }

    .indexNews .title span {
        font-size: 24px;
    }

    .indexNews .title a {
        font-size: 18px;
    }

    .indexNews .container .item a {
        font-size: 14px;
    }

    footer:before {
        height: 50px;
    }

    footer:after {
        height: 14px;
    }

    .columnedVideoContent {
        flex-wrap: wrap;
    }

    .columnedVideoContent .left {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
        height: 300px;
    }

    .columnedVideoContent .right {
        width: 100%;
    }

    .tags {
        margin-bottom: 30px;
    }

    .tags a {
        font-size: 14px;
        padding: 8px 14px 8px;
    }

    #priceTable tr td.day {
        font-size: 18px;
    }

    #priceTable tr:nth-child(1) td div {
        font-size: 18px;
    }

    .stocks.inner .container .item {
        width: calc(50% - 20px);
        margin-right: 20px;
    }

    .stocks.inner .container .item:nth-child(3n) {
        margin-right: 20px;
    }

    .stocks.inner .container .item:nth-child(2n) {
        margin-right: 0;
    }

    .intructors .intructor {
        width: calc(50% - 9px);
    }

    .contents .center {
        padding-bottom: 50px;
    }

    .questions .center .content ul li div {
        font-size: 14px;
    }

    .indexNews .title svg,
    .questions h2 svg {
        margin-bottom: 10px;
    }

    .childPrices {
        padding-bottom: 80px;
    }

    .pb150 {
        padding-bottom: 60px !important;
    }
}

@media(max-width:600px) {
    body {
        background-size: auto 500px;
    }

    header .top {
        padding-top: 15px;
    }

    .center {
        padding-left: 15px;
        padding-right: 15px;
    }

    header .top .logo {
        display: none;
    }

    header .top .logoMob {
        display: block;
    }

    header .temp {
        display: none;
    }

    header .top .phone {
        margin-left: auto;
        margin-right: 20px;
    }

    header .phone a:first-child {
        font-size: 14px;
    }

    header .phone a.callme {
        font-size: 12px;
    }

    header .top .vk img {
        width: 40px;
        border-radius: 8px;
    }

    .indexSliders .slider .sliderItem.active .mainImg {
        height: 500px;
    }

    .indexSliders .slider .sliderItem .bannerTitle {
        font-size: 24px;
    }

    .indexSliders .slider .sliderItem .bannerLinks a {
        font-size: 18px;
    }

    .indexSliders .slider .sliderItem .bannerLinks a img {
        width: 24px;
        height: 24px;
    }

    .questions .center .content {
        flex-direction: column;
    }

    .questions .center .content h2 {
        font-size: 24px;
    }

    .questions .center .content ul li label,
    .questions .center .content ul li div {
        font-size: 16px;
    }

    .questions .center .content .button {
        font-size: 14px;
    }

    .plan {
        margin-top: 30px;
    }

    .indexNews .container .item {
        width: 100%;
        display: none;
    }

    .indexNews .container .item:nth-child(1),
    .indexNews .container .item:nth-child(2),
    .indexNews .container .item:nth-child(3),
    .indexNews .container .item:nth-child(4) {
        display: block;
    }

    footer .center .column.info img.logo {
        display: none;
    }

    footer:after {
        height: 10px;
    }

    table#tempData tr th img {
        float: none;
        display: block;
    }

    #fw {
        padding: 30px 40px 40px;
    }

    #fw .title {
        padding-bottom: 20px;
    }

    table#tempData tr th {
        padding-bottom: 20px;
    }

    table#tempData tr th,
    table#tempData tr td {
        padding: 10px 10px 10px 0;
    }

    .columnedVideoContent .left {
        height: 200px;
    }

    .services .item {
        padding-bottom: 20px;
        margin-bottom: 20px;
    }

    .columnedVideoContent {
        padding-bottom: 20px;
        margin-bottom: 20px;
    }

    .services .item .title {
        font-size: 24px;
    }

    .servicesGallery .slick-dots li button {
        font-size: 12px !important;
    }

    .chars .char img {
        height: 23px;
        width: auto;
    }

    .chars .char span {
        font-size: 10px;
    }

    .services .item .title svg {
        margin-bottom: 10px;
    }

    .services .item .title {
        margin-bottom: 20px;
    }

    .service .location,
    .service .ask {
        display: none;
    }

    .stock .container {
        flex-wrap: wrap;
    }

    .stock .container .img {
        padding-right: 0;
        width: 100%;
        margin-bottom: 40px;
    }

    .stock .container .content {
        width: 100%;
    }

    .faqForm .container .title {
        font-size: 24px;
    }

    .faqForm .container form input[type="text"],
    .faqForm .container form textarea {
        padding: 10px 15px;
        font-size: 14px;
    }

    .faqForm .container form input[type="submit"] {
        padding: 10px 15px;
        font-size: 18px;
    }

    .faqForm {
        padding-bottom: 200px;
    }

    .contactsItems .item {
        width: 100%;
        margin-right: 0 !important;
    }

    .contactsItems {
        padding-bottom: 50px;
    }

    .contacts .datas a {
        font-size: 18px;
    }

    .contacts .datas>div>div p {
        font-size: 14px;
    }

    .addedPrices .item ul li {
        font-size: 12px;
    }

    .contents .center .title,
    .plan .title {
        font-size: 30px;
        margin-bottom: 20px;
    }

    .contents .center .title svg,
    .plan .title svg,
    .questions h2 svg {
        width: 45px !important;
        height: 7px;
    }

    .whatInsideText .smallTitle {
        font-size: 20px;
    }

    .whatInsideText .item .name {
        font-size: 20px;
    }

    .whatInsideText .item .desc {
        font-size: 14px;
    }

    .slick-dots li button {
        width: 20px !important;
        height: 10px !important;
        border-radius: 3px !important;
    }

    .questions {
        padding-bottom: 0;
    }

    .questions .center .content .button {
        margin-top: 0;
    }

    .questions .center .content ul li {
        padding-left: 0;
    }

    .questions .center aside {
        width: 100%;
        margin-top: 20px;
    }

    .priceContainer .item.type8 .top .name {
        font-size: 18px !important;
    }
}

@media(max-width:450px) {
    header .top .time {
        display: none;
    }

    header .top .phone {
        display: none;
    }

    header .top .vk {
        margin-left: auto;
        margin-top: -2px;
    }

    .indexSliders .slider .sliderItem.active .mainImg {
        height: 400px;
    }

    .indexSliders .slider .dots {
        bottom: 40px;
    }

    footer:before {
        height: 30px;
    }

    footer .center .column.info {
        flex-direction: column;
    }

    footer .center .column.info .copy {
        margin-bottom: 20px;
        max-width: 100%;
    }

    footer .center .column.info .phoneMobile {
        display: none;
    }

    .stocks .center {
        padding-left: 0;
        padding-right: 0;
    }

    .stocks.inner {
        padding-left: 20px;
        padding-right: 20px;
    }

    .stocks .center .title {
        padding-left: 20px;
        padding-right: 20px;
    }

    .stocks.inner .center .title {
        padding-left: 0;
        padding-right: 0;
    }

    .aboutMap .container {
        justify-content: center;
    }

    .aboutMap .container .img {
        width: 150px;
        height: 150px;
        background-size: 200% 200%;
    }

    .stocks.inner .container .item {
        width: 100%;
        margin-right: 0 !important;
        margin-bottom: 30px;
    }

    .forchild .plan:before {
        height: 30px;
        top: -30px;
    }
}

@media(max-width:400px) {
    header .top .phone {
        display: none;
    }
}

#notification-popup {
    padding: 0;
    max-width: 600px;
    width: 100%;
    background: transparent;

    img {
        border-radius: 2rem;
        display: block;

        @media (max-width: 500px) {
            border-radius: 1rem;
        }
    }
}

.policy-f-link,
.open-cookie-settings {
    color: white;
    font-size: 0.7em;
    letter-spacing: 0.1em;
    margin-bottom: 40px;
    display: block;
    width: fit-content;
}

.open-cookie-settings {
    margin-bottom: 1em;
}

.mfeedback .mf-consent {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 15px 0;
    font-size: 14px;
    line-height: 1.4;
    cursor: pointer;
}

.mfeedback .mf-consent input[type="checkbox"] {
    appearance: auto; /* ключевое */
    display: block;
    -webkit-appearance: checkbox;
    width: 16px;
    height: 16px;
    margin: 2px 0 0 0;
    cursor: pointer;
}

.mfeedback .mf-consent a {
    color: #007aff;
    text-decoration: underline;
}

.mfeedback input[type="submit"]:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}