/*
Theme Name: Bono Child
Theme URI: https://wpshop.ru/themes/bono
Author: WPShop.ru
Author URI: http://wpshop.ru/
Template: bono
Version: 1.0.0
*/

/* Below you can add your CSS styles */
.woocommerce-breadcrumb span.wci-chevron-right{
	font-family: wpshop-core !important;
}
.wc-categories-list {
	margin: 0;
	padding-right: 30px;
}
.wc-categories-list ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.wc-categories-list ul li {
	margin: 3px 0;
}
.wc-categories-list ul li a {
	padding: 4px 10px;
	display: inline-block;
	color: #333;
	text-decoration: none;
	transition: color 0.5s ease;
}
.wc-categories-list ul li a:hover {
	color: #289fd9;
	text-decoration: underline;
}

.products-main-wrap {
	display: flex;
}
.category-sidebar__wrap {
	min-width: 240px;
}
.products-wrap {
	flex-grow: 1;
}
#show-categories {
	display: none;
}

.pruductcat-thumbnails__list {
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.pruductcat-thumbnails__list li {
	width: 14.22%;
	padding: 10px; 
	box-sizing: border-box;
}
.pruductcat-thumbnails__list a img {
	transition: transform 0.3s ease, opacity 0.3s ease; 
}
.pruductcat-thumbnails__list a:hover img {
	transform: scale(1.15); 
}
.product-cats {
	display: flex;
	margin: .1em 0;
}
.product-cats product-cats__childs{ 
	display: flex;
	flex-wrap: wrap;
}

.product-cats__childs a, .product-cats__parent a {
	color: #111;
	text-decoration: none;
	display: inline-block;
	margin: 0 0 0 6px;
}
.product-cats__childs a:hover, .product-cats__parent a:hover {
	color: #f43c33;
}
.product-cats__parent a{
	color: #91a6ba;
	margin: 0;
}
.product-cats__parent {
	margin-right: 4px;
	white-space: nowrap;
}

.woocommerce-checkout p.woocommerce-invalid-required-field span.error {
	color: #e2401c;
	display: block !important;
	font-weight: bold;
}
.stock-status {
	font-weight: 500;
	font-size: 18px;
}
.stock-status.stock-status__available {
	color: #05a205; 
}
.stock-status.stock-status__none-available {
	color: #ff0000d6;
}

.form-row-wide label, .form-row-wide label + .password-input {
	display: block;
}
.form-row-wide label + .input-text, .form-row-wide label + .password-input, .form-row-wide label + .password-input .input-text {
	width: 100%;
}

.brands {
	margin-bottom: 40px;
}
.brand-item {
	margin-bottom: 20px;
	text-align: center;
}
.c-container {
	width: 100%;
	max-width: 1400px;
}
.c-row { 
	display: flex; 
	flex-wrap: wrap;
	margin-right: -15px;
	margin-left: -15px;
}
.c-row.aic {
	align-items: center;
}
.c-6 { 
	flex: 0 0 50%;
	max-width: 50%;
}
.c-12 { 
	flex: 0 0 100%;
	max-width: 100%;
}
.c-6,.c-12,.c-sm-4,.c-md-3 {
	position: relative;
	width: 100%;
	min-height: 1px;
	padding-right: 15px;
	padding-left: 15px;
}
@media (min-width: 576px) {
	.c-sm-4 { 
	  flex: 0 0 33.333333%;
	  max-width: 33.333333%;
	}
	.c-sm-6 {
		flex: 0 0 50%;
		max-width: 50%;	
	}
}
@media (min-width: 768px) {
	.c-md-3 { 
		flex: 0 0 25%;
		max-width: 25%;
	}
	.c-md-6 { 
		flex: 0 0 50%;
		max-width: 50%;
	}
}
@media (min-width: 992px) { 
	.c-lg-6 { 
		flex: 0 0 50%;
		max-width: 50%;
	}
}
.mb30 {
	margin-bottom: 30px;
}
.mb15 {
	margin-bottom: 15px;
}
.mb10 {
	margin-bottom: 10px;
}

.fsr-post-rating-container{
	margin-top: 6px; 
}
.rating__wrap{
	display: inline-block;  
}
.onRate .rating__wrap{
	cursor: pointer;
}
.rating__stars{
	display: inline-block; 
	line-height: 0; 
	flex-shrink: 0;
	min-width: 90px;
}
.rating__stars path{
	fill: #e1e1e1;
}
.rating__stars path.active_star{
	fill: #ffde23;
}
.rating__count-vote {
	display: inline-block; 
    font-size: 14px;
	margin-left: 2px;
}
.fsr-post-rating-container {
	margin-top: -10px;
	margin-bottom: 15px;
}
.product-details .quantity-minus, .product-details .quantity-plus {
	display: none;
}

.cf7-contactform-wrapper { 
	margin: 0 auto;
}
.cf7-contactform-wrapper .screen-reader-response {
	display: none;
} 
.cf7-contactform-wrapper br {
	display: none;
}
.cf7-contactform-wrapper p {
	margin: 0;
}
.cf7-contactform-wrapper textarea {
	width: 100%;
	height: 120px;
}
.cf7-contactform-wrapper p.cf-privacy-policy {
	padding-left: 15px;
}
.cf7-contactform-wrapper input[type="tel"] {
	padding-left: 48px !important;
}
.wci-chevron-right::before {
	font-family: wpshop-core;
}

.mc-form-cf7.fancybox__content {
	border: none;
	border-top: 18px solid #009DE6;
	padding: 0 0 10px 0;
}
.mc-form-cf7.fancybox__content > .f-button.is-close-btn {
	top: -45px;
	right: -28px;
}
.mc-form-cf7.fancybox__content .f-button svg {
	stroke: #fff;
	stroke-width: 3px;
	height: 17px;
	width: 17px;
}


.popup-form-wrap {
	max-width: 600px;
	padding: 15px 30px 0px;
	margin: 0 auto;
}
.popup-form-wrap input {
	max-width: 100%;
} 
.popup-title {
	font-size: 34px;
	font-weight: 700;
	padding: 0 30px;
	margin: 20px 0 0;
	text-align: center
}
.mc-form-cf7 form.wpcf7-form input {
	background-color: transparent;
	color: #333;
	border: none;
	border-bottom: 1px solid #D7D7D7;
	border-radius: 0;
	padding: 0;
	width: 100%;
	height: 40px;
} 
.mc-form-cf7 form.wpcf7-form input::placeholder {
	color: #000;
	opacity: 0.7;
}
.wpcf7-form p, .wpcf7-form-control-wrap {
	position: relative;
	display: block;
	line-height: 1;
}
.mc-form-cf7 .selected-flag{
	border-radius: 0;
}
.mc-form-cf7 form.wpcf7-form input.wpcf7-submit{
	padding: 3px 20px;
	color: #fff;
	background-color: #009DE6;
	background: rgba(0, 0, 0, 0) linear-gradient(135deg, rgba(1,158,231,1) 10%, rgba(36,99,218,1) 40%, rgba(35,97,215,1) 60%, rgba(1,158,231,1) 90%) repeat scroll 0% 0% / 250% 100%; 
	background-position: 0 50%;
	transition: background-position 0.6s ease;
	max-width: 260px;
	width: 100%;
	height: 50px;
	line-height: 44px; 
	display: block;
	margin: 20px auto 0; 
	border-radius: 50px;
	cursor: pointer;
}
.mc-form-cf7 form.wpcf7-form input.wpcf7-submit:hover,
.mc-form-cf7 form.wpcf7-form input.wpcf7-submit:active{
	background-color: #00233d !important;
	background-position: 100% 50%;
	color: #fff;
}
.wpcf7 input.wpcf7-submit:disabled { 
	filter: grayscale(1);
	cursor: not-allowed;
}
span.wpcf7-list-item {
	display: block;
	width: 100%;
	float: left;
}
.wpcf7-form label {
	margin-bottom: 10px;
	font-size: 12px;
	display: block;
	position: relative;
	line-height: 1;
	text-transform: uppercase;
}
.wpcf7-list-item-label {
	width: calc(100% - 40px);
	display: block;
	float: left;
	margin-left: 12px;
	line-height: 1;
}
.cf-privacy-policy input[type="checkbox"] {
	display: none;
}
.cf-privacy-policy .wpcf7-list-item-label {
	position: relative;
	cursor: pointer;
	font-size: 14px;
	line-height: 17px;
}
.cf-privacy-policy .wpcf7-list-item-label::before {
	content: '';
	width: 20px;
	height: 20px;
	display: flex;
	position: absolute;
	left: -28px;
	top: -4px;
	border: 1px solid #ddd;
	align-items: center;
	justify-content: center;
	font-size: 19px;
}
.cf-privacy-policy input:checked + .wpcf7-list-item-label::before {
	border: 1px solid #009de6;
	content: '✓';
	color: #009de6;
	font-weight: bold;
}
p.cf-privacy-policy{
	min-height: 20px;
} 
.mc-form-cf7 .wpcf7 .ajax-loader{
	position: absolute; 
	bottom: 8px;
	right: 0;
}
#fancybox-wrap {
	height: auto !important;
}
.wpcf7 form .wpcf7-response-output {
	margin: 5px auto 20px;
	text-align: center;
	border: none;
} 
.sent .wpcf7-response-output {
	color: green;
}
.cf7-submit-wrap {
	position: relative;
}
.cf7-submit-wrap {
	width: 260px;
}
.wpcf7-spinner {
	position: absolute;
	left: calc( 50% + 130px );
	top: 34px;
}
.site-logotype img {
	width: 125px;
}
.woocommerce-product-gallery {
	opacity: 1 !important;
}
.header-search.header-search--compact {
	display: block;
}
.header-search--compact .search-form .search-submit::before {
	top: 0px;
}
#billing_company_vat_validate {
	height: 44px;
}
#billing_company_vat_validate:active, 
.button:not(:disabled):not(.disabled):active:focus,
.cart-collaterals .checkout-button:not(:disabled):not(.disabled):active:active {
	color: #fff;
}
.alt.button_calc:focus {
	color: rgb(57, 96, 255) !important;
}
.alt.button_calc:hover {
	color: rgb(57, 96, 255) !important;
}
.alt.button_calc:active {
	color: #fff !important;
}
#billing_company_vat {
	display: inline-block;
	width: calc(100% - 120px);
	margin-right: 5px;
}
#billing_company_vat_field .eascompliance_company_vat_button {
	margin-top: -2px;
}
.woocommerce .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-last {
	margin-left: 0;
}
div.woocommerce form .form-row input {
	margin-bottom: 5px;
}
.swiper-wrapper {
	content-visibility: visible !important;
}

