/*
Theme Name:     DecoStone
Template:       wp-bootstrap-starter
*/

@import url("../wp-bootstrap-starter/style.css");

html {
	height: 100%;
	font-size: 16px;
}
body {
	height: 100%;
	font-family: 'PT Sans', sans-serif;
	line-height: 1.875;
	color: #292a33;
}
h1, h2, h3, h4 {
	font-family: 'PT Serif', serif;
	color: #292a33;
}
@media (min-width: 1200px) {
  .container {
	  max-width: 1200px;
  }
}
@media (min-width: 576px) and (max-width: 992px) {
  .container {
	  max-width: 100%;
  }
}
.container {
	padding-left: 20px;
	padding-right: 20px;
}
.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
  padding-right: 20px;
  padding-left: 20px;
}
.row {
	margin-left: -20px;
	margin-right: -20px;
}
h1 {
	font-weight: 700;
	font-size: 2rem;
	margin: 0 0 2rem;
	padding: 0;
}
h1 span {
	display: block;
	font-size: 4rem;
	color: #ccb366;
}
h2 {
  position: relative;
  overflow: hidden;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  margin: 0 0 4rem;
}
h2 > span {
  display: inline-block;
}
h2 > span:before, h2 > span:after {
  content: '';
  position: absolute;
  width: 100%;
  border-top: 2px solid #ccb366;
  margin-top: 2rem;
}
h2 > span:before {
  margin-left: -102%;
}
h2 > span:after {
  margin-left: 2%;
}
h3 {
	font-size: 1.5rem;
	line-height: 1.25;
	font-weight: 400;
}
h4 {
	font-size: 1.5rem;
	font-weight: 700;
	margin: 0 0 1rem 0;
}
a {
	color: #ccb366;
	transition: all ease-in-out 0.15s;
}
a:hover, a:focus, a:active {
	color: #ccb366;
	outline: 0;
}
button:hover, button:focus, button:active {
	outline: 0;
}
#content.site-content {
	padding: 0;
}

/* tabs */
.nav-tabs {
	margin: 0 auto 3rem auto;
	width: 20rem;
	border: 0;
}
.nav-tabs .nav-item {
	flex: 1;
	margin: 0;
}
.nav-tabs .nav-link {
	font-weight: 700;
	background: #f0f1f7;
	border-radius: 0;
	color: #333;
	text-align: center;
	border: 0;
	line-height: 2;
	padding: 0.5rem;
	text-transform: uppercase;
}
.nav-tabs .nav-link:hover {
	border: 0;
	color: #ccb366;
	background: #f0f1f7;
}
.nav-tabs .nav-item .active {
	border: 0;
	background: #ccb366;
	color: #fff;
}


