.elementor-6 .elementor-element.elementor-element-4cc09c6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-7e4505b *//* =====================================================
FOOTER PREMIUM
===================================================== */

.gfr-footer{
position:relative;
background:#050505;
color:#d8d8d8;
padding:90px 0 30px;
overflow:visible;
}

/* ligne dorée */

.gfr-footer:before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:2px;
background:linear-gradient(90deg,transparent,#E9CF7E,#A68B49,#E9CF7E,transparent);
}

/* blueprint */

.gfr-footer-blueprint{
position:absolute;
inset:0;
background-image:
linear-gradient(rgba(255,255,255,0.02) 1px,transparent 1px),
linear-gradient(90deg,rgba(255,255,255,0.02) 1px,transparent 1px);
background-size:80px 80px;
opacity:.2;
pointer-events:none;
}

/* container */

.gfr-footer-container{
max-width:1200px;
margin:auto;
padding:0 20px;
position:relative;
z-index:2;
}

/* grid */

.gfr-footer-grid{
display:grid;
grid-template-columns:2fr 1fr 1fr 1fr;
gap:40px;
}

/* titres */

.gfr-footer h3{
color:#E9CF7E;
font-size:20px;
margin-bottom:12px;
}

.gfr-footer h4{
color:#E9CF7E;
font-size:16px;
margin-bottom:12px;
}

/* ligne */

.gfr-footer-line{
width:120px;
height:2px;
background:linear-gradient(90deg,#E9CF7E,#A68B49,transparent);
margin-bottom:20px;
}

/* texte */

.gfr-footer-about p{
line-height:1.9;
font-size:15px;
max-width:420px;
}

/* liens */

.gfr-footer-col ul{
list-style:none;
padding:0;
margin:0;
}

.gfr-footer-col li{
margin-bottom:14px;
}

.gfr-footer-col a{
color:#d7d7d7;
text-decoration:none;
transition:all .3s;
}

.gfr-footer-col a:hover{
color:#E9CF7E;
padding-left:6px;
}

/* socials */

.gfr-footer-socials{
display:flex;
gap:12px;
margin-top:25px;
}

.gfr-footer-socials a{
width:42px;
height:42px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#111;
color:#E9CF7E;
border:1px solid rgba(233,207,126,0.2);
text-decoration:none;
transition:all .3s;
}

.gfr-footer-socials a:hover{
background:#E9CF7E;
color:#000;
box-shadow:0 0 15px rgba(233,207,126,.5);
}

/* contact */

.gfr-contact-item{
display:flex;
gap:10px;
margin-bottom:14px;
}

/* bottom */

.gfr-footer-bottom{
margin-top:60px;
padding-top:20px;
border-top:1px solid #111;
text-align:center;
font-size:13px;
color:#888;
}

/* =====================================================
WHATSAPP
===================================================== */


.gfr-wa-icon{
width:28px;
height:28px;
display:block;
}
.gfr-wa-wrap{
position:fixed;
right:20px;
bottom:20px;
display:flex;
align-items:flex-end;
gap:12px;
z-index:999999;
}

/* bulle */

.gfr-wa-card{
width:240px;
background:white;
padding:18px;
border-radius:16px;
box-shadow:0 15px 40px rgba(0,0,0,.2);
position:relative;
animation:waAppear .4s ease;
}

/* flèche */

.gfr-wa-card:after{
content:"";
position:absolute;
right:-8px;
bottom:25px;
width:16px;
height:16px;
background:white;
transform:rotate(45deg);
}

/* header */

.gfr-wa-card-head{
display:flex;
justify-content:space-between;
margin-bottom:8px;
font-weight:600;
color:#333;
}

.gfr-wa-close{

width:28px;
height:28px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
border:none;
background:#f2f2f2;
font-size:16px;
cursor:pointer;
color:#666;
transition:all .3s;

}

.gfr-wa-close:hover{

background:#e5e5e5;
color:#000;

}

/* status */

.gfr-wa-status{
display:flex;
align-items:center;
gap:6px;
margin-bottom:10px;
}

.gfr-wa-status-dot{
width:8px;
height:8px;
background:#25D366;
border-radius:50%;
animation:pulse 1.5s infinite;
}

.gfr-wa-status-text{
color:#25D366;
font-weight:600;
font-size:14px;
}

/* texte */

.gfr-wa-text{
font-size:14px;
color:#666;
line-height:1.5;
}

/* bouton */

.gfr-wa-button{
width:60px;
height:60px;
border-radius:50%;
background:#25D366;
display:flex;
align-items:center;
justify-content:center;
box-shadow:
0 10px 25px rgba(0,0,0,.3),
0 0 25px rgba(37,211,102,.4);
animation:whatsPulse 2s infinite;
cursor:pointer;
}

/* icone */

.gfr-wa-icon{
width:26px;
height:26px;
}

/* animations */

@keyframes pulse{
0%{opacity:1}
50%{opacity:.4}
100%{opacity:1}
}

@keyframes whatsPulse{
0%{transform:scale(1)}
50%{transform:scale(1.1)}
100%{transform:scale(1)}
}

@keyframes waAppear{
from{
opacity:0;
transform:translateY(20px);
}
to{
opacity:1;
transform:translateY(0);
}
}

/* =====================================================
RESPONSIVE
===================================================== */

@media (max-width:900px){

.gfr-footer-grid{
grid-template-columns:1fr 1fr;
gap:40px;
}

}

@media (max-width:768px){

.gfr-footer{
padding:70px 0 25px;
}

.gfr-footer-grid{
grid-template-columns:1fr;
}

.gfr-footer-about p{
max-width:100%;
}

/* WhatsApp */

.gfr-wa-wrap{
right:15px;
bottom:15px;
}

.gfr-wa-card{
width:200px;
padding:15px;
font-size:13px;
}

.gfr-wa-button{
width:55px;
height:55px;
}

}/* End custom CSS */