*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#082a58;background:#f7f9fc}a{text-decoration:none;color:inherit}.top{background:#fff;display:flex;align-items:center;padding:8px 4%;gap:24px;position:sticky;top:0;z-index:10;box-shadow:0 1px 8px #0001}.brand{display:flex;align-items:center;gap:10px;min-width:300px}.brand img{width:62px;height:62px;object-fit:contain}.brand b{font-size:18px;line-height:1.05}.nav{display:flex;gap:16px;font-size:12px;font-weight:700;align-items:center;flex:1;justify-content:center;flex-wrap:wrap}.nav a:hover{color:#c99300}.members,.button{background:#07356d;color:#fff;border-radius:8px;padding:12px 16px;font-weight:700;display:inline-block}.hero{min-height:420px;background:linear-gradient(90deg,rgba(3,39,80,.96),rgba(3,39,80,.7) 48%,rgba(3,39,80,.12)),url('assets/hero.png') center/cover no-repeat;display:flex;align-items:center;padding:55px 6%;color:#fff}.hero h1{font-size:48px;line-height:1.03;margin:0 0 14px;max-width:760px}.goldtxt{color:#f6c72d}.hero p{font-size:18px;line-height:1.5;max-width:700px}.btn-gold{background:#f7c62b;color:#082a58;padding:13px 20px;border-radius:8px;font-weight:800;display:inline-block;margin:8px 8px 0 0}.btn-out{border:1px solid #fff;padding:12px 20px;border-radius:8px;display:inline-block}.pillars{background:#052e63;color:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:24px 5%;gap:15px}.pillar{padding:8px 20px;border-right:1px solid #ffffff33}.pillar:last-child{border:0}.pillar b{color:#f6c72d;font-size:18px}.section{padding:55px 6%}.section h1,.section h2{text-align:center;margin-top:0}.lead{text-align:center;max-width:900px;margin:0 auto 30px;line-height:1.6}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 3px 14px #0002;border:3px solid #c7d0da}.card.gold{border-color:#d6a813}.photo{height:270px;position:relative;background:#0b274c}.photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.tier{position:absolute;right:10px;top:10px;background:#041f3fe8;color:#fff;padding:8px 10px;border-radius:8px;font-weight:800}.gold .tier{color:#ffd54d}.info{padding:15px;min-height:125px}.name{font-size:17px;font-weight:800;margin-bottom:7px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.panel{background:#fff;border-radius:14px;padding:24px;box-shadow:0 2px 12px #0001}.panel h3{margin-top:0;color:#07356d}.join{max-width:850px;margin:auto;background:#fff;border-radius:16px;padding:30px;box-shadow:0 3px 18px #0002}.steps{display:flex;justify-content:space-between;gap:8px;margin-bottom:25px}.step{flex:1;text-align:center;background:#eef3f8;padding:10px;border-radius:8px;font-size:13px;font-weight:700}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}label{font-weight:700}input,select,textarea{padding:13px;border:1px solid #b8c3d0;border-radius:8px;font-size:15px;background:#fff}.notice{background:#eef5ff;border-left:4px solid #0c7ce8;padding:14px;margin:20px 0;line-height:1.5}.pay{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pay div{border:2px solid #d9e0e8;border-radius:10px;padding:18px;text-align:center;font-weight:800}.submit{border:0;background:#f7c62b;color:#082a58;padding:14px 24px;border-radius:9px;font-size:16px;font-weight:800;cursor:pointer}.footer{background:#052e63;color:#fff;padding:35px 6%;display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.small{font-size:13px;line-height:1.5}.flagline{height:12px;background:linear-gradient(165deg,#0c7ce8 0 47%,#f5d027 47% 51%,#d51c2f 51% 61%,#f5d027 61% 65%,#0c7ce8 65%)}@media(max-width:900px){.top{position:static;flex-wrap:wrap}.nav{order:3}.hero h1{font-size:36px}.pillars,.cards,.grid3{grid-template-columns:1fr 1fr}.formgrid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer{grid-template-columns:1fr}}@media(max-width:560px){.pillars,.cards,.grid3,.pay{grid-template-columns:1fr}.brand{min-width:0}.hero{padding:35px 6%}.hero h1{font-size:31px}}
.menu-toggle{display:none;border:0;background:#07356d;color:#fff;width:46px;height:42px;border-radius:9px;font-size:25px;line-height:1;cursor:pointer}
@media(max-width:700px){
body{overflow-x:hidden}.top{position:sticky;top:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 14px;box-shadow:0 1px 8px #0002}
.brand{min-width:0;gap:8px}.brand img{width:48px;height:48px;flex:0 0 48px}.brand b{font-size:14px;line-height:1.03;display:block}.brand div div{font-size:9px!important;white-space:nowrap}
.menu-toggle{display:block}.nav{display:none;grid-column:1/-1;width:100%;padding:8px 0 2px;grid-template-columns:1fr 1fr;gap:4px;background:#fff}
.nav a{display:block;padding:11px 8px;border-radius:7px;background:#f3f6fa;text-align:center;font-size:12px}.members{display:none;grid-column:1/-1;text-align:center;margin-top:2px;padding:12px 16px}
body.menu-open .nav{display:grid}body.menu-open .members{display:block}body.menu-open .menu-toggle{background:#f6c72d;color:#082a58}
.hero{min-height:540px;align-items:flex-end;padding:46px 22px 42px;background:linear-gradient(180deg,rgba(3,39,80,.36) 0%,rgba(3,39,80,.76) 42%,rgba(3,39,80,.97) 100%),url('assets/hero.png') center/cover no-repeat}
.hero h1{font-size:34px;line-height:1.04;margin-bottom:16px;letter-spacing:-.4px}.hero p{font-size:16px;line-height:1.48;margin:0 0 12px}
.btn-gold,.btn-out{display:block;width:100%;text-align:center;margin:10px 0 0;padding:13px 14px}
.pillars{grid-template-columns:1fr 1fr;padding:20px 14px;gap:0}.pillar{padding:13px 12px;border-right:0;border-bottom:1px solid #ffffff2b;font-size:13px}.pillar:nth-last-child(-n+2){border-bottom:0}.pillar b{font-size:16px}
.section{padding:38px 18px}.section h1,.section h2{font-size:26px}.lead{font-size:15px}.cards,.grid3,.pay{grid-template-columns:1fr}.card{max-width:420px;margin:0 auto;width:100%}.photo{height:330px}
.join{padding:22px 16px;border-radius:12px}.steps{display:grid;grid-template-columns:1fr 1fr}.formgrid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer{grid-template-columns:1fr;padding:30px 20px}
}
@media(max-width:390px){.brand b{font-size:12.5px}.brand div div{font-size:8px!important}.hero h1{font-size:30px}.hero{padding-left:18px;padding-right:18px}.pillars{grid-template-columns:1fr}.pillar,.pillar:nth-last-child(-n+2){border-bottom:1px solid #ffffff2b}.pillar:last-child{border-bottom:0}}


/* ===== RNS mobile polish v3 ===== */
@media(max-width:700px){
  .hero{
    min-height:500px;
    padding:34px 22px 34px;
    align-items:flex-end;
    background-image:
      linear-gradient(180deg,
        rgba(3,39,80,.08) 0%,
        rgba(3,39,80,.16) 25%,
        rgba(3,39,80,.56) 52%,
        rgba(3,39,80,.92) 100%),
      url('assets/hero.png') !important;
    background-size:cover !important;
    background-position:center 36% !important;
    background-repeat:no-repeat !important;
  }
  .hero h1{font-size:32px;line-height:1.03;margin-bottom:14px}
  .hero p{font-size:15.5px;line-height:1.42}

  /* Member cards: keep original images, improve face framing */
  .photo{height:330px}
  .card img{object-fit:cover}
  .card:nth-child(1) .photo img,
  .card:nth-child(1) img.photo,
  .card:nth-child(1) img{object-position:center 72% !important}
  .card:nth-child(2) .photo img,
  .card:nth-child(2) img.photo,
  .card:nth-child(2) img{object-position:center 38% !important}
  .card:nth-child(3) .photo img,
  .card:nth-child(3) img.photo,
  .card:nth-child(3) img{object-position:center 35% !important}
  .card:nth-child(4) .photo img,
  .card:nth-child(4) img.photo,
  .card:nth-child(4) img{object-position:center 35% !important}
}
@media(max-width:390px){
  .hero{
    min-height:485px;
    padding:30px 18px 30px;
    background-position:center 34% !important;
  }
  .hero h1{font-size:29px}
}

@media(max-width:700px){
  .member-platinum .photo img,
  .member-platinum img.photo,
  .member-platinum img{
    object-fit:cover !important;
    object-position:center 78% !important;
  }
}


/* ===== RNS final mobile framing v4 ===== */
@media(max-width:700px){
  /* Header ends cleanly on white: no blue strip/shadow beneath the logo */
  .top{
    background:#fff !important;
    box-shadow:none !important;
    border-bottom:1px solid #e8edf3 !important;
  }

  /* Homepage: show the actual photograph immediately below the header.
     No dominant blue wash in the upper part of the hero. */
  .hero{
    min-height:485px !important;
    padding:30px 22px 32px !important;
    background-image:
      linear-gradient(180deg,
        rgba(3,39,80,0) 0%,
        rgba(3,39,80,.04) 22%,
        rgba(3,39,80,.24) 43%,
        rgba(3,39,80,.72) 67%,
        rgba(3,39,80,.94) 100%),
      url('assets/hero.png') !important;
    background-position:center center !important;
  }

  /* Portraits: source photos remain untouched; only viewport crop changes. */
  .photo{
    height:350px !important;
    background:#f2f4f7 !important;
  }
  .photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }
  .member-platinum .photo img{
    object-position:center 42% !important;
  }
  .member-gold .photo img{
    object-position:center 24% !important;
  }
}
@media(max-width:390px){
  .hero{
    min-height:465px !important;
    padding:28px 18px 30px !important;
    background-position:center center !important;
  }
  .photo{height:335px !important}
  .member-platinum .photo img{object-position:center 42% !important}
  .member-gold .photo img{object-position:center 24% !important}
}


/* ===== Portrait correction v5 =====
   Male portraits use contain rather than crop so the full head/face stays visible.
   Original image files are unchanged. */
@media(max-width:700px){
  .member-platinum .photo,
  .member-gold .photo{
    height:380px !important;
    background:#eef1f5 !important;
    overflow:hidden !important;
  }
  .member-platinum .photo img,
  .member-gold .photo img{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    display:block !important;
  }
}
@media(max-width:390px){
  .member-platinum .photo,
  .member-gold .photo{height:360px !important}
}

/* ===== Galerie RNS ===== */
.gallery-intro{max-width:1180px;margin:auto}
.gallery-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}
.gallery-tab{border:1px solid #0b3a70;background:#fff;color:#0b3a70;padding:10px 18px;border-radius:999px;font-weight:700;cursor:pointer}
.gallery-tab.active{background:#0b3a70;color:#fff}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.gallery-item{background:#fff;border:1px solid #e1e6ed;border-radius:14px;overflow:hidden;box-shadow:0 7px 22px #0a2b5010}
.gallery-placeholder{aspect-ratio:4/3;background:linear-gradient(145deg,#eef3f8,#dce5ef);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;color:#0b3a70}
.gallery-placeholder span{font-size:40px;margin-bottom:12px}.gallery-placeholder.video span{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:#f6c72d;color:#0b3a70}
.gallery-caption{padding:15px 16px}.gallery-caption b,.gallery-caption small{display:block}.gallery-caption small{margin-top:5px;color:#667}
.gallery-note{margin-top:30px;padding:20px;border-left:4px solid #f6c72d;background:#f5f7fa}.gallery-note p{margin:5px 0 0}
@media(max-width:700px){
 .gallery-grid{grid-template-columns:1fr}.gallery-tabs{margin:18px 0}.gallery-tab{flex:1;padding:10px 12px}
}


/* ===== RNS member portraits v7: uniform professional mobile cards ===== */
@media(max-width:700px){
  .cards .card .photo{
    height:340px !important;
    background:#eef1f5 !important;
    overflow:hidden !important;
  }
  .cards .card .photo img{
    width:100% !important;
    height:100% !important;
    display:block !important;
    object-fit:cover !important;
  }

  /* Platinum: keep full head visible, without the narrow full-photo effect */
  .member-platinum .photo img{
    object-position:center 30% !important;
  }

  /* Gold: reduce facial zoom and restore head/shoulders composition */
  .member-gold .photo img{
    object-position:center 20% !important;
  }

  /* Keep the four cards visually consistent */
  .cards .card{
    border-radius:14px !important;
    overflow:hidden !important;
  }
}
@media(max-width:390px){
  .cards .card .photo{height:320px !important}
  .member-platinum .photo img{object-position:center 30% !important}
  .member-gold .photo img{object-position:center 20% !important}
}


/* ===== Portrait correction v8 =====
   Move both male portraits slightly downward inside the frame
   so the forehead/top of head remains visible. */
@media(max-width:700px){
  .member-platinum .photo img{
    object-position:center 16% !important;
  }
  .member-gold .photo img{
    object-position:center 10% !important;
  }
}
@media(max-width:390px){
  .member-platinum .photo img{object-position:center 16% !important}
  .member-gold .photo img{object-position:center 10% !important}
}


/* ===== RNS V9 — portraits hommes corrigés =====
   Les photos masculines sont verticales. Sur mobile, on conserve leur ratio
   naturel dans une fenêtre uniforme au lieu de les recadrer avec cover. */
@media(max-width:700px){
  .member-platinum .photo,
  .member-gold .photo{
    height:360px !important;
    background:#eef1f5 !important;
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
    overflow:hidden !important;
  }

  .member-platinum .photo img,
  .member-gold .photo img{
    width:auto !important;
    max-width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    object-position:center top !important;
    display:block !important;
  }

  /* Platinum est plus étroit à l'origine : fond discret plutôt qu'un zoom qui coupe la tête. */
  .member-platinum .photo{
    background:#f3f5f8 !important;
  }

  /* Gold remplit naturellement davantage le cadre. */
  .member-gold .photo{
    background:#f5efe8 !important;
  }
}

@media(max-width:390px){
  .member-platinum .photo,
  .member-gold .photo{
    height:345px !important;
  }
}


/* ===== RNS V10 — cadrage définitif Platinum & Gold ===== */
@media(max-width:700px){
  .member-platinum .photo,
  .member-gold .photo{
    height:390px !important;
    overflow:hidden !important;
    position:relative !important;
  }

  .member-platinum .photo{
    background:#e9edf2 !important;
  }
  .member-gold .photo{
    background:#efe7dd !important;
  }

  .member-platinum .photo img,
  .member-gold .photo img{
    width:100% !important;
    height:100% !important;
    display:block !important;
    object-fit:cover !important;
    transform:none !important;
  }

  /* Nouvelle photo Platinum : tête entière, visage centré, épaules visibles */
  .member-platinum .photo img{
    object-position:center 18% !important;
  }

  /* Gold : cadrage légèrement plus large et remonté */
  .member-gold .photo img{
    object-position:center 12% !important;
  }
}

@media(max-width:390px){
  .member-platinum .photo,
  .member-gold .photo{
    height:365px !important;
  }
  .member-platinum .photo img{object-position:center 18% !important}
  .member-gold .photo img{object-position:center 12% !important}
}

/* ===== RNS V11 — tête entière Platinum & Gold =====
   Portraits verticaux affichés sans recadrage : aucun pixel du haut n'est coupé. */
@media(max-width:700px){
  .member-platinum .photo,
  .member-gold .photo{
    height:auto !important;
    aspect-ratio:auto !important;
    overflow:hidden !important;
    display:block !important;
  }
  .member-platinum .photo img,
  .member-gold .photo img{
    width:100% !important;
    height:auto !important;
    max-width:none !important;
    object-fit:initial !important;
    object-position:initial !important;
    display:block !important;
    transform:none !important;
  }
  .member-platinum .photo{background:#eef1f5 !important;}
  .member-gold .photo{background:#f4ede5 !important;}
}
@media(max-width:390px){
  .member-platinum .photo,
  .member-gold .photo{height:auto !important;}
}


/* ===== RNS V12 — correction réelle du conflit CSS ===== */
@media(max-width:700px){
  .cards .card.member-platinum .photo,
  .cards .card.member-gold .photo{
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    display:block !important;
  }

  .cards .card.member-platinum .photo img,
  .cards .card.member-gold .photo img{
    width:100% !important;
    height:auto !important;
    max-width:100% !important;
    object-fit:contain !important;
    object-position:center top !important;
    display:block !important;
    transform:none !important;
  }

  .cards .card.member-platinum .photo{background:#eef1f5 !important;}
  .cards .card.member-gold .photo{background:#f4ede5 !important;}
}

@media(max-width:390px){
  .cards .card.member-platinum .photo,
  .cards .card.member-gold .photo{
    height:auto !important;
    min-height:0 !important;
  }
}


/* ===== RNS V13 — Gold uniquement ===== */
@media(max-width:700px){
  .cards .card.member-gold .photo{
    height:auto !important;
    min-height:0 !important;
    padding-top:18px !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    background:#eadfce !important;
  }

  .cards .card.member-gold .photo img{
    width:100% !important;
    height:auto !important;
    max-width:100% !important;
    object-fit:contain !important;
    object-position:center top !important;
    display:block !important;
    transform:none !important;
  }
}


/* ===== RNS V14 — Gold sans recadrage + Hero mobile lisible ===== */
@media(max-width:700px){

  /* GOLD: afficher l'image complète. Aucun cover, aucune coupe du sommet. */
  .cards .card.member-gold .photo{
    height:auto !important;
    min-height:0 !important;
    padding:0 !important;
    overflow:visible !important;
    background:#efe7dd !important;
    display:block !important;
  }
  .cards .card.member-gold .photo img{
    width:100% !important;
    height:auto !important;
    max-width:none !important;
    object-fit:contain !important;
    object-position:center top !important;
    transform:none !important;
    display:block !important;
  }

  /* ACCUEIL: conserver la photo, mais garantir le contraste du message. */
  .hero{
    min-height:500px !important;
    padding:28px 18px 30px !important;
    background-image:
      linear-gradient(180deg,
        rgba(4,28,57,.05) 0%,
        rgba(4,28,57,.15) 30%,
        rgba(4,28,57,.62) 56%,
        rgba(4,28,57,.94) 100%),
      url('assets/hero.png') !important;
    background-position:center center !important;
  }
  .hero .hero-content,
  .hero > div{
    max-width:100% !important;
  }
  .hero h1{
    font-size:30px !important;
    line-height:1.04 !important;
    text-shadow:0 2px 8px rgba(0,0,0,.48) !important;
    margin-bottom:14px !important;
  }
  .hero p{
    font-size:16px !important;
    line-height:1.45 !important;
    color:#fff !important;
    text-shadow:0 2px 7px rgba(0,0,0,.65) !important;
    background:rgba(3,34,69,.58) !important;
    padding:12px 14px !important;
    border-radius:9px !important;
    margin-bottom:14px !important;
  }
}
@media(max-width:390px){
  .hero h1{font-size:28px !important}
  .hero p{font-size:15.5px !important}
}

/* ===== RNS V15 — final portrait parity: Platinum formula applied to Gold ===== */
@media(max-width:700px){
  .cards .card.member-platinum .photo,
  .cards .card.member-gold .photo{
    height:auto !important; min-height:0 !important; padding:0 !important;
    overflow:hidden !important; display:block !important;
  }
  .cards .card.member-platinum .photo img,
  .cards .card.member-gold .photo img{
    width:100% !important; height:auto !important; max-width:100% !important;
    object-fit:contain !important; object-position:center top !important;
    transform:none !important; display:block !important;
  }
}

/* ===== RNS presidential vision section v16 ===== */
.presidential-vision{background:#062d5e;color:#fff;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:34px;align-items:center;padding:52px 6%;border-top:4px solid #f6c72d}
.vision-kicker{font-size:12px;letter-spacing:2px;font-weight:800;color:#f6c72d;margin-bottom:12px}
.presidential-vision h2{font-size:36px;line-height:1.08;margin:0 0 16px;color:#fff}
.presidential-vision h2 span{color:#f6c72d}
.presidential-vision p{font-size:17px;line-height:1.55;margin:0 0 12px;color:#f3f6fb}
.presidential-vision .vision-note{font-size:12.5px;color:#cbd8e8;margin-top:18px}
.vision-video{border:1px solid #ffffff55;border-radius:14px;overflow:hidden;background:#000;box-shadow:0 12px 30px #0005}
.vision-video video{width:100%;height:auto;display:block;aspect-ratio:910/512;background:#000}
@media(max-width:800px){.presidential-vision{grid-template-columns:1fr;padding:38px 18px;gap:24px}.presidential-vision h2{font-size:29px}.presidential-vision p{font-size:15.5px}}

/* ===== RNS V17 — accueil institutionnel, fidèle à la maquette validée ===== */
.hero.hero-v17{
  min-height:760px; padding:58px 5% 0; display:block; position:relative; color:#fff;
  background-image:linear-gradient(90deg,rgba(3,30,61,.94) 0%,rgba(3,30,61,.78) 34%,rgba(3,30,61,.18) 72%,rgba(3,30,61,.06) 100%),url('assets/hero.png') !important;
  background-size:cover !important; background-position:center 44% !important; border-bottom:0;
}
.hero-v17:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,#1595df 0 33%,#f6c72d 33% 66%,#ef2636 66%)}
.hero-v17 .hero-main{max-width:1400px;margin:0 auto;position:relative;z-index:1}
.hero-v17 .hero-copy{max-width:650px;padding:24px 0 42px}
.hero-v17 .hero-kicker{font-size:12px;letter-spacing:2.5px;font-weight:800;color:#f6c72d;margin-bottom:14px}
.hero-v17 h1{font-size:52px;line-height:1.02;margin:0 0 18px;text-shadow:0 2px 14px rgba(0,0,0,.45)}
.hero-v17 .hero-copy p{font-size:18px;line-height:1.5;max-width:620px;margin:0 0 22px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.5)}
.hero-v17 .btn-gold{display:inline-block}
.vision-panel{display:grid;grid-template-columns:minmax(310px,.78fr) minmax(460px,1.22fr);gap:24px;align-items:center;background:rgba(3,35,70,.92);border:1px solid rgba(255,255,255,.65);border-radius:14px;padding:18px 20px 18px 34px;box-shadow:0 14px 35px rgba(0,0,0,.26);backdrop-filter:blur(5px);transform:translateY(44px)}
.vision-panel .vision-rule{width:48px;height:3px;background:#f6c72d;margin-bottom:10px}
.vision-panel h2{font-size:30px;line-height:1.04;margin:0 0 10px;color:#fff;font-family:Georgia,'Times New Roman',serif}
.vision-panel h2 span{color:#f6c72d}
.vision-panel p{font-size:14.5px;line-height:1.42;margin:0 0 14px;color:#f6f8fb}
.vision-panel .vision-play{display:inline-block;background:#0877df;color:#fff;text-decoration:none;font-weight:700;font-size:13px;padding:11px 16px;border-radius:24px}
.vision-panel .vision-status{font-size:10.5px;color:#c9d6e6;margin-top:10px}
.vision-panel .vision-video{border:1px solid rgba(255,255,255,.35);border-radius:10px;overflow:hidden;background:#000;box-shadow:none}
.vision-panel .vision-video video{width:100%;height:auto;aspect-ratio:910/512;display:block;background:#000}
.hero-v17 + .pillars{padding-top:72px}
@media(max-width:900px){
  .hero.hero-v17{min-height:auto;padding:30px 18px 0;background-image:linear-gradient(180deg,rgba(3,30,61,.12) 0%,rgba(3,30,61,.36) 30%,rgba(3,30,61,.92) 66%,rgba(3,30,61,.98) 100%),url('assets/hero.png') !important;background-position:center top !important}
  .hero-v17 .hero-copy{padding:160px 0 26px;max-width:100%}
  .hero-v17 .hero-kicker{font-size:10px;letter-spacing:1.8px}
  .hero-v17 h1{font-size:34px!important;line-height:1.05!important;margin-bottom:12px!important}
  .hero-v17 .hero-copy p{font-size:15.5px!important;line-height:1.45!important;background:rgba(3,34,69,.64)!important;padding:12px 14px!important;border-radius:9px!important;margin-bottom:14px!important}
  .vision-panel{grid-template-columns:1fr;gap:18px;padding:22px 16px 16px;transform:translateY(30px);border-radius:12px)}
  .vision-panel h2{font-size:27px}
  .vision-panel p{font-size:14.5px}
  .vision-panel .vision-video{order:2}
  .vision-panel .vision-copy{order:1}
  .vision-panel .vision-play{font-size:12px;padding:10px 13px}
  .hero-v17 + .pillars{padding-top:54px}
}
@media(max-width:420px){.hero-v17 .hero-copy{padding-top:135px}.hero-v17 h1{font-size:30px!important}.vision-panel h2{font-size:25px}}

/* ===== RNS V18 FINAL — accueil public, desktop + mobile ===== */
/* Le bloc ci-dessous surcharge proprement les essais V14–V17. */
.hero.hero-v17{
  min-height:720px !important;
  padding:52px 5% 0 !important;
  display:block !important;
  position:relative !important;
  color:#fff !important;
  background-image:
    linear-gradient(90deg,rgba(2,27,56,.92) 0%,rgba(2,27,56,.72) 35%,rgba(2,27,56,.16) 72%,rgba(2,27,56,.03) 100%),
    url('assets/hero.png') !important;
  background-size:cover !important;
  background-position:center 48% !important;
}
.hero-v17 .hero-main{max-width:1380px !important;margin:0 auto !important}
.hero-v17 .hero-copy{max-width:610px !important;padding:24px 0 36px !important}
.hero-v17 h1{font-size:50px !important;line-height:1.02 !important}
.hero-v17 .hero-copy p{background:transparent !important;padding:0 !important;border-radius:0 !important}
.vision-panel{
  display:grid !important;
  grid-template-columns:minmax(330px,.8fr) minmax(520px,1.2fr) !important;
  gap:24px !important;
  align-items:center !important;
  background:rgba(2,34,69,.94) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  border-radius:13px !important;
  padding:18px 20px 18px 34px !important;
  transform:translateY(32px) !important;
  overflow:hidden !important;
}
.vision-panel .vision-video video{object-fit:cover !important}
.vision-panel .vision-status{color:#d7e1ed !important;font-size:11px !important}
.hero-v17 + .pillars{padding-top:58px !important}

/* logo officiel sans fond ou recadrage artificiel */
.top .brand img{object-fit:contain !important;background:#fff !important;border-radius:50% !important}

@media(max-width:900px){
  .hero.hero-v17{
    min-height:auto !important;
    padding:0 16px 34px !important;
    background-image:
      linear-gradient(180deg,rgba(2,27,56,.03) 0%,rgba(2,27,56,.08) 24%,rgba(2,27,56,.48) 46%,rgba(2,27,56,.92) 68%,rgba(2,27,56,.98) 100%),
      url('assets/hero.png') !important;
    background-size:auto 430px !important;
    background-repeat:no-repeat !important;
    background-position:center top !important;
    background-color:#062d5e !important;
  }
  .hero-v17 .hero-main{width:100% !important}
  .hero-v17 .hero-copy{
    padding:245px 10px 22px !important;
    max-width:100% !important;
  }
  .hero-v17 .hero-kicker{font-size:10px !important;letter-spacing:1.7px !important;margin-bottom:10px !important}
  .hero-v17 h1{font-size:31px !important;line-height:1.04 !important;margin:0 0 13px !important;text-shadow:0 2px 10px rgba(0,0,0,.6) !important}
  .hero-v17 .hero-copy p{
    font-size:15.5px !important;line-height:1.45 !important;
    background:rgba(2,34,69,.76) !important;padding:12px 14px !important;
    border-radius:9px !important;margin:0 0 14px !important;
  }
  .hero-v17 .btn-gold{width:100% !important;text-align:center !important;box-sizing:border-box !important;padding:13px 16px !important}
  .vision-panel{
    display:grid !important;grid-template-columns:1fr !important;gap:16px !important;
    padding:20px 14px 14px !important;margin-top:10px !important;
    transform:none !important;border-radius:12px !important;
    background:rgba(2,34,69,.96) !important;
  }
  .vision-panel .vision-copy{order:1 !important}
  .vision-panel .vision-video{order:2 !important}
  .vision-panel h2{font-size:27px !important;line-height:1.04 !important;margin-bottom:12px !important}
  .vision-panel p{font-size:14.5px !important;line-height:1.45 !important}
  .vision-panel .vision-play{display:inline-block !important;font-size:12px !important;padding:10px 13px !important}
  .vision-panel .vision-status{font-size:10.5px !important;line-height:1.35 !important}
  .vision-panel .vision-video{border-radius:9px !important}
  .hero-v17 + .pillars{padding-top:18px !important}
}
@media(max-width:430px){
  .hero.hero-v17{background-size:auto 390px !important}
  .hero-v17 .hero-copy{padding-top:218px !important}
  .hero-v17 h1{font-size:29px !important}
  .vision-panel h2{font-size:25px !important}
}

.gallery-photo{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:#e8edf3}.field small{font-size:12px;color:#667;line-height:1.35}.pay strong{display:inline-block;margin-top:6px;font-size:20px;color:#07356d;letter-spacing:.5px}

.membership-amount{margin-top:10px;padding:13px 16px;border-radius:10px;background:#fff4cc;border:1px solid #e4b62e;color:#0b3768;font-size:18px;}
.membership-amount strong{font-weight:800;}

/* ===== V21 — accueil demandé ===== */
/* Logo officiel plus présent dans l’en-tête */
.top .brand img{width:76px !important;height:76px !important;flex-basis:76px !important;border-radius:0 !important;background:transparent !important;}
/* Palais de la Nation remonté : moins d’espace vide au-dessus du bâtiment */
.hero.hero-v17{background-position:center 64% !important;padding-top:22px !important;}
.hero-v17 .hero-copy{padding-top:8px !important;}
@media(max-width:900px){
 .top .brand img{width:64px !important;height:64px !important;flex-basis:64px !important;}
 .hero.hero-v17{background-size:auto 390px !important;background-position:center -42px !important;padding-top:0 !important;}
 .hero-v17 .hero-copy{padding-top:178px !important;}
}
@media(max-width:430px){
 .hero.hero-v17{background-size:auto 360px !important;background-position:center -50px !important;}
 .hero-v17 .hero-copy{padding-top:158px !important;}
}
