@font-face {
    font-family: "ErasDemiC";
    src: url("../fonts/ErasLightC.otf") format("truetype");
    font-weight: normal;
    font-style: normal;
}

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

/* make sure to set some focus styles for accessibility */
:focus {
    outline: 0;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
    font-family: 'ErasDemiC', sans-serif !important;
    background: #fff;
    min-height: 100vh;
    overflow-x: hidden;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

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

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

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

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

textarea {
    overflow: auto;
    vertical-align: top;
    resize: vertical;
}

/**
 * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 */

audio,
canvas,
video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
    max-width: 100%;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

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

/**
 * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
 * Known issue: no IE 6 support.
 */

[hidden] {
    display: none;
}

/**
 * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
    font-size: 100%; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
    -ms-text-size-adjust: 100%; /* 2 */
    overflow-x: hidden;
}

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */

a:focus {
    outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

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

/**
 * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
 * 2. Improve image quality when scaled in IE 7.
 */

img {
    border: 0; /* 1 */
    -ms-interpolation-mode: bicubic; /* 2 */
}

/**
 * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
 */

figure {
    margin: 0;
}

/**
 * Correct margin displayed oddly in IE 6/7.
 */

form {
    margin: 0;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct color not being inherited in IE 6/7/8/9.
 * 2. Correct text not wrapping in Firefox 3.
 * 3. Correct alignment displayed oddly in IE 6/7.
 */

legend {
    border: 0; /* 1 */
    padding: 0;
    white-space: normal; /* 2 */
    *margin-left: -7px; /* 3 */
}

/**
 * 1. Correct font size not being inherited in all browsers.
 * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
 *    and Chrome.
 * 3. Improve appearance and consistency in all browsers.
 */

button,
input,
select,
textarea {
    font-size: 100%; /* 1 */
    margin: 0; /* 2 */
    vertical-align: baseline; /* 3 */
    *vertical-align: middle; /* 3 */
}

/**
 * Address Firefox 3+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

button,
input {
    line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */

button,
select {
    text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE 6.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button; /* 2 */
    cursor: pointer; /* 3 */
    *overflow: visible;  /* 4 */
}

/**
 * Re-set default cursor for disabled elements.
 */

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

/**
 * 1. Address box sizing set to content-box in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 * 3. Remove excess padding in IE 7.
 *    Known issue: excess padding remains in IE 6.
 */

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
    *height: 13px; /* 3 */
    *width: 13px; /* 3 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; /* 2 */
    box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */

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

/**
 * Remove inner padding and border in Firefox 3+.
 */

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

/**
 * 1. Remove default vertical scrollbar in IE 6/7/8/9.
 * 2. Improve readability and alignment in all browsers.
 */

textarea {
    overflow: auto; /* 1 */
    vertical-align: top; /* 2 */
}

/**
 * Remove most spacing between table cells.
 */

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

html,
button,
input,
select,
textarea {
    color: #222;
}


::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

img {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

a {
    text-decoration: none;
    color: inherit;
}

.content {
    position: relative;
    margin: 0 auto;
    width: 1170px;
}

.header {
    position: relative;
    z-index: 5;
    color: #fff;
}

.header-top {
	padding: 10px 0;
	background-color: #740049;
}

.header-top__city-choice {
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-style: normal;
	font-weight: normal;
	font-size: 16px;
	cursor: pointer;
}

.header-top__city-choice-text {
	margin-right: 10px;
}

.header-top__row {
	position: relative;
	height: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.header-top__search-input {
	width: 150px;
	height: 100%; 
	font-style: normal;
	font-weight: normal;
	font-size: 16px;
	color: #fff;
	background-color: transparent;
	border: none;
	border-bottom: 1px solid #fff;
}

.header-top__search-input::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #fff;
  opacity: 1; /* Firefox */
  font-family: 'ErasDemiC', sans-serif !important;
}

.header-top__search-input:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #fff;
  font-family: 'ErasDemiC', sans-serif !important;
}

.header-top__search-input::-ms-input-placeholder { /* Microsoft Edge */
  color: #fff;
  font-family: 'ErasDemiC', sans-serif !important;
}

.header-top__search svg {
	margin-left: 10px;
	fill: #fff;
}

.header-top__search {
	margin: 0 auto;
	padding: 10px;
	display: flex;
	justify-content: flex-start;
	align-items: center
}

.header-top__phone {
	margin: 0 auto;
}

.header-bottom {
	padding: 10px 0;
	color: #000;
	border-bottom: 1px solid #740049;
}

.header-bottom__row {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.header-bottom__menu-container {
	margin-left: 30px;
	margin-right: auto;
	height: 60px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.header-bottom__menu {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	height: 100%;
}

.header-bottom__menu-item {
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	height: 100%;
	margin-right: 80px;
	font-weight: normal;
	font-style: normal;
	font-size: 16px;
	color: #000;
	transition: .3s;
}

.header-bottom__menu-item-wrap {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 8px;
}

.header-bottom__menu-item-wrap > .header-bottom__menu-list {
	left: 100%;
	top: 0;
}

.header-bottom__menu-item-wrap > svg {
	margin-left: 10px;
	flex-shrink: 0;
}

.header-bottom__menu-item:hover > .header-bottom__menu-list {
	/* padding: 10px; */
	max-height: 500px;
	visibility: visible;
}

.header-bottom__menu-item-wrap:hover > .header-bottom__menu-list {
	/* padding: 10px; */
	max-height: 500px;
	visibility: visible;
}

.header-bottom__menu-list {
	position: absolute;
	top: 70px;
	left: -100px;
	width: 300px;
	/* padding: 0 10px; */
	/* max-height: 0; */
	/* overflow: hidden; */
	visibility: hidden;
	/* opacity: 0; */
	/* transition: .3s; */
	/* transition: visibility 0s linear 0s, opacity 300ms; */
	transition: visibility 0s linear 300ms, opacity 300ms;
	background-color: #fff;
	border: 1px solid #740049;
	border-top: none;
}

.header-bottom__menu-list-item {
	display: block;
	color: #000;
}

.header-bottom__menu-list-item:hover {
	color: #740049;
}

.header-bottom__menu-item svg {
	margin-left: 10px;
	stroke: currentColor;
}

.header-bottom__menu-item:hover {
	color: #740049;
}

.header-bottom__menu-item:last-child {
	margin-right: 0;
}

.header-bottom__basket svg {
	margin-right: 10px;
	fill: #740049;
	flex-shrink: 0;
}

.header-bottom__basket {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.header-bottom__basket-properties {
	flex-shrink: 0;
	font-style: normal;
	font-size: 16px;
	color: #000;
}

.header-bottom__basket-count {
	margin-bottom: 5px;
	font-size: 14px;
	color: #740049;
}

.header-bottom__logo img {
	height: 60px;
}

.header-top__login {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 120px;
	height: 30px;
	border: 1px solid #fff;
	transition: .3s;
	border-radius: 120px;
	cursor: pointer;
}

.header-top__login:hover {
	background-color: #fff;
	color: #740049;
}

.header-top__city-choice-list {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 5;
	padding: 0 10px;
	max-height: 0;
	overflow: hidden;
	transition: .3s;
}

.header-top__city-choice-list-item {
	padding: 10px;
	font-weight: normal;
	font-style: normal;
	font-size: 14px;
	color: #fff;
	background-color: #740049;
	cursor: pointer;
	transition: .3s;
}

.header-top__city-choice-list-item:hover {
	color: #740049;
	background-color: #fff
}

.header-top__city-choice-container_opened .header-top__city-choice-list {
	max-height: 300px;
	padding: 10px;
}

.main-firstscreen__slide {
	height: 368px;
}

.main-firstscreen__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.main-firstscreen__slider-dots .slick-dots {
	display: flex;
	justify-content: center;
	align-items: center;
}

.main-firstscreen__slider-dots .slick-dots button {
	width: 15px;
	height: 15px;
	margin: 0 10px;
	font-size: 0;
	padding: 0;
	border-radius: 50%;
	border: 1px solid #740049;
	background-color: transparent;
	transition: .3s;
}

.main-firstscreen__slider-dots .slick-dots .slick-active button {
	background-color: #740049;
}

.catalog-hits {
	padding: 60px 0;
}

.catalog-hits__button {
	margin: 0 auto;
	margin-top: 35px;
	width: 240px;
	height: 45px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 2px solid #740049;
	background-color: transparent;
	color: #740049;
	font-style: normal;
	font-weight: 900;
	font-size: 16px;
	transition: .3s;
}

.catalog-hits__button:hover {
	background-color: #740049;
	color: #fff;
}

.catalog-item {
	width: 100%;
	height: 325px;
	overflow: hidden;
	border: 1px solid #ececec;
	transition: .3s;
}

.catalog-item:hover {
	height: 375px;
}

.catalog-item__image-container {
	position: relative;
	width: 100%;
	height: 200px;
}

.catalog-item__image {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	transition: .3s;
}

.catalog-item__nameplate {
	padding: 5px 10px;
	position: absolute;
	top: 10px;
	left: 0;
	display: inline-block;
	font-style: normal;
	font-weight: normal;
	font-size: 14px;
	color: #fff;
	background-color: #740049;
	border-radius: 0 10px 10px 0;
}

.catalog-item__name {
	margin-top: 15px;
	min-height: 32px;
	font-weight: normal;
	font-style: normal;
	font-size: 16px;
	text-transform: uppercase;
	color: #000;
	transition: .3s;
}

.catalog-item__info-container {
	padding: 10px;
	height: 165px;
	overflow: hidden;
	border-top: 1px solid #ececec;
	transition: .3s;
}

.catalog-item__type {
	margin-top: 10px;
	font-weight: normal;
	font-style: normal;
	font-size: 14px;
	text-transform: uppercase;
	color: #999;
}

.catalog-item__price {
	margin-top: 10px;
	font-weight: bold;
	font-style: normal;
	font-size: 18px;
	color: #000;
}

.catalog-item__add2basket {
	margin-top: 20px;
	width: 100%;
	height: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 2px solid #740049;
	background-color: transparent;
	font-weight: normal;
	font-style: normal;
	font-size: 14px;
	color: #740049;
	transition: .3s;
	cursor: pointer;
}

.catalog-item__add2basket:hover {
	background-color: #740049;
	color: #fff;
}

.catalog-hits__caption {
	margin: 25px 0;
	font-size: 24px;
	font-style: normal;
	font-weight: bold;
	text-align: center;
}

.catalog-row {
	margin-bottom: 30px;
	min-height: 375px;
}

.about-product {
	padding: 60px 0;
	font-size: 14px;
    line-height: 1.42857143;
    color: #000;
    font-style: normal;
	font-weight: normal;
}

.about-product ol {
	padding-left: 20px;
}

.about-product ol li {
	list-style: decimal;
}

.about-product__caption {
	font-size: 24px;
	margin-bottom: 15px;
	font-weight: bold;
}

.footer {
	background-color: #740049;
	padding: 30px 0;
	color: #fff;
	font-weight: 300;
	font-style: normal;
	font-size: 16px;
}

.footer__menu-caption {
	display: block;
	margin-bottom: 15px;
	font-weight: 900;
	font-style: normal;
	font-size: 18px;
}

.footer__menu-item {
	display: block;
	margin-bottom: 10px;
	font-weight: 300;
	font-style: normal;
	font-size: 14px;
}

.footer__menu-item:hover {
	text-decoration: underline;
}

.footer__info-caption {
	display: block;
	margin-bottom: 15px;
	font-weight: 900;
	font-style: normal;
	font-size: 18px;
}

.footer__address {
	font-weight: 300;
	font-style: normal;
	font-size: 14px;
}

.footer__socials-container {
	margin-bottom: 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.footer__social-item {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 35px;
	height: 35px;
	background-color: transparent;
	border-radius: 50%;
	color: #fff;
	transition: .3s;
	border: 2px solid #fff;
}

.footer__social-item:hover {
	background-color: #fff;
	color: #740049
}

.footer__social-item svg {
	fill: currentColor;
}

.footer__contact {
	margin-bottom: 40px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.footer__contact svg {
	flex-shrink: 0;
	margin-right: 10px;
}

.breadcrumb > li + li:before {
    padding: 0 5px;
    color: #ccc;
    content: "/\00a0";
}

.breadcrumb li a {
    color: #242424;
}

.breadcrumb > .active {
    color: #C3C3C3;
}

.breadcrumb li {
	display: inline-block;
}

.breadcrumbs-main {
	padding: 25px 0 25px;
}

.about-page__caption {
	margin-bottom: 25px;
	font-size: 24px;
    font-style: normal;
    font-weight: bold;
}

.about-page {
	padding-bottom: 60px;
}

#loginBox {
    position: absolute;
    top: 44px;
    right: 0;
   	opacity: 0;
   	visibility: hidden;
   	transition: .3s;
    z-index: 29;
}

#loginBox.opened {
	opacity: 1;
	visibility: visible;
}

#loginForm {
	padding: 15px;
    width: 200px;
    background: #fff;
    border: 1px solid #d6d6d6;
}

#loginForm fieldset {
    margin: 0 0 15px;
    display: block;
    border: 0;
    padding: 0;
}

#body label {
    margin: 10px 0 0;
    display: block;
    float: left;
    color: rgba(0,0,0,0.74);
    font-size: 14px;
    font-weight: 500;
}

#loginForm input {
    width: 100%;
    border: 1px solid #DADADA;
    color: #999;
    background: #FFF;
    padding: 6px;
    font-size: .8125em;
    -webkit-apperance: none;
}

#registerBox {
	display: block;
	color: #337ab7;
	font-size: 12px;
	margin-top: 10px;
}

