/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* PAGES */
body {
            opacity: 0;
            animation: fadeIn 1.5s forwards;
        }
        @keyframes fadeIn {
            to {
                opacity: 1;
            }
        }

.fleche_retour_haut:hover .elementor-icon {
    color: #fff!important;
}



/*  CADRES */

/*bordure lotus*/

.ma-bordure-image {
	border-style: solid;
	border-width: 50px;
	border-image-source: url(https://dev.frena.krysaweb.com/wp-content/uploads/2025/11/border3-02-scaled.png);
	border-image-slice: 142 142 142 142; /* haut | droit | bas | gauche */
    border-image-width: 50px;
}

.ma-bordure-image.animated {
		border-image-width: 0px;
		opacity: 0;
            animation: bordIn 0.5s forwards;
			animation-delay: 0.5s;
        }
        @keyframes bordIn {
            to {
                border-image-width: 50px;
				opacity: 1;
            }
        }

@media only screen and (max-width : 600px) {
	
	.ma-bordure-image {
	border-width: 22px;
	border-image-width: 33px;
	border-image-slice: 50 50 50 50;
}
	.mob_bordure_blanc {
		border-image-source: url(https://dev.frena.krysaweb.com/wp-content/uploads/2025/12/cadre_mob_blanc_2.png);
	}
	.mob_bordure_vert {
		border-image-source: url(https://dev.frena.krysaweb.com/wp-content/uploads/2025/12/cadre_mob_bleu_2.png);
	}
}


@media only screen and (max-device-width : 900px) {
.bloc_verrerie {
	position: relative!important;
	width: 90%;
}
}



/* BOUTONS */
.btn_effet a {
	position: relative;
}
.btn_effet a:before {
	content: "";
	position: absolute;
	top: -15px;
	left: -15px;
	transition-duration: 0.3s;
	transition-timing-function: ease;
	width: calc(100% + 30px);
	height: calc(100% + 30px);
	border: 1px solid var( --e-global-color-primary );
	opacity:0
}

.btn_effet a {
	padding: 10px 65px 10px 40px!important;
}
.fr_form button {
	padding: 12px 65px 12px 40px!important;
}

.btn_effet a:hover:before {
	content: "";
	position: absolute;
	top: -10px;
	left: -10px;
	transition-duration: 0.3s;
	width: calc(100% + 20px);
	height: calc(100% + 20px);
	opacity: 1;
}

.btn_effet a > span > span:before, .fr_form button span > span:before {
	border-bottom: 2px solid currentColor;
    content: '';
    right: 25px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 25px;
	transition-duration: 0.3s;
}

.btn_effet a > span > span:after, .fr_form button span > span:after {
	border-right: 2px solid currentColor;
    border-top: 2px solid currentColor;
    content: '';
    display: block;
    height: 10px;
    position: absolute;
    right: 25px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 10px;
	transition-duration: 0.3s;
}

.btn_effet a:hover > span > span:before, .fr_form button:hover span > span:before {
	width: 32px;
	right: 18px;
}
.btn_effet a:hover > span > span:after, .fr_form button:hover span > span:after {
	right: 18px;
}


/* boutons formulaires */
.btn_effet a {
	position: relative;
}
.elementor-widget-form .elementor-button:before {
	content: "";
	position: absolute;
	top: -15px;
	left: -15px;
	transition-duration: 0.3s;
	transition-timing-function: ease;
	width: calc(100% + 30px);
	height: calc(100% + 30px);
	border: 1px solid var( --e-global-color-primary );
	opacity:0
}

.elementor-widget-form .elementor-button:hover:before {
    content: "";
    position: absolute;
    top: -10px;
    left: 0px;
    transition-duration: 0.3s;
	width: 100%;
/*     height: 100%; */
/*     width: calc(100% + 20px); */
    height: calc(100% + 20px);
    opacity: 1;
}

.elementor-widget-form .elementor-button span > span {
	position: relative;
}

.elementor-widget-form .elementor-button span > span:before {
    border-bottom: 2px solid currentColor;
    content: '';
    right: -35px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 25px;
    transition-duration: 0.3s;
}

.elementor-widget-form .elementor-button span > span:after {
    border-right: 2px solid currentColor;
    border-top: 2px solid currentColor;
    content: '';
    display: block;
    height: 10px;
    position: absolute;
    right: -35px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 10px;
    transition-duration: 0.3s;
}

.elementor-widget-form .elementor-button:hover span > span::before {
    width: 32px;
    right: -42px;
}

.elementor-widget-form .elementor-button:hover span > span:after {
    right: -40px;
}

/*ACCUEIL*/


.home .titre_pages, .error404 .titre_pages {
    display: none;
}
p ul {
    margin-bottom: 10px;
}

/*MENU*/

.btn_spe a {
    border: 1px solid var( --e-global-color-primary );
    padding: 5px 15px 5px 15px;
    color: var( --e-global-color-primary )!important;
}
.btn_spe a:hover {
    border: 1px solid var( --e-global-color-primary );
    padding: 5px 15px 5px 15px;
    color: var( --e-global-color-7bfc8f5 )!important;
    background-color: var( --e-global-color-primary );
}


.main_menu .menu-item a {
	font-size: 16px!important;
}
.main_menu .sub-menu .menu-item a:hover, .main_menu .sub-menu .menu-item a:active {
	color: #fff!important;
}
.main_menu .elementor-nav-menu--dropdown {
    background-color: var( --e-global-color-7bfc8f5 )!important;
}

.main_menu .elementor-nav-menu--dropdown ul li {
    display: flex;
}

.main_menu .elementor-nav-menu--dropdown a {
    color: var(--e-global-color-text)!important;
    margin: auto;
}

@media only screen and (max-device-width : 600px) {
.main_menu .elementor-nav-menu--dropdown .btn_spe a {
    padding: 10px 45px!important;
    margin: 14px auto;
}
.main_menu .elementor-nav-menu--dropdown ul li {
    display: block;
}
	.main_menu .elementor-nav-menu--dropdown ul li .elementor-item-active, .main_menu .elementor-nav-menu--dropdown ul li .elementor-item.highlighted {
		color: #fff!important;
	}
.main_menu .elementor-nav-menu--dropdown {
		top: 39px!important;
		box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.11);
	}
}

.select_produits > .elementor-widget-container > .elementor-loop-container {
	padding: 5px;
}

/* Effet menu hover */
.main_menu nav > ul > .menu-item a {
	z-index: 2;
}

.main_menu nav > ul > .menu-item {
	position: relative;
}
.main_menu nav > ul > .menu-item::before,
.main_menu nav > ul > .menu-item::after {
  width: 00%; height: 0%;
  transition: 0.35s;
}
.main_menu nav > ul > .menu-item::before {
  top: 0; left: 0;
  border-left: 1px solid #fff;
  border-top: 1px solid #fff;
	width: 0%;
    height: 0%;
    transition: 0.35s;
	position: absolute;
    content: "";
}
.main_menu nav > ul > .menu-item::after {
  bottom: 0; right: 0;
  border-right: 1px solid #fff!important;
  border-bottom: 1px solid #fff!important;
	border-left: none!important;
	width: 0%;
    height: 0%!important;
    transition: 0.35s;
	position: absolute;
    content: ""!important;
}
.main_menu nav > ul > .menu-item:hover::before,
.main_menu nav > ul > .menu-item:hover::after {
  width: 99%;
  height: 98%!important;
}

.main_menu nav > ul > .menu-item:hover::before {
	border-left: 1px solid var( --e-global-color-primary );
  border-top: 1px solid var( --e-global-color-primary );
}
.main_menu nav > ul > .menu-item:hover::after {
  border-right: 1px solid var( --e-global-color-primary )!important;
  border-bottom: 1px solid var( --e-global-color-primary )!important;
}



/* CHAMP RECHERCHE */
.champ_recherche {
	position: relative;
}

.champ_recherche > .elementor-widget-container {
	position: relative;
	z-index: 2;
}

.champ_recherche:hover > .elementor-widget-container svg path {
	stroke: var( --e-global-color-primary );
}

.champ_recherche::before {
  top: -1px; left: -1px;
  border-left: 1px solid #fff;
  border-top: 1px solid #fff;
	width: 0%;
    height: 0%;
    transition: 0.35s;
	position: absolute;
    content: "";
}
.champ_recherche::after {
  bottom: -1px; right: -1px;
  border-right: 1px solid #fff!important;
  border-bottom: 1px solid #fff!important;
	border-left: none!important;
	width: 0%;
    height: 0%!important;
    transition: 0.35s;
	position: absolute;
    content: ""!important;
}
.champ_recherche:hover::before,
.champ_recherche:hover::after {
  width: 101%;
  height: 102%!important;
}

.champ_recherche:hover::before {
	border-left: 1px solid var( --e-global-color-primary );
  border-top: 1px solid var( --e-global-color-primary );
}
.champ_recherche:hover::after {
  border-right: 1px solid var( --e-global-color-primary )!important;
  border-bottom: 1px solid var( --e-global-color-primary )!important;
}


/* ARTICLES */
.article_cont {
	transition-duration: 0.3s;
}
.article_cont:after {
	content: "";
    width: 100%;
    height: 100%;
	left: 0px;
    top: 0px;
    border: 1px solid var(--e-global-color-primary);
    margin: auto;
    position: absolute;
    z-index: 2;
	opacity: 0;
	transition-duration: 0.3s;
	transition: 0.3s;
}
.article_cont:hover:after {
	width: calc(100% - 20px);
    height: calc(100% - 20px);
	left: 10px;
    top: 10px;
	opacity: 1;
	transition-duration: 0.3s;
	z-index: 6;
}


/* PAGES CATEGORIES PRODUITS */
.category_titre:after {
	content: "";
	width: 30px;
	height: 1px;
	position: absolute;
	bottom: -5px;
	left: 0px;
		border-bottom: 1px solid var(--e-global-color-primary);
}
.produit_cont {
	transition-duration: 0.3s;
}
.produit_cont:after {
	content: "";
    width: 100%;
    height: 100%;
	left: 0px;
    top: 0px;
    border: 1px solid var(--e-global-color-primary);
    margin: auto;
    position: absolute;
    z-index: 2;
	opacity: 0;
	transition-duration: 0.3s;
	transition: 0.3s;
}
.produit_cont:hover:after {
	width: calc(100% - 20px);
    height: calc(100% - 20px);
	left: 10px;
    top: 10px;
	opacity: 1;
	transition-duration: 0.3s;
	z-index: 6;
}
.article_cont .article_extrait p {
	color: #000!important;
}
.produit_cont .produit_btn, .article_cont .article_btn {
	opacity: 0;
	transition: 0.3s;
	width: calc(100% + 20px);
    left: -10px;
    bottom: -10px;
}
.produit_cont:hover .produit_btn, .article_cont:hover .article_btn {
width: 100%;
    left: 0px;
    bottom: 0px;
	opacity: 1;
}
.titre_gen {
	padding: 20px;
	border-style: solid;
    border-width: 20px;
    border-image-source: url(/wp-content/uploads/2025/11/cadre_titre_general.svg);
    border-image-slice: 30 30 30 30;
    border-image-width: 50px;
}
.liste_cat_produits .widget_product_categories li {
	padding-left: 10px;
}
.liste_cat_produits .widget_product_categories li::marker {
	color: var( --e-global-color-primary );
	font-size: 16px;
	margin-left: 10px;
}
.liste_cat_produits .widget_product_categories li a {
	color: #000;
}
.liste_cat_produits .widget_product_categories li:hover a {
	color: var( --e-global-color-primary );
}
.liste_cat_produits .widget_product_categories li.cat-parent a {
	color: #000;
}
.liste_cat_produits .widget_product_categories > ul {
	font-size: 20px;
	margin-bottom: 15px;
	position: relative;
	list-style-type: none;
    font-family: "Font Awesome 5 Free";
	padding-inline-start: 0px;
}
.liste_cat_produits .widget_product_categories > ul > li {
	font-size: 20px;
	margin-bottom: 15px;
	position: relative;
}
.liste_cat_produits .widget_product_categories >ul > li > ul {
	margin-top: 12px;
	list-style-type: "\f054";
    font-family: "Font Awesome 5 Free";
}
.liste_cat_produits .widget_product_categories >ul > li > ul > li {
	font-size: 18px;
	margin-bottom: 5px;
}
.liste_cat_produits .widget_product_categories > ul > li:before {
	content: "";
	width: 45px;
	position: absolute;
	border-bottom: 1px solid var( --e-global-color-primary );
	margin-bottom: 10px;
	top: 25px;
}

/* Filtres */

.liste_categories .elementor-widget-container, .liste_couleurs .elementor-widget-container {
	margin: 15px 0px 25px 0px!important;
}
.liste_categories:before {
    content: "Catégories";
    font-family: var( --e-global-typography-27004c8-font-family ), Sans-serif;
    font-size: var( --e-global-typography-27004c8-font-size );
}

.liste_couleurs:before {
    content: "Couleurs";
    font-family: var( --e-global-typography-27004c8-font-family ), Sans-serif;
    font-size: var( --e-global-typography-27004c8-font-size );
    line-height: 2.2em;
}
.liste_categories:after, .liste_couleurs:after {
    content: "";
    width: 30px;
    height: 1px;
    position: absolute;
    left: 0px;
    border-bottom: 1px solid var(--e-global-color-primary);
    
}
.liste_categories:after {
	top: 25px;
}
.liste_couleurs:after {
	top: 40px;
}


.filtre_cat_mob .jet-filter-items-dropdown__body {
    width: 100vw;
    left: -5px;
    transform: translateX(-50%);
    padding: 15px;
}

.filtre_cat_mob .jet-checkboxes-list__label {
    font-size: 16px!important;
}

/* PAGE PRODUIT */
.single-product .flex-control-nav.flex-control-thumbs {
	display: flex!important;
}
.single-product .woocommerce-variation-add-to-cart {
	display: block!important;
}
.single-product .vts-variation-thumbs-gallery .vts-variation-thumb-wrapper {
	position: relative!important;
	transition-duration: 0.3s;
}
.single-product .vts-variation-thumbs-gallery .vts-variation-thumb-wrapper:after {
	content: "";
	width: 100%;
	height: 100%;
	border-bottom: 4px solid var( --e-global-color-primary )!important;
	position: absolute;
	opacity:0;
	top: 0;
/* 	background-color: #0000002b; */
}
.single-product .vts-variation-thumbs-gallery .vts-variation-thumb-wrapper:hover:after,  .single-product .vts-variation-thumbs-gallery .vts-variation-thumb-wrapper.vts-active-variation:after {
	opacity:1;

}
.single-product .woocommerce-product-attributes {
	width: auto!important;
	border: none!important;
	margin-top: 5px;
	margin-bottom: 5px;
}
.single-product .woocommerce-product-attributes .woocommerce-product-attributes-item__label {
	border: none;
	padding: 0;
	width: auto;
	background-color: #ffffff00!important;
	text-align: left!important;
}
.single-product .woocommerce-product-attributes .woocommerce-product-attributes-item__label:after {
	content: ":";
	margin-left: 5px;
	margin-right: 5px;
}
.single-product .woocommerce-product-attributes .woocommerce-product-attributes-item__value, .single-product .woocommerce-product-attributes .woocommerce-product-attributes-item__value p {
	border: none;
	padding: 0;
	background-color: #ffffff00!important;
}

.img_produit .woocommerce-product-gallery .flex-control-nav {
	margin-top: 20px!important;
	gap: 10px;
}
.img_produit .woocommerce-product-gallery .flex-control-nav li {
	border: none!important;
	position: relative;
}
.img_produit .woocommerce-product-gallery .flex-control-nav li:after {
	content: "";
	width: 100%;
	height: 4px;
	margin-bottom: 4px solid var( --e-global-color-primary );
	opacity: 0;
	position: absolute;
	bottom: 0;
    background-color: var(--e-global-color-primary);
    transition-duration: 0.3s;
}
.img_produit .woocommerce-product-gallery .flex-control-nav li:hover:after {
	opacity: 1;
}
.img_produit .woocommerce-product-gallery .flex-control-nav li img {
	border: none!important;
}

.woocommerce div.product .produit_desc .woocommerce-tabs ul.tabs li {
	background: #ffffff00;
	border: none;
	background-color: #ffffff00;
	border-radius: 0;
}
.woocommerce div.product .produit_desc .woocommerce-tabs ul.tabs li.active {
	border-bottom: 3px solid var( --e-global-color-primary );
}
.woocommerce div.product .produit_desc .woocommerce-tabs ul.tabs li.active, .woocommerce div.product .produit_desc .woocommerce-tabs ul.tabs li.active a {
	color: var( --e-global-color-primary );
}

.btn_ajout_panier button:after {
	content:"";
	-webkit-mask: url("https://dev.frena.krysaweb.com/wp-content/uploads/2025/11/icon_ajout_panier.svg") no-repeat 50% 50%;
	mask: url("https://dev.frena.krysaweb.com/wp-content/uploads/2025/11/icon_ajout_panier.svg") no-repeat 50% 50%;
	width: 12px;
	height: 18px;
    position: absolute;
    top: calc(50% - 9px);
    left: calc(50% + 80px);
    background-color: var( --e-global-color-primary );
}
.btn_ajout_panier button:hover:after {
	background-color: #fff;
}

.btn_ajout_panier .ppcp-messages, .btn_ajout_panier .ppc-button-wrapper {
    display: none!important;
}

/* PAGE PANIER */
.bloc_panier button {
    border: 1px solid var(--e-global-color-primary)!important;
    border-radius: 0!important;
}
.bloc_panier .ppc-button-wrapper {
    margin-top: 20px;
}

/* PAGE CONTACT */
/* .contact_formulaire .elementor-field-group {
	position: relative;
}

.contact_formulaire .elementor-field-group > .elementor-widget-container {
	position: relative;
	z-index: 2;
}

.contact_formulaire .elementor-field-group:hover > .elementor-widget-container svg path {
	stroke: var( --e-global-color-primary );
}

.contact_formulaire .elementor-field-group::before {
  top: 0px; left: 8px;
  border-left: 1px solid #fff;
  border-top: 1px solid #fff;
	width: 0%;
    height: 0%;
    transition: 0.35s;
	position: absolute;
    content: "";
}
.contact_formulaire .elementor-field-group::after {
  bottom: 0px; right: 8px;
  border-right: 1px solid #fff!important;
  border-bottom: 1px solid #fff!important;
	border-left: none!important;
	width: 0%;
    height: 0%!important;
    transition: 0.35s;
	position: absolute;
    content: ""!important;
}
.contact_formulaire .elementor-field-group:hover .elementor-field {
	color: var( --e-global-color-primary )!important;
}
.contact_formulaire .elementor-field-group:hover::before,
.contact_formulaire .elementor-field-group:hover::after {
  width: calc(100% - 17px);
  height: 100%!important;
}

.contact_formulaire .elementor-field-group:hover::before {
	border-left: 1px solid var( --e-global-color-primary );
  border-top: 1px solid var( --e-global-color-primary );
}
.contact_formulaire .elementor-field-group:hover::after {
  border-right: 1px solid var( --e-global-color-primary )!important;
  border-bottom: 1px solid var( --e-global-color-primary )!important;
} */