@media screen and (max-width: 991.88px) {
	.footer-navigation.fixed {
		display: block;
	}
	.footer-navigation.fixed ul {
		flex-direction: row;
		display: flex;
	}
}

@media screen and (min-width: 681px) {
	#category-sidebar__wrap {
		display: block !important;
	}
}
@media screen and (max-width: 1200px) {
	.shop-grid--columns-4 .product-category, .shop-grid--columns-4 .shop-item {
		width: 33%;
	}
	.category-sidebar__wrap {
		min-width: 190px;
	}
}
@media screen and (max-width: 991px) {
	.shop-grid--columns-4 .product-category, .shop-grid--columns-4 .shop-item {
		width: 50%;
	}
}
@media screen and (max-width: 680px) {
	#show-categories {
		display: block;
		text-align: left;
	}
	#show-categories span {
		display: inline-block;
		cursor: pointer;
		border: 1px solid #ced4da;
		border-radius: 3px;
		padding: 8px 42px 6px 30px;
		margin-bottom: 16px;
		position: relative;
	}
	#show-categories span::after,
	#show-categories span::before {
		content: '';
		position: absolute;
		right: 18px;
		top: calc( 50% - 1px );
		display: block;
		width: 14px;
		height: 2px;
		background-color: #736e6e;
	}
	#show-categories span::after{
		transform: rotate(90deg);
		transition: transform 0.3s ease;
	}
	#show-categories span.show-categories__open::after {
		transform: rotate(0deg);
	}
	.products-main-wrap, .card-slider-wrap {
		display: flex;
		flex-direction: column;
	}
	.category-sidebar__wrap{
		display: none;
	}
	.shop-sorting {
		margin-top: 20px;
	}
	.site-branding__body, .wc-categories-list ul:not([class])::before {
		display: none;
	}
	.wc-categories-list ul {
		display: flex;
		flex-wrap: wrap;
	}
	body.sidebar-none .card-slider-container.full {
		padding-bottom: 60px;
	}
	.card-slider--type-product .card-slider__image {
		margin: 0;
	}
	.card-slider__body-inner {
		padding-right: 15px;
		padding-left: 15px;
	}
	.woocommerce-mini-cart__buttons .button.wc-forward {
		margin-right: 10px;
	}
}

@media screen and (max-width: 420px) {
	.shop-grid--columns-4 .product-category, .shop-grid--columns-4 .shop-item {
		width: 100%;
	}
	.pruductcat-thumbnails__list li {
		width: 25%;
	}
}

.social-links-mobile {
	display: none;
}

@media screen and (max-width: 990.8px) {
	.product-container {
		flex-direction: column-reverse;
	}
	.product-container > .woocommerce-breadcrumb {
		order: 1;
	}
}
@media screen and (max-width: 766.8px) {
	.site-header-inner > .social-links,
	.site-header-inner > .header-phone {
		display: none;
	}
	.site-header-inner .header-search .search-form {
		transform: none;
		position: relative;
		margin-left: 40px;
		max-width: calc(100% - 40px);
		left: auto !important;
		top: auto;
	}
	.header-search.header-search--compact {
		margin: 14px 0 0;
		padding: 10px 0;
		max-width: 100%;
		width: 100%;
	}
	.header-search.header-search--compact > .header-search-ico {
		position: absolute;
		left: 3px;
		top: calc(50% - 10px);
		z-index: 2;
	}
	.social-links-mobile {
		display: flex;
		justify-content: center;
		padding: 0 20px 20px;
		align-items: center;
	}
	.social-links-mobile > div {
		flex-grow: 0;
		margin-top: 0;
	}
	.social-links-mobile > .header-phone {
		margin-right: 15px;
	}
	.social-links-mobile > .social-links {
		margin-top: 15px;
	}
	.header-mobile-items-container {
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
	}
}

@media screen and (max-width: 400px) {
	.humburger { 
		top: 17px;
	}
}
@media screen and (max-width: 766.7px) {
	.header-favorite,
	.header-customer-account {
		display: none;
	}
	.social-links-mobile .header-favorite,
	.social-links-mobile .header-customer-account {
		display: flex;
		padding: 6px 5px 0;
		width: 40px;
		height: 30px;
		justify-content: center;
		align-items: center;
	}
	.header-mobile-items-container .header-mobile-item { 
		display: none;
	}
	.header-search.header-search--compact { 
		padding: 6px 0 0;
	}
	.site-header {
		margin-bottom: 0;
	}
	.main-navigation + .mobile-menu-placeholder.open,
	.site-header + .mobile-menu-placeholder.open {
		margin-top: -10px;
	}
}

@media screen and (min-width: 768px) {
	.header-customer-account:not(.header-customer-account--vis) .header-customer-account__text { 
		width: 70px;
		display: block;
		text-align: left;
	}
	.header-favorite:not(.header-favorite--vis) {
		padding: 0;
	}
}