#registerBox:hover {
	text-decoration: underline;
}

#loginForm input[type="button"] {
    width: 100%;
    border: 1px solid #740049;
    color: #740049;
    background: #FFF;
    padding: 6px;
    font-size: 12px;
    -webkit-apperance: none;
    transition: .3s;
}

#loginForm input[type="button"]:hover {
	background-color: #740049;
	color: #fff;
}

.personal-page__info-block-title {
	font-weight: bold;
	font-style: normal;
	font-size: 16px;
	color: #000;
	margin-bottom: 10px;
}

.personal-page__info-block-value {
	font-weight: bold;
	font-style: normal;
	font-size: 18px;
	color: #999;
	margin-bottom: 10px;
}

.personal-page__caption-row {
	margin-bottom: 30px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.personal-page__button {
	width: 190px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: normal;
	font-style: normal;
	font-size: 14px;
	color: #740049;
	border: 2px solid #740049;
	transition: .3s;
}


.personal-page__button:first-child {
	margin-right: 30px;
}

.personal-page__caption {
	font-weight: bold;
	font-style: normal;
	font-size: 28px;
	color: #000;
}

.personal-page {
	padding: 60px 0;
}

.personal-page__info-block {
	margin-bottom: 30px;
}

.personal-page__label {
	display: block;
	font-weight: bold;
	font-style: normal;
	font-size: 16px;
	color: #000;
	margin-bottom: 10px;
}

.personal-page__input-container {
	margin-bottom: 30px;
}

.personal-page__input {
	width: 100%;
	height: 50px;
	padding-left: 15px;
	font-size: 16px;
	color: #000;
	border: 1px solid #ccc;
}

.personal-page__form {
	margin-top: 40px;
}

.personal-page__button_save {
	width: 300px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 2px solid #740049;
	color: #740049;
	transition: .3s;
	background-color: #fff;
}

.personal-page__button:hover {
	color: #fff;
	background-color: #740049;
}

.header-bottom__personal-page {
	margin-right: auto;
}

.header-top__city-choice-list {
	left: -10px;
}

.header-bottom__menu-button-line::before {
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-6px);
    display: block;
    width: 26px;
    height: 3px;
    border-radius: 4px;
    content: "";
    background-color: #740049;
}