/* header */
.site-header-main {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
#header-top {
	background: #fff;
	box-shadow: 0 10px 30px rgba(0,0,0,0.15);
	z-index: 1;
}
#header-top > .container > div {
	display: flex;
	justify-content: space-between;
}
@media (max-width: 992px) {
	#header-top > .container > div {
		flex-direction: column;
		align-items: center;
	}
}
#main-logo {
	margin: 1.25rem 0;
}
#header-contacts {
	display: flex;
	margin: 1.5rem 0;
	text-align: right;
	align-items: center;
}
#header-contacts > div {
	margin-right: 1.5rem;
}
#header-contacts .phone {
	display: block;
	font-size: 2rem;
	line-height: 1;
	color: #292a33;
	font-weight: 700;
}
#header-contacts .phone:hover {
	text-decoration: none;
}
@media (max-width: 992px) {
	#header-contacts {
		flex-direction: column;
		text-align: center;
	}
	#header-contacts > div {
		margin-right: 0;
		margin-bottom: 1rem;
	}
}
#header-menu {
	background: #ccb366;
}
#header-top .navbar {
	padding: 0 1rem;
	justify-content: flex-end;
	align-items: flex-start;
}
#header-top .navbar-nav .nav-link {
	color: #fff;
	padding: 0.75rem 2rem;
	text-transform: uppercase;
	font-size: 1.25rem;
	line-height: 1.5;
}
#header-top .navbar-nav .nav-link:hover,
#header-top .navbar-nav .nav-link:active,
#header-top .navbar-nav .nav-link:focus {
	background: #d9c382;
}
.navbar-toggler {
	z-index: 1;
	padding: 0.75rem;
	margin-right: -1.5rem;
}
.navbar-toggler[aria-expanded="false"] .navbar-toggler-icon {
	background-image: url('images/open-menu.svg');
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
	background-image: url('images/close.svg');
}
#header-bottom-main {
 flex: 1;
 display: flex;
 flex-direction: column;
 justify-content: space-around;
 background: url('images/header-bg.jpg');
 background-position: center center;
 background-size: cover;
 background-repeat: no-repeat;
 padding-bottom: 2rem;
}
#main-banner {
	background: #fff;
	width: 100%;
	box-shadow: 0 10px 30px rgba(0,0,0,0.15);
	display: flex;
}
#main-banner .description {
	flex: 0.85;
	padding: 3rem;
}
#main-banner .description div {
	font-size: 1.5rem;
	line-height: 1.5;
	margin-bottom: 2rem;
}
#main-banner .image {
	flex: 1.15;
	position: relative;
}
#main-banner img {
	display: block;
	position: absolute;
	left: 0;
	right: 2rem;
	bottom: 0;
}
@media (max-width: 992px) {
	#main-banner .description {
		flex: 1;
		text-align: center;
	}
	#main-banner .image {
		display: none;
	}
}
.page-scroller {
	display: block;
	position: absolute;
	left: calc(50% - 0.875rem);
	bottom: 1rem;
	width: 1.75rem;
	height: 4rem;
	background: url('images/scroller.svg');
	background-position: center center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}
.page-scroller:hover {
	transform: translateY(-0.5rem);
}
@media (max-width: 992px) {
	a.page-scroller {
		display: none;
	}
	.navbar {
		flex-wrap: nowrap;
	}
}
@media (max-width: 600px) {
	#main-banner .description {
		padding: 2rem;
	}
  h1 span {
	  font-size: 2rem;
  }
  #main-banner .description div {
  	font-size: 1rem;
  }
  h2 {
  	font-size: 2rem;
  }
  h2 > span:before, h2 > span:after {
  	display: none;
  }
}


