/*@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
@import url(https://fonts.googleapis.com/css?family=Roboto+Condensed:400&subset=latin,latin-ext);
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Lobster&family=Philosopher:ital,wght@0,400;0,700;1,400;1,700&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');
*/
/*@import url("https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&display=swap");*/
@import url('https://fonts.googleapis.com/css2?family=Cormorant:ital,wght@0,300..700;1,300..700&family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Abel&family=Mulish:ital,wght@0,200..1000;1,200..1000&family=Oswald:wght@200..700&family=Poiret+One&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

@font-face {
    font-family: "Montagna";
    src: url("../fonts/MontagnaLTD.ttf");
}

:root {
    --textColorDefault: #2B2913;
    --textColorDark: #000000;
    --textColorBlack: #000000;
    --inputPlaceholderColor: #606060;
    --textLight: #909890;
    --linkHoverColor: #459626;
    --primaryColor: #23713D;
    --accentColor: #459626;
    --colorAlternative: #4682B4;
    --secondaryColor: #23713D;
    --accentColorLight: #64B90E;
    --accentColorLighter: #64B90E;
    --accentColorLightest: #64B90E;
    --accentColorDark: #23713D;
    --accentColorDarker: #05531F;
    --accentColorDarkest: #05531F;
    --backColor: #ffffff;
    --backColor2: #f5f3ed;
    --backColor3: #f8f8f8;
    --backDarkColor: var(--accentColorDark);
    --headerHeight: 90px;
    --borderLightColor: #e0e0e0;
    --footerBackColor: #303030;
    --negativeRedColor: #A10D2E;

    --site-width: 1366px;
    --section-padding: 80px;

    /*font-family: Roboto, sans-serif;*/
    font-family: Mulish, sans-serif;
}

@media (max-width: 767px) {
    :root {
        --section-padding: 50px;
        --headerHeight: 70px;
    }
}

*,
:after,
:before {
    box-sizing: border-box;
}

a {
    text-decoration: none;
    color: var(--accentColorDarker);
}

section p a {
}

a:hover {
    color: var(--accentColorDark);
}

body,
html {
    height: 100%;
    font-size: 17px;
}

body {
    background-color: var(--backColor);
    /*font-family: Roboto, sans-serif;*/
    font-family: Mulish, sans-serif;
    font-size: 17px;
    font-weight: normal;
    font-style: normal;
    line-height: 1.3;
    position: relative;
    visibility: visible;
    overflow-x: hidden;
    color: var(--textColorDefault);
    padding-right: 0 !important;
}

@media (max-width: 1280px) {
    body,
    html {
        font-size: 16px;
    }
}

@media (max-width: 767px) {
    body,
    html {
        font-size: 14px;
    }
}

@media (max-width: 500px) {
    body,
    html {
        font-size: 14px;
    }
}

p {
    line-height: 1.5;
}

p b {
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    line-height: 1.2;
    color: inherit;
    font-family: Mulish, sans-serif;
}

h4 {
    font-weight: normal;
    font-size: 24px;
    /*color: var(--textColorBlack);*/
    color: var(--textColorBlack);
}

h1 {
    font-family: Montagna, sans-serif;
    font-size: 55px;
    font-weight: normal;
    line-height: 1.3;
    text-transform: none;
}

@media (max-width: 1440px) {
    .hero-frame h1 {
        font-size: 40px;
    }
}

@media (max-width: 1280px) {
    .hero-frame h1 {
        font-size: 36px;
    }
}

@media (max-width: 900px) {
    .hero-frame h1 {
        font-size: 34px;
    }
}

@media (max-width: 500px) {
    .hero-frame h1 {
        font-size: 34px;
    }
}

h2 {
    font-family: Montagna, sans-serif;
    font-weight: normal;
    font-size: 2.125rem;
    color: var(--primaryColor);
}

h3 {
    font-family: Montagna, sans-serif;
    font-weight: normal;
    font-size: 1.6rem;
    color: var(--accentColorDarker);
    margin-bottom: 0.5em;
}

h4 {
    /*font-weight: normal;*/
    /*font-size: 24px;*/
    color: var(--textColorBlack);
    font-size: 1.15rem;
    font-weight: bold;
}

@media (max-width: 767px) {
    h2 {
        font-size: 1.8rem;
        padding-bottom: 4px;
        margin-bottom: 0;
    }

    h3 {
        font-size: 1.25rem;
        padding-bottom: 4px;
        margin-bottom: 0;
    }

    h4 {
        font-size: 18px;
    }
}

.header-container {
    max-width: var(--site-width);
    align-items: center;
}

.header-container h3,
.header-container h2,
.header-container h4,
.header-container a {
    text-decoration: none;
}

h5 {
    font-size: 18px;
    font-weight: normal;
    margin-top: 30px;
    color: var(--secondaryColor);
    /*font-weight: 600;*/
}

@media (max-width: 767px) {
    h5 {
        font-size: 16px;
        margin-top: 20px;
    }
}

.header-container h3 {
    font-weight: bold;
    color: var(--accentColor);
}

.logo,
    /*.footer-area .logo,*/
.sticky-header .logo,
.sticky-header.sticky .logo {
    height: 85px;
}

@media (max-width: 767px) {
    .sticky-header .logo,
    .sticky-header.sticky .logo {
        max-width: 250px;
    }
}

.footer-contacts img {
    width: 24px;
    height: 24px;
    margin-right: 15px;
}

.footer-contacts .social img {
    width: 40px;
    height: 40px;
}

.footer-contacts p,
.footer-contacts a {
    color: white !important;
    padding: 2px 0;
    margin-bottom: 0;
}

.footer-contacts a:hover {
    color: var(--accentColorLightest);
}

.footer-contacts .flex-column {
    gap: 2px;
}

.footer-contacts .contacts-block {
    margin-bottom: 20px;
}

.footer-contacts h6 {
    font-weight: 700;
    font-size: 18px;
    color: white;
}

.logo-block {
    display: flex;
    align-items: center;
}

.logo-block p {
    margin-left: 30px;
    margin-bottom: 0;
    font-weight: bold;
    color: #606060;
}

.header-area {
    height: var(--headerHeight);
    /*display: flex;*/
    /*align-items: center;*/
}

.row {
    --bs-gutter-x: 40px;
    --bs-gutter-y: 0;
}

/*.header-area .row {
    margin: 0;
}*/

.header-area div {
    height: 100%;
}

.header-mobile .logo-block p {
    margin-left: 15px;
    margin-bottom: 0;
    font-size: 12px;
    line-height: 1.2;
}

.header-mobile-logo-row .col-9 {
    padding-right: 0;
}

.header-addresses,
.header-phones {
    display: flex;
    column-gap: 30px;
    margin: 0;
}

/*@media (min-width: 1280px) {
    .header-addresses,
    .header-phones {
    }
}*/

@media (max-width: 990px) {
    .header-addresses,
    .header-phones {
        display: flex;
        flex-direction: column;
        gap: 6px;
        align-items: flex-end;
    }
}

.header-contacts {
    align-items: center;
    overflow: hidden;
    column-gap: 30px;
}

@media (max-width: 500px) {
    .header-contacts {
        /*background: transparent;*/
        margin-left: 0;
    }
}

.header-button-wrapper {
    justify-content: center;
    display: flex;
    align-items: center;
    flex: 1;
}

.header-contacts button {
    margin-right: 0;
}

@media (max-width: 1280px) {
    .header-contacts button {
        display: none;
    }
}

.section-contacts img,
.header-contacts img {
    height: 24px;
    width: 24px;
    margin-right: 10px;
}

@media (max-width: 500px) {
    .header-contacts img {
        margin-right: 0;
    }
}

@media (max-width: 500px) {
    .header-contacts img {
        display: none;
    }

    .header-contacts a img {
        display: block;
    }
}

.section-contacts a,
.service-section a,
.contacts-block .contacts-row.phone a,
.header-contacts p,
.header-contacts a {
    font-size: 20px;
    font-weight: normal;
    text-decoration: none;
    display: flex;
    align-items: center;
    margin-bottom: 0;
}

.service-section a:hover {
    color: var(--accentColor);
}

.header-contacts a:hover {
    color: var(--accentColor);
}

.header-contacts a.button-primary {
    height: fit-content;
}

.header-contacts p,
.header-contacts a {
    color: var(--textColorDefault);
}

@media (max-width: 767px) {
    .section-contacts p,
    .section-contacts a,
    .header-contacts p,
    .header-contacts a {
        font-size: 16px;
    }

    .section-contacts a,
    .header-contacts a {
        color: var(--textColorDefault);
        padding: 4px 0;
        /*border-bottom: 2px solid var(--accentColorDark);*/
    }

    .section-contacts a:hover,
    .header-contacts a:hover {
        color: var(--accentColor);
    }
}

.header-contacts p img,
.header-contacts a img {
    width: 30px;
    height: 30px;
}

.header-social {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: flex-end;
}

.header-social img {
    width: 30px;
    height: 30px;
}

.header-navigation {
    display: flex;
    gap: 30px;
    align-items: center;
}

@media (max-width: 1060px) {
    .header-navigation {
        margin-left: 20px;
        gap: 20px;
    }
}

.header-icons {
    height: 100px;
    gap: 20px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.header-icons img {
    width: 28px;
    height: 28px;
}

.header-navigation a {
    font-size: 16px;
    text-transform: none;
    color: var(--textColorDefault);
    text-decoration: none;
    padding: 10px 0;
    border-bottom: 2px solid transparent;
    border-top: 2px solid transparent;
}

.header-navigation a strong {
    text-transform: uppercase;
}

.header-navigation a:hover {
    color: var(--accentColor);
    border-bottom: 2px solid var(--accentColor);
}

.main-content {
    padding-top: calc(var(--headerHeight));
}

/*.main-content-sticky {
}*/

.main-content-back {
    background-size: auto;
}

.section-hero {
    position: relative;
    display: flex;
    align-items: center;
    /*background: linear-gradient(90deg, #ffffff 0%, #F6F3F1 100%);*/
}

.section-hero,
.hero.container {
    max-width: 100%;
    /*height: 750px;*/
}

div:has(> .hero-box) {
    padding-top: 100px;
    padding-bottom: 100px;
}

.hero-box {
    display: block;
    flex-direction: column;
    padding: 0;
    width: 100%;
}

.hero-box a,
.hero-box button {
    margin-right: 15px;
}

.hero-box a img {
    /*width: 40px;
    height: 40px;*/
    width: 50px;
    height: 50px;
    padding: 6px;
}

@media (max-width: 767px) {
    .hero-box a,
    .hero-box button {
        margin-right: 10px;
    }

    .hero-box a img {
        width: 40px;
        height: 40px;
        padding: 4px;
    }
}

.hero-text {
    font-size: 26px;
    line-height: normal;
    color: var(--textColorDefault);
    margin: 30px 0;
}

@media (min-width: 1440px) {
    .hero-text {
        width: 80%;
    }
}

@media (max-width: 1440px) {
    .hero-title {
        font-size: 55px;
    }
}

@media (max-width: 1280px) {
    .hero-title {
        font-size: 45px;
    }

    .hero-text {
        font-size: 20px;
    }
}

@media (max-width: 991px) {
    .hero-title {
        width: calc(100vw - 40px);
    }
}

@media (max-width: 767px) {
    div:has(> .hero-box) {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .hero-title {
        font-size: 38px;
    }

    .hero-text {
        font-size: 16px;
    }
}

div:has(> .hero-image) {
    display: flex;
    align-items: center;
}

.hero-image {
    height: auto;
    width: 100%;
    object-fit: contain;
    margin-top: 30px;
    margin-bottom: 30px;
    border-radius: 50px;
}

@media (max-width: 767px) {
    .hero-image {
        margin: 15px 0 0 0;
        border-radius: 30px;
        width: 50%;
    }

    div:has(> .hero-image) {
        display: flex;
        justify-content: end;
    }
}

.section-hero section,
.hero.container section {
    height: 100%;
}

.section-hero section .container,
.hero.container section .container {
    height: 100%;
    display: flex;
    align-items: center;
    width: 100%;
}

.section-hero section .container .row,
.hero.container section .container .row {
    width: 100%;
}

.hero-frame {
    padding: 40px;
    border-radius: 40px;
    /*row-gap: 30px;*/
    display: flex;
    flex-direction: column;
    background-color: #00000080;
    width: fit-content;
    backdrop-filter: blur(20px);
}

@media (max-width: 767px) {
    .hero-frame {
        padding: 40px 20px;
        border-radius: 20px;
    }
}

.hero-desc-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    column-gap: 15px;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.hero-desc-row img {
    width: 6px;
    height: 6px;
}

.hero-buttons-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    column-gap: 30px;
    row-gap: 10px;
    flex-wrap: wrap;
}

.hero-frame h5,
.hero-frame p {
    font-size: 2rem;
    color: white;
    font-weight: 500;
    text-shadow: 2px 3px 0 rgba(0, 0, 0, 0.5);
}

@media (max-width: 500px) {
    .hero-frame h5,
    .hero-frame p {
        font-size: 1.25rem;
    }
}

.hero-frame h1 {
    color: #2B2913;
    margin-bottom: 30px;
}

.hero-frame h3 {
    color: white;
    margin-bottom: 10px;
    font-weight: normal;
    font-size: 20px;
    line-height: 1.3;
}

.hero-frame .hero-desc-row h3 {
    margin-bottom: 0;
}

.hero-frame h3 strong {
    font-weight: normal;
    color: var(--accentColor);
}

@media (max-width: 1440px) {
    .hero-frame h3 {
        font-size: 20px;
    }
}

@media (max-width: 1280px) {
    .hero-frame h3 {
        font-size: 20px;
    }
}

@media (max-width: 900px) {
    .hero-frame h3 {
        font-size: 20px;
    }
}

@media (max-width: 500px) {
    .hero-frame h3 {
        font-size: 20px;
    }
}

.hero2 h3 {
    color: var(--textColorDark);
}

.hero-frame h1 b {
    color: var(--accentColor);
}

.hero-frame h5 {
    font-weight: 100;
    margin-bottom: 10px;
    font-size: 20px;
}

.hero-frame ul {
    padding-left: 1rem;
    margin-bottom: 40px;
}

.hero-frame ul li {
    font-size: 24px;
    list-style: square;
    font-weight: bold;
    margin-bottom: 8px;
    color: var(--accentColorDarker);
}

@media (max-width: 450px) {
    .hero-frame ul li {
        font-size: 15px;
    }
}

.button-primary,
.button-secondary {
    padding: 15px 30px;
    background-color: var(--accentColor);
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    color: #fff;
    text-transform: none;
    border-radius: 50px;
    transition: background 0.2s ease, border-radius 0.2s ease;
    border: 2px solid var(--accentColor);
}

.button-secondary {
    background-color: transparent;
    /*color: var(--textColorDefault);*/
    color: var(--primaryColor);
    font-weight: 500;
}

@media (max-width: 767px) {
    .button-primary,
    .button-secondary {
        padding: 10px 20px;
        font-size: 16px;
    }
}

.button-secondary:hover,
a.button-primary:hover,
.button-primary:hover {
    background-color: var(--accentColorDark);
    border: 2px solid var(--accentColorDark);
    color: white;
}

.header-transparent {
    background-color: transparent;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 9;
}

.hero-button:hover {
    background-color: #abccec;
    color: black;
}

.container {
    max-width: var(--site-width);
}

/*
.gallery {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    margin: 30px 0;
}

.gallery > * {
    !*width: 32%;*!
    flex: 1;
    min-width: 30%;
    max-height: 350px;
}

@media (max-width: 767px) {
    .gallery > * {
        min-width: 45%;
        max-height: 150px;
    }
}

.gallery div:has(img) {
    overflow: hidden;
}

*/
.gallery img {
    object-fit: contain;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.gallery img:hover {
    transform: scale(1.05, 1.05);
}

.popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    justify-content: center;
    align-items: center;
    z-index: 100;
}

.popup-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 80%;
}

.popup img {
    /*border: 8px solid #fff;*/
    height: 100%;
    width: 100%;
    object-fit: contain;
    /*background-color: white;*/
}

.popup .caption {
    color: white;
    text-align: center;
    margin-top: 10px;
}

.popup .close {
    display: block;
    position: absolute;
    float: right;
    top: -10px;
    right: -30px;
    font-size: 36px;
    color: rgb(255, 255, 255);
    cursor: pointer;
    opacity: 0.7;
    -webkit-transition: opacity 0.2s;
    -moz-transition: opacity 0.2s;
    -o-transition: opacity 0.2s;
    transition: opacity 0.3s;
}

@media (max-width: 768px) {
    .popup-wrap {
        width: 85%;
    }

    .popup img {
        width: 100%;
    }

    .popup .close {
        top: -10px;
        right: -20px;
        font-size: 24px;
    }
}

.close:hover,
.close:focus {
    color: #bbb;
    text-decoration: none;
    cursor: pointer;
}

.section {
    padding-top: var(--section-padding);
    padding-bottom: var(--section-padding);
}

.sticky-header {
    transition: all 0.4s ease-out;
    -webkit-transition: all 0.4s ease-out;
    -moz-transition: all 0.4s ease-out;
    /*noinspection CssUnknownProperty*/
    -ms-transition: all 0.4s ease-out;
    -o-transition: all 0.4s ease-out;
}

.sticky-header.sticky-show {
    animation-name: a !important;
}

.sticky-header.sticky {
    background-color: white;
    box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.2);
    /*box-shadow: 0 4px 16px 0px rgba(0, 0, 0, 0.1);*/
    position: fixed;

    left: 0;
    top: 0 !important;
    width: 100%;
    z-index: 59;
    /*animation-name: b;*/
    /*animation-duration: .5s;*/
    /*animation-fill-mode: both;*/
    transition: all 0.4s ease-out;
    -webkit-transition: all 0.4s ease-out;
    -moz-transition: all 0.4s ease-out;
    /*noinspection CssUnknownProperty*/
    -ms-transition: all 0.4s ease-out;
    -o-transition: all 0.4s ease-out;
}

