@charset "UTF-8";

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block
}

body {
    line-height: 1;
}

ol,
ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: '';
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

* {
    outline: 0
}

* {
    -webkit-transition: .5s;
    transition: .5s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

body {
    width: 100%;
    min-width: 320px;
    background: #f9f9f7
}

h3 {
    font: 18px/20px "Roboto", sans-serif;
    color: #2e2f3a;
    letter-spacing: -0.2px;
    margin: 30px 0 20px;
    font-weight: 450;
}

body:has(.main__breadcrumbs) {
    background: #edd8c7;
}

body {
    background: #edd8c7;
    isolation: isolate;
}

.mobile-agent-cta { display: none; }
.mobile-cremation-cta,
.mobile-urn-cta,
.mobile-movers-cta,
.mobile-funeral-cta { display: none; }
.mobile-family-burial-cta { display: none; }
.mobile-contract-cta { display: none; }
.mobile-consultation-cta { display: none; }
.mobile-skromnye-cta { display: none; }
.mobile-variant2-cta { display: none; }
.mobile-dostoyno-cta { display: none; }
.mobile-osobue-cta { display: none; }
.mobile-vip-cta { display: none; }
.mobile-orthodox-cta { display: none; }
.mobile-avia-cta { display: none; }
.mobile-transport-cta { display: none; }
.mobile-voennye-cta { display: none; }
.mobile-iudeyskie-cta { display: none; }
.mobile-muslim-cta { display: none; }

@media (max-width: 767.98px) {
    .transfer-request__form { row-gap: 14px !important; }
    .transfer-request__form > .form-group { width: 100% !important; margin: 0 !important; }
    .transfer-request__form > .transfer-request__agree { margin: 0 !important; }
}

hr {
    border: none;
    height: 1px;
    background-color: #b1bfcd;
    margin: 10px 0 26px 0;
}

.section__item table { width: 100%; margin: 0 0 20px; border-collapse: collapse; font-family: Arial, sans-serif; font-size: 14px; color: #2e2f3a; }
.section__item table th,
.section__item table td { border-bottom: 1px solid #b1bfcd; padding: 12px 15px; text-align: left; }
.section__item table tbody tr:last-child td { border-bottom: none; }
.section__item table th { background-color: #eeeae7; color: #676976; border-bottom: 1px solid #b4a5aa; font-weight: 600; }
.section__item table tbody tr:hover { background-color: #f0efeb; }
.section__updated { margin-top: 8px; color: #887a8a !important; font: 13px/18px "Roboto", sans-serif !important; }
.section__updated .page-author-link { color: inherit !important; text-decoration-line: underline; text-decoration-color: rgba(136, 122, 138, 0.5); text-decoration-thickness: 1px; text-underline-offset: 2px; }
.page-gallery { position: relative; width: 100%; overflow: hidden; }
.page-gallery__slides { display: grid; width: 100%; }
.page-gallery__item { grid-area: 1 / 1; width: 100%; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 15px !important; overflow: hidden; background: #f9f9f7; opacity: 0; pointer-events: none; visibility: hidden; transition: opacity .35s ease, visibility .35s ease; }
.page-gallery__item.is-active { opacity: 1; pointer-events: auto; visibility: visible; }
.page-gallery__item img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.page-gallery__arrow { position: absolute; top: 50%; z-index: 1; width: 38px; height: 38px; padding: 0; border: 0; border-radius: 50%; background: rgba(237, 216, 199, .9); color: #2e2f3a; font: 30px/30px "Roboto", sans-serif; transform: translateY(-50%); cursor: pointer; }
.page-gallery__arrow:hover { background: #a5e3a2; }
.page-gallery__arrow--prev { left: 12px; padding: 0 0 5px; }
.page-gallery__arrow--next { right: 12px; }

.page-content-background {
    position: fixed;
    inset: 0;
    z-index: -1;
    background: #f9f9f7;
    pointer-events: none;
}

.mob {
    display: none !important
}

.tab {
    display: none !important
}

img {
    display: block
}

.wrong {
    width: 1170px;
    margin: 0 auto;
    padding: 50px 0;
    text-align: center
}

.wrong h1 {
    font: 50px/60px "Roboto", sans-serif;
    color: #000
}

.wrong img {
    margin: 30px auto 0
}

a {
    text-decoration: none
}

button {
    cursor: pointer
}

header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: #edd8c7;
}

.header__body {
    width: 1122px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    padding: 20px 0 16px
}

.header__menu ul {
    display: flex;
    gap: 0 29px;
}

.header__menu li {
    font: 14px/20px "Roboto", sans-serif;
    color: #000000;
}

.header__menu li a {
    color: #000000;
}

.header__menu li a:hover {
    opacity: 0.5
}

.header__info {
    display: flex;
    gap: 0 40px
}

.header__phone a {
    font: 14px/20px "Roboto", sans-serif;
    color: #010101;
}

.header__phone a:hover {
    opacity: 0.5
}

.header__basket {
    background: url(../images/basket.png) no-repeat left top;
    padding: 4px 0 0 30px;
    margin: -4px 0 0
}

.header__basket a {
    font: 14px/20px "Roboto", sans-serif;
    color: #000000;
    width: 38px;
    display: block;
    text-align: right;
    margin-left: -33px;
    height: 25px;
    margin-top: -4px;
    padding-top: 4px;
}

.menu {
    background: #0e0e10;
    border-bottom: 1px solid #333333
}

.menu.other {
    background: #f9f9f7;
    border-bottom: 1px solid #eeeae7
}

.menu__body {
    width: 1122px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    padding: 12px 0 9px
}

.menu__left ul {
    display: flex;
    gap: 0 28px;
}


.menu__left li {
    font: 14px/20px "Roboto", sans-serif;
    color: #eeeae7;
}

.other .menu__left li {
    color: #2e2f3a;
}

.menu__left li a {
    color: #eeeae7;
}

.other .menu__left li a {
    color: #2e2f3a;
}


.menu__left li a:hover {
    opacity: 0.5
}

.menu__right ul {
    display: flex;
    gap: 0 29px;
}


.menu__right li {
    font: 14px/20px "Roboto", sans-serif;
    color: #eeeae7;
}

.other .menu__right li {
    color: #2e2f3a;
}

.menu__right li a {
    color: #eeeae7;
}

.other .menu__right li a {
    color: #2e2f3a;
}

.menu__right li a:hover {
    opacity: 0.5
}

.main {
    background: #0e0e10;
    border-radius: 0 0 20px 20px;
    padding-bottom: 85px;
}

.main.other {
    border-radius: 0;
    padding-bottom: 36px;
}

.main.shop {
    background: #f9f9f7;
    border-radius: 0;
    padding-bottom: 30px;
}

.main__top {
    width: 1122px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    padding: 30px 0 0;
    align-items: end
}

.main__logo a {
    display: flex;
    gap: 0 18px;
    align-items: center
}

.main__logo h2 {
    font: 700 24px/20px "Unbounded", sans-serif;
    color: #ffffff;
    text-transform: uppercase
}

.shop .main__logo h2 {
    color: #212123;
}

.main__phone {
    text-align: right;
}

.main__phone a {
    font: 18px/20px "Unbounded", sans-serif;
    color: #eeeae7;
}

.main__phone a:hover {
    opacity: 0.5
}

.shop .main__phone a {
    color: #0e0e10;
}

.main__phone p {
    font: 14px/20px "Roboto", sans-serif;
    color: #aa928e;
}

.main__title {
    width: 998px;
    margin: 54px auto 0;
}

.main__title p {
    font: 14px/20px "Roboto", sans-serif;
    color: #aa928e;
}

.main__title h1 {
    font: 100px/70px "Futura PT", sans-serif;
    color: #eeeae7;
    margin: 17px 0 0
}

.main__service {
    width: 998px;
    margin: 61px auto 0;
}

.main__search {
    width: 998px;
    margin: 80px auto 0;
}

.main__search-form {
    background: #eeeae7;
    border-radius: 20px 20px 0 0;
    padding: 10px 25px 10px 21px;

}

.main__search-form form {
    display: flex;
}

.main__search-form input {
    width: calc(100% - 123px);
    background: none;
    border: 0;
    font: 24px/20px "Roboto", sans-serif;
    color: #676976;
}

.main__search-form input::placeholder {
    background: url(../images/search-icon.png) no-repeat left 180px center;
}


.main__search-form button {
    width: 123px;
    height: 40px;
    background: #000000;
    border: 0;
    border-radius: 9px;
    font: 700 16px/20px "Roboto", sans-serif;
    color: #ffffff;
}

.main__search-help {
    background: #333333;
    border-radius: 0 0 15px 15px;
    padding: 11px 25px 12px 25px;
}

.main__search-help ul {
    display: flex;
    flex-flow: wrap;
}

.main__search-help li {
    font: 14px/24px "Roboto", sans-serif;
    color: #cccccc;
    position: relative;
}

.main__search-help li a{
    color: #cccccc;
}

.main__search-help li a:hover{
    opacity: 0.5
}

.main__search-help li:after {
    content: "|";
    font: 14px/24px "Roboto", sans-serif;
    color: #646770;
    padding: 0 13px
}

.main__search-help li:last-child:after {
    display: none
}

.main__variants {
    width: 998px;
    margin: 80px auto 0;
    display: flex;
    justify-content: space-between;
    gap: 20px 22px;
    flex-flow: wrap;
}

.main__variants-item {
    width: 488px;
    border-radius: 20px;
    padding: 21px 25px 25px 24px;
}

.main__variants-top {
    display: flex;
    justify-content: space-between;
    height: 54px
}

.main__variants-name h3 {
    font: 24px/26px "Roboto", sans-serif;
    color: #000000;
}

.main__variants-price {
    white-space: nowrap;
}

.main__variants-price p {
    font: 24px/26px "Roboto", sans-serif;
    color: #000000;
}

.main__variants-info {
    display: flex;
    justify-content: space-between;
    align-items: end;
    height: 161px;
}

.main__variants-desc li {
    font: 13px/18px "Roboto", sans-serif;
    color: #000000;
    letter-spacing: 0.25px;
}

.main__variants-btn button {
    width: 123px;
    height: 40px;
    border: 0;
    border-radius: 10px;
    background: #000000;
    font: 700 16px/20px "Roboto", sans-serif;
    color: #ffffff;
}

#firstVar {
    background: #edd8c7 url(../images/var1.png) no-repeat right -56px top -72px;
}

#secondVar {
    background: #b7cbd2 url(../images/var2.png) no-repeat right -58px top -45px;
}

#thirdVar {
    background: #baa09c url(../images/var3.png) no-repeat right -67px top -127px;
}

#fourthVar {
    background: #c7dfc8 url(../images/var4.png) no-repeat right -87px top -123px;
}


.main__breadcrumbs {
    margin: 34px auto 0;
    width: 998px
}

.main__breadcrumbs ul {
    display: flex;
    flex-wrap: wrap
}

.main__breadcrumbs li {
    position: relative;
    font: 12px/20px "Roboto", sans-serif;
    color: #b4c2cf;
    letter-spacing: 0.5px
}

.main__breadcrumbs li a {
    color: #b4c2cf;
}

.main__breadcrumbs li a:hover {
    opacity: 0.5
}

.main__breadcrumbs li:after {
    content: "—";
    font: 12px/12px "Roboto", sans-serif;
    color: #b4c2cf;
    padding: 0 3px;
}

.main__breadcrumbs li:last-child:after {
    display: none
}

.services {
    margin: 81px auto 80px;
    width: 998px
}

.services__item {
    margin-bottom: 84px;
    padding-bottom: 38px;
    border-bottom: 1px solid #b1c0cd
}

.services__item:last-child {
    margin-bottom: 0
}

.services__item-top {
    display: flex;
    justify-content: space-between;
}

.services__item-title h3 {
    font: 48px/26px "Futura PT Book", sans-serif;
    color: #0e0e10;
}

.services__item-title p {
    font: 16px/26px "Roboto", sans-serif;
    color: #2e2f3a;
    letter-spacing: 0.25px;
    margin-top: 20px
}

.services__item-phone {
    text-align: right;
    min-width: 202px
}

.services__item-phone a {
    font: 18px/20px "Unbounded", sans-serif;
    color: #0e0e10;
}

.services__item-phone a:hover {
    opacity: 0.5
}

.services__item-phone p {
    font: 12px/20px "Roboto", sans-serif;
    color: #b4a5aa;
    margin-top: 2px
}

.services__item-info {
    margin: 20px 0 0;
    display: flex;
    gap: 0 94px;
    align-items: end
}

.services__item-list li {
    font: 16px/26px "Roboto", sans-serif;
    color: #0e0e10;
    letter-spacing: 0.25px;
}

.services__item-list li a {
    color: #0e0e10;
    border-bottom: 1px solid #dad6d2;
    padding-bottom: 1px
}

.services__item-list li a:hover {
    border-bottom: 1px solid #f9f9f7
}

.services__item-backet {
    background: url(../images/basket.png) no-repeat left top;
    padding: 4px 0 0 31px;
    margin: 6px 0 0;
    display: inline-block;
    font: 14px/20px "Roboto", sans-serif;
    color: #000000;
}

.services__item-delivery {
    display: flex;
    gap: 0 40px;
    position: relative;
}

.services__item-delivery select {
    width: 153px;
    height: 40px;
    border: 1px solid #aaabb8;
    border-radius: 10px;
    padding: 0 15px;
    font: 14px/20px "Roboto", sans-serif;
    color: #2e2f3a;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: url(../images/select-arr.png) no-repeat right 14px center;
}

.services__item-delivery:after {
    content: "";
    position: absolute;
    top: 13px;
    left: 164px;
    width: 21px;
    height: 15px;
    background: url(../images/select-between.png) no-repeat center;
}

.services__monument {
    margin: 60px 0 0;
    display: flex;
    justify-content: space-between;
}

.services__monument-item {
    width: 488px;
    height: 221px;
    background: #f0efeb url(../images/monument1.png) no-repeat right 35px top 26px;
    border-radius: 20px;
    padding: 23px 0 18px 25px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.services__monument-item:nth-child(2) {
    background: #f0efeb url(../images/monument2.png) no-repeat right 27px top 27px
}

.services__monument-title {
    max-width: 120px
}

.services__monument-heading {
    font: 20px/24px "Roboto", sans-serif;
    color: #000000;
    margin: 0 0 20px;
    font-weight: 300;
}

.services__monument-btn a {
    font: 16px/24px "Roboto", sans-serif;
    color: #000000;
    background: url(../images/arr-more.png) no-repeat right center;
    padding-right: 19px
}

.funeral {
    background: #0e0e10;
    border-radius: 20px 20px 0 0;
    padding: 75px 0 0px;
}

.funeral__type {
    width: 998px;
    margin: 0 auto;
}

.funeral__type-title h2 {
    font: 48px/26px "Futura PT Book", sans-serif;
    color: #f0efeb;
}

.funeral__type-title p {
    font: 14px/20px "Roboto", sans-serif;
    color: #c0b2b9;
    margin-top: 39px
}

.funeral__type-info {
    margin: 33px 0 0;
    display: flex;
    justify-content: space-between
}

.funeral__type-item {
    width: 234px;
    height: 221px;
    position: relative;
    padding: 23px 25px 0
}

.funeral__type-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.funeral__type-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px
}

.funeral__type-name {
    position: relative;
    z-index: 3;
}

.funeral__type-name p {
    font: 20px/24px "Roboto", sans-serif;
    color: #000000;
}

.funeral__hall {
    width: 998px;
    margin: 104px auto 0;
    border-bottom: 1px solid #333333;
    padding-bottom: 60px
}

.funeral__hall-title h2 {
    font: 48px/26px "Futura PT Book", sans-serif;
    color: #f0efeb;
}

.funeral__hall-title p {
    font: 14px/20px "Roboto", sans-serif;
    color: #c0b2b9;
    margin-top: 39px
}

.funeral__hall-info {
    margin: 36px 0 0;
    display: flex;
    justify-content: space-between
}

.funeral__hall-item {
    width: 234px;
    position: relative
}

.funeral__hall-price {
    position: absolute;
    top: 10px;
    right: 10px;
    min-width: 68px;
    background: #aa928e;
    text-align: center;
    border-radius: 5px;
    padding: 8px 0 6px
}

.funeral__hall-price p {
    font: 14px/20px "Roboto", sans-serif;
    color: #f0efeb;
}

.funeral__hall-img img {
    width: 100%;
    height: 221px;
    object-fit: contain;
    background: #f7f5f1;
    border-radius: 20px
}

.funeral__hall-desc {
    margin-top: 16px;
}

.funeral__hall-desc h4 {
    font: 700 16px/20px "Roboto", sans-serif;
    color: #edd8c7;
    margin-bottom: 18px
}

.funeral__hall-desc h4 a{
    color: #edd8c7;
}

.funeral__hall-desc h4 a:hover{
    opacity: 0.5
}

.funeral__hall-desc p {
    font: 12px/20px "Roboto", sans-serif;
    color: #c0b2b9;
}

.funeral__hall-desc p span {
    color: #dabea6;
}

.funeral__hall-all {
    margin: 47px 0 0;
}

.funeral__hall-all a {
    display: table;
    margin: 0 auto;
    background: #000000;
    font: 700 16px/20px "Roboto", sans-serif;
    color: #ffffff;
    border-radius: 10px;
    text-align: center;
    padding: 11px 27px 9px 25px
}

.funeral__hall-all a:hover {
    opacity: 0.5
}

.restaurant {
    background: #0e0e10
}

.restaurant__body {
    width: 998px;
    margin: 0 auto;
}

.restaurant__title h1 {
    font: 48px/26px "Futura PT Book", sans-serif;
    color: #f0efeb;
    margin-bottom: 39px
}

.restaurant__title p {
    font: 14px/20px "Roboto", sans-serif;
    color: #c0b2b9;
}

.restaurant__list {
    margin-top: 36px;
    display: flex;
    gap: 44px 20px;
    flex-flow: wrap
}

.coffin {
    background: #f9f9f7
}

.coffin__body {
    width: 998px;
    margin: 0 auto;
    padding-bottom: 160px
}

.coffin__title h1 {
    font: 500 40px/50px "FuturaPT-Medium", sans-serif;
    color: #333333;
    margin-bottom: 12px;
    letter-spacing: -0.2px
}

.coffin__title p {
    font: 16px/24px "Roboto", sans-serif;
    color: #0f0f11;
    letter-spacing: -0.2px
}

.coffin__catalog {
    margin: 46px 0 0;
    border: 1px solid #ebd6d2;
    border-radius: 20px;
    background: #fff;
}

.coffin__tabs {
    border-bottom: 1px solid #ebd6d2;
}

.coffin__tabs:last-child {
    border-bottom: 0;
}

.coffin__tabs-top {
    padding: 6px 29px 3px 29px;
    background: url(../images/tabs-close.png) no-repeat right 29px center;
    background-color: transparent;
    cursor: pointer;
    transition: background-color 0.2s ease
}

.coffin__tabs-top:hover {
    background-color: #f9f9f7;
}

.coffin__tabs-top.open {
    background: url(../images/tabs-open.png) no-repeat right 29px center
}

.coffin__tabs-top.open:hover {
    background-color: #f9f9f7;
}

.coffin__tabs-top h2 {
    font: 700 16px/70px "Roboto", sans-serif;
    color: #0f0f11;
}

.coffin__tabs_body {
    border-top: 1px solid #ebd6d2;
    display: none
}

.coffin__tabs_body.open {
    display: block
}

.coffin__tabs-catalog {
    display: flex;
    flex-flow: wrap;
}

.coffin__tabs__item {
    width: 25%;
    border-right: 1px solid #ebd6d2;
    border-bottom: 1px solid #ebd6d2;
    padding: 20px 20px 30px 25px
}


.coffin__tabs__item.choose {
    background: #f0f0ec
}

.coffin__tabs__item.choose .coffin__tabs-img img {
    mix-blend-mode: multiply;
}

.coffin__tabs__item:nth-child(4n) {
    border-right: 0
}

.coffin__tabs-product {
    width: calc(100% + 45px);
    margin-left: -25px;
}

.coffin__tabs-img img {
    max-width: 250px;
    width: 100%;
    height: 250px;
    object-fit: contain;
    background: #FFFFFF;
}

.coffin__tabs-img a:hover {
    opacity: 0.5
}

.coffin__tabs__item.choose .coffin__tabs-img a:hover {
    opacity: 1;
}

.coffin__tabs-title {
    margin: 28px 0 0;
    display: flex;
    justify-content: space-between
}

.coffin__tabs-title p {
    font: 16px/20px "Roboto", sans-serif;
    color: #0f0f11;
}

.coffin__tabs-title a {
    font: 16px/20px "Roboto", sans-serif;
    color: #0f0f11;
}

.coffin__tabs-title a:hover {
    opacity: 0.5
}

.coffin__tabs-info {
    margin: 16px 0 0;
}

.coffin__tabs-info li {
    font: 12px/16px "Roboto", sans-serif;
    color: #676976;
}

.coffin__tabs-btn {
    margin: 18px 0 0
}

.coffin__tabs-btn .btn__add {
    width: 123px;
    height: 40px;
    border: 1px solid #676976;
    border-radius: 10px;
    background: #fff;
    font: 15px/20px "Roboto", sans-serif;
    color: #000000;
    cursor: pointer
}

.coffin__tabs-btn .btn__add:hover {
    background: #676976;
    color: #fff;
}

.coffin__tabs-btn .btn__add.invalid-choice,
.shops__category-btn .btn__add.invalid-choice {
    background: #fff !important;
    color: #000000 !important;
}

.coffin__tabs-btn .btn__add.choose {
    display: none
}

.coffin__tabs-btn .btn__remove {
    border: none;
    background: none;
    font: 15px/20px "Roboto", sans-serif;
    color: #676975;
    cursor: pointer;
    text-decoration: underline;
    display: none
}

.coffin__tabs-btn .btn__remove:hover {
    text-decoration: none
}

.coffin__tabs-btn .btn__remove.choose {
    display: table
}

.coffin__tabs_more {
    text-align: center;
    padding: 25px 0 25px;
    border-top: 1px solid #ebd6d2;
    margin: -1px 0 0
}

.coffin__tabs_more a {
    font: 14px/20px "Roboto", sans-serif;
    color: #2e2f3a;
    border-bottom: 1px dashed #a5a5b3
}

.coffin__tabs_more a:hover {
    border-bottom: 1px dashed #fff
}

.coffin__itog {
    margin: 34px 0 0;
    display: flex;
    align-items: center;
    justify-content: space-between
}

.coffin__itog-title p {
    font: 24px/24px "Roboto", sans-serif;
    color: #0f0f11;
    letter-spacing: -0.2px
}

.coffin__itog-body {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0 20px
}

.coffin__itog-break {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0 15px
}

.coffin__itog-break p {
    font: 16px/14px "Roboto", sans-serif;
    color: #333333;
}

.toggle-switch {
    position: relative;
    display: inline-block;
    width: 43px;
    height: 24px;
}

.toggle-switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: .4s;
    border-radius: 34px;
}

.slider:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: .4s;
    border-radius: 50%;
}

input:checked + .slider {
    background-color: #a5e3a2;
}

input:checked + .slider:before {
    transform: translateX(18px);
}

.coffin__itog-price p {
    font: 16px/30px "Roboto", sans-serif;
    color: #0f0f11;
}

.coffin__itog-btn a {
    padding: 12px 25px 10px;
    text-align: center;
    border-radius: 10px;
    background: #a5e3a2;
    font: 15px/20px "Roboto", sans-serif;
    color: #000000;
}

.coffin__itog-btn a:hover {
    background: #000;
    color: #fff
}

.product {
    width: 998px;
    margin: 0 auto;
}

.product__title h1 {
    font: 500 40px/50px "FuturaPT-Medium", sans-serif;
    color: #333333;
    letter-spacing: -0.2px
}

.product__content {
    margin: 28px 0 0;
    border: 1px solid #eccfcd;
    border-radius: 20px;
    display: flex;
}

.product_media {
    width: 74%;
    border-right: 1px solid #eccfcd;
    background: #fff;
    padding: 15px 38px 35px 30px;
    border-radius: 20px 0 0 20px;
}

.product_media.usluga {
    padding: 15px 38px 35px 30px;
}

.product__img {
    margin: 0px 0 0px;
}
.product__img img {
    width: 418px;
    margin: 0 auto;
}

.product__desc {

}

.usluga .product__desc {
    margin: 0
}

.product__desc h3 {
    font: 700 14px/30px "Roboto", sans-serif;
    color: #0f0f11;
    padding: 15px 0 5px
}

.product__desc p {
    font: 14px/20px "Roboto", sans-serif;
    color: #0f0f11;
}

.product__desc-body {
    font: 14px/20px "Roboto", sans-serif;
    color: #0f0f11;
}

.usluga .product__desc p {
    margin-bottom: 20px
}

.product__desc  li{
    font: 14px/20px "Roboto", sans-serif;
    color: #0f0f11;
}

.product_info {
    width: 26%;
    background: #f5f2f1;
    padding: 27px 29px 0 30px;
    border-radius: 0 20px 20px 0
}

.product__price {
    padding: 0 0 15px;
    border-bottom: 1px solid #f2e7e6
}

.product__price p {
    font: 12px/18px "Roboto", sans-serif;
    color: #887a8a;
}

.product__price p#articule {
    font: 14px/18px "Roboto", sans-serif;
    color: #887a8a;
}

.product__price p#price {
    font: 500 24px/24px "Roboto", sans-serif;
    color: #0f0f11;
    margin-top: 14px;
}

