/*
Theme Name: Bagmart
Theme URI: http://example.com/my-custom-theme
Author: ARCAVYN
Author URI: https://arcavyn.com
Description: A custom WordPress theme created for practice.
Version: 1.0
License: UNKNOWN
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: custom, theme, development
Text Domain: my-custom-theme
*/


@import url('https://fonts.googleapis.com/css2?family=Merriweather:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&family=Cinzel:wght@400..900&family=Cormorant:ital,wght@0,300..700;1,300..700&display=swap');

* {
	box-sizing: border-box;
}

body {
	font-family: "Merriweather", Arial, serif;
	margin: 0;
	padding: 0;
	background-color: #f5f5f5;
	color: #333;
	position: relative;
	overflow-x: hidden;
}

#sidebar-toggle-text {
	font-family: "Merriweather", Arial, serif !important;
}

ul {list-style-type: none;}

	h1, h2, h3, h4, h5, h6 {
	color: #222;
	margin: 0;
}

p {margin:0}

a {
color: #000;
text-decoration: none;
}

a:hover {
color: #000;
}

#primary.content-area {
	margin-top: 50px;
}

.woocommerce {
    /* Base container for all WooCommerce elements */
    max-width: 100%;
    margin: 0 auto;
    padding: 0 15px;
    box-sizing: border-box;
}
.site-main {
    /* Primary content wrapper */
    display: block;
    width: 100%;
    position: relative;
}
.content-area {
    /* Layout container */
    float: left;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
}


header {
	display: flex;
	
	justify-content: space-between;
	align-items: center;
	
	
	border-bottom: 1px solid #bdbdbd;
	position: fixed;
	top: 0;
	z-index: 900;
	width: 100vw;
	background-color: #fff;
}

header a p {
	font-size: 14px;
}

#menu-header-menu, .sub-menu {
	margin: 0;
}

.menu-sidebar ul, .submenu-sidebar ul {
	display: flex;
	flex-direction: column;
	padding: 0;
}

.menu-sidebar ul .current_page_item a {
	font-weight: 700;
}

.menu-sidebar ul li a, .submenu-sidebar ul li a {
	position: relative;
	font-size: 20px;
	user-select: none;
}

.menu-sidebar ul li, .submenu-sidebar ul li {
	padding: 20px 5px;
	position: relative;
	transition: all 0.3s ease-in-out;
}

.menu-wrapper ul li:hover, .submenu-sidebar ul li:hover {
	background: #eee;
}

.menu-wrapper {
	display: flex;
	flex-direction: row;
	position: fixed;
	z-index: 10;
	left: -200%;
}

/* Show submenu on hover */
.sidebar-navigation .menu-item-has-children > .sub-menu {
	display: none;
}

@media (max-width:960px) {
	header .hideonMobile {display: none !important;}
	header .hideonPC {
		display: flex;
		flex-direction: row;
		width: 100%;
		padding: 5px 0;
	}

	header {
		height: auto;
		flex-direction: column;
		padding: 0 4%;
	}

	header .header-right .hoverframe {
		padding: 4px 0;
	}

	.menu-sidebar {
		top: 77px;
		width: 100vw;
	}

	.submenu-sidebar {
		top: 77px;
		width: 100vw;
	}
}

@media (min-width:961px) {
	header .hideonPC {display: none !important;}

	header {
		height: 50px;
		flex-direction: row;
		padding: 0 10%;
	}

	.menu-sidebar {
		top: 50px;
		width: 300px;
	}

	.submenu-sidebar {
		top: 50px;
		width: 300px;
	}
}

/* Visual indicator for menu items with children */
.sidebar-navigation .menu-item-has-children::after {
    content: "➤";
    margin-left: 5px;
    transition: transform 0.2s;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%) rotate(0deg);
}

.sidebar-navigation .menu-item-has-children:hover::after {
	color: #C2C2C2 ;
	margin-left: 0;
}

.site-branding {
	display: flex;
	align-items: center;
}

.menu-sidebar {
	position: relative;
	left: -100%;
    height: 100vh;
    background: #fff;
    z-index: 100;
    transition: left 0.3s ease;
	border-right: 1px solid #dbdbdb;
}

.menu-sidebar.active {
	left: 0;
}

