/*Меню раздела*/
.section-menu {
    display: flex;
    align-items: center;
    padding-bottom: 20px;
    margin-bottom: 20px;
    overflow-x: auto;
}

.section-menu::-webkit-scrollbar {
    height: 5px;
}

.section-menu::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

.section-menu::-webkit-scrollbar-thumb {
    background: #adaaaa;
    border-radius: 4px;
}

.section-menu__item {
    margin-right: 40px;
    white-space: nowrap;
}

.section-menu__item:last-child {
    margin-right: 0;
}

.section-menu__item:hover {
    color: var(--orange-color);
}

.section-menu__item--current {
    color: var(--orange-color);
    border-color: var(--orange-color);
}

@media screen and (max-width: 1024px) {
    .section-menu__item {
        margin-right: 20px;
    }
}

@media screen and (max-width: 768px) {
    .section-menu {
        padding-top: 20px;
        padding-bottom: 20px;
    }
}

/*инфо*/
.contacts-notification {
    margin-bottom: 80px !important;
    padding: 32px 0px 32px 40px;
    gap: 10px;
    background: rgba(240, 241, 245, 0.8);
}

.contacts-notification__container {
    width: 57%;
}

.contacts-notification__title {
    margin-bottom: 16px;
    font-weight: 500;
    font-size: 19px;
    line-height: 23px;
}

.contacts-notification__description p {
    margin-bottom: 16px;
    font-weight: 400;
    font-size: 15px;
    line-height: 18px;
}

.contacts-notification__description a {
    color: var(--orange-color);
}

@media screen and (max-width: 1023px) {
    .contacts-notification {
        margin-bottom: 40px !important;
        padding: 32px 32px 16px;
    }

    .contacts-notification__container {
        width: 100%;
    }

    .contacts-notification__description p {
        font-weight: 400;
        font-size: 14px;
        line-height: 140%;
    }
}

.product-tabs__choice {
    display: flex;
    margin-bottom: 16px;
    font-weight: 400;
    font-size: 24px;
    line-height: 114.52%;
    color: #262626;
}

.product-tabs__choice-link {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 400;
    font-size: 24px;
    line-height: 114.52%;
    color: #003a7d;
    cursor: pointer;
    transition: all 0.5s ease;
}

.product-tabs__choice-link:hover {
    color: var(--orange-color);
}

.product-tabs__choice-link path {
    transition: all 0.5s ease;
}

.product-tabs__choice-link:hover path {
    stroke: var(--orange-color);
}

@media screen and (max-width: 576px) {

    .product-tabs__choice,
    .product-tabs__choice-link {
        font-size: 18px;
    }

    .product-tabs__choice-link svg {
        width: 12px;
    }
}


.contacts__delivery-top {
    display: grid;
    grid-template-columns: 100% 0;
    grid-template-rows: 1fr;
    gap: 0 24px;
    grid-template-areas: "contacts__delivery-info contacts__delivery-docs";
    margin-bottom: 24px;
}

.contacts__delivery-top_large {
    grid-template-columns: 65% 32%;
}

.contacts__delivery-info {
    display: flex;
    flex-direction: column;
    padding: 32px 40px 26px;
    background: rgba(240, 241, 245, 0.8);
    ;
}

.contacts__delivery-title {
    margin-bottom: 16px;

    font-weight: 500;
    font-size: 46px;
    line-height: 100%;
    letter-spacing: -0.03em;
}

.contacts__delivery-name {
    margin-bottom: 16px;
    font-weight: 400;
    font-size: 23px;
    line-height: 114.52%;

    color: #041229;
}

.contacts__delivery-mail_description {
    width: fit-content;
    margin-bottom: 16px;

    font-weight: 400;
    font-size: 16px;
    line-height: 145%;

    color: #f27435;
    transition: all 0.5s ease;
}

.contacts__delivery-item_title {
    margin-bottom: 8px;

    font-weight: 700;
    font-size: 16px;
    line-height: 120%;

    color: #041229;
}

.contacts__delivery-item_description {
    font-weight: 400;
    font-size: 16px;
    line-height: 145%;

    color: #041229;
}

.contacts__delivery-phones_description a {
    transition: all .5s ease;
}