.header-bottom__menu-button-line {
    position: relative;
    top: 1px;
    width: 26px;
    height: 3px;
    background-color: #740049;
    border-radius: 4px;
    transition-delay: 0.35s;
    transition: 0.3s;
}

.header-bottom__menu-button {
    margin-left: 25px;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #FFFFFF;
    border: 1px solid #740049;
    box-sizing: border-box;
    cursor: pointer;
    z-index: 100;
}

.header-bottom__menu-button-line::after {
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(6px);
    display: block;
    width: 26px;
    height: 3px;
    content: "";
    background-color: #740049;
}

.header-bottom__menu-button_active .header-bottom__menu-button-line {
    transform: rotate(45deg);
}

.header-bottom__menu-button_active .header-bottom__menu-button-line::before {
    transform: translateY(0) rotate(90deg);
}

.header-bottom__menu-button_active .header-bottom__menu-button-line::after {
    opacity: 0;
    transform: translateY(0) rotate(90deg);
}

.news-page__caption {
	margin-bottom: 40px;
	font-weight: bold;
	font-style: normal;
	font-size: 28px;
	color: #000;
}

.news-item {
	padding: 30px 0;
	border-bottom: 3px solid #740049;
}

.news-item__image-container {
	width: 100%;
	height: 400px;
	margin-bottom: 30px;
}

