<style>
    :root{
      --brand:#0f2147; --accent:#11b5e5; --accent2:#67d1f1;
      --ink:#0b1020; --muted:#5c667a; --bg:#f6f8fb;
      --radius:18px; --shadow:0 10px 30px rgba(15,33,71,.14);
      --ok:#14b8a6; --warn:#f59e0b;
      --sky:#67d1f1; --sky-weak:rgba(103,209,241,.18); --sky-stroke:rgba(103,209,241,.45);
    }
    *{box-sizing:border-box}
    html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial,sans-serif;scroll-behavior:smooth}
    img{max-width:100%;height:auto;display:block}
    a{color:inherit;text-decoration:none}
    .container{width:min(1168px,92vw);margin-inline:auto}
    .section{padding:3.25rem 0}
    .muted{color:var(--muted)} .tiny{font-size:.86rem;color:var(--muted)}
    h2{font-size:clamp(1.5rem,2.8vw,2.2rem);margin:0 0 1rem 0}

    .brand-icon{height:34px;width:auto;display:block;border-radius:4px}
    .nav{
      position:sticky;top:0;z-index:50;
      background:linear-gradient(180deg, rgba(8,43,79,.92), rgba(17,64,110,.88));
      backdrop-filter:saturate(160%) blur(10px);
      border-bottom:1px solid rgba(255,255,255,.08);
    }
    .nav .inner{display:flex;align-items:center;justify-content:space-between;padding:.8rem 0}
    .brand{display:flex;gap:.7rem;align-items:center}
    .brand h1{margin:0;color:#fff;font-weight:800;letter-spacing:.3px;font-size:1.05rem}
    .nav .menu{display:flex;gap:.35rem;flex-wrap:wrap}
    .nav .menu a{color:#e9f1ff;opacity:.9;padding:.5rem .7rem;border-radius:12px;transition:opacity .15s ease, background-color .15s ease, box-shadow .15s ease, color .15s ease, transform .15s ease;}
    .nav .menu a:hover{opacity:1;background:var(--sky-weak);box-shadow:inset 0 0 0 1px var(--sky-stroke);color:#f2fbff;transform:translateY(-1px)}
    .nav .menu a:focus-visible{outline:none;background:var(--sky-weak);box-shadow:0 0 0 3px rgba(103,209,241,.35), inset 0 0 0 1px var(--sky-stroke);color:#f2fbff}
    .nav .actions{display:flex;gap:.6rem}
    .btn{border:0;border-radius:12px;padding:.85rem 1rem;font-weight:700;letter-spacing:.2px;cursor:pointer;display:inline-flex;align-items:center;gap:.55rem;transition:transform .2s ease,filter .2s ease,box-shadow .2s ease}
    .btn-primary{background:var(--accent);color:#06121f;box-shadow:0 10px 22px rgba(17,181,229,.28)}
    .btn-primary:hover{transform:translateY(-1px);filter:brightness(1.04)}
    .btn-ghost{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.24)} .btn-ghost:hover{background:rgba(255,255,255,.18)}

    .hero{position:relative;min-height:72vh;display:grid;align-items:center;overflow:hidden;background:#091224;}
    .hero-bg{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:saturate(105%);}
    .hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg, rgba(9,18,36,.45), rgba(9,18,36,.15) 55%, rgba(9,18,36,.05) 80%, rgba(9,18,36,0)),linear-gradient(90deg,  rgba(9,18,36,.65) 0%, rgba(9,18,36,.32) 42%, rgba(9,18,36,.12) 70%, rgba(9,18,36,0) 100%);pointer-events:none;}
    .hero-inner{position:relative;z-index:2;padding:5rem 0 4rem}
    .glass{background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.10));border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(10px);border-radius:20px;padding:1rem 1.3rem;display:inline-flex;align-items:center;gap:.6rem;color:#e8eef7}
    .glass .dot{height:9px;width:9px;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent2))}
    .hero h2{margin:.9rem 0 1rem;color:#fff;font-size:clamp(2.3rem,3.8vw,3.1rem);line-height:1.1}
    .hero p{color:#e6edf6;font-size:1.08rem;max-width:64ch}
    .cta{margin-top:1.25rem;display:flex;flex-wrap:wrap;gap:.8rem}
    .trust{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}
    .trust .tag{padding:.55rem .8rem;border:1px solid rgba(255,255,255,.25);color:#e8eef7;border-radius:999px;font-size:.88rem}

    .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem} @media (max-width:980px){.grid-3{grid-template-columns:1fr}}
    .card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:1.35rem;position:relative;overflow:hidden}
    .card h3{margin:.1rem 0 .45rem;font-size:1.12rem} .card .lead{font-weight:600}

    .two-col{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem} @media (max-width:980px){.two-col{grid-template-columns:1fr}}
    .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem} @media (max-width:980px){.steps{grid-template-columns:1fr}}
    .step{background:#fff;border-radius:var(--radius);padding:1rem;box-shadow:var(--shadow)} .step h4{margin:.2rem 0 .2rem 0} .step .emoji{font-size:1.2rem;margin-right:.35rem}

    .table{width:100%;border-collapse:collapse;border-radius:16px;overflow:hidden;box-shadow:var(--shadow)} .table th,.table td{padding:.9rem 1rem;text-align:left}
    .table thead tr{background:var(--brand);color:#fff} .table tbody tr{border-top:1px solid #e6ebf5}

    .tarif-illustr{display:block;margin:.5rem auto 0;width:65%;max-width:340px;opacity:.95;aspect-ratio: 4 / 2.7;object-fit:contain} @media (max-width:980px){.tarif-illustr{width:90%;max-width:320px}}

    .form-card{background:#fff;border-radius:22px;box-shadow:var(--shadow);padding:1.5rem} .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem} @media (max-width:980px){.form-grid{grid-template-columns:1fr}}
    .fg{display:flex;flex-direction:column;gap:.35rem} .fg label{font-weight:700;font-size:.95rem} .fg small{color:var(--muted)}
    .input,.select,textarea{width:100%;padding:1rem 1rem;border:1px solid #e4e7ee;border-radius:14px;font:inherit;outline:none;background:#fbfcff}
    .input:focus,.select:focus,textarea:focus{border-color:#b9dff0;box-shadow:0 0 0 4px rgba(17,181,229,.15)}
    .help{display:flex;align-items:center;gap:.5rem;color:#3b475f;background:#f4f8ff;border:1px solid #e3effc;border-radius:12px;padding:.7rem .9rem}
    .chip{display:inline-flex;align-items:center;gap:.4rem;background:#eef9f7;color:#0b3f39;border:1px solid #b9efe6;border-radius:999px;padding:.35rem .6rem;font-weight:700}
    .form-aside{display:flex;flex-direction:column;gap:.8rem;position:relative;overflow:hidden;border-radius:22px;background:#fff}
    .form-aside img.contact-illustr{width:95%;max-width:430px;margin:1.2rem auto 0;display:block;border-radius:18px;box-shadow:0 8px 24px rgba(0,0,0,0.12)}
    .muted-list{margin:.2rem 0 0 1rem;line-height:1.7;color:var(--muted)} .terms{display:flex;gap:.6rem;align-items:flex-start}

    .faq{max-width:900px;margin:auto} .faq details{border:1px solid #e3effc;background:#fff;border-radius:14px;padding:.9rem 1rem;margin:.6rem 0;box-shadow:var(--shadow)}
    .faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:.6rem;font-weight:700}
    .faq summary::-webkit-details-marker{display:none} .faq .chev{margin-left:auto;transition:transform .2s ease} .faq details[open] .chev{transform:rotate(180deg)}
    .faq p{margin:.6rem 0 0;color:#3b475f;line-height:1.55}

    footer{padding:2.5rem 0;background:#0a1325;color:#98a6c7;text-align:center;margin-top:2rem}
/* --- Bouton WhatsApp flottant --- */
.whatsapp-float {
  position: fixed;
  bottom: 22px;       /* distance du bas de l’écran */
  right: 22px;        /* distance du bord droit */
  background-color: #25D366; /* vert officiel WhatsApp */
  border-radius: 50%;
  width: 60px;
  height: 60px;
  box-shadow: 0 4px 14px rgba(0,0,0,0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 999;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.whatsapp-float:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 20px rgba(37,211,102,0.4);
}

.whatsapp-icon {
  width: 34px;
  height: 34px;
  filter: brightness(0) invert(1); /* rend l'icône blanche */
}
/* --- Ajustement de la position du bouton WhatsApp --- */
.whatsapp-float {
  bottom: 90px; /* relevé pour laisser la place au bouton "haut de page" */
  right: 22px;


}
/* Rapproche le bloc Paiement des deux cartes au-dessus */
#paiement-mini.section.container {
  margin-top: -0.5rem !important; /* rapproche verticalement */
}

/* Harmonise le bord supérieur pour une continuité visuelle */
#paiement-mini .card {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

  
/* ===== Comment ça marche : blocs blancs arrondis ===== */
#comment-ca-marche .cm-steps{
  display:grid;
  gap:12px;
  margin-top:1rem;
}
#comment-ca-marche .cm-step{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:12px 14px;
  border-radius:16px;
  background:#ffffff;
  color:#0f2147;
  box-shadow:0 6px 18px rgba(9,16,32,.10);
  border:1px solid rgba(15,33,71,.06);
}
#comment-ca-marche .cm-title{
  font-size:1rem;
  line-height:1.25;
}
#comment-ca-marche .cm-desc{
  font-size:.95rem;
  color:#2b3e66;
  opacity:.85;
}
@media (max-width: 820px){
  #comment-ca-marche .cm-step{ padding:12px 14px }
  #comment-ca-marche .cm-title{ font-size:1rem }
  #comment-ca-marche .cm-desc{ font-size:.92rem }
}

/* === Menu hamburger mobile === */
.hamburger{width:40px;height:40px;display:grid;place-items:center;background:transparent;border:0;border-radius:.75rem;cursor:pointer}
.hamburger span{display:block;width:22px;height:2px;background:#fff;border-radius:2px;transition:.25s}
.hamburger span:nth-child(2){transform:translateY(6px)} .hamburger span:nth-child(3){transform:translateY(12px)}
.hamburger[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.hamburger[aria-expanded=true] span:nth-child(2){opacity:0}
.hamburger[aria-expanded=true] span:nth-child(3){transform:translateY(6px) rotate(-45deg)}
.drawer{position:fixed;inset:0 0 0 auto;width:min(86vw,420px);background:linear-gradient(180deg,#0f2147,#0c1a36);transform:translateX(100%);transition:transform .32s ease;z-index:50;box-shadow:-10px 0 30px rgba(0,0,0,.35);display:flex;flex-direction:column;padding:16px}
.drawer.open{transform:none}
.drawer-nav{display:flex;flex-direction:column;gap:.75rem}
.drawer-nav a{padding:1rem 1rem;border-radius:1rem;background:transparent;font-weight:700;opacity:.95;color:#fff}
.drawer-nav a:hover{background:rgba(255,255,255,.08);opacity:1}
.backdrop{position:fixed;inset:0;z-index:45;background:rgba(3,8,20,.45);backdrop-filter:blur(2px)}
.backdrop[hidden]{display:none}
/* Sur mobile: cacher le menu texte + boutons d'action, ne garder que le hamburger */
@media (max-width:820px){
  .nav .menu, .nav .actions{display:none}
}

/* === Mobile layout only for "Parcours OBC Antilles simple et efficace" === */
@media (max-width: 820px){
  #benefices .obc-steps{
    display:grid;
    grid-template-columns:repeat(6, 1fr); /* 3 en haut (x2), 2 en bas (x3) */
    gap:10px;
    padding:0;
    overflow:visible;
  }
  #benefices .obc-step{
    margin-right:0;
    min-width:0; max-width:none; flex:none;
    white-space:normal; text-align:center;
    padding:14px 30px 14px 14px;
    font-size:clamp(.85rem,3.4vw,.98rem);
    clip-path:polygon(0 0, calc(100% - 18px) 0, 100% 50%, calc(100% - 18px) 100%, 0 100%, 18px 50%);
  }
  #benefices .obc-step:nth-child(-n+3){ grid-column: span 2; }
  #benefices .obc-step:nth-child(n+4){ grid-column: span 3; }
  #benefices .obc-step:nth-child(3){ padding-left:14px; } /* annule le décalage desktop */
  #benefices .obc-step small{ font-size:.82rem }
}

/* === FIX: Parcours OBC mobile — forcer 5 flèches visibles (3+2), tailles compactes === */
@media (max-width: 820px){
  #benefices .obc-chain{padding:0 8px; max-width:100vw}
  #benefices .obc-steps{
    display:grid !important;
    grid-template-columns:repeat(6, 1fr) !important;
    gap:8px !important;
    overflow:visible !important;
    padding:0 !important;
  }
  #benefices .obc-step{
    flex:none !important; min-width:0 !important; max-width:none !important;
    margin-right:0 !important;
    white-space:normal !important; text-align:center;
    padding:10px 18px 10px 12px !important;
    font-size:clamp(.8rem,3.2vw,.92rem) !important;
    clip-path:polygon(0 0, calc(100% - 14px) 0, 100% 50%, calc(100% - 14px) 100%, 0 100%, 14px 50%) !important;
  }
  #benefices .obc-step small{font-size:clamp(.7rem,2.8vw,.85rem) !important}
  #benefices .obc-step:nth-child(-n+3){ grid-column: span 2 !important; }
  #benefices .obc-step:nth-child(n+4){ grid-column: span 3 !important; }
  #benefices .obc-step:nth-child(3){ padding-left:12px !important; }
}

/* EXTRA: très petits écrans (≤360px) — bascule en 5 sur une ligne sans scroll */
@media (max-width: 360px){
  #benefices .obc-steps{ grid-template-columns:repeat(5, 1fr) !important; }
  #benefices .obc-step{ grid-column: span 1 !important; padding:8px 12px 8px 10px !important; font-size:.8rem !important; }
  #benefices .obc-step small{ font-size:.74rem !important; }
}
</style>
<style>
  /* Anchor offset so sticky header doesn't hide titles */
  section[id], [id^="section-"], h1[id], h2[id], h3[id]{
    scroll-margin-top: 92px;
  }
  @media (max-width: 640px){
    section[id], [id^="section-"], h1[id], h2[id], h3[id]{
      scroll-margin-top: 78px;
    }
  }

  /* Ajustement spécifique mobile */
  @media (max-width: 768px) {
    section ul,
    .content ul {
      margin-left: 1rem !important;
      padding-left: 1rem !important;
    }
    section li,
    .content li {
      text-align: left;
      line-height: 1.5;
      max-width: 100%;
    }
  }
</style>

<!-- le fichier CSS externe doit être EN DEHORS de <style> -->
<link rel="stylesheet" href="./assets/css/style.css?v=9">
/* === Image dans le bloc Extension Inter-îles (version ajustée) === */
.inter-iles-img-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 0.8rem;
  width: 100%;
}

.inter-iles-img {
  width: 90%;
  max-height: 150px;
  object-fit: cover;
  border-radius: 14px;
  box-shadow: 0 4px 12px rgba(9,16,32,0.08);
  display: block;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.inter-iles-img:hover {
  transform: scale(1.02);
  box-shadow: 0 8px 18px rgba(9,16,32,0.12);
}
:root {
      --brand:#0f2147; --accent:#11b5e5; --accent2:#67d1f1;
      --ink:#0b1020; --muted:#5c667a; --bg:#f6f8fb;
      --radius:18px; --shadow:0 10px 30px rgba(15,33,71,.14);
      --ok:#14b8a6; --warn:#f59e0b;
      --sky:#67d1f1; --sky-weak:rgba(103,209,241,.18);
      --sky-stroke:rgba(103,209,241,.45);
    }

    * { box-sizing:border-box; }
    html,body {
      margin:0; padding:0;
      background:var(--bg); color:var(--ink);
      font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial,sans-serif;
      scroll-behavior:smooth;
    }

    img { max-width:100%; height:auto; display:block; }
    a { color:inherit; text-decoration:none; }

    .container { width:min(1168px,92vw); margin-inline:auto; }
    .section { padding:3.25rem 0; }
    .muted { color:var(--muted); }
    .tiny { font-size:.86rem; color:var(--muted); }
    h2 { font-size:clamp(1.5rem,2.8vw,2.2rem); margin:0 0 1rem 0; }

    .card {
      background:#fff;
      border-radius:var(--radius);
      box-shadow:var(--shadow);
      padding:1.35rem;
      position:relative;
      overflow:hidden;
    }

    .two-col {
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:1.25rem;
    }

    @media (max-width:980px) {
      .two-col { grid-template-columns:1fr; }
    }

    /* Rapproche le bloc Paiement */
    #paiement-mini.section.container {
      margin-top:-0.5rem !important;
    }

    /* Harmonise le bord supérieur */
    #paiement-mini .card {
      margin-top:0;
      border-top-left-radius:0;
      border-top-right-radius:0;
    }

    /* === Image dans le bloc Extension Inter-îles (version ajustée) === */
    .inter-iles-img-wrapper {
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 0.8rem;
      width: 100%;
    }

    .inter-iles-img {
  width: 85% !important;            /* un peu plus étroite */
  max-height: 130px !important;     /* réduit la hauteur */
  object-fit: cover !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 12px rgba(9,16,32,0.08) !important;
  display: block !important;
  margin: 0 auto 0.4rem !important; /* centrée et légère marge basse */
}

    .inter-iles-img:hover {
      transform: scale(1.02);
      box-shadow: 0 8px 18px rgba(9,16,32,0.12);
    }
/* ==== Inter-îles : image ajustée (hauteur un peu plus grande) ==== */
@media (min-width: 980px){
  #inter-iles .inter-iles-img-wrapper {
    height: 170px;                /* 🔧 augmente légèrement la hauteur */
    margin-top: .7rem;
    border-radius: 14px;
    overflow: hidden;
  }
  #inter-iles .inter-iles-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }
}
/* Bloc image Inter-îles verrouillé (pas de décalage) */
#inter-iles .inter-iles-hero{
  height: 170px;                 /* ajuste 160–190px selon ton œil */
  margin-top: .7rem;
  border-radius: 14px;
  background: url("assets/img/transfert-inter-iles-obc-antilles.png") center/cover no-repeat;
  box-shadow: 0 4px 12px rgba(9,16,32,.08);
  overflow: hidden;              /* respecte l’arrondi */
}

@media (max-width: 980px){
  #inter-iles .inter-iles-hero{ height: 160px; } /* un peu plus compact sur mobile */
}
/* === Remonte légèrement la section Tarifs + Inter-îles === */
#pricing.section.container {
  padding-top: -1.6rem;   /* au lieu de ~3rem par défaut */
  margin-top: -0.8rem;   /* 🔧 remonte légèrement le bloc */
/* Footer toujours collé en bas + pas de blanc sous la page */
body { padding-bottom: 110px; }     /* coussin = hauteur du footer (ajustable) */

footer {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;                        /* colle en bas */
  z-index: 50;                      /* au-dessus du fond */
  background: #0a1325;              /* ta couleur actuelle */
  color: #98a6c7;
  padding: 1.5rem 0;                /* hauteur ~110px avec texte */
  text-align: center;
  margin: 0;                        /* aucune marge parasite */
  border: 0;
  box-shadow: 0 -6px 18px rgba(0,0,0,.08); /* léger relief (optionnel) */
}
/* === Réduction de l'écart sous la section Tarifs + Extensions === */
#pricing.section.container {
  margin-bottom: 0.5rem !important;   /* espace externe minimal */
  padding-bottom: 0.5rem !important;  /* espace interne minimal */
}

/* Le dernier bloc (Paiement & validation) n'ajoute plus d'espace inutile */
#pricing .card:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 1rem !important;
}
.drawer-image {
  display: flex;
  justify-content: center;
  padding: 1.5rem 0 2rem;
}

.drawer-image img {
  width: 85%;
  max-width: 320px;
  border-radius: 18px;
  object-fit: cover;
  box-shadow: 0 6px 20px rgba(0,0,0,0.25);
}
.drawer-image {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.6rem 0 2rem;
  background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.05) 100%);
}