.section .section-title {
    padding-bottom: 20px;
}

.section-prices .section-title {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.section-title h5 {
    color: #606060;
}

/*Секция вызвать мастера*/
.service-section {
    object-fit: cover;
    padding-top: 20px;
    padding-bottom: 20px;
}

.service-section .container {
    background-image: url(../images/banner_zakaz10.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.service-section .container .row {
    height: 180px;
    align-items: center;
}

.service-section h4 {
    margin-bottom: 0;
}

.service-info {
    display: flex;
    align-items: center;
}

.service-info h3 {
    text-transform: uppercase;
    font-size: 32px;
    color: var(--secondaryColor);
}

.service-info img {
    margin-right: 50px;
    margin-left: 50px;
}

@media (max-width: 991px) {
    .service-section .container .row {
        height: auto;
        align-items: center;
    }

    .service-info {
        display: flex;
        align-items: flex-start;
        padding-top: 20px;
        padding-bottom: 20px;
        column-gap: 10px;
    }
}

@media (max-width: 767px) {
    .service-info h3 {
        font-size: 24px;
    }

    .service-info img {
        margin-right: 0;
        margin-left: 0;
        height: 32px;
        width: auto;
    }

    .service-section {
        padding-top: 0;
    }
}

.service-info div {
    display: flex;
    flex-direction: column;
}

.service-info div p {
    margin: 0;
}

.service-button {
    display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: center;
}

@media (max-width: 991px) {
    .service-button {
        margin-bottom: 20px;
    }
}

.service-button p {
    margin: 5px 0 0 0;
    font-size: 24px;
}

@media (max-width: 767px) {
    .section-contacts .section-title h5 {
        color: #606060;
        font-size: 16px;
    }
}

.service-single p {
    margin-bottom: 0;
    margin-top: 0;
    color: #5D5B45;
}

.service-single a {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    grid-template-areas: "overlap";
    /*background-color: #000;*/
    border-radius: 5px;
}

.service-single a img {
    display: flex;
    align-items: flex-end;
    grid-area: overlap;
    /*align-self: center;*/
    /*justify-self: center;*/
    /*opacity: 0.7;*/
}

.service-single a h4 {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
    padding: 15px 30px;
    background-color: #ffffffe0;
    width: 100%;
    color: var(--accentColorDarker);
    font-weight: 700;
    text-decoration: none;
    z-index: 51;
    grid-area: overlap;
    align-self: flex-start;
    justify-self: flex-start;
    text-transform: uppercase;
}

@media (max-width: 500px) {
    .service-single a h4 {
        font-size: 18px;
        padding: 8px 10px;
    }
}

.service-single a h4 b {
    font-size: 18px;
    font-weight: 600;
    color: var(--textColorDark);
}

@media (max-width: 500px) {
    .service-single a h4 b {
        font-size: 15px;
    }
}

.foreground-black {
    margin: 0 0 0 0;
    background-color: #00000060;
    width: 100%;
    height: 100%;
    z-index: 50;
    grid-area: overlap;
    align-self: flex-end;
    justify-self: flex-start;
}

.service-photo {
    overflow: hidden;
    /*noinspection CssInvalidPropertyValue*/
    overflow-wrap: anywhere;
}

.service-photo img {
    display: flex;
    align-items: flex-end;

    transform-origin: center;
    transition: transform 1.5s cubic-bezier(0.22, 1, 0.36, 1);

    grid-area: overlap;
    align-self: center;
    justify-self: center;
}

.service-photo img:hover {
    transform: scale(1.06);
}

.footer-area {
    background-color: var(--backDarkColor);
    padding: 70px 0;
}

@media (max-width: 500px) {
    .footer-area {
        padding: 20px 0 50px 0;
    }
}

.footer-area {
    color: white;
}

.footer-area h3 {
    color: var(--accentColorLighter);
    margin-bottom: 20px;
}

.footer-area h4 {
    color: #184863;
    font-weight: bold;
}

.horizontal {
    display: flex;
    align-items: center;
}

.footer-area ul li .horizontal {
    display: flex;
    align-items: center;
}

.footer-area ul li .horizontal img {
    width: 40px;
    height: 40px;
    margin-right: 20px;
}

.footer-area ul {
    padding-left: 0;
}

.footer-area li {
    list-style: none;
}

.footer-area li {
    padding-bottom: 15px;
}

.contacts-list p,
.contacts-list a,
.footer-area li p,
.footer-area li a {
    color: var(--accentColor);
    text-decoration: none;
}

.contacts-list a:hover,
.footer-area li a:hover {
    color: var(--accentColorDark);
}

.footer-area li p img,
.contacts-list p img,
.contacts-list a img,
.footer-area li a img {
    height: 28px;
    width: 28px;
    margin-right: 6px;
}

.contacts-list p img,
.contacts-list a img {
    height: 32px;
    width: 32px;
    margin-right: 10px;
}

.contacts-list .horizontal a img {
    height: 48px;
    width: 48px;
    margin-right: 20px;
}

@media (max-width: 557px) {
    .contacts-list p img,
    .contacts-list a img {
        height: 24px;
        width: 24px;
        margin-right: 10px;
    }
}

.footer-area .footer-main .footer1 .col-12 {
    padding-top: 30px;
}

.footer-menu {
    font-size: 18px;
}

.footer-menu ul li a {
    color: white;
    border-bottom: 2px solid transparent;
    padding: 5px 0;
}

.footer-menu ul li a:hover {
    color: white;
    border-bottom: 2px solid white;
}

.footer-buttons-block {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 50px;
    border-top: 1px solid #e0e0e0;
    padding-top: 30px;
    padding-bottom: 30px;
}

@media (max-width: 450px) {
    .footer-buttons-block {
        gap: 20px;
        border-top: 0;
        padding-top: 0;
        padding-bottom: 30px;
    }
}

.input-field {
    padding: 16px 32px;
    background-color: white;
    border-radius: 2px;
    border: 1px solid var(--borderLightColor);
    max-width: 300px;
}

.request-call-form {
    text-align: center;
    text-align: -webkit-center;
}

.request-call-form input,
.request-call-form button {
    width: 240px;
}

@media (max-width: 500px) {
    .request-call-form input,
    .request-call-form button {
        width: 100%;
        max-width: 100%;
    }
}

.modal-body {
    padding: 40px;
}

form textarea,
form input {
    background: #f0f0f0;
    border-radius: 3px;
    padding: 8px 16px;
    border: 0;
    width: 100%;
}

form button {
    display: block;
    margin-top: 20px;
    min-width: 200px;
    width: 100%;
}

@media (max-width: 767px) {
    form button {
        margin-top: 0;
    }
}

/* Photo Modal styles*/
#photoModal {
    border-radius: 5px;
    cursor: pointer;
    transition: 0.3s;
}

/*#photoModal:hover {opacity: 0.7;}*/

.modal-photo {
    display: none;
    /* Hidden by default */
    position: fixed;
    /* Stay in place */
    z-index: 60;
    /* Sit on top */
    padding-top: 100px;
    /* Location of the box */
    left: 0;
    top: 0;
    width: 100%;
    /* Full width */
    height: 100%;
    /* Full height */
    overflow: auto;
    /* Enable scroll if needed */
    background-color: rgb(0, 0, 0);
    /* Fallback color */
    background-color: rgba(0, 0, 0, 0.9);
    /* Black w/ opacity */
}

.modal-photo-content {
    margin: auto;
    display: block;
    width: 80%;
    /* max-width: 700px; */
    object-fit: contain;
    height: 90%;
}

.clickable-img {
    cursor: pointer;
}

@keyframes zoom {
    from {
        transform: scale(0);
    }

    to {
        transform: scale(1);
    }
}

@media only screen and (max-width: 700px) {
    .modal-photo-content {
        width: 100%;
    }
}

.prices-table tr,
.prices-table td {
    border: 1px solid #cdd8e0;
}

.prices-table td {
    padding: 10px 20px;
}

@media (max-width: 450px) {
    .prices-table td {
        padding: 10px 10px;
    }
}

.prices-table tr td:nth-child(2) {
    background-color: #f6f8fa;
}

.prices-table tr td:nth-child(3) {
    background-color: #eaf3f9;
    font-weight: bold;
    color: var(--accentColorDarker);
}

.table-header {
    font-weight: bold;
}

.table-header td {
    padding-top: 40px;
}

tr.table-header,
.table-header td {
    border: 0;
    background-color: transparent !important;
}

.contacts-list {
    display: flex;
    flex-direction: column;
}

.contacts-list p,
.contacts-list a {
    font-size: 20px;
    margin-bottom: 15px;
}

@media (max-width: 557px) {
    .contacts-list p,
    .contacts-list a {
        font-size: 15px;
        margin-bottom: 15px;
    }
}

.request-call-contacts-form {
    text-align: left;
    justify-content: flex-start;
    display: flex;
    width: fit-content;
    gap: 40px;
    flex-wrap: wrap;
}

@media (max-width: 500px) {
    .request-call-contacts-form {
        gap: 20px;
    }
}

.request-call-contacts-form input {
    margin-top: 0;
}

.request-call-contacts-form button {
    display: block;
    margin-top: 0;
    min-width: 200px;
    min-height: 55px;
}

.request-call-contacts-form h5 {
    line-height: 1.3;
    width: fit-content;
}

@media (max-width: 557px) {
    .request-call-contacts-form h5 {
        font-size: 15px;
    }
}

.section-contacts .request-call-form {
    text-align: start;
}

.section-contacts .contacts-block {
    margin-bottom: 0px;
}

.section-contacts .contacts-block .flex-column {
    gap: 6px;
    /*margin-top: 5px;*/
}

.section-contacts h6 {
    font-size: 22px;
    color: var(--accentColorDarker);
    margin-bottom: 10px;
    margin-top: 20px;
    font-weight: 700;
}

.section-contacts .contacts-block img {
    margin-right: 10px;
    height: 28px;
    width: 28px;
}

.section-contacts .contacts-block.social img {
    margin-right: 20px;
    height: 36px;
    width: 36px;
}

@media (max-width: 500px) {
    .section-contacts h6 {
        font-size: 18px;
        margin-top: 40px;
    }

    .section-contacts h5 {
        font-size: 18px;
    }
}

.section-contacts iframe {
    width: 100%;
    height: 100%;
    border-radius: 3px;
    min-height: 300px;
}

.header-menu-btn-wrapper {
    /*background-color: var(--accentColorDarker);*/
    display: flex;
    justify-content: center;
    align-items: center;
}

.header-menu-btn {
    background-color: transparent;
    border: none;
    margin: 0 10px 0 10px;
    padding: 0;
    display: none;
}

@media only screen and (max-width: 767px), only screen and (min-width: 768px) and (max-width: 991px) {
    .header-menu-btn {
        display: inline-block;
    }
}

.header-menu-btn span {
    background-color: var(--textColorBlack);
    width: 20px;
    height: 2px;
    display: block;
    margin-bottom: 4px;
    border-radius: 50px;
}

.header-menu-btn span:last-child {
    margin-bottom: 0;
}

.offcanvas {
    z-index: 110;
}

.btn-menu-close {
    color: var(--accentColorDark);
    padding: 10px 20px;
    border: 0;
    font-size: 18px;
    background-color: transparent;
}

.btn-menu-close i {
    margin-left: 10px;
}

.offcanvas-body ul {
    padding-left: 0;
}

.offcanvas-body ul li ul {
    margin-left: 20px;
    margin-top: 10px;
}

.offcanvas-body ul li {
    list-style: none;
}

.offcanvas-body ul li img {
    width: 32px;
    height: 32px;
    margin-right: 10px;
}

.offcanvas-nav-parent,
.offcanvas-nav-parent a {
    text-decoration: none;
    color: var(--textColorDefault);
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 1.15rem;
    font-weight: 500;
}

.header-mobile {
    /*background-color: white;*/
    text-align: left;
    height: var(--headerHeight);
}

/*.header-mobile .logo {
    width: 200px !important;
    margin: 0 0 0 20px;
}

@media (max-width: 500px) {
    .header-mobile .logo {
        width: 120px !important;
    }
}*/

.header-mobile .justify-content-end {
    display: flex;
    justify-content: flex-end;
}

.header-mobile .header-button {
    padding: 8px 16px;
    font-size: 15px;
    height: auto;
    margin-right: 0;
}

.header-mobile .header-contacts {
    padding-left: 20px;
    gap: 15px;
    justify-content: flex-end;
}

@media (max-width: 990px) {
    .header-mobile .header-contacts {
        padding-left: 0;
    }
}

.header-mobile .header-contacts a img {
    width: 24px;
    height: 24px;
}

.header-mobile .row > * {
    padding-right: 5px;
    padding-left: 5px;
}

.d-sm-none {
    display: inherit !important;
}

@media (max-width: 991px) {
    .d-sm-none {
        display: none !important;
    }
}

.section-single-service img.service-photo {
    width: 100%;
    height: 300px;
    object-fit: contain;
}

@media (max-width: 995px) {
    .section-single-service img.service-photo {
        width: 100%;
        height: 200px;
        object-fit: contain;
    }
}

.section-single-service h5 {
    color: #404040;
    line-height: 1.3;
}

.section-single-service h4 {
    margin-top: 30px;
    color: #000000;
}

.section-stages ul,
.section-single-service ul {
    list-style-image: url("../images/icons/icon-arrow-right.svg");
}

.section-stages li,
.section-single-service li {
    font-size: 18px;
    color: #404040;
    margin: 10px 0;
    padding-left: 10px;
}

@media (max-width: 450px) {
    .section-stages li,
    .section-single-service li {
        font-size: 15px;
        color: #404040;
        margin: 10px 0;
        padding-left: 10px;
    }
}

.bottom-line {
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: 10px;
}

.section .of-contain img {
    object-fit: contain;
}

.a-scroll-overhead.a-scroll-overhead {
    margin-top: -150px;
    padding-top: 150px;
}

/*noinspection CssInvalidPseudoSelector*/
*:has(> img.photo-zoom) {
    overflow: hidden;
    /*noinspection CssInvalidPropertyValue*/
    overflow-wrap: anywhere;
}

img.photo-zoom {
    display: flex;
    align-items: flex-end;

    transform-origin: center;
    transition: transform 1.5s cubic-bezier(0.22, 1, 0.36, 1);

    grid-area: overlap;
    align-self: center;
    justify-self: center;
}

img.photo-zoom:hover {
    transform: scale(1.06);
}

.section-contacts img.photo {
    width: 100%;
    height: 200px;
    object-fit: cover;
    border-radius: 5px;
    margin-bottom: 20px;
}

.section .row .logo p {
    margin-bottom: 0;
}

.section img.photo {
    width: 100%;
    /*height: auto;*/
}

.section img.photo.rounded {
    border-radius: 5px !important;
}

.section .of-cover img {
    object-fit: cover;
}

.offcanvas-menu-nav ul li:nth-child(5) img {
    padding: 5px;
}

.language-selector {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

/*
@media (max-width: 1350px) {
    .language-selector {
        display: flex;
        flex-direction: column;
        gap: 4px;
        align-items: center;
        justify-content: center;
    }
}

@media (max-width: 1160px) {
    .language-selector {
        flex-direction: row;
        gap: 10px;
    }
}*/

@media (max-width: 600px) {
    header .header-contacts .language-selector {
        display: none;
    }
}

.language-selector a {
    text-transform: uppercase;
    font-size: 1rem;
}

header .header-contacts {
    position: relative;
}

.icon-ver-block,
.icon-hor-block {
    display: flex;
    align-items: center;
    gap: 20px;
}

/*@media (max-width: 500px) {
    .icon-hor-block {
        flex-direction: column;
        justify-content: center;
        text-align: center;
        gap: 10px;
        margin-bottom: 20px;
    }
}*/

.icon-ver-block img,
.icon-hor-block img {
    height: 64px;
    width: 64px;
}

@media (max-width: 500px) {
    .icon-ver-block img,
    .icon-hor-block img {
        height: 40px;
        width: 40px;
    }
}

#section-autopark .icon-ver-block img {
    height: 64px;
    width: auto;
}

.icon-hor-block h4 {
    margin-bottom: 0;
}

.icon-hor-block p {
    margin-bottom: 0;
}

.icon-ver-block {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    text-align: center;
}

.icon-ver-block p {
    padding: 0 36px;
}

@media (max-width: 500px) {
    .icon-ver-block {
        display: flex;
        flex-direction: row;
        margin-bottom: 20px;
    }

    .icon-ver-block p {
        padding: 0;
        text-align: start;
        margin-bottom: 0;
    }
}

.icon-ver-block p b {
    font-weight: bold;
}

#section-about .icon-hor-block {
    width: 50%;
    margin-bottom: 15px;
}

@media (max-width: 500px) {
    #section-about .icon-hor-block {
        width: 100%;
    }
}

