/*
Theme Name: Wine Poacher
Author: Component Blox
Description: Bootstrap Component Blox Child Theme
Version: 1.0
Template: bootstrap-component-blox
*/

:root {
	--wp-primary: #4F0100;
	--wp-secondary: #820200;
	--wp-dark: #141414;
	--wp-accent: #D5B100;
}

/* ===== Global ===== */

html,
body { 
	overflow-x: hidden;
}

a {
	color: var(--wp-primary);
	text-decoration: none;
}

a:hover {
  	text-decoration: none;
	color: inherit;
	opacity: .8;
}

h1, h2, h3, h4, h5 {
  	font-family: "Montserrat", sans-serif;
}

/* ===== Custom Classes ===== */

.mw-80 {
  	max-width: 80%;
}

.mw-90 {
  	max-width: 95%;
}

.p-6 {
	padding: 6rem;
}

.container-fluid,
.container {
  	padding-right: 1.5rem;
  	padding-left: 1.5rem;
}

.card {
  	border-radius: 0;
}

.fw-200 {
  	font-weight: 200;
}

.fw-400 {
  	font-weight: 400;
}

.fw-medium {
  	font-weight: 500;
}

.fw-600 {
  	font-weight: 600;
}

.font-header {
  	font-family: "Montserrat", sans-serif;
}

.font-body {
  	font-family: "Heebo", sans-serif;
}

.font-cinzel {
	font-family: 'Cinzel Decorative', cursive;
}

.text-white-75 {
  	color: rgba(255, 255, 255, 0.75);
}

.white-overlay {
	position: absolute;
	top: 0;
	left: 0;
	background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
	width: 100%;
	height: 100%;
}

/* ===== Text Color ===== */

.wp-text-primary {
  	color: var(--wp-primary);
}

.wp-text-secondary {
  	color: var(--wp-secondary);
}

.wp-text-dark {
  	color: var(--wp-dark);
}

.wp-text-accent {
  	color: var(--wp-accent);
}

/* ===== Background Color ===== */

.wp-bg-primary {
	background: var(--wp-primary);
}

.wp-bg-secondary {
	background: var(--wp-secondary);
}

.wp-bg-dark {
	background: var(--wp-dark);
}

.wp-bg-accent {
	background: var(--wp-accent);
}

/* ===== Buttons ==== */

.btn {
  	padding: .75rem 1.75rem;
  	text-transform: uppercase;
  	letter-spacing: 1px;
  	border-radius: 0;
	font-size: 14px;
  	font-weight: 500;
}

.wp-btn-primary,
.wp-btn-primary:visited {
  	background-color: #fff;
  	border: 1px solid rgba(0, 0, 0, 0.5);
	outline: 3px solid #fff;
	color: var(--wp-dark);
}

.wp-btn-primary:hover {
	background: var(--wp-dark);
	color: #fff!important;
}

.wp-btn-primary:focus {
	outline: 3px solid #fff!important;
}

.wp-btn-secondary,
.wp-btn-secondary:visited,
.wp-btn-secondary:focus {
  	background-color: var(--wp-dark);
  	border: 1px solid rgba(255, 255, 255, 0.5);
  	outline: 3px solid var(--wp-dark);
  	color: #fff;
}

.wp-btn-secondary:hover {
	background: #fff;
	color: var(--wp-dark);
}

.wp-btn-secondary:focus {
	outline: 3px solid var(--wp-dark)!important;
}

.wp-btn-red,
.wp-btn-red:visited,
.wp-btn-red:focus {
  	background: #820400;
  	border: 1px solid rgba(255, 255, 255, 0.5);
  	outline: 3px solid #820400;
  	color: #fff;
}

.wp-btn-red:hover {
	background: #fff;
	color: var(--wp-dark);
}

.wp-btn-red:focus {
	outline: 3px solid #820400!important;
}

/* ===== Navbar ===== */

.top-nav {
  	background-color: #131313;
}

.top-nav a {
  	font-size: .85rem;
  	letter-spacing: 1px;
  	color: #eee;
}

.top-nav a:hover {
  	opacity: .5;
	color: #fff;
}

.top-nav .navbar-nav {
  	-webkit-box-orient: horizontal;
  	-webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

#nav-header {
  	left: 0;
  	width: 100%;
  	background-color: #fff;
  	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  	z-index: 99;
}

#wp-logo {
	width: 200px;
	height: auto;
}

#nav-header .menu-item {
  	margin-left: 1rem;
}

#nav-header .navbar .nav-link {
  	font-weight: 500;
  	text-transform: uppercase;
  	font-size: 14px;
  	color: #131313;
  	white-space: nowrap;
}

