/*
Theme Name: Mon Porc Bio
Theme URI: https://monporcbio.com
Description: Thème enfant de Divi par NickoLabs
Author: Nickolas Simard
Author URI: https://nickolabs.com
Template: Divi
Version: 2.0
*/
/*
	CHANGELOG
	v1.0 - Fin octobre 2024
	Version initial : importation des CSS custom précédemment configuré dans le thème parent

	v1.1 - début novembre 2024
	Ajout du {Sticky Header};
	Alignement vertical des boutons de la boutique - {Product Equal Height}

	v1.2 - 14 novembre 2024
	Ajout de Versionning du CSS
	Ajout de {Mon Compte}, {Adresses}

	v1.3 - 22 mai 2025
	Ajout des produits variables / Importation Square.
	Hide du Label "Attribute" des variations (Ligne 347)

	v2.0 - 17 septembre 2025
	Passage sous Divi - Base WPCF7 Contact Form, Modified Blog module's Images/Margins - also functions.php


	COLORS
	Primary: #49503A (Dark Olive Green)
	Secondary: #F9EDE4 (Light peach) 
	Tiertiary: #ecd9cb (Light peach - Darker Forms background)
	Text color: #14171c
*/
/* Base content color */	
	#main-content {	background-color: #F9EDE4;}
	#main-content ul li,
	#main-content p {color: #14171c;}
/* Header */
	/* #main-header { 
		-webkit-box-shadow: none !important;
  		box-shadow: none !important;
	} */
	/* Disable animation of logo and header blurbs */
	header .et-pb-before-scroll-animation,
	header .et-waypoint:not(.et_pb_counters) {opacity: 1 !important;}
	/* Blurbs positionning */
	header .et_pb_main_blurb_image .et_pb_image_wrap {width: 20px;}
	header .et_pb_blurb_position_left .et_pb_blurb_container {padding-left: 0;}
	header .header-float-left {float: left; width: auto;}
	header .header-float-right {float: right; width: auto}
	header .phone_icon {width: auto !important;}
	header .mail_icon {width: auto !important;}
	header .social_icon {padding-right: 10px; padding-bottom: 10px; height: 30px !important;}
	header .social_icon li a {width: 30px !important;}
	header .social_icon li a.icon::before {line-height: 20px !important; width: 30px !important}
	header .account_icon {width: auto}
	header .et_pb_blurb_container {padding-left: 0 !important;}
	/* Top menu */
	header .hide-top-menu {width: auto}
	header .hide-top-menu #menu-top,
	header .hide-top-menu .et_mobile_nav_menu {display: none;} 
	/* Primary menu */
	header .header-menu-col .header_menu {clear: both; z-index: 9}
	/* RESPONSIVE HEADER - Left Logo from Tablet */
	@media (max-width: 980px) {
		header .header-menu-col .header_menu {padding-top: 10px;}
		header .et_pb_row .header-logo-col {
			width: 30% !important;
			margin-right: 20px !important;
		}
		header .et_pb_row .header-logo-col img{height: 120px;}
		header .et_pb_row .header-logo-col .et_pb_image {max-width: 120px;}
		header .et_pb_row .header-menu-col {
			width: 60% !important;
		}
	}
/* Sidebar seperator removal */
	#main-content .container::before {display: none;}
/* BLOG */
	.et_pb_blog_grid .et_pb_image_container {margin: 0}
	.et_pb_blog_grid .et_pb_post {padding: 0}
	/* Blog image aspect ratio landscape 4:3*/
	.et_pb_blog_grid .entry-featured-image-url {
		padding-top: 75%;
		display: block;
	}
	.et_pb_blog_grid .entry-featured-image-url img {
		position: absolute;
		height: 100%;
		width: 100%;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		object-fit: cover;
	}
	/* Recette archives - Read more */
	.dipi-read-more-button {padding: 0.3em 1em}