.icon-hor-block-wrapper {
    display: flex;
    flex-wrap: wrap;
}

.contacts-row {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.section-contacts .contacts-row {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    line-height: 1.5;
}

.footer-contacts .button-secondary {
    margin-top: 50px;
}

.contacts-row img {
    height: 28px;
    width: 28px;
    margin-right: 15px;
}

.contacts-row img.social {
    height: 32px;
    width: 32px;
}

.contacts-row {
    font-size: 1.15rem;
    font-weight: normal;
}

.contacts-row p,
a.contacts-row,
.contacts-row a {
    font-size: 1.15rem;
    font-weight: normal;
    text-decoration: none;
    display: flex;
    align-items: center;
    margin-bottom: 0;
    color: var(--textColorDark);
}

/*footer .contacts-row p,
footer a.contacts-row,
footer .contacts-row a {
}*/

a.contacts-row:hover,
.contacts-row a:hover {
    color: var(--accentColor);
}

footer a.contacts-row:hover,
footer .contacts-row a:hover {
    color: #73C18D;
}

/*noinspection CssInvalidPseudoSelector*/
form div:has(textarea),
form div:has(input) {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
    min-width: 150px;
}

.back-red form textarea,
.back-red form input {
    background: white;
    border-radius: 3px;
    padding: 5px 15px;
    border: 0;
    width: 100%;
}

.back-red form label {
    color: var(--accentColorLighter);
    font-weight: bold;
}

.form-row {
    display: flex;
    gap: 15px;
    margin-top: 20px;
    /*flex-wrap: nowrap;*/
    flex-wrap: wrap;
    flex-direction: row;
}

.form-column {
    display: flex;
    gap: 15px;
    margin-top: 20px;
    /*flex-wrap: nowrap;*/
    flex-wrap: wrap;
    flex-direction: column;
}

ol,
ul {
    padding-left: 1.2rem;
}

ol li,
ul li {
    margin-bottom: 0.5rem;
}

ul.routes-list {
    list-style: none;
    padding: 20px 0;
}

ul.routes-list li {
    margin-bottom: 0.6rem;
}

ul.routes-list li img {
    margin: 0 20px;
}

.section img.photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 5px;
}