.news-item__image {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.news-item__date {
	font-weight: bold;
	font-style: normal;
	font-size: 18px;
	color: #000;
	margin-bottom: 20px;
}

.news-item__text-container {
	font-size: 16px;
	color: #999;
	font-weight: normal;
	font-style: normal;
}

.news-item__link {
	display: block;
	margin-top: 15px;
	font-size: 14px;
	font-style: normal;
	font-weight: normal;
	color: #337ab7;
}

.news-item__link:hover {
	text-decoration: underline;
}

.news-page {
	padding-bottom: 60px;
}

.contacts-page__caption {
    margin-bottom: 40px;
    font-weight: bold;
    font-style: normal;
    font-size: 28px;
    color: #000;
}

.contacts-page__address-caption {
	margin-bottom: 30px;
    font-weight: bold;
    font-style: normal;
    font-size: 24px;
    color: #000;
}

.contacts-page__address {
	margin-bottom: 20px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-size: 16px;
	color: #000;
	font-weight: bold;
	font-style: normal;
}

.contacts-page__phone {
	margin-bottom: 20px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-size: 16px;
	color: #000;
	font-weight: bold;
	font-style: normal;
}

.contacts-page__phone svg {
	margin-right: 15px;
	flex-shrink: 0;
}

.contacts-page__address svg {
	flex-shrink: 0;
	margin-right: 15px;
}

.contacts-page__map {
	width: 100%;
	height: 500px;
}

.contacts-page {
	padding-bottom: 30px;
}

.catalog-page__caption {
	margin-bottom: 40px;
    font-weight: bold;
    font-style: normal;
    font-size: 28px;
    color: #000;
}

.catalog-category {
	display: block;
	margin-bottom: 30px;
	border: 1px solid #999;
	transition: .3s;
	cursor: pointer;
}

.catalog-category:hover {
	border-color: #740049;
}

.catalog-category:hover .catalog-category__image {
	transform: scale(1.3);
}

.catalog-category__image-container {
	width: 100%;
	height: 195px;
	overflow: hidden;
}

.catalog-category__image {
	width: 100%;
	height: 195px;
	object-fit: contain;
	object-position: top;
	transition: .5s;
}

.catalog-category__name {
	margin: 20px 0;
    font-weight: bold;
    font-style: normal;
    font-size: 18px;
    color: #000;
    text-align: center;
}

.catalog__category-list {
	border: 1px solid #740049;
	padding: 10px;
	margin-bottom: 30px;
}

.catalog__category-list-item {
	display: block;
	margin-bottom: 15px;
	font-weight: normal;
	font-style: normal;
	font-size: 18px;
	color: #000;
	transition: .3s;
}

.catalog__category-list-item:hover {
	color: #999;
}

.catalog__category-list-item_active {
	color: #740049;
}

.catalog-detail__image {
	margin-bottom: 25px;
	width: 100%;
	height: 425px;
	object-fit: contain;
	object-position: center;
	border: 1px solid #999;
}

.catalog-detail__name {
	margin-bottom: 25px;
    font-weight: bold;
    font-style: normal;
    font-size: 28px;
    color: #000;
}

.catalog-detail__type {
	margin-bottom: 25px;
    font-weight: bold;
    font-style: normal;
    font-size: 18px;
    color: #999;
}

.catalog-detail__volume {
	margin-bottom: 25px;
    font-weight: bold;
    font-style: normal;
    font-size: 18px;
    color: #999;
}

.catalog-detail__volume-value {
	color: #000;
}

.catalog-detail__price {
	padding-bottom: 25px;
	margin-bottom: 25px;
    font-weight: bold;
    font-style: normal;
    font-size: 18px;
    color: #999;
}

.catalog-detail__price-value {
	font-size: 24px;
	color: #000;
}

.catalog-detail__description {
	margin-bottom: 25px;
	font-size: 14px;
	font-weight: normal;
	font-style: normal;
	color: #999;
}

.catalog-detail__characteristic-item {
	padding-bottom: 25px;
	margin-bottom: 25px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	border-bottom: 1px solid #999;
}

.catalog-detail__characteristic-item-name {
    font-weight: bold;
    font-style: normal;
    font-size: 14px;
    color: #999;
}

.catalog-detail__characteristic-item-value {
	margin-left: 15px;
    font-weight: bold;
    font-style: normal;
    font-size: 14px;
    color: #000;
}

.catalog-detail__tip {
	margin-bottom: 25px;
	font-size: 14px;
	font-weight: normal;
	font-style: normal;
	color: #999;
}

.catalog-detail__add2basket {
	margin-right: 20px;
    width: 200px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid #740049;
    background-color: transparent;
    color: #740049;
    font-style: normal;
    font-weight: 900;
    font-size: 16px;
    transition: .3s;
    cursor: pointer;
}

.catalog-detail__add2basket:hover {
    background-color: #740049;
    color: #fff;
}

.catalog-detail__fast-order-button {
	width: 200px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid #740049;
    background-color: transparent;
    color: #740049;
    font-style: normal;
    font-weight: 900;
    font-size: 16px;
    transition: .3s;
    cursor: pointer;
}

.catalog-detail__fast-order-button:hover {
    background-color: #740049;
    color: #fff;
}

.catalog-detail__buttons-container {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
}

.m-fadeOut {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s linear 300ms, opacity 300ms;
}

.m-fadeIn {
    visibility: visible;
    opacity: 1;
    transition: visibility 0s linear 0s, opacity 300ms;
}

.overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: none;
	z-index: 9999999;
	/*background-color: #740049;*/
	background-color: rgba(0, 0, 0, 0.3);
	opacity: .5;
}

