/*
Theme Name:  Les Hollés
Theme URI:   https://lesholes.com
Author:      Les Hollés
Author URI:  https://lesholes.com
Description: Custom WordPress thema voor Les Hollés.
Version:     1.0.0
Requires at least: 6.0
Tested up to:      6.7
Requires PHP:      8.1
License:           Proprietary
Text Domain:       les-holles
*/

/* ── Reset & Base ───────────────────────────────────────────────── */
*, *::before, *::after {
    box-sizing: border-box;
    margin:     0;
    padding:    0;
}

html {
    font-size:                  16px;
    -webkit-text-size-adjust:   100%;
    scroll-behavior:            smooth;
}

html, body {
    max-width: 100%;
	width: 100%;
}

body {
    font-family:  'Garamond', 'EB Garamond', Georgia, serif;
    background:   #ffffff;
    color:        #1a1a1a;
    line-height:  1.65;
    min-height:   100vh;
    display:      flex;
    flex-direction: column;
}

main {
    flex: 1 1 auto;
}

img, video {
    max-width:  100%;
    height:     auto;
    display:    block;
}

a {
    color:           inherit;
    text-decoration: none;
}

ul, ol {
    list-style: none;
}

button {
    cursor: pointer;
}

/* ── Container ──────────────────────────────────────────────────── */
.container {
    width:     100%;
    max-width: 1280px;
    margin:    0 auto;
    padding:   0 48px;
}

@media ( max-width: 768px ) {
    .container {
        padding: 0 20px;
    }
}

/* ── WooCommerce Mijn account ─────────────────────────────────── */

.woocommerce-account .woocommerce {
    width: 100%;
    max-width: 1280px;
    margin: 0px auto 80px;
    color: #2b1d15;
}

.woocommerce-account h1 {
    margin-top: 140px;
}

/* Navigatie */

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none;
    margin: 0;
    padding: 0;
    border: 1px solid #D7D1CD;
    background: #fff;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
    border-bottom: 1px solid #D7D1CD;
}

.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
    border-bottom: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
    display: block;
    padding: 16px 20px;
    font-family: Molengo, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.4;
    color: #2b1d15;
    transition: background-color .2s ease, padding-left .2s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
    background: #EBE7E4;
    padding-left: 26px;
}

/* Content */
.woocommerce-account .woocommerce-MyAccount-content {
    font-family: Molengo, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: #2b1d15;
}

.woocommerce-account .woocommerce-MyAccount-content p {
    margin-bottom: 22px;
}

.woocommerce-account .woocommerce-MyAccount-content strong {
    font-weight: 600;
}

.woocommerce-account .woocommerce-MyAccount-content a {
    color: #2b1d15;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.woocommerce-account .woocommerce-MyAccount-content a:hover {
    opacity: .7;
}

/* WooCommerce buttons/forms/tables binnen account */
.woocommerce-account button.button,
.woocommerce-account a.button,
.woocommerce-account input.button {
    background: #2b1d15;
    color: #fff;
    border: 1px solid #2b1d15;
    border-radius: 0;
    padding: 13px 22px;
    font-family: Molengo, Arial, sans-serif;
    font-size: 15px;
    font-weight: 400;
    transition: all .2s ease;
}

.woocommerce-account button.button:hover,
.woocommerce-account a.button:hover,
.woocommerce-account input.button:hover {
    background: transparent;
    color: #2b1d15;
}

.woocommerce-account table.shop_table {
    border: 1px solid #D7D1CD;
    border-radius: 0;
    font-family: Molengo, Arial, sans-serif;
}

.woocommerce-account table.shop_table th,
.woocommerce-account table.shop_table td {
    padding: 14px 16px;
    border-color: #D7D1CD;
}

/* Formulieren */
.woocommerce-account form .form-row label {
    font-family: Molengo, Arial, sans-serif;
    font-size: 14px;
    color: #2b1d15;
}

.woocommerce-account input.input-text,
.woocommerce-account textarea,
.woocommerce-account select {
    width: 100%;
    border: 1px solid #D7D1CD;
    border-radius: 0;
    padding: 13px 14px;
    font-family: Molengo, Arial, sans-serif;
    font-size: 15px;
    color: #2b1d15;
    background: #fff;
}

