/*
Theme Name: sofra theme

All styles in assets!
*/

html,
body {
  border: 0;
  font-family: "Helvetica-Neue", "Helvetica", Arial, sans-serif;
  line-height: 1.5;
  margin: 0;
  padding: 0;
}
div,
span,
object,
iframe,
img,
table,
caption,
thead,
tbody,
tfoot,
tr,
tr,
td,
article,
aside,
canvas,
details,
figure,
hgroup,
menu,
nav,
footer,
header,
section,
summary,
mark,
audio,
video {
  border: 0;
  margin: 0;
  padding: 0;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
address,
cit,
code,
del,
dfn,
em,
ins,
q,
samp,
small,
strong,
sub,
sup,
b,
i,
hr,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
legend,
label {
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  margin: 0;
  padding: 0;
}
article,
aside,
canvas,
figure,
figure img,
figcaption,
hgroup,
footer,
header,
nav,
section,
audio,
video {
  display: block;
}
table {
  border-collapse: separate;
  border-spacing: 0;
}
table caption,
table th,
table td {
  text-align: left;
  vertical-align: middle;
}
a img {
  border: 0;
}
:focus {
  outline: 0;
}

.woocommerce-ordering{
    display:none!important;
}

.woocommerce-Price-currencySymbol{
    display:none!important;    
}

button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  margin: 0;
  background-color: transparent;
  outline: 0;
  cursor: pointer;
  padding: 0;
}
/**
 * Цветовое оформление проекта
 */
/**
 * Типографика проекта
 */
html,
body {
  font-size: 13px;
  font-family: 'Lato', sans-serif;
  color: #000;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Playfair Display', sans-serif;
}
a {
  text-decoration: none;
}
ul {
  list-style: none;
}
/* Заголовк разделов */
.section__title {
  text-align: center;
  font-size: 28px;
  margin-bottom: 1em;
}

.product img{
	border-radius:15px;
}

h2.akcia{
	color:#e94e08;
  font-size: 20px;
  margin: 15px 0 20px;	
}

.woocommerce-message{
    font-size: 11px;
    letter-spacing: .12em;
    padding: 0 1em;
    height: 100%;
    text-transform: uppercase;
    color: #000;
    transition: color .2s;
}

.woocommerce ul.order_details {
    margin: 10px 0 3em!important;
    list-style: none;
}

.woocommerce ul.order_details li{
	padding:10px!important;
}

@media all and (max-width: 768px) {
  .section__title {
    font-size: 24px;
  }
	
	.halal {
    display:none;
}
}

.optional{
	display:none;
}

.woocommerce-billing-fields__field-wrapper{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
	  padding: 20px;
  background: #f7f7f7;
}

table.shop_table.woocommerce-checkout-review-order-table tr th{
	padding:6px;
	letter-spacing: .1em;
font-size: 14px;
}

.responsives img{
	width:90%;
	height:auto;
	margin:0 auto;
	display:block;
}

table.shop_table.woocommerce-checkout-review-order-table tr td{
	padding:6px;
	letter-spacing: .1em;
font-size: 13px;
}

.shop_table.woocommerce-checkout-review-order-table{
	  padding: 20px;
  background: #f7f7f7;	
}

.woocommerce-billing-fields__field-wrapper .form-row.form-row-wide.address-field.thwcfd-field-wrapper.thwcfd-field-text.validate-required{
        flex: 1 1 100%;
	display:block;
	width:100%;
}

.woocommerce-billing-fields__field-wrapper .form-row.form-row-wide.address-field.thwcfd-field-wrapper.thwcfd-field-text.validate-required input{
	width:97%;
	margin-bottom:20px;
}

.woocommerce-billing-fields__field-wrapper .form-row.form-row-first.thwcfd-field-wrapper.thwcfd-field-text.validate-required{
	flex:1;
	display:block;
	width:25%;
}

.woocommerce-billing-fields__field-wrapper .form-row.form-row-first.thwcfd-field-wrapper.thwcfd-field-text.validate-required input{
	width:80%;
}

.woocommerce-checkout-payment{
	margin-top:15px;
    letter-spacing: .1em;
    font-size: 13px;
}

.woocommerce-privacy-policy-text{
	margin-top:15px;
    letter-spacing: .05em;
    font-size: 12px;	
}

.btn-menu{
	display:block;
	width:210px;
	height:35px;
	text-align:center;
	color:#fff;
	font-size:16px;
	background:#ff3c00;
	border-radius:20px;
	margin-top:15px;
	padding-top:10px;
}

.woocommerce-order{
    letter-spacing: .05em;
    font-size: 14px;		
}

.qib-container{
	display:flex;
}