.submenu-sidebar {
	position: relative;
	left: -200%;
	height: 100vh;
    background: #fff;
    z-index: 90;
    transition: left 0.3s ease;
	border-right: 1px solid #dbdbdb;
}

.submenu-sidebar.active {
	left: 0;
}

#sidebar-toggle {
	background-color: transparent;
	border: none;
	position: relative;
	cursor: pointer;
	padding: 4px;
}

.typewriter-animation {
	overflow: hidden;
	white-space: nowrap;
	animation: typewriter 0.12s steps(50) 0.12s 1 normal both;
}

@keyframes typewriter {
  from { width: 0; }
  to { width: 100%; }
}

.header-right {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}

.shoppingcart-header {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 2px;
}
.shoppingcart-header span {
	color: #000;
	/* background: #000; */
	padding: 2px;
	font-size: 12px;
	font-weight: 700;
	display: flex;
	justify-content: center;
	width: fit-content;
	min-width: 16px;
	height: fit-content;
	border-radius: 30px;
	line-height: 1;
}

.login-register {
	position: relative;
}

.login-register .hovermenu {
	min-width: 400px;
	visibility: hidden;
	position: absolute;
	top: 100%;
	left: -100%;
	z-index: 10;
	background-color: #fff;
	border: #171717 1px solid;
	padding: 10%;
	h1 {margin:0 !important};
	
}

.login-register .hovermenu input[type="text"],
.login-register .hovermenu input[type="email"],
.login-register .hovermenu input[type="password"] {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-sizing: border-box;
}

.login-register:hover .hovermenu {
	visibility: visible ;
	-webkit-animation: slide-top 0.5s cubic-bezier(0.600, 0.040, 0.980, 0.335) both;
	animation: slide-top 0.5s ease-in-out both;
}

@keyframes slide-top {
  0% {
    -webkit-transform: translateY(500px);
            transform: translateY(500px);
	  opacity: 0;
  }
	50% {
		opacity: 0;
	}
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
	  opacity: 1;
  }
}

/* The header that woocommerce creates when accessing to one of its pages */
.entry-header {
	display: none;
}
.entry-content .woocommerce #customer_login {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 2%;
}
.woocommerce-LostPassword.lost_password a {transition: all 0.3s ease-in-out;}
.woocommerce-LostPassword.lost_password a:hover {
	color: #aaa;
}
.woocommerce-form.woocommerce-form-register.register p {
	margin: 0 0 6px;
	padding: 3px;
}
.woocommerce-products-header {
	display: none;
}

body.archive .products {
	padding: 2% 10%;
}
body.archive .products li .woocommerce-LoopProduct-link {
	padding: 2%;
	border: 1px solid transparent;
	transition: all 0.3s ease-in-out;
}
body.archive .products li .woocommerce-LoopProduct-link:hover {
	background-color: #eee;
	border: 1px solid #bdbdbd;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) ul.products li.product .price {color: #333;}
.woocommerce-product-overview a.button {background-color: #f5f5f5 !important;}
.woocommerce-product-overview .add_to_cart_button {
	transition: all 0.3s ease-in-out;
	
}
.woocommerce-product-overview .add_to_cart_button:before {
  content: '';
  position: absolute;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  top: -2px;
  left: -2px;
  background: linear-gradient(to right, black 0%, black 100%), 
              linear-gradient(to top, black 50%, transparent 50%), 
              linear-gradient(to top, black 50%, transparent 50%), 
              linear-gradient(to right, black 0%, black 100%), 
              linear-gradient(to left, black 0%, black 100%);
  background-size: 100% 2px, 2px 200%, 2px 200%, 0% 2px, 0% 2px;
  background-position: 50% 100%, 0% 0%, 100% 0%, 100% 0%, 0% 0%;
  background-repeat: no-repeat, no-repeat;
  transition: transform 0.1s ease-in-out, background-position 0.1s ease-in-out, background-size 0.1s ease-in-out;
  transform: rotate(0deg);
}

.woocommerce-product-overview .add_to_cart_button:hover:before {
  background-size: 200% 2px, 2px 400%, 2px 400%, 55% 2px, 55% 2px;
  background-position: 50% 100%, 0% 100%, 100% 100%, 100% 0%, 0% 0%;
  transform: rotate(0deg);
}


.account-menu {
    position: relative;
    display: inline-block;
    cursor: pointer;
}

.account-trigger {
    padding: 10px 15px;
    /* background: #f5f5f5; */
    border-radius: 4px;
    font-weight: bold;
}

/* Dropdown Menu */
.my-account-dropdown {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: white;
    min-width: 200px;
    box-shadow: 0 8px 16px rgba(0,0,0,0.1);
    z-index: 1000;
    border-radius: 4px;
    overflow: hidden;
}

.dropdown-item {
    display: block;
    padding: 10px 15px;
    color: #333;
    text-decoration: none;
    border-bottom: 1px solid #eee;
}

.dropdown-item:hover {
    background: #f9f9f9;
}

/* Show dropdown on hover */
.account-menu:hover .my-account-dropdown {
    display: block;
}

/* Section 1 */

@media (max-width: 960px) {
	.section1-textwrapper h1, .section1-textwrapper p, .section1-textwrapper a {color: #000 }
	.section1-textwrapper {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.image-overlay {display: none !important;}

.section1-content {
	padding: 2% 10% !important;
}

#section1 img {
	margin-top: 50px;
}

}

@media (min-width: 961px) {
	.section1-textwrapper h1, .section1-textwrapper p, .section1-textwrapper a {color: #fff }
	.section1-textwrapper {
	display: flex;
	flex-direction: column;
	gap: 10px;
	position: absolute;
	bottom: 15%;
}
.section1-content {
	padding: 0 10% !important;
}

}

#overlay {
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.5);
  z-index: 2;
}

#section1 {
	position: relative;
	width: 100%;
	
	img {width: 100%;display:block}
}

#section1 h1 {
	font-size: 32px;
}