.section img.photo.op-top {
    object-position: top;
}

.section img.photo.contain {
    object-fit: contain;
}

/* marquee styles start*/
.marquee-wrap {
    margin: 60px 0;
}

@media (max-width: 767px) {
    .marquee-wrap {
        margin: 30px 0;
    }
}

.marquee-items-wrap {
    position: relative;
    display: flex;
    overflow: hidden;
    user-select: none;
    gap: 20px;
    height: auto;
}

.marquee-items-wrap:before,
.marquee-items-wrap:after {
    content: "";
    height: 100%;
    top: 0;
    width: 10%;
    position: absolute;
    z-index: 1;
    pointer-events: none;
}

.marquee-items-wrap:before {
    left: 0;
    background: linear-gradient(90deg, rgb(255, 255, 255) 0%, #f8f8f800 100%);
}

.marquee-items-wrap:after {
    right: 0;
    background: linear-gradient(90deg, #f8f8f800 0%, rgb(255, 255, 255) 100%);
}

.marq-items {
    flex-shrink: 0;
    display: flex;
    gap: 100px;
    counter-reset: item;
    justify-content: space-around;
    min-width: 100%;
    height: 80px;
    padding: 0 30px 0 0;
}

@media (max-width: 769px) {
    .marq-items {
        gap: 30px;
        height: 36px;
    }
}

.marq-item {
    flex: 0 0 auto;
    counter-increment: item;
    border-radius: 6px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    color: #404040;
    margin: 0;
    transition: all 0.1s ease-in-out;
}

.marquee {
    animation: scroll 90s linear infinite;
}

@media (max-width: 767px) {
    .marquee {
        animation: scroll 45s linear infinite;
    }
}

.marquee-back {
    animation: scroll-back 90s linear infinite;
}

@keyframes scroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(calc(-100% - 20px));
    }
}

