/*
Theme Name: Ratsy
Text Domain: ratsy
Version: 0.1
Requires at least: 4.7
Requires PHP: 5.2.4
*/

@import "woocommerce.css" all;

a, a:hover, a:visited {
	color: black;
}

body {
	background-color: white;
	color: black;
	font-family: Helvetica, 'Helvetica Neue';
}

main {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

section {
	margin-top: 4rem;
	flex: 1 0 auto;
}

section h1 {
	text-align: center;
}

section.row {
	z-index: 0;
	/* max-width: 1250px; */
	margin: 4em auto 0 auto;
	width: 100%;
}

.product-template-default main section.row {
	max-width: 1250px;
}

.button {
  border: 3px solid black;
  padding: 2rem;
  text-decoration: underline wavy 1px;
  font-size: 2em;
  text-underline-offset: 7px;
}

.button a {
	text-decoration-style: wavy;
}

.button.product_type_simple {
  padding: 1rem;
}


.cart .button {
  margin-bottom: 2em;
}

.product-template-default .container-fluid section.row {
	margin-top: 4em;
	justify-content: center;
}

.post-template-default .container-fluid section.row {
	margin-top: 4em;
}

.page-template-page-blog section.row {
	margin-top: 4em;
}

@media (max-width: 767px) {
    section.row {
		margin-top: 11rem;
		z-index: 0;
	}

	.product-template-default .container-fluid section.row {
		margin-top: 8rem;
	}

	.post-template-default .container-fluid section.row {
		margin-top: 8rem;
	}

	.page-template-page-blog section.row {
		margin-top: 8rem;
	}
}

.home-template-products {
	display: flex;
	width: 100%;
	position: relative;
	flex-wrap: wrap;
	justify-content: center;
}

.home-product {
  width: auto;
  height: auto;
  margin: 3rem;
}

.home-product img {
  max-width: 350px;
}

aside div.bg {
	height: 100%;
	min-height: 10vh;

	/* Center and scale the image nicely */
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;

	display: flex;
}

aside div.bg a {
  text-align: center;
  align-self: center;
  width: 100%;
  text-decoration: none;
}

aside div.bg a h2 {
	font-size: 3rem;
	color: white;
}

aside div.bg a h2:hover {
	color: black;
}

.see-more {
	text-align: center;
	margin-bottom: 4rem;
	margin-top: 3rem;
}

#site-header {
	position: fixed;
	width: 100%;
	background-color: transparent;
	z-index: 1;
	margin-top: 2em;
}

.logo img, #logo_header img {
	max-width: 100%;
}

#logo_header {
	margin-left: 0em;
	float: left;
}

#logo_header a img{
	max-width: 180px;
}

#links-header {
	float: right;
}

#links-header a, footer a {
	margin: 0 2rem;
}

footer {
	padding: 1em 0;
}

h2.page-title {
	font-size: 2em;
}

.post-data {
	font-size: 1em;
	text-transform: uppercase;
	padding-bottom: 3em;
}

@media (max-width: 767px) {
    .text-right {
    	text-align: center; 
    }

    #links-header a, footer a {
    	margin: 0 0.5em;
    }

    #logo_header {
    	position: relative;
			display: block;
			margin-bottom: 1em;
    }

    #logo_header a{
    	margin: 0 auto;
			width: 100%;
			display: block;
			position: relative;
			text-align: center;
    }

    #site-header {
	  position: fixed;
		  margin: 0;
		  padding: 2em 0;
		  background: linear-gradient(rgb(255, 255, 255) 0%, rgba(0,0,0,0) 103%);
		}

		.product .woocommerce-product-gallery, .summary.entry-summary {
			max-width: 100% !important;
			margin: 0 auto;
		}

		.summary.entry-summary {
			padding: 1em !important;
		}
}


@media (max-width: 1024px) {
    section div.bg a {
	    padding-left: 0.5em;
	    padding-bottom: 0;
	}

	#links-footer {
    	margin-top: 2em;
    }
}

@media (max-width: 1300px) { 

	.summary.entry-summary {
	  padding-right: 2em;
	}

}

@media (max-width: 1250px) { 

	.woocommerce-product-gallery .flex-control-nav.flex-control-thumbs {
	  padding: 0 1em !important;
	}

}

.container-fluid {
	padding-right: 0;
	padding-left: 0;
}

.row {
	margin-right: unset;
	margin-left: unset;
}

.flex-wrap {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	padding: 0 1em;
}

/* WOOCOMMERCE */
li.product {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 2em;
  flex-direction: column;
  height: 100%;
  justify-content: space-between;
  position: relative;
}