.section1-textwrapper p {
	max-width: 600px;
	margin-right: 10%;
	font-size: 100%;
}

.section1-textwrapper a {
	padding: 4px;
	width: fit-content;
	position: relative;
	display: inline-block;
	overflow: hidden;
	border: none;
	transition: 0.2s;
}

.section1-textwrapper a::before {
  content: '';
  height: 3px;
  width: 0;
  left: 0;
  bottom: 0;
  position: absolute;
  background: white;
  transition: 0.4s;
}

.section1-textwrapper a:hover::before {
  width: 100%;
}

.image-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 50%; /* Only covers bottom half */
  background: linear-gradient(to top, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
  pointer-events: none; /* Allows clicks to pass through */
}

/* 

section 2 

*/

#section2 {
	width: 100%;
}

@media (max-width: 960px) {
	#section2 .excerpt {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	justify-content: center;
	gap: 5px;
	margin-top: 5px;
}

#section2 .excerpt article {
	flex: 0 0 calc(50% - 20px);
}
	
.section2-content article {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 20px 1% 0px 1%;
	position: relative;
	border: 1px solid #bdbdbd;
	transition: background-color 0.3s ease-in-out;
	min-height: 270px;
}

.section2-content .info {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin-top: 10%;
	margin-bottom: 2%;
	padding: 0 10%;
}

.section2-content article a {
	padding: 4px;
	width: fit-content;
	position: absolute;
	display: block;
	margin: 5px auto 10px;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

.section2-content .aside a {
	padding: 4px;
	width: fit-content;
	position: relative;
	display: block;
}

}

@media (min-width: 961px) {
	#section2 .excerpt {
	display: flex;
	flex-direction: row;
	width: 100%;
}
.section2-content article {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 20px 1% 0px 1%;
	position: relative;
	border-right: 1px solid #bdbdbd;
	border-bottom: 1px solid #bdbdbd;
	transition: background-color 0.3s ease-in-out;
}

.section2-content .info {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	margin-top: 10%;
	margin-bottom: 2%;
	padding: 0 10%;
}

.section2-content a {
	padding: 4px;
	width: fit-content;
	position: relative;
	display: block;
}

}


.section2-content article:hover {
	background-color: #eee;
}

.section2-content article .third-line span {
	font-weight: 300;
	font-size: 12px;
}

/*.section2-content article .third-line .left {margin-right:4px;}
.section2-content article .third-line .right {margin-left:4px;}*/

.section2-content .imgwrap {
	display: flex;
	justify-content: center;
	max-height: 300px;
}

.section2-content img {
	width: 100%;
	object-fit: contain;
	object-position: center;
}

.section2-content .first-line {
	font-weight: 300;
	font-size: 14px;
	color: #aaa;
}