.product__list {
    margin: 14px 0 0;
    border-bottom: 1px solid #f2e7e6;
    padding-bottom: 15px
}

.product__list li {
    font: 12px/18px "Roboto", sans-serif;
    color: #676976;
}

.product__note {
    margin-bottom: 12px;
    font: 12px/18px "Roboto", sans-serif;
    color: #676976;
}

.product-price-options {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.product-price-options label {
    display: flex;
    align-items: center;
    gap: 8px;
    font: 12px/18px "Roboto", sans-serif;
    color: #676976;
    cursor: pointer;
}

.product-price-options input {
    width: 15px;
    height: 15px;
    margin: 0;
    accent-color: #676976;
}

.product__btn {
    margin: 20px 0 0
}

.product__btn button {
    width: 100%;
    height: 40px;
    border: 0;
    border-radius: 10px;
    font: 500 15px/20px "Roboto", sans-serif;
    color: #000000;
    background: #bff1bd;
    cursor: pointer
}

.product__btn button:hover {
    background: #000;
    color: #fff
}

.another {
    width: 998px;
    margin: 23px auto 0;
}

.another.razdel {
    width: 100%;
    margin: 0 auto 0;
}

.tofooter {
    padding-bottom: 80px;
    margin-top: 31px;
}

.another__title h2 {
    font: 500 24px/50px "FuturaPT-Medium", sans-serif;
    color: #000000;
    letter-spacing: -0.2px
}

.another__body {
    margin: 13px 0 0;
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
}

.another__item {
    width: 233px;
    border: 1px solid #f2e7e6;
    border-radius: 20px;
    background: #fff;
    padding: 35px 29px 24px 29px;
    position: relative;
}

.section__item .section__menu .another__item {
    border-radius: 15px;
}

.razdel .another__item {
    width: 232px;
}

.another__item.service {
    padding: 27px 29px 24px 29px;
}

.another__item.service.last .shops__category-note__window{
    left: -2000%;
}

.another__item.service.last .shops__category-note__desc:before {
    left: 93%;
}


.another__img img {
    width: 100%;
    height: 200px;
    margin-top: 10px;
    border-radius: 20px;
    object-fit: contain;
    background: #FFFFFF;
}

.another__img {
    width: calc(100% + 58px);
    margin: -35px -29px 0;
}

.another__info {
    height: auto;
    min-height: 120px;
}

.another__note {
    margin-top: 10px;
    font: 12px/16px "Roboto", sans-serif;
    color: #676976;
}

.another__price-options {
    margin: 10px 0 15px 0;
}

.product-price-select {
    max-width: 100%;
    padding: 5px 8px;
    border: 1px solid #d8d8d2;
    border-radius: 6px;
    background: #fff;
    font: 12px/16px "Roboto", sans-serif;
    color: #0f0f11;
}

.coffin__tabs-note {
    margin-top: 10px;
    font: 12px/16px "Roboto", sans-serif;
    color: #676976;
}

.coffin__tabs-price-options {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 12px;
}

.coffin__tabs-price-options label {
    display: flex;
    align-items: center;
    gap: 8px;
    font: 12px/16px "Roboto", sans-serif;
    color: #676976;
    cursor: pointer;
}

.coffin__tabs-price-options input {
    width: 15px;
    height: 15px;
    margin: 0;
    accent-color: #676976;
}

.another__info {
    margin: 23px 0 0;
    height: auto;
    min-height: 120px
}

.another__info p {
    font: 16px/20px "Roboto", sans-serif;
    color: #2e2f3a;
}

.another__info p a{
    color: #2e2f3a;
    font: 16px/16px "Roboto", sans-serif;
}

.another__info p a:hover{
    opacity: 0.5
}

.another__info ul {
    margin: 16px 0 0
}

.another__info ul li {
    font: 12px/16px "Roboto", sans-serif;
    color: #676976;
    padding-left: 0px;
    margin: 0 ;
}

.another__order {
    display: flex;
    justify-content: space-between;
    margin-top: 4px;
    align-items: center
}

.another__order p {
    font: 16px/20px "Roboto", sans-serif;
    color: #0f0f11;
}

.another__order button {
    width: 82px;
    height: 30px;
    border: 0;
    border-radius: 15px;
    background: #a5e3a2;
    font: 12px/20px "Roboto", sans-serif;
    color: #000000;
    letter-spacing: -0.1px;
    cursor: pointer;
}

.another__order button:hover {
    background: #000;
    color: #fff
}

.another__more {
    text-align: center;
    margin: 34px 0 0
}

.another__more a {
    font: 14px/20px "Roboto", sans-serif;
    color: #2e2f3a;
    border-bottom: 1px dashed #a5a5b3
}

.another__more a:hover {
    border-bottom: 1px dashed #f9f9f7
}

.another__question {
    position: absolute;
    top: 25px;
    right: 30px;
    border: 1px solid #c0b2b9;
    border-radius: 3px;
    padding: 0 6px;
    cursor: pointer
}

.faq__question {
    font: 16px/20px "Roboto", sans-serif;
    margin-top: 20px;
    padding: 0 20px 30px 0;
}

.faq__question p {
    margin-top: 20px;

}

h4 {
    font-weight: bold;
}

.faq__question h4 {
    font-weight: 300;
}

.another__question p {
    font: 14px/20px "Roboto", sans-serif;
    color: #aa928e;
}

.another__service {
    height: 148px
}

.another__service h3 {
    font: 18px/20px "Roboto", sans-serif;
    color: #2e2f3a;
    letter-spacing: -0.2px;
    margin: 0 0 20px;
    font-weight: 450;
    padding: 0 20px 0 0;
    max-width: none;
}

.another__service h3 a{
    color: #0f0f11;
}

.another__service h3 a:hover{
    opacity: 0.5
}

.another__service p {
    font: 14px/16px "Roboto", sans-serif;
    color: #887a8a;
    padding: 0 0 15px;
}

/* --- Базовые стили списков --- */
.section__item ul,
.section__item ol,
.product_media ul,
.product_media ol {
    margin: 0 0 24px;
    padding: 0;
}

/* Вложенные списки */
.section__item ul ul,
.section__item ol ol,
.section__item ul ol,
.section__item ol ul,
.product_media ul ul,
.product_media ol ol,
.product_media ul ol,
.product_media ol ul {
    margin-bottom: 0;
    margin-top: 8px;
}

/* Элементы списков */
.section__item ul li,
.section__item ol li,
.product_media ol li {
    font: 16px/24px "Roboto", sans-serif;
    color: #2e2f3a;
    letter-spacing: -0.2px;
}

.product_media ul li{
    font: 14px/20px "Roboto", sans-serif;
    color: #0f0f11;
}

/* --- Ненумерованный список --- */
.section__item ul,
.product_media ul {
    list-style: none;
    padding-left: 0;
}

.section__item ul li,
.product_media ul li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 12px;
    margin-left: 15px;
}

