@charset "utf-8";

/***********
1. Fonts
***********/

@import url('https://fonts.googleapis.com/css?family=Poppins:400,500,600,700,900');

/*********************************
2. Body and some general stuff
*********************************/

*
{
	margin: 0;
	padding: 0;
}
body
{
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	line-height: 23px;
	font-weight: 400;
	background: #FFFFFF;
	color: #1e1e27;
    justify-content: center !important;
}
div
{
	display: block;
	position: relative;
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
ul
{
	list-style: none;
	margin-bottom: 0px;
}
p
{
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	line-height: 1.7;
	font-weight: 500;
	color: #51545f;
	-webkit-font-smoothing: antialiased;
	-webkit-text-shadow: rgba(0,0,0,.01) 0 0 1px;
	text-shadow: rgba(0,0,0,.01) 0 0 1px;
}
p a
{
	display: inline;
	position: relative;
	color: inherit;
	border-bottom: solid 2px #fde0db;
	-webkit-transition: all 200ms ease;
	-moz-transition: all 200ms ease;
	-ms-transition: all 200ms ease;
	-o-transition: all 200ms ease;
	transition: all 200ms ease;
}
a, a:hover, a:visited, a:active, a:link
{
	text-decoration: none;
	-webkit-font-smoothing: antialiased;
	-webkit-text-shadow: rgba(0,0,0,.01) 0 0 1px;
	text-shadow: rgba(0,0,0,.01) 0 0 1px;
}
p a:active
{
	position: relative;
	color: #d5050a;
}
p a:hover
{
	color: #d5050a;
	background: #fde0db;
}
p a:hover::after
{
	opacity: 0.2;
}
::selection
{
	background: #fde0db;
	color: #d5050a;
}
p::selection
{
	background: #fde0db;
}
h1{font-size: 72px;}
h2{font-size: 36px;}
h3{font-size: 28px;}
h4{font-size: 24px;}
h5{font-size: 16px;}
h6{font-size: 14px;}
h1, h2, h3, h4, h5, h6
{
	font-family: 'Poppins', sans-serif;
	color: #282828;
	-webkit-font-smoothing: antialiased;
	-webkit-text-shadow: rgba(0,0,0,.01) 0 0 1px;
	text-shadow: rgba(0,0,0,.01) 0 0 1px;
}
h1::selection,
h2::selection,
h3::selection,
h4::selection,
h5::selection,
h6::selection
{

}
::-webkit-input-placeholder
{
	font-size: 16px !important;
	font-weight: 500;
	color: #777777 !important;
}
:-moz-placeholder /* older Firefox*/
{
	font-size: 16px !important;
	font-weight: 500;
	color: #777777 !important;
}
::-moz-placeholder /* Firefox 19+ */
{
	font-size: 16px !important;
	font-weight: 500;
	color: #777777 !important;
}
:-ms-input-placeholder
{
	font-size: 16px !important;
	font-weight: 500;
	color: #777777 !important;
}
::input-placeholder
{
	font-size: 16px !important;
	font-weight: 500;
	color: #777777 !important;
}
.form-control
{
	color: #d5050a;
}
section
{
	display: block;
	position: relative;
	box-sizing: border-box;
}
.clear
{
	clear: both;
}
.clearfix::before, .clearfix::after
{
	content: "";
	display: table;
}
.clearfix::after
{
	clear: both;
}
.clearfix
{
	zoom: 1;
}
.float_left
{
	float: left;
}
.float_right
{
	float: right;
}
.trans_200
{
	-webkit-transition: all 200ms ease;
	-moz-transition: all 200ms ease;
	-ms-transition: all 200ms ease;
	-o-transition: all 200ms ease;
	transition: all 200ms ease;
}
.trans_300
{
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}
.trans_400
{
	-webkit-transition: all 400ms ease;
	-moz-transition: all 400ms ease;
	-ms-transition: all 400ms ease;
	-o-transition: all 400ms ease;
	transition: all 400ms ease;
}
.trans_500
{
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;
}
.fill_height
{
	height: 100%;
}
.super_container
{
	width: 100%;
	overflow: hidden;
}


/* SHOP */

.shop{
	margin-top: 20px;
	padding-left: 0;
	padding-right: 0;
	display: flex;
	justify-content: center;
    padding-bottom: 120px;
}

.shop .col {
	max-width: 1200px;
}

.categories_shop{
	margin-top: 190px;
	padding-left: 0;
	padding-right: 0;
}

.categories_shop .row{
	display: flex;
	justify-content: center;
}

.categories{
	display: flex;
	gap: 8px;
	justify-content: center;
}

.category_item{
    padding: 10px;
    border : 1px solid #000000;
    background-color: #000000;
    border-radius: 25px;
    transition: all 0.9s ease;
    text-align: center;
    justify-content: center;
}

.category_link span{
    font-size: 14px;
    font-weight: 300;
    color:ghostwhite;
}

.product-item{
 max-width: 250px;
}

.category_item:hover{
    padding: 10px;
    border : 1px solid #d5050a;
    background-color: #d5050a;
    border-radius: 25px;
}

/* Active category: border black, background white, text black */
.categories .category_item.active{
    border: 1px solid #000000;
    background-color: #ffffff;
}
.categories .category_item.active .category_link span{
    color: #000000;
}
/* Keep active style on hover */
.categories .category_item.active:hover{
    border: 1px solid #000000;
    background-color: #ffffff;
}

.categories .category_item a {
    cursor: pointer;
}

@media (max-width: 768px) {
	.categories_shop{
	margin-top: 90px !important;
	padding-left: 0;
	padding-right: 0;
	}

	.shop{
	margin-top: 0px;
	padding-left: 0;
	padding-right: 0;
	display: flex; 
	justify-content: center;
    padding-bottom: 120px;
	}

	/* Make categories fit on screen (wrap) */
	.categories{
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	padding-left: 15px;
	padding-right: 15px;
	}

	.categories .category_item{
	flex: 0 1 auto;
	padding: 8px 12px;
	border-radius: 20px;
	}

	/* Two-column products on phones */
	.shop .col{
	max-width: 100%;
	}

	.product-grid{
	margin: 2px -4px; /* small gutters for 2 cols */
	}

	.product-item{
	width: calc(50% - 8px) !important; /* two columns */
	max-width: none;
	margin: 0 4px 16px;
	box-sizing: border-box;
	}

	.product_image img{
	width: 100%;
	height: auto;
	display: block;
	}

	/* Prevent edge clipping from Bootstrap row gutters */
	.categories_shop .row{ margin-left: 0; margin-right: 0; }
	.categories.row{ margin-left: 0; margin-right: 0; }

	/* More breathing room on the sides + safe-area support */
	.categories{ padding-left: 16px; padding-right: 16px; width: 100%; box-sizing: border-box; }
	/* Safe-area fallback pattern */
	.categories{ padding-left: calc(16px + env(safe-area-inset-left)); padding-right: calc(16px + env(safe-area-inset-right)); }

	/* Center the two-column product layout and override absolute positioning */
	.product-grid{ display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; padding-left: 12px; padding-right: 12px; }
	.product-grid .product-item{ position: static !important; float: none; transform: none !important; width: calc(50% - 12px) !important; margin: 0; }
}