/* products */
#products {
	padding: 5rem 0;
	background: #fafafa;
}
#products h2 {
	margin-bottom: 2rem;
}
.products-list {
	display: flex;
	flex-wrap: wrap;
}
.products-list .item {
	width: calc((100% - 1.5rem) / 3);
	margin-right: 0.75rem;
	margin-bottom: 3rem;
}
.products-list .item:nth-child(3n) {
	margin-right: 0;
}
@media (min-width: 560px) and (max-width: 1200px)  {
	.products-list .item {
		width: calc((100% - 0.75rem) / 2);
	}
	.products-list .item:nth-child(3n) {
  	margin-right: 0.75rem;
  }
  .products-list .item:nth-child(2n) {
  	margin-right: 0;
  }
}
@media (max-width: 560px)  {
	.products-list .item {
		width: 100%;
	}
	.products-list .item:nth-child(3n) {
  	margin-right: 0;
  }
  .products-list .item {
  	margin-right: 0;
  }
}
.product-card {
	display: block;
	background: #fff;
	box-shadow: 0 10px 30px rgba(0,0,0,0.15);
	color: #292a33;
	height: 100%;
}
.product-card:hover {
	text-decoration: none;
	color: #292a33;
	background: #d9c382;
	transform: translateY(-0.5rem);
	box-shadow: 0 15px 50px rgba(204,179,102,0.5);
}
.product-card .image {
	position: relative;
	background: #292a33;
}
.product-card img {
	width: 100%;
}
.product-card .stickers {
	position: absolute;
	top: 0;
	left: 2rem;
	display: flex;
	justify-content: flex-end;
}
.product-card .stickers div {
	color: #292a33;
	background: #ccb366;
	text-align: center;
	text-transform: uppercase;
	font-weight: 700;
	width: 4rem;
	padding: 1.5rem 0;
	margin-right: 1rem;
	clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%);
	transition: all ease-in-out 0.15s;
}
.product-card:hover .stickers div {
	background: #d9c382;
}
.product-card .description {
	padding: 2rem;
	border-top: 4px solid #ccb366;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.product-card:hover .description {
	border-color: #d9c382;
}
.product-card .name {
	line-height: 1;
}
.product-card h3 {
	margin: 0;
}
.product-card .name span {
	text-transform: uppercase;
	font-weight: 700;
	line-height: 1.25;
	color: #ccb366;
	transition: all ease-in-out 0.15s;
	margin-bottom: -0.625rem;
}
.product-card:hover .name span {
	color: #fff;
}
.product-card .price {
	font-family: 'PT Serif', serif;
	line-height: 1;
	padding-bottom: 0.125rem;
	color: #292a33;
	font-weight: 700;
}
.product-card .price span {
	font-size: 1.5rem;
	font-weight: 700;
}
@media (max-width: 720px) {
	.product-card .description {
		padding: 1.5rem;
	}
}
#product-image {
	background: #2a2a36;
	position: relative;
}
#product-image img {
	width: 100%;
}
#main #product h1 {
	margin: 1rem 0 2rem;
	font-size: 2.5rem;
}
#product .name span {
	text-transform: uppercase;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.25;
	color: #ccb366;
}
#product-image .stickers {
	position: absolute;
	top: 0;
	left: 2.5rem;
	display: flex;
	justify-content: flex-start;
}
#product-image .stickers div {
	color: #292a33;
	background: #ccb366;
	text-align: center;
	font-size: 1.5rem;
	text-transform: uppercase;
	font-weight: 700;
	width: 5rem;
	padding: 2rem 0;
	margin-right: 1.5rem;
	clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%);
}
#product .attr {
	flex: 1;
}
#product table {
	margin: 0;
	margin: 1.5rem 0;
}
#product table td:first-child {
	width: 30%;
	color: #ccb366;
	font-weight: 700;
}
.calc-label {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 1rem;
	font-weight: 700;
}
.calc-label div:last-child {
	font-size: 1.5rem;
}
.calc-control {
	display: flex;
	width: 100%;
	background: #f0f1f7;
	margin-bottom: 2rem;
}
.calc-radio {
	flex: 1;
}
.calc-radio label {
	display: block;
	padding: 0.25rem 1rem;
	margin: 0;
	line-height: 1.5;
	text-align: center;
	transition: all ease-in-out 0.15s;
	user-select: none;
}
.calc-radio label:hover {
	cursor: pointer;
	transition: all ease-in-out 0.15s;
}
.calc-radio input[type=radio] {
	display: none;
}
.calc-radio input[type=radio]:checked + label {
	background: #ccb366;
	color: #fff;
}
#product .footer {
	padding-top: 2.5rem;
	background: #f0f1f7;
	padding: 2rem 2.5rem;
	margin: 0  0 2.5rem;
}
#product .price {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin: 0;
	font-size: 1.5rem;
	margin-bottom: 1rem;
}
#product .price > div:last-child {
	font-family: 'PT Serif', serif;
	line-height: 1;
	font-weight: 700;
}
#product .price > div:last-child span {
	font-size: 3rem;
}
.product-form {
	background: #ccb366;
	position: relative;
}
.product-form .btn-close {
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  background-image: url('images/close.svg');
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  opacity: 0.5;
}
.product-form form {
	padding: 1.5rem 2rem;
}
@media (max-width: 1120px) {
	.modal-product {
		max-width: 700px;
	}
	.modal-product .modal-content {
	  flex-direction: column;
  }
  .modal-product .image {
  	width: auto;
  	border-bottom: 4px solid #ccb366;
  }
  
}
@media (max-width: 720px) {
	.modal-product {
		max-width: 700px;
		margin: 0.5rem;
	}
}
@media (max-width: 480px) {
	.modal-product .description {
		padding: 0 1.5rem;
	}
	.modal-product .stickers {
		left: 1.5rem;
	}
	.modal-product .footer {
		margin: 0 -1.5rem;
		padding: 1.5rem;
	}
	.calc-control {
		flex-direction: column;
	}
	.modal-product .price {
		flex-direction: column;
		align-items: center;
	}
}