@keyframes scroll-back {
    from {
        transform: translateX(calc(-100% - 20px));
    }

    to {
        transform: translateX(0);
    }
}

/* marquee styles end*/

.a-scroll-overhead.a-scroll-overhead {
    margin-top: -100px;
    padding-top: 100px;
}

.header-back-placeholder {
    position: absolute;
    background-color: var(--accentColorDarker);
    right: 0;
    width: 30%;
    z-index: -1;
}

.offcanvas-menu-nav .header-phones {
    justify-content: flex-start;
    align-items: flex-start;
    margin-bottom: 20px;
    margin-top: 30px;
}

.offcanvas-menu-nav .header-phones a {
    font-weight: normal;
    font-size: 1.2rem;
    color: var(--textColorDark);
    display: flex;
    align-items: center;
    column-gap: 10px;
}

.off-canvas-wrapper.offcanvas.offcanvas-start.show {
    height: 100vh;
}

.offcanvas-body {
    position: relative;
    padding: 1rem 2rem;
}

.buttons-row {
    display: flex;
    gap: 50px;
    align-items: center;
}

@media (max-width: 500px) {
    .buttons-row {
        margin-top: 20px;
        display: flex;
        gap: 10px;
        flex-direction: column;
    }
}

.footer-main .footer-contacts p b {
    color: white;
}

.offcanvas-header {
    display: flex;
    justify-content: space-between;
}

.offcanvas-header .language-selector a {
    color: white;
    padding: 5px;
}

.offcanvas-header a.current,
.language-selector a.current {
    color: var(--accentColor);
    pointer-events: none;
    cursor: default;
}

.single-product {
    display: flex;
    flex-direction: column;
    row-gap: 5px;
}

.single-product img {
    width: 100%;
    height: 350px;
    object-fit: cover;
    border-radius: 5px;
}

@media (max-width: 999px) {
    .single-product img {
        height: 250px;
    }
}

@media (max-width: 500px) {
    .single-product img {
        height: 200px;
    }
}

.single-product .sizes {
    display: flex;
    flex-wrap: wrap;
    column-gap: 10px;
    row-gap: 5px;
    padding: 5px 0;
}

.single-product .text-gray {
    color: var(--textLight);
}

.single-product .sizes p {
    background-color: var(--textLight);
    margin-bottom: 0;
    color: white;
    padding: 2px 10px;
    border-radius: 20px;
}

.single-product .sizes p:hover {
    background-color: var(--accentColorDark);
}

.single-product .price-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.single-product .price-row h5,
.single-product .price-row p {
    margin-bottom: 0;
}

.single-product .price-row p {
    font-size: 18px;
}

.single-product .price-row h5 {
    color: var(--accentColorDark);
    font-weight: bold;
    font-size: 18px;
}

.single-product .price-row h5 b {
    font-size: 30px;
    text-align: end;
}

@media (max-width: 500px) {
    .single-product .price-row h5 b {
        font-size: 18px;
    }
}

.single-product h4 {
    color: white;
    background-color: var(--accentColor);
    padding: 4px 20px;
    border-radius: 40px;
    width: fit-content;
}

.section-gallery .row {
    row-gap: 40px;
}

.section-colored {
    padding-bottom: 100px;
    background-color: #f0f4fa;
}

.section-colored-2 {
    padding-bottom: 100px;
    background-color: #f7f2ed;
}

.advantage-block {
    display: flex;
    align-items: center;
    flex-direction: column;
    row-gap: 20px;
    column-gap: 30px;
    text-align: center;
}

.advantage-block img {
    /*background-color: var(--backColor2);*/
    width: 200px;
    height: 160px;
    /*padding: 40px;*/
    /*border-radius: 50%;*/
    object-fit: contain;
}

@media (max-width: 767px) {
    .advantage-block {
        column-gap: 15px;
        margin-bottom: 15px;
    }

    .advantage-block img {
        /*width: 96px;*/
        /*height: 96px;*/
        /*padding: 20px;*/
        /*border-radius: 50%;*/
    }
}

.advantage-block p {
    /*font-size: 1.15rem;*/
    font-size: 1rem;
    font-weight: 700;
}

.advantage-block h6 {
    font-weight: bold;
}

@media (max-width: 769px) {
    .advantage-block {
        /*flex-direction: row;*/
        text-align: left;
        row-gap: 0;
    }

    .advantage-block p {
        text-align: center;
    }
}

#section-advantages {
    padding-bottom: 100px;
}

#section-advantages .row {
    row-gap: 40px;
}

footer .button-primary {
    border: 2px solid white;
    border-radius: 5px;
    background-color: transparent;
    color: white;
}

footer .button-primary:hover {
    background-color: white;
    color: black;
}

div:has(> .hero-request-call) {
    display: flex;
    align-items: center;
}

.hero-request-call {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    padding: 40px;
    align-items: center;
    background-color: #ffffff30;
    border-radius: 56px;
    border-top: 2px solid #ffffff80;
    width: 100%;
    backdrop-filter: blur(20px);
}

.hero-request-call h2 {
    color: white;
    font-weight: 800;
    text-transform: uppercase;
    font-size: 36px;
    margin-bottom: 0;
    text-align: center;
}

.hero-request-call h4 {
    color: white;
    font-weight: normal;
    font-size: 22px;
    padding-bottom: 10px;
    margin-bottom: 0;
    text-align: center;
}

@media (max-width: 1280px) {
    .hero-request-call {
        border-radius: 32px;
    }
}

@media (max-width: 1280px) {
    .hero-request-call {
        padding: 40px 20px;
    }

    .hero-request-call h2 {
        font-size: 24px;
    }

    .hero-request-call h4 {
        font-size: 18px;
    }
}

.section-request-call input,
.hero-request-call input {
    padding: 15px 30px;
    /*color: var(--textColorDefault);*/
    color: white;
    font-weight: normal;
    font-size: 22px;
    border-radius: 40px;
    width: 100%;
    background-color: #ffffff20;
    -webkit-box-shadow: inset 0 3px 5px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: inset 0 3px 5px 0 rgba(0, 0, 0, 0.2);
    box-shadow: inset 0 3px 5px 0 rgba(0, 0, 0, 0.2);
    border: 0;
}