.popup-container {
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 9999999;
	transform: translate(-50%, -50%);
}

.popup {
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 9999999;
	transform: translate(-50%, -50%);
	background-color: #fff;
	padding: 50px 70px;
}

.popup__close {
	position: absolute;
	top: 15px;
	right: 15px;
	font-size: 30px;
	color: #740049;
	cursor: pointer;
}

.popup__caption {
	margin-bottom: 25px;
    font-weight: bold;
    font-style: normal;
    font-size: 28px;
    color: #740049;
    text-align: center;
    white-space: nowrap;
}

.popup__descriptor {
	margin-bottom: 40px;
    font-weight: bold;
    font-style: normal;
    font-size: 18px;
    color: #000;
    text-align: center;
}

.popup-form__input-container {
	margin-bottom: 15px;
	width: 290px;
}

.popup-form__input {
	padding-left: 15px;
	width: 100%;
	height: 40px;
	border: 1px solid #740049;
	font-size: 18px;
	color: #000;
	font-weight: normal;
	font-style: normal;
}

.popup-form__label {
	display: block;
	margin-bottom: 5px;	
	font-weight: bold;
    font-style: normal;
    font-size: 18px;
    color: #000;
}

.popup-form__button {
	margin: 25px auto 0;
	width: 240px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid #740049;
    background-color: transparent;
    color: #740049;
    font-style: normal;
    font-weight: bold;
    font-size: 16px;
    transition: .3s;
    cursor: pointer;
}