.contacts__delivery-phones_description a:hover {
    color: var(--orange-color);
}

.contacts__delivery-item_small {
    font-weight: 400;
    font-size: 12px;
    line-height: 15px;

    color: #041229;
}

.contacts__delivery-mail_description:hover {
    text-decoration: underline;
}

.contacts__delivery-map_info {
    cursor: pointer;
}

.contacts__delivery-map_info .contacts__delivery-item {
    margin-bottom: 16px;
}

.contacts__delivery-map_info .contacts__delivery-item_description {
    margin-bottom: 8px;
}

.contacts__delivery-map_title {
    margin-bottom: 24px;

    font-weight: 400;
    font-size: 24px;
    line-height: 114.52%;

    color: #041229;
}

.contacts__delivery-item {
    /* margin-bottom: 32px; */
}

.contacts__delivery-contacts {
    display: grid;
    grid-template-columns: 45% 53%;
    grid-template-rows: 1fr;
    gap: 16px 24px;
}

.contacts__delivery-phones_note {
    font-weight: 400;
    font-size: 16px;
    line-height: 145%;
    color: #a8a9ad;
}

.contacts__delivery-phones_note span {
    color: #009fc2;
}

.contacts__delivery-docs {
    border: 2px solid rgba(240, 241, 245, 0.8);
    padding: 32px;
    height: auto;
}

.contacts__download {
    display: flex;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 16px;
    border: none;
}

.contacts__delivery-docs .contacts__download {
    border: none;
}

.contacts__download:last-child {
    margin-bottom: 0;
}

.contacts__download:hover .contacts__download-link div {
    color: var(--orange-color);
}

.contacts__download svg {
    transition: all 0.5s ease;
}

.contacts__download path {
    transition: all 0.5s ease;
}

/*.contacts__download path:last-child {*/
/*    stroke: #0412292b;*/
/*}*/

.contacts__download:hover path {
    stroke: var(--orange-color);
    transition: all 0.5s ease;
}

.contacts__download-img {
    margin-right: 16px;
}

.contacts__download-link div {
    display: inline-block;
    margin-bottom: 8px;
    font-weight: 400;
    font-size: 14px;
    line-height: 17px;
    transition: color 0.5s ease;
}

.contacts__download-link p {
    font-weight: 400;
    font-size: 10px;
    line-height: 12px;
    color: #a8a9ad;
}

.contacts__delivery-map_items {
    display: flex;
    height: 100%;
    gap: 24px;
}

.contacts__delivery-map_info {
    display: block;
    height: auto;

    border: 1px solid #a8a9ad47;
    padding: 32px 40px 32px 35px;
}

.contacts__delivery-map_info-active {
    border: 1px solid #009fc2;
}

.contacts__delivery-map_info-address {
    margin-bottom: 8px;

    font-weight: 400;
    font-size: 16px;
    line-height: 145%;

    color: #041229;
}

.contacts__delivery-map_info-schedule {
    margin-bottom: 16px;

    font-weight: 400;
    font-size: 12px;
    line-height: 15px;

    color: #676767;
}

.contacts__delivery-map_info-phones {
    font-weight: 400;
    font-size: 16px;
    line-height: 145%;

    color: #041229;
}

.contacts__delivery-map_info-phones p {
    line-height: 0.6;
}

.js-tab-content-switch-item .customMap {
    display: none;
}

.product-tabs__content__switch-item.active .customMap {
    display: block;
}

.customMap {
    width: 100%;
    margin-bottom: 24px;
    height: 580px;
}

.form_wrapper__contacts {
    width: fit-content;
    max-width: fit-content;
    padding: 80px 60px;
}

.form_wrapper__contacts .form-title {
    margin-bottom: 55px;
    font-weight: 500;
    font-size: 46px;
    line-height: 100%;
}

.form_wrapper__contacts .form-wrapper_links {
    gap: 40px;
    flex-wrap: wrap;
}

.form_wrapper__contacts .js-tab-content-switcher h3 {
    font-weight: 400;
    font-size: 18px;
    line-height: 132%;
    color: #262626;
    margin-bottom: 0;
}

.form-wrapper_links {
    display: flex;
}

.form-wrapper_links a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60px;
}

/*Табы*/
.tab-content {
    position: relative;
}

