/* Basic styling */
@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@300;400;500;600;700&display=swap');

/* 1. Eén font voor de hele site */
* {
  font-family: 'Barlow', sans-serif !important;
}

/* 2. Standaard tekstkleur overal */
body, h1, h2, h3, h4, h5, h6, p, label, span, li {
  color: #5b563c;
}

/* 3. Standaard tekstkleur overal */
body {
  overflow-x: hidden;
  padding-top: 100px;
}

/* 4. Links in Trimdy-stijl */
a {
  color: #5b563c;
  text-decoration: none;
}

a:hover {
  color: #cfb997;
}

/* 4. icons */
.icon-trimdy {
  color: #cfb997 !important;
}

/* 5. Alerts in trimdy-stijl */
.alert-trimdy {
    background-color: #a94442;
    color: #fff;
    padding: 12px 18px;
    border-radius: 10px;
    margin-bottom: 20px;
    font-weight: 600;
}

.alert-success-trimdy {
    background-color: #5b563c;
    color: #fff;
    padding: 12px 18px;
    border-radius: 10px;
    margin-bottom: 20px;
    font-weight: 600;
}

.btn-loading {
    pointer-events: none;
    opacity: 0.7;
}


/* LOGO */

.img-fluid {
  height: 70%; 
  width: 70%; 
  padding-top: 40px;
  padding-bottom: 50px;
}

/* WELKOM */

.welkom-container {
  background-color: #cfb997;
}

/* hieronder nog origineel nog verwerken*/
/* */
	.form-area {
  		padding-top: 90px;
	}

	.row.single-form {
		box-shadow: 0 2px 20px -5px rgba(0,0,0,0.5);
		background: #fff;
	}

	.left {
		
		background-color: #cfb997;	
	}

	.left p {
		margin-left: 20px;
	}

	.left h2 {
		margin-left: 20px;
	}

	/* .left p {
		color: #5b563c;
	} */

	@media (max-width: 767px){
	
		/*.left{
			padding-top: 60px;
			padding: 90px 15px;
			text-align: center; 
		} */
	}



/* */


.feature img {
  padding: 1.5rem;
}

footer {
  background-color: #40474e;
  background-size: cover;
  color: white;
}

footer .row {
  padding: 1.5rem 0 4rem;
  line-height: 2rem;
}
footer img {
  margin: 1.5rem 0;
}
footer h3 {
  margin: 1.5rem 0;
}

/*-- Extra Bootstrap Column Padding --*/

[class*="col-"] {
  padding: 1rem;
}

/* 
    BEGIN -> pricing.php
*/
.custom-header-links {
	position: relative;
	display: block !important;   /* forceer: geen flex, geen bootstrap gedrag */
	text-align: left;
	padding-left: 40px;          /* ruimte maken voor het icoon */
}

.custom-header {
	position: relative;
	display: block !important;   /* forceer: geen flex, geen bootstrap gedrag */
	text-align: center;
	padding-left: 40px;          /* ruimte maken voor het icoon */
}

.text-wrapper {
	display: inline-block;       /* echte centrering */
	text-align: center;
}

.price-row {
	display: flex;
	align-items: center;
	width: 100%;
}

.price-row .label {
	margin-left: 8px;
}

.price-row .dots {
	flex: 1;
	border-bottom: 1px dotted #ccc;
	margin: 0 10px;
}

.price-row .price {
	white-space: nowrap;
	font-weight: 600;
}

/* 
    EIND -> pricing.php
*/

/* 
    BEGIN -> WORKSHOP_## FORM
*/
.datum .row-top {
	display: flex;
	align-items: center;
}

.datum i {
	font-size: 1.6rem;      /* icoon groter */
	color: #5b563c;         /* jouw bruine kleur */
}

.datum .label {
	margin-left: 12px;       /* kleine gap tussen icon en tekst */
	color: #5b563c;
	font-weight: 600;
	font-size: 1.9rem;
}

.datum .date {
	margin-left: calc(1.6rem + 12px) !important;      /* zelfde afstand als icoon + gap */
}
/* 
    BEGIN -> WORKSHOP_## FORM
*/

/* 
    BEGIN -> CONTACT FORM
*/

.form-area {
  padding-top: 60px;
}

.row.single-form {
  /*box-shadow: 0 2px 20px -5px rgba(0,0,0,0.5);*/
  box-shadow: 0 2px 20px -5px #5b563c;
  background: #fff;
}

.left {
  background:  #100f0e;
  /* padding: 200px 93px; */
}

.left h2{
  font-family: 'Barlow';
  color: #fff;
  font-weight:700;
  font-size:48px;
}

.left h2 span{
  font-weight: 100;
}

.left p{
  color: #5b563c;
}

.right{
  padding: 70px 100px;
  position: relative;
}