.section__item ul li:last-child,
.product_media ul li:last-child {
    margin-bottom: 0;
}

.section__item ul li::before,
.product_media ul li::before {
    content: "—";
    position: absolute;
    left: 0;
    top: 0;
    font: 16px/24px "Roboto", sans-serif;
}

/* Вложенные ul — сдвиг */
.section__item ul ul,
.product_media ul ul {
    margin-left: 20px;
}

.section__item ul ul li::before,
.product_media ul ul li::before {
    background: #d4dce5;
    width: 5px;
    height: 5px;
    top: 11px;
}

/* --- Нумерованный список --- */
.section__item ol,
.product_media ol {
    list-style: none;
    counter-reset: item-counter;
    padding-left: 0;
}

.section__item ol li,
.product_media ol li {
    counter-increment: item-counter;
    position: relative;
    padding-left: 28px;
    margin-bottom: 12px;
}

.section__item ol li:last-child,
.product_media ol li:last-child {
    margin-bottom: 0;
}

.section__item ol li::before,
.product_media ol li::before {
    content: counter(item-counter);
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 20px;
    background: #f0efeb;
    border-radius: 50%;
    font: 12px/20px "Roboto", sans-serif;
    color: #b4c2cf;
    text-align: center;
}

.section__item ol li::before {
    left: -6px;
    top: 2px;
    background: none;
    border-radius: 0;
}