.hoverframe {
	position: relative;
	transition: all 0.3s;
	cursor: pointer;
}

.hoverframe:before {
  content: '';
  position: absolute;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  top: -2px;
  left: -2px;
  background: linear-gradient(to right, black 0%, black 100%), 
              linear-gradient(to top, black 50%, transparent 50%), 
              linear-gradient(to top, black 50%, transparent 50%), 
              linear-gradient(to right, black 0%, black 100%), 
              linear-gradient(to left, black 0%, black 100%);
  background-size: 100% 2px, 2px 200%, 2px 200%, 0% 2px, 0% 2px;
  background-position: 50% 100%, 0% 0%, 100% 0%, 100% 0%, 0% 0%;
  background-repeat: no-repeat, no-repeat;
  transition: transform 0.1s ease-in-out, background-position 0.1s ease-in-out, background-size 0.1s ease-in-out;
  transform: rotate(0deg);
}

.hoverframe:hover:before {
  background-size: 200% 2px, 2px 400%, 2px 400%, 55% 2px, 55% 2px;
  background-position: 50% 100%, 0% 100%, 100% 100%, 100% 0%, 0% 0%;
  transform: rotate(0deg);
}

.section2-content .aside {
	padding: 2% 0;
	width: 100%;
	display: flex;
	justify-content: center;
	transition: all 0.3s ease-in-out;
}

.section2-content .aside:hover {
	background: #eee;
}

/* Section 3 */

@media (max-width: 960px) {
	
#section3 .carousel {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 5% 10%;
	gap: 20px;
	border-bottom: 1px solid #bdbdbd;
}

}

@media (min-width: 961px) {
	
#section3 .carousel {
	display: flex;
	flex-direction: row;
	width: 100%;
	padding: 5% 10%;
	gap: 5%;
	border-bottom: 1px solid #bdbdbd;
}

}

.promotional p {
	font-size: 150%;
}

#section3 {
  overflow: hidden;
  width: 100%;
  position: relative;
}

.promotional {
  padding: 2% 0;
  border-top: 1px solid #bdbdbd;
  border-bottom: 1px solid #bdbdbd;
	transition: all 0.3s ease-in-out;
}

.promotional:hover {
	background: #eee;
}

.marquee {
  display: flex;
  gap: 20px;
  align-items: center;
  width: max-content;
  animation: scroll-marquee 20s linear infinite;
  will-change: transform;
}

.marquee p, 
.promotional-star {
  flex: 0 0 auto;
  margin: 0;
}

.promotional-star {
  width: 20px;
  height: 20px;
}

@keyframes scroll-marquee {
  0% { transform: translateX(100vw); }
	100% { transform: translateX(-100%); }
}

#section3 .carousel-inner {
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: 100%;
	text-align: center;
	
	img {max-height:64px}
	p {line-height: 1.5;}
}


/* Section 4 */
@media (max-width: 960px) {
	
.section4-content li {
	width: 100%;
	box-sizing: border-box;
	position: relative;
	transition: all 0.3s ease-in-out;
	border: 1px solid #f5f5f5;
}

.section4-content li img {
	width: 100%; 
    height: auto; /* Maintain aspect ratio */
    display: block;
	max-height: 500px;
	margin: auto;
}

.section4-content ul {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	box-sizing: border-box;
	position: relative;
	padding: 0;
}

#section4 .banner img {
	display: none;
}

#section4 .banner a {
	padding: 4px;
	border-bottom: 2px solid #000;
	width: fit-content;
	height: fit-content;
	position: relative;
	display: block;
	text-align: center;
}

}

@media (min-width: 961px) {
	
.section4-content li {
	width: calc((100% - 120px)/4);
	box-sizing: border-box;
	position: relative;
	flex: 0 0 calc(50% - 10px);
	transition: all 0.3s ease-in-out;
	border: 1px solid #f5f5f5;
}

.section4-content li img {
	width: 100%; 
    height: auto; /* Maintain aspect ratio */
    display: block;
	max-height: 500px;
	margin: auto;
}

.section4-content ul {
	column-gap: 40px;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	row-gap: 20px;
	column-gap: 20px;
	box-sizing: border-box;
	position: relative;
}

#section4 .banner img {
	width: 100%;
}