#billing_country_field{
	display:none;
}

.plus.qib-button{
	padding:2px 5px;
	border-right:1px solid #efecec;
	border-top:1px solid #efecec;
	border-bottom:1px solid #efecec;
	transition: border 0.3s ease-out;
	width:20px;
}


.img-responsive{
	width:100%;
	height:auto;
}

.responsive img{
	border-radius:30px;
}


.plus.qib-button:hover{
	border-color:#181818;
}

.input-text.qty.text{
	border:none;
	border:1px solid #efecec;
	height:22px;
}

.shop-table__col.shop-table__col_product--title a{
	color:#000;
}

.minus.qib-button{
	padding:2px 5px;
	border-left:1px solid #efecec;
	border-top:1px solid #efecec;
	border-bottom:1px solid #efecec;
	transition: border 0.3s ease-out;
	width:20px;
}

.minus.qib-button:hover{
	border-color:#181818;
}

.input-text.qty.text{
	width:30px;
}

.shop-table__col.shop-table__col_delete a{
	color:#000;
}

.wc_payment_methods.payment_methods.methods{
	margin:15px 0;
}

button#place_order{
    padding: 15px 20px;
    color: #515151;
    background: #efecec;
    transition: background .3s,color .3s;
    letter-spacing: .15em;
    font-size: 11px;
    text-transform: uppercase;
    text-align: center;
    white-space: nowrap;	
	    background: #C3957A;
    color: #fff;
	margin-top:20px;
}

.woocommerce-billing-fields__field-wrapper .form-row.form-row-wide.address-field.thwcfd-field-wrapper.thwcfd-field-text{
	flex:1;
	display:block;
	width:25%;	
}

.woocommerce-billing-fields__field-wrapper .form-row.form-row-wide.address-field.thwcfd-field-wrapper.thwcfd-field-text input{
	width:80%;	
}


.woocommerce-billing-fields__field-wrapper .form-row.form-row-wide.thwcfd-field-wrapper.thwcfd-field-tel.validate-required.validate-phone{
	flex:1;
	display:block;
	width:25%;	
}


.woocommerce-billing-fields__field-wrapper .form-row.form-row-wide.thwcfd-field-wrapper.thwcfd-field-text{
	flex:1;
	display:block;
	width:25%;		
}

.woocommerce-billing-fields__field-wrapper .form-row.form-row-wide.thwcfd-field-wrapper.thwcfd-field-text input{
	width:80%;		
}

.woocommerce-billing-fields__field-wrapper .form-row.form-row-wide.thwcfd-field-wrapper.thwcfd-field-tel.validate-required.validate-phone input{
	width:80%;		
}

.woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper input{
padding: 0 17px;
border: 1px solid #a9a9a9;
color: #515151;
height: 42px;
transition: border-color 150ms;
border-radius: 0;
background: #fff;	
}

.woocommerce-billing-fields h3{
	letter-spacing: .1em;
font-size: 14px;
margin-bottom: 6px;
text-transform: uppercase;
display: block;	
margin-bottom:20px;
}

h3#order_review_heading{
	letter-spacing: .1em;
font-size: 14px;
margin-top:20px;
margin-bottom: 6px;
text-transform: uppercase;
display: block;		
}

.woocommerce-billing-fields{
  position: relative;
  margin-top: 20px;
	margin-bottom:20px;
}

.woocommerce-billing-fields__field-wrapper label{
	letter-spacing: .1em;
font-size: 11px;
margin-bottom: 6px;
text-transform: uppercase;
display: block;
}

.order-success .section__title {
  font-family: 'Lato', sans-serif;
  font-weight: 400;
}
/**
 * Расположение блоков макета
 */
/* Брейкпоинты */
html,
body {
  width: 100%;
  height: 100%;
  min-width: 320px;
}
/* Блок слева, который доступен только на мобильных устройствах */
.mobile-aside {
  background: #fff;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  width: 264px;
  z-index: 10;
  opacity: 0;
  transition: opacity 0.3s ease-out;
}
.mobile-aside_opened {
  opacity: 1;
}
.mobile-aside__wrapper {
  overflow-y: auto;
  padding-bottom: 40px;
  height: 100%;
}
/* Основная страница */
.page {
  width: 100%;
  min-height: 100%;
  position: relative;
  z-index: 60;
  background: #fff;
  display: flex;
  flex-direction: column;
  box-shadow: -4px 0 10px 0 rgba(0, 0, 0, 0.1);
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}
.page_opened {
  -webkit-transform: translateX(264px);
          transform: translateX(264px);
}
.page__main {
  flex: 1;
}
/* Шапка сайта */
.header {
  height: 100px;
}
@media all and (max-width: 1024px) {
  .header {
    height: 65px;
    position: fixed;
    top: 0;
    width: 100%;
    background: #fff;
    z-index: 100;
  }
}
.header_shadow {
  box-shadow: 0 0 14px #aaa;
}