/* Вложенные ol — сброс счётчика */
.section__item ol ol,
.product_media ol ol {
    counter-reset: sub-counter;
    margin-left: 20px;
}

.section__item ol ol li,
.product_media ol ol li {
    counter-increment: sub-counter;
}

.section__item ol ol li::before,
.product_media ol ol li::before {
    content: counter(sub-counter, lower-alpha);
    background: none;
    font: 13px/20px "Roboto", sans-serif;
    color: #b4c2cf;
    width: auto;
    height: auto;
    border-radius: 0;
}

/* --- Жирный текст (b, strong) --- */
.section__item b,
.section__item strong,
.product_media b,
.product_media strong {
    font-weight: 700;
    color: #0f0f11;
}

/* --- Курсив (i, em) --- */
.section__item i,
.section__item em,
.product_media i,
.product_media em {
    font-style: italic;
    color: inherit;
}

/* --- Перечёркнутый текст (s, del) --- */
.section__item s,
.section__item del,
.product_media s,
.product_media del {
    text-decoration: line-through;
    color: #887a8a;
    opacity: 0.7;
}

/* --- Подчёркнутый текст (u, ins) --- */
.section__item u,
.section__item ins,
.product_media u,
.product_media ins {
    text-decoration: underline;
    text-decoration-color: #b4c2cf;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
    color: inherit;
}