.tab-list__content__switch-item {
    position: absolute;
    top: 0;
    opacity: 0;
    transition: opacity 0.5s ease;
}

.tab-list__content__switch-item.active {
    position: relative;
    opacity: 1;
}

.product-tabs__content__left {
    display: flex;
    justify-content: flex-start;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding-bottom: 8px;
    margin-bottom: 40px;
    border-bottom: 1px solid #a8a9ad;
    gap: 44px;
}

.product-tabs__content__switcher {
    position: relative;
    cursor: pointer;
    /* margin-right: 44px; */
}

.product-tabs__content__switch-item {
    /* position: absolute;
    top: 0; */
    display: block;
    max-height: 0;
    position: relative;
    z-index: -10;
    opacity: 0;
    visibility: hidden;
    transition: all 0.2s ease;
    overflow: hidden;
}

.product-tabs__content__switch-item.active,
.product-tabs__content__switch-item_active {
    display: inline-block;
    max-height: 10000px;
    width: 100%;
    z-index: 1;
    position: relative;
    opacity: 1;
    visibility: visible;
}

.product-tabs__content__switcher h3 {
    font-weight: 400;
    font-size: 16px;
    line-height: 145%;
    color: #a8a9ad;
    transition: all 0.5s ease;
}

.product-tabs__content__switcher:hover h3 {
    color: var(--orange-color);
}

.product-tabs__content__switcher.active h3 {
    color: var(--orange-color);
}

.product-tabs .catalog {
    margin-bottom: 0;
}

.product-tabs .events {
    margin-bottom: 0;
}

.product-tabs .events-container {
    margin-bottom: 0;
}

.product-tabs .service {
    margin-bottom: 0;
}

.product-tabs .news-block__content {
    margin-bottom: 0;
}

@media screen and (max-width: 1023px) {
    .form_wrapper__contacts {
        width: 90%;
        padding: 50px 30px;
    }

    .form_wrapper__contacts .form-wrapper_links {
        gap: 16px;
    }

    .contacts__delivery-title {
        margin-bottom: 16px;
        font-weight: 500;
        font-size: 32px;
        line-height: 110%;
        letter-spacing: -0.03em;
    }

    .contacts__delivery-mail_description {
        font-weight: 400;
        font-size: 14px;
        line-height: 140%;
    }

    .contacts__delivery-item_title {
        font-size: 14px;
        line-height: 140%;
    }

    .contacts__delivery-item_description {
        font-weight: 400;
        font-size: 14px;
        line-height: 140%;
    }

    .contacts__delivery-phones_note {
        font-weight: 400;
        font-size: 14px;
        line-height: 140%;
    }

    .contacts__delivery-top {
        display: flex;
        flex-direction: column;
    }

    .contacts__delivery-contacts {
        display: flex;
        flex-direction: column;
    }

    .contacts__delivery-map {
        overflow: hidden;
    }

    .contacts__delivery-map_title {
        margin-bottom: 16px;
        font-weight: 400;
        font-size: 20px;
        line-height: 110%;
    }

    .contacts__delivery-info {
        display: flex;
        margin-bottom: 16px;
        padding: 32px 32px;
    }

    .contacts__delivery-map_info {
        padding: 16px 20px 16px 24px;
    }

    .contacts__delivery-map_info-address {
        margin-bottom: 8px;
        font-weight: 400;
        font-size: 14px;
        line-height: 140%;
    }

    .contacts__delivery-map_info-schedule {
        margin-bottom: 16px;
        font-weight: 400;
        font-size: 14px;
        line-height: 130%;
    }

    .contacts__delivery-map_info-phones {
        font-weight: 400;
        font-size: 14px;
        line-height: 140%;
    }

    .contacts__delivery-map_items {
        display: flex;
        flex-direction: column;
        margin-bottom: 40px;
    }

    .customMap {
        width: 100%;
    }

    .contacts__delivery-docs {
        height: fit-content;
    }
}

@media screen and (max-width: 576px) {
    .form_wrapper__contacts .form-title {
        margin-bottom: 30px;
        font-size: 30px;
    }

    .contacts__delivery-title {
        font-size: 25px;
    }

    .contacts__delivery-name {
        font-size: 15px;
    }
}

/*Карта*/
.map-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
}