#section4 .banner a {
	padding: 4px;
	border-bottom: 2px solid #000;
	width: fit-content;
	height: fit-content;
	position: relative;
	display: block;
}

}


.section4-content {
	padding: 2% 10%;
	box-sizing: border-box;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.section4-content li:hover {
  background-color: #eee;
  border: 1px solid #bdbdbd;
}

.section4-content li a {
    display: block;
    overflow: hidden; /* Contain the image */
	position: relative;
	padding: 1%;
}

.section4-content li p {
	text-align: center;
	font-size: 150%;
}

.section4-content h1 {
	margin-bottom: 2%;
}

footer .button {
	margin-bottom: 2%;
}

.button {
	padding: 4px;
	border-bottom: 2px solid #000;
	width: fit-content;
	position: relative;
	display: block;
	background-color: transparent;
	border: none;
}

#section4 .banner {
	margin: 2% auto;
	height: 220px;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	position: relative;
}

#section4 .banner div {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	width: 100%;
	position: absolute;
	padding: 0 10%;
}

/*

 Footer 

*/

@media (max-width: 960px) {
footer .main-row {
	padding: 0 10%;
	display: flex;
	/* flex-direction: column; */
	flex-wrap: wrap;
	justify-content: space-evenly;
	align-items: center;
	gap: 10px;
}

footer .main-row > div {
	flex: 0 0 calc(50% - 5px);
	justify-content: center;
    display: flex;
}

footer .line {
	margin-top: 10px;
}

}

@media (min-width: 961px) {
footer .main-row {
	padding: 0 10%;
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
	align-items: center;
	height: 50px;
}

}

footer {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

footer a, footer p {
	font-weight: 300;
	font-size: 12px;
}

footer .small-row img {
	max-width: 24px;
}

footer .line {
	height: 1px;
	width: 100%;
	background: #bdbdbd;
}

footer .small-row {
	padding: 0 10%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	height: 50px;
}

footer .small-row div {
	display: flex;
	flex-direction: row;
	justify-content: center;
	gap: 20px;
}




/* Single-product page template */
.bagmart-single-product-wrapper {
	display: flex;
	justify-content: center;
	gap: 2%;
	margin-bottom: 2%;
}

.bagmart-product-container {
	display: flex;
	justify-content: center;
	gap: 2%;
}

.bagmart-product-details {
	display: flex;
	flex-direction: column;
}

.bagmart-product-title {
	margin-bottom: 5%;
	line-height: 1.2;
	font-weight: 700;
}

.bagmart-product-gallery {
    max-width: 480px;
}

.regular-price {
	color: #aaa;
	font-size: 14px;
}

.regular-price, .current-price {
	font-weight: 100;
}
    
/* Hide additional images (only show first) */
/* .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:not(:first-child) {
    display: none;
} */

.woocommerce-product-gallery_wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    overflow: hidden;
}

.woocommerce-product-gallery_image {
    width: 100%;
    height: 100%;
	cursor: zoom-in;
}

.bagmart-main-image,
.bagmart-gallery-image {
    width: 100%;
    height: 100%;
}

.woocommerce-product-gallery_image img:hover {
	width: 100%;
}

.zoomable {
  --zoom-pos-x: 0%;
  --zoom-pos-y: 0%;
  --zoom: 2;
  
  position: relative;
  overflow: hidden;
}

.zoomable__img {
  transform-origin: var(--zoom-pos-x, 0%) var(--zoom-pos-y, 0%);
  transition: transform 0.15s linear;
}

.zoomable--zoomed .zoomable__img {
  cursor: zoom-in;
  transform: scale(var(--zoom, 2));
}



.bagmart-thumbnail-nav {
    display: flex;
    gap: 10px;
    margin-top: 15px;
    overflow-x: auto;
    padding-bottom: 10px;
}

.bagmart-thumbnail {
	overflow: hidden;
    /* width: 80px; */
    flex-shrink: 0;
    cursor: pointer;
    border: 2px solid transparent;
    border-radius: 3px;
    opacity: 0.7;
    transition: all 0.3s ease;
}

.bagmart-thumbnail:hover,
.bagmart-thumbnail.active {
    opacity: 1;
    border-color: #000;
}

.bagmart-thumbnail-img {
    width: 100%;
    height: auto;
    display: block;
}

.product-shortdesc {
	margin-bottom: 5%;
}