/* WOOCOMMERCE CUSTOMISATION */
    .woocommerce .cart_totals #shipping_method {text-align: right}
    /* Set the shipping method input to the right also in the Checkout page */
    .woocommerce #shipping_method li {
        display: flex;
        flex-direction: row-reverse;
    }
    .woocommerce ul#shipping_method li input {margin-left: 10px}
	.woocommerce .variations .label {display: none;}
	/* En stock */
	.woocommerce div.product p.stock {color: #49503a}
	/* Rupture de stock - Notification */
		.cwginstock-subscribe-form .panel-primary {
			border-color: #49503A !important;
		}

		.cwginstock-subscribe-form .panel-primary>.panel-heading {
			color: #fff;
			background-color: #49503A !important;
			border-color: #49503A !important;
		}
		/* Submit for notification */
		input.cwgstock_button {
			padding: 0.3em 1em !important;
			border: 3px solid #49503a !important;
			background-color: transparent !important;
			border-radius: 50px !important;
			cursor: pointer !important;
		}
		.et_pb_wc_add_to_cart_0_tb_body input {color: #fff !important; /* inlined somewhere so useless */}
		input.cwgstock_button:hover {
			background-color: #49503a7e !important;
		}
	/* ESPACE MON COMPTE */
		body.woocommerce-account .woocommerce nav ul {list-style-type: none;}
		body.woocommerce-account .woocommerce nav a {padding: 5px 10px;}
		body.woocommerce-account .woocommerce nav .is-active {border-left: 5px solid #49503a;}
		body.woocommerce-account .woocommerce nav .is-active a {font-weight: 700;}
	/* FICHE DU PRODUIT */
		/* Orderby and Variations Select */
		.wp-block-search__input,
		.et_pb_widget .wp-block-search__button,
		.orderby,
		.woocommerce div.product form.cart .variations td select {
			padding: 0.5em !important;
			font-size: 18px !important;
			border: 2px solid #49503a !important;
			color: #49503a !important;
			background-color: #f5f5f5 !important;
		}
		.et_pb_wc_add_to_cart form.cart .variations td.value span::after {display: none !important;}
		/* Quantité */
		.et_pb_wc_add_to_cart .quantity input.qty {
			border: 0px solid #49503a !important;
		  	border-radius: 3px !important;
			background-color: #f5f5f5 !important;
		}
	/* BOUTIQUE */
		p.woocommerce-result-count {font-size: 16px;}
		/* Search Sidebar */ 
		.wp-block-search__input {
			border: 3px solid #49503A !important;
			border-radius: 50px !important;
			padding: 0.3em 1em !important;
			height: 45px !important;
		}
		.et_pb_widget .wp-block-search__button {
			background-color: #49503A !important;
			color: #fff !important;
			border: 3px solid #49503A !important;
			font-size: 14px !important;
			border-radius: 0 50px 50px 0 !important;
			padding: 0.3em 0.5em !important
		}
		.et_pb_widget .wp-block-search__button .search-icon {fill: #fff;}
		/* PRIX */
		.woocommerce ul.products li.product .price, 
		.woocommerce-page ul.products li.product .price {
			font-size: 16px; 
			font-weight: 500; 
			color: #49503A !important;
		}
		/* Alignement des produits */
		.woocommerce ul.products {
			display: flex;
			flex-wrap: wrap;
		}
		.woocommerce ul.products li.product {
			display: flex;
			flex-direction: column;
		}
		.woocommerce ul.products li.product .woocommerce-loop-product__title,
		.woocommerce ul.products li.product .price{
			flex-grow: 1; /* Allows these elements to expand and fill available space */
		}
		.woocommerce ul.products li.product .button {
			margin-top: 15px;
			max-width: fit-content;
		}
	/* PANIER */
		.woocommerce-message a.button.wc-forward {border: solid; color: #fff !important; border-color: #fff !important}
		.woocommerce-message a.button.wc-forward:hover {border: solid; color: #49503a !important; background-color:#fff !important; border-color: #fff !important;}
		.et_pb_wc_cart_products table.shop_table th {padding-top: 0 !important}
		.et_pb_wc_cart_products table.shop_table td.product-remove {padding: 0; width: 36px;}
		.et_pb_wc_cart_products table.shop_table td.product-thumbnail {padding: 0.57em 0px !important;}
		.et_pb_wc_cart_products table.cart img {width: 50px;}
		/* Sous-Total / Total */
		.cart_totals h2 {display: none;}
		.woocommerce-checkout-review-order-table th,
		.cart_totals th {width: 100px; color:#14171c !important; font-weight: 700 !important; font-size: 16px !important;}
		.woocommerce-checkout-review-order-table .cart-subtotal,
		.cart_totals .cart-subtotal {background-color: #ecd9cb !important;}
		.woocommerce-checkout-review-order-table .woocommerce-shipping-totals,
		.cart_totals .woocommerce-shipping-totals {background-color: #ecd9cb !important;}
		.woocommerce-checkout-review-order-table .order-total,
		.cart_totals .order-total {background-color: #ecd9cb !important;}
		/* Modifier Adresse */
		 .et_pb_wc_cart_totals .select2-container .select2-selection--single,
		 .et_pb_wc_checkout_billing .select2-container .select2-selection--single,
		 .et_pb_wc_checkout_shipping .select2-container .select2-selection--single,
		 .woocommerce form .form-row input.input-text {padding: 10px !important; min-height: 30px !important; background-color: #fff !important;color: #14171c !important;}
		 .select2-container .select2-selection--single .select2-selection__rendered {padding: 0 !important; color: #14171c !important;}
		 
/* FORMULAIRE WPCF7 */
	/*  Errors */
	.wpcf7-not-valid-tip {
		color: #111;
		background-color: #fcc;
		padding: 10px;
		border-radius: 0 0 5px 5px;
		font-weight: 500;
		font-size: 18px;
	}
	/* CF Turnstile */
	.cf7-cf-turnstile {margin: 0 !important; line-height: 0}
	/* REQUIRED */
    .wpcf7-form label .required_stars {
        color: var(--wc-red);
        font-size: 22px;
        position: absolute;
        left: -15px;
        top: 6px;
		font-weight: 500;
    }
    /* Two cols */
		.et_pb_contact .et_pb_contact_field_half {
			width: 50%;
			float: left;
		}
		.wpcf7-form div.half {
			width: 49%;
			margin-right: 2%;
			float: left;
			padding-bottom: 1em;
		}
		.wpcf7-form div.half.last {margin-right: 0%;}
		
	.wpcf7-form label {
        color: #14171c !important;
		display: inline;

		font-weight: 400 !important;
		font-size: 18px !important;
        margin-top: 0 !important;
        padding-top: 10px !important;
		padding-bottom: 6px;
        position: relative;
    }
	/* BASE STYLE */
	.et_pb_contact_form {margin-left: -3%;}

	p.et_pb_contact_field.et_pb_contact_field_last+p.et_pb_contact_field.et_pb_contact_field_last,
	p.et_pb_contact_field:not(.et_pb_contact_field_last),
	p.et_pb_contact_field_half+p.et_pb_contact_field_last:not(.et_pb_contact_field_half) {
		clear: both;
	}

	p.et_pb_contact_field {
		padding: 0 0 0 3%;
		margin-bottom: 3%;
		background-position: 50%;
		background-size: cover;
		color: #333;
	}

	.et_pb_contact p input,
	.et_pb_contact p textarea {
		-webkit-appearance: none;
		background-color: #eee;
		width: 100%;
		border-width: 0;
		border-radius: 0;
		color: #333;
		font-size: 16px;
		padding: 16px;
		font-weight: bold;
	}

	.wpcf7 form.invalid .wpcf7-response-output,
	.wpcf7 form.unaccepted .wpcf7-response-output,
	.wpcf7 form.payment-required .wpcf7-response-output {
		color: #fff !important;
	}

	input.text:focus,
	input.title:focus,
	input[type="text"]:focus,
	select:focus,
	textarea:focus {
		border-color: #fff;
		border-bottom-color: rgb(255, 255, 255);
		color: #333;
	}

	input.text,
	input.title,
	input[type="text"],
	select,
	textarea {
		margin: 0;
	}

	input.text,
	input.title,
	input[type="email"],
	input[type="password"],
	input[type="tel"],
	input[type="text"],
	select,
	textarea {
		background-color: #fff;
		border: 1px solid #bbb;
		padding: 2px;
		color: #333;
	}

	.et_pb_contact_field *,
	.et_pb_contact_field.et_pb_section_parallax,
	.et_pb_contact_field.et_pb_section_video {
		position: relative;
	}

	button,
	input,
	select,
	textarea {
		font-family: inherit;
	}

	.et_contact_bottom_container {
		float: right;
		text-align: right;
		margin-top: -1.5%;
		display: -moz-flex;
		display: -ms-flex;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex
	}

	.et_pb_contact_reset,
	.et_pb_contact_submit {
		font-family: inherit;
		display: inline-block;
		margin: 0 0 0 18px;
		cursor: pointer;
	}

	@media (max-width: 767px) {
		.et_pb_column .et_pb_contact p.et_pb_contact_field_half {
			width: 100%;
			margin-right: 0;
		}
	}

	.et_pb_contact p input:-moz-placeholder,
	.et_pb_contact p input::placeholder,
	.et_pb_contact p textarea:-moz-placeholder,
	.et_pb_contact p textarea::placeholder {
		opacity: 1;
	}
	/* INTERNAL STYLE */
		.wpcf7-form .wpcf7-list-item-label {
			text-transform: none;
			letter-spacing: 0px;
			cursor: pointer;
			font-size: 20px;
			padding-left: 4px;
		}
		/* Champs */
		.wpcf7-form p input[type="text"],
		.wpcf7-form p input[type="tel"],
		.wpcf7-form p input[type="email"],
		.wpcf7-form p textarea {
			-webkit-appearance: none;
			width: 100%;
			border-radius: 3px;
			border-color: #49503A;
			padding: 0.5em !important;
			font-size: 18px !important;
			border: 2px solid #49503a !important;
			color: #49503a !important;
			background-color: #f5f5f5 !important;
		}
		.wpcf7-form p textarea {height: 8em;}
		
        /* Focus Hightlight */
        .wpcf7-form p input[type="text"]:focus,
        .wpcf7-form p input[type="tel"]:focus,
        .wpcf7-form p input[type="email"]:focus,
        .wpcf7-form p textarea:focus {
            background-color: #f5f5f5;
			border-color: #14171c;
        }
		/* Checkboxes */
		.wpcf7-form input[type="checkbox"] {
			-webkit-appearance: checkbox;
			accent-color: #49503A;
			transform: scale(1.75);
			cursor: pointer;
		}
		.wpcf7-list-item {
			display: block;
			margin: 0.5em 0 0.5em 1em;
		}
		/* Submit Bouton */
		.wpcf7-form input[type="submit"] {
			background-color: #49503A !important;
			border: 3px solid #49503A !important;
			color: #fff;

			font-size: 20px !important;
			border-radius: 50px !important;
			padding: .3em 1em;
			cursor: pointer;
		}
		.wpcf7-form input[type="submit"]:hover {
			background-color: rgba(73, 80, 58, 0.5) !important;
		}