/*
Theme Name: Beauty
Theme URI: https://samopixel.com
Author: Самоходный Пиксель
Author URI: https://denisyavor.com
Description: Тема для сферы красоты
Version: 1.0.0.0
Text Domain: beauty
Tags: beauty
*/

/* ---------------------------------------------- *\
   Normalization --- start
\* ---------------------------------------------- */
audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: none;
}

b,
strong {
	font-weight: bold;
}

mark, .mark {
	background: #ff0;
	color: #000;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: initial;
}

code,
kbd,
pre,
samp {
	font-size: 1em;
	font-family: monospace, monospace;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0;
	border: none;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"] {
	box-sizing: content-box;
	-webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

legend {
	padding: 0;
	border: 0;
}

label {
	display: inline-block;
	margin-bottom: 8px;
	font-weight: 700;
}

textarea {
	overflow: auto;
	height: 146px !important;
}

optgroup {
	font-weight: bold;
}

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

td,
th {
	padding: 0;
}

embed,
iframe,
object {
	max-width: 100%;
}
/* ---------------------------------------------- *\
   Normalization --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Global variables --- start
\* ---------------------------------------------- */
:root {
	--display: 80px;
	--title-1: 52px;
	--title-2: 32px;
	--line-height-1: 17px;
	--line-height-1: 17px;
	--line-height-1: 17px;
	--font-size-1: 11px;
	--font-size-2: 13px;
	--font-size-3: 15px;
	--color-text: #262626;
	--color-link: #215ce0;
	--space-1: 120px;
	--space-2: 8px;
	--space-3: 20px;
	--space-4: 32px;
	--space-5: 64px;
	--bs-gutter-x-1: 16px;
	--bs-gutter-x-2: 32px;
	--bs-gutter-x-3: 40px;
	--border-radius-1: 16px;
}

/* ---------------------------------------------- *\
   Global variables --- end
\* ---------------------------------------------- */



/* ---------------------------------------------- *\
   Spacing --- start
\* ---------------------------------------------- */

/* Margins --- start */
.mt-1 {margin-top: var(--space-1)!important;}
.mt-2 {margin-top: var(--space-2)!important;}
.mt-3 {margin-top: var(--space-3)!important;}
.mt-4 {margin-top: var(--space-4)!important;}
.mt-5 {margin-top: var(--space-5)!important;}

.mb-1 {margin-bottom: var(--space-1)!important;}
.mb-2 {margin-bottom: var(--space-2)!important;}
.mb-3 {margin-bottom: var(--space-3)!important;}
.mb-4 {margin-bottom: var(--space-4)!important;}
.mb-5 {margin-bottom: var(--space-5)!important;}

.ml-1 {margin-left: var(--space-1)!important;}
.ml-2 {margin-left: var(--space-2)!important;}
.ml-3 {margin-left: var(--space-3)!important;}
.ml-4 {margin-left: var(--space-4)!important;}
.ml-5 {margin-left: var(--space-5)!important;}

.mr-1 {margin-right: var(--space-1)!important;}
.mr-2 {margin-right: var(--space-2)!important;}
.mr-3 {margin-right: var(--space-3)!important;}
.mr-4 {margin-right: var(--space-4)!important;}
.mr-5 {margin-right: var(--space-5)!important;}

.mx-1 {margin-right: var(--space-1)!important; margin-left: var(--space-1)!important;}
.mx-2 {margin-right: var(--space-2)!important; margin-left: var(--space-2)!important;}
.mx-3 {margin-right: var(--space-3)!important; margin-left: var(--space-3)!important;}
.mx-4 {margin-right: var(--space-4)!important; margin-left: var(--space-4)!important;}
.mx-5 {margin-right: var(--space-5)!important; margin-left: var(--space-5)!important;}

.my-1 {margin-right: var(--space-1)!important; margin-left: var(--space-1)!important;}
.my-2 {margin-right: var(--space-2)!important; margin-left: var(--space-2)!important;}
.my-3 {margin-right: var(--space-3)!important; margin-left: var(--space-3)!important;}
.my-4 {margin-right: var(--space-4)!important; margin-left: var(--space-4)!important;}
.my-5 {margin-right: var(--space-5)!important; margin-left: var(--space-5)!important;}

.mxy-1 {margin: var(--space-1)!important;}
.mxy-2 {margin: var(--space-2)!important;}
.mxy-3 {margin: var(--space-3)!important;}
.mxy-4 {margin: var(--space-4)!important;}
.mxy-5 {margin: var(--space-5)!important;}
/* Margins --- end */

/* Paddings --- start */
.pt-1 {padding-top: var(--space-1)!important;}
.pt-2 {padding-top: var(--space-2)!important;}
.pt-3 {padding-top: var(--space-3)!important;}
.pt-4 {padding-top: var(--space-4)!important;}
.pt-5 {padding-top: var(--space-5)!important;}

.pb-1 {padding-bottom: var(--space-1)!important;}
.pb-2 {padding-bottom: var(--space-2)!important;}
.pb-3 {padding-bottom: var(--space-3)!important;}
.pb-4 {padding-bottom: var(--space-4)!important;}
.pb-5 {padding-bottom: var(--space-5)!important;}

.pl-1 {padding-left: var(--space-1)!important;}
.pl-2 {padding-left: var(--space-2)!important;}
.pl-3 {padding-left: var(--space-3)!important;}
.pl-4 {padding-left: var(--space-4)!important;}
.pl-5 {padding-left: var(--space-5)!important;}

.pr-1 {padding-right: var(--space-1)!important;}
.pr-2 {padding-right: var(--space-2)!important;}
.pr-3 {padding-right: var(--space-3)!important;}
.pr-4 {padding-right: var(--space-4)!important;}
.pr-5 {padding-right: var(--space-5)!important;}

.px-1 {padding-right: var(--space-1)!important; padding-left: var(--space-1)!important;}
.px-2 {padding-right: var(--space-2)!important; padding-left: var(--space-2)!important;}
.px-3 {padding-right: var(--space-3)!important; padding-left: var(--space-3)!important;}
.px-4 {padding-right: var(--space-4)!important; padding-left: var(--space-4)!important;}
.px-5 {padding-right: var(--space-5)!important; padding-left: var(--space-5)!important;}

.py-1 {padding-right: var(--space-1)!important; padding-left: var(--space-1)!important;}
.py-2 {padding-right: var(--space-2)!important; padding-left: var(--space-2)!important;}
.py-3 {padding-right: var(--space-3)!important; padding-left: var(--space-3)!important;}
.py-4 {padding-right: var(--space-4)!important; padding-left: var(--space-4)!important;}
.py-5 {padding-right: var(--space-5)!important; padding-left: var(--space-5)!important;}

.pxy-1 {padding: var(--space-1)!important;}
.pxy-2 {padding: var(--space-2)!important;}
.pxy-3 {padding: var(--space-3)!important;}
.pxy-4 {padding: var(--space-4)!important;}
.pxy-5 {padding: var(--space-5)!important;}
/* Paddings --- end */

/* ---------------------------------------------- *\
   Spacing --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Typography --- start
\* ---------------------------------------------- */
body,
button,
input,
select,
textarea {
	color: #262626;
	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	line-height: 20px;
	font-size: 15px;
	-webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	margin: 0;
}

h2 {
	font-size: 28px !important;
	margin: 36px 0 8px !important;
}

p {
	margin: 0 0 13px;
}

p:last-of-type {
	margin-bottom: 0;
}
/* ---------------------------------------------- *\
   Typography --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Elements --- start
\* ---------------------------------------------- */
html {
	box-sizing: border-box;
	font-size: 16px;
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

hr {
	margin: 32px 0;
	height: 1px;
	border: 0;
	background-color: #ddd;
}

ul,
ol {
	margin: 0 0 16px;
	padding: 0 0 0 32px;
}

ul {
	list-style: none;
}

li {
	margin-bottom: 4px;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 16px;
}

img {
	max-width: 100%;
	height: auto;
}

th,
td {
	padding: 7px 0 7px 20px !important;
	border-color: #ddd;
	vertical-align: top;
}

.table__head {
	margin-top: 20px;
}

.table__head.first {
	margin-top: 16px;
}

table {
	margin-bottom: 0;
}

.table {
	color: inherit;
}

thead th {
	padding-top: 0 !important;
	border-bottom: 1px solid #999;
}

.left-width {
	padding-left: 0 !important;
	width: 100%;
}

td.padding-top-0 {
	padding-top: 0;
}

a,
a:hover,
a:active {
	color: #215CE0;
	text-decoration: none;
}

a:link,
a:visited {
	color: #215CE0;
}

a:hover,
a:active {
	outline: none;
/* 	-webkit-tap-highlight-color: rgba(0,0,0,0); */
}
/* ---------------------------------------------- *\
   Elements --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Forms --- start
\* ---------------------------------------------- */
button,
.button,
a.button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	margin-top: 20px;
	padding: 0 16px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	border: 1px solid transparent;
	line-height: 44px;
	text-align: center;
	text-decoration: none;
	/* -webkit-tap-highlight-color: rgba(0,0,0,0); */
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	outline: none;
}

button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active,
button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus {
	box-shadow: none !important;
	outline: none !important;
}

.button_theme_default {
	background-color: #111;
	color: #f5f5f7;
	width: 100%;
}

.button_theme_telegram,
a.button_theme_telegram {
	display: inline-block;
	width: calc(50% - 8px);
	background-color: #389ce9;
	color: #fff;
}

.button_theme_viber,
a.button_theme_viber {
	display: inline-block;
	margin-left: 16px;
	width: calc(50% - 8px);
	background-color: #7360f2;
	color: #fff;
}

.button_theme_whatsapp,
a.button_theme_whatsapp {
	display: inline-block;
	width: calc(50% - 8px);
	background-color: #25D366;
	color: #fff;
}

.button_theme_outline-red,
a.button_theme_outline-red {
	display: inline-block;
	background-color: rgba(226, 0, 22, .02);
	border-color: initial;
	font-weight: 500;
	color: #e20016;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
	width: 100%;
	padding: 0 13px;
	max-width: 100%;
	background: #fff;
	border: 1px solid #999;
	border-radius: 6px;
	line-height: 44px;
	color: #444;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
	border: 1px solid #444;
	outline:0 !important;
}

input[type="checkbox"] {
	width: 18px;
	height: 18px;
}

.form-group {
	margin: 16px 0 0;
}

textarea {
	width: 100%;
	padding: 8px;
	line-height: 1.45;
}

.wpcf7 .row {
	margin-left: -8px;
	margin-right: -8px;
}

.wpcf7 .col-sm-6 {
	padding-left: 8px;
	padding-right: 8px;
}

.wpcf7 .col-sm-4 {
	padding-left: 8px;
	padding-right: 8px;
}

.wpcf7 p,
.wpcf7 .wpcf7-list-item label {
	margin-bottom: 0 !important;
}

span.wpcf7-not-valid-tip {
	display: inline-block;
	margin-top: 4px;
	font-size: 13px;
	color: #f21212 !important;
}

.wpcf7 form .wpcf7-response-output {
	margin: 16px 0 0 !important;
	padding: 0 !important;
	border: none !important;
	font-size: 13px;
	color: #f21212;
}

.wpcf7 form.sent .wpcf7-response-output {
	color: #25B72B;
}

div.wpcf7 .ajax-loader,
.wpcf7-spinner {
	display: none !important;
}
/* ---------------------------------------------- *\
   Forms --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Layout --- start
\* ---------------------------------------------- */
body {
	background-color: #eee;
}

a {
	color: #215ce0;
	outline: none;
	text-decoration: none;
}

.container-global {
	max-width: 574px;
	margin-right: auto;
	margin-left: auto;
	padding-left: 20px;
    padding-right: 20px;
}
/* ---------------------------------------------- *\
   Layout --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Modal --- start
\* ---------------------------------------------- */
.modal {
	overflow-y: scroll;
}

.modal-dialog {
	max-width: 574px;
    margin: 20px auto;
}

.modal-content {
	border-radius: 8px;
	border: none;
	height: 100%;
	overflow: hidden;
}

.modal-body {
	padding: 16px 20px 7px;
	border-radius: 0;
	border: none;
}

.modal-header {
	padding: 0 0 0 20px;
	border-bottom: 1px solid #ddd;
}

.modal-title {
	line-height: 20px;
	font-size: 16px;
	font-weight: 700;
}

.modal .btn-close {
    position: relative;
    background: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    padding: 20px;
    margin: 0;
    opacity: 0.8;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.modal span.line-1 {
    position: absolute;
    right: 0;
    margin-right: 20px;
    background: #262626;
    width: 17px;
    height: 1px;
    transform: rotate(135deg);
}

.modal span.line-2 {
    position: absolute;
    right: 0;
    margin-right: 20px;
    background: #262626;
    width: 17px;
    height: 1px;
    transform: rotate(45deg);
}

.modal-footer {
	padding: 16px 20px 20px;
	align-items: center;
	justify-content: flex-start;
}

.modal-footer > * {
	margin: 0;
}

.modal-backdrop.show {
    opacity: 0.6;
    background-color: #111;
}
/* ---------------------------------------------- *\
   Modal --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Menu --- start
\* ---------------------------------------------- */
.menu {
	height: 75px;
	background-color: #111;
	font-size: 14px;
	color: rgb(255,255,255,.8);
}

.menu__logo {
	padding: 13px 0 18px;
}

.menu__site-name {
	line-height: 26px;
    font-weight: 700;
	font-size: 18px;
    color: #f5f5f7;
}

.menu__site-name img {
	margin-top: 1px;
	height: 25px;
}

.menu__site-description {
	margin-top: 2px;
	line-height: 16px;
	font-size: 14px;
	color: rgb(255,255,255,.8);
}

.row {
	--bs-gutter-x: 16px;
}

a.menu__link {
	display: block;
	padding: 12px 0;
	font-size: 18px;
	color: #f5f5f7;
}

a.menu__link.book-link {
	margin-bottom: 8px;
}

a.menu__link.link_color_red {
	color: #FF5252;
}

.menu .row {
	--bs-gutter-x: 32px;
}

a.menu__button {
    padding: 35px 10px 36px;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    outline: none;
}

.menu__hamburger:before,
.menu__hamburger:after,
.menu__hamburger {
    background: #fff;
    content: "";
    display: block;
    height: 1px;
    left: 0;
    position: relative;
    width: 29px;
}

.menu__hamburger:before {
    top: -8px;
}

.menu__hamburger:after {
    bottom: -7px;
}

.menu__offcanvas .offcanvas {
	display: initial;
	flex-direction: initial;
	height: max-content;
	background-color: #111;
	border-bottom: none;
	box-shadow: 0 1px 6px rgb(0 0 0 / 40%);
}

.menu__offcanvas .container-global {
	padding: 0;
}

.menu__offcanvas .offcanvas-header {
	height: 75px;
	padding: 16px 18px 16px 20px;
	border-bottom: 1px solid rgba(255,255,255,.10);
	color: rgb(255,255,255,.8);
}

.menu__offcanvas .btn-close {
/* 	background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23f5f5f7'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/21px auto no-repeat;
	width: 18px;
	height: 16px;
	padding: 16px;
    margin: 0 0 0 auto;
	opacity: 1;
	-webkit-tap-highlight-color: rgba(0,0,0,0); */
    position: relative;
	background: none;
    width: 49px;
    height: 45px;
    padding: 0;
    margin: 0;
    opacity: 1;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.menu__offcanvas span.line-1 {
    position: absolute;
	top: 22px;
    right: 0;
	margin-right: 12px;
	background: rgb(255,255,255,.8);
    width: 29px;
    height: 1px;
    transform: rotate(135deg);
}

.menu__offcanvas span.line-2 {
    position: absolute;
	top: 22px;
    right: 0;
	margin-right: 12px;
	background: rgb(255,255,255,.8);
    width: 29px;
    height: 1px;
    transform: rotate(45deg);
}

.menu__offcanvas button,
.menu__offcanvas button:focus,
.menu__offcanvas button:active {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	box-shadow: none;
}

.menu__offcanvas .offcanvas-body {
	padding: 8px 20px 20px;
}

.menu__offcanvas .offcanvas-bottom {
	height: auto;
	border-top: none;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	box-shadow: 0 -1px 1px rgb(0 0 0 / 6%);
}

.modal-backdrop.show {
	opacity: 0.6;
}

/* Language switcher --- start */
.language-switcher {
	margin-right: 16px;
	display: inline-flex;
}

.language-switcher li {
	display: inline-block;
	margin-bottom: 0;
	list-style: none;
}

.language-switcher li:before {
	display: none;
}

.language-switcher .lang-item-ru {
	margin-left: 8px;
}

.language-switcher .lang-item a {
	display: inline-block;
	color: #f5f5f7;
}

.language-switcher .current-lang a {
	/* padding: 0px 4px;
	border: 1px solid;
	border-radius: 4px; */
	color: rgb(255,255,255,.6);
}
/* Language switcher --- end */
/* ---------------------------------------------- *\
   Menu --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Sections --- start
\* ---------------------------------------------- */
.section {
	margin: 20px -20px 0;
	padding: 18px 20px 22px;
	background-color: #fff;
	border-radius: 8px;
	box-shadow: 0 1px 1px rgb(0 0 0 / 10%);
	overflow: hidden;
}

.title-1 {
	margin: -2px 0 12px;
	line-height: 30px;
	font-size: 24px;
	font-weight: 700;
}

.title-1 h1 {
	line-height: inherit;
	font-size: inherit;
	font-weight: inherit;
}

.title-2 {
	line-height: 22px;
	font-size: 17px;
	font-weight: 700;
}

.text {
	margin-top: 8px;
}
/* ---------------------------------------------- *\
   Sections --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Hero --- start
\* ---------------------------------------------- */
.hero {
	margin-bottom: 16px;
}

.section.hero {
	margin: 20px -20px 0;
	padding-top: 0;
}

.hero-img {
	position: relative;
    overflow: hidden;
    background-color: #eee;
	height: 0;
}

.hero-img-wrapper {
	margin: 0 -20px 16px;
}

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

.hero .title-1 {
	position: absolute;
	z-index: 50;
	left: 0;
	bottom: 0;
	margin: 0 !important;
	padding: 16px;
	width: 100%;
	background: linear-gradient(to top, rgba(51,51,51,0.45) -50%,rgba(51,51,51,0) 100%);
	color: #fff;
	text-shadow: 0 1px 1px rgb(0 0 0 / 30%);
}
/* ---------------------------------------------- *\
   Hero --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Location --- start
\* ---------------------------------------------- */
.address {
	display: inline;
	margin-bottom: 16px;
	border: none;
	border-bottom: 1px dotted;
	cursor: pointer;
	line-height: inherit;
	font-size: inherit;
	color: initial;
}

.metro-red {
	margin-right: 4px;
	height: 10px;
	vertical-align: 0px;
	fill: rgba(255,255,255,.8);
}

.location .accordion {
	margin-bottom: 8px;
}

.location .accordion-button {
	padding: 0;
	background-color: transparent;
	box-shadow: none;
}

.location .accordion-button:not(.collapsed) {
	background-color: unset;
	color: initial;
}

.location .accordion-item:last-of-type .accordion-button.collapsed {
	border-radius: 0;
}

.location .accordion-body {
	padding: 16px 0 0;
}

.location .accordion-item,
.location .accordion-item:last-of-type .accordion-collapse {
	border: none;
	background-color: transparent;
}
/* ---------------------------------------------- *\
   Location --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Offers --- start
\* ---------------------------------------------- */
.offers__item .dot {
	display: block;
	width: 6px;
	height: 6px;
	margin-top: 8px;
	margin-right: 7px;
	background-color: #e20016;
	border-radius: 3px;
}

.offers .offers__item {
	margin-top: 13px;
}

.offers .offers__item:first-of-type {
	margin-top: 0;
}

.offers__item a {
	color: initial;
}

.offers__item-excerpt {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.offers__item-period {
	color: #777;
}

.modal__offer p:last-of-type {
	margin-bottom: 13px;
}

.modal__offer .offers__item-period {
	color: initial;
}
/* ---------------------------------------------- *\
   Offers --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Price --- start
\* ---------------------------------------------- */
.price .title-1 {
	margin-bottom: 12px !important;
}

.price ul {
	margin: 8px 0 0 !important;
	padding: 0 !important;
}

.price li {
	margin: 0;
}

.price li:before {
	content: none !important;
}

.price .nav-item {
	margin: 0;
}

.price .nav-link {
	margin: 8px 8px 0 0;
	padding: 0 12px 1px;
	background-color: #f5f5f5;
	border: 1px solid #f5f5f5;
	border-radius: 16px;
	line-height: 29px;
	font-size: inherit;
	font-weight: 400;
	color: #262626;
	transition: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

.price .nav-pills .nav-link.active,
.price .nav-pills .show > .nav-link {
	background-color: #111;
	border: 1px solid #111;
	color: #fff;
}

.title-border-bottom {
	padding-bottom: 8px;
	border-bottom: 1px solid #ddd;
}
/* ---------------------------------------------- *\
   Price --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Team --- start
\* ---------------------------------------------- */
.team img {
	border-radius: 6px;
	margin-top: 20px;
	margin-bottom: 6px;
}

.team .text {
	margin-top: 0;
}

.team ul {
	margin-top: 6px;
	padding: 0 0 0 13px;
}
/* ---------------------------------------------- *\
   Team --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Contact --- start
\* ---------------------------------------------- */
.contact .title-2 {
	margin-top: -1px !important;
}

/* Phone numbers --- start */
a.сall {
	display: block;
	margin: 10px 0 0;
	line-height: 30px;
	font-size: 24px;
	color: #262626;
    font-weight: 500;
}

.сall a:hover {
	color: #262626;
}

.сall span {
	display: inline-block;
	margin-left: 14px;
	line-height: 16px;
	font-size: 13px;
}

a.сall-more-button {
	margin-left: 12px;
	vertical-align: 3px;
	font-size: 20px;
	color: #777;
}

.сall-more a.сall {
	display: block;
}
/* Phone numbers --- end */


/* Apply form --- start */
.contact-apply .text {
	margin-bottom: 20px;
}

input,
select,
textarea {
	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	font-size: inherit;
}

.select__wrapper {
	position: relative;
	margin-top: 6px;
}

.select__wrapper .select__label,
.select__wrapper .select__label {
	position: absolute;
	z-index: 2;
	padding: 0 4px;
    background-color: #fff;
	top: -10px;
	left: 8px;
	font-weight: 700;
	font-size: 13px;
}

label {
	margin-bottom: 16px;
	font-weight: 400;
}

.wpcf7-list-item {
	margin: 0 !important;
}

.wpcf7-list-item label {
	display: flex;
}

.wpcf7-list-item-label {
	margin-left: 8px;
	display: inline-block;
	font-size: inherit;
}

select {
	height: 46px;
	width: 100%;
	background-color: white;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
}

.select {
	display: block;
	width: 100%;
	overflow: hidden;
	height: 46px;
    line-height: 44px;
    padding-left: 12px;
	border: 1px solid #999;
    border-radius: 6px;
	color: #444;
}

.menu-638 {
	margin-top: 20px;
}

input[type="text"] {
	padding: 0 12px;
}

input[type="submit"] {
	width: 100%;
	background-color: #111;
	color: #f5f5f7;
}

input[type="submit"]:hover {
	background-color: #000;
}

.wpcf7 form.sent .wpcf7-response-output {
	padding: 4px 10px !important;
	background-color: #d7ffd9;
	background-color: #d8f5c8;
	border-radius: 6px;
	color: #2e7d32;
	color: #13633d;
    font-size: 15px;
}

.policy-accept {
	font-size: 12px;
	line-height: 16px;
}
/* Apply form --- end */

/* ---------------------------------------------- *\
   Contact --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Gallery --- start
\* ---------------------------------------------- */

/* Photos --- start */
.gallery {
	margin: 16px 0 0;
	overflow: hidden;
}

.gallery-wrapper {
	margin-left: -4px;
	margin-right: -4px;
}

.gallery figure {
	position: relative;
	margin: 4px 0 0;
	width: 33.333333333%;
	float: left;
	padding-left: 2px;
	padding-right: 2px;
}

.gallery .row {
	--bs-gutter-x: 2px;
}

.label__healed {
	position: absolute;
    top: 6px;
    left: 6px;
	display: inline-block;
    padding: 0 4px;
	background-color: rgba(0,0,0,.5);
    border-radius: 3px;
    line-height: 16px;
    font-size: 10px;
	color: #fff;
    box-shadow: 0px 1px 2px rgb(0 0 0 / 8%);
}
/* Photos --- end */


/* Vedeos --- start */
.text.video {
	margin-top: 16px;
	font-weight: 700;
}

.video-item {
	margin-top: 16px;
}

.video img {
	border-radius: 6px;
}

.video-title {
	margin-top: 8px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.video-play-circle {
	z-index: 10;
	display: inline-block;
	width: 40px;
	height: 40px;
    border-radius: 50%;
	background-color: rgba(0,0,0,.5);
}

.video .fas {
	z-index: 20;
	margin-left: 1px;
	color: #fff;
}

.modal__video-container {
	position: relative;
	margin: -16px -16px 16px;
    padding-bottom: 80%;
    padding-top: 0;
    height: 0;
    overflow: hidden;
}

.modal__video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.modal__video .modal-header {
	position: absolute;
	top: 20px;
	right: 20px;
	padding: 0;
	z-index: 3;
	border-bottom: 0;
}

.modal__video .btn-close {
	background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
    background-color: rgba(0,0,0,.5);
    opacity: 1;
    border-radius: 50%;
	padding: 13px;
}

.modal__video .modal-title {
	line-height: 1;
	font-size: 16px;
}

.modal__video .modal-body {
	padding: 0;
	background-color: #fff;
}

.modal__video video {
	margin: 0 0 -4px;
}

.modal__video iframe {
	margin: 0 !important;
	width: 100% !important;
	border-width: 1px 0 0 0 !important;
	border-radius: 0 !important;
}

.modal__video-description {
	padding: 16px;
}
/* Vedeos --- end */

/* ---------------------------------------------- *\
   Gallery --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Shop --- start
\* ---------------------------------------------- */
body.page-id-16,
body.page-id-854,
body.page-id-1377,
body.page-id-953,
body.page-id-1379 {
	background-color: #fff;
}

.page-id-854 .container-global,
.page-id-1377 .container-global,
.page-id-953 .container-global,
.page-id-1379 .container-global,
.page-id-953 .offcanvas-wrapper,
.page-id-854 .offcanvas-wrapper,
.page-id-1377 .offcanvas-wrapper,
.page-id-1379 .offcanvas-wrapper {
	max-width: 768px;
}

.shop {
	margin: 20px 0 0;
}

.shop .monolog {
	margin: 0 0 20px;
}

.monolog .answer {
	margin-top: 0;
}

.shop .answer {
	background-color: #efefef;
	box-shadow: unset;
}

.shop .answer:after {
	border-color: transparent transparent #efefef transparent;
	box-shadow: unset;
}

.shop .title-1 {
	margin: 0 0 21px;
}

.shop .title-2 {
	margin: 0;
}

.shop .row {
    --bs-gutter-x: 0;
}

.shop__catalog {
	margin: 0 0 32px;
}

.not-found {
	margin-top: 16px;
}

.shop__catalog .row {
	margin-left: 0;
	margin-right: 0;
	--bs-gutter-x: 0;
}

.product__wrapper {
	margin-top: -1px;
	border-top: 1px solid #e9e9e9;
	border-bottom: 1px solid #e9e9e9;
}

.product__wrapper {
	border-right: 1px solid #e9e9e9;
}

.product__wrapper:nth-child(4n+1) {
    border-left: 1px solid #e9e9e9;
}

.shop__catalog .post-edit-link {
	position: absolute;
	right: 12px;
	bottom: 12px;
}

.product__item {
	position: relative;
	height: 100%;
	padding: 12px;
}

.product__label-wrapper {
	position: absolute;
	z-index: 999;
	top: 12px;
	left: 12px;
}

.product__label {
	margin-right: 6px;
	padding: 0 4px;
	font-size: 11px;
	line-height: 17px;
	color: #fff;
	vertical-align: top;
}

.label_theme_new {
	background-color: #00b341;
}

.label_theme_top {
	background-color: #f54065;
}


.product__item li {
	margin-bottom: 0;
}

.product__item .nav-pills .nav-link {
	border-radius: 3px;
}

.product__item .nav-pills .nav-link.active {
    background-color: #f5f5f5;
	/* border: 1px solid #ccc; */
	border: 1px solid #bbb;
	color: initial;
}

.product__item .nav-link {
	margin-right: 5px;
    padding: 0 4px;
    /* border: 1px solid #ddd; */
    border: 1px solid #dedede;
	line-height: 18px;
	font-size: 12px;
	color: initial;
	cursor: pointer;
	transition: none;
}

.mt-16 {
	margin-top: 16px;
}

.product__photo img {
	border-radius: 0;
}

.product__info {
	padding: 0;
	/* box-shadow: 0px -1px 0px 0px rgb(0,0,0,.04); */
}

.product__info a {
	color: #262626;
}

.product__pricing {
	padding: 0;
}

.product__pricing ul {
	margin: 0;
	padding: 0;
}

.product__pricing li {
	margin: 0;
}

.product__pricing li:before {
	/* content: '';
	margin-left: 0;
	padding-top: 0;
	line-height: 0;
	font-size: 0;
	float: none; */
	display: none;
}

.product__title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	padding: 10px 0 4px;
	font-weight: 700;
	font-size: 13px;
    line-height: 16px;
}

.product_excerpt {
	display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
	margin-bottom: 12px;
	line-height: 17px;
    font-size: 13px;
}

.product__package {
	margin-bottom: 5px;
}

.product__package span {
	display: inline-block;
    margin-right: 6px;
    padding: 0 4px;
	border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 12px;
}

.product__price {
	margin-top: 6px;
	font-weight: 400;
}

.product__price .text-decoration-line-through {
	opacity: 0.5;
	font-size: 12px;
	vertical-align: top;
}

.product__price-discounted {
    margin-left: 4px;
}

.product__item a {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

/* Homepage Shop v1 --- start */
.shop-v1.title-1 {
	margin-bottom: 21px;
}

.home .shop-v1.shop__catalog .row,
.page-id-689 .shop-v1.shop__catalog .row,
.page-id-1388 .shop-v1.shop__catalog .row,
.page-id-1073 .shop-v1.shop__catalog .row {
	margin-left: -20px;
	margin-right: -20px;
}

.home .shop-v1.shop__catalog,
.page-id-689 .shop-v1.shop__catalog,
.page-id-1388 .shop-v1.shop__catalog,
.page-id-1073 .shop-v1.shop__catalog {
	margin: 0;
}

.home .shop-v1 .product__item,
.page-id-689 .shop-v1 .product__item,
.page-id-1388 .shop-v1 .product__item,
.page-id-1073 .shop-v1 .product__item {
	padding: 14px;
}

.home .shop-v1 .product__wrapper,
.page-id-689 .shop-v1 .product__wrapper,
.page-id-1388 .shop-v1 .product__wrapper,
.page-id-1073 .shop-v1 .product__wrapper {
	border-right: 1px solid #e9e9e9;
}

.home .shop-v1 .product__wrapper:nth-child(3n),
.page-id-689 .shop-v1 .product__wrapper:nth-child(3n),
.page-id-1388 .shop-v1 .product__wrapper:nth-child(3n),
.page-id-1073 .shop-v1 .product__wrapper:nth-child(3n) {
	border-right: none;
}

.home .shop-v1 .product__wrapper:nth-child(4n+1),
.page-id-689 .shop-v1 .product__wrapper:nth-child(4n+1),
.page-id-1388 .shop-v1 .product__wrapper:nth-child(4n+1),
.page-id-1073 .shop-v1 .product__wrapper:nth-child(4n+1) {
	border-left: unset;
}

.home .shop-v1 .product__label-wrapper,
.page-id-689 .shop-v1 .product__label-wrapper,
.page-id-1388 .shop-v1 .product__label-wrapper,
.page-id-1073 .shop-v1 .product__label-wrapper {
	top: 14px;
	left: 14px;
}
/* Homepage Shop v1 --- end */


/* Shop v2 --- start */
.shop .shop-v2 .row {
    --bs-gutter-x: 16px;
}

.shop__catalog.shop-v2 .row {
	margin-left: -8px;
	margin-right: -8px;
	--bs-gutter-x: 16px;
}

.shop .shop-v2 .title-1 {
	margin: 0;
}

.shop-v2 .product__wrapper {
	margin-top: 20px;
	border-right: none;
	border-top: none;
	border-bottom: none;
}

.shop-v2 .product__wrapper:nth-child(4n+1) {
    border-left: none;
}

.shop-v2 .product__wrapper:nth-child(2n+1) {
    border-right: none;
}

.shop-v2 .post-edit-link {
	-webkit-tap-highlight-color: unset;
	right: 4px;
	bottom: 0;
}

.shop-v2 .product__item {
	padding: 0;
}

.shop-v2 .product__label {
	border-radius: 3px;
}

.shop-v2 .product__label-wrapper {
	top: 6px;
	left: 6px;
}

.shop-v2 .product__photo-border {
	position: absolute;
	height: 100%;
	width: 100%;
	border: 1px solid rgb(0 0 0 / 13%);
	border-radius: 8px;
	z-index: 1;
}

.shop-v2 .product__photo img {
	border-radius: 8px;
}

.shop-v2 .product__info {
	padding: 0 6px;
}

.shop-v2 .product__title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	padding: 9px 0 2px;
	font-size: 13px;
	line-height: 17px;
}

.shop-v2 .product_excerpt {
	margin-bottom: 12px;
}

.shop-v2 .product__pricing {
	padding: 0 6px;
}

/* Homepage Shop v2 --- start */
.shop-v2.title-1 {
	margin-bottom: 0;
}

.home .shop-v2.shop__catalog,
.page-id-689 .shop-v2.shop__catalog,
.page-id-1073 .shop-v2.shop__catalog,
.page-id-1388 .shop-v2.shop__catalog,
.page-id-1445 .shop-v2.shop__catalog {
	margin: 0;
}

.home .shop-v2 .row,
.page-id-689 .shop-v2 .row,
.page-id-1388 .shop-v2 .row,
.page-id-1445 .shop-v2 .row,
.page-id-1073 .shop-v2 .row {
    --bs-gutter-x: 16px;
}
/* Homepage Shop v2 --- end */

/* Shop v2 --- end */


/* Product modal --- start */
.modal__product .label__new,
.modal__product .label__top {
	top: 16px;
	left: 16px;
	padding: 2px 6px;
	font-size: 14px;
}

.modal__product .modal-header {
	position: absolute;
	top: 20px;
	right: 20px;
	padding: 0;
	z-index: 3;
	border-bottom: 0;
}

.modal.modal__product .btn-close {
    position: relative;
	background: none;
	background-color: rgba(0,0,0,.5);
    width: 29px;
    height: 29px;
	border-radius: 50%;
    padding: 0;
    margin: 0;
    opacity: 1;
}

.modal.modal__product span.line-1 {
    position: absolute;
	top: 14px;
    right: 0;
	margin-right: 6px;
	background: #fff;
    width: 17px;
    height: 1px;
    transform: rotate(135deg);
}

.modal.modal__product span.line-2 {
    position: absolute;
	top: 14px;
    right: 0;
	margin-right: 6px;
	background: #fff;
    width: 17px;
    height: 1px;
    transform: rotate(45deg);
}

.modal__product .product__photo {
	position: relative;
	margin: 0 -20px;
	box-shadow: 0px 1px 0px 0px rgb(0 0 0 / 8%);
}

.modal__product .product__label-wrapper {
	top: 20px;
	left: 20px;
}

.modal__product .product__label {
	padding: 0 5px;
	line-height: 20px;
	font-size: 14px;
}

.modal__product .product__photo img {
	border-radius: 0;
}

.modal__product .modal-body {
	padding: 0 20px 4px;
	background-color: #fff;
}

.modal__product .product__title {
	padding: 16px 0 20px;
	line-height: 30px;
	font-size: 24px;
}

.modal__product .product__pricing {
	padding: 0 0 16px;
}

.modal__product .product__package span,
.product__item .modal__product .nav-link {
	padding: 1px 5px;
	font-size: 14px;
}

.modal__product .product__price {
	margin-top: 10px;
	line-height: 30px;
	font-size: 24px;
}

.modal__product .product__price .text-decoration-line-through {
	font-size: 14px;
}

.modal__product .product__description {
	margin-bottom: 16px;
}

.modal__product p {
	margin: 0 0 14px;
}
/* Product modal --- end */

/* ---------------------------------------------- *\
   Shop --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   FAQ --- start
\* ---------------------------------------------- */
.question {
	margin-top: 16px;
	font-weight: 700;
	line-height: 20px;
	font-size: 17px;
}

.answer {
	position: relative;
	display: inline-block;
	margin-top: 12px;
	padding: 10px 13px 11px;
	background-color: #fff;
    border-radius: 8px 8px 8px 0;
    box-shadow: 0 1px 1px rgb(0 0 0 / 14%);
}

.answer:after {
	content: '';
	position: absolute;
	left: 0;
	top: 100%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 8px 8px;
	border-color: transparent transparent #ffffff transparent;
	margin-top: -8px;
	margin-left: -8px;
    box-shadow: 0 1px 0 rgb(0 0 0 / 14%);
}

.answer a {
	border-bottom: none !important;
}

.questions.faq {
	margin: 32px 0;
}

.question.more {
	font-weight: 400;
	line-height: inherit;
	font-size: inherit;
}

.question.more a,
.more a {
	display: inline-block;
	/* border-bottom: 1px solid rgba(33,92,224,.3); */
}

.no-triangle .answer {
    border-radius: 8px;
}

.no-triangle .answer:after {
	content: none;
}
/* ---------------------------------------------- *\
   FAQ --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Footer --- start
\* ---------------------------------------------- */
.copyright {
	margin: 32px 0 16px;
	font-weight: 700;
}

.developer {
	margin-bottom: 32px;
}

.copyright a,
.developer a {
    border-bottom: 1px solid rgba(38,38,38,.3);
    color: #262626;
}
/* ---------------------------------------------- *\
   Footer --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Pages --- start
\* ---------------------------------------------- */
.page .content a,
.policy-accept  a {
	/* border-bottom: 1px solid rgba(0,85,165,.3); */
}

.page .section.first {
	margin-top: 20px;
}

.team .title-1 {
	margin-bottom: 0;
}

.page .title-2 {
	margin: 20px 0 8px;
}

.page-id-2 .title-2,
.page-id-253 .title-2,
.page-id-689 .title-2,
.page-id-1388 .title-2 {
	margin: -1px 0 8px;
}

.team .title-2 {
	margin: 6px 0 0;
}

ul {
	margin: -6px 0 12px;
	padding: 0 0 0 20px;
}

ul li:last-of-type {
	margin-bottom: 0;
}

li:before {
	content: '\2022';
	margin-left: -12px;
	padding-top: 4px;
	line-height: 10px;
	font-size: 18px;
	float: left;
}

.no li:before {
	color: #f41224;
}

.yes li:before {
	color: #0ab21b;
}

.mini__ul {
	margin: 8px 0 0;
	padding: 0 0 0 18px;
}

.mini__li {
	margin-bottom: 4px;
}


/* FAQ --- start */
.faq .title-2 {
	margin-top: 0 !important;
}

.faq .question {
	margin-top: 26px;
}

.faq .questions {
	margin-bottom: 26px;
}
/* FAQ --- end */


/* About --- start */
.about-photo {
	margin: 0 -20px 20px;
	position: relative;
    overflow: hidden;
    background: #111;
	height: 0;
    padding-top: calc( ( 846 / 600 ) * 100% );
}

.about-photo .placeholder {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.about .title-1 {
	margin-bottom: 4px;
}

.about-role {
	margin: 2px 0 12px;
}
/* About --- end */


/* Recommendations --- start */
.recommendations .title-1 {
	margin-top: 24px;
}

.recommendations .title-1:first-of-type {
	margin-top: 8px;
}
/* Recommendations --- end */


/* Reviews --- start */
.reviews-gallery {
    overflow: hidden;
	margin: 0 -8px 0;
}

.reviews-gallery figure {
	position: relative;
    width: 50%;
    float: left;
	margin: 16px 0 0;
	padding-left: 8px;
    padding-right: 8px;
}

.reviews-gallery img {
	border: 1px solid #ddd;
	border-radius: 8px;
}

.home .more,
.page .more {
	margin-top: 16px;
}

.question.more,
.reviews .more {
	margin-top: 22px;
}
/* Reviews --- end */


/* Error 404 --- start */
.error404 h1 {
    margin: 15vh 0 8px;
	line-height: normal;
	font-size: 40px;
	font-weight: 400;
}

.error__back {
	margin-bottom: 20vh;
}
/* Error 404 --- end */

/* ---------------------------------------------- *\
   Pages --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Card --- start
\* ---------------------------------------------- */
body.page-id-29,
body.page-id-1375,
body.page-id-95,
body.single-card {
	background-color: #111;
}

.card__body {
	margin: 0 -20px 20px;
    padding: 20px;
	background-color: #fff;
	border-radius: 14px;
}

.card__body p:first-of-type {
	margin-top: 13px;
}

.card__note {
	color: rgb(82, 82, 82);
}

.card__title {
	margin: 10px 0 0;
    line-height: 26px;
    font-size: 22px;
	font-weight: 700;
}

.card__my {
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid;
}

.card__item {
	position: relative;
	width: 100%;
	background-color: #eee;
	margin-top: 16px;
	border-radius: 8px;
}

.checked .card__item,
.single-card .checked .card__item {
	/* background-color: #ff4081; */
	background-color: #388e3c;
}

.card__item:after {
	content: "";
	display: block;
	padding-bottom: 100%;
}

.card__number {
	position: absolute;
	left: 16px;
	top: 16px;
	line-height: 16px;
	font-size: 16px;
	color: rgba(0,0,0,.5);
}

.card__number.card__discount {
	display: none;
}

.card__item svg {
	display: none;
}

.checked .card__item svg {
	display: inline-block;
	position: absolute;
	right: 16px;
	top: 16px;
	color: #fff;
}

.checked .card__number,
.checked .card__date {
	color: #fff;
}

.card__discount {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	font-size: 22px;
}

.card__discount-small {
	display: none;
}

.checked .card__discount {
	display: none;
}

.checked .card__discount-small {
	display: inline-block;
	font-size: 16px;
	font-weight: 700;
}

.card__date {
	position: absolute;
	left: 16px;
	bottom: 16px;
	line-height: 1;
}

.card__item-square {
	position: absolute;
	width: 100%;
	height: 100%;
}

.single-card .card {
	background-color: unset;
	border: unset;
}
/* ---------------------------------------------- *\
   Card --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Samopixel price --- start
\* ---------------------------------------------- */

.samipixel-pricelist ul {
	margin: 8px 0 0;
}

.samipixel-pricelist .title-2 {
	margin: 0;
}

.samipixel-price {
	line-height: 26px;
	font-size: 20px;
}

.samipixel-subtitle,
p.samipixel-subtitle {
	margin-top: 20px;
}
/* ---------------------------------------------- *\
   Samopixel price --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Dark theme --- start
\* ---------------------------------------------- */
body.site_theme_dark,
.site_theme_dark .menu,
.site_theme_dark .hero-img,
.site_theme_dark .menu__offcanvas .offcanvas {
	background-color: #060606;
}

.site_theme_dark .section,
.site_theme_dark .modal-content,
.site_theme_dark .modal__product .modal-body {
	background-color: #151515;
}

.site_theme_dark .section.hero {
	margin-top: 0;
}

.site_theme_dark a:link,
.site_theme_dark a:visited {
	color: #5482e9;
	color: #6b94f1;
	color: #699eff;
}

.site_theme_dark .menu__site-name,
.site_theme_dark a.menu__link,
.site_theme_dark .language-switcher .lang-item a,
.site_theme_dark .title-1,
.site_theme_dark .title-2,
.site_theme_dark thead th,
.site_theme_dark .team .mt-0,
.site_theme_dark .button_theme_telegram,
.site_theme_dark a.button_theme_telegram,
.site_theme_dark .button_theme_viber,
.site_theme_dark a.button_theme_viber,
.site_theme_dark .faq .question,
.site_theme_dark .product__title,
.site_theme_dark .copyright,
.site_theme_dark .modal-title {
	color: #fcfcfc;
	color: #f5f5f7;
}

body.site_theme_dark,
.site_theme_dark .menu__site-description,
.site_theme_dark .address,
.site_theme_dark .location .accordion-button:not(.collapsed),
.site_theme_dark .modal__offer .offers__item-period,
.site_theme_dark .offers__item a,
.site_theme_dark .price .nav-link,
.site_theme_dark .product__item .nav-link,
.site_theme_dark a.сall,
.site_theme_dark .developer a {
	color: #b6b6b6;
}

.site_theme_dark a.menu__link.link_color_red {
	color: #FF5252;
}

.site_theme_dark .language-switcher .current-lang a {
	color: rgb(255,255,255,.6);
}

.site_theme_dark .button_theme_outline-red,
.site_theme_dark a.button_theme_outline-red {
	background-color: rgb(213 117 186 / 4%);
	background-color: transparent;
	color: #db7cc0;
}

.site_theme_dark .offers__item .dot {
	background-color: #db7cc0;
}

.site_theme_dark .modal-content {
	box-shadow: 0 0 16px -10px #111;
}

.site_theme_dark .modal span.line-1,
.site_theme_dark .modal span.line-2 {
	background: #f5f5f7;
}

.site_theme_dark .modal-header {
	border-bottom: 1px solid #333;
}

.site_theme_dark .modal__offer .offers__item-period {
	border-top: 1px solid #333;
}

.site_theme_dark .modal-backdrop.show {
	opacity: 0.75;
	background-color: #000;
}

.site_theme_dark thead th {
	border-bottom: 1px solid #4e4e4e;
	font-weight: 400;
}

.site_theme_dark th,
.site_theme_dark td {
	border-color: #333;
}

.site_theme_dark .faq .question.more {
	margin-top: 26px;
}

.site_theme_dark .price .nav-link,
.site_theme_dark .product__item .nav-link {
	background-color: transparent;
	border: 1px solid #4e4e4e;
}

.site_theme_dark .price .nav-pills .nav-link.active,
.site_theme_dark .price .nav-pills .show > .nav-link {
    background-color: #f5f5f7;
    border: 1px solid #f5f5f7;
    color: initial;
}

.site_theme_dark .product__item .nav-pills .nav-link.active {
    background-color: #151515;
    border: 1px solid #adadad;
    color: #f5f5f7;
}

.site_theme_dark .team .fw-bold,
.site_theme_dark a.сall,
.site_theme_dark .product__title {
	font-weight: 400 !important;
}

.site_theme_dark input[type="text"],
.site_theme_dark input[type="email"],
.site_theme_dark input[type="tel"],
.site_theme_dark input[type="url"],
.site_theme_dark input[type="password"],
.site_theme_dark input[type="search"],
.site_theme_dark textarea,
.site_theme_dark .select {
	background: transparent;
	border: 1px solid #4e4e4e;
	color: #f5f5f7;
}

.site_theme_dark input[type="text"]:focus,
.site_theme_dark input[type="email"]:focus,
.site_theme_dark input[type="tel"]:focus,
.site_theme_dark input[type="url"]:focus,
.site_theme_dark input[type="password"]:focus,
.site_theme_dark input[type="search"]:focus,
.site_theme_dark textarea:focus {
	border: 1px solid #777;
}

.site_theme_dark .select__wrapper .select__label {
	background-color: transparent;
    backdrop-filter: blur(10px);
	font-weight: 400;
}

.site_theme_dark input[type="submit"] {
	background-color: transparent;
    border: 1px solid;
	font-weight: 500;
	color: #db7cc0;
}

.site_theme_dark .wpcf7 form.sent .wpcf7-response-output {
	background-color: #7cdb97;
	color: #262626;
}

.site_theme_dark span.wpcf7-not-valid-tip,
.site_theme_dark .wpcf7 form .wpcf7-response-output {
	color: #e56363 !important;
}

.site_theme_dark .faq .question {
	margin-top: 32px;
	font-size: inherit;
    font-weight: 400;
}

.site_theme_dark .answer {
	background-color: #262626;
	color: #b1b1b1;
}

.site_theme_dark .answer:after {
	border-color: transparent transparent #262626 transparent;
}


.page-id-1388.site_theme_dark .shop-v1 .product__wrapper,
.site_theme_dark .product__wrapper,
.site_theme_dark .product__wrapper:nth-child(2n+1),
.page-id-1388.site_theme_dark .shop-v1 .product__wrapper:nth-child(2n+1) {
	border-color: #333;
}


.site_theme_dark .shop-v2 .product__photo-border {
	border: none;
}

.site_theme_dark .modal__product .modal-header {
	border-bottom: none;
}

.site_theme_dark .developer a {
	border-bottom: 1px solid rgba(182,182,182,.3);
}

/* ---------------------------------------------- *\
   Dark theme --- end
\* ---------------------------------------------- */


/* ---------------------------------------------- *\
   Responsive
\* ---------------------------------------------- */
@media (max-width: 574px) {
	
	body,
	body.single-card {
		line-height: 18px;
		font-size: 14px;
	}
	
	.container-global {
		padding-left: 16px;
		padding-right: 16px;
	}

	/* Общие стили модальных окон --- начало */
	.modal-backdrop.show,
	.page-id-14 .modal-backdrop.show,
	.page-id-16 .modal-backdrop.show,
	.page-id-20 .modal-backdrop.show,
	.single-card .modal-backdrop.show {
		opacity: 0.6;
		background-color: #111;
	}

	/* .modal {
		padding-right: 17px;
	} */

	.menu__modal .modal-header {
		padding: 1rem 20px;
		border-bottom: none;
	}

	.modal-dialog {
		margin: 16px;
	}
	
	.modal-header {
		padding: 0 0 0 16px;
	}
	
	.modal .btn-close {
		padding: 16px;
	}
	
	.modal span.line-1,
	.modal span.line-2 {
		margin-right: 16px;
	}

	.modal-body {
		padding: 16px 16px 4px;
	}
	
	.modal-footer {
		padding: 16px;
	}
	
	.modal__product.show ~ .modal-backdrop.show {
		opacity: 0.74;
	}
	/* Общие стили модальных окон --- конец */
	
	/* Меню offcanvas --- начало */
	.menu__offcanvas {
		max-width: 574px;
		margin: 0 auto;
		height: auto;
	}
	
	.menu__offcanvas .offcanvas-header {
		padding: 16px;
	}
	
	.menu__offcanvas .offcanvas-body {
		padding: 8px 16px 16px;
	}
	
	.menu__offcanvas span.line-1,
	.menu__offcanvas span.line-2 {
		margin-right: 10px;
	}
	/* Меню offcanvas --- конец */
	
	/* Мини hero --- начало */
	.section.hero {
		margin: 0 -16px 0;
	}
	
	.hero-img {
		background: #eee;
		border-top-left-radius: 0;
		border-top-right-radius: 0;
	}

	.hero-img-wrapper {
		margin: 0 -16px 16px;
	}
	
	.hero-img img {
		border-top-left-radius: 0;
		border-top-right-radius: 0;
	}
	
	.hero .title-1 {
		padding: 20px;
	}
	/* Мини hero --- начало */

	/* Общие стили секций --- начало */
	.section {
		margin: 4px -16px 0;
		padding: 16px;
		border-radius: 0;
		box-shadow: 0 1px 1px rgb(0 0 0 / 6%);
	}

	.section.section-divider {
		margin: 16px -16px 0;
	}
	
	.container-global .section:first-of-type {
		margin-top: 0;
	}
	
	.hero .title-1,
	.title-1,
	a.сall,
	.modal__product .product__title,
	.modal__product .product__price {
		line-height: 26px;
		font-size: 20px;
	}

	.question,
	.title-2,
	.modal-title {
		line-height: 20px;
		font-size: 16px;
	}
	
	a.сall {
		margin: 10px 0 0;
	}
	
	a.сall:last-of-type {
		margin: 6px 0 0;
	}
	
	button,
	.button,
	a.button,
	input[type="button"],
	input[type="reset"],
	input[type="submit"] {
		margin-top: 16px;
	}
	
	.mb-20 {
		margin-bottom: 16px;
	}
	
	.select__wrapper {
		margin-top: 7px;
	}
	
	.select__wrapper .select__label,
	.select__wrapper .select__label {
		font-size: 13px;
	}
	
	th,
	td {
		padding: 6px 0 6px 16px !important;
	}
	
	.loyalty-program a {
		margin-top: 20px;
	}
	
	.faq .questions {
		margin-bottom: 26px;
	}
	
	.question,
	.faq .question {
		margin-top: 20px;
	}
	
	.hero .question {
		margin-top: 20px;
	}
	
	.answer {
		margin-top: 10px;
		padding: 8px 9px 9px;
	}
	
	.reviews .answer {
		margin-top: 32px;
	}

	.question.more {
		margin-top: 22px;
	}
	
	.title-1 {
		margin: -2px 0 10px;
	}
	
	.price .title-1 {
		margin-bottom: 8px !important;
	}
	
	.team .title-1 {
		margin-bottom: 0;
	}
	
	.about .title-1 {
		margin-bottom: 8px;
	}
	
/* 	.price ul {
		margin: 12px 0 0 !important;
	} */
	
	.recommendations .title-1:first-of-type {
		margin-top: 0;
	}
	
	/* .page li {
		margin-bottom: 6px;
	} */
	
	p.mt-10 {
		margin-top: 10px;
	}
	
	ul {
		margin: -6px 0 13px;
	}
	
	li:before {
		padding-top: 5px;
	}
	
	/* Offers --- start */
	.offers__item .dot {
		margin-top: 5px;
	}

	.offers .offers__item {
		margin-top: 12px;
	}
	/* Offers --- end */

	/* Shop v1 --- start */
	.shop {
		margin: 16px 0 0;
	}
	.catalog {
		margin: 20px -20px 32px;
	}
	
	.shop .title-1 {
		margin: 0 0 17px;
	}
	
	.page-id-16 .copyright {
		margin: 36px 0 16px;
	}
	
	.shop__catalog .row {
		margin-left: -16px;
		margin-right: -16px;
	}
	
	.product__wrapper:nth-child(4n+1) {
		border-left: unset;
	}
	
	.home .shop-v1 .product__wrapper,
	.page-id-689 .shop-v1 .product__wrapper,
	.page-id-1388 .shop-v1 .product__wrapper,
	.page-id-1073 .shop-v1 .product__wrapper,
	.product__wrapper {
		border-right: unset;
	}

	.home .shop-v1 .product__wrapper:nth-child(2n+1),
	.page-id-689 .shop-v1 .product__wrapper:nth-child(2n+1),
	.page-id-1388 .shop-v1 .product__wrapper:nth-child(2n+1),
	.page-id-1073 .shop-v1 .product__wrapper:nth-child(2n+1),
	.product__wrapper:nth-child(2n+1) {
		border-right: 1px solid #e9e9e9;
	}
	
	.product__info {
		padding: 0;
	}
	
	.product__title {
		padding: 9px 0 2px;
	}
	
	.product_excerpt {
		margin-bottom: 11px;
		line-height: 15px;
		font-size: 12px;
	}
	
	.product__pricing {
		padding: 0;
	}
	
	.product__pricing ul {
		margin: 0;
	}

	.product__pricing li {
		margin-bottom: 0;
	}
	
	.modal__product .modal-header {
		top: 16px;
		right: 16px;
	}
	
	.modal.modal__product .btn-close {
		padding: 0;
	}

	.modal__product .modal-body {
		padding: 0 16px;
	}
	
	.modal__product .product__photo {
		margin: 0 -16px;
	}

	.modal__product .product__package span,
	.product__item .modal__product .nav-link
	.modal__product .label__new,
	.modal__product .label__top {
		line-height: 19px;
		font-size: 15px;
	}

	.modal__product .product__label-wrapper {
		top: 16px;
		left: 16px;
	}
	
	.modal__product .product__title {
		padding: 16px 0;
	}
	
	.modal__product .product__price {
		margin-top: 8px;
	}
	
	/* Homepage Shop v1 --- start */
	.home .shop-v1.title-1,
	.page-id-689 .shop-v1.title-1,
	.page-id-1073 .shop-v1.title-1,
	.page-id-1388 .shop-v1.title-1 {
		margin-bottom: 17px;
	}
	
	.home .shop-v1.shop__catalog .row,
	.page-id-689 .shop-v1.shop__catalog .row,
	.page-id-1388 .shop-v1.shop__catalog .row,
	.page-id-1073 .shop-v1.shop__catalog .row {
		margin-left: -16px;
		margin-right: -16px;
	}
	
	.home .shop-v1 .product__item,
	.page-id-689 .shop-v1 .product__item,
	.page-id-1388 .shop-v1 .product__item,
	.page-id-1073 .shop-v1 .product__item {
		padding: 12px;
	}
	
	.home .shop-v1 .product__label-wrapper,
	.page-id-689 .shop-v1 .product__label-wrapper,
	.page-id-1388 .shop-v1 .product__label-wrapper,
	.page-id-1073 .shop-v1 .product__label-wrapper {
		top: 12px;
		left: 12px;
	}
	
	/* .home .shop-v1 .product__wrapper:nth-child(4n+1),
	.page-id-1073 .shop-v1 .product__wrapper:nth-child(4n+1) {
		border-left: unset;
	} */
	
	.home .shop-v1 .product__wrapper,
	.page-id-1073 .shop-v1 .product__wrapper {
		border-right: unset;
	}
	
	.home .shop-v1 .product__wrapper:nth-child(2n+1),
	.page-id-1073 .shop-v1 .product__wrapper:nth-child(2n+1) {
		border-right: 1px solid #e9e9e9;
	}
	/* Homepage Shop v1 --- end */
	/* Shop v1 --- end */

	/* Shop v2 --- start */
	.shop-v2 .product__wrapper {
		margin-top: 16px;
		border-right: none;
	}

	.shop-v2 .product__wrapper:nth-child(4n+1) {
		border-left: none;
	}
	
	.shop-v2 .product__info {
		padding: 0 4px;
	}
	
	.shop-v2 .product__pricing {
		padding: 0 4px;
	}
	
	.shop-v2 .product__pricing {
		padding: 0 4px;
	}
	
	.shop-v2 .modal__product .product__pricing {
		padding: 0 0 16px;
	}
	/* Homepage Shop v2 */
	.shop-v2.title-1 {
		margin-bottom: 0;
	}

	.home .shop-v2 .product__wrapper:nth-child(3n+1),
	.page-id-253 .shop-v2 .product__wrapper:nth-child(3n+1),
	.page-id-689 .shop-v2 .product__wrapper:nth-child(3n+1),
	.page-id-1388 .shop-v2 .product__wrapper:nth-child(3n+1) {
		border-left: none;
	}
	/* Homepage */
	/* Shop v2 --- end */
	

	/* Страница об авторе */
	.about-photo {
		margin: 20px 0;
		border-radius: 8px;
		background: #eee;
	}

	.about-photo img {
		border-radius: 8px;
	}
	
	.about-role {
		margin: 6px 0 16px;
	}
	
	
	/* Команда */
	.team .title-2 {
		margin-top: 8px;
	}
	
	.team img {
		margin-top: 16px;
	}
	
	/* Галерея */
	.gallery {
		margin: 14px -16px 0;
	}
	
	.gallery-wrapper {
		margin-left: -5px;
		margin-right: -5px;
	}

	.gallery a:hover {
		cursor: zoom-in;
	}
	
	.gallery figure {
		margin: 2px 0 0;
		padding-left: 1px;
		padding-right: 1px;
	}
	
	.label__healed {
		padding: 2px 5px;
		font-size: 11px;
	}

	.video-item {
		margin-top: 20px;
	}

	.modal__video .modal-body {
		padding: 0;
	}
	
	.modal__video-container {
		margin: -16px -20px 16px;
	}
	
	.modal__video-description {
		padding: 20px;
	}

	/* Карта лояльности */
	.card__body {
		margin: 0 0 16px;
		padding: 16px;
	}

	.card__title {
		line-height: 25px;
		font-size: 21px;
	}
	
	.card__number {
		left: 8px;
		top: 8px;
		line-height: 12px;
		font-size: 12px;
	}

	.checked .card__discount-small {
		font-size: 12px;
	}

	.checked .card__item svg {
		top: 8px;
		right: 8px;
		height: 12px;
		width: 12px;
	}
	
	.card__discount {
		font-size: 21px;
	}
	
	.card__date {
		bottom: 8px;
		left: 8px;
		font-size: 12px;
	}
	
	/* Прайс Самоходного Пикселя */
	
	td.padding-top-0 {
		padding-top: 0 !important;
	}
	
	.samipixel-subtitle,
	p.samipixel-subtitle {
		margin-top: 20px;
	}
}