/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
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: 2.0.0
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
*/

/* Add your custom styles here */

/* Bouton formulaire de contact */
div.wpcf7 .main-form button[type="submit"] {
	background-color: var(--e-global-color-primary);
	border-color: var(--e-global-color-primary);
	color: white;
}

div.wpcf7 .main-form button[type="submit"]:hover {
	background-color: transparent;
	color: var(--e-global-color-primary);
}

/** Livraison 28/07/2026 **/
/** FAQ **/ 
.e-n-accordion-item[open] .e-n-accordion-item-title {
	border-radius: 20px 20px 0 0 !important;
}

/** Rond qui tourne **/
.rotating-text {
    position: absolute;
    width: 200px;
    height: 200px;
	/*
    top: 50%;
    left: 50%;
    transform: translate(50%, -50%);
	*/
		bottom: 90px;
		left: -90px;
    pointer-events: none;
		z-index: 5;
}

.rotating-text svg {
    width: 100%;
    height: 100%;
    animation: rotateCircle 15s linear infinite;
}

.rotating-text text {
		font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;
}

@keyframes rotateCircle {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.conteneur-hero { 
	position: relative;
}

.icones-reseaux-sociaux .elementor-social-icons-wrapper {
	display: flex; 
	flex-direction: column;
	z-index: 2;
	position: absolute;
	left: -30px;
	top: 50%;
	transform: translateY(-50%);
}

.speech-bubble {
	position: relative;
    display: inline-block;
    padding: 15px 20px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0,0,0,.1);
}

.speech-bubble::after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 30px;

    width: 20px;
    height: 20px;
    background: #fff;

    transform: rotate(45deg);
}

.speech-bubble.right-bubble::after {
	left: auto;
  right: 30px;
}


.card {
	min-height: 520px;
}

.card .content-card {
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	transition: max-height 0.4s ease, opacity 0.2s ease;
}

.card.is-featured .content-card {
	opacity: 1;
	max-height: 480px;
}

.card.is-featured {
	gap: 0 !important;
}

.card.is-featured .span-content-card {
	display: none; 
}

.span-content-card {
	max-width: 0;
}

.card:not(.is-featured) .span-content-card .span-card{
	writing-mode: vertical-rl;
  transform: rotate(180deg);
}

@media(max-width: 767px){
	.card {
		min-height: auto;
	}
	
	.card .content-card {
		opacity: 1;
		max-height: none !important;
	}
	
	.card .span-content-card {
		display: none !important;
	}
}

/** Animation icone **/
.icone-animation {
    display: inline-block;
    animation:
        apparition 0.8s ease-out forwards,
        flottement 3s ease-in-out 0.8s infinite;
}

@keyframes apparition {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes flottement {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}

@keyframes zoom {
	0%, 100% {
		transform: scale(1);
	}
	
	50% {
		transform: scale(1.05);
	}
}

.elementor-element-2d94286 {
    animation-duration: 0.8s, 2.8s;
}

.elementor-element-f631266 {
    animation-duration: 0.8s, 3.2s;
}

.elementor-element-05fa6db {
    animation-duration: 0.8s, 3.6s;
}

/** Fond cartes **/

.card:not(.is-featured)::before {
    background-image: none !important;
    --background-overlay: none !important; 
}

.text-highlight {
	color: #8B2635;
	font-style: italic; 
	font-family: Playfair Display;
}

/** Formulaire de contact **/
.wpcf7-form input, .wpcf7-form select, .wpcf7-form textarea {
	border-radius: 20px;
	border-color: var(--e-global-color-primary);
	background-color: #ffffffd6;
}

.wpcf7-form button {
	width: 100%;
	border-radius: 30px;
}

/** Responsive **/ 

@media (max-width:767px){

.speech-bubble{
    position:relative !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
		margin-bottom: 15px !important;
}

.speech-bubble:not(.right-bubble){
    margin-right:0 !important;
    margin-left:auto !important;
}

.speech-bubble.right-bubble{
    margin-left:0 !important;
    margin-right:auto !important;
}
	
	#mon-approche .elementor-widget-image {
		position: relative !important;
		right: 0 !important;
		bottom: 0 !important;
		top: 0 !important;
		left: 0 !important;
	}


}