.stock-quantity {
	margin: 2% 0;
	font-weight: 200;
	font-size: 12px;
	color: #aaa;
}

.product-cart {
	display: flex;
	flex-direction: row;
	gap: 10px;
	align-items: center;
}

.woocommerce .quantity .minus, .woocommerce .quantity .plus {
	background-color: #fff;
	color: #aaa;
	border: 2px solid transparent;
	opacity: 0.9;
	transition: all 0.3s ease-in-out;
}

.woocommerce .quantity .minus:hover, .woocommerce .quantity .plus:hover {
	border: 2px solid #000;
	color: #000;
	opacity: 1;
	cursor: pointer;
}

.woocommerce .quantity .minus:disabled, .woocommerce .quantity .plus:disabled {
	opacity: 0;
	cursor: default !important;
}

/* Below is to remove input number arrows */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.product-bigdesc-wrapper {
	/* margin-top: 20px; */
	/* padding: 0 10%; */
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
}

.product-bigdesc-wrapper .category .double {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	padding: 2% 0;
	max-width: 1200px;
}

.product-bigdesc-wrapper .category .double .specs div {
	display: flex;
	flex-direction: row;
	gap: 2px;
}

.product-bigdesc-wrapper .category {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	padding: 2%;
	border-bottom: 1px solid #bdbdbd;
	transition: all 0.3s ease-in-out;
}

.product-bigdesc-wrapper .category:hover {
	background: #eee;
}

.product-bigdesc-wrapper .category .inner {
	width: 100%;
	max-width: 1200px;
	margin: auto;
}

.product-bigdesc-wrapper .category h1 {
	margin-bottom: 2%;
}

.product-bigdesc-wrapper .category.weight div {
	display: flex;
	flex-direction: row;
	gap: 20px;
}

.product-bigdesc-wrapper .category .product-attributes {
	display: flex;
	flex-direction: column !important;
	gap: 2px !important;
}

/* Woocommerce pagination */
.woocommerce nav.woocommerce-pagination ul li span.current {
	background: #eee !important;
	color: #aaa !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover {
	background: #eee !important;
	color: #aaa !important;
}





/* Visit cart page */




#post-69 {
	padding: 2% 10%;
}

.woocommerce-cart-form {
	display: flex;
	justify-content: center;
}

.cartpage-wrapper {
	margin-top: 50px;
	padding: 2% 10%;
}

table.shop_table {
    border: 1px solid rgba(0,0,0,.1);
    margin: 0 -1px 24px 0;
    text-align: left;
    /* width: 100%; */
	min-width: 728px;
    border-collapse: separate;
    border-radius: 5px;
}
table.shop_table th {
    font-weight: 700;
    padding: 9px 12px;
    line-height: 1.5em;
}
table.shop_table td {
    border-top: 1px solid rgba(0,0,0,.1);
    padding: 9px 12px;
    vertical-align: middle;
    line-height: 1.5em;
}
table.shop_table td small {
    font-weight: 400;
}
table.shop_table td del {
    font-weight: 400;
}
table.shop_table tbody:first-child tr:first-child td,
table.shop_table tbody:first-child tr:first-child th {
    border-top: 0;
}
table.shop_table tbody th,
table.shop_table tfoot td,
table.shop_table tfoot th {
    font-weight: 700;
    border-top: 1px solid rgba(0,0,0,.1);
}

.cartpage-wrapper a.remove {
    display: block;
    font-size: 1.5em;
    height: 1em;
    /* width: 1em; */
    text-align: center;
    line-height: 1;
    border-radius: 100%;
    color: var(--wc-red) !important;
    text-decoration: none;
    font-weight: 700;
    border: 0;
}
.cartpage-wrapper a.remove:hover {
    color: #fff !important;
    background: var(--wc-red);
}

.cart_totals table {
	width: fit-content;
}

/* Thumbnail */
.woocommerce-cart table.cart img {
    width: 128px;
    height: auto;
    box-shadow: none;
}

/* Product thumbnail images */
.cartpage-wrapper ul.products li.product a img,
.cartpage-wrapper div.product div.images img {
    width: 100%;
    height: auto;
    display: block;
    box-shadow: none;
}

/* Thumbnail container */
.cartpage-wrapper div.product div.images {
    margin-bottom: 2em;
}