.right i{
  position: absolute;
  font-size: 80px;
  left: -27px;
  top: 40%;
  color: #fff;
}

.form-control{
  border: 4px solid #000;
}
.right button{
  border: none;
  border-radius: 0;
  background: #252525;
  width: 180px;
  color: #fff;
  padding: 15px 0;
  display: inline-block;
  font-size: 16px;
  margin-top: 20px;
  cursor: pointer;
}
.right button:hover{
  background: #252525;
}

.card-footer .carousel-control-prev,
.card-footer .carousel-control-next {
    position: static !important;
    transform: none !important;
    top: auto !important;
}

.card-footer .carousel-control-prev-icon,
.card-footer .carousel-control-next-icon {
    filter: brightness(0) saturate(100%) invert(86%) sepia(12%) saturate(508%) hue-rotate(350deg) brightness(94%) contrast(88%);
}


@media (min-width: 768px) and (max-width: 991px){
	.right i{
		top: -52px;
		transform: rotate(90deg);
		left: 50%;
	}
}

@media (max-width: 767px){
  .left{
      padding: 90px 15px;
      text-align: center;
  }
  .left h2{
      font-size: 25px;
  }
  .right i{
      padding: -52%;
      transform: rotate(90deg);
      left: 45%;
  }
  .right button{
      width: 150px;
      padding: 12px 0;
  }
}
/* END CONTACT FORM*/

/* BEGIN -> CARDS */
.card {
	border-color: #cfb997;
    border-radius: 25px;
	border-width: 5px;
}

.card-body h5 {
    color: #5b563c;
    font-weight: 700;
}

/* EIND -> CARDS */

/* BEGIN -> WEBSHOP */
.card.workshop {
    border: 2px solid #bde0fe;
    background: #e7f5ff;
}

.card.product {
    border: 1px solid #ddd;
}

.card {
    transition: transform .15s ease, box-shadow .15s ease;
}

.card-body {
    display: flex;
    flex-direction: column;
}

.card-title {
    font-weight: 600;
}

.card-text {
    flex-grow: 1;
}

.card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

.card img {
    transition: transform .2s ease;
}

.card:hover img {
    transform: scale(1.03);
}
/* END WORKSHOP */

/* BEGIN -> PRODUCTKAART STYLING */
.product-card {
    border-radius: 20px;
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    border: 4px solid #cfb997;
}

.product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.15);
}

/* PRODUCTAFBEELDING */
.product-card img {
    border-bottom: 4px solid #cfb997;
    height: 260px;
    object-fit: cover;
}

/* TITEL */
.product-card .card-title {
    font-weight: 700;
    color: #5b563c;
}

/* PRIJS */
.product-price {
    font-size: 1.3rem;
    font-weight: 700;
    color: #5b563c;
}

/* BADGES */
.badge-workshop {
    background-color: #5b563c;
    color: #fff;
    font-size: 0.8rem;
    padding: 6px 10px;
    border-radius: 12px;
}

.badge-new {
    background-color: #cfb997;
    color: #5b563c;
    font-size: 0.8rem;
    padding: 6px 10px;
    border-radius: 12px;
}

.badge-out {
    background-color: #a94442;
    color: #fff;
    font-size: 0.8rem;
    padding: 6px 10px;
    border-radius: 12px;
}

/* KNOP */
.btn,
.btn-primary,
.btn-success,
.btn-warning {
    transition: all 0.2s ease-in-out;
    transform-origin: center center;
}

.btn:hover,
.btn-primary:hover,
.btn-success:hover,
.btn-warning:hover {
    transform: scale(1.03);
    filter: brightness(1.05);
}

.btn-trimdy {
    background-color: #cfb997;
    color: #5b563c;
    border-radius: 30px;
    border: none;
    padding: 10px 20px;
    font-weight: 600;
    transition: background-color 0.25s ease;
}

.btn-trimdy:hover {
    background-color: #bfa886;
    color: #fff;
}
/* EIND -> PRODUCTKAART STYLING */

/* BEGIN -> NAVBAR BASIS */
.navbar {
    background-color: #cfb997 !important;
    padding: 12px 0;
    border-bottom: 4px solid #bfa886;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

/* NAV-LINKS */
.navbar .nav-link {
	display: flex;
    align-items: center;
    gap: 6px;
	color: #5b563c !important;
    font-weight: 600;
    padding: 10px 18px !important;
    border-radius: 8px;
    transition: background-color 0.25s ease, color 0.25s ease;
}

/* HOVER EFFECT */
.navbar .nav-link:hover {
    background-color: #bfa886;
    color: #fff !important;
}

/* ACTIVE STATE */
.navbar .nav-link.active {
    background-color: #5b563c !important;
    color: #fff !important;
}

/* WINKELMAND BADGE */
.cart-badge {
    background-color: #5b563c !important;
    color: #fff !important;
    border-radius: 12px;
    padding: 4px 10px;
    font-size: 0.75rem;
    margin-left: 6px;
}

/* NAVBAR BRAND */
.navbar-brand {
    font-weight: 700;
    color: #5b563c !important;
    font-size: 1.4rem;
}

/* MOBILE MENU ICON */
.navbar-toggler {
    border-color: #5b563c !important;
}

.navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(91,86,60, 0.9)' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") !important;
}
/* EIND -> NAVBAR BASIS */