@media (max-width: 767px) {
	li.product {
	  height: auto;
	  margin-bottom: 3em;
	}
}

.attachment-woocommerce_thumbnail {
	height: auto;
	max-width: 100%;
}
.cart_item .attachment-woocommerce_thumbnail {
	padding: 0em;
	background-color: transparent;
}

.woocommerce-loop-product__title {
	font-size: 1.2em;
	max-width: 200px;
}

@media (max-width: 767px) {
	.woocommerce-loop-product__title {
  	font-size: 1em;
	  max-width: 240px;
	  font-weight: bold;
	}
}

.price, .amount, .in-stock {
	display: block;
	margin-bottom: 1em;
	color: black !important;
}

@media (max-width: 767px) {
	.price, .amount, .in-stock {
		margin-bottom: 0em;
	}
}

div.woocommerce{
	margin-top: 4em;
	min-height: 75vh;
	width: 100%;
}

@media (max-width: 767px) {
	div.woocommerce{
		margin-top: 8em;
	}
}

.woocommerce-notices-wrapper {
	margin-top: 2em;
	width: 100%;
}

.woocommerce div.product {
	display: flex;
	flex-direction: row;
	gap: 5rem;
}

@media (max-width: 767px) {
	.woocommerce div.product{
		display: block;
		flex-flow: column;
	}
}

.woocommerce .quantity .qty {
	color: black;
}

.woocommerce form .form-row input {
	outline-color: black !important;
	outline: 1px !important;
	outline-style: solid !important;
	border: none;
	padding: 0.5em;
	color: black;
}

.select2-results {
	color:black;
}

.woocommerce-input-wrapper textarea {
	color: black;
}

.woocommerce-checkout-payment {
	background-color: transparent !important;
}

.summary h1 {
	font-size: 2em;
	text-align: left;
}

.button.add_to_cart_button, .single_add_to_cart_button.button.alt {
	font-size: 1em;
	padding: 1rem;
	text-underline-offset: 3px;
	text-decoration: underline wavy 1px;
	background-color: white;
	width: auto;
	display: block;
	position: relative;
	margin: 0 auto;
}

@media (max-width: 767px) { 
	.button.add_to_cart_button {
	  font-size: 0.8em;
	  padding: 0.6rem;
	}

}

form.cart {
	margin-bottom: 2em;
}

.single_add_to_cart_button.button.alt:hover {
  color: black;
  background-color: white !important;
}

.ppc-button-wrapper {
	max-width: 250px;
	display: block;
	position: relative;
	margin: 0 auto;
}

.button.add_to_cart_button.added {
	display:none;
}

.button.product_type_simple.add_to_cart_button.ajax_add_to_cart {
	max-width: 94px;
}

@media (max-width: 767px) { 
	.button.product_type_simple.add_to_cart_button.ajax_add_to_cart {
		max-width: 73px;
	}
}

.onsale {
 	display: none;
}

.price {
    display: inline-flex;
    position: relative;
    width: 100%;
    justify-content: space-between;
}

.added_to_cart.wc-forward {
	padding: 6px;
	background-color: rgba(0, 0, 0, 0.9);
	color: white;
	position: relative;
	width: 100%;
	text-align: center;
}

@media (max-width: 767px) { 
	.added_to_cart.wc-forward {
		position: relative;
		margin-top: 1em;
	}

}

del bdi {
	color: red;
	text-decoration-thickness: 3px;
	text-decoration: red line-through 2px;
}

.woocommerce-LoopProduct-link.woocommerce-loop-product__link {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-self: center;
}

.quantity {
	margin-bottom: 2rem;
}

.product_meta {
  margin-top: 2rem;
  display: none;
}

.woocommerce-message .button.wc-forward {
  font-size: 1.5rem;
  padding: 0 2rem;
  color: white;
}

.woocommerce-message {
  background-color: black;
  width: 100%;
  color: white;
  position: relative;
  display: inline-block;
  padding: 2rem 0 1em 2em;
  margin-bottom: 2rem;
}

/* CUSTOM Recommendation */
.recommended {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: left;
	align-content: space-around;
}

.recommended_header h2 {
	font-size: 2em;
	text-align: center;
	margin-bottom: 2em;
}

.recommended .recommended_product {
	  margin-right: 5em;
		flex: 0 0 25em;
		max-width: 180px;
		margin-bottom: 3em;
}

.recommended_product .add_to_cart, .recommended_product .title, .recommended_product .img {
		display: block;
}

