/* ========================================================================================== */
/*                                     BASIS STYLING                                           */
/* ========================================================================================== */

* {
	box-sizing: border-box;
}

body {
	font-family: Arial, Helvetica, sans-serif;
	margin: 0;
	background-color: #f4f4f4;
	color: #333;
}

/* ========================================================================================== */
/*                                   CONTAINER                                                 */
/* ========================================================================================== */

.container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px 40px;
}


/* ========================================================================================== */
/*                                      NAVIGATIE                                              */
/* ========================================================================================== */

.main-nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #111;
	padding: 15px 30px;
}

.main-nav a {
	color: white;
	text-decoration: none;
	font-weight: bold;
	margin-right: 20px;
}

.main-nav a:last-child {
	margin-right: 0;
}

.main-nav a:hover {
	text-decoration: underline;
}

#mandjeAantal {
	background-color: orange;
	color: black;
	padding: 2px 8px;
	border-radius: 20px;
	font-size: 0.9em;
	margin-left: 6px;
}

/* ========================================================================================== */
/*                                      TITELS                                                 */
/* ========================================================================================== */

h1 {
    display: flex;
	align-items: center;
    justify-content: center;
}

h2 {
	margin-bottom: 15px;
}

/* ========================================================================================== */
/*                                   PAGINA LAYOUT                                             */
/* ========================================================================================== */

.shop-layout {
	display: flex;
	gap: 30px;
	padding: 20px;
}

.producten {
	flex: 3;
}

.winkelmand {
	flex: 1;
	background-color: #fff;
	padding: 20px;
	border-radius: 12px;
	height: fit-content;
	position: sticky;
	top: 210px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* ========================================================================================== */
/*                                   PRODUCT GRID                                              */
/* ========================================================================================== */

.product-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 20px;
}

/* ========================================================================================== */
/*                                   PRODUCT KAART                                             */
/* ========================================================================================== */

.card {
	background-color: #fff;
	border-radius: 12px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
	padding: 15px;
	text-align: center;
}

.card img {
	width: 100%;
	height: 200px;
	object-fit: contain;
	margin-bottom: 10px;
}

.card h3 {
	margin: 10px 0 5px;
}

.card p {
	margin: 5px 0 10px;
	font-weight: bold;
}

/* ========================================================================================== */
/*                                   KNOPPEN                                                   */
/* ========================================================================================== */

button {
	background-color: #ff5722;
	border: none;
	border-radius: 6px;
	color: white;
	cursor: pointer;
	padding: 8px 12px;
	transition: background-color 0.3s;
}

button:hover {
	background-color: #e64a19;
}

.btn-leeg {
	background-color: #9e9e9e;
	width: 100%;
	margin-top: 10px;
}

.btn-leeg:hover {
	background-color: #757575;
}

/* ========================================================================================== */
/*                                   WINKELMAND                                                */
/* ========================================================================================== */

#mandjeLijst {
	list-style: none;
	padding: 0;
	margin-bottom: 15px;
}

.mandje-item {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 0px;
	margin-bottom: 10px;
	background-color: #f7f7f7;
	border-radius: 8px;
	font-size: 0.9em;
}

.mandje-item span {
	white-space: nowrap;
}

.mandje-item .aantal {
	min-width: 28px;
	text-align: center;
	font-weight: bold;
}

.mandje-item button {
	padding: 4px 8px;
	font-size: 14px;
}

.mandje-item button:last-child {
	margin-left: auto;
	background-color: #d32f2f;
}

.mandje-item button:last-child:hover {
	background-color: #b71c1c;
}

#totaalPrijs {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 15px;
}

/* Acties onderaan mandje */
.mandje-acties {
	display: flex;
	gap: 10px;
}

/* ========================================================================================== */
/*                                   RESPONSIVE                                                */
/* ========================================================================================== */

@media (max-width: 900px) {
	.shop-layout {
		flex-direction: column;
	}

	.winkelmand {
		position: static;
	}
}