@media (max-width: 500px) {
    .section-request-call input,
    .hero-request-call input {
        padding: 10px 20px;
        font-size: 16px;
    }
}

.section-request-call input::placeholder,
.hero-request-call input::placeholder {
    /*color: var(--inputPlaceholderColor);*/
    color: #ffffffa0;
    opacity: 1;
    /* Firefox */
}

.hero-request-call input::-ms-input-placeholder {
    /* Edge 12 -18 */
    color: white;
}

.hero-request-call input:focus {
    outline: none;
}

.hero-request-call input:-internal-autofill-selected {
    /*appearance: menulist-button;*/
    background-color: inherit !important;
    color: inherit !important;
}

div:has(> .about-illustration) {
    padding-bottom: 20px;
}

.about-illustration {
    min-height: 500px;
    width: 100%;
    height: 100%;
    background-image: url("../images/atlant_blok.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.about-illustration_stir {
    background-image: url("../images/stiralka.png");
}

.about-illustration2 {
    min-height: 500px;
    width: 100%;
    height: 100%;
    background-image: url("../images/lg2.jpg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

@media (max-width: 500px) {
    .about-illustration {
        min-height: 400px;
    }

    .about-illustration2 {
        min-height: 400px;
    }

    .about-illustration_stir {
        min-height: 350px;
    }
}

.card {
    background-color: white;
    border-radius: 32px;
    padding: 30px;
    border: 0;
    overflow: hidden;

    -webkit-box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.1);

    transition: all 0.3s ease-in-out;
}

.card:hover {
    transform: translateY(-10px);
    -webkit-box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.1);
}

.stages-single {
    border: 0;
    overflow: hidden;
    min-height: 160px;
    padding-left: 240px;
    margin-top: 40px;
}

.stages-single.even {
    margin-top: 120px;
}

@media (max-width: 900px) {
    .stages-single {
        padding-left: 180px;
        margin-top: 20px;
        min-height: 120px;
    }

    .stages-single.even {
        margin-top: 20px;
    }
}

@media (max-width: 500px) {
    .stages-single {
        padding-left: 80px;
        margin-top: 20px;
        min-height: 80px;
    }

    .stages-single.even {
        margin-top: 20px;
    }
}

.section-advantages .card {
    padding-bottom: 100px;
}

*:has(> .number-pos-2),
*:has(> .number-pos-1) {
    position: relative;
}

*:has(> .number-pos-2) *,
*:has(> .number-pos-1) * {
    z-index: 1;
    position: relative;
}

.number-pos-1 {
    position: absolute;
    color: var(--accentColorDark);
    opacity: 0.15;
    font-weight: 900;
    font-size: 400px;
    top: 0;
    left: 0;
    z-index: 0;
    height: fit-content;
    line-height: 0.1;
    pointer-events: none;
}

.number-pos-2 {
    position: absolute;
    color: white;
    opacity: 0.5;
    font-weight: 900;
    font-size: 200px;
    left: 0;
    top: -50px;
    z-index: 0;
}

@media (max-width: 769px) {
    .number-pos-1 {
        font-size: 200px;
        left: 20px;
    }
}

.card img.number-pos-1 {
    width: 200px;
    height: 200px;
    bottom: -30px;
}

.about-service-column {
    row-gap: 40px;
    display: flex;
    flex-direction: column;
}

.about-service-column .light-text {
    color: #606060;
    padding-left: 30px;
}

.service-single {
    display: flex;
    flex-direction: column;
}

.service-single img {
    width: 100%;
    height: 80px;
    object-fit: contain;
    margin-bottom: 10px;
}

@media (max-width: 500px) {
    .service-single img {
        height: 80px;
    }
}

.service-single h4 {
    font-size: 1.15rem;
    font-weight: bold;
    color: black;
    margin-bottom: 8px;
}

.service-single {
    margin-bottom: 20px;
}

.card-colored {
    background: linear-gradient(
            135deg,
            rgba(130, 12, 154, 1) 0%,
            rgba(64, 55, 178, 1) 50%,
            rgba(0, 91, 255, 1) 100%
    );
    color: white;
}

.card-colored h3,
.card-colored p {
    color: white;
    font-weight: normal;
}

.section-stages {
    background-color: var(--accentColorLightest);
    padding-top: 100px;
    padding-bottom: 100px;
}

.section-stages.section h2.title {
    color: #7e0f9c;
}

div:has(> .contacts-block-wrapper) {
    position: relative;
}

.contacts-block-wrapper {
    height: 100%;
    display: flex;
    align-items: center;

    position: absolute;
    left: 50%;
    margin-left: -700px;
    top: 0;
    z-index: 10;
    width: 90%;
    max-width: 460px;
}

.contacts-block {
    background-color: #fffffff0;
    padding: 40px;
    overflow: hidden;
    border-radius: 56px;
    z-index: 2;
    /*backdrop-filter: blur(10px);*/
    -webkit-box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.3);
    box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.3);
}

@media (max-width: 1280px) {
    .contacts-block-wrapper {
        max-width: 400px;
    }

    .contacts-block {
        padding: 20px;
    }
}

@media (max-width: 500px) {
    .contacts-block-wrapper {
        max-width: 340px;
    }

    .contacts-block {
        border-radius: 32px;
    }
}

.section-map {
    position: relative;
    min-height: 700px;
    margin-top: 0;
}

.section-map iframe {
    min-height: 700px;
}

.section-map .contacts-block {
    /*position: absolute;*/
    width: 100%;
    /*max-width: 460px;*/
    /*left: 50%;*/
    /*margin-left: -700px;*/
    /*top: 50%;*/
    /*transform: translateY(-50%);*/
    /*z-index: 10;*/
}

@media (max-width: 1440px) {
    .section-map .contacts-block-wrapper {
        left: 20px;
        margin-left: 0;
    }
}

@media (max-width: 990px) {
    .section .contacts-block-wrapper {
        height: auto;
        display: flex;
        align-items: center;

        position: static;
        /*left: 50%;*/
        /*margin-left: -700px;*/
        margin-left: 0;
        /*top: 0;*/
        /*z-index: 10;*/
        width: 100%;
        max-width: 100%;
    }

    .section .contacts-block {
        background-color: #fffffff0;
        padding: 40px 20px;
        border-radius: 0;
        z-index: 2;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
    }

    .section .contacts-block button {
        max-width: 340px;
    }

    .section-map iframe {
        min-height: 400px;
    }
}

.contacts-social {
    display: flex;
    column-gap: 20px;
    align-items: center;
    margin-top: 20px;
}

.contacts-social img {
    width: 48px;
    height: 48px;
}

.fade {
    backdrop-filter: blur(20px);
}

.modal-content {
    border: 0;
    border-radius: 4px;
}

form textarea,
form input {
    background: var(--backColor3);
    border: 0;
    width: 100%;

    padding: 15px 15px;
    color: black;
    font-weight: normal;
    font-size: 16px;
    border-radius: 4px;
}

@media (max-width: 767px) {
    form textarea,
    form input {
        padding: 10px;
    }
}

input,
textarea {
    margin-bottom: 20px;
}

.section-request-call {
    margin-top: 100px;
    /*background-color: var(--backColor2);*/
    /*padding: 50px 0;*/
    /*background-color: var(--backColor2);*/
    padding: 100px 0;
    background: url("../images/photos/blurred-back.jpg") no-repeat center;
    background-size: cover;
}

@media (max-width: 900px) {
    .section-request-call .form-block {
        padding: 40px 20px;
    }
}

.section-request-call .row h4,
.section-request-call .row h3,
.section-request-call .row h2,
.section-request-call .row p {
    color: white;
}

.section-request-call h5 {
    margin-bottom: 30px;
}

.section-request-call .inputs-row {
    column-gap: 20px;
    display: flex;
    flex-wrap: wrap;
    row-gap: 20px;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
    flex-direction: row;
}

.section-request-call button,
.section-request-call input {
    max-width: 300px;
    width: 100%;
}

footer .requisites {
    color: white;
    opacity: 0.7;
    font-size: 14px;
}

.accordion-item {
    border: none;
    margin-bottom: 20px;
    background-color: transparent;
}

.accordion-button {
    border: 1px solid #e0e0e0;
    background-color: var(--backColor2);
    box-shadow: none;
    padding: 20px 30px;
    border-radius: 4px;
    font-weight: normal;
    font-size: 1.25rem;
    margin-bottom: 0;
    color: black;
}

.accordion-button:focus {
    border: 1px solid var(--accentColorLight);
}

@media (max-width: 900px) {
    .accordion-button {
        font-size: 16px;
        padding: 20px 20px;
    }
}

.accordion-button:hover {
    border: 1px solid var(--primaryColor);
    background-color: var(--backColor2);
}

.accordion-button img {
    height: 32px;
    width: 32px;
    margin-right: 10px;
    margin-bottom: 4px;
}

.accordion-button:not(.collapsed) {
    /*border-color: var(--borderLightColor);*/
    box-shadow: none;
    color: black;
    border: 1px solid var(--primaryColor);
    background-color: var(--backColor2);
}

.accordion-button:active,
.accordion-button:focus {
    box-shadow: none;
}