#nav-header .navbar .nav-link:hover {
	color: var(--wp-primary)
}

#nav-header .product-search {
  	width: 100%;
  	margin: 0 1rem;
}

#nav-header .product-search input {
    height: 41px;
    padding: 15px;
    -webkit-transition: .25s ease;
    transition: .25s ease;
    border: 1px solid #ccc;
    border-radius: 50px;
}

#nav-header .product-search input:hover {
  	border-color: rgba(0, 0, 0, 0.25);
}

#nav-header .product-search input:focus {
  	border-color: rgba(0, 0, 0, 0.25);
  	background-color: #fff;
}

/*=====  Toggler =====*/

#toggler:focus, 
#toggler:active {
    outline: 0;
}

#toggler span {
    width: 30px;
    height: 3px;
    display: block;
    background-color: var(--wp-dark);
    margin: 7px 0;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
}

#toggler span:nth-child(1) {
    -webkit-transform: translatey(10px);
        -ms-transform: translatey(10px);
            transform: translatey(10px);
}
#toggler span:nth-child(2) {
    opacity: 1;
    width: 15px;
    -webkit-transform: translatex(33%);
        -ms-transform: translatex(33%);
            transform: translatex(33%)
}
#toggler span:nth-child(3) {
    -webkit-transform: translatey(-10px);
        -ms-transform: translatey(-10px);
            transform: translatey(-10px);  
}

#toggler.collapsed span {
    -webkit-transform: translatey(0);
        -ms-transform: translatey(0);
            transform: translatey(0);
    opacity: 1;
    width: 30px;   
}

/* ===== Header ===== */

.home-header__mast-content {
  	padding: 5rem;
  	min-height: 500px;
	margin-top: 20px;
}

/* ===== Home All ===== */
.home-all__mast-content-upper {
  	padding: 5rem;
  	min-height: 300px !important;
}

/* ===== About ===== */

.home-about__mast-content-upper {
  	padding: 5rem;
  	min-height: 500px;
}

.home-about__mast-content-box {
  	padding: 5rem;
  	min-height: 500px;
  	background-color: #131313;
  	color: #eee;
}

.home-about__thumb {
  	display: block;
  	width: 100%;
  	height: 100%;
}

/* ===== Single Product ===== */

.single-product .onsale {
	background: transparent!important;
}

.single-product .wp-post-image {
    display: block;
    width: auto!important;
    height: auto;
    box-shadow: none;
    margin: auto!important;
}

.single-product aside#sidebar {
	clear: both;
}

.single-product .quantity {
	float: none!important;
	margin-bottom: 10px!important;
}

.single-product .single_add_to_cart_button {
	background: var(--wp-dark)!important;
	border: none!important;
	border-radius: 0!important;
	padding: 0.75rem 1.75rem!important;
    text-transform: uppercase!important;
    letter-spacing: 1px!important;
    border-radius: 0!important;
    font-size: 14px!important;
    font-weight: 500!important;
	width: 200px!important;
}

.single-product .added_to_cart {
	display: none!important;
}

.single-product .qty {
    width: 200px!important;
    text-align: center!important;
    border: 1px solid #ddd!important;
    height: 35px!important;
}

.single-product .product_title {
	font-size: 28px;
	font-weight: bold;
}

.single-product .price {
	font-weight: bold!important;
	font-size: 24px!important;
}

.single-product .price ins {
	text-decoration: none!important;
}

/* ===== Product Archive ===== */

#wp-product-featured .add_to_cart_button,
#wp-product-shop .add_to_cart_button{
  	display: inline-block;
  	text-align: center;
  	background-color: #131313;
  	color: #fff;
  	padding: .5rem .75rem;
  	border-radius: 0;
  	font-size: 1rem;
  	border-radius: 5px;
  	opacity: 0;
  	-webkit-transition: .25s ease;
  	transition: .25s ease;
}

#wp-product-featured .add_to_cart_button:hover,
#wp-product-shop .add_to_cart_button:hover {
  	background-color: #000;
}

#wp-product-featured img,
#wp-product-shop img{
  	max-height: 250px;
}

#wp-product-featured .card,
#wp-product-shop .card{
  	background-color: transparent;
  	border: 3px solid transparent;
  	-webkit-transition: .25s ease;
  	transition: .25s ease;
	box-shadow: 0 .125rem .25rem rgba(0,0,0,.075)!important;
}

#wp-product-featured .card:hover,
#wp-product-shop .card:hover{
	box-shadow: 0 1rem 3rem rgba(0,0,0,.175)!important;
}

