body {
    margin: 0;
    font-family: 'Poppins', sans-serif;
    background-color: #fff;
    color: #333;
    padding: 0;
    margin: 0;
    /* box-sizing: border-box;*/

    background-image: url('assets/img/motif-plan.png');
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: 70%;

}

/* Général */
/* Style du header par défaut */
header {
    position:sticky;
    top: 0;
    width: 100%;
    height: 13vh;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: backdrop-filter 0.3s ease, background-color 0.3s ease;
}

/* Quand on scrolle -> classe active */
header.scrolled {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    /* effet flou */
    background-color: rgba(255, 255, 255, 0.2);
    /* léger fond transparent */
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    /* optionnel */
}


.header-content {
    width:100%;
    display: flex;
    align-items: center;
    justify-content: space-around;
}

.logo {
    width: 140px;
    height: auto;
}

.nav-links {
    display: flex;
    list-style: none;
    gap: 30px;
    transition: all 0.3s ease;
}

.nav-links li a.active {
    color: #FF6A00;
    font-weight: 600;
}

.nav-links li a {
    text-decoration: none;
    color: #222;
    font-size: 1.2rem;
    font-weight: 500;
    transition: color 0.3s;
}

.nav-links li a:hover {
    color: #FF6A00;
}



/* Dropdown Styles */
.dropdown {
    position: relative;
    gap: 0;
    left: 1rem;
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    background-color: rgb(255, 111, 0);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    padding: 0.5rem 0;
    min-width: 200px;
    opacity: 0;
    visibility: hidden;
    list-style: none;
    transform: translateY(10px);
    transition: all 0.3s ease;
    z-index: 1001;
}

.dropdown:hover .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.dropdown-menu li {
    padding: 0.5rem 1rem;
    margin: 0 0.5rem;
}

.dropdown-menu li a {
    color: #fff;
    padding: 0.5rem 0;
    white-space: nowrap;
}

.dropdown-menu li:hover {
    background-color: #08015e;
    border-radius: 1.5rem;
}

.dropdown-menu li a:hover {
    color: #fff;
}

.dropdown-icon {
    transition: transform 0.3s ease;
    font-size: 0.7rem !important;
    margin-left: 0.3rem;
}

.dropdown:hover .dropdown-icon {
    transform: rotate(180deg);
}


.btn-orange-desktop-btn {
    background-color: #FF840B;
    color: #fff;
    padding: 10px 20px;
    border-radius: 25px;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
    transition: background 0.3s;
}

.btn-orange-desktop-btn:hover {
    background-color: #e56d00;
}

/* Cacher le bouton mobile en desktop */
.btn-mobile {
    display: none;
}

.btn-orange00 {
    display: inline-block;
    padding: 12px 24px;
    background-color: #ff6a00;
    color: #fff;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 500;
    transition: background 0.3s;
}

.btn-orange00:hover {
    background-color: #e85a00;
}

/* Menu toggle (hamburger) */
.menu-toggle {

    width: 30px;
    height: 25px;
    display: none;
    flex-direction: column;
    justify-content: space-between;
    cursor: pointer;
    z-index: 1100;
}

.menu-toggle span {
    display: block;
    height: 3px;
    background-color: #333;
    border-radius: 3px;
    transition: all 0.3s ease;
}

/* Animation croix */
.menu-toggle.active span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}

.menu-toggle.active span:nth-child(2) {
    opacity: 0;
}

.menu-toggle.active span:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -6px);
}



/* HERO */
.hero {
    background-color: #f9f9f900;
    text-align: center;
    z-index: 1;
    height: 86vh;
}

.hero-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: url("assets/img/Logotype-ikeraa1.png") center/cover no-repeat;
    flex-wrap: wrap;
    gap: 20px;
}

.blur-bg {
    position: absolute;
    /* important : toujours visible derrière */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;


    background: rgba(255, 255, 255, 0.463);
    /* gris transparent */
    -webkit-backdrop-filter: blur(30px);

    clip-path: polygon(0 0, 100% 0, 100% 75%, 0 100%);

    backdrop-filter: blur(70px)
}