.recommended_product .add_to_cart .add_to_cart_inline {
	border: 0 !important;
	padding: 0 !important;
}

.recommended_product .add_to_cart .outofstock {
	margin-top: 1em;
	display: inline-block;
}

.recommended_product.outofstock a img {
	opacity: 0.5;
	filter: saturate(50%);
}

.recommended_product.outofstock a img:hover {
	filter: saturate(100%);
}

.recommended_product .add_to_cart .add_to_cart_inline .added_to_cart.wc-forward {
  padding: 12px;
  background-color: rgba(0, 0, 0, 0.9);
  color: white;
  position: relative;
  margin-left: 5px;
}

@media (max-width: 767px) {
 
	.recommended {
		justify-content: center;
	}

	.recommended .recommended_product {
	  margin-right: 1em;
	  max-width: 150px;
	  margin-bottom: 3em;
	}

	.recommended_header h2 {
		font-size: 1.5em;
		font-weight: bold;
		text-align: center;
		margin-bottom: 2em;
	}

	.recommended_product.instock .add_to_cart .product .button {
		margin-top: 2.5em;
	}

}

/*  Woocommerce cart */

.woocommerce-cart .woocommerce-cart-form {
  flex: 1 0 70%; /* 100% at small screens; 70% on larger screens */
  margin-right: 30px;
}

.woocommerce-cart .cart-collaterals {
  flex: 1 0 30%; /* 100% at small screens; 30% on larger screens */
  margin-left: 30px;
}

.woocommerce-cart .cart-collaterals .cart_totals {
  width: 100%;
  padding: 0 20px 70px;
}

.woocommerce-checkout div.woocommerce, .woocommerce-cart div.woocommerce {
	margin: 0 auto;
	max-width: 1250px;
}

.woocommerce-cart-form .shop_table {
  margin: 0 auto;
}

.cart-collaterals .button, .woocommerce-cart-form .button {
	border: 3px solid black;
	padding: 7px;
	text-decoration: underline black 1px;
	font-size: 1em;
	text-underline-offset: 4px;
}

.cart_item{
	margin-bottom: 3em;
}

.cart_item td {
  padding: 0 2em;
}

.cart_item img {
	max-width: 100px;
}

.cart_item a, .cart_item span {
	text-align: left;
}

.woocommerce-store-notice {
	position: fixed;
	top: 0;
	background-color: black;
	width: 100%;
	padding: 0.8em;
	z-index: 1;
	color: white;
	font-size: 1.3em;
}

.woocommerce-store-notice__dismiss-link {
	color: white;
	float: right;
}

.wc-categories {
	list-style: none;
	margin: 0;
	margin-bottom: 0px;
	padding: 0;
	font-size: 1.2em;
	margin-bottom: 1em;
	text-align: right;
}

.wc-categories li {
	display: inline-block;
	padding: 0px 13px 0 0;
}

.wc-loop {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-content: space-around;
}

.wc-loop article {
	max-width: 400px;
	margin: 0em 2em 3em 1em;
}

a.checkout-button.button {
	background-color: black;
	color: white;
	padding: 1em;
	text-decoration: underline wavy 1px;
	text-underline-offset: 7px;
	float: right;
	border: 3px solid black;
}

.checkout-button.button.alt.wc-forward:hover {
  color: black;
  background-color: white !important;
}

.cart-empty.woocommerce-info {
  margin-bottom: 4em;
}

.woocommerce-product-gallery .flex-control-nav.flex-control-thumbs {
  display: flex;
  list-style: none;
  padding: 0;
  gap: 1em;
  max-width: 100%;
  flex-wrap: wrap;
  justify-content: start;
	margin-top: 2em;
}

.product .woocommerce-product-gallery {
  max-width: 50%;
}

.summary.entry-summary {
  max-width: 50%;
}

.woocommerce-product-gallery__image a {
	width: 100% !important;
	display: block;
}

.woocommerce-error {
	background-color: black;
	color: white;
	padding: 1em;
	list-style: none;
}

.checkout-button.button {
	margin-bottom: 2em;
}

/*.woocommerce-product-gallery__image a img {
	width: 100%;
}

.woocommerce-product-gallery__wrapper {
  display: block;
  width: 100% !important;
  position: relative;
}

.woocommerce-product-gallery__image.flex-active-slide {
  width: 100% !important;
}*/

/*.woocommerce-product-gallery .flex-viewport {
	width: 100%;
}



.product .summary.entry-summary {
  width: 100%;
  display: inline;
}

.woocommerce-product-gallery__image a img.wp-post-image {
	width: 100%;
}

.woocommerce-product-gallery__wrapper {
  width: 100% !important;
}*/