#wp-product-featured .card:hover .btn,
#wp-product-shop .card:hover .btn{
	background: var(--wp-dark);
	color: #fff;
}

#wp-product-featured .card .card-header,
#wp-product-shop .card .card-header{
  	background-color: transparent;
  	border: none;
}

#wp-product-featured .card h4,
#wp-product-shop .card h4{
  	font-size: 1.1rem;
  	margin: 0;
}

#wp-product-featured .card .price,
#wp-product-shop .card .price{
  	font-weight: 700;
  	font-size: 1.1rem;
  	display: inline-block;
}

#wp-product-featured .card:hover a,
#wp-product-shop .card:hover a{
  	color: #1C1B1B;
}

#wp-product-featured .card:hover .add_to_cart_button,
#wp-product-shop .card:hover .add_to_cart_button{
  	color: #fff;
  	opacity: 1;
}

#wp-product-featured .rating,
#wp-product-shop .rating{
	padding: 5px 10px;
    position: absolute;
    top: 10px;
    right: 10px;
    background: var(--wp-secondary);
    color: #fff;
    border-radius: 3px;
    font-size: 13px;
}

#wp-product-featured .added_to_cart,
#wp-product-shop .added_to_cart {
	display: none!important;
}

#wp-product-featured button,
#wp-product-shop button {
	text-decoration: none!important;
	cursor: pointer!important;
	-webkit-appearance: none!important;
	-moz-appearance: none!important;
	border: none!important;
}

#wp-product-featured .added,
#wp-product-shop .added {
	opacity: 1!important;
	background: var(--bs-success)!important;
}

#wp-product-featured img.wp-sale-ribbon ,
#wp-product-shop img.wp-sale-ribbon {
    position: absolute;
    width: 100px;
    left: -7px;
    top: -7px;
}

/* ===== Cart Popup ===== */

#cartpops-drawer .cpops-cart-item__quantity input[type=number] {
	color: var(--wp-dark)!important;
}

#cartpops-drawer .cpops-cart-item__quantity button svg path {
    fill: #999!important;
}

/* ===== Woocommerce Global ===== */

.woocommerce-error, 
.woocommerce-info, 
.woocommerce-message {
	border-radius: 4px;
    border: 2px solid #4f010005!important;
}

/* ===== Cart Page ===== */

.woocommerce-cart .cart-empty.woocommerce-info {
    padding: 1em 2em 1em 2em;
}

.woocommerce-cart .cart-empty.woocommerce-info::before {
    display: none;
}

.woocommerce-cart-form #coupon_code {
    width: auto;
    border:  none;
}

.woocommerce-cart-form .button {
    font-weight: normal!important;
}

.woocommerce-cart-form a.remove {
    text-indent: -9999px;
}

.woocommerce-cart-form .product-remove {
    position: relative;
}

.woocommerce-cart-form .product-remove a:hover {
    background:  transparent;
    opacity:  0.8;
}

.woocommerce-cart-form a.remove:before,
.woocommerce-cart-form a.remove:after  {
    content: '';
    position: absolute;
    left: 22px;
    content: ' ';
    height: 20px;
    width: 2px;
    background-color: #333;
}

.woocommerce-cart-form a.remove:before {
    transform: rotate(45deg);
}

.woocommerce-cart-form a.remove:after {
    transform: rotate(-45deg);
}

.woocommerce-cart-form .product-thumbnail img {
    width: 50px!important;
}

.woocommerce-cart-form .wc-proceed-to-checkout {
    padding-bottom:  0;
}

.woocommerce-cart-form .wc-proceed-to-checkout a {
    margin-bottom:  0!important;
}

.woocommerce-cart-form input[type=number]::-webkit-inner-spin-button, 
.woocommerce-cart-form input[type=number]::-webkit-outer-spin-button {  
   opacity: 1;
}

.woocommerce-cart-form .quantity .qty {
    border: none;
}

.woocommerce-cart-form .cart_totals h2 {
    font-size:  1.5em;
}

.woocommerce-cart-form button[name='update_cart'] {
    display: none!important;
}

.woocommerce-cart .coupon {
    float: right!important;
}

.woocommerce-cart .cart_totals h2 {
    display: none;
}

.woocommerce-cart .product-name a {
    color: var(--woo-primary);
}

.woocommerce-cart a.button.alt {
	background: var(--wp-primary);
}

.woocommerce-cart a.button.alt:hover {
	background: var(--wp-dark);
	color: #fff;
}

#shipping_method label {
	display: inline!important;
	line-height: 1!important;
	position: relative;
	bottom: 3px;
}