.form-check {
	text-align: left;
	line-height: 1.5;
}
.form-check p {
	margin: 0;
}
.form-check br {
	display: none;
}
.dark-bg .form-check a {
	color: #fff;
}

/* adverts */
#adverts {
	padding: 5rem 0;
	background: #d9c382;
}
#adverts h2 > span:before, #adverts h2 > span:after {
	border-color: #fff;
}
.adv-card {
	background: #fff;
	box-shadow: 0 10px 30px rgba(0,0,0,0.15);
	padding: 2.5rem;
	display: flex;
	margin-bottom: 2.5rem;
	height: calc(100% - 2.5rem);
}
.adv-card .image {
	flex: none;
	margin-right: 2rem;
}
.adv-card p {
	line-height: 1.5;
	margin: 0;
}
@media (max-width: 480px) {
	.adv-card {
		flex-direction: column;
		align-items: center;
		text-align: center;
		padding: 1.5rem;
	}
	.adv-card .image {
		margin-right: 0;
		margin-bottom: 1.5rem;
	}
}

/* gallery */
#gallery {
	padding: 5rem 0 0;
	background-image: url('images/gallery-bg.jpg');
	background-repeat: no-repeat;
	background-position: center top;
	background-size: contain;
}
#work-order {
	background: #fff;
	padding: 2.5rem;
	box-shadow: 0 10px 30px rgba(0,0,0,0.15);
	margin-bottom: 3rem;
}
.card {
	border: 0;
}
.card-header {
	border: 0;
	background: none;
	padding: 0.5rem 0;
}
.card-header h4 {
	margin: 0;
}
.card-header a {
	display: flex;
	align-items: center;
	color: #292a33;
}
.card-header a:hover {
	text-decoration: none;
	color: #ccb366;
}
.card-header span {
	display: block;
	width: 3rem;
	line-height: 3rem;
	text-align: center;
	font-weight: 700;
	color: #fff;
	background: #ccb366;
	margin-right: 1rem;
}
.card-body {
	padding: 1rem 0 0 4rem;
	position: relative;
}
.card-body:before {
	position: absolute;
	content: '';
	border-left: 1px solid #292a33;
	top: 0;
	bottom: -1.5rem;
	left: 1.5rem;
}
.card:last-child .card-body:before {
	display: none;
}
#gallery-block {
	background: #fff;
	box-shadow: 0 10px 30px rgba(0,0,0,0.15);
	z-index: 1;
	position: relative;
  margin-bottom: -2.5rem;
}
#gallery-form {
	padding: 3rem 4rem 4rem;
	text-align: center;
	border-top: 4px solid #ccb366;
}
#gallery-form h3 {
	margin: 0 0 1.5rem 0;
}
#gallery-form .subheader {
	margin-bottom: 1.5rem;
	font-size: 1.5rem;
}
#gallery iframe {
	margin-bottom: -0.75rem;
}
@media (max-width: 568px) {
	#gallery-form {
		padding: 1.5rem;
	}
	#gallery-form .subheader {
		font-size: 1rem;
	}
}
@media (max-width: 480px) {
	#work-order {
		padding: 1.5rem;
	}
}

/* carousel */
@media screen and (min-width: 911px) {
  .ant-carousel {
    max-width: 1160px;
  }
}
@media screen and (min-width: 641px) and (max-width: 910px) {
  .ant-carousel {
    max-width: 540px;
  }
}
@media screen and (max-width: 640px) {
  .ant-carousel {
    max-width: 270px;
  }
}
.ant-carousel {
  margin: 0 auto;
}
.ant-carousel-element {
  width: 1160px;
  text-align: center;
}
.ant-carousel-element img {
	width: 100%;
}

/* pages */
#main h1 {
	font-size: 3rem;
	margin: 2rem 0;
}
#primary {
	padding: 2rem 0;
}
.post-item {
	margin-bottom: 2rem;
}
.post-item h3 {
	margin-top: 0;
	font-size: 2rem;
}
.article_decoration_first {
	margin-bottom: 1rem;
}