form .button.search-submit {
  padding: 5px;
	font-size: 1em;
	background-color: white !important;
	text-underline-offset: 3px;
	text-decoration: underline wavy; 
}

form .button.search-submit:hover {
  background-color: black !important;
  color: white;
}

.search-field {
  border: 3px solid black;
  padding: 5px;
}

.wc_payment_methods.payment_methods.methods {
  border-left: 1em solid black;
  padding-left: 1em;
}

.wc-bacs-bank-details-account-name {
  font-size: 1em;
}

.wc-bacs-bank-details-account-name::before {
  content: "Name - ";
}

.col .outofstock a img {
	opacity: 0.5;
	filter: saturate(50%);
}

.col .outofstock a img:hover {
	filter: saturate(100%);
}

.col .outofstock .button {
	font-size: 1em;
	padding: 1rem;
	text-underline-offset: 3px;
	text-decoration: underline wavy 1px;
	align-self: center;
}

.col li .button:hover {
	text-decoration: underline solid 1px;
}

.page-title-link {
	display: none;
}

.search-categories-bar {
	margin: 3em auto;
}

p.out-of-stock {
	color: red !important;
	display: block;
	margin-bottom: 1em;
}

.woocommerce-notices-wrapper .woocommerce-error .button {
	color: white;
	font-size: 1em;
	border: none;
	text-decoration: underline solid white;	
}

.restore-item {
	color: white !important;
	text-decoration: underline wavy white;
}

.restore-item:hover {
	text-decoration: underline solid white;
	color: white;
}

.cross-sells .products.columns-2 {
  display: flex;
  gap: 2em;
  flex-wrap: wrap;
}

.cross-sells .columns-2 li.product {
  max-width: 150px;
}

.cart_totals.calculated_shipping {
	width: 50% !important;
}

@media (max-width: 767px) {
	.wc-categories {
		text-align: center;
	}

	.search-form {
		text-align: center;
	}

	.wc-loop article {
	  margin-top: 1em;
	}

	.cart_totals.calculated_shipping {
		width: 100% !important;
	}

	.woocommerce-cart .woocommerce .cart-collaterals {
  flex-direction: column;
}
.cross-sells .columns-2 li.product {
  max-width: 100px;
}

.cart .button {
  margin-bottom: 2em;
  width: 100%;
  font-size: 1.3em;
  padding: 0.5em;
}

.cart .actions .button .wp-element-button {
  max-width: 250px;
  float: left;
}

.cart .coupon .button {
  margin-bottom: 2em;
  width: 100%;
  font-size: 1em;
  padding: 7px;
  max-width: 250px;
  display: block;
  margin-top: 1em;
}
}

/* VARIATIONS */

.variations tbody tr .value select {
	border: 3px solid black;
  padding: 1rem;
  text-decoration: underline wavy 1px;
  font-size: 1em;
  text-underline-offset: 7px;
}

.variations tbody {
	display: flex;
	gap: 1em;
}

.variations tbody tr {
	display: flex;
	flex-direction: column;
}

.variations tbody tr th label {
	color: black;
	text-align: left;
	display: block;
  margin: 0;
}

.reset_variations {
  display: none !important;
}

/*@media (min-width: 1024px) { 

	.wc-loop article {
		margin: 0em 1em 0em 1em;
	}

	article.col .woocommerce-loop-product__title,
	article.col .price, 
	article.col .button.product_type_simple.add_to_cart_button.ajax_add_to_cart { 
		display:none;
	}

	article.col:hover li a img.attachment-woocommerce_thumbnail  {
		filter: brightness(.1);
	}

	article.col:hover .woocommerce-loop-product__title {
		position: absolute;
		color: white;
		left: 10px;
		display: inline-block;
		font-size: 0.8em;
		font-weight: bold;
	}

	article.col:hover .price {
		position: absolute;
		color: white !important;
		top: 70px;
		left: 70%;
		display: inline-block;
		font-size: 0.8em;
	}

	article.col:hover .price .woocommerce-Price-currencySymbol, article.col:hover .price bdi {
		color: white !important;
	}

	article.col:hover .button.product_type_simple.add_to_cart_button.ajax_add_to_cart {
		position: absolute;
		top: 100px;
		display: inline-block;
		background-color: transparent;
		border: solid white 1px !important;
		color: white !important;
		left: 0;
		right: 0;
		max-width: 74px;
		font-size: 0.8em;
		padding: 8px;
	}

}*/