/* --- Комбинации --- */
.section__item b i,
.section__item strong em,
.section__item i b,
.section__item em strong,
.product_media b i,
.product_media strong em,
.product_media i b,
.product_media em strong {
    font-weight: 700;
    font-style: italic;
}

.section {
    width: 998px;
    margin: 0 auto 60px;
}

.section__title h1 {
    font: 500 40px/50px "FuturaPT-Medium", sans-serif;
    color: #333333;
    letter-spacing: -0.2px;
    margin: -10px 100px 10px 0;
}

.section__title p {
    font: 16px/24px "Roboto", sans-serif;
    color: #0f0f11;
    letter-spacing: -0.2px;
    margin-top: 20px
}

.section__body {
    margin: 33px 0 0;
    display: flex;
    gap: 0 20px;
    align-items: flex-start
}

.section__left {
    width: 245px;
}

.section__menu {
    background: #fff;
    border-radius: 20px;
    padding: 28px 20px 40px 20px;
}

.section__menu ol {
    list-style-type: decimal;
    margin-left: 22px
}

.section__menu ol li::marker {
    color: #b4c2cf
}


.section__menu li {
    font: 16px/20px "Roboto", sans-serif;
    color: #0f0f11;
    letter-spacing: -0.2px;
    padding-left: 14px;
    margin-bottom: 22px
}

.section__menu li:last-child {
    margin: 0
}

.section__menu li a {
    color: #0f0f11;
    border-bottom: 1px solid #c4b7be
}

.section__menu li a:hover {
    border-bottom: 1px solid #fff
}

.section__about {
    background: #fff;
    border-radius: 20px;
    padding: 0 0 20px;
    margin: 30px 0 0
}

.section__about img {
    width: 100%;
    height: 249px;
    object-fit: contain;
    background: #f9f9f7;
    border-radius: 20px 20px 0 0;
}

.section__about p {
    padding: 21px 30px 0;
    font: 14px/18px "Roboto", sans-serif;
    color: #0f0f11;
    letter-spacing: -0.2px
}

.section__content {
    width: 733px;
}

.section__item {
    padding: 30px;
    margin-bottom: 30px;
    margin-top: 30px;
    background: #fff;
    border-radius: 15px
}

.section__item.map {
    padding: 0;
}

.section__item iframe {
    width: 100%;
    height: 356px;
    border-radius: 20px
}

.section__item:first-child {
    margin-top: 0
}

.section__item:last-child {
    margin-bottom: 0
}

.section__item h2 {
    font: 22px/24px "Roboto", sans-serif;
    color: #2e2f3a;
    letter-spacing: -0.2px;
    margin-bottom: 25px
}

.section__item p {
    font: 16px/24px "Roboto", sans-serif;
    color: #2e2f3a;
    letter-spacing: -0.2px;
    margin-bottom: 24px
}

.section__item p:last-child {
    margin-bottom: 0
}

.section__item ul {
    margin-bottom: 24px;
}

.section__item ul:last-child {
    margin-bottom: 0px;
}

.section__item li {
    font: 16px/24px "Roboto", sans-serif;
    color: #2e2f3a;
}

.section__item ol {
    margin-bottom: 24px;
}

.section__item ol:last-child {
    margin-bottom: 0px;
    list-style-type: decimal;
    margin-left: 18px
}

.section__item ol li::marker {
    color: #b4c2cf
}

.section__item ol li {
    margin-bottom: 22px;
    padding-left: 15px
}

.section__item ol li span {
    font-weight: 700
}

.section__item ol li:last-child {
    margin-bottom: 0
}

.section__item a {
    padding: 10px 22px 8px;
    border: 1px solid #676976;
    border-radius: 10px;
    font: 15px/20px "Roboto", sans-serif;
    color: #000000;
    margin: 17px 0 0;
    display: table;
}

.section__item a:hover {
    background: #676976;
    color: #fff;
}