.accordion-body {
    border: 0;
    border-top: 0;
    /*font-size: 14px;*/
    padding: 18px 24px;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.section-hero-callback {
    background-image: url("../images/photos/hero-back-3.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding-bottom: 40px;
}

.section-about-service .light-text p {
    margin-bottom: 10px;
    display: flex;
    align-items: center;
}

.section-about-service .light-text p img {
    width: 24px;
    height: 24px;
    margin-right: 10px;
}

.slogan-block {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    column-gap: 30px;
}

.slogan-block p {
    font-size: 100px;
    font-weight: normal;
    margin-bottom: 0;
    color: var(--secondaryColor);
    line-height: 0.8;
}

.slogan-block p span,
.slogan-block h6 {
    font-size: 40px;
    font-weight: normal;
    margin-bottom: 0;
    color: var(--accentColorDarker);
    padding-top: 10px;
}

@media (max-width: 500px) {
    .slogan-block p {
        font-size: 55px;
    }

    .slogan-block {
        column-gap: 20px;
    }

    .slogan-block p span,
    .slogan-block h6 {
        font-size: 20px;
    }
}

/*.section-slogan {
}

.section-about {
}

.section-about .section-title {
}*/

footer p.logo-desc {
    color: var(--accentColor);
    font-weight: normal;
    font-size: 14px;
    margin-bottom: 0;
}

.footer-logo-block {
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    align-items: center;
}

.footer-logo-block img {
    width: fit-content;
}

.section-write-us {
    background-color: var(--backColor3);
    margin-top: 50px;
    padding: 100px 0;
}

.section-write-us h4 {
    margin-bottom: 30px;
    color: var(--textColorDefault);
    text-align: start;
}

.section-write-us ul {
    margin-left: 100px;
    margin-bottom: 40px;
}

@media (max-width: 769px) {
    .section-write-us ul {
        margin-left: 80px;
    }
}

.section-operators h5 {
    margin-bottom: 20px;
}

.section-operators img {
    width: auto;
    height: 80px;
    object-fit: contain;
    /*border-radius: 10px;*/
    overflow: hidden;
}

@media (max-width: 767px) {
    .section-operators img {
        width: auto;
        height: 36px;
    }
}

.section-request-call form {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    align-items: center;
}

.section-request-call {
    color: white;
}

.section-request-call h5 {
    margin-bottom: 0;
    color: white;
}

.section-operators {
    margin-top: 40px;
}

@media (max-width: 767px) {
    .section-operators {
        margin-top: 0;
    }
}

.tours-single {
    width: 100%;
    position: relative;
    margin-bottom: 40px;
    border-radius: 20px;
    overflow: hidden;
}

.tours-single:hover {
    box-shadow: 0 8px 20px 0 rgba(0, 0, 0, 0.4);
    -webkit-box-shadow: 0 8px 20px 0 rgba(0, 0, 0, 0.4);
    -moz-box-shadow: 0 8px 20px 0 rgba(0, 0, 0, 0.4);
}

.tours-single:before {
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 50%, #000000e0 100%);
    background: -webkit-linear-gradient(
            top,
            rgba(0, 0, 0, 0) 50%,
            #000000e0 100%
    );
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 50%, #000000e0 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#000000', GradientType=0);
    opacity: 0.77;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    pointer-events: none;
    /*border-radius: 13px;*/
}

.tours-single h4 {
    position: absolute;
    bottom: 20px;
    width: 100%;
    text-align: center;
    color: white;
    z-index: 5;
}

@media (max-width: 500px) {
    .tours-single h4 {
        font-size: 24px;
    }
}

@media (max-width: 769px) {
    .section-tours .row:has(.col-6) {
        padding: 0 10px;
    }

    .section-tours .col-6 {
        padding: 0 10px;
    }
}

.tours-single img {
    width: 100%;
    object-fit: cover;
}

header .logo-block p {
    line-height: 1.1;
    color: var(--accentColor);
    font-weight: normal;
    font-size: 20px;
}

img.logo {
    object-fit: contain;
}

.header-area .header-mobile {
    padding: 0 10px;
}

#AsideOffcanvasMenu {
    background-color: white;
}

div.wrapper {
    /*overflow: auto;*/
    overflow-x: hidden;
}

.hero-frame a img {
    height: 60px;
    width: 60px;
}

.hero-instagram-button {
    font-size: 14px;
    color: var(--accentColor);
    display: flex;
    flex-direction: column;
}

a.hero-instagram-button:hover {
    color: white;
}

.hero-frame a.hero-instagram-button img {
    width: 36px;
    height: 36px;
}

.modal {
    z-index: 100;
}

form {
    display: flex;
    flex-direction: column;
}

form h5 {
    margin: 0 0 30px 0;
}

/*.section-contacts .form-block {
  padding: 40px;
  border: 1px solid #e0e0e0;
  background-image: url(./../images/background4.jpg);
  background-size: cover;
  background-position: right;
}*/

@media (max-width: 767px) {
    form h5 {
        margin: 0 0 10px 0;
    }

    .section-contacts .form-block {
        margin-top: 20px;
    }
}

/*Секция Наши преимущества*/
.section-benefit {
    margin-top: 60px;
}

.benefit {
    margin-top: 150px;
    box-shadow: 0px 0px 44px rgba(0, 0, 0, 0);
}

.benefit h3 {
    color: var(--secondaryColor);
    font-size: clamp(1.125rem, 1.0189rem + 0.7547vw, 1.75rem);
}

.wrap_benefit {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 30px;
    justify-items: center;
    margin-top: 30px;
}

@media (max-width: 1550px) {
    .wrap_benefit {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }
}

@media (max-width: 768px) {
    .wrap_benefit {
        display: grid;
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 20px;
    }

    .benefit-item h4 {
        justify-content: center;
    }

    .benefit-item h5 {
        justify-items: center;
    }

    .wrap_img_benefit img {
        max-height: 100px;
    }
}

.benefit-item {
    padding-top: 30px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

@media (max-width: 767px) {
    .benefit-item {
        padding-top: 10px;
        flex-direction: row;
        column-gap: 20px;
        align-items: flex-start;
        text-align: left;
    }
}

.benefit-item h4 {
    font-size: clamp(1rem, 0.9244rem + 0.3361vw, 1.25rem);
    font-weight: 600;
    text-transform: uppercase;
    padding-top: 20px;
    color: var(--secondaryColor);
    margin-bottom: 10px;
}

@media (max-width: 767px) {
    .benefit-item h4 {
        padding-top: 0;
    }
}

.benefit-item h5 {
    font-size: clamp(1rem, 0.9244rem + 0.3361vw, 1.25rem);
}

.wrap_img_benefit {
    width: fit-content;
}

.wrap_img_benefit img {
    object-fit: contain;
    height: 80px;
    width: 80px;
}

@media (max-width: 767px) {
    .wrap_img_benefit img {
        object-fit: contain;
        height: 48px;
        width: 48px;
    }
}

.wrap_img_benefit {
    text-align: center;
}

.text-large {
    font-size: 20px;
    color: var(--textColorBlack);
}

@media (max-width: 767px) {
    .text-large {
        font-size: 16px;
    }
}

h3.title {
    color: var(--secondaryColor);
}

.offcanvas-body .header-phones a {
    display: flex;
    align-items: center;
    column-gap: 10px;
}

.offcanvas-body .header-phones img {
    width: 28px;
    height: 28px;
}

.offcanvas-body .header-phones {
    row-gap: 15px;
}

.dialog-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #00000080;
    z-index: 100;
}

.error-dialog {
    background-color: white;
    padding: 30px;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    width: 320px;
}

.dialog-button {
    border-radius: 0;
    border: 2px solid var(--accentColor);
    padding: 10px 32px 12px 32px;
    text-align: center;
    width: fit-content;
    align-self: flex-end;
    margin-top: 10px;
    background-color: transparent;
    outline: none;
}

.dialog-button:hover {
    background-color: var(--accentColor);
    border: 2px solid var(--accentColor);
    color: white;
}

.dialog-button,
.error-dialog-message {
    font-size: 16px;
}

@media (max-width: 767px) {
    .dialog-button,
    .error-dialog-message {
        font-size: 12px;
    }
}

a.single-icon img {
    margin: 0;
}

.hero-box h1 {
    margin-bottom: 30px;
}

.hero-box ul {
    margin-bottom: 20px;
    font-size: 1.15rem;
}

.back-color-light {
    background-color: #F7F6F3;
}

.color-negative {
    /*color: var(--negativeRedColor);*/
    color: black;
}

/*.section-services p {
    background-color: #FCFBF8;
    border-radius: 20px;
    padding: 20px;
    height: 100%;
    box-shadow: 0 4px 16px #00000005;
    margin-bottom: 0;
    text-align: center;
    vertical-align: middle;
    display: flex;
    align-items: center;
    justify-content: center;
}*/

.hero-tags {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
    padding: 0;
    margin-bottom: 10px;
}

.hero-tags li {
    background-color: #e8eee8;
    border-radius: 30px;
    display: flex;
    align-items: center;
    padding: 4px 16px;
    color: #404840;
    font-size: 1rem;
    margin-bottom: 0;
}

div:has(> .button-hero) {
    position: relative;
}

.button-hero {
    width: 200px;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: white;
    background-color: var(--accentColor);
    border-radius: 50%;
    border: 0;
    outline: 0;
    padding: 20px;
    font-size: 1.15rem;
    position: absolute;
    bottom: 0;
    right: 0;
    /*transform: translateY(50%) translateX(50%);*/
    transform: translateY(0) translateX(50%);
    box-shadow: 0 4px 16px #00000050;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

@media (max-width: 767px) {
    a.button-hero,
    button.button-hero {
        position: static;
        transform: none;
        margin-top: 30px;
        margin-bottom: 30px;
        margin-left: auto;
        margin-right: auto;
        width: 150px;
        height: 150px;
        padding: 10px;
    }
}

.button-hero:hover {
    /*background-color: var(--accentColorLight);*/
    background-color: #4FA030;
    box-shadow: 0 8px 24px #00000050;
    transform: translateY(-4px) translateX(50%) scale(1.03);
    /*transform: scale(1.05);*/
}

.button-hero:active {
    background-color: var(--accentColorDark);
    /*transform: scale(1.05);*/
}

.hero-contacts-phone {
    color: var(--primaryColor);
    font-size: 1.15rem;
}

.hero-contacts-phone:hover {
    color: var(--primaryColor);
}

.hero-contacts-viber {
    color: #7B519C;
    font-size: 1.15rem;
}

.hero-contacts-viber:hover {
    color: #7B519C;
}

.hero-contacts-viber img,
.hero-contacts-phone img {
    width: 30px;
    height: 30px;
    transition: transform 0.2s ease;
}

.hero-contacts-viber:hover img,
.hero-contacts-phone:hover img {
    transform: scale(1.1);
}

.section-services ul {
    padding-left: 0;
}

.section-services ul li {
    font-size: 1rem;
    list-style: none;
    /* background-color: #ffffffff; */
    /* border: 1px solid var(--primaryColor); */
    border-radius: 30px;
    /* padding: 10px 24px 10px 20px; */
    /* box-shadow: 0 4px 16px #00000010; */
    margin-bottom: 15px;
    font-weight: 600;
    display: flex;
    align-items: center;
}

.section-services ul li:before {
    content: url('../images/icons/icon-check.svg');
    width: 24px;
    height: 24px;
    margin-right: 15px;
}

.tree-back {
    background-image: url('../images/tree-back-image.png');
    background-repeat: no-repeat;
    background-position: 80% center;
}

.cover-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
    max-height: 650px;
}

@media (max-width: 1280px) {
    .cover-image {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 20px;
        max-height: 550px;
    }
}

@media (max-width: 767px) {
    .cover-image {
        width: auto;
        height: 100%;
        object-fit: cover;
        border-radius: 20px;
        max-height: 400px;
        margin-bottom: 20px;
        align-self: center;
        aspect-ratio: 3 / 4;
    }
}

footer .logo {
    height: 180px;
}

.header-mobile .logo {
    height: calc(var(--headerHeight) - 10px) !important;
}

.mobile-hero-images {
    display: flex;
    align-items: center;
    column-gap: 15px;
    padding-top: 15px;
}

.mobile-hero-images img {
    width: calc((100% - 3 * 15px) / 2);
    object-fit: contain;
    flex: 1;
}

.mobile-hero-images img.cover {
    border-radius: 30px;
    object-fit: cover;
}

.restrictions h2 {
    color: #606060;
    font-size: 1.5rem;
}

.restrictions p {
    color: var(--inputPlaceholderColor);
}

.certificates {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.certificates img {
    height: 150px;
    width: auto;
    box-shadow: 0 2px 8px #00000020;
}

@media (max-width: 767px) {
    .certificates img {
        height: 100px;
    }
}

.prices-card {
    padding: 30px;
    border: 1px solid var(--primaryColor);
    /*border: 1px solid #e0e0e0;*/
    border-radius: 20px;
    /*box-shadow: 0 4px 16px #00000018;*/
    /*background-color: var(--backColor3);*/
    /*margin-bottom: 40px;*/
    margin-bottom: 20px;
}

.prices-card.online {
    border: 1px solid var(--colorAlternative);
}

.prices-card span {
    width: 100%;
    display: block;
}

.prices-card h3 {
    margin-bottom: 0.75em;
    text-align: center;
}

.prices-card p {
    text-align: center;
    /*color: var(--textLight);*/

}

.prices-card.online h3 {
    color: var(--colorAlternative);
}

.prices-card .price {
    font-family: Montagna, sans-serif;
    font-weight: normal;
    font-size: 1.4rem;
    color: var(--accentColorDarker);
    margin-bottom: 0;
}

.prices-card.online .price {
    color: var(--colorAlternative);
}

.prices-card .bel-price {
    color: var(--inputPlaceholderColor);
}

.prices-card .time {
    margin-bottom: 0;
}

.section-contacts p {
    color: var(--textLight);
}

.section-contacts h4 {
    margin-bottom: 1em;
}

.section-contacts form button {
    margin-top: 0;
}


.webpay-form,
.section-contacts .form-block {
    padding: 30px;
    box-shadow: 0 4px 16px #00000010;
    border-radius: 20px;
    background-color: white;
}

.webpay-form h4 {
    margin-bottom: 1em;
}

.webpay-form input[type="submit"] {
    width: fit-content;
    min-width: 200px;
    margin-bottom: 0;
}

form label {
    margin-bottom: 10px;
}

.section-contacts iframe {
    width: 100%;
    height: 400px;
    margin-top: 30px;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 4px 16px #00000018;
}

@media (max-width: 767px) {
    .section-contacts iframe {
        height: 300px;
    }
}

.section-about-studio .gallery {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px;
    gap: 20px;
}

.section-about-studio .gallery img {
    width: calc((100% - 3 * 20px) / 4);
    height: auto;
    flex: 1;
    object-fit: cover;
    border-radius: 10px;
    aspect-ratio: 1 / 1;
}

@media (max-width: 767px) {
    .section-about-studio .gallery {
        display: flex;
        flex-wrap: wrap;
        margin-top: 20px;
        gap: 10px;
    }

    .section-about-studio .gallery img {
        width: calc((100% - 20px) / 2);
        height: auto;
        flex: 1;
        object-fit: cover;
        border-radius: 10px;
        aspect-ratio: 1 / 1;
    }
}

.section-prices .row {
    /*row-gap: 30px;*/
}

.header-mobile .logo-block {
    flex: 1;
}

.mobile-big-name {
    /*width: 100%;
    padding: 10px 30px;*/
    height: auto;
    object-fit: contain;

    position: absolute;
    padding: 10px;
    /* top: 30vw; */
    right: 0;
    width: 50%;
    top: 0;
    background-color: white;
    border-radius: 20px;
}

.mobile-hero-photo {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 4 / 3;
    border-radius: 20px;
    margin-top: 20px;
}

.section-about-me h4 {
    margin-bottom: 1em;
}

@media (max-width: 767px) {
    .certificates.gallery {
        margin-bottom: 20px;
    }
}

.offcanvas-menu-nav {
    display: flex;
    flex-direction: column;
}

.offcanvas-menu-nav .logo {
    align-self: center;
    width: 60%;
    height: auto;
    object-fit: contain;
    margin-bottom: 20px;
}

.offcanvas-body ul {
    margin-bottom: 0;
    padding-top: 20px;
    padding-bottom: 20px;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
}

li.list-style-none,
.list-style-none li {
    list-style: none;
}

.section-prices .accordion-button {
    font-family: Mulish, sans-serif;
}

ol.offer-uls,
.offer-uls ol {
    list-style: none;
    padding-left: 40px;
    margin-top: 10px;
}

.offer-uls li ol {
    list-style: none;
    padding-left: 50px;
}

.offer-uls li {
    position: relative;
}

.offer-uls li span {
    position: absolute;
    left: -40px;
}

.offer-uls li ol li span {
    left: -50px;
}

.pay-logos {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    column-gap: 30px;
    row-gap: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.pay-logos img {
    height: 30px;
    width: auto;
}

@media (max-width: 767px) {
    .pay-logos {
        justify-content: start;
        column-gap: 20px;
        row-gap: 15px;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .pay-logos img {
        height: 30px;
        width: auto;
    }
}

.a-scroll-overhead.a-scroll-overhead {
    margin-top: -100px;
    padding-top: 100px;
}

form label:has(> input[type="radio"]) {
    display: flex;
    align-items: center;
    font-size: 1.125rem;
    color: black;
    font-weight: normal;
    padding: 8px 0;
}

form input[type="radio"] {
    width: 20px;
    height: 20px;
    margin-right: 15px;
    margin-bottom: 0;
}

form h4 {
    margin-bottom: 20px;
}

form label img {
    height: 24px;
    width: 24px;
    margin-left: 10px;
}

.currency-amount {
    font-size: 0.85rem;
    color: var(--textLight);
    display: none;
    margin-bottom: 15px;
}

.currency-amount.visible {
    display: block;
}