.hero-text {
    position: relative;
    flex: 1;
    text-align: left;
    width: 730px;
    height: 160px;
    bottom: 9rem;
    left: 11rem;
    gap: 32px;
}

.hero-text h1 {
    font-size: 3.8rem;
    margin-bottom: 10px;
}

.hero-text p {
    font-size: 1.1rem;
    color: #555;
}

.hero-img {
    flex: 1;
    text-align: center;
    z-index: 1;
    position: relative;
    /* Ajout important pour positionner l’image par-dessus l’iPhone */
    width: 220px;
    /* fixe la taille exacte du conteneur */
    height: 450px;
    margin: auto;
    top: 3rem;
}

.hero-img023 {
    flex: 1;
    text-align: center;
    z-index: 1;
    position: relative;
    /* Ajout important pour positionner l’image par-dessus l’iPhone */
    width: 250px;
    /* fixe la taille exacte du conteneur */
    height: 500px;
    margin: auto;
    bottom: 3rem;
}

.hero-img .hero-image2 {
    position: absolute;
    right: 37%;
    width: 230px;
    height: 540px;
    top: 0.8rem;
    object-fit: cover;
    border-radius: 18px;
    z-index: 2;
    box-shadow: 0 8px 12px 20px rgba(0, 0, 0, 0.414);
}


.hero-img img {
    width: 250px;
    height: 500px;
    display: block;
}

.hero-img023 img {
    width: 530px;
    height: 670px;
    display: block;
    top: 0;
    bottom: 0;
    left: 8rem;
}

.hero-img .hero-image2,
img {
    width: 220px;
    height: 470px;

}

/* Image de l’iPhone */
.hero-image1 {
    position: absolute;
    right: 35%;
    z-index: 3;

}



/* Éléments diagonaux */
.hero-banner {
    position: relative;
    height: 40px;
    margin-top: 30px;
    top: 3.8rem;
}

.banner-orange {
    height: 3.5rem;
    background-color: #FF6A00;
    width: 20rem;
    transform: rotate(-6.5deg);
    position: absolute;
    bottom: 8.57rem;
}

.banner-gray1 {
    height: 3.5rem;
    background-color: #bbb;
    width: 13rem;
    transform: rotate(-6.5deg);
    position: absolute;
    left: -1%;
    bottom: 4.7rem;
}

.banner-gray0 {
    height: 3.5rem;
    background-color: #bbb;
    width: 10rem;
    transform: rotate(-4deg);
    position: absolute;
    right: 8%;
    bottom: 18rem;
    z-index: 0;

}

.banner-blanc {
    height: 3.5rem;
    background-color: #ffffff;
    width: 40rem;
    transform: rotate(-4deg);
    position: absolute;
    right: 0.1%;
    bottom: 14rem;
    z-index: 0;

}

.banner-orange1 {
    height: 3.5rem;
    background-color: #FF6A00;
    width: 20rem;
    transform: rotate(-4deg);
    position: absolute;
    right: 0.1%;
    bottom: 12rem;
    z-index: 0;

}

/* Cercles décoratifs */
.circle-orange {
    position: absolute;
    bottom: 27rem;
    left: 71rem;
    width: 24vw;
    height: 50vh;
    background-color: #ff6a00;
    opacity: 0.3;
    border-radius: 50%;
    z-index: 0;
    filter: blur(30px);
}


.circle-gray {
    position: absolute;
    bottom: 16.2rem;
    /* proche de banner-blanc */
    right: 35%;
    width: 8vw;
    height: 19vh;
    background-color: #2EC5CE;
    border-radius: 50%;
    filter: blur(50px);
    z-index: 0;
}


/* avant abou Section */


.ikeraa-section {
    padding: 60px 20px;
    margin-bottom: 1rem;
}

.ikeraa-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    max-width: 1200px;
    margin: auto;
    gap: 40px;
    position: relative;
}

.ikeraa-text {
    flex: 1 1 500px;
    padding-right: 30px;
}