/* BEGIN -> PRODUCT-DETAIL */ 
.sticky-add-to-cart {
    position: sticky;
    bottom: 0;
    z-index: 999;
    background: #fff;
    padding: 15px;
    border-top: 1px solid #ddd;
    box-shadow: 0 -2px 6px rgba(0,0,0,0.08);
}

/* EIND -> PRODUCT-DETAIL */ 

/* BEGIN -> MICRO-INTERACTIES – GLOBAAL */
.card,
.btn,
.nav-link,
img {
    transition: all 0.25s ease;
}

/* CARD HOVER */
.card:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}

/* BUTTON PRESS EFFECT */
.btn:active {
    transform: scale(0.97);
}
/* EIND -> MICRO-INTERACTIES – GLOBAAL */

/* 	BEGIN -> WEBSHOP -INDEX */
/* Trimdy productkaart divider */
.trimdy-divider {
    border: none;
    border-top: 1px dashed #ccc;
    margin: 10px 0;
}

/* Tags in productkaarten */
.product-card .badge {
    font-size: 0.75rem;
    padding: 4px 8px;
    border-radius: 6px;
}

/* Productprijs */
.product-price {
    font-size: 1.1rem;
    color: #5b563c;
}

.product-card {
    transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.product-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.12);
}

.product-card img {
    transition: transform 0.3s ease;
}

.product-card:hover img {
    transform: scale(1.05);
}

.product-card .card-body {
    padding: 18px;
}

.product-card .card-title {
    margin-bottom: 8px;
}

.product-card .card-text {
    margin-bottom: 12px;
}
/* 	EIND -> WEBSHOP -INDEX */

/* BEGIN -> CART */
/* CART ROW */
.cart-row td {
    padding: 14px 10px;
    vertical-align: middle;
}

/* PRODUCTNAAM */
.cart-name {
    font-size: 1rem;
}

/* QUANTITY BUTTONS */
.qty-btn {
    display: inline-block;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    background-color: #f2f2f2;
    color: #5b563c;
    font-weight: bold;
    text-align: center;
    line-height: 32px;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.qty-btn:hover {
    background-color: #e0d6c4;
    color: #fff;
}

/* QUANTITY NUMBER */
.qty-number {
    font-size: 1rem;
    font-weight: 600;
    min-width: 20px;
    text-align: center;
}

/* REMOVE BUTTON */
.remove-btn {
    color: #b30000;
    font-size: 0.9rem;
    text-decoration: none;
    padding: 6px 10px;
    border-radius: 6px;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.remove-btn:hover {
    background-color: #ffdddd;
    color: #800000;
}

/* CART SUMMARY */
.cart-summary {
    border: 1px solid #ddd;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

.cart-summary h4 {
    color: #5b563c;
    font-weight: 700;
}

.cart-summary span {
    font-size: 1rem;
}

.cart-summary strong {
    font-size: 1.1rem;
    color: #5b563c;
}

.cart-info-note {
    font-size: 0.85rem;
    color: #6c757d;
    margin-top: 6px;
}

/* EIND -> CART */

/* BEGIN -> CHECKOUT FORM */
.checkout-form {
    border: 1px solid #ddd;
    max-width: 650px;
    margin: 0 auto;
}

.checkout-form h2 {
    color: #5b563c;
    font-weight: 700;
}

.checkout-form .form-label {
    font-weight: 600;
    color: #5b563c;
}

.checkout-form .form-control-lg {
    padding: 14px;
    font-size: 1rem;
    border-radius: 10px;
    border: 1px solid #ccc;
}

.checkout-form .form-control-lg:focus {
    border-color: #bfa886;
    box-shadow: 0 0 0 0.15rem rgba(191,168,134,0.3);
}

.form-check-label {
    font-size: 1rem;
    color: #5b563c;
}

.form-check-input {
    transform: scale(1.3);
    margin-right: 8px;
}

/* EIND -> CHECKOUT FORM*/

.order-card {
    border: 1px solid #ddd;
    border-radius: 12px;
}

.trimdy-divider {
    border: none;
    border-top: 1px dashed #ccc;
    margin: 12px 0 20px;
}

.order-card p.text-muted {
    font-size: 0.85rem;
}

.order-card p.fw-bold {
    font-size: 1rem;
    color: #5b563c;
}