/* owl-carousel */
.owl-carousel .owl-stage {
	display: flex;
	align-items: center;
}
.owl-carousel .owl-item {
	flex: none;
}
.owl-nav {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(50% - 2rem);
}
.owl-carousel .owl-prev, .owl-carousel .owl-next {
  transition: all ease-in-out 0.15s;
  position: absolute;
  width: 4rem;
	height: 4rem;
}
.owl-carousel .owl-prev {
	left: 0;
}
.owl-carousel .owl-next {
	right: 0;
}
.owl-prev:hover {
	transition: all ease-in-out 0.15s;
}
.owl-next:hover {
	transition: all ease-in-out 0.15s;
}
.owl-dots {
	position: absolute;
	width: 100%;
	bottom: 1rem;
  margin: 0;
  text-align: center;
}
.owl-carousel button.owl-dot {
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 15px;
  border-radius: 50%;
  background: rgba(255,255,255,0.5);
}
.owl-carousel button.active, .owl-carousel button.active:hover {
	background: #ccb366;
}
.owl-dots .owl-dot span {
  display: none;
}
.owl-dots .owl-dot:hover {
	background: #fff;
}
.arrow {
	display: block;
	width: 4rem;
	height: 4rem;
	background-repeat: no-repeat;
}
.owl-carousel .arrow {
	background-color: #ccb366;
	background-position: center center;
	background-size: 2rem 2rem;
}
.owl-carousel .arrow:hover {
	background-color: #d9c382;
}
.arrow-left {
	background-image: url('images/arrow-left.svg');
}
.arrow-right {
	background-image: url('images/arrow-right.svg');
}

/* General styles */
.ant-carousel {
  width: auto;
  position: relative;
}
.ant-carousel-hider {
  overflow: hidden;
}
.ant-carousel-list {
  width: auto;
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  justify-content: flex-start;
}
.ant-carousel-element {
  display: block;
  flex: 0 0 auto;
}

/* Navigation item styles */
.ant-carousel-arrow-left, .ant-carousel-arrow-right {
  width: 4rem;
  height: 4rem;
  position: absolute;
  cursor: pointer;
  z-index: 32;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #ccb366;
  background-size: 2rem 2rem;
  transition: all ease-in-out 0.15s;
}
.ant-carousel-arrow-left {
  left: 0;
  top: 40%;
  display: block;
  background-image: url('images/arrow-left.svg');
}
.ant-carousel-arrow-right {
  right: 0;
  top: 40%;
  display: block;
  background-image: url('images/arrow-right.svg');
}
.ant-carousel-arrow-left:hover, .ant-carousel-arrow-right:hover {
  background-color: #d9c382;
}
.ant-carousel-dots {
  width: 100%;
  height: auto;
  position: absolute;
  left: 0;
  bottom: 2rem;
  z-index: 30;
  display: flex;
  justify-content: center;
}
.ant-dot {
  width: 5rem;
  height: 0.75rem;
  margin: 0 0.5rem;
  padding: 0;
  background-color: #fff;
  opacity: 0.4;
  cursor: pointer;
  transition: all ease-in-out 0.15s;
}
.ant-dot.active {
	background-color: #ccb366;
	opacity: 1;
}
.ant-dot:hover {
	opacity: 1;
}

/* footer */
body:not(.theme-preset-active) footer#colophon {
	background: #292a33;
	font-size: 100%;
	color: #fff;
}
footer#colophon a {
	color: #ccb366;
}
footer#colophon a:hover {
	text-decoration: none;
	color: #fff;
}
#footer-top {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #ccb366;
	padding: 2rem 0;
}
#footer-contacts {
	text-align: right;
}
#footer-contacts .phone {
	display: block;
	font-size: 2rem;
	line-height: 1;
	color: #fff;
	font-weight: 700;
}
#footer-contacts .phone:hover {
	text-decoration: none;
}
#footer-menu {
	text-transform: uppercase;
}
.site-info {
	display: flex;
	justify-content: space-between;
	padding: 1rem 0;
}
footer#colophon .site-info a {
	color: #fff;
}
.footer-privacy {
	text-align: right;
}
.cookie-info {
	text-align: center;
	opacity: 0.5;
	padding: 0 0.5rem 1rem;
	line-height: 1.25;
}
@media (max-width: 992px) {
	#footer-top {
		flex-direction: column;
		align-items: center;
	}
	#footer-menu {
		margin: 1rem 0;
	}
	#footer-contacts > div {
		text-align: center;
	}
}
@media (max-width: 768px) {
	.site-info {
		display: block;
		text-align: center;
	}
	.footer-privacy {
		text-align: center;
	}
}
@media (max-width: 568px) {
	#footer-menu .navbar-nav {
		flex-direction: column;
		align-items: center;
	}
}