/* Default WooCommerce thumbnail size (300px × 300px) */
.size-woocommerce_thumbnail {
    /* Note: The actual dimensions are set by WordPress, not CSS */
    max-width: 100%;
    height: auto;
}

/* Attachment styling (wp-attachment class) */
.attachment-woocommerce_thumbnail {
    /* Inherits from WordPress core attachment styles */
    vertical-align: middle;
    border: 0;
}

/* Thumbnail specific styles in cart */
.woocommerce-cart-form__cart-item .product-thumbnail img {
    width: 32px;
    height: auto;
    box-shadow: none;
}

/* Product gallery thumbnails */
.woocommerce div.product div.images .woocommerce-product-gallery__image:nth-child(n+2) {
    width: 25%;
    display: inline-block;
}

/* Quantity input */
.quantity .qty {
    width: 3.631em;
    text-align: center;
}

form.checkout_coupon,
form.login,
form.register {
    border: 1px solid #cfc8d8;
    padding: 20px;
    margin: 2em 0;
    text-align: left;
    border-radius: 5px;
}

/* Coupon error message */
form.checkout_coupon .coupon-error-notice {
    color: var(--wc-red);
    display: block;
    font-size: .75em;
    margin-top: 8px;
}

/* Coupon input field */
table.cart td.actions .coupon .input-text {
    float: left;
    box-sizing: border-box;
    border: 1px solid #cfc8d8;
    padding: 6px 6px 5px;
    margin: 0 4px 0 0;
    outline: 0;
    width: auto; /* Adjustable width */
}

/* Coupon input error state */
table.cart td.actions .coupon .input-text.has-error:focus {
    border-color: var(--wc-red);
}

/* Coupon button */
#respond input#submit.alt,
a.button.alt,
button.button.alt,
input.button.alt {
    background-color: #7f54b3;
    color: #fff;
    -webkit-font-smoothing: antialiased;
}

/* #region checkout page */

.checkout-wrapper-custom {
	padding: 2% 10%;
}

.woocommerce-checkout {
    display: block;
    width: 100%;
}

/* Coupon form container */
#woocommerce-checkout-form-coupon,
.checkout_coupon.woocommerce-form-coupon {
    border: 1px solid #cfc8d8;
    padding: 20px;
    margin: 2em 0;
    border-radius: 5px;
}

/* Notices wrapper */
.woocommerce-notices-wrapper {
    margin-bottom: 6%;
}

/* Field containers */
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields {
    margin-bottom: 2em;
}

/* Field wrappers */
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper {
    display: block;
    width: 100%;
}

/* Clear floats for shipping fields */
.woocommerce-shipping-fields::before,
.woocommerce-shipping-fields::after {
    content: " ";
    display: table;
}
.woocommerce-shipping-fields::after {
    clear: both;
}

/* Form row base */
.form-row {
    margin-bottom: 1em;
    padding: 3px;
}

/* Half-width fields */
.form-row-first,
.form-row-last {
    width: 48%;
    float: left;
}
.form-row-last {
    float: right;
}

/* Full-width fields */
.form-row-wide {
    width: 100%;
    clear: both;
}

/* Validation states */
.validate-required .required {
    color: var(--wc-red);
}

/* Optional field indicator */
.optional {
    color: #767676;
    font-size: 0.83em;
}

/* Order review section */
.order_review {
    background: rgba(129,110,153,.14);
    border-radius: 5px;
    padding: 1em;
}

/* Review table */
.shop_table.woocommerce-checkout-review-order-table {
    width: 100%;
    border-collapse: collapse;
}

/* Payment methods */
.woocommerce-checkout-payment {
    margin-top: 2em;
}

/* Payment method list */
.wc_payment_methods.payment_methods.methods {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Place order button */
.place-order .button.alt {
    background-color: #7f54b3;
    color: #fff;
    width: 100%;
    padding: 1em;
    font-size: 1.25em;
}

/* Terms and conditions */
.woocommerce-terms-and-conditions-wrapper {
    margin: 1em 0;
}

/* Privacy policy text */
.woocommerce-privacy-policy-text {
    font-size: 0.83em;
}

/* Digital wallet buttons */
.ppc-button-ppcp-applepay,
.ppc-button-ppcp-googlepay {
    margin-bottom: 1em;
    height: 40px;
    min-height: 40px;
}



/* #endregion */