.drawer-image img {
  width: 85%;
  max-width: 320px;
  border-radius: 22px;
  overflow: hidden;
  object-fit: cover;
  box-shadow: 0 8px 24px rgba(0,0,0,0.25), 0 0 0 1px rgba(255,255,255,0.05);
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.drawer-image img:hover {
  transform: scale(1.03);
  box-shadow: 0 12px 32px rgba(0,0,0,0.3);
}

/* Carte : l’ombre est sur le figure, pas sur l’élément qui clippe */
.photo-interiles{
  margin: 1.25rem 0;
  border-radius: 18px;
  box-shadow: 0 10px 28px rgba(10,20,40,.12);
  background:#fff;                /* évite la transparence sous l’image */
}

/* Le conteneur qui coupe l’image : contexte séparé et sûr pour Chrome */
.photo-interiles .img-frame{
  border-radius: 18px;
  overflow: hidden;
  contain: paint;                 /* isole la peinture -> moins de bugs GPU */
  isolation: isolate;             /* nouveau stacking context */
  backface-visibility: hidden;    /* évite des artefacts lors du composite */
}

/* L’image : aucune transform/transition, rendu simple */
.photo-interiles img{
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  will-change: auto !important;   /* ne pas forcer la promotion GPU */
  transform: none !important;
  transition: none !important;
  image-rendering: auto;
}
/* Correction du décalage d'ancre (CGV, mentions, etc.) */
:target {
  scroll-margin-top: 100px; /* ajuste la valeur selon la hauteur de ta barre */
}
/* --- BOUTON PREMIUM OBC AVEC AVION --- */
.backToTop {
  position: fixed;
  bottom: 22px;
  right: 22px;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: linear-gradient(145deg, #0B1A34, #12305A);
  box-shadow:
    0 6px 18px rgba(0,0,0,0.25),
    0 0 0 2px rgba(17,181,229,0.25),
    0 0 18px rgba(17,181,229,0.25);
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s ease, visibility .3s ease, transform .3s ease, box-shadow .4s ease;
  z-index: 9999;
  backdrop-filter: blur(4px);
}

/* Affichage quand on scrolle */
.backToTop.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Hover premium : halo lumineux + montée */
.backToTop:hover {
  transform: translateY(-4px);
  box-shadow:
    0 12px 24px rgba(0,0,0,0.4),
    0 0 0 3px rgba(17,181,229,0.35),
    0 0 25px rgba(17,181,229,0.45);
}

/* Avion premium */
.plane-icon {
  font-size: 24px;
  color: #fff;
  display: block;
  transform: rotate(-45deg) !important; /* avion incliné */
  transition: transform .35s ease;
}

.backToTop:hover .plane-icon {
  transform: rotate(-45deg) translateY(-3px) !important;
}
<style>
#backToTop {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 60;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: linear-gradient(135deg, #57C3FF, #009FE3);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: none;
  box-shadow: 0 10px 22px rgba(0, 140, 200, 0.35);
  transform: scale(0.9);
  transition: transform .25s ease, opacity .25s ease;
  opacity: 0;
}

#backToTop.show {
  opacity: 1;
  transform: scale(1);
}

#backToTop .plane-icon {
  font-size: 26px;
  display: block;
  transform: rotate(-45deg);
  color: #0A2342; /* bleu marine foncé, premium */
  font-weight: 800;
}
</style>
<style>
#backToTop {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 60;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: linear-gradient(135deg, #57C3FF, #009FE3);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: none;
  box-shadow: 0 10px 22px rgba(0, 140, 200, 0.35);
  transform: scale(0.9);
  transition: transform .25s ease, opacity .25s ease;
  opacity: 0;
}

#backToTop.show {
  opacity: 1;
  transform: scale(1);
}

#backToTop .plane-icon {
  font-size: 26px;
  display: block;
  transform: rotate(-45deg);
  color: #0A2342; /* bleu marine premium */
  font-weight: 800;
}
</style>
