/*==========================================
    FOOTER
 ==========================================*/

.footer{
    background:#000000;
    color:#ffffff;
    padding-top:70px;
    margin-top:80px;
}

.footer-container{
    max-width:1400px;
    margin:auto;
    padding:0 20px 60px;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:40px;
}

/*==========================================
    BRAND
 ==========================================*/

.footer-brand{
    grid-column:1/-1;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:40px;
    padding-bottom:40px;
    border-bottom:1px solid rgba(255,255,255,.12);
}

.footer-logo h3{
    font-family:'Playfair Display',serif;
    font-size:34px;
    font-weight:700;
    color:#ffffff;
}

.footer-tagline{
    color:#FF8000;
    text-transform:uppercase;
    letter-spacing:2px;
    font-size:13px;
    margin-bottom:18px;
}

.footer-description{
    color:rgba(255,255,255,.80);
    line-height:1.9;
    font-size:15px;
}
/*==========================================
    SECTIONS DU FOOTER
 ==========================================*/

.footer-section{
    display:flex;
    flex-direction:column;
}

.footer-title{
    color:#ffffff;
    font-size:20px;
    font-weight:700;
    margin-bottom:22px;
    position:relative;
    padding-bottom:12px;
    font-family:'Playfair Display',serif;
}

.footer-title::after{
    content:'';
    position:absolute;
    left:0;
    bottom:0;
    width:45px;
    height:3px;
    background:#FF8000;
    border-radius:20px;
}

.footer-links{
    list-style:none;
    display:flex;
    flex-direction:column;
    gap:14px;
}

.footer-link{
    color:#d8d8d8;
    text-decoration:none;
    transition:.3s;
    font-size:15px;
}

.footer-link:hover{
    color:#FF8000;
    padding-left:8px;
}
/*==========================================
    NEWSLETTER
 ==========================================*/

.footer-newsletter{
    background:#000000;
    border-top:1px solid rgba(255,255,255,.10);
    border-bottom:1px solid rgba(255,255,255,.10);
    padding:60px 20px;
    margin:60px 0;
}

.newsletter-content{
    max-width:650px;
    margin:auto;
    text-align:center;
}

.newsletter-content h3{
    color:#ffffff;
    font-size:30px;
    margin-bottom:15px;
    font-family:'Playfair Display',serif;
}

.newsletter-content p{
    color:#bbbbbb;
    line-height:1.8;
    margin-bottom:25px;
}

.newsletter-form{
    display:flex;
    justify-content:center;
    gap:12px;
    flex-wrap:wrap;
}

.newsletter-form input{
    flex:1;
    min-width:260px;
    padding:15px;
    background:#111111;
    color:#ffffff;
    border:1px solid #333333;
    border-radius:8px;
}

.newsletter-form input:focus{
    outline:none;
    border-color:#FF8000;
}

.newsletter-form input::placeholder{
    color:#888888;
}

.newsletter-btn{
    padding:15px 35px;
    background:#FF8000;
    color:#ffffff;
    border:none;
    border-radius:8px;
    font-weight:700;
    cursor:pointer;
    transition:.3s;
}

.newsletter-btn:hover{
    background:#e67300;
    transform:translateY(-3px);
}
/*==========================================
    CONTACT
 ==========================================*/

.footer-contact{
    grid-column:1/-1;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:30px;
    margin-top:50px;
    padding-top:40px;
    border-top:1px solid rgba(255,255,255,.10);
}

.contact-item{
    display:flex;
    align-items:flex-start;
    gap:16px;
}

.contact-icon{
    width:50px;
    height:50px;
    border-radius:50%;
    background:#111111;
    color:#FF8000;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
}

.contact-label{
    color:#FF8000;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:6px;
}

.contact-value{
    color:#ffffff;
    line-height:1.8;
    font-size:15px;
}

.contact-value a{
    color:#ffffff;
    text-decoration:none;
}

.contact-value a:hover{
    color:#FF8000;
}
/*==========================================
    FOOTER BOTTOM
 ==========================================*/

.footer-bottom{
    background:#000000;
    border-top:1px solid rgba(255,255,255,.10);
    padding:25px 20px;
}

.footer-bottom-content{
    max-width:1400px;
    margin:auto;
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:20px;
}

.footer-copyright{
    color:#999999;
    font-size:14px;
    letter-spacing:.3px;
}

.footer-bottom-links{
    display:flex;
    align-items:center;
    gap:18px;
    flex-wrap:wrap;
}

.footer-bottom-link{
    color:#999999;
    text-decoration:none;
    transition:.3s;
    font-size:14px;
}

.footer-bottom-link:hover{
    color:#FF8000;
}

.separator{
    color:#444444;
}
/*==========================================
    RESEAUX SOCIAUX PREMIUM
 ==========================================*/

.footer-social{
    display:flex;
    gap:18px;
    margin-top:25px;
}

.social-link{
    width:50px;
    height:50px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    color:#ffffff;
    background:#111111;
    border:1px solid #2a2a2a;
    border-radius:50%;
    transition:all .35s ease;
    font-size:20px;
}

.social-link:hover{
    transform:translateY(-6px) scale(1.08);
    box-shadow:0 12px 25px rgba(255,128,0,.35);
}
/* Facebook */
.social-link.facebook:hover{
    background:#1877F2;
    border-color:#1877F2;
    color:#ffffff;
}

/* Instagram */
.social-link.instagram:hover{
    background:linear-gradient(45deg,#F58529,#DD2A7B,#8134AF,#515BD4);
    border:none;
    color:#ffffff;
}

/* LinkedIn */
.social-link.linkedin:hover{
    background:#0A66C2;
    border-color:#0A66C2;
    color:#ffffff;
}

/* WhatsApp */
.social-link.whatsapp:hover{
    background:#25D366;
    border-color:#25D366;
    color:#ffffff;
}

/* YouTube */
.social-link.youtube:hover{
    background:#FF0000;
    border-color:#FF0000;
    color:#ffffff;
}

/* TikTok */
.social-link.tiktok:hover{
    background:#000000;
    border-color:#ffffff;
    color:#ffffff;
}
/* ================= CONTACT BOX ================= */

.footer-contact-box {
    width: 100%;
}


.contact-card {

    background: rgba(255,255,255,0.05);

    border: 1px solid rgba(185,150,70,0.35);

    border-radius: 18px;

    padding: 25px;

    min-width: 260px;

    box-shadow: 0 10px 30px rgba(0,0,0,0.15);

    backdrop-filter: blur(8px);

}



.contact-item {

    display: flex;

    align-items: center;

    gap: 15px;

    padding: 15px 0;

    border-bottom: 1px solid rgba(255,255,255,0.1);

}



.contact-item:last-child {

    border-bottom: none;

}



.contact-icon {

    width: 42px;

    height: 42px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#B99646;

    color:#111;

    border-radius:50%;

    font-size:20px;

}



.contact-item small {

    display:block;

    color:rgba(255,255,255,0.5);

    font-size:11px;

    text-transform:uppercase;

    letter-spacing:1px;

    margin-bottom:4px;

}



.contact-item a {

    color:white;

    font-size:14px;

    font-weight:600;

    text-decoration:none;

}



.contact-item a:hover {

    color:#B99646;

}