.woocommerce-account input.input-text:focus,
.woocommerce-account textarea:focus,
.woocommerce-account select:focus {
    outline: 1px solid #2b1d15;
}

/* Notices */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
    border-top-color: #2b1d15;
    background: #EBE7E4;
    color: #2b1d15;
    font-family: Molengo, Arial, sans-serif;
}

/* Responsive */
@media (max-width: 900px) {
    .woocommerce-account {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .woocommerce-account .woocommerce-MyAccount-navigation li {
        border-right: 1px solid #D7D1CD;
    }
	
	.woocommerce-account h1 {
		margin-top: 80px;
	}
}


@media (max-width: 520px) {
    .woocommerce-account {
        margin-bottom: 50px;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul {
        grid-template-columns: 1fr;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation li {
        border-right: 0;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation a {
        padding: 14px 16px;
    }
}

.woocommerce-cart .col-12 {
	margin-top: 140px;
	    font-family: Molengo;
}

a.wc-block-components-product-name {
	font-size: 20px !important;
}

span.price.wc-block-components-product-price {
	font-size: 16px;
}

.wc-block-components-product-metadata__description p {
	font-size: 15px !important;
}

span.wc-block-components-product-details__size {
	    font-family: Molengo;	
	font-size: 15px !important;
}

.wc-block-components-product-badge {
	display: none;
}

a.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained {
	background: black;
    color: white;
    border-radius: 5px;
	border: 1px solid black; 
	transition: 0.3s all; 
}

a.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained:hover { 
	background-color: transparent;
	color: black;
}

.woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout.is-large { 
	font-family: Molengo;
}

.woocommerce-checkout h1 {
	margin-top: 120px;
	font-family: Molengo;
}

.wc-block-components-totals-item__label, .wc-block-components-panel__button, span.wc-block-components-checkbox__label, .wc-block-components-checkout-return-to-cart-button {
	font-size: 15px;
}

.wc-block-checkout__sidebar.is-sticky {
	position: unset !important;
}

button.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained {
	background-color: black; 
	color: white; 
	border-radius: 5px;
	    font-size: 16px;
    min-height: unset;
	font-family: Molengo;
	    border: 1px solid black;
	transition: 0.3s all;
}

button.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained:hover {
	background-color: transparent; 
	color: black;
}

@media (max-width: 700px) { 
	.woocommerce-checkout h1, .woocommerce-cart .col-12 {
		margin-top: 90px;
	}
}

form.wc-block-components-form.wc-block-checkout__form {
	font-family: Molengo;
}

/* ── YITH Wishlist ─────────────────────────────────── */

.yith-wcwl-form {
    width: 100%;
    max-width: 1280px;
    margin: 140px auto 80px;
    padding: 0 48px;
    color: #2b1d15;
    font-family: Molengo, Arial, sans-serif;
}

/* Titel */
.yith-wcwl-form .wishlist-title-container {
    margin-bottom: 35px;
}

.yith-wcwl-form .wishlist-title {
    display: flex;
    align-items: center;
    gap: 18px;
}

.yith-wcwl-form .wishlist-title h2 {
    font-family: 'Garamond', 'EB Garamond', Georgia, serif;
    font-size: 38px;
    font-weight: 400;
    color: #2b1d15;
}

.yith-wcwl-form .show-title-form,
.yith-wcwl-form .button {
    background: transparent;
    border: 1px solid #D7D1CD;
    color: #2b1d15;
    padding: 10px 14px;
    font-family: Molengo, Arial, sans-serif;
    font-size: 14px;
    transition: all .2s ease;
}

.yith-wcwl-form .show-title-form:hover,
.yith-wcwl-form .button:hover {
    background: #EBE7E4;
}

/* Tabel */
.yith-wcwl-form table.wishlist_table {
    width: 100%;
    border: 1px solid #D7D1CD;
    border-collapse: collapse;
    background: #fff;
    font-family: Molengo, Arial, sans-serif;
}

.yith-wcwl-form table.wishlist_table th {
    padding: 16px;
    border-bottom: 1px solid #D7D1CD;
    font-size: 14px;
    font-weight: 400;
    text-align: left;
    color: #2b1d15;
}

.yith-wcwl-form table.wishlist_table td {
    padding: 20px 16px;
    border-bottom: 1px solid #D7D1CD;
    vertical-align: middle;
    color: #2b1d15;
}

.yith-wcwl-form table.wishlist_table tr:last-child td {
    border-bottom: 0;
}

/* Afbeelding */
.yith-wcwl-form .product-thumbnail img {
    width: 90px;
    height: 120px;
    object-fit: cover;
}

/* Productnaam */
.yith-wcwl-form .product-name a {
    color: #2b1d15;
    font-size: 16px;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.yith-wcwl-form .product-name a:hover {
    opacity: .7;
}

/* Prijs */
.yith-wcwl-form .product-price {
    font-size: 15px;
}

.yith-wcwl-form .product-price del {
    opacity: .45;
    margin-right: 8px;
}

.yith-wcwl-form .product-price ins {
    text-decoration: none;
}

/* Voorraad */
.yith-wcwl-form .wishlist-in-stock {
    display: inline-block;
    border: 1px solid #D7D1CD;
    padding: 6px 10px;
    font-size: 13px;
    color: #2b1d15;
    background: #EBE7E4;
}

/* Remove */
.yith-wcwl-form .product-remove a.remove {
    color: #2b1d15 !important;
    font-size: 26px;
    font-weight: 400;
    line-height: 1;
    opacity: .55;
    transition: opacity .2s ease;
}

.yith-wcwl-form .product-remove a.remove:hover {
    opacity: 1;
    background: transparent;
}

/* Add to cart */
.yith-wcwl-form .product-add-to-cart a,
.yith-wcwl-form .add_to_cart_button {
    display: inline-block;
    background: #2b1d15;
    color: #fff !important;
    border: 1px solid #2b1d15;
    padding: 13px 22px;
    font-family: Molengo, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.2;
    transition: all .2s ease;
    text-align: center;
}

.yith-wcwl-form .product-add-to-cart a:hover,
.yith-wcwl-form .add_to_cart_button:hover {
    background: transparent;
    color: #2b1d15 !important;
}

/* Titel aanpassen veld */
.yith-wcwl-form .hidden-title-form input {
    border: 1px solid #D7D1CD;
    padding: 12px 14px;
    font-family: Molengo, Arial, sans-serif;
    font-size: 15px;
    color: #2b1d15;
}

.yith-wcwl-form .edit-title-buttons a {
    color: #2b1d15;
}

/* Share */
.yith-wcwl-form .yith_wcwl_wishlist_footer {
    margin-top: 35px;
}

.yith-wcwl-form .yith-wcwl-share {
    border: 1px solid #D7D1CD;
    padding: 24px;
    background: #fff;
}

.yith-wcwl-form .yith-wcwl-share-title {
    font-family: 'Garamond', 'EB Garamond', Georgia, serif;
    font-size: 24px;
    font-weight: 400;
    margin-bottom: 18px;
    color: #2b1d15;
}

.yith-wcwl-form .yith-wcwl-share ul {
    display: flex;
    gap: 10px;
    margin: 0 0 18px;
    padding: 0;
    list-style: none;
}

.yith-wcwl-form .yith-wcwl-share a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: 1px solid #D7D1CD;
    color: #2b1d15;
    transition: all .2s ease;
}

.yith-wcwl-form .yith-wcwl-share a:hover {
    background: #EBE7E4;
}

.yith-wcwl-form .yith-wcwl-after-share-section input.copy-target {
    width: 100%;
    border: 1px solid #D7D1CD;
    padding: 12px 14px;
    font-family: Molengo, Arial, sans-serif;
    font-size: 14px;
    color: #2b1d15;
    margin-bottom: 10px;
}

.yith-wcwl-form .yith-wcwl-after-share-section small {
    color: #2b1d15;
    opacity: .75;
}

.yith-wcwl-form .copy-trigger {
    text-decoration: underline;
    cursor: pointer;
}

/* Responsive */
@media (max-width: 900px) {
    .yith-wcwl-form {
        padding: 0 20px;
        margin-top: 110px;
    }

    .yith-wcwl-form table.wishlist_table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
}

@media (max-width: 600px) {
    .yith-wcwl-form {
        margin-top: 100px;
        margin-bottom: 50px;
    }

    .yith-wcwl-form .wishlist-title {
        align-items: flex-start;
        flex-direction: column;
    }

    .yith-wcwl-form .wishlist-title h2 {
        font-size: 32px;
    }

    .yith-wcwl-form table.wishlist_table th,
    .yith-wcwl-form table.wishlist_table td {
        padding: 14px 12px;
    }

    .yith-wcwl-form .product-add-to-cart a,
    .yith-wcwl-form .add_to_cart_button {
        padding: 12px 16px;
        font-size: 14px;
    }
}

.wishlist_table.mobile li {
	display: flex;
	flex-direction: row;
    align-items: center;
	    border: 1px solid gainsboro;
    padding: 10px;
}

.wishlist_table.mobile .additional-info-wrapper {
	display: flex;
    align-items: center;
	    width: 50%;
    flex: 50%;
	justify-content: flex-end;
}

.wishlist_table.mobile li .item-wrapper {
	width: 50%; 
	flex: 50%;
	    display: flex;
    align-items: center;
}

.wishlist_table.mobile td.label, .wishlist_table.mobile .value {
	width: unset !important;
}

.yith-wcwl-form .wishlist-in-stock {
	background-color: unset !important;
	border: unset !important;
}

.wishlist_table.mobile .additional-info-wrapper tbody tr {
	display: flex; 
	align-items: center;
}

.wishlist_table tr td, .wishlist_table tr th.wishlist-delete, .wishlist_table tr th.product-checkbox {
	text-align: left !important;
}

.wishlist_table .product-add-to-cart a {
	display: block !important;
}

.yith-add-to-wishlist-button-block.yith-add-to-wishlist-button-block--single {
	margin-top: 20px;
}

a.nav-button.is--primary.wishlist img {
	max-width: 18px; 
	width: 100%;
}

.wpcf7-form-control-wrap {
	display: flex;
    flex-direction: column-reverse;	
}

.wpcf7 form .wpcf7-response-output {
	margin-left: 0px !important;
	padding-left: 10px !important;
	font-family: 'Molengo', sans-serif;
    border-top: unset;
    border-right: unset;
    border-bottom: unset;
}

.wpcf7-spinner {
	display: none !important;
}

.contact_form input, .contact_form textarea {
    font-family: 'Molengo', sans-serif;
    font-weight: 400;
    font-size: 16px !important;	
}

#notfound {
	    padding: 200px 30px 150px;
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

.titel-niks {
	    font-family: Microsoft Himalaya;
    font-weight: 400;
    font-style: Regular;
    font-size: 60px;
	line-height: 60px;
}

.informatie-404 {
	font-family: Molengo;
    font-weight: 400;
    font-style: Regular;
    font-size: 18px;
    leading-trim: NONE;
    line-height: 160%;
    display: block;
    margin: 20px 0;
}

.informatie-404 a {
	text-decoration: underline;
}

a.button.button-hover.radius.button-404 {
    background: black;
    color: white;
    border-radius: 5px;
    border: 1px solid black;
    transition: 0.3s all;
    padding: 12px 24px;
    font-size: 18px;
    display: inline-block;
    margin-top: 10px;
	font-family: Molengo;
}

a.button.button-hover.radius.button-404:hover { 
	background-color: transparent;
	color: black;
}

.woocommerce-order {
	font-family: Molengo;
}

.wc-ss-btn:disabled {
	opacity: 0.6 !important;
}

.wcsl-product-name {
	font-size: 18px !important;
	font-weight: 500 !important;
	margin-right: 10px !important;
}

.wcsl-product-price {
	font-size: 16px !important;
}

.wcsl-modal {
	font-family: 'Molengo', sans-serif !important;
}

.lh-informatie-container {
  max-width: 1300px;
  margin: 0 auto;
  padding: 40px 20px;
  font-family: 'Molengo', sans-serif !important;
  line-height: 1.6;
  color: #222;
}

/* Headings */
.lh-informatie-container h2 {
  font-size: 28px;
  margin: 40px 0 15px;
  font-weight: 600;
  color: #000;
}

/* Paragraphs */
.lh-informatie-container p {
  margin-bottom: 15px;
  font-size: 16px;
}

/* Lists algemeen */
.lh-informatie-container ul,
.lh-informatie-container ol {
  margin: 15px 0 20px 20px;
  padding-left: 20px;
}

/* List items */
.lh-informatie-container li {
  margin-bottom: 8px;
  font-size: 16px;
}

/* Bullet styling */
.lh-informatie-container ul li {
  list-style-type: disc;
}

/* Numbered list styling */
.lh-informatie-container ol li {
  list-style-type: decimal;
}

/* Links */
.lh-informatie-container a {
  color: #000;
  text-decoration: underline;
  transition: 0.2s ease;
}

.lh-informatie-container a:hover {
  opacity: 0.7;
}

/* Strong text */
.lh-informatie-container strong {
  font-weight: 600;
}

/* Extra spacing tussen secties */
.lh-informatie-container h2 + p {
  margin-top: 5px;
}

.info-title {
	font-size: 40px;
}

:root :where(.wp-block-separator.is-style-dots):before,
.wc-block-cart__empty-cart__title.with-empty-cart-icon:before{
	display: none;
}

.has-text-align-center {
	text-align: left;
}

.woocommerce-cart h2.wp-block-heading.has-text-align-center.with-empty-cart-icon.wc-block-cart__empty-cart__title {
	margin-bottom: 25px;
}

.wc-block-grid__product-onsale {
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    right: auto !important;
    color: white !important;
    font-family: 'Molengo', sans-serif;
    font-size: 14px !important;
    text-transform: uppercase !important;
    padding: 5px 12px !important;
    border-radius: 5px !important;
    margin: 0 !important;
    min-width: auto !important;
    min-height: auto !important;
    line-height: 1 !important;
    z-index: 2 !important;
    background-color: #F90101 !important;
	border: unset !important;
}

.woocommerce-cart .wc-block-grid__product-title,
.woocommerce-cart .wc-block-grid__product-price.price{
	font-size: 20px;
}

.woocommerce-cart .wp-block-button.wc-block-grid__product-add-to-cart {
	display: none;
}

.yith-wcwl-share {
	display: none !important;
}

@media (max-width: 800px) { 
	.wishlist_table.mobile li .item-wrapper {
		width: 100% !important;
		flex: 100% !important;
		display: flex !important;
		align-items: flex-start !important;
		flex-direction: column !important;
	}
	
	.wishlist_table.mobile .additional-info-wrapper {
		display: flex !important;
		align-items: flex-start !important;
		width: 100% !important;
		flex: 100% !important;
		justify-content: flex-end !important;
		flex-direction: column !important;
	}
	
	.wishlist_table.mobile li {
		    display: flex;
    flex-direction: column;
    align-items: flex-start;
    border: 1px solid gainsboro;
    padding: 10px;
	}
	
	a.btn.button.show-title-form {
		display: none;
	}
	
	.wcsl-product-item {
		flex-direction: column;
		align-items: flex-start;
	}
}

.product-upsells {
	max-width: 1600px; 
	width: 100%; 
	margin: 0 auto;
	padding: 0 30px 100px;
}

.single-product ul.products, .single-product ul.products {
	padding: unset !important;
}

.product-upsells h2 {
	margin-bottom: 20px;
font-family: Molengo;
    font-weight: 400;
    font-style: Regular;
    font-size: 30px;
    leading-trim: NONE;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;
}

.woocommerce-order-pay .woocommerce-notices-wrapper, .woocommerce-order-pay #order_review, .woocommerce-order-pay #payment {
	font-family: Molengo;
}

.grecaptcha-badge {
	display: none;
}