.popup-form__button:hover {
    background-color: #740049;
    color: #fff;
}

.choch-page__caption {
	margin-top: 40px;
	font-size: 120px;
	text-align: center;
	font-weight: bold;
	font-style: normal;
	color: #740049;
}

.choch-page__descriptor {
	margin-top: 20px;
	margin-bottom: 40px;
	font-size: 28px;
	text-align: center;
	font-weight: bold;
	font-style: normal;
	line-height: 36px;
	color: #000;
}

.choch-page__link {
	color: #740049;
}

.choch-page__link:hover {
	text-decoration: underline;
}

.basket-info {
	padding: 10px;
	border: 1px solid #740049;
}

.basket-info__item {
	margin-bottom: 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.basket-info__item-title {
	font-weight: normal;
	font-style: normal;
	font-size: 16px;
	color: #000;
}

.basket-info__item-value {
	font-weight: normal;
	font-style: normal;
	font-size: 16px;
	color: #740049;
}

.basket-info__item-title_bold {
	font-size: 24px;
}

.basket-info__button {
	margin: 25px auto 0;
	width: 100%;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid #740049;
    background-color: transparent;
    color: #740049;
    font-style: normal;
    font-weight: bold;
    font-size: 16px;
    transition: .3s;
    cursor: pointer;
}

.basket-info__button:hover {
    background-color: #740049;
    color: #fff;
}

.basket-page__caption {
	margin-bottom: 25px;
    font-weight: bold;
    font-style: normal;
    font-size: 28px;
    color: #000;
    white-space: nowrap;
}

.basket-item {
	margin-bottom: 30px;
	padding-right: 15px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 135px;
	border: 1px solid #999;
}

.basket-item__image {
	width: 135px; 
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.basket-item__name {
	margin-bottom: 25px;
    font-weight: bold;
    font-style: normal;
    font-size: 24px;
    color: #000;
    white-space: nowrap;
}

.basket-item__info {
	margin-left: 15px;
}

.basket-item__amount {
	font-weight: normal;
    font-style: normal;
    font-size: 18px;
    color: #999;
    white-space: nowrap;
}

.basket-item__amount span {
    font-weight: bold;
    font-style: normal;
    font-size: 18px;
    color: #000;
    white-space: nowrap;
}

.quantity-controls {
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.quantity-controls__plus,
.quantity-controls__minus {
    width: 18px;
    height: 18px;
    border: 1px solid #740099; 
    background-color: transparent;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    color: #4c4a4a;
    cursor: pointer;
    user-select: none;
    transition: .3s;
}

.quantity-controls__plus:hover,
.quantity-controls__minus:hover {
	background-color: #740049;
}

.quantity-controls__plus div, 
.quantity-controls__minus div {
    width: 8px;
    height: 8px;
    position: relative;
}

.quantity-controls__plus div::before, 
.quantity-controls__minus div::before {
    width: 100%;
    height: 1px;
    background-color: #740099;
}

.quantity-controls__plus div::after {
    width: 1px;
    height: 100%;
    background-color: #740099;
}

.quantity-controls__plus div::before, 
.quantity-controls__minus div::before,
.quantity-controls__plus div::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: .3s;
}

.quantity-controls__plus:hover div::before, 
.quantity-controls__minus:hover div::before,
.quantity-controls__plus:hover div::after {
	background-color: #fff;
}

.quantity-controls__quantity {
    font-size: 20px;
    color: #333333;
    margin: 0px 14px;
}

.basket-item__remove {
	font-weight: bold;
    font-style: normal;
    font-size: 18px;
    color: #740049;
    white-space: nowrap;
    cursor: pointer;
}

.register-page__caption {
	margin-bottom: 25px;
    font-weight: bold;
    font-style: normal;
    font-size: 28px;
    color: #000;
    white-space: nowrap;
}

.register-page__tip {
	margin-bottom: 25px;
    font-weight: normal;
    font-style: normal;
    font-size: 18px;
    color: #000;
}

.register-page__button {
	margin: 25px 0;
	width: 250px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid #740049;
    background-color: transparent;
    color: #740049;
    font-style: normal;
    font-weight: bold;
    font-size: 16px;
    transition: .3s;
    cursor: pointer;
}

.register-page__button:hover {
    background-color: #740049;
    color: #fff;
}

.checkout-info__caption {
	padding: 15px 0px;
    font-weight: bold;
    font-style: normal;
    font-size: 28px;
    color: #740049;
    border: 1px solid #740049;
    text-align: center;
    white-space: nowrap;
}

.delivery-info__caption {
	padding: 15px 0px;
	margin-bottom: 25px;
    font-weight: bold;
    font-style: normal;
    font-size: 18px;
    color: #740049;
    border-bottom: 1px solid #740049;
    text-align: center;
    white-space: nowrap;
}

.checkout-info__item {
	padding: 15px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	border: 1px solid #740049;
}

.checkout-info__radio-button {
	position: relative;
	width: 20px;
	height: 20px;
	border: 1px solid #740049;
	border-radius: 50%;
}

.checkout-info__radio-input {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 6;
	width: 100%;
	height: 100%;
	opacity: 0;
}

.checkout-info__radio-input-check {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 10px;
	height: 10px;
	background-color: #740049;
	border-radius: 50%;
	opacity: 0;
	transition: .3s;
}

.checkout-info__radio-input:checked + .checkout-info__radio-input-check {
	opacity: 1;
}

.checkout-info__label {
	margin-left: 15px;
    font-weight: bold;
    font-style: normal;
    font-size: 14px;
    color: #000;
    white-space: nowrap;
}

.delivery-info__block-title {
    font-weight: bold;
    font-style: normal;
    font-size: 14px;
    color: #000;
    white-space: nowrap;
}

.delivery-info__block-input_readonly {
	width: 100%;
	height: 40px;
	font-weight: bold;
    font-style: normal;
    font-size: 14px;
    color: #000;
    white-space: nowrap;
    border: none;
}

.delivery-info__block-input {
	padding-left: 15px;
	width: 100%;
	height: 40px;
	font-weight: bold;
    font-style: normal;
    font-size: 14px;
    color: #000;
    white-space: nowrap;
    border: 1px solid #740049;
}

.delivery-info__block-input::placeholder {
    color: red;
    font-size: 1.2em;
    font-style: italic;
    font-weight: 100;
    opacity: 0.4;
}

.delivery-info__block {
	padding: 0 15px;
	margin-bottom: 15px;
}

.delivery-info {
	margin: 40px 0;
	border: 1px solid #740049;
}

.user-info {
	margin: 40px 0;
	padding-bottom: 15px;	
	border: 1px solid #740049;
}

.user-info__caption {
	margin-bottom: 30px;
}

.checkout-info {
	padding-bottom: 40px;
}

.checkout-info__button {
	margin: 40px auto 0;
	width: 250px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px solid #740049;
    background-color: transparent;
    color: #740049;
    font-style: normal;
    font-weight: bold;
    font-size: 16px;
    transition: .3s;
    cursor: pointer;
}

.checkout-info__button:hover {
    background-color: #740049;
    color: #fff;
}

.delivery-info__block-textarea {
	margin-top: 10px;
	white-space: normal;
	resize: none;
}

.order-history__table .order-history__order:nth-child(odd) {
	background-color: #e5efe5;
}

.order-history__table .row {
	padding-top: 30px;
	padding-bottom: 30px;
}

.order-history__detail {
	color: #740049;
	cursor: pointer;
}

.order-history__detail:hover {
	text-decoration: underline;
}

.order-history__table b {
	font-weight: bold;
}

.order-history__detail-table {
	margin-top: 30px;
	border-top: 1px solid #000;
}

.order-history__order {
	border-bottom: 1px solid #000;
}

.order-history__name a {
	color: #740049;
	text-decoration: underline;
}

@media screen and (min-width: 319px) and (max-width: 1169px) {
	.content {
		padding: 0 10px;
		width: 100%;
	}

	.header-top__phone {
		margin-right: 0;
	}

	.main-firstscreen__slide {
		height: auto;
		object-fit: contain;
	}

	.catalog-item {
		height: auto;
		margin-bottom: 30px;
	}

	.catalog-item__info-container {
		height: auto;
	}

	.header-bottom__menu-item {
		margin-right: 40px;
	}
}

@media screen and (min-width: 319px) and (max-width: 767px) {
	.header-bottom__basket {
		margin: 0 auto;
	}

	.header-top__search {
		width: 100%;
		margin: 0;
		margin-bottom: 15px;
	}

	.header-top__row {
		margin-bottom: 15px;
		flex-wrap: wrap;
	}

	.header-top__search-input {
		width: 100%;
	}

	.header-menu {
		position: absolute;
		top: 71px;
		left: 0;
		padding: 0 10px;
		width: 100%;
		max-height: 0;
		overflow: hidden;
		border: 0px solid #740049;
		border-top: none;
		background-color: #fff;
		transition: .3s;
	}

	.header-menu_opened {
		max-height: 900px;
		padding: 10px;
		border-width: 1px;
		overflow-y: auto;
	}

	.header-bottom__menu-item:hover > .header-bottom__menu-list {
		max-height: none;
	}

	.header-bottom__menu-container {
		margin-left: 0;
		display: block;
		height: auto;
	}

	.header-bottom__menu {
		display: block;
	}

	.header-bottom__menu-list {
		position: static;
		max-height: none;
		border: none;
	}

	.header-bottom__menu-item {
		margin-right: 0;
		margin-bottom: 20px;
		display: block;
		font-size: 18px;
		color: #000;
		font-weight: bold;
	}

	.header-bottom__menu-list-item {
		font-size: 14px;
		margin-bottom: 20px;
		color: #999;
	}

	.header-bottom__menu-list-item:last-child {
		margin-bottom: 0;
	}

	.header-bottom__menu-list {
		width: 100%;
		margin-top: 20px;
		visibility: visible;
	}

	.header-bottom__menu-item-wrap {
		display: block;
	}

	.footer {
		padding-top: 0;
		padding-bottom: 20px;
	}

	.footer__menu-caption {
		margin-top: 20px;
	}

	.footer__socials-container {
		margin-top: 20px;	
	}

	.contacts-page__map {
		margin-top: 30px;
	}

	.catalog-detail__image {
		height: 200px;
	}

	.catalog-detail__add2basket {
		margin-right: 0;
		margin-bottom: 30px;
		width: 100%;
	}

	.catalog-detail__fast-order-button {
		width: 100%
	}

	.catalog-detail__description {
		margin-top: 25px;
	}

	.popup {
		padding: 10px;
    	padding-top: 50px;
	}

	.basket-item {
		padding: 0 10px;
		flex-direction: column;
		height: auto;
	}

	.basket-item__amount {
		margin-bottom: 15px;
		text-align: center;
	}

	.basket-item__name {
		margin-top: 15px;
	}

	.basket-item__info {
		margin-left: 0;
	}

	.basket-item__remove {
		margin:  15px 0;
	}

	.basket-info {
		margin-bottom: 30px;
	}

	.order-history__table div[class*="col-"] {
		margin-top: 15px;
		margin-bottom: 15px;
	}

	.personal-page__caption-row {
		flex-wrap: wrap;
	}

	.personal-page__button {
		margin: 15px 0;
	}
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	.basket-item__name {
		font-size: 18px;
	}

	.quantity-controls {
		margin: 0 auto;
	}

	.personal-page__caption-row {
		flex-wrap: wrap;
	}

	.personal-page__caption {
		width: 100%;
		margin-bottom: 30px;
	}
}