.map-section__items {
    width: 40%;
    flex: 0 0 40%;
}

.map-item {
    padding: 32px 40px;
    border: 2px solid rgba(240, 241, 245, 0.8);
    cursor: pointer;
    font-size: 16px;
}

.map-item.active {
    border-color: #009fc2;
}

.map-item+.map-item {
    margin-top: 16px;
}

.map-item__group+.map-item__group {
    margin-top: 16px;
}

.map-item__group p:first-child {
    font-weight: bold;
}

.map-item__group p:nth-child(2) {
    margin-top: 8px;
}

.map-item__group ul li:not(:last-child) {
    margin-bottom: 8px !important;
}

.map-item a:hover {
    color: var(--orange-color);
}

.map-section__map {
    width: 100%;
}

.map-point-text {
    z-index: -1;
    margin-top: 0;
    margin-left: 20px;
    color: #041229;
    background: rgba(255, 255, 255, .9);
    ;
    border-radius: 6px;
    width: max-content;
    min-width: 55px;
    height: 44px;
    padding: 0 15px 0 34px;
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-weight: 400;
    font-size: 18px;
}

.map-item h3 {
    font-size: 24px;
    margin-bottom: 24px;
}

.map-item__group small {
    margin-top: 8px;
    font-size: 12px;
    display: block;
}

@media screen and (min-width: 1025px) {
    .contacts__delivery-map .map-section__items {
        width: 100%;
        flex: auto;
    }

    .contacts__delivery-map .map-menu {
        display: flex;
        gap: 16px;
    }

    .contacts__delivery-map .map-item {
        width: 100%;
        flex: 1 0 0%;
    }

    .contacts__delivery-map .map-item+.map-item {
        margin-top: 0;
    }
}