.section__item p:has(> a + a) {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.section__item p:has(> a + a) a {
    display: inline-block;
    margin: 0;
}

.cart {
    width: 998px;
    margin: 0 auto 120px;
}

.cart__title h1 {
    font: 500 40px/50px "FuturaPT-Medium", sans-serif;
    color: #333333;
    letter-spacing: -0.2px
}

.cart__body {
    margin: 28px 0 0;
    border: 1px solid #ebd5d1;
    border-radius: 20px;
    padding: 0px 30px 30px 30px
}

.cart__item {
    border-bottom: 1px solid #ebd5d1;
    padding: 10px 0 8px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0 1%
}

.cart__item:last-child {
    border-bottom: 0;
}

.cart__item.title {
    border-bottom: 0;
    padding: 23px 0 2px;
}

.cart__item h3 {
    font: 14px/25px "Roboto", sans-serif;
    color: #887a8a;
}

.cart__item-name {
    width: 28.5%;
    margin: 7px 0px 10px 0px;
}

.cart__item-name p {
    font: 16px/20px "Roboto", sans-serif;
    color: #0f0f11;
}

.cart__item-name a{
    color: #0f0f11;
}

.cart__item-name a:hover{
    opacity: 0.5
}


.cart__item-desc {
    width: 59.5%;
    margin: 6px 0px 0px 0px;
}

.cart__item-desc p {
    font: 14px/25px "Roboto", sans-serif;
    color: #887a8a;
}

.cart__item-price {
    min-width: 64px;
    margin: 1px 0px 0px 0px;
}

.cart__item-price p {
    font: 16px/34px "Roboto", sans-serif;
    color: #0f0f11;
}

.cart__item-delete img {
    cursor: pointer
}

.cart__item-delete {
    margin: 12px 0px 0px 10px;
}


.cart__item-delete img:hover {
    opacity: 0.5
}

.cart__itog {
    margin: 36px 34px 0;
    display: flex;
    justify-content: space-between
}


.search {
    width: 998px;
    margin: 40px auto 100px;
}

.search__title h1 {
    font: 50px/70px "Futura PT", sans-serif;
    color: #333333;
    letter-spacing: -0.2px
}

.search__form {
    margin: 15px 0 0;
    background: #eeeae7;
    border-radius: 20px;
    padding: 11px 25px 10px 21px;

}

.search__form form {
    display: flex;
}

.search__form input {
    width: calc(100% - 123px);
    background: none;
    border: 0;
    font: 24px/20px "Roboto", sans-serif;
    color: #676976;
}

.search__form input::placeholder {
    background: url(../images/search-icon.png) no-repeat left 180px center;
}


.search__form button {
    width: 123px;
    height: 40px;
    background: #000000;
    border: 0;
    border-radius: 9px;
    font: 700 16px/20px "Roboto", sans-serif;
    color: #ffffff;
}

.search__no-results {
    margin: 30px 0 0;
    color: #2e2f3a;
    font: 15px/26px "Roboto", sans-serif;
}

.search__no-results p {
    margin: 0;
}

.search__rezult {
    margin: 31px 0 0
}

.search__rezult li {
    background: #fff;
    border-radius: 20px;
    margin-bottom: 10px;
    padding: 34px 25px 33px 23px;
    display: flex;
    gap: 0 21px;
}

.search__rezult li:last-child {
    margin-bottom: 0
}

.search__rezult-num p {
    font: 16px/24px "Roboto", sans-serif;
    color: #b4c2cf;
    letter-spacing: -0.2px;
}

.search__rezult-desc h3 {
    font: 24px/24px "Roboto", sans-serif;
    color: #0f0f11;
    letter-spacing: -0.2px;
    margin-top: 0;
}

.search__rezult-desc p {
    font: 16px/20px "Roboto", sans-serif;
    color: #2e2f3a;
    margin: 20px 0 0
}

.order {
    max-width: 998px;
    margin: 0 auto 140px;
}

.order__title h1 {
    font: 500 40px/50px "FuturaPT-Medium", sans-serif;
    color: #333333;
    letter-spacing: -0.2px
}

.order__body {
    margin: 28px 0 0;
    background: #fff;
    border-radius: 20px;
    padding: 60px 215px 90px;
    text-align: center
}

.order__body img {
    margin: 0 auto 36px;
}


.order__body p {
    font: 16px/20px "Roboto", sans-serif;
    color: #0f0f11;
    margin-bottom: 10px;
}

.order__body p:last-child {
    margin-bottom: 0
}

.order__body hr {
    width: 84px;
    height: 1px;
    background: #bff1bd;
    border: 0;
    margin: 28px auto 27px
}

.order__body p span {
    font-weight: 700
}

.order__body .phone {
    margin: 19px 0 0
}

.order__body .phone span {
    display: block;
    font: 700 24px/30px "Roboto", sans-serif;
}

.order__body .phone font {
    font: 14px/20px "Roboto", sans-serif;
    color: #676976
}


.shops {
    width: 998px;
    margin: 0 auto 150px;
}

.shops__title h1 {
    font: 500 40px/50px "FuturaPT-Medium", sans-serif;
    color: #333333;
    letter-spacing: -0.2px
}

.shops__title p {
    font: 16px/24px "Roboto", sans-serif;
    color: #0f0f11;
    letter-spacing: -0.2px;
    margin: 12px 0 0
}

.shops__body {
    margin: 43px 0 0
}

.shops__category a {
    color: #0f0f11;
}
.shops__category {
    margin-bottom: 36px;
}

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

.shops__category-title h2 {
    font: 24px/24px "Roboto", sans-serif;
    color: #0f0f11;
}

.shops__category-tabs {
    margin: 17px 0 0;
    border: 1px solid #ebd6d2;
    border-radius: 20px;
    background: #fff;
}

.shops__category-item {
    border-bottom: 1px solid #ebd6d2;
    display: flex;
    justify-content: space-between;
    padding: 20px 27px 19px 30px;
    align-items: center
}

.shops__category-item.choose {
    background: #f0f0ec
}

.cart__item-name small {
    display: block;
    font: 14px/30px "Roboto", sans-serif;
    color: #887a8a;
}

.shops__category-item:hover {
    background: #f9f9f7;
}

.shops__category-item.choose:first-child{
    border-radius: 15px 15px 0 0
}

.shops__category-item.choose:last-child{
    border-radius: 0 0 15px 15px
}

.shops__category-item:last-child {
    border-bottom: 0
}

.shops__category-left {
    display: flex;
    gap: 0 20px;
    align-items: flex-start
}


.shops__category-name p {
    font: 16px/20px "Roboto", sans-serif;
    color: #0f0f11;
}

.shops__category-note {
    position: relative
}

.shops__category-note > p {
    font: 14px/19px "Roboto", sans-serif;
    color: #aa928e;
    border: 1px solid #c0b2b9;
    padding: 0 6px;
    border-radius: 3px;
    cursor: pointer
}

.shops__category-note > p:hover {
    border: 1px solid #f0efeb;
    background: #f0efeb
}

.shops__category-note__window {
    position: absolute;
    top: 100%;
    left: -8px;
    z-index: 2;
    padding: 11px 0 0;
    display: none
}

.shops__category-note__window.hover {
    display: block
}

.shops__category-note:hover .shops__category-note__window,
.another__question:hover .shops__category-note__window{
    display: block
}

/* Тултип перевешен влево */
.shops__category-note__window.tooltip-left {
    left: auto;
    right: 0;
}

.shops__category-note__desc {
    background: #f0efeb;
    border-radius: 10px;
    display: flex;
    width: 404px;
    align-items: center;
    position: relative;
    min-height: 50px;
}

.shops__category-note__desc:before {
    content: "";
    position: absolute;
    top: -9px; /* Поднимаем треугольник над блоком */
    left: 10px;
    width: 0;
    height: 0;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    border-bottom: 9px solid #f0efeb; /* Цвет как у блока */
}

.shops__category-note__desc p {
    font: 13px/18px "Roboto", sans-serif;
    color: #2e2f3a;
    padding: 0 27px 0 29px
}

.shops__category-note__desc img {
    width: 200px;
    height: 171px;
    object-fit: contain;
    background: #fff;
    border-radius: 0 10px 10px 0
}

.shops__category-right {
    display: flex;
    gap: 0 20px;
    align-items: center;
}

.shops__category-desc {
    text-align: right;
}

.shops__category-desc p {
    font: 14px/20px "Roboto", sans-serif;
    color: #887a8a;
}

.shops__category-desc .price {
    font: 16px/20px "Roboto", sans-serif;
    color: #0f0f11;
}

.shops__category-btn .btn__add {
    width: 123px;
    height: 40px;
    border: 1px solid #676976;
    border-radius: 10px;
    background: #fff;
    font: 15px/20px "Roboto", sans-serif;
    color: #000000;
    cursor: pointer
}

.shops__category-btn .btn__add:hover {
    background: #676976;
    color: #fff;
}

.shops__category-btn .btn__add.choose {
    display: none
}

.shops__category-btn .btn__remove {
    border: none;
    background: none;
    font: 15px/20px "Roboto", sans-serif;
    color: #676975;
    cursor: pointer;
    text-decoration: underline;
    display: none
}

.shops__category-btn .btn__remove:hover {
    text-decoration: none
}

.shops__category-btn .btn__remove.choose {
    display: table
}

.shops__category-count {
    display: flex;
    align-items: center;
    border: 1px solid #c0b2b9;
    border-radius: 3px
}

.quantity-btn {
    width: 21px;
    height: 19px;
    cursor: pointer;
    font-size: 18px;
    background: none;
    border: 0;
    font: 24px/17px "Roboto", sans-serif;
    color: #aa928e;
}

.quantity-btn#plus {
    font: 17px/18px "Roboto", sans-serif;
    color: #676976;
}

.quantity-input {
    width: 21px;
    height: 19px;
    text-align: center;
    background: none;
    border: 0;
    border-left: 1px solid #c0b2b9;
    border-right: 1px solid #c0b2b9;
    font: 12px/18px "Roboto", sans-serif;
    color: #0f0f11;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance: textfield;
    appearance: textfield;
}

.shops__itog {
    margin: 34px 0 0;
    display: flex;
    align-items: center;
    justify-content: space-between
}

.shops__itog-title p {
    font: 24px/24px "Roboto", sans-serif;
    color: #0f0f11;
    letter-spacing: -0.2px
}

.shops__itog-body {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0 20px
}

.shops__itog-break {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0 15px
}

.shops__itog-break p {
    font: 16px/14px "Roboto", sans-serif;
    color: #333333;
}

.shops__itog-price p {
    font: 16px/30px "Roboto", sans-serif;
    color: #0f0f11;
}

.shops__itog-btn a {
    padding: 12px 25px 10px;
    text-align: center;
    border-radius: 10px;
    background: #a5e3a2;
    font: 15px/20px "Roboto", sans-serif;
    color: #000000;
}

.shops__itog-btn a:hover {
    background: #000;
    color: #fff
}

.placing {
    width: 998px;
    margin: 0 auto 80px;
}

.placing__title h1 {
    font: 500 40px/50px "FuturaPT-Medium", sans-serif;
    color: #333333;
    letter-spacing: -0.2px
}

.placing__body {
    margin: 28px 0 0;
    background: #fff;
    border-radius: 20px;
    display: flex;
}

.placing__left {
    width: 732px;
    border-right: 1px solid #eccfcd;
    padding: 24px 30px 51px 29px
}

.placing__name-title label {
    font: 14px/25px "Roboto", sans-serif;
    color: #887a8a;
}

.placing__name-pole {
    display: flex;
    flex-flow: wrap;
    gap: 20px 3%;
    margin-top: 12px
}

.form-group {
    width: 36%;
}

.form-group:nth-child(2n) {
    width: 61%
}

.form-group input {
    width: 100%;
    height: 50px;
    border: 1px solid #eccfcd;
    border-radius: 10px;
    padding: 0 15px;
    font: 16px/20px "Roboto", sans-serif;
    color: #0f0f11;
    background: #f9f9f7
}

.form-group.error input{
    border-color: red
}

.form-group.error textarea {
    border-color: red;
}

.form-group .help-block {
    display: none;
}

.form-control.field-valid {
    border-color: #bff1bd !important;
}

.form-group.error div{
    font: 12px/20px "Roboto", sans-serif;
    color: #0f0f11;
    color: red
}

.form-group input.error {
    border: 1px solid #ff8989;
}

.form-group input.succes {
    border: 1px solid #bff1bd;
}

.form-group input:focus {
    border: 1px solid #b7cbd2;
}

/* Современный стандарт */
.form-group input::placeholder {
    font: 12px/20px "Roboto", sans-serif;
    color: #a5a5b3;
}

/* Для WebKit (Chrome, Safari, Edge) */
.form-group input::-webkit-input-placeholder {
    font: 12px/20px "Roboto", sans-serif;
    color: #a5a5b3;
}

/* Для Firefox 19+ */
.form-group input::-moz-placeholder {
    font: 12px/20px "Roboto", sans-serif;
    color: #a5a5b3;
    opacity: 1; /* Firefox по умолчанию делает прозрачным */
}

/* Для Internet Explorer 10-11 */
.form-group input:-ms-input-placeholder {
    font: 12px/20px "Roboto", sans-serif;
    color: #a5a5b3;
}

/* Для Edge (старые версии) */
.form-group input::-ms-input-placeholder {
    font: 12px/20px "Roboto", sans-serif;
    color: #a5a5b3;
}

.placing__adress {
    margin: 33px 0 0
}

.placing__adress label {
    font: 14px/25px "Roboto", sans-serif;
    color: #887a8a;
    margin-bottom: 12px;
    display: block
}

.placing__adress .form-group {
    width: 100%
}

.placing__data {
    margin: 23px 0 0
}

.placing__data-title label {
    font: 14px/25px "Roboto", sans-serif;
    color: #887a8a;
    margin-bottom: 12px;
    display: block
}

.placing__data-body {
    display: flex;
    gap: 0 10px;
}

.placing__data-item {
    flex: 1;
    min-width: 0;
    border: 1px solid #eccfcd;
    border-radius: 10px;
    text-align: center;
    padding: 6px 0 5px;
    position: relative;
    background: #f9f9f7;
    cursor: pointer;
}

.placing__data-item:hover {
    border: 1px solid #bff1bd;
}

.placing__data-item.choose {
    border: 1px solid #bff1bd;
}

.placing__data-item input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    border: 1px solid #c1b3ba;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    cursor: pointer;
    margin-bottom: 9px
}

.placing__data-item input[type="radio"]:checked {
    background-color: #bff1bd;
    box-shadow: inset 0 0 0 3px white;
}

.placing__data-item p {
    font: 12px/18px "Roboto", sans-serif;
    color: #867888;
}

.placing__data-item p.data {
    font: 16px/18px "Roboto", sans-serif;
    color: #0f0f11;
}

.placing__data.error div{
    font: 12px/20px "Roboto", sans-serif;
    color: red;
}

.placing__data.error .placing__data-item{
    border-color: red;
}

.placing__time.error div{
    font: 12px/20px "Roboto", sans-serif;
    color: red;
}

.placing__time.error .placing__time-item{
    border-color: red;
}

.placing__time {
    margin: 23px 0 0
}

.placing__time-title label {
    font: 14px/25px "Roboto", sans-serif;
    color: #887a8a;
    margin-bottom: 12px;
    display: block
}

.placing__time-body {
    display: flex;
    gap: 0 10px;
}

.placing__time-item {
    flex: 1;
    min-width: 0;
    border: 1px solid #eccfcd;
    border-radius: 10px;
    text-align: center;
    padding: 6px 0 6px;
    position: relative;
    background: #f9f9f7;
    cursor: pointer;
    opacity: 1;
    transition: opacity 0.3s;
}

.placing__time-item:hover {
    border: 1px solid #bff1bd;
}

.placing__time-item.choose {
    border: 1px solid #bff1bd;
}

.placing__time-item:has(input[type="radio"]:disabled) {
    opacity: 0.4;
    cursor: default;
}

.placing__time-item p {
    font: 16px/18px "Roboto", sans-serif;
    color: #0f0f11;
}

.placing__time-item input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    border: 1px solid #c1b3ba;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    cursor: pointer;
    margin-bottom: 7px
}

.placing__time-item input[type="radio"]:checked {
    background-color: #bff1bd;
    box-shadow: inset 0 0 0 3px white;
}

.placing__comment {
    margin: 33px 0 0
}

.placing__comment label {
    font: 14px/25px "Roboto", sans-serif;
    color: #887a8a;
    margin-bottom: 12px;
    display: block
}

.placing__comment .form-group {
    width: 100%
}

.placing__comment textarea {
    width: 100%;
    min-height: 90px;
    padding: 12px 15px;
    border: 1px solid #eccfcd;
    border-radius: 10px;
    resize: vertical;
    font: 16px/20px "Roboto", sans-serif;
    color: #0f0f11;
    background: #f9f9f7;
}

.placing__pay {
    margin: 33px 0 0
}

.placing__pay-title label {
    font: 14px/25px "Roboto", sans-serif;
    color: #887a8a;
    margin-bottom: 12px;
    display: block
}

.placing__pay-body {
    display: flex;
    gap: 0 10px;
}

.placing__pay-item {
    flex: 1;
    min-width: 0;
    border: 1px solid #eccfcd;
    border-radius: 10px;
    padding: 16px 14px 15px;
    position: relative;
    background: #f9f9f7
}

.placing__pay-item.choose {
    border: 1px solid #bff1bd;
}

.placing__pay-item p {
    font: 14px/18px "Roboto", sans-serif;
    color: #887a8a;
    margin-bottom: 11px
}

.placing__pay-item p:last-child {
    margin-bottom: 0
}

.placing__pay-item p span {
    font: 16px/18px "Roboto", sans-serif;
    color: #0f0f11;
}

.placing__pay-item input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    border: 1px solid #c1b3ba;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    cursor: pointer;
    margin-bottom: 5px;
    position: absolute;
    top: 12px;
    right: 12px
}

.placing__pay-item input[type="radio"]:checked {
    background-color: #bff1bd;
    box-shadow: inset 0 0 0 3px white;
}

.placing__agree {
    margin: 30px 0 0
}

.placing__agree label {
    font: 12px/28px "Roboto", sans-serif;
    color: #887a8a;
    display: flex;
    align-items: center
}

.placing__agree label:last-child {
    margin-bottom: 0
}

.placing__agree input {
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    border: 1px solid #c1b3ba;
    border-radius: 3px;
    background: #f9f9f7;
    margin-right: 9px;
    padding: 0
}


.placing__agree input[type="checkbox"]:checked {
    background-color: #bff1bd;
    box-shadow: inset 0 0 0 3px white;
}

.placing__agree .form-group{
    width: 100%
}

.placing__btn {
    border-top: 1px solid #c1b3ba;
    margin: 25px 0 0;
    padding: 20px 0 0;
    text-align: right
}

.placing__btn button,
.placing__btn-submit {
    width: 280px;
    height: 40px;
    border: 0;
    border-radius: 10px;
    background: #d2f1d0;
    font: 15px/20px "Roboto", sans-serif;
    color: #000000;
    cursor: pointer;
    margin: 0 0 30px 0;
}

.placing__btn button:hover,
.placing__btn-submit:hover {
    background: #000;
    color: #fff;
}

.placing__right {
    width: 266px;
    padding: 24px 0 0;
    background: #f5f2f1;
    border-radius: 0 20px 20px 0
}

.placing__basket {
    display: flex;
    justify-content: space-between;
    padding: 0 33px 0 30px;
    align-items: center
}

.placing__basket p {
    font: 14px/25px "Roboto", sans-serif;
    color: #887a8a;
}

.placing__desc {
    margin: 15px 0 0;
    padding: 0 33px 27px 30px
}

.placing__item {
    margin-bottom: 20px;
}

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

.placing__item-name {
    border-bottom: 1px solid #f2e7e6;
    padding-bottom: 13px
}

.placing__item-name p {
    font: 12px/25px "Roboto", sans-serif;
    color: #887a8a;
}

.placing__item-list {
    margin: 18px 0 0
}

.placing__item-list li {
    display: flex;
    justify-content: space-between;
    font: 12px/14px "Roboto", sans-serif;
    color: #0f0f11;
    margin-bottom: 13px
}

.placing__item-list li p:last-child {
    width: 55px;
    text-align: right
}

.placing__item-list li:last-child {
    margin-bottom: 0
}

.placing__count {
    border-top: 1px solid #eccfcd;
    padding: 26px 33px 0 30px
}

.placing__count-nds {
    display: flex;
    justify-content: space-between;
}

.placing__count-nds p {
    font: 12px/18px "Roboto", sans-serif;
    color: #887a8a;
}

.placing__count-itogo {
    display: flex;
    justify-content: space-between;
    margin-top: 9px
}

.placing__count-itogo p {
    font: 12px/18px "Roboto", sans-serif;
    color: #887a8a;
}

.placing__count-itogo p.count {
    font: 14px/18px "Roboto", sans-serif;
    color: #0f0f11;
}


footer {
    background: #0e0e10;
    padding-bottom: 44px
}

footer.other {
    border-radius: 20px 20px 0 0
}

footer.razdel {
    border-radius: 20px 20px 0 0
}

.footer__body {
    width: 998px;
    margin: 0 auto;
    padding: 66px 0 0
}

.other .footer__body {
    padding: 0px 0 0
}

.footer__about {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 0 50px;
    border-bottom: 1px solid #333333;
    padding: 0 0 76px
}

.footer__about-title a {
    display: flex;
    gap: 0 14px;
    align-items: center;
    margin-bottom: 35px
}

.footer__about-title h2 {
    font: 46px/26px "Futura PT Book", sans-serif;
    color: #f0efeb;
}

.footer__about-title p {
    font: 14px/20px "Roboto", sans-serif;
    color: #c0b2b9;
    margin-bottom: 20px
}

.footer__about-title p:last-child {
    margin-bottom: 0
}

.footer__about-years {
    margin-top: 83px
}

.footer__about-years p {
    font: 14px/20px "Roboto", sans-serif;
    color: #ffffff;
}

.footer__about-years p span {
    display: block;
    font: 48px/26px "Roboto", sans-serif;
    color: #f0efeb;
    padding-bottom: 15px
}

.footer__about-graph {
    text-align: right
}

.footer__about-graph p {
    font: 14px/20px "Roboto", sans-serif;
    color: #ffffff;
    margin-top: -54px
}

.footer__about-graph p span {
    display: block;
    font: 48px/26px "Roboto", sans-serif;
    color: #f0efeb;
    letter-spacing: -1.6px;
    padding-bottom: 15px
}

.footer__menu {
    padding: 39px 0 48px;
    border-bottom: 1px solid #333333;
    display: flex;
}

.footer__menu-item {
    width: 260px
}

.footer__menu-item li {
    font: 14px/20px "Roboto", sans-serif;
    color: #c0b2b9;
}

.footer__menu-item li a {
    color: #c0b2b9;
}

.footer__menu-item li a:hover {
    opacity: 0.5
}

.footer__menu-item:last-child a {
    font: 700 18px/20px "Roboto", sans-serif;
    color: #f0efeb;
}

.footer__menu-item:last-child p {
    font: 12px/20px "Roboto", sans-serif;
    color: #5e616d;
    padding-top: 2px
}

.footer__bottom {
    padding: 25px 0 0
}

.footer__bottom-desc {
    display: flex;
    justify-content: space-between
}

.footer__bottom-desc p {
    font: 12px/20px "Roboto", sans-serif;
    color: #676976;
}

.footer__bottom-desc a {
    color: #676976;
}

.footer__bottom-desc a:hover {
    text-decoration: underline
}

.footer__bottom-menu {
    margin: 10px 0 0;
}

.footer__bottom-menu ul {
    display: flex;
    justify-content: space-between
}

.footer__bottom-menu li {
    font: 12px/20px "Roboto", sans-serif;
    color: #676976;
}

.footer__bottom-menu li a {
    color: #676976;
}

.footer__bottom-menu li a:hover {
    opacity: 0.5
}


/*слайдер*/

.swiper {
    width: 100%;
    position: relative;
}

.swiper-slide {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 287px !important;
}

.swiper-slide--wide {
    width: 377px !important;
}

.swiper-slide::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: transparent;
    z-index: 1;
}

.slide-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../images/service3.png) no-repeat right -18px top -14px
}

.slide-content {
    position: relative;
    z-index: 2;
    width: 287px;
    background: #333333;
    border-radius: 20px
}

.slide-img {
    height: 230px;
}

.slide-img img {
    border-radius: 20px 20px 0 0;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.slide-img img[src$="/ritual_shop.png"],
.slide-img img[src$="/proizvodstvo.png"] {
    object-fit: fill;
}

.slide-content--wide {
    width: 377px;
}

.slide-content--wide .slide-img {
    height: 231px;
}

.slide-content--cremation {
    width: 287px;
    height: 287px;
    overflow: hidden;
    background: #333333;
    border-radius: 20px;
}

.slide-content--cremation::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: url(/media/banner/cremation.png) center / cover no-repeat;
    border-radius: 20px;
}

.slide-content--cremation .slide-bg,
.slide-content--cremation .slide-img {
    display: none;
}

.slide-content--cremation .slide-desc {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
}

@media (max-width: 767px) {
    .swiper-slide,
    .swiper-slide--wide {
        width: 100% !important;
    }
}

.slide-desc {
    padding: 18px 0 19px 24px
}

.slide-desc h3 {
    font: 600 18px/20px "Roboto", sans-serif;
    color: #ffffff;
}

/* ============================================
   Cart notifications
   ============================================ */
.cart-notification {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 9999;
    padding: 14px 24px;
    border-radius: 10px;
    font: 14px/20px "Roboto", sans-serif;
    color: #fff;
    opacity: 0;
    transform: translateX(100%);
    transition: all 0.3s ease;
    max-width: 320px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15);
}

.cart-notification--show {
    opacity: 1;
    transform: translateX(0);
}

.cart-notification--success {
    background: #a5e3a2;
    color: #0f0f11;
}

.cart-notification--error {
    background: #ff8989;
    color: #0f0f11;
}

.cart-notification__link {
    color: inherit;
    text-decoration: none;
}

.cart-notification__link:hover {
    text-decoration: underline;
}

/* Кнопка удаления скрыта по умолчанию */
.btn-delete {
    display: none;
}

.btn-delete.choose,
.btn-delete[style*="display: block"],
.btn-delete[style*="display:block"] {
    display: inline-block !important;
}

.review-form__body { width: 100%; }
.review-form__body .form-group { width: 100%; margin-bottom: 15px; }
.review-form__body .form-control { width: 100%; box-sizing: border-box; border: 1px solid #eccfcd; border-radius: 10px; padding: 12px 15px; font: 16px/20px "Roboto", sans-serif; color: #0f0f11; background: #f9f9f7; }
.review-form__body textarea.form-control { min-height: 130px; resize: vertical; }
.review-form__body .form-control::placeholder { font: 14px/18px "Roboto", sans-serif; color: #887a8a; }
.review-form__rating { display: flex; align-items: center; justify-content: space-between; margin-bottom: 15px; font: 16px/20px "Roboto", sans-serif; }
.review-form__stars { display: flex; flex-direction: row-reverse; gap: 3px; }
.review-form__stars input { position: absolute; opacity: 0; }
.review-form__stars label { color: #d8d0cd; font-size: 28px; line-height: 28px; cursor: pointer; }
.review-form__stars label:hover,
.review-form__stars label:hover ~ label,
.review-form__stars input:checked ~ label { color: #d49b45; }
.review-form__captcha { display: flex; gap: 10px; align-items: center; }
.review-form__captcha .form-control { width: auto; flex: 1 1 auto; }
.review-form__captcha img { height: 42px; width: auto; border-radius: 8px; }
.review-form__submit { padding: 12px 20px 10px; border: 0; border-radius: 15px; background: #a5e3a2; font: 15px/18px "Roboto", sans-serif; cursor: pointer; }
.review-form__success { color: #39834a; }
.review-form__error { color: #b53d3d; }
.review-form__body .review-field-invalid { border-color: #ff8989 !important; }
.review-form__body .review-field-valid { border-color: #bff1bd !important; }

.section__item table th,.section__item table td{font-size:14px!important;line-height:17px!important}

html{scroll-padding-top:60px}.section__item[id]{scroll-margin-top:60px}@media(max-width:767.98px){html{scroll-padding-top:45px}.section__item[id]{scroll-margin-top:45px}}

/* Homepage-only layout adjustments */
.main__variants-heading{margin:0}
.main__service .slide-img{height:207px}
.main__service .slide-content--wide .slide-img{height:207px}
.main__service .slide-desc{padding:0 0 10px 30px}
.services__item-heading{margin:0 0 20px}