/* ===== Has Form ===== */

.has-form .wpforms-container {
	margin-bottom: 0!important;
}

.has-form input,
.has-form textarea {
	padding: 20px 15px!important;
	background: #eee!important;
	border: none!important;
}

.has-form .wpforms-submit {
	border: none!important;
	color: #fff!important;
	padding: 0.75rem 1.75rem!important;
    text-transform: uppercase!important;
    letter-spacing: 1px!important;
    border-radius: 0!important;
    font-size: 14px!important;
    font-weight: 500!important;
	background: var(--wp-primary)!important;
}

/* ===== Checkout Page ===== */

.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2,
.woocommerce-account .col2-set .col-1,
.woocommerce-account .col2-set .col-2 {
    float: none;
    width:  100%
}

.woocommerce-checkout form.woocommerce-form-coupon .form-row-last,
.woocommerce-account form.woocommerce-form-coupon .form-row-last{
    float: none!important;
}

.woocommerce-checkout .form-row-first, 
.woocommerce-checkout .form-row-last,
.woocommerce-account .form-row-first, 
.woocommerce-account .form-row-last{
    width: 49%!important;
}

.woocommerce-checkout form,
.woocommerce-account form {
    border: 1px solid rgba(0,0,0,0.1)!important;
    padding: 30px;
    border-radius: 5px;
}

.woocommerce-checkout input[type=text],
.woocommerce-checkout input[type=password],
.woocommerce-checkout input[type=email],
.woocommerce-checkout input[type=phone],
.woocommerce-checkout input[type=tel],
.woocommerce-account input[type=text],
.woocommerce-account input[type=password],
.woocommerce-account input[type=email],
.woocommerce-account input[type=phone],
.woocommerce-account input[type=tel]{
    border: 1px solid rgba(0,0,0,.1)!important;
    box-shadow: none!important;
    height: 40px!important;
    border-radius: 0!important;
    padding-left: 15px!important;
    width: 100%!important;
}

/* .woocommerce-checkout label */

.woocommerce-account label{
    display: block!important;
    line-height: 2!important;
}

#payment label {
	 display: inline-block!important;
}

#payment input {
    margin: 0!important;
}

#payment .woocommerce-SavedPaymentMethods-saveNew {
	padding-left: 15px!important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single,
.woocommerce-account .select2-container--default .select2-selection--single{
    border: 1px solid rgba(0,0,0,.1)!important;
    box-shadow: none!important;
    height: 40px!important;
    border-radius: 0!important;
    padding-left: 5px!important;
    padding-top: 5px!important;
}

.woocommerce-checkout textarea,
.woocommerce-account textarea {
    border: 1px solid rgba(0,0,0,.1)!important;
    border-radius: 0!important;
    padding: 15px!important;
}

.woocommerce-checkout #place_order {
	background: var(--wp-primary);
	border: none!important;
}

#wc-stripe-cc-form .form-row {
	padding-bottom: 0!important;
	margin-bottom: 0!important;
}

/* ===== Footer ===== */

.footer-widgets,
footer {
  	color: rgba(255, 255, 255, 0.75);
  	background-color: var(--wp-dark);
}

#footer-widgets .row {
	max-width: 80%;
	margin: auto;
}

#footer-widgets a:hover {
	color: var(--wp-accent);
}

.footer-widgets a,
.footer-widgets li,
.footer-widgets p {
  	color: rgba(255, 255, 255, 0.75);
  	font-size: .9rem;
  	line-height: 1.75rem;
}

.site-info a {
	color: var(--wp-accent)
}

.footer-widgets ul,
footer ul {
  	margin: 0;
  	padding: 0!important;
  	list-style: none;
}

.footer-widgets a,
footer a {
  	display: inline-block;
}

.footer-widgets__title,
footer__title {
  	margin-bottom: 1rem;
}

@media (max-width: 992px) {
  
	#nav-header {
  		padding-bottom: .5rem;
  	}
  
	.home-about__thumb {
  		padding-top: 75%;
  	}
  
	.product-slider .view-all {
		font-size: .95rem;
    	white-space: nowrap;
    	-ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
  	}
	
	#footer-widgets .row {
		max-width: 100%;
		margin: auto;
	}
	
	#payment label {
		display: inline!important;
	}

}

@media (max-width: 576px) {
  	
	.home-header__mast-content {
    	padding: 2rem;
  	}
  	
	.home-about__mast-content-upper {
    	padding: 2rem;
  	}
  	
	.home-about__mast-content-box {
    	padding: 2rem;
  	}
}