.screen-reader-text{
    display:none!important;
}

.header__container {
  max-width: 1170px;
  height: 100%;
  margin: 0 auto;
  padding: 0 15px;
  box-sizing: border-box;
}
@media all and (max-width: 1024px) {
  .header__container {
    padding: 0;
  }
}
/* Элементы в шапке */
.header-nav {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  justify-content: space-between;
}
.header-nav__logo-wrapper {
  align-self: center;
}
@media all and (max-width: 1024px) {
  .header-nav__logo-wrapper {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
            transform: translate3d(-50%, -50%, 0);
  }
}
.header-nav__logo {
  -o-object-fit: contain;
     object-fit: contain;
  height: 100px;
}
@media all and (max-width: 1024px) {
  .header-nav__logo {
    height: 32px;
  }
}
.header-nav__menu {
  justify-self: center;
}
/* Основной блок */
.main {
  padding: 35px 0;
}
@media all and (max-width: 1024px) {
  .main {
    margin-top: 65px;
  }
}
/* Раздел основного блока */
.section__container {
  max-width: 1170px;
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
  box-sizing: border-box;
}
/* Подвал сайта */
.footer {
  height: 180px;
  border-top: 1px solid #efefef;
}
.footer__container {
  max-width: 1170px;
  height: 100%;
  margin: 0 auto;
  padding: 0 15px;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media all and (max-width: 1024px) {
  .footer__container {
    justify-content: space-around;
  }
}
.footer__container * {
  padding-bottom: 0 !important;
}
.footer__contacts li {
  display: block;
  font-size: 13px;
  margin-top: 1em;
}
.footer__contacts a {
  color: #000;
}
.footer__contacts p {
  color: #a9a9a9;
}
/* Каталог меню */
.catalog {
  display: flex;
}
.catalog__sidebar {
  width: 200px;
  flex-shrink: 1;
}
@media all and (max-width: 1024px) {
  .catalog__sidebar {
    display: none;
  }
}
.catalog__products {
  flex: 1;
}
/* Сетка с выбором продукта */
.products-grid {
  margin-left: -20px;
  display: flex;
  flex-wrap: wrap;
}
.products-grid__item {
  width: 33.33%;
  padding-left: 20px;
  box-sizing: border-box;
}
@media all and (max-width: 768px) {
  .products-grid__item {
    width: 50%;
  }
}
@media all and (max-width: 425px) {
  .products-grid__item {
    width: 100%;
  }
}
/* Вспомогательные классы */
.exposed {
  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
@media all and (min-width: 1024px) {
  .mobile-only {
    display: none !important;
  }
}
@media all and (min-width: 768px) {
  .tablet-only {
    display: none !important;
  }
}
@media all and (max-width: 1024px) {
  .desctop-only {
    display: none !important;
  }
}
/* Всплывающая навигационная панель */
.nav-top {
  position: fixed;
  top: 0;
  width: 100%;
  height: 80px;
  z-index: 1000;
  -webkit-transform: translateY(-100px);
          transform: translateY(-100px);
  transition: all .5s;
  box-shadow: 0 0 14px #aaa;
  background: #fff;
}
@media all and (max-width: 1024px) {
  .nav-top {
    display: none;
  }
}
.nav-top_active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  transition: all .5s;
}
.nav-top__wrapper {
  margin: 0 auto;
  max-width: 1170px;
  padding: 0 15px;
  height: 100%;
  box-sizing: border-box;
}
/**
 * Элементы интерфейса
 */
/* Кнопки */
.add-to-cart {
  border: 1px solid #BC2029;
  color: #BC2029;
  padding: 1em 2em;
  font-size: 10px;
  transition: all .2s linear;
  text-transform: uppercase;
}
.add-to-cart:hover {
  cursor: pointer;
  color: #fff;
  background-color: #BC2029;
}
.btn {
  padding: 15px 20px;
  color: #fff;
  background: #e94e08;
  transition: background .3s,color .3s;
  letter-spacing: .15em;
  font-size: 11px;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}

.btn.btnse{
	display:block;
	margin:15px 0;
	width:250px;
}

.btn:hover {
  background: #f3f0f0;
  color: #575757;
}
.btn_brown {
  background: #C3957A;
  color: #fff;
}
.btn_brown:hover {
  color: #fff;
  background: #cc9e83;
}
.btn_full-width {
  width: 100%;
}
/* Корзина */
.header-cart {
/*  display: inline-block; */
	display:none!important;
  white-space: nowrap;

}

.product-info .cart{
	display:none!important;	
}


@media all and (max-width: 1024px) {
  .header-cart {
    padding-left: 25px;
  }
}
.header-cart_has-items {
  display: inline;
}
.header-cart_has-items .header-cart__icon {
  fill: #ff3c00;
}
@media all and (max-width: 768px) {
  .header-cart_has-items .header-cart__icon {
    display: none;
  }
}
.header-cart_has-items .header-cart__price {
  color: #ff3c00;
}
@media all and (max-width: 1024px) {
  .header-cart_has-items .header-cart__price {
    display: inline;
  }
}
.header-cart__icon {
  height: 1em;
  display: none;
}
@media all and (min-width: 1024px) {
  .header-cart__icon_desktop {
    height: 13px;
    display: inline-block;
  }
}
@media all and (max-width: 1024px) {
  .header-cart__icon_desktop {
    display: none;
  }
  .header-cart__icon_mobile {
    height: 14px;
    display: inline-block;
  }
}
.header-cart__price {
  margin-left: .5em;
}
@media all and (min-width: 1024px) {
  .header-cart__price {
    font-size: 13px;
  }
}
@media all and (max-width: 1024px) {
  .header-cart__price {
    display: none;
    font-size: 14px;
  }
}
.header-cart__price:after {
  content: " \20BD";
}
/* Кнопка бургер */
.btn-toggle {
  cursor: pointer;
  height: 65px;
  width: 65px;
  position: relative;
  display: none;
}
@media all and (max-width: 1024px) {
  .btn-toggle {
    display: inline-block;
  }
}
.btn-toggle__line {
  top: 50%;
  left: 50%;
  position: absolute;
  width: 18px;
  height: 2px;
  background-color: #181818;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
}
.btn-toggle__line:after,
.btn-toggle__line:before {
  content: '';
  top: 0;
  left: 0;
  position: absolute;
  height: 2px;
  width: 18px;
  background: #181818;
  transition: -webkit-transform .3s ease;
  transition: transform .3s ease;
  transition: transform .3s ease, -webkit-transform .3s ease;
}
.btn-toggle__line:before {
  -webkit-transform: translateY(-6px);
          transform: translateY(-6px);
}
.btn-toggle__line:after {
  -webkit-transform: translateY(6px);
          transform: translateY(6px);
}
.btn-toggle_active .btn-toggle__line {
  background-color: transparent;
}
.btn-toggle_active .btn-toggle__line:before {
  -webkit-transform: rotateZ(135deg);
          transform: rotateZ(135deg);
}
.btn-toggle_active .btn-toggle__line:after {
  -webkit-transform: rotateZ(-135deg);
          transform: rotateZ(-135deg);
}
/* Радикнопки */
.radio-box {
  letter-spacing: .12em;
  text-transform: uppercase;
  position: relative;
  display: inline-block;
  padding: 1em 2em;
  cursor: pointer;
  font-size: 11px;
  text-align: center;
}
.radio-box__input {
  display: none;
}
.radio-box__input:checked + .radio-box__custom-radio {
  border-color: #BC2029;
}
.radio-box__custom-radio {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border: 1px solid transparent;
}
/* Элемент формы */
.form-control {
  padding: 0 17px;
  border: 1px solid #a9a9a9;
  color: #515151;
  height: 42px;
  transition: border-color 150ms;
  border-radius: 0;
  background: #fff;
}
.form-control_has-error {
  border-color: #ff3c00;
  box-shadow: none;
}
.form-control_select {
  width: 100%;
  background: url(assets/images/icn-arrow-select.svg) right 12px center no-repeat #fff !important;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.form-control_textarea {
  padding-top: 10px;
  padding-bottom: 10px;
}
.form-control_input {
  width: 100%;
  box-sizing: border-box;
}
/* Счетчик количества продуктов в корзине */
.product-count {
  display: flex;
  align-items: center;
}
.product-count_small .product-count__button {
  width: 20px;
  height: 20px;
}
.product-count_large .product-count__button {
  width: 32px;
  height: 32px;
}
.product-count_large .product-count__counter {
  width: 30px;
}
.product-count__button {
  display: inline-block;
  border: 1px solid #efecec;
  width: 26px;
  height: 26px;
  line-height: 1;
  color: #181818;
  font-size: 16px;
  transition: border 0.3s ease-out;
}
.product-count__button_minus {
  left: 0;
}
.product-count__button_plus {
  right: 0;
}
.product-count__button:hover {
  border-color: #181818;
}
.product-count__counter {
  display: inline-block;
  font-size: 13px;
  line-height: normal;
  text-align: center;
  width: 22px;
}
/* Кнопка "удалить" из корзины */
.btn-remove,
.btn-change {
  padding-bottom: 3px;
  color: #000;
  display: inline-block;
  position: relative;
}
.btn-remove:after,
.btn-change:after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 1px;
  width: 100%;
  height: 1px;
  background: #181818;
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
  opacity: .6;
  -webkit-transform-origin: left;
          transform-origin: left;
  transition: -webkit-transform 0.7s cubic-bezier(0.19, 1, 0.22, 1) 0.2s;
  transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1) 0.2s;
  transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1) 0.2s, -webkit-transform 0.7s cubic-bezier(0.19, 1, 0.22, 1) 0.2s;
}
.btn-remove:hover:after,
.btn-change:hover:after {
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: right;
          transform-origin: right;
  transition-delay: 0s;
}
/* Кнопка "X" удалить из корзины */
.btn-remove-cross {
  padding: 10px;
  position: absolute;
  right: 0;
  top: 18px;
  display: none;
}
.btn-remove-cross:before,
.btn-remove-cross:after {
  content: '';
  position: absolute;
  width: 12px;
  height: 2px;
  margin: 0 0 0 -6px;
  background: #a9a9a9;
}
.btn-remove-cross:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.btn-remove-cross:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
@media all and (max-width: 768px) {
  .btn-remove-cross {
    display: block;
  }
}
/* Радиокнопки */
.radio-button {
  display: block;
  margin-top: 15px;
  margin-bottom: 20px;
  color: #515151;
  letter-spacing: .25px;
  font-size: 13px;
}
.radio-button__input {
  display: none;
}
.radio-button__input:checked + .radio-button__custom-radio {
  border-color: #C3957A;
}
.radio-button__input:checked + .radio-button__custom-radio:before {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.radio-button__custom-radio {
  width: 16px;
  height: 16px;
  border: 1px solid #515151;
  display: inline-block;
  position: relative;
  margin-right: 9px;
  vertical-align: -3px;
  border-radius: 50%;
}
.radio-button__custom-radio:before {
  content: "";
  position: absolute;
  background: #515151;
  border-radius: 50%;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 10px;
  margin-left: -5px;
  margin-top: -5px;
  -webkit-transform: scale(0);
          transform: scale(0);
  transition: all .3s;
}
/* Подсказка адреса */
.autocomplete-suggestions {
  background: #fff;
  border: 1px solid #cbcbcb;
  border-top-width: 0;
  overflow-y: auto;
  position: absolute;
  z-index: 999;
  width: 100%;
  box-sizing: border-box;
}
.autocomplete-suggestions__item {
  padding: 0 20px;
  cursor: default;
  line-height: 40px;
}
.autocomplete-suggestions__item:hover,
.autocomplete-suggestions__item_selected {
  background: #efecec;
}
/* Кнопка с крутым эффектом при наведении */
.button-primary {
  position: relative;
  display: inline-block;
  text-transform: uppercase;
  letter-spacing: .18em;
  background: #181818;
  color: #fff;
  font-size: 12px;
  height: 54px;
  padding: 0 40px;
  width: 100%;
  overflow: hidden;
}
.button-primary__text {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  z-index: 3;
}
.button-primary:before {
  content: ' ';
  display: block;
  position: absolute;
  width: 0;
  height: 100%;
  top: 0;
  left: -10%;
  background: #ff3c00;
  transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transform: skewX(22deg);
          transform: skewX(22deg);
  z-index: 1;
}

.woocommerce a.remove{
font-size: 1.0em!important;	
}


.button-primary:hover:before {
  width: 120%;
	color:#000;
}
.nav-arrow-back {
  display: block;
  width: 60px;
  height: 64px;
  position: fixed;
  z-index: 200;
  top: 0;
  left: 0;
  background: #fff;
}
.nav-arrow-back:before {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -6px 0 0 -6px;
  width: 12px;
  height: 12px;
  border: 2px solid #181818;
  border-top: none;
  border-right: none;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  content: '';
}
.halal {
  width: 72px;
  height: 72px;
}
/**
 * Основные стили проекта
 */
/* Продукт/блюдо */
.product {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.header {
  border-bottom: 1px solid #efefef;
}
/* Фотография блюда */
.product-image {
  position: relative;
  background-color: #efefef;
  background-image: url("assets/images/photo-bg.png");
  background-position: center;
  height: 300px;
  width: 100%;
  display: block;
}
.product-image::before {
  display: block;
  background: #fff;
  position: absolute;
  height: 100%;
  width: 100%;
  content: '';
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}
.product-image:hover:before {
  opacity: .2;
}
.product-image__photo {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  transition: opacity .3s linear;
  opacity: 0;
}
.product-image__photo[data-loaded] {
  opacity: 1;
}
/* Описание блюда */
.product-info {
  padding: 15px 0 30px;
  text-align: center;
}
.product-info__title {
  font-family: 'Lato', sans-serif;
  font-weight: 400;
  font-size: 14px;
}
.product-info__price {
  margin: .5em 0;
}
.product-info__price:after {
  content: " \20BD";
}
/* Категории (разделы) меню */
.catalog__title {
  font-family: 'Lato', sans-serif;
  text-transform: uppercase;
  letter-spacing: .12em;
  margin-bottom: 1em;
  font-size: 11px;
}
.product-filter__item + .product-filter__item {
  margin-top: 1em;
}
.product-filter__link {
  color: #000;
  transition: color .2s linear;
}
.product-filter__link:hover {
  color: #BC2029;
}
/* Меню в шапке */
.menu-shell {
  display: flex;
  align-items: center;
  height: 100%;
}
.menu-shell_customer {
  letter-spacing: normal;
}
.menu-shell_customer .menu-shell__link:hover {
  color: #000;
}
@media all and (max-width: 1024px) {
  .menu-shell_main {
    display: none;
  }
}
@media all and (max-width: 768px) {
  .menu-shell__phone {
    display: none;
  }
}
.menu-shell__item {
  height: 100%;
  vertical-align: middle;
}
.menu-shell__link {
  display: flex;
  align-items: center;
  font-size: 13px;
  letter-spacing: .12em;
  padding: 0 1em;
  height: 100%;
  text-transform: uppercase;
  color: #000;
  transition: color .2s;
}
.menu-shell__link:hover {
  color: #BC2029;
}
/* Мобильное меню */
.mobile-nav {
  padding-bottom: 30px;
}
.mobile-nav__item {
  border-bottom: 1px solid #f7f7f7;
}
.mobile-nav__link {
  color: #000;
  display: flex;
  transition: color 0.3s ease-out;
  padding: 15px 20px;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.mobile-nav__link:hover {
  color: #BC2029;
}
/* Информация о доставке */
.mobile-delivery {
  padding: 0 20px 30px;
  line-height: 1.47;
  color: #a9a9a9;
}
/* Адреса ресторанов */
.mobile-location {
  padding: 0 20px 30px;
}
.mobile-location__phone {
  color: #000;
  font-size: 17px;
}
.mobile-location__address {
  line-height: 1.47;
  color: #a9a9a9;
}
/* Ваша "Корзина пуста" */
.cart-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 100px 0 120px;
}
/* Содержимое корзины */
.cart-checkout__title {
  font-size: 24px;
  font-family: 'Lato', sans-serif;
  margin-bottom: 50px;
}
@media all and (max-width: 768px) {
  .cart-checkout__title {
    margin-bottom: 20px;
  }
}
.delivery-method__title {
  margin-bottom: 1em;
}
.delivery-method__radio {
  box-sizing: border-box;
}
@media all and (max-width: 768px) {
  .delivery-method__radio {
    width: 49%;
    margin: 0 !important;
  }
}
.delivery-method__radio + .delivery-method__radio {
  margin-left: 10px;
}
/* Кнопки соцсетей */
.social-btn-list {
  padding: 0 20px 40px;
  white-space: nowrap;
}
.social-btn-list__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: rgba(24, 24, 24, 0.05);
  transition: background-color 0.2s;
  margin-right: 10px;
}
.social-btn-list__link_fb:hover {
  background: #3b5998;
}
.social-btn-list__link_vk:hover {
  background: #45668e;
}
.social-btn-list__link_inst:hover {
  background: #e1306c;
}
.social-btn-list__link:hover svg {
  fill: #fff;
}
.social-btn-list__icon {
  fill: #666;
}
/* Таблица с содержание заказа */
.shop-table {
  margin-top: 40px;
  width: 100%;
}
.shop-table__col {
  position: relative;
  vertical-align: middle;
  font-weight: 400;
}
.shop-table__col_thumbnail {
  padding: 15px 0;
  min-width: 95px;
}
@media all and (max-width: 768px) {
  .shop-table__col_thumbnail {
    width: 15%;
  }
}
.shop-table__col_product-title {
  width: 50%;
}
.shop-table__col_price {
  text-align: center;
}
.shop-table__col_price:not(th):after {
  content: ' \20BD';
}
.shop-table__col_count {
  width: 150px;
  text-align: left;
}
.shop-table__col_total {
  text-align: right;
}
.shop-table__col_total:not(th):after {
  content: ' \20BD';
}
@media all and (max-width: 768px) {
  .shop-table__col_price,
  .shop-table__col_count,
  .shop-table__col_delete,
  .shop-table__col_total {

  }
  
 .shop-table__row td {
    border-top: 1px solid #efecec;
    width: 100px;
}
}
.shop-table__row td {
  border-top: 1px solid #efecec;
}
@media all and (max-width: 768px) {
  .shop-table__row_header {
    display: none;
  }
}
.shop-table__row_header th {
  color: #a9a9a9;
}
/* Вес блюда в корзине */
.item-weight {
  color: #a9a9a9;
}
.item-weight:after {
  content: ' гр';
}
/* Превью товара в корзине */
.product-thumb,
.cart-item__photo {
  width: 80px;
  height: 80px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  background-color: #efefef;
  background-image: url("assets/images/photo-bg-sm.png");
  background-position: center;
}
/* ФОРМА */
.form {
  position: relative;
  padding: 20px;
  background: #f7f7f7;
  margin-top: 20px;
}
.form__group {
  position: relative;
  background: #f7f7f7;
  display: flex;
  width: 100%;
}
@media all and (max-width: 768px) {
  .form__group {
    display: block;
  }
}
.form__group + .form__group {
  margin-top: 20px;
}
.form__item {
  flex: 1;
}
@media all and (max-width: 768px) {
  .form__item + .form__item {
    margin-top: 20px;
  }
}
@media all and (min-width: 768px) {
  .form__item + .form__item {
    padding-left: 10px;
  }
}
/* Элемент формы */
.form-field_full-width {
  width: 100%;
}
.form-field__label {
  letter-spacing: .1em;
  font-size: 11px;
  margin-bottom: 6px;
  text-transform: uppercase;
  display: block;
}
.form-field__help-block {
  font-size: 12px;
  color: #ff3c00;
  margin-top: 3px;
}
/* Выбор ресторана */
.restorant-select {
  margin-bottom: 10px;
}
/* Вертикальная форма */
.form-list {
  margin-top: 30px;
}
.form-list em {
  color: #ff3c00;
}
.form-list__item {
  display: flex;
}
@media all and (max-width: 768px) {
  .form-list__item {
    display: block;
  }
}
.form-list__item + .form-list__item {
  margin-top: 10px;
}
.form-list__label {
  display: block;
  width: 33%;
  text-align: right;
  padding-right: 40px;
  height: 40px;
  line-height: 40px;
}
@media all and (max-width: 768px) {
  .form-list__label {
    padding-right: 0;
    text-align: left;
    width: auto;
    height: 30px;
    line-height: 30px;
  }
}
.form-list__label_subtitle {
  line-height: 1.2;
  padding-top: 10px;
  font-weight: 700;
  font-size: 15px;
}
.form-list__control {
  width: 270px;
}
.form-list__control input[type=text],
.form-list__control textarea {
  width: 270px;
  box-sizing: border-box;
}
@media all and (max-width: 768px) {
  .form-list__control {
    width: 100%;
  }
  .form-list__control input[type=text],
  .form-list__control textarea {
    width: 100%;
  }
}
.form-list__fieldset + .form-list__fieldset {
  margin: 10px 0 20px;
}
/* Контейнер формы содержания заказа */
.order {
  padding: 30px;
  display: flex;
}
@media all and (max-width: 768px) {
  .order {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.order__col_main {
  width: 65%;
}
@media all and (max-width: 768px) {
  .order__col_main {
    width: 100%;
  }
}
.order__col_sidebar {
  margin-top: 10px;
  width: 35%;
}
@media all and (max-width: 768px) {
  .order__col_sidebar {
    display: none;
  }
}
/* Блок с кратким содержанием заказа */
.order-sidebar {
  background: #f7f7f7;
  padding: 28px 32px;
}
.order-sidebar__title {
  margin-bottom: 25px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.order-sidebar__total {
  margin-top: 20px;
}
/* Заголовок "Ваш заказ" в сайдбаре */
.order-sidebar-title {
  font-size: 24px;
  font-family: 'Lato', sans-serif;
}
/* Кнопка "Изменить" в сайдбаре */
/* Список товаров в сайдбаре */
.cart-item {
  border-top: 1px solid #efecec;
  padding: 10px 0;
  display: flex;
  align-items: center;
}
.cart-item__photo {
  width: 58px;
  height: 58px;
}
.cart-item__desc {
  margin-left: 10px;
  color: #515151;
  font-size: 13px;
}
/* Информация о продукте в списке в сайдбаре */
.cart-item-desc__price:after {
  content: " \20BD";
}
.order-sidebar-totals {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  color: #515151;
}
.order-sidebar-totals__label {
  font-size: 16px;
  font-weight: 700;
}
.order-sidebar-totals__value {
  text-align: right;
  font-size: 20px;
  font-weight: 700;
  width: 80px;
}
.order-sidebar-totals__value:after {
  content: ' \20BD';
}
/* Блок с кнопками под содержимым корзины  */
.cart-actions {
  padding: 20px 0;
  display: flex;
  justify-content: flex-end;
}
.cart-actions__col {
  width: 50%;
}
@media all and (max-width: 768px) {
  .cart-actions__col {
    width: 100%;
  }
}
.cart-actions__buttons {
  margin-top: 20px;
  margin-bottom: 20px;
  display: flex;
  justify-content: space-between;
}
@media all and (max-width: 768px) {
  .cart-actions__buttons {
    display: block;
  }
}
.cart-actions__btn {
  box-sizing: border-box;
  width: 48%;
}
@media all and (max-width: 768px) {
  .cart-actions__btn {
    display: block;
    width: 100%;
  }
  .cart-actions__btn + .cart-actions__btn {
    margin-top: 10px;
  }
}
/* Итоговая стоимость заказа */
.cart-totals {
  width: 100%;
  font-size: 15px;
  color: #515151;
}
.cart-totals td {
  vertical-align: top;
  padding-bottom: 20px;
}
.cart-totals__label {
  text-align: left;
}
.cart-totals__value {
  text-align: right;
}
.cart-totals__value:after {
  content: " \20BD";
}
/* Заказ завершен */
.order-success {
  text-align: center;
}
/* Кнопки после содержания корзины*/
.cart-actions {
  padding: 20px 0;
}
.cart-actions__cols {
  display: flex;
  align-items: flex-end;
}
.cart-actions__col {
  width: 50%;
}
@media all and (max-width: 768px) {
  .cart-actions__col {
    width: 100%;
  }
}
#map {
  position: fixed;
  top: 100%;
}
.delivery-zone-message {
  padding: 0 0 0 28px;
  font-size: 16px;
  line-height: 1.2;
  margin: 30px 0;
}
.company__photo {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.company__desc-title {
  font-family: 'Lato', sans-serif;
  font-size: 18px;
  margin: 1em 0;
}
.company__desc-text {
  margin-top: 1em;
  font-size: 14px;
}
.cafe {
  padding: 0 15px;
  display: flex;
  flex-wrap: nowrap;
  margin-left: -20px;
}
.cafe__col {
  width: 50%;
  padding-left: 20px;
  box-sizing: border-box;
}
@media all and (max-width: 768px) {
  .cafe__col {
    width: 100%;
  }
  .cafe__col + .cafe__col {
    margin-top: 40px;
  }
}
.cafe__photo {
  display: block;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.cafe__phone {
  display: block;
  color: black;
  font-family: 'Lato', sans-serif;
  font-size: 18px;
  margin: 1em 0 .5em;
}
@media all and (max-width: 768px) {
  .cafe {
    flex-direction: column;
  }
}
/* Детальный просмотр продукта */
.product-detail {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  padding: 20px 0 90px;
}
.product-detail__photo {
  width: 65%;
}
.product-detail__details {
  padding-left: 30px;
  width: 35%;
}

.product-detail__details .single_add_to_cart_button{
	display:none!important;
}


@media all and (max-width: 768px) {
  .product-detail {
    display: block;
  }
  .product-detail__photo,
  .product-detail__details {
    padding-left: 0;
    width: 100%;
  }
}
/* Фотография продукта */
.product-detail-photo {
  width: 100%;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
/* Описание продукта */
@media all and (max-width: 768px) {
  .product-detail-details {
    margin-top: 22px;
  }
}
.product-detail-details__title {
  margin-bottom: 20px;
  font-size: 38px;
  line-height: 1;
  font-weight: 400;
}
@media all and (max-width: 768px) {
  .product-detail-details__title {
    font-size: 26px;
  }
}
.product-detail-details__desc {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 5px;
}
@media all and (max-width: 768px) {
  .product-detail-details__desc {
    font-size: 13px;
  }
}
.product-detail-details__weight {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #efefef;
  font-size: 16px;
  line-height: 1.5;
}
.product-price {
  margin-bottom: 25px;
  display: flex;
  justify-content: space-between;
}
.product-price__price {
  font-family: 'Lato', sans-serif;
  font-size: 32px;
}
.product-price__price:after {
  content: ' \20BD';
}


.mobile-nav__list{
	margin:20px 0 20px 20px;
}

.mobile-nav__list li{
	margin:10px 0;
}

.mobile-nav__list li a{
	font-size:16px;
}