@media screen and (max-width: 1024px) {
    .map-section {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }

    .map-section__items {
        width: 80%;
        flex: auto;
        margin-inline: auto;
    }

    .map-item {
        padding: 16px 20px 16px 24px;
    }

    .contacts__delivery-map {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 768px) {
    .map-section__items {
        width: 100%;
    }

    .map-point-text {
        font-size: 14px;
    }

    .customMap {
        height: 400px;
    }
}

.text-orange {
    color: var(--orange-color);
}


/*Документы*/
.service__notifications {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    margin-bottom: 40px;
    gap: 16px;
}

.service__notifications-item {
    display: flex;
    flex-wrap: wrap;
    width: fit-content;
    padding: 16px 32px;
    border: 1px solid #009fc2;
    border-radius: 12px;
}

.service__notifications-item_info p,
.service__notifications-item_info-description {
    font-weight: 400;
    font-size: 12px;
    line-height: 15px;

    color: #041229;
}

.service__notifications-item_info-description a {
    text-decoration: underline;
    transition: all 0.5s ease;
}

.service__notifications-item_info-description a:hover {
    color: var(--orange-color);
}

/*Компании доставки*/
.delivery-company {
    display: flex;
    gap: 16px;
    align-items: center;
    flex-wrap: wrap;
}

.delivery-company+.delivery-company {
    margin-top: 16px;
}


/*преимущества*/

.company-info__list {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 24px;
}

.company-info__item {
    width: calc(24% - 12px);
    min-width: 200px;
}

.company-info__img {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 156px;
    min-width: 100px;
    height: 156px;
    border-radius: 50%;
    background: #F1FDFF;
    box-shadow: 3px 1px 3px #F2F9FA, 6px 6px 7px #FFFFFF, 9px 8px 7px #F2F9FA, inset -2px -8px 13px #FFFFFF, inset 0px 4px 10px #C9F8FF;
    transition: all linear .15s;
}

.company-info__img:hover {
    background: rgba(244, 119, 53, 0.1);
    box-shadow: 3px 1px 3px #F2F9FA, 6px 6px 7px #FFFFFF, 9px 8px 7px #F2F9FA, inset -2px -8px 13px #FFFFFF, inset 0px 4px 10px rgba(244, 119, 53, 0.1);
    transition: all linear .15s;
}

.company-info__img:hover path {
    stroke: var(--orange-color);
    transition: all linear .15s;
}

.company-info__content {
    margin-top: 40px;
}

.company-info__name {
    margin-bottom: 16px;
}

.company-info__text {
    padding-right: 10px;
}

.company-info__btn {
    margin-top: 40px;
}

@media screen and (max-width: 768px) {
    .company-info__item {
        width: calc(50% - 12px);
        text-align: center;
    }

    .company-info__img {
        height: 120px;
        width: 120px;
        margin-inline: auto;
    }
}

@media screen and (max-width: 500px) {
    .company-info__item {
        width: 100%;
        display: flex;
        text-align: left;
    }

    .company-info__item--align {
        align-items: center;
    }

    .company-info__img {
        height: 100px;
        width: 100px;
        margin: 0;
    }

    .company-info__img svg {
        height: 30px;
    }

    .company-info__content {
        margin-top: 0;
        margin-left: 24px;
    }

    .company-info__name {
        margin-bottom: 8px;
    }

    .company-info__btn {
        margin-top: 20px;
    }
}

@media screen and (min-width: 769px) {
    .company-info__list--middle .company-info__item {
        width: calc(19% - 12px);
    }

    .company-info__list--middle .company-info__img {
        height: 120px;
        width: 120px;
    }

    .company-info__list--middle .company-info__content {
        font-size: 12px;
        margin-top: 24px;
    }
}

/*карточка с информацией*/
.info-card {
    padding: 24px;
    border: 1px solid var(--blue-color);
    border-radius: 8px;
    width: 265px;
    flex: 0 0 auto;
    height: fit-content;
    margin-bottom: 24px;
    background-color: #fff;
}

.info-card__btn {
    margin-top: 32px;
}

.info-card svg path {
    transition: .3s;
}

.info-card a:not(.button) {
    border-color: var(--dark-blue-color);
}

.info-card a:not(.button):hover {
    color: var(--orange-color);
    border-color: var(--orange-color);
}

.info-card a:not(.button):hover svg path {
    fill: var(--orange-color);
}

.info-card__btn-link {
    border: none;
    margin-top: 20px;
    display: flex;
    align-items: center;
    gap: 8px;
}

@media screen and (max-width: 1024px) {
    .info-card {
        width: 100%;
        margin-top: 24px;
    }

    .info-card__title {
        font-size: 19px;
    }

    .info-card__btn {
        margin-top: 15px;
    }
}

.info-btn {
    margin-block: 20px;
}

.info-card--sticky {
    width: 100%;
    position: sticky;
    top: 110px;
    margin-bottom: 0;
}

.info-card__contacts {
    margin-block: 30px;
}

.info-card__descr {
    color: var(--mild-grey-color);
}

.info-card__contact a {
    border: none;
}

.info-card__contact span {
    text-decoration: underline;
}

.info-card__contact svg {
    fill: none;
    stroke: var(--dark-blue-color);
    transition: stroke .3s ease;
    margin-bottom: -4px;
}

.info-card__contact a:hover svg path {
    fill: none !important;
}

.info-card__contact a:hover {
    color: var(--orange-color);
}

.info-card__contact a:hover svg {
    stroke: var(--orange-color);
}

@media screen and (max-width: 1024px) {
    .info-card--sticky {
        margin-top: 0;
    }
}

.underline {
    border-bottom: 1px solid var(--dark-blue-color);
}

/*блок с вопросом*/
.question-section__content {
    text-align: center;
}

.question-section__title {
    margin-bottom: 16px;
}

.question-section__link {
    margin: 40px auto 0 auto;
}

.question-section__text {
    width: 50%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .question-section__text {
        width: 70%;
    }
}

@media screen and (max-width: 425px) {
    .question-section__text {
        width: 100%;
    }
}

.question-section__links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.question-section__links .question-section__link {
    margin: 0;
}

/*Подписка на рассылку*/
.subscribe-section {
    background-color: rgba(240, 241, 245, 0.8);
    position: relative;
}

.subscribe-section__img {
    position: absolute;
    left: 0;
    height: 100%;
    width: 47%;
    object-fit: cover;
}

.subscribe-section__content {
    padding-top: 56px;
    padding-bottom: 56px;
}

.subscribe-section__title,
.subscribe-section__wrap {
    width: 42%;
    margin-left: auto;
}

.subscribe-section__title {
    margin-bottom: 16px;
}

.subscribe-form__input-box--white {
    background: #fff;
    border: 2px solid #fff;
}

.subscribe-section__form {
    margin-top: 25px;
}

.checkbox-confirm-wrapper {
    justify-content: left;
}

@media screen and (max-width: 1120px) {
    .subscribe-section {
        background-size: 40%;
    }

    .subscribe-section__title,
    .subscribe-section__wrap {
        width: 50%;
    }
}

@media screen and (max-width: 991px) {

    .subscribe-section__title {
        width: 100%;
        margin-bottom: 30px;
    }

    .subscribe-section__img {
        height: 56%;
        bottom: 56px;
    }

    .subscribe-section__wrap {
        padding: 30px 0;
    }
}

@media screen and (max-width: 768px) {
    .subscribe-section__img {
        display: none;
    }

    .subscribe-section__title,
    .subscribe-section__wrap {
        width: 100%;
    }

    .subscribe-section__title {
        margin-bottom: 16px;
    }

    .subscribe-section__wrap {
        padding: 0;
    }
}

@media screen and (max-width: 425px) {
    .subscribe-section__form input[type=submit] {
        width: 100%;
    }
}

/*Форма. Основные стили для инпутов*/
.main-form__input {
    background-color: #F6F6F6;
    padding: 15px 24px;
    border-radius: 30px;
    border: none;
    border: 1px solid #F6F6F6;
}

.main-form__input:focus {
    outline: none !important;
    border-color: var(--orange-color);
}

.main-form__input--white {
    background-color: #fff;
    border-color: #fff;
}

.main-form__floating {
    position: relative;
    width: fit-content;
    border-radius: 30px;
    overflow: hidden;
}

.main-form__floating>.main-form__input::placeholder {
    color: transparent;
}

.main-form__floating label {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 15px 24px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    border: 1px solid transparent;
    transform-origin: 0 0;
    transition: opacity .1s ease-in-out, transform .1s ease-in-out;
    color: #A8A9AD;
    line-height: 120%;

}

.main-form__floating>.main-form__input:focus,
.main-form__floating>.main-form__input:not(:placeholder-shown) {
    padding: 20px 24px 10px 24px;
}

.main-form__floating>.main-form__input:focus~label,
.main-form__floating>.main-form__input:not(:placeholder-shown)~label {
    transform: scale(.7) translateY(1px) translateX(0.7rem);
    height: auto;
    padding-top: 10px;
}

.main-form__floating textarea::-webkit-scrollbar {
    width: 5px;
    background-color: transparent;
    height: 80%;
    padding-right: 20px;
}

.main-form__floating textarea::-webkit-scrollbar-thumb {
    background-color: #A8A9AD;
    border-radius: 10px;
    padding-right: 20px;
}

.main-form__floating textarea~label {
    border-radius: 30px;
}

textarea.main-form__input--white~label {
    background-color: #fff;
}

.main-form__floating>textarea:focus~label,
.main-form__floating>textarea:not(:placeholder-shown)~label {
    border-radius: 30px 30px 0 0;
    padding-top: 12px;
    padding-bottom: 2px;
    width: 135%;
    background-color: #F6F6F6;
}

.main-form__box {
    display: flex;
    border: 2px solid #fff;
    border-radius: 30px;
    background-color: #fff;
    margin-bottom: 16px;
}

.main-form__box .main-form__floating,
.main-form__box .main-form__input {
    width: 100%;
}

.main-form__box~.error-message {
    margin-bottom: 16px;
}

.main-form__mark {
    font-style: italic;
    opacity: 0.7;
}

.main-form>*:not(:first-child) {
    margin-top: 8px;
}

.main-form__margin {
    margin-top: 40px !important;
}

@media screen and (max-width: 425px) {
    .main-form__margin {
        margin-top: 25px !important;
    }

    .main-form__box {
        flex-direction: column;
        gap: 16px;
        background-color: transparent;
        border: none;
        margin-bottom: 24px;
    }
}

.error-message {
    color: #EE2E3B;
    font-size: 12px;
    margin-top: 8px;
    display: none
}

.form-error .error-message {
    display: block;
}

.form-error input:not([type=submit]),
.form-error textarea {
    border-color: #EE2E3B !important;
}