.ikeraa-text h2 {
    font-size: 40px;
    margin-bottom: 20px;
    color: #000;
}

.ikeraa-text p {
    font-size: 16px;
    margin-bottom: 15px;
    color: #333;
    line-height: 1.6;
}

.btn-ikeraa {
    display: inline-block;
    padding: 12px 24px;
    background-color: #FF840B;
    color: #fff;
    text-decoration: none;
    border-radius: 50px;
    font-weight: bold;
    margin-top: 20px;
}

.ikeraa-images {
    flex: 1 1 400px;
    display: flex;
    justify-content: center;
    position: relative;
}

.ikeraa-images img {
    width: 100%;
    max-width: 700px;
    height: auto;
    border-radius: 10px;
    z-index: 1;
}

.cercle-oran {
    position: absolute;
    top: 70%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: linear-gradient(180deg, #FC9B03 0%, #FA5805 49.04%, #FC9003 100%);
    z-index: 0;
    opacity: 1;
}

/* About Section*/

.about-section {
    padding: 1rem 10%;
    height: auto;
    /* ✅ remplace 280vh */
    bottom: 9rem;
}

.about-section::before {
    content: "";
    opacity: 0.7;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none;
}

/* Pour que le contenu ne passe pas sous le ::before */
.about-section>* {
    position: relative;
    z-index: 1;
}

.promo-header {
    background-color: #ffffff;
    text-align: center;
    margin: 0 auto 1rem auto;
    box-sizing: border-box;
    border-radius: 10px;
}

.promo-line {
    height: 2px;
    background-color: #ddd;
    margin: 10px auto;
    width: 90%;
}

.promo-content {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
}

.app-promo {
    font-size: 16px;
    color: #222;
    font-weight: 500;
    max-width: 600px;
    line-height: 1.5;
}

.app-stores {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content:flex-end;
    background-color: red;
}

.app-icon1,
.app-icon2 {
    height: 40px;
    object-fit: contain;
}




.about-wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 4rem;
    margin: auto;
    padding: 40px 20px;
}

/* Partie gauche */
.about-left {
    flex: 1;
}

/* Grille d’images */
.about-images {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

.about-images img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    object-fit: cover;
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.08);
}

/* Supprimer les dimensions fixes pour le responsive */
#img1,
#img2,
#img3,
#img4 {
    position: relative;
    width: 100%;
    height: auto;
}

#img1 {
    width: 230px;
    height: 288px;
    left: 0.5px;
}

#img2 {
    width: 240px;
    height: 224px;
    top: 64px;
    left: 2px;
}

#img3 {
    width: 164px;
    height: 285px;
    box-shadow: 0px 1px 3.5px 0px #00000040;
}

#img4 {
    width: 300px;
    height: 320px;
    right: 60px;
}

/* Texte à droite */
.about-text {
    flex: 1;
    position: relative;
    top: 0;
    right: 0;
}

.about-text h2 {
    font-size: 36px;
    color: #222;
    margin-bottom: 20px;
}

.about-text p {
    font-size: 16px;
    color: #444;
    line-height: 1.6;
    margin-bottom: 20px;
}

.btn-orange1 {
    margin-top: 10px;
}

.btn-orange {
    display: inline-block;
    padding: 12px 24px;
    background-color: #ff6a00;
    color: #fff;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 500;
    transition: background 0.3s;
}

.btn-orange:hover {
    background-color: #e85a00;
}



/*section services*/

/* SECTION graphisme */
.custom-section {
    background-color: #042D65;
    padding: 4rem 1rem;
    display: flex;
    justify-content: center;
    /* ✅ remplace 125vh */
}

.custom-container {
    display: flex;
    flex-wrap: wrap;
    margin-top: 2.5rem;
    gap: 40px;
    justify-content: center;
    align-items: flex-start;
}

.left-side {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 500px;
    gap: 20px;
}

.custom-text h2 {
    margin: 0;
    font-size: 50px;
    color: #ffffff;
}