/* modal */
.modal-content {
	border-radius: 0;
	border: 0;
	box-shadow: 0 10px 30px rgba(0,0,0,0.15);
}
.modal-header {
	border: 0;
	background: #ccb366;
	padding: 1rem 2rem;
	border-radius: 0;
}
.modal-body {
	padding: 2rem;
}
.modal-footer {
	border: 0;
	padding: 2rem;
}
.modal-title {
	font-size: 1.5rem;
	text-align: center;
	font-weight: 700;
	width: 100%;
	margin-top: 0;
	color: #fff;
}
.modal .close {
	position: absolute;
	top: -4.5rem;
	right: -4.5rem;
	padding: 1rem;
}
.modal .close-icon {
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	background-image: url('images/close.svg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.modal-backdrop {
	background: #292a33;
}
.modal-backdrop.show {
	opacity: .85;
}
@media (max-width: 1120px) {
  .modal-product .close {
  	top: 0;
  	right: 0;
  	background: #ccb366;
  	opacity: 1;
  	z-index: 1;
  }
  .modal-product .close-icon {
  	width: 1.5rem;
  	height: 1.5rem;
  	background-image: url('images/close1.svg');
  }
    .modal-product .close:not(:disabled):not(.disabled):focus,
    .modal-product .close:not(:disabled):not(.disabled):hover {
	  background-color: #d9c382;
	  opacity: 1;
  }
}

/* forms */
.form-group {
  margin-bottom: 1.5rem;
}
.form-control {
	padding: 0.75rem 1rem;
	color: #292a33;
	border: 0;
	border-bottom: 1px solid #292a33;
	border-radius: 0;
	text-align: center;
	height: auto;
	margin-bottom: 1rem;
	font-variant-numeric: lining-nums;
}
.dark-bg .form-control {
	background: 0;
	border-bottom: 1px solid #fff;
	color: #fff;
}
.form-control::placeholder {
	color: #363e4d;
	opacity: 0.75;
}
.dark-bg .form-control::placeholder {
	opacity: 1;
	color: #fff;
}
.form-control:focus {
  color: #292a33;
  background-color: #fff;
  border-color: #ccb366;
  outline: 0;
  box-shadow: none;
}
.dark-bg .form-control:focus {
	background: none;
	border-color: #fff;
	color: #fff;
}
.form-control:focus::placeholder {
	opacity: 0;
}
.custom-select {
	padding: 0.75rem 1rem;
	font-size: 1.125rem;
	color: #363e4d;
	border: 2px solid #940084;
	border-radius: 0.625rem;
	height: auto;
	background: #fff url("images/select-arrow.png") no-repeat right 1.25rem center;
}
.custom-select:focus {
  color: #363e4d;
  background-color: #fff;
  border-color: #e2d06e;
  outline: 0;
  box-shadow: none;
}
.custom-file {
  height: auto;
}
.custom-file-label {
	padding: 0.5rem 1rem;
	font-size: 1.125rem;
	color: #363e4d;
	border: 2px solid #940084;
	border-radius: 0.625rem;
	height: auto;
	margin: 0;
	line-height: 1.125rem;
}
.custom-file-label::after {
  top: 0.625rem;
  right: 0.625rem;
  bottom: 0.625rem;
  height: auto;
  padding: 0.375rem 1rem;
  line-height: 1;
  color: #fff;
  content: "Загрузить файл**";
  background-color: #940084;
  border: none;
  border-radius: 0.25rem;
}
.custom-file-input {
	height: calc(3.25rem + 4px);
}
.custom-control {
	padding-left: 0;
}
.custom-control-label {
	font-size: 1.125rem;
	padding-left: 3.75rem;
}
.custom-checkbox .custom-control-label::before {
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 0.625rem;
	background-color: #fff;
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-color: #e2d06e;
}
.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: none;
}
.custom-checkbox .custom-control-label::after {
	display: none;
}
.ajax-loader {
  display: none !important;
}
div.wpcf7-validation-errors[style] {
  display: none !important;
}
.wpcf7-mail-sent-ok {
  background: transparent;
  text-align: center;
  color: #50b525;
  line-height: 1.5rem;
}
div.wpcf7-mail-sent-ok {
	border: 0;
}
.wpcf7-not-valid-tip {
	text-align: center;
	font-size: 0.75rem;
	margin: -1rem 0 1rem;
}
.wpcf7 form .wpcf7-response-output {
	margin: 1rem 0 0 !important;
	padding: 0.5rem !important;
	text-align: center;
	border-width: 1px;
	line-height: 1.25rem;
	background: #fff;
}
.accept {
	text-align: center;
}
.wpcf7-spinner {
	display: none;
}

/* buttons */
.btn {
	font-size: 1rem;
	padding: 1rem 2rem;
	border-radius: 0;
	line-height: 1;
	text-transform: uppercase;
	font-weight: 700;
}
.btn:focus {
	box-shadow: none;
}
.btn-lg {
	font-size: 1.25rem;
	padding: 1rem 2.5rem;
}
.btn-block + .btn-block {
	margin-top: 1.5rem;
}
.btn-primary {
	background: #ccb366;
	color: #fff;
	border: 0;
	box-shadow: none;
}
.btn-primary:focus, .btn-primary:hover {
	background: #d9c382 !important;
	color: #fff;
	border-color: #d9c382;
	box-shadow: 0 0.5rem 1.5rem rgba(204,179,102,0.5);
}
.btn-primary:active {
  background: #ccb366 !important;
	color: #fff;
	box-shadow: none !important;
}
.btn-primary:disabled, .btn-primary:disabled:hover {
	background: #ccb366!important;
	border-color: #ccb366;
	color: #fff;
	opacity: 0.5;
}
.btn-default {
	background: none;
	color: #292a33;
	border: 1px solid #ccb366;
	box-shadow: none;
}
.btn-default:focus, .btn-default:hover {
	background: #d9c382 !important;
	color: #fff;
	border-color: #d9c382;
	box-shadow: 0 0.5rem 1.5rem rgba(204,179,102,0.5);
}
.btn-default:active {
	background: #ccb366 !important;
	color: #fff;
	box-shadow: none;
}
.btn-outline-white {
	background: none;
	color: #fff;
	border: 1px solid #fff;
	box-shadow: none;
}
.btn-outline-white:focus, .btn-outline-white:hover {
	background: #fff !important;
	color: #292a33;
	border-color: #fff;
	box-shadow: 0 0.5rem 1.5rem rgba(0,0,0,0.15);
}
.btn-outline-white:active {
	background: #fff !important;
	color: #292a33;
	box-shadow: none;
}
.btn-outline-white:disabled, .btn-outline-white:disabled:hover {
	background: none;
	color: #fff;
	border: 1px solid #fff;
	opacity: 0.5;
}

.grecaptcha-badge {
	visibility: hidden;
}

#captch {
	opacity: 0.5;
	font-size: 0.8rem;
	text-transform: none;
}

#cooknotice {
	display: none;
	position: fixed;
	z-index: 10;
	left: 0;
	bottom: 0;
	width: 100%;
	background: #fff;
	padding: 10px;
	color: #333;
}
#cooknotice-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#cooknotice-accept {
	margin-left: 10px;
}
@media (max-width: 480px) {
	#cooknotice-wrap {
		flex-direction: column;
		text-align: center;
	}
	#cooknotice-accept {
		margin: 10px 0 0;
	}
}
