 @import url('https://fonts.googleapis.com/css2?family=Oranienbaum&display=swap');

/*@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap');*/

@font-face {
    font-family: 'Gagalin';
    src: url("/styles/gagalin.otf") format("opentype");
}

* {
    margin: 0;
    padding: 0;
    font-family: 'Oranienbaum', sans-serif;
    /*font-family: "Cormorant Garamond", serif;*/
}

a {
    color: inherit;
}

body {
    font-size: 15px;
    background-color: #E2E2E2;
}

div.page {
    position: relative;
    max-width: 1000px;
    min-height: 100vh;
    margin: 0 auto;
    background-image: url("/media/background_image.jpg");
    background-size: 100% auto;
    display: flex;
    flex-direction: column;
}

header {
    display: block;
    position: absolute;
    z-index: 2;
    top: 1.2em;
    left: 3%;
    width: 96.5%;
}

div.logo {
    position: absolute;
    width: 6.2em;
    height: 6.2em;
    background-image: url("/media/logo.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    top: -0.4em;
    left: -2em;
}

div.menu-wrapper {
    border-radius: 2.55em;
    background-image: url("/media/background_darck.jpg");
    background-size: 27em auto;
    padding: 0.25em;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
    max-width: 965px;
    margin: 0 auto;
    position: relative;
}

div.menu-body {
    border-radius: 2.3em;
    height: 4.5em;
    box-sizing: border-box;
    border: 2px dashed rgba(255, 255, 255, 0.5);
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

div.menu-body a {

}

div.menu {
    padding-left: 4em;
}

div.menu > a {
    font-family: 'Gagalin', serif;
    color: #ffffff;
    text-decoration: none;
    cursor: pointer;
    letter-spacing: 1px;
    margin-left: 0.7em;
    font-size: 0.92em;
    opacity: 0.8;
    transition: opacity 0.25s;
}
div.menu > a:hover {
    opacity: 1;
}

div.actions {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding-right: 1.1em;
}

a.basket-button {
    display: block;
    text-decoration: none;
    width: 2.2em;
    line-height: 1em;
    padding-bottom: 1em;
    text-align: center;
    background: url(/media/cart-icon.svg) no-repeat center;
    background-size: contain;
    padding-left: 0.3em;
    padding-top: 0.7em;
    font-size: 0.8em;
    margin-right: 1em;
    margin-left: auto;
}

.actions > div.social:last-child {
    margin-right: auto;
}

div.phone-button {
    width: 2.2em;
    height: 2.2em;
    background-color: #E96F71;
    border-radius: 1.1em;
    position: relative;
}

a.phone-button-icon {
    display: block;
    position: absolute;
    width: 1.4em;
    height: 1.4em;
    right: 0.4em;
    top: 0.4em;
    background-image: url("/media/ic_phone.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
#phones {
    position: absolute;
    top: 0;
    right: 0;
    width: 15em;
    background-color: #E96F71;
    border-radius: 1.1em;
    padding: 1em;
    display: none;
    z-index: 2;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
    text-align: center;
}
#phones > a{
    display: block;
    text-align: center;
    font-family: 'Gagalin', serif;
    color: #FFFFFF;
    text-decoration: none;
    letter-spacing: 0.02em;
    /* padding: 1em; */
}
div.lang {
    display: flex;
    flex-direction: column;
    padding-right: 0.8em;
}
div.lang > a {
    font-size: 0.92em;
}

div.social > a {
    display: block;
    width: 1.1em;
    height: 1.1em;
    background-size: contain;
    background-position: left;
    background-repeat: no-repeat;
}

a.instagram-icon {
    background-image: url("/media/instagram_icon.svg");
    padding-left: 2.2em;
}

a.facebook-icon {
    background-image: url("/media/facebook_icon.svg");
    padding-left: 0.7em;
}

div.slider {
    padding: 2em;
}

div.big-board {
    padding-bottom: 56%;
    background-image: url("/media/annushka.jpg");
    background-size: cover;
    background-position: center;
    border-radius: 0 0 2.5em 2.5em;
    box-shadow: -0.2em 0.2em 0.2em rgba(0, 0, 0, 0.25);
    position: relative;
}

div.main-info {
    position: absolute;
    overflow: hidden;
    top: 6em;
    left: 4em;
    width: 35em;
}

div.company-name, div.slogans > p {
    font-family: 'Gagalin', serif;
    font-size: 2em;
    color: #442C19;
}

div.slogans > p, div.big-board-text > p {
    display: none;
}

div.slogans > p:first-of-type, div.big-board-text > p:first-of-type {
    display: block;
}

div.big-board-text-wrapper {
    position: absolute;
    top: 10em;
    left: 4em;
    width: 32em;
    overflow: hidden;
}

div.big-board-text {
    text-align: justify;
    margin-top: 5em;
}

div.big-board-points {
    position: absolute;
    left: 4em;
    bottom: 9em;
    width: 32em;
    display: flex;
    justify-content: center;
}

div.big-board-points > div {
    width: 0.5em;
    height: 0.5em;
    border-radius: 0.3em;
    margin: 0 0.5em;
    transition: background-color 0.25s;
}

.point-selected {box-shadow: 0 0 0.3em rgba(117, 63, 0, 1); background-color: rgba(117, 63, 0, 0.5);}
.point-non-selected {box-shadow: 0 0 0.3em rgba(117, 63, 0, 0.75); background-color: transparent;}

div.write-button, div.write-button-footer {
    background: #E84F58;
    box-shadow: -4px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 2.3em;
    padding: 0.25em;
}

div.write-button {
    position: absolute;
    bottom: 4em;
    left: 4em;
}

div.write-button-footer {
    margin: 0 auto;
    width: fit-content;
}

div.write-button > button, div.write-button-footer > button, p.write-button > button {
    display: block;
    background-color: transparent;
    border: 1px dashed rgba(0, 0, 0, 0.5);
    font-family: 'Gagalin', serif;
    color: #ffffff;
    line-height: 1.5em;
    padding: 0.5em 3em 0.35em 3em;
    border-radius: 2.3em;
    letter-spacing: 0.1em;
}

.founders-story {
    position: relative;
    padding: 1em 1.4em;
    margin: 1em auto;   
    text-align: center;
    width: 80%;
}
.founders-story:before,
.founders-story:after {
    position: absolute;
    color: rgb(117, 63, 0);
    font-size: 4em;
    font-family: Times, sans-serif;   
    line-height: 4em;   
}
.founders-story:before {
    content: '“';
    left: -0.5em;
    top: -1.25em;
}
.founders-story:after {
    content: '”';
    right: -0.5em;
    bottom: -1.25em;
}
.founders-story p {
    padding: 0.5em 0;
    text-align: justify;
    line-height: 1.25em;
    text-indent: 1em;
    font-size: 1.25em;
}
.founders-story cite {
    color: rgb(117, 63, 0);
    font-size: 1.1em;
    padding-top: 0.3em;
    display: block;
    text-align: right;
}

div.galery {
    width: 80%;
    margin: 1.5em auto;
}

div.galery-line {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

div.galery-item {
    width: 33%;
    position: relative;
    padding: 0.5em;
    box-sizing: border-box;
}

div.galery-item > img {
    width: 100%;
}

div.galery > p {
    text-align: center;
}

a.more-link {
    font-family: 'Gagalin', serif;
    color: #017484;
    text-decoration: none;
    letter-spacing: 0.05em;
}

div.services {
    width: 80%;
    margin: 4em auto 0 auto;
    padding: 3em;
    box-sizing: border-box;
    background-image: url("/media/fon_circles.jpg");
    background-size: cover;
    background-position: center;
    border-radius: 2.5em;
    box-shadow: 0px 4px 4px 2px rgba(0, 0, 0, 0.25);
    display: flex;
    justify-content: space-between;
}

div.service-items, div.services-image {
    width: calc(50% - 1.5em);
}

div.services-image {
    background-image: url("/media/yourk_on_sofa.jpg");
    border-radius: 1.5em;
    background-size: cover;
    background-position: center;
}

div.service-item {
    text-align: center;
    background: #FCF3DD;
    border-radius: 1.5em;
    font-family: 'Gagalin', serif;
    padding: 0.75em 1em;
    margin-top: 1em;
}

div.service-item:first-of-type {
    margin-top: 0;
}

div.services-link {
    text-align: center;
    padding: 1em;
}

div.stickers {
    margin: 3em auto 0 auto;
    width: 80%;
}

div.stickers-line {
    display: flex;
    justify-content: space-between;
    padding-bottom: 2em;
}

div.sticker-item {
    width: calc(50% - 0.75em);
    padding-bottom: 35%;
    position: relative;
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 2.5em;
    box-shadow: -4px 4px 4px rgba(0, 0, 0, 0.25);
}

div.sticker-item > div {
    position: absolute;
    top: 1.5em;
    left: 1.5em;
    width: calc(100% - 3em);
    height: calc(100% - 4em);
    overflow: hidden;
    border-radius: 2em;
}

div.text-sticker {
    border-radius: 0 !important;
}

div.sticker-item > a {
    display: block;
    position: absolute;
    width: 100%;
    padding: 1em 0;
    left: 0;
    bottom: 0;
    text-align: center;
}

div.sticker-tape::before, div.about-sticker::before, div.mk-sticker::before {
    content: "";
    display: block;
    position: absolute;
    width: 5.1em;
    height: 1.7em;
    background-color: rgba(255, 218, 21, 0.5);
    top: 0;
    left: -2em;
    transform: rotate(-45deg);
}

div.sticker-tape::after, div.about-sticker::after, div.mk-sticker::after {
    content: "";
    display: block;
    position: absolute;
    width: 5.1em;
    height: 1.7em;
    background-color: rgba(255, 218, 21, 0.5);
    top: 0;
    right: -1.5em;
    transform: rotate(45deg);
}

div.image-sticker > img {
    width: 100%;
}

div.franch-sticker {
    background-image: url("/media/frahch.png");
    background-size: cover;
    background-position: center;
}

p.question {
    color: #005662;
    padding: 1em 0;
    font-size: 0.9em;
}

p.answer {
    padding-bottom: 1em;
    font-size: 0.9em;
}

div.write-online-footer {
    margin-top: 3em;
    margin-bottom: 2em;
    padding-top: 17em;
    background-image: url("/media/anzhela.png");
    background-position: center -9em;
    background-size: 17em auto;
    background-repeat: no-repeat;
}

div.contacs {
    width: 80%;
    margin: 2em auto;
}

div.contacts-line {
    display: flex;
    justify-content: space-between;
    padding-top: 4em;
}

div.contacts-line > div {
    width: calc(50% - 0.75em);
}

div.contacts-line map {
    height: 20em;
    display: block;
    margin-top: 1em;
    box-shadow: -4px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 2.5em;
    opacity: 0.9;
}

div.contacts-line h2 {
    text-align: center;
    font-family: 'Gagalin', serif;
    font-size: 0.8em;
    padding-bottom: 1.5em;
}

div.contacts-line p {
    text-align: center;
    font-size: 0.8em;
    padding-top: 0.5em;
}

footer {
    margin-top: auto;
    background-image: url("/media/background_darck.jpg");
    background-size: 27em auto;
    padding-top: 0.4em;
}

div.footer-line {
    border-top: 1px dashed #FCF3DD;
}

div.footer-line > div {
    width: 80%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

footer img {
    height: 12em;
}

div.footer-contacts {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

footer p {
    color: #ffffff;
    padding: 0.5em 0;
}


div.menu-mobile {
    display: none;
    width: 2.2em;
    height: 1.8em;
    padding-left: 0.75em;
    flex-direction: column;
    justify-content: space-around;
}

p.menu-mobile-line {
    display: block;
    height: 0.45em;
    background-color: #ffffff;
    border-radius: 0.3em;
}

div.mobile-delimeter, div.krasunchik, div.mobile-menu {display: none;}


/* service styles */
div.service-page, div.page-price, div.qa {
    padding-top: 8.5em;
}

div.service-item-a {
    background: rgba(255, 255, 255, 0.8);
    border-radius: 1.2em;
    width: 80%;
    padding: 0.3em;
    margin: 2em auto;
}

div.service-item-a > div {
    border: 2px dashed rgba(138, 100, 69, 0.5);
    border-radius: 1em;
    padding: 0.5em;
    display: flex;
}

div.service-image {
    padding: 0.25em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

div.service-image > img {max-width: 15em; max-height: 15em;}

div.service-info {
    position: relative;
    padding-bottom: 2em;
}

div.service-info > h2 {
    padding-bottom: 1em;
    font-family: 'Gagalin', serif;
    letter-spacing: 1px;
    color: #442C19;
}

div.service-info > label {
    display: block;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    color: #005662;
}

/* price */
div.page-price h1 {text-align: center; padding-bottom: 1em;}
h2.dop-head {text-align: center; padding: 1em 0;}
div.page-price p {padding: 0 1em 1em 1em; font-size: 1.2em; display: block; width: 80%; margin: 0 auto; text-align: justify;}
div.price-body, div.price-dop {width: 80%; margin: 0 auto; padding: 1em; background-color: rgba(255, 255, 255, 0.8); box-shadow: -4px 4px 4px rgba(0, 0, 0, 0.25); border-radius: 0.75em; box-sizing: border-box;}
table.price {width: 100%; margin: 0 auto; border-collapse: collapse;}
table.price td, table.price th {font-size: 1.2em; border: 1px #442C19 solid; text-align: center; padding: 0.25em;}
table.price td:first-of-type {text-align: left;}
div.price-dop {width: fit-content !important; margin-bottom: 2em;}
div.price-dop > table {width: auto !important;}

/* about */
div.about-sticker-wrapper, div.page-contacs {
    width: 80%;
    margin: 0 auto;
    padding-top: 8.5em;
}

div.about-sticker {
    position: relative;
    padding: 2em;
    border-radius: 1em;
    background-color: rgba(255, 255, 255, 0.8);
    box-shadow: -4px 4px 4px rgba(0, 0, 0, 0.25);
    display: flex;
}

div.about-sticker-image > img {height: 17em; border-radius: 1em;}

div.about-sticker-text > p {
    font-family: 'Gagalin', serif;
    /* letter-spacing: 1px; */
    color: #442C19;
    padding: 0 1em 0 0;
}

div.about {
    width: 80%;
    margin: 0 auto;
    padding-top: 2em;
    padding-bottom: 2em;
}

h2.about-header {
    font-family: 'Gagalin', serif;
    color: #442C19;
    padding: 4em 0 0.75em 0;
    font-size: 1.1em;
    position: relative;
}
h2.about-header::before {
    content: "";
    display: block;
    position: absolute;
    width: 2.5em;
    height: 2.5em;
    left: 0;
    top: 2em;
    background-image: url("/media/check.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

div.about p {
    font-size: 1.25em;
    line-height: 1.25em;
    text-align: justify;
}

/* contacts */
div.page-contacs h2 {
    font-family: 'Gagalin', serif;
    color: #442C19;
    text-align: center;
    padding-bottom: 1em;
}
div.page-contacs p {
    text-align: center;
    font-size: 1.25em;
    line-height: 1.5em;
}
div.page-contacs > div {
    padding-bottom: 3em;
}
div.page-contacs > div:last-of-type {padding-bottom: 0;}
div.page-contacs map {
    display: block;
    height: 30em;
    border-radius: 1em;
    box-shadow: -3px 4px 4px rgba(0, 0, 0, 0.25);
}

/* write form */
div.write-online-wripper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 20;
    background-color: rgba(255, 255, 255, 0.8);
    /* display: flex; */
    justify-content: center;
    align-items: center;
    display: none;
}
div.write-online-wripper > div {
    width: fit-content;
    padding: 0.2em;
    border-radius: 1em;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
    background-image: url("/media/fon_menu_mob.jpeg");
    background-size: cover;
    background-position: center;
}
div.write-online {
    border: 2px dashed #E2E2E2;
    border-radius: 1em;
    padding: 1em;
    min-width: 70mm;
}
div.write-online h2 {
    font-family: 'Gagalin', serif;
    color: #442C19;
    text-align: center;
    font-size: 1.2em;
}
div.write-online label {
    /*font-weight: bold;*/
    display: block;
    margin-top: 0.5em;
}
div.write-online input, div.write-online select {
    width: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    border: none;
    border-radius: 0.5em;
    padding: 0.5em;
    box-sizing: border-box;
    font-family: inherit;
    font-size: 1.2em;
}
p.write-button {
    display: block;
    width: fit-content;
    padding: 0.2em;
    margin: 1em auto 0 auto;
    background-color: #E84F58;
    border-radius: 2.3em;
}

a.close-menu, div.close-menu {
    display: block;
    position: relative;
    width: 2em;
    height: 2em;
    float: right;
}
a.close-menu > i, div.close-menu > i {
    display: block;
    width: 2.3em;
    height: 0.3em;
    background-color: rgba(0, 0, 0, 0.75);
    border-radius: 1.2em;
    position: absolute;
    right: 0;
    top: 1em;
}
a.close-menu > i:first-of-type, div.close-menu > i:first-of-type {
    transform: rotate(45deg);
}
a.close-menu > i:last-of-type, div.close-menu > i:last-of-type {
    transform: rotate(-45deg);
}
a.close-menu {
    margin-top: -2.5em;
    margin-right: 0.5em;
}
div.close-menu {
    margin-top: -0.5em;
}

div.qa {width: 80%; margin: 0 auto; padding-bottom: 2em}
div.qa-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
div.qa-title > div {
    font-family: 'Gagalin', serif;
    color: #442C19;
}
div.qa-title > div > img {
    height: 9em;
    margin-right: 2em;
}
div.qa-body {
    background: rgba(255, 255, 255, 0.8);
    border-radius: 1.2em;
    padding: 0.25em;
    margin-top: -0.3em;
}
div.qa-body > div {
    border: 2px dashed rgba(138, 100, 69, 0.5);
    border-radius: 1.2em;
    padding: 1em;
}
h3.question {
    display: block;
    font-size: 1.25em;
    color: #005662;
    padding: 2em 0 1em 0;
    font-weight: normal;
}
div.qa-body p {
    font-size: 1.1em;
    text-align: justify;
}
div.qa-footer {text-align: center;}
div.qa-footer img {height: 14em;}

/* loader */
.lds-ring {
    display: inline-block;
    position: relative;
    width: 2em;
    height: 2em;
}
.lds-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 1.7em;
    height: 1.7em;
    margin: 0.3em;
    border: 0.2em solid #fff;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #fff transparent transparent transparent;
}
.lds-ring div:nth-child(1) {
    animation-delay: -0.45s;
}
.lds-ring div:nth-child(2) {
    animation-delay: -0.3s;
}
.lds-ring div:nth-child(3) {
    animation-delay: -0.15s;
}
@keyframes lds-ring {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
}
  

div.mk-sticker {
    position: relative;
    padding: 0 2em;
    border-radius: 1em;
    background-image: url("/media/fon_sun.jpeg");
    background-size: cover;
    background-position: center;
    box-shadow: -4px 4px 4px rgba(0, 0, 0, 0.25);
    display: flex;
    /* justify-content: space-between; */
}

.mk-name-header {
    font-family: 'Gagalin', serif;
    font-size: 1.5em;
    color: #442C19;
    text-transform: uppercase;
    padding: 2em 0;
}

div.mk-photo {
    width: 25%;
    padding-bottom: 45%;
    background-image: url("/media/york_on_table.webp");
    background-size: contain;
    background-position: bottom center;
    background-repeat: no-repeat;
}

.mk-header-2 {
    font-family: 'Gagalin', serif;
    font-size: 1.25em;
    color: #442C19;
    text-transform: uppercase;
    text-align: center;
    padding: 2em 0 1em 0;
}

div.mk-points {
    width: 80%;
    margin: 0 auto;
    padding: 2em 2em 3em 2em;
    border-radius: 2em;
    box-shadow: -4px 4px 4px rgba(0, 0, 0, 0.25);
    background-image: url("/media/red_frame.png");
    background-size: 110% auto;
    background-position: top center;
    background-repeat: no-repeat;
    box-sizing: border-box;
}

div.mk-points > p {
    border-radius: 1.5em;
    padding-left: 3em;
    background-color: #FCF3DD;
    margin-top: 1.5em;
    position: relative;
    line-height: 3em;
}

div.mk-points > p > i {
    position: absolute;
    width: 2em;
    height: 2em;
    border-radius: 1em;
    background-color: #D3AD80;
    color: #ffffff;
    top: 0.5em;
    left: 0.5em;
    line-height: 2em;
    text-align: center;
}

div.bonus {
    width: 80%;
    margin: 0 auto;
    display: flex;
    justify-content: space-around;
}

div.bonus-item {
    width: 47%;
}

div.bonus-image {
    text-align: center;
    height: 10em;
    overflow: hidden;
}

div.bonus-mes {
    background-color: #FCF3DD;
    padding: 1em;
    border-radius: 2em;
    box-shadow: -4px 4px 4px 0px rgba(0, 0, 0, 0.25);
    position: relative;
    padding-left: 3em;
}

div.bonus-mes > i {
    position: absolute;
    top: 1em;
    left: 1em;
    width: 1.5em;
    height: 1.5em;
    border-radius: 0.75em;
    line-height: 1.5em;
    text-align: center;
    background-color: #D3AD80;
    color: #FFFFFF;
}

div.bonus-mes > h2 {
    font-family: 'Gagalin', serif;
    font-size: 1em;
    color: #442C19;
    text-transform: uppercase;
}

div.mk-footer {
    width: 80%;
    margin: 0 auto;
    padding-bottom: 65%;
    padding-top: 15%;
    background-image: url("/media/footer_mk.png");
    background-size: cover;
    background-position: bottom center;
    margin-top: 4em;
    border-radius: 3em;
    position: relative;
}

div.mk-footer > h2 {
    position: absolute;
    width: 100%;
    top: 3em;
    font-family: 'Gagalin', serif;
    font-size: 1em;
    text-transform: uppercase;
    color: #FFFFFF;
    text-align: center;
    padding: 0 2em;
    letter-spacing: 1px;
    box-sizing: border-box;
}

div.mk-footer > p.cost {
    position: absolute;
    width: 100%;
    top: 6em;
    font-family: 'Gagalin', serif;
    font-size: 1em;
    text-transform: uppercase;
    color: #FFDE89;
    text-align: center;
    padding: 0 2em;
    letter-spacing: 1px;
    box-sizing: border-box;
}

/* shop */
.product-list {
    padding: 8.5em 1em 1em 1em;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2em;
}

.product-list__item {
    background-color: rgba(255,255,255,0.5);
    border-radius: 1em;
    box-shadow: 0 0 0.25em rgba(0,0,0,0.5);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 1.5em;
    padding-bottom: 5.5em;
    transition: all .25s;
    position: relative;
}

.product-list__item:hover {
    box-shadow: 0 0 0.5em rgba(0,0,0,0.9);
    transform: scale(1.02);
}

.product-list__item-image {
    position: relative;
    padding-bottom: 100%;
}

.product-list__item-image > img {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
}

.product-list__item-name {
    padding: 0 0.5em;
    font-size: 1.25em;
    font-weight: bold;
    line-height: 150%;
}

.product-list__item-price {
    padding-left: 1em;
    font-family: 'Gagalin', serif;
    font-size: 1.75em;
    color: #8A6445;
}
.product-list__item-price::after, .product-info__price::after {
    content: ' грн';
    font-size: 0.6em;
}
.product-list__item-action {
    position: absolute;
    top: 3px;
    left: 3px;
    width: calc(100% - 6px);
    height: calc(100% - 6px);
    box-sizing: border-box;
    border-radius: 1em;
    border: 2px dashed rgba(138, 100, 69, 0.5);
    padding-bottom: 0.5em;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
}
.to-basket-btn, .same-btn {
    background: url("/media/background_darck.jpg") no-repeat center;
    background-size: 27em auto;
    border: none;
    display: block;
    width: fit-content;
    font-family: 'Gagalin', serif;
    font-size: 1.5em;
    padding: 0.5em 1em 0.5em 2.5em;
    border-radius: 2em;
    color: #FFFFFF;
    letter-spacing: 0.05em;
    position: relative;
    transition: all .25s;
}

.to-basket-btn::before {
    content: '';
    display: block;
    width: 1em;
    height: 1em;
    position: absolute;
    left: 1em;
    top: 0.6em;
    background: url("/media/cart-icon_stroke.svg") no-repeat center;
    background-size: contain;
}

.to-basket-btn::after, .same-btn::after {
    content: '';
    display: block;
    position: absolute;
    width: calc(100% - 8px);
    height: calc(100% - 8px);
    top: 4px;
    left: 4px;
    border: 1px dashed rgba(255,255,255,0.75);
    border-radius: 2em;
    box-sizing: border-box;
}

.product-info {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background-color: rgba(255,255,255,0.8);
    display: none;
    justify-content: center;
    align-items: center;
}

.product-info > div {
    background-image: url("/media/fon_menu_mob.jpeg");
    background-size: cover;
    width: 95%;
    max-width: 950px;
    padding: 3px;
    box-sizing: border-box;
    border-radius: 1.5em;
}

.product-info > div > div {
    background-color: rgba(255,255,255,0.8);
    padding: 1.5em;
    box-sizing: border-box;
    border-radius: 1.5em;
    display: flex;
    gap: 0.5em;
    position: relative;
    border: 2px dashed #442C19CC;
    box-shadow: 0 0 8px rgba(255,255,255,1);
}

.product-info__images {
    width: 40%;
    position: relative;
}

.product-info__images-select {
    width: 100%;
    padding-bottom: 100%;
    position: relative;
}
.product-info__images-select > img, .product-info__images-icons-item > img {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
}

.product-info__images-icons {
    display: flex;
    gap: 0.5em;
    margin-top: 0.5em;
}

.product-info__images-icons-item {
    width: 30%;
    padding-bottom: 30%;
    position: relative;
    border-width: 1px;
    border-style: solid;
    border-color: transparent;
}
.product-info__images-icons-item--selected {
    border-color: #442C19;
}
.product-info__content {
    display: flex;
    flex-direction: column;
    gap: 1em;
    margin-top: 2em;
}

.product-info__content > h3 {
    margin-top: 1em;
}

.product-info__content-line {
    display: flex;
    justify-content: space-between;
    align-items: center;
}


.product-info__price {
    font-family: 'Gagalin', serif;
    color: #8A6445;
    font-size: 2em;
}

.product-info__content > p {
    font-size: 1.25em;
    line-height: 1.5em;
}

.close-button {
    position: absolute;
    right: 0.5em;
    top: 0.5em;
    width: 2em;
    height: 2em;
    display: block;
    border-radius: 1em;
    border: 1px #442C19 solid;
    background-color: transparent;
    transition: transform .25s;
}
.close-button::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: url('data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.29289 5.29289C5.68342 4.90237 6.31658 4.90237 6.70711 5.29289L12 10.5858L17.2929 5.29289C17.6834 4.90237 18.3166 4.90237 18.7071 5.29289C19.0976 5.68342 19.0976 6.31658 18.7071 6.70711L13.4142 12L18.7071 17.2929C19.0976 17.6834 19.0976 18.3166 18.7071 18.7071C18.3166 19.0976 17.6834 19.0976 17.2929 18.7071L12 13.4142L6.70711 18.7071C6.31658 19.0976 5.68342 19.0976 5.29289 18.7071C4.90237 18.3166 4.90237 17.6834 5.29289 17.2929L10.5858 12L5.29289 6.70711C4.90237 6.31658 4.90237 5.68342 5.29289 5.29289Z" fill="%23442C19"></path></g></svg>') no-repeat center;
    background-size: 1.5em 1.5em;
}

.close-button:hover {
    transform: scale(1.1) rotate(90deg);
}

.to-basket-btn:hover, .same-btn:hover {
    transform: scale(1.05);
    box-shadow: 0 0 0.25em rgba(0,0,0,0.5);
}

.product-list__item-in-basket {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5em;
    padding: 1em 0;
}
.product-list__item-in-basket::before {
    content: '';
    background: url("/media/cart-icon_brawn.svg") no-repeat center;
    background-size: contain;
    display: block;
    width: 1.75em;
    height: 1.75em;
}
 .product-list__item-in-basket > a {
     font-size: 1.25em;
 }


/* basket styles */

.basket-titles {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1em 0;
}
.basket-titles > h2 {
    font-size: 1.5em;
    font-weight: 700;
}
.basket-titles > p > span {
    font-size: 1.5em;
    font-weight: 700;
    margin-left: 0.25em;
}
.basket-titles > p > span::after {
    content: ' ₴';
}

.basket-body {
    padding: 1em;
    border-radius: 0.5em;
    border: 1px solid rgba(138, 100, 69, 0.5);
}

.basket-item {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 1em;
    padding: 0.75em 0;
    border-bottom: 1px solid rgba(138, 100, 69, 0.5);
}
.basket-item:first-child {
    padding-top: 0;
}
.basket-item:last-child {
    padding-bottom: 0;
    border-bottom: none;
}
.basket-item-img {
    width: 7em;
    height: 7em;
    object-fit: cover;
}
.basket-item-name {
    font-size: 1.25em;
}
.basket-item-price {
    font-size: 1.5em;
    font-weight: 700;
    margin-left: auto;
}
.basket-item-price::after {
    content: ' ₴';
}
.basket-item-delete-btn {
    display: block;
    border: none;
    width: 2em;
    height: 2em;
    background: url('data:image/svg+xml,<%3Fxml version="1.0" encoding="utf-8"%3F><svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10 12V17" stroke="%238A6445" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M14 12V17" stroke="%238A6445" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M4 7H20" stroke="%238A6445" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M6 10V18C6 19.6569 7.34315 21 9 21H15C16.6569 21 18 19.6569 18 18V10" stroke="%238A6445" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M9 5C9 3.89543 9.89543 3 11 3H13C14.1046 3 15 3.89543 15 5V7H9V5Z" stroke="%238A6445" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center;
    background-size: contain;
}
.basket-empty-title {
    padding-top: 4.25em;
    padding-left: 1em;
    font-size: 2em;
}
.order h3 {
    margin: 2em 0 1em 0;
    font-size: 1.25em;
}
.order .same-btn {
    margin: 2em auto 0 auto;
}
.client-information {
    display: flex;
    justify-content: space-between;
}
.client-information > p {
    display: flex;
    flex-direction: column;
    min-width: 30%;
}
.client-information > p > label {
    font-size: 0.85em;
    font-weight: 700;
}
.client-information > p > input, .client-information > p > select {
    display: block;
    padding: 0.25em 0.5em;
    font-size: 1em;
    border: 1px solid #8A6445;
    border-radius: 0.5em;
    width: 100%;
    box-sizing: border-box;
    background-color: transparent;
    outline: none;
    transition: background-color .25s, box-shadow .25s;
    color: #442C19;
}
.client-information > p > input::placeholder {
    color: #8A6445;
}
.client-information > p > input:focus {
    box-shadow: 0 0 2px #442C19;
    background-color: #FFFFFF;
}

/* Client City */

.client-city {
    display: flex;
    border: 1px solid rgba(138, 100, 69, 0.5);
    border-radius: 0.5em;
    padding: 0.5em;
    margin-bottom: 1em;
    gap: 0.5em;
    transition: background-color .25s;
}
.client-city:hover {
    background-color: rgba(138, 100, 69, 0.2);
}
.client-city > svg {
    width: 2em;
}
.client-city__info-name {
    font-size: 1.5em;
    font-weight: 700;
    display: block;
}
.client-city__info-region {
    margin-top: 1.5em;
}
.client-city__change-btn {
    margin-left: auto;
    border: none;
    background: transparent;
    font-size: 1.25em;
}
.client-city__change-btn:hover {
    color: #005662;
}
.delivery-item {
    padding: 0 0.5em;
    border-radius: 0.5em;
}
.delivery-item > div {
    display: none;
}
.delivery-item > div > select {
    display: block;
    width: 100%;
    font-size: 1.25em;
    padding: 0.25em 0.5em;
    box-sizing: border-box;
    background-color: transparent;
    border: 1px solid rgba(138, 100, 69, 0.5);
    border-radius: 0.5em;
    color: #442C19;
}
.delivery-item--shop > div {
    margin: 0.5em 0 0.75em 0;
    font-size: 1.25em;
    padding-left: 1em;
}
.delivery-item--shop > div > svg {
    width: 1.5em;
    margin-right: 0.25em;
}
.delivery-item--shop > div > span {
    padding-top: 0.5em;
}
.np_cities_list {
    position: fixed;
    overflow-y: auto;
    background-color: #FFFFFF;
    z-index: 20;
    top: 0;
    left: 0;
    padding: 0.25em;
    box-sizing: border-box;
    display: none;
}
.np_cities_list > p {
    padding: 0.25em 0;
    font-size: 1.25em;
    white-space: nowrap;
    overflow: hidden;
    border-bottom: 1px dotted rgba(138, 100, 69, 0.5);
    transition: background-color .25s;
}
.np_cities_list > p:hover {
    background-color: #ffccaa;
}
/* change city dialog */

.change-city-dialog {
    display: none;
    justify-content: center;
    align-items: center;
    background-color: rgba(255,255,255,0.8);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 12;
}
.change-city-dialog > div {
    padding: 0.25em;
    border-radius: 1em;
    background: url("/media/fon_menu_mob.jpeg") no-repeat center;
    background-size: cover;
    min-width: 70%;
}
.change-city-dialog > div > div {
    border-radius: 1em;
    border: 2px dashed rgba(138, 100, 69, 0.5);
    padding: 0.75em;
    background-color: rgba(255,255,255,0.5);
    box-shadow: 0 0 0.5em #ffffff;
    position: relative;
}
.change-city-dialog h3 {
    font-size: 1.25em;
    padding-top: 0.25em;
    padding-bottom: 0.5em;
    border-bottom: 1px solid rgba(138, 100, 69, 0.4);
}
.change-city-dialog .same-btn {margin: 2em auto 0 auto}
.central-cities-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1em;
    margin: 1em 0;
}
.central-cities-select-btn {
    font-size: 1.25em;
    padding: 0.5em;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 0.25em;
}
.central-cities-select-btn:hover {
    color: #8A6445;
}
.central-cities-select-btn-default {
    border-color: #442C19;
}
.change-city-dialog label {
    display: block;
    font-size: 0.85em;
    font-weight: 700;
}
.change-city-dialog input {
    display: block;
    width: 100%;
    background-color: transparent;
    border: 1px solid rgba(138, 100, 69, 0.5);
    border-radius: 0.25em;
    padding: 0.5em;
    box-sizing: border-box;
    outline: none;
}
.change-city-dialog input:focus {
    background-color: rgba(255,255,255,0.4);
    box-shadow: 0 0 0.25em rgba(138, 100, 69, 0.5);
}
/* Radio button */
.radio-btn {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 0.75em;
    min-height: 40px;
}
.radio-btn > input {
    display: none;
}
.radio-btn > span {
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 12px;
    position: relative;
    border: 1px solid #442C19;
    flex-shrink: 0;
}
 .radio-btn > span::after {
     content: '';
     position: absolute;
     top: 3px;
     left: 3px;
     width: 14px;
     height: 14px;
     border-radius: 7px;
     background-color: #442C19;
     display: none;
 }
 .radio-btn > h4 {
     font-size: 1em;
     font-weight: 700;

 }

 .radio-btn > input:checked + span:after {
     display: block;
 }



@media screen and (max-width: 1000px) {
    body {
        font-size: 1.5vw;
    }
}

/* mobile */

@media screen and (max-width: 700px) {
    *, body {
        font-size: 12pt;
    }

    div.menu, div.big-board-text-wrapper, div.big-board-points {display: none;}
    header {width: calc(100% - 1em); left: 0.5em;}
    div.logo {top: -0.4em; left: -0.7em}
    div.menu-mobile {display: flex;}
    div.actions {justify-content: flex-start; width: 100%; padding-left: 6em; box-sizing: border-box;}

    div.slider {padding: 4em 2em 0 2em;}
    div.big-board {padding-bottom: 154%; background-image: url("/media/fon_mob.jpg");}
    div.main-info {top: 3em; left: 5%; width: 90%;}
    div.company-name, div.slogans > p {font-size: 1.5em;}
    div.write-button {bottom: -4em; left: 50%; margin-left: -6em;}
    .founders-story {margin-top: 5em;}
    .founders-story::before {left: -0.15em;}
    .founders-story::after {right: -0.15em;}
    div.galery, div.contacs, div.footer-line > div, div.service-item, div.page-contacs, div.qa {width: 94%;}
    div.galery-line {display: block; clear: left;}
    div.galery-item {width: 50%; float: left;}
    div.galery-item:last-of-type {display: none;}
    div.services {width: 94%; display: block; position: relative; padding: 18em 0.5em 1.5em 0.5em; background-size: 150%;}
    div.services-image {position: absolute; width: 90%; height: 16em; top: 0; left: 5%; margin-top: 5%;}
    div.service-items {width: 90%; margin: 0 auto;}
    div.krasunchik {display: block; width: 30%; height: 30%; position: absolute; top: 10%; left: 10%; background-image: url("/media/krasunchik.png");background-size: contain;background-position: top left;background-repeat: no-repeat;}
    div.stickers {width: 90%;}
    div.stickers-line {display: block;}
    div.sticker-item {width: 100%; padding-bottom: 70%; margin-top: 2em;}
    div.contacts-line {display: block;}
    div.contacts-line > div {width: 100%;}
    div.contacts-line > div:last-of-type {margin-top: 2em;}
    footer img {height: 8em;}
    footer p {padding: 0;}
    div.mobile-menu {
        position: fixed;
        z-index: 10; 
        top: 1em; 
        right: 2%; 
        width: 80%; 
        height: fit-content;
        padding: 0.25em;
        box-sizing: border-box;
        background-image: url("/media/fon_menu_mob.jpeg"); 
        background-size: cover; 
        background-position: center; 
        border-radius: 1em;
    }
    div.mobile-menu > div {border: 2px dashed #8A6445; border-radius: 1em; padding-top: 3em; padding-bottom: 2.5em; text-align: center;}
    div.mobile-menu img {height: 10em;}
    a.menu-item {
        display: block;
        text-align: center;
        font-family: 'Gagalin', serif;
        margin: 0.75em;
    }
    div.mobile-menu > div > div {bottom: 1em !important; left: 50%; margin-left: -6em;}
    div.service-item > div {display: block;}
    div.service-image {display: block; float: left;}
    div.service-image > img {max-width: 5em;}

    div.page-price p {width: 94%; box-sizing: border-box;}
    div.price-body, div.price-dop {width: 94%; overflow-x: auto; padding: 0.5em;}
    table.price td, table.price th {font-size: 1em;}
    div.price-dop > table {max-width: 90vw;}

    div.about-sticker-wrapper {width: 90%;}
    div.about-sticker {display: block; padding: 1em;}
    div.about-sticker-text > p {padding: 0 0 1em 0;}
    div.about-sticker-image > img {width: 100%; height: auto;}
    div.about {width: 94%; padding-top: 3em;}
    div.page-contacs p {font-size: 1em;line-height: 1.25em;}
    div.page-contacs a, div.contacts-line a {display: block; padding: 0.5em;}
    div.write-online {min-width: none;}
    div.write-online-wripper > div {width: 94%;}
    div.qa-title > div > img {margin-right: 0;}
    div.mk-sticker {display: block; padding-bottom: 50%;} 
    div.mk-photo {position: absolute;right: 0;bottom: 0;width: 50%;padding-bottom: 70%;}
    .mk-name-header {font-size: 1em;}
    div.mk-sticker p {width: 70%;}
    .mk-header-2:first-of-type {margin-top: 3em;}
    div.mk-points {width: 94%; background-size: auto 105%; padding: 0.5em 0.5em 2em 0.5em;}
    div.mk-points > p {line-height: 1.25em; padding: 0.25em 0.25em 0.25em 3em;}
    div.bonus {display: block;}
    div.bonus-item {width: auto;}
    div.bonus-image {font-size: 0.7em; padding-left: 3em;}
    div.bonus-item:first-of-type > div.bonus-image {text-align: right;}
    div.bonus-item:last-of-type > div.bonus-image {text-align: left; padding-top: 2em;}
    div.bonus-image > img {font-size: inherit;}
    div.mk-footer {padding-top: 25%; padding-bottom: 90%;}
    div.mk-footer > h2 {font-size: 0.75em; top: 1em;}
    div.mk-footer > p.cost {top: 4em}

    .product-list {grid-template-columns: repeat(2, 1fr); gap: 1em;}
	.product-list__item {gap: 0.5em; padding-bottom: 4em}
	.to-basket-btn, .same-btn {font-size: 1.2em}
	.product-list__item-name {font-size: 0.8em; text-align: center}
	.product-list__item-price {padding: 0 0.25em; text-align: center; margin-top: auto}
    .product-info > div > div {flex-direction: column; height: 97vh; overflow: auto}
    .product-info .close-button {position: fixed; top: calc(1.5vh + 0.5em); right: calc(2.5% + 0.5em)}
    .product-info__images {width: 100%}
    .product-info__content > h2, .product-info__content > h3 {text-align: center}
    .product-info__price {font-size: 1.5em}
    .product-info__content > p {font-size: 1em; line-height: 1.25em}

    .basket-item {display: grid; grid-template-columns: 30% auto;gap: 0.5em}
    .basket-item-img {width: 100%; aspect-ratio: 1 / 1; height: auto}
    .basket-item-price {margin-left: 0}
    .basket-item-name {font-size: 1em}
    .basket-item-change {display: flex; justify-content: flex-end}
    .client-information {flex-direction: column; gap: 0.5em}
    .pay-item {margin-top: 0.5em}
}