.custom-text p {
    color: #FFFFFF;
    font-family: Manrope, sans-serif;
    font-weight: 400;
    font-size: 17px;
    line-height: 26px;
    letter-spacing: 0;
}

.image-left img {
    position: relative;
    left: 48%;
    width: 100%;
    max-width: 350px;
    height: 430px;
    border-radius: 5px;
    object-fit: cover;
    margin-left: auto;
    margin-right: auto;
}

.custom-button1 {
    margin-top: 2rem;
    display: flex;
    justify-content: center;
    position: relative;
    top: 2rem;
    left: 50%;
}

.btn-orangee2 {
    background-color: #ff6a00;
    color: white;
    padding: 10px 20px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: bold;
}

/* ===== RIGHT SIDE ===== */
.right-side {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.right-side img {
    border-radius: 5px;
    object-fit: cover;
    width: 100%;
    max-width: 445px;
    height: auto;
}

.image-top img {
    height: 340px;
}

.image-bottom img {
    height: 404px;
}

/* Spécifique image-bottom pour ajuster les dimensions si besoin */
.right-side .image-bottom img {
    max-width: 390px;
}

/* ======================= RESPONSIVE ======================= */
@media (max-width: 991px) {
    .custom-container {
        flex-direction: column;
        align-items: center;
    }

    .left-side,
    .right-side {
        max-width: 100%;
        width: 100%;
        text-align: center;
    }

    .custom-text h2 {
        font-size: 32px;
    }

    .btn-orangee2 {
        font-size: 14px;
    }
}

@media (max-width: 576px) {
    .custom-text h2 {
        font-size: 26px;
    }

    .custom-text p {
        font-size: 14px;
    }

    .image-left img,
    .right-side img {
        max-width: 100%;
    }

    .btn-orangee2 {
        padding: 10px 18px;
    }
}


.uxui-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 2;
}

.uxui-section::before {
    content: "";
    bottom: 1%;
    left: 50%;
    transform: translateX(-50%);
    background-color: red;
    width: 100%;
    height: 100%;
    z-index: 0;

}

.uxui-container {
    display: flex;
    flex-wrap: wrap;
    max-width: 1100px;
    align-items: flex-start;
    gap: 3rem;
    justify-content: space-between;
    
    background-color: #ffffff ;
    background-image: url('assets/img/motif-plan.png');
    background-size: 80%;
    background-repeat: no-repeat;
    background-position: 130px 320px;
    padding-bottom: 5%;
}

.uxui-container3 {
    display: flex;
    flex-wrap: wrap;
    max-width: 1100px;
    align-items: center;
    gap: 3rem;
    justify-content: space-between;
}

.uxui-text {
    flex: 1;
    min-width: 300px;
}

.uxui-text3 {
    position: relative;
    flex: 1;
    min-width: 300px;
    right: 10rem;
}

.uxui-text h2 {
    font-size: 50px;
    margin-bottom: 1rem;
    color: #000;
}

.uxui-text3 h2 {
    font-size: 50px;
    color: #000;
    padding: 0 18rem;
}

.uxui-text p {
    font-size: 16px;
    color: #444;
    margin-bottom: 1.5rem;
}

.uxui-text3 p {
    font-size: 16px;
    color: #444;
    padding: 0 20rem;
}

.btn-orange3 {
    background-color: #ff6a00;
    color: white;
    padding: 10px 25px;
    border-radius: 30px;
    text-decoration: none;
    font-weight: bold;
}

.btn-orange4 {
    background-color: #ff6a00;
    color: white;
    padding: 10px 25px;
    border-radius: 30px;
    text-decoration: none;
    font-weight: bold;
    width: 196;
    height: 48;
    top: 600px;
    left: 446px;
    position: relative;
}

.uxui-images {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    margin-top:3rem;
}

.uxui-images3 {
    flex: 1;
    display: flex;
    position: relative;
    right: 12rem;
    bottom: 7rem;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
}

.uxui-top,
.uxui-bottom {
    display: flex;
    gap: 1rem;
    justify-content: flex-end;
}

.uxui-top img,
.uxui-bottom img {
    width: 140px;
    border-radius: 10px;
    object-fit: cover;
}

#ui1,
#ui2,
#ui3,
#ui4 {
    position: relative;
}

#ui1 {
    width: 250px;
    height: 288px;
    left: 0.5px;
    opacity: 1;
}

#ui2 {
    width: 270px;
    height: 214px;
    top: 74px;
    left: 1px;
    opacity: 1;
}

#ui3 {
    width: 164px;
    height: 313px;
    opacity: 1;
}

#ui4 {
    width: 336px;
    height: 353px;
    left: 1px;
    opacity: 1;
}

#vidm1, #vidm2, #vidm3 {
    
}

#vidm1 {
    width: 350px;
    height: 436px;
    top: 60px;
    left: 169px;
    opacity: 1;
}


#vidm2 {
    width: 445px;
    height: 340px;
    bottom: 79px;
    left: 170px;
    opacity: 1;
    border-radius: 8px;
}

#vidm3 {
    width: 399px;
    height: 404px;
    bottom: 170px;
    left: 130px;
    opacity: 1;
    border-radius: 8px;
}

.web-mobile-section {

    background-color: #012f66;
    /* ou ton bleu spécifique */
    padding: 4rem 0;
    width: 100%;
    min-height: 82vh;
    color: #fff;
    z-index: 0;
    margin-bottom: 1rem;
    position: relative;
    /* important pour bien gérer le contexte */
    overflow: hidden;
}

.web-mobile-container {
    max-width: 1200px;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 2rem;
}

.web-mobile-text {
    flex: 1;
    min-width: 300px;
}

.web-mobile-text h2 {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.3;
    color: #fff;
}

.web-mobile-text span {
    color: #fff;
}

.web-mobile-text p {
    font-size: 1.1rem;
    color: #cbd6e2;
    margin: 1.2rem 0;
    max-width: 500px;
}

.btn-orange5 {
    display: inline-block;
    background-color: #ff6a00;
    padding: 0.8rem 1.6rem;
    color: #fff;
    font-weight: 600;
    border-radius: 30px;
    text-decoration: none;
    transition: background 0.3s ease;
}

.btn-orange5:hover {
    background-color: #e65b00;
}

.web-mobile-imgs {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    position: relative;
    gap: 1rem;

}

.web-mobile-imgs img {
    height: 570px;
    object-fit: contain;
}

.img-main1 {
    width: 277px;
    height: 553px;
    z-index: 1;
    filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.422));
}

.img-main {
    position: absolute;
    width: 252px;
    height: 560px;
    border-radius: 28px;
    object-fit: cover;
    right: 18.3rem;
    z-index: 0;
}

.img-main1,
.img-main {

    transform: translateY(-24%) translateX(-35%);

}



.img-second {
    z-index: 0;
    position: relative;
    top: 10rem;
    height: 390px;
    filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.327));
}



/* SECTION formation */
.custom-section2 {
    background-color: #042D65;
    padding: 4rem 1rem;
    display: flex;
    justify-content: center;
    /* ✅ remplace 125vh */
}

.custom-container2 {
    display: flex;
    flex-wrap: wrap;
    max-width: 1100px;
    margin-top: 2rem;
    gap: 40px;
    justify-content: center;
    align-items: flex-start;
}

.left-side2 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 500px;
    gap: 20px;
}

.custom-text2 h2 {
    margin: 0;
    font-size: 50px;
    color: #ffffff;
}

.custom-text2 p {
    color: #FFFFFF;
    font-family: Manrope, sans-serif;
    font-weight: 400;
    font-size: 17px;
    line-height: 26px;
    letter-spacing: 0;
}

.image-left2 img {
    position: relative;
    left: 48%;
    width: 100%;
    max-width: 350px;
    height: 400px;
    border-radius: 5px;
    object-fit: cover;
    margin-left: auto;
    margin-right: auto;
}

.custom-button12 {
    margin-top: 2rem;
    display: flex;
    justify-content: center;
    position: relative;
    top: 1rem;
    left: 50%;
}

.btn-orangee23 {
    background-color: #ff6a00;
    color: white;
    padding: 10px 20px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: bold;
}

/* ===== RIGHT SIDE ===== */
.right-side2 {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.right-side2 img {
    border-radius: 5px;
    object-fit: cover;
    width: 100%;
    max-width: 445px;
    height: auto;
}

.image-top2 img {
    height: 340px;
}

.image-bottom2 img {
    height: 400px;
}

/* Spécifique image-bottom pour ajuster les dimensions si besoin */
.right-side2 .image-bottom2 img {
    max-width: 390px;
}

/* ======================= RESPONSIVE ======================= */
@media (max-width: 991px) {
    .custom-container2 {
        flex-direction: column;
        align-items: center;
    }

    .left-side2,
    .right-side2 {
        max-width: 100%;
        width: 100%;
        text-align: center;
    }

    .custom-text2 h2 {
        font-size: 32px;
    }

    .btn-orangee23 {
        font-size: 14px;
    }
}

@media (max-width: 576px) {
    .custom-text2 h2 {
        font-size: 26px;
    }

    .custom-text2 p {
        font-size: 14px;
    }

    .image-left2 img,
    .right-side2 img {
        max-width: 100%;
    }

    .btn-orangee23 {
        padding: 10px 18px;
    }
}





/*ike app*/

.container {
    display: flex;
    max-width: 1200px;
    position: relative;
    overflow: hidden;
    /*left: 10%;*/
    opacity: 1;
    transform: translateX(10%);

}

/* Partie texte */
.text-section {
    flex: 1;
    padding: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.app-title {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 24px;
    color: #000;
}

.app-description {
    font-size: 17px;
    margin-bottom: 24px;
}

.divider {
    height: 1px;
    background-color: #e0e0e0;
    margin: 28px 0;
    border: none;
}


.custom-button7 {
    position: relative;
    width: 10rem;
    height: 2rem;
    top: 0;
    left: 1rem;


}

.btn-orangee7 {
    background-color: #ff6a00;
    color: white;
    text-align: center;
    padding: 10px 25px;
    border-radius: 30px;
    text-decoration: none;
    font-weight: bold;

}



.app-links7 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    left: 6rem;
    bottom: 2rem;
    gap: 24px;
}

.app-link {
    color: #0071e3;
    text-decoration: none;
    font-weight: 500;
    font-size: 17px;
}

.app-link:hover {
    text-decoration: underline;
}

/* Partie visuelle avec l'iPhone */
.visual-section {
    flex: 1;
    background: linear-gradient(135deg, #FF840B 0%, #FF840B 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    border-radius: 1rem 1rem 0 0;
    margin-top: 6rem;
    top: 0;
}



.phone-mockup {
    width: 280px;
    height: auto;
    z-index: 2;
    filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.327));
}

.app-screen {
    position: absolute;
    width: 248px;
    height: 535px;
    border-radius: 28px;
    object-fit: cover;
    z-index: 1;
}

.phone-mockup,
.app-screen {
    transform: translateY(33%);
}






/*footer */

.footer {
    background-color: #111;
    color: #fff;
    padding: 3rem 1rem;
}

.footer-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1200px;
    margin: auto;
    gap: 4rem;
}

.footer-brand {
   
}

.footer-brand {
    color: white;
}

.footer-logo {
    width: 190px;
    height: 90px;
    margin-left:-4%;
    opacity: 1;
}

.store-btn1 {
    background-color: white;
    width: 135px;
    height: 40px;
    opacity: 1;
}


.store-btn2 {
    background: linear-gradient(0, #fff);

    width: 125px;
    height: 40px;
    opacity: 1;
}


.footer-links {
    list-style: none;
    padding: 0;
    margin: 1rem 0;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.footer-links a {
    color: #ccc;
    text-decoration: none;
    font-size: 0.9rem;
}

.footer-socials a {
    color: orange;
    margin-right: 1rem;
    font-size: 1.2rem;
}

.footer-app {
    width: 188px;
    height: 140px;
    top: 56px;
    left: 1170px;
    opacity: 1;
    gap: 16px;
}

.footer-contact,
.footer-app {
    flex: 1 1 200px;
    font-size: 0.9rem;
}

.footer-contact i,
.footer-app i {
    color: orange;
    margin-right: 0.5rem;
}

.footer-app .store-btn {
    width: 140px;
    margin: 0.5rem 0;
}

.copyright {
    margin-top: 1rem;
    font-size: 0.8rem;
    color: #888;
}

@media (max-width: 768px) {
    .footer-container {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .footer-links {
        justify-content: center;
    }

    .footer-socials {
        justify-content: center;
    }
}



/* Bouton de retour fluide */
.back-button {
    position: fixed;
    bottom: 30px;
    right: 30px;
    background: linear-gradient(135deg, #007bff, #0056b3);
    color: white;
    padding: 12px 20px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    box-shadow: 0 4px 15px rgba(0, 123, 255, 0.3);
    transition: all 0.3s ease;
    z-index: 1000;
    display: flex;
    align-items: center;
    gap: 8px;
    opacity: 0;
    transform: translateY(20px);
    visibility: hidden;
}

.back-button.visible {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
}

.back-button:hover {
    background: linear-gradient(135deg, #0056b3, #004085);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 123, 255, 0.4);
    color: white;
}

.back-button i {
    font-size: 16px;
}

/* Animation d'entrée */
@keyframes slideInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.back-button.visible {
    animation: slideInUp 0.5s ease forwards;
}

/* Responsive */
@media (max-width: 768px) {
    .back-button {
        bottom: 20px;
        right: 20px;
        padding: 10px 16px;
        font-size: 13px;
    }
}




/*header*/
/* Responsive */
@media (max-width: 900px) {


    .header-content {
        justify-content: space-around;
        padding: 0 1rem;
    }

    .logo {
        position: relative;
        right: 2.5rem;
    }

    .nav-links {
        position: absolute;
        top: 100%;
        right: 0;
        background-color: #ff7b00;
        flex-direction: column;
        width: 220px;
        padding: 2rem 1rem;
        gap: 2rem;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        display: none;
    }

    .nav-links li a {
        color: #fff;
    }

    .nav-links.active {
        display: flex;
    }

    .menu-toggle {
        display: flex;
    }

    .btn-orange-desktop-btn {
        display: none;
        /* Cache le bouton desktop en mobile */
    }

    .btn-mobile {
        display: block;
        /* Affiche le bouton dans le menu mobile */
    }

    .btn-orange00 {

        background-color: #0b0053;

    }

    .btn-mobile .btn-orange-desktop-btn {
        display: block;
        width: 100%;
    }


    .dropdown-menu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        padding-left: 1rem;
        display: none;
    }

    .dropdown.active .dropdown-menu {
        display: block;
    }

    .dropdown.active .dropdown-icon {
        transform: rotate(180deg);
    }


}



/* Responsive hero section */
/* HERO - Version responsive sans modifier le code existant */
@media (max-width: 1200px) {

    .hero {
        height: auto;
    }

    .hero-text {
        left: 8rem;
        bottom: 7rem;
        width: 600px;
    }

    .hero-img {
        right: 25%;
    }

    .circle-orange {
        left: 60rem;
    }
}

@media (max-width: 992px) {

    .hero {
        height: 129vh;

    }

    .hero-content {
        flex-direction: column;
        padding-top: 3rem;
    }

    .hero-text {
        text-align: center;
        left: 0;
        bottom: 0;
        margin: 2rem auto;
        width: 80%;
    }

    .hero-img {
        position: relative;
        right: auto;

        transform: none;
        top: 0;
    }

    .hero-image1,
    .hero-image2 {
        right: 50%;
        transform: translateX(50%);
    }

}

@media (max-width: 768px) {
    .hero-text {
        width: 90%;
    }

    .hero-text h1 {
        font-size: 3rem;
    }

    .hero-img {
        width: 220px;
        height: 240px;
    }

    .hero-img img {
        position: relative;
        width: 240px;
        height: 490px;
        right: 6.5rem;
    }




    .hero-image1 {
        right: 33%;
    }

    .banner-orange,
    .banner-gray1,
    .banner-gray0,
    .banner-blanc,
    .banner-orange1,
    .circle-orange,
    .circle-gray {
        display: none;
    }
}

@media (max-width: 576px) {
    .hero-text h1 {
        font-size: 2.2rem;
    }

    .hero-text p {
        font-size: 1rem;
    }

    .blur-bg {
        clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%);
    }
}


/*about section */

@media (max-width: 991px) {
    .about-section {
        padding: 0 5%;
        background-attachment: scroll;
        /* ✅ corrige le background fixed sur mobile */
    }

    .about-section::before {
        background-size: cover;
    }
}

@media (max-width: 480px) {
    .about-section {
        padding: 0 3%;
    }

    .promo-header {
        margin-bottom: 4rem;
    }

    .ikeraa-section {
        margin-bottom: 4rem;
    }

    .about-wrapper {
        padding-bottom: 4rem;
    }
}



/*avant abou*/
/* ================= RESPONSIVE ================== */

@media (max-width: 991px) {
    .ikeraa-container {
        flex-direction: column;
        text-align: center;
    }

    .ikeraa-text {
        padding: 0;
    }

    .ikeraa-text h2 {
        font-size: 32px;
    }

    .ikeraa-images {
        margin-top: 20px;
    }

    .btn-ikeraa {
        margin-top: 30px;
    }

    .cercle-oran {
        width: 350px;
        height: 350px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
}

@media (max-width: 480px) {
    .ikeraa-text h2 {
        font-size: 26px;
    }

    .ikeraa-text p {
        font-size: 14px;
    }

    .btn-ikeraa {
        font-size: 14px;
        padding: 10px 20px;
    }

    .cercle-oran {
        width: 300px;
        height: 300px;
        top: 65%;
    }
}




/* Responsive mobile promo header */
@media (max-width: 768px) {
    .promo-content {
        flex-direction: column;
        text-align: center;
    }

    .app-promo {
        font-size: 15px;
        max-width: 90%;
    }

    .app-stores {
        gap: 15px;
        margin-top: 10px;
    }

    .app-icon1,
    .app-icon2 {
        height: 38px;
    }
}

@media (max-width: 480px) {
    .app-promo {
        font-size: 14px;
    }

    .promo-header {
        padding: 15px 10px;
        margin: 5rem auto 7rem auto;
    }
}




/* Responsive abou */
/* ================= RESPONSIVE ================= */
@media (max-width: 991px) {
    .about-wrapper {
        flex-direction: column;
        gap: 1rem;
        text-align: center;
    }

    .about-left,
    .about-text {
        flex: 1 1 100%;
        max-width: 100%;
    }

    .about-text h2 {
        font-size: 30px;
    }

    .about-text p {
        font-size: 15px;
    }

    .btn-orange {
        padding: 10px 20px;
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .about-images {
        grid-template-columns: 1fr;
    }

    .about-text h2 {
        font-size: 26px;
    }

    .about-text p {
        font-size: 14px;
    }
}


@media screen and (max-width: 768px) {
    .web-mobile-container {
        flex-direction: column;
        text-align: center;
    }

    .web-mobile-imgs {
        flex-direction: row;
        justify-content: center;
        gap: 1rem;
        margin-top: 2rem;
    }

    .web-mobile-imgs img {
        height: 300px;
    }
}

/* Responsive ike app */
@media (max-width: 900px) {
    .container {
        flex-direction: column;
        transform: translateX(0);
    }

    .visual-section {
        padding: 40px 0;
    }
}

@media (max-width: 480px) {
    .text-section {
        padding: 28px;
    }

    .app-title {
        font-size: 24px;
    }

    .app-links {
        flex-direction: column;
        gap: 12px;
    }
}