/* FAP V92 — Header premium, unique et aéré */

/* Base desktop */
@media (min-width:1081px){
  .topnav .wrap.navrow,
  .fap-header .wrap.navrow{
    width:min(1760px,96%)!important;
    max-width:none!important;
    height:82px!important;
    min-height:82px!important;
    padding:0 12px!important;
    display:flex!important;
    align-items:center!important;
    gap:20px!important;
  }
  .topnav .brand-logo,.fap-header .brand-logo{
    flex:0 0 72px!important;
    margin:0!important;
  }
  .topnav .brand-logo img,.fap-header .brand-logo img{
    width:64px!important;
    height:64px!important;
    object-fit:contain!important;
  }
  .topnav .navlinks,.fap-header .navlinks{
    flex:1 1 auto!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:11px!important;
    margin:0!important;
  }
  .topnav .navlinks>a,
  .topnav .nav-dropdown-toggle,
  .fap-header .navlinks>a,
  .fap-header .nav-dropdown-toggle{
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    padding:0 8px!important;
    margin:0!important;
    border:0!important;
    border-radius:10px!important;
    background:transparent!important;
    color:#173d2a!important;
    font-size:13px!important;
    font-weight:800!important;
    line-height:1.1!important;
    letter-spacing:0!important;
    white-space:nowrap!important;
    box-shadow:none!important;
    transition:color .18s ease, background .18s ease!important;
  }
  .topnav .navlinks>a:hover,
  .topnav .nav-dropdown-toggle:hover,
  .fap-header .navlinks>a:hover,
  .fap-header .nav-dropdown-toggle:hover{
    color:#9a6b00!important;
    background:#fbf7ed!important;
  }
  .topnav .navlinks>a.fap-nav-active,
  .topnav .nav-dropdown-toggle.fap-nav-active,
  .fap-header .navlinks>a.fap-nav-active,
  .fap-header .nav-dropdown-toggle.fap-nav-active{
    color:#173d2a!important;
    background:#fbf7ed!important;
  }
  .topnav .navlinks>a.fap-nav-active::after,
  .topnav .nav-dropdown-toggle.fap-nav-active::after,
  .fap-header .navlinks>a.fap-nav-active::after,
  .fap-header .nav-dropdown-toggle.fap-nav-active::after{
    content:"";
    position:absolute;
    left:10px;
    right:10px;
    bottom:2px;
    height:3px;
    border-radius:99px;
    background:#d6a13b;
  }
  .topnav .nav-dropdown,.fap-header .nav-dropdown{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
  }
  .topnav .nav-dropdown-menu,.fap-header .nav-dropdown-menu{
    min-width:230px!important;
    padding:9px!important;
    border-radius:14px!important;
    border:1px solid #e5decf!important;
    box-shadow:0 16px 38px rgba(20,50,35,.14)!important;
  }
  .topnav .nav-dropdown-menu a,.fap-header .nav-dropdown-menu a{
    border-radius:9px!important;
    padding:10px 12px!important;
    font-size:13px!important;
  }
  .topnav .header-actions,.fap-header .header-actions{
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    margin-left:2px!important;
  }
  .topnav .fap-lang-current,.fap-header .fap-lang-current{
    min-width:70px!important;
    height:44px!important;
    padding:0 10px!important;
    border-radius:13px!important;
  }
  .topnav .reservation-nav,.fap-header .reservation-nav{
    min-height:44px!important;
    padding:0 14px!important;
    border-radius:13px!important;
    font-size:12.5px!important;
  }
  .topnav .whatsapp-nav,.topnav .instagram-nav,
  .fap-header .whatsapp-nav,.fap-header .instagram-nav{
    width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    border-radius:50%!important;
  }
  .fap-header .reservation-nav.fap-nav-active,
  .topnav .reservation-nav.fap-nav-active{
    box-shadow:0 0 0 3px rgba(214,161,59,.24)!important;
  }
}

/* Desktop intermédiaire : garde de l'air sans écraser le texte */
@media (min-width:1081px) and (max-width:1450px){
  .topnav .wrap.navrow,.fap-header .wrap.navrow{
    width:98.5%!important;
    gap:10px!important;
    padding:0 8px!important;
  }
  .topnav .brand-logo,.fap-header .brand-logo{flex-basis:58px!important}
  .topnav .brand-logo img,.fap-header .brand-logo img{width:54px!important;height:54px!important}
  .topnav .navlinks,.fap-header .navlinks{gap:4px!important}
  .topnav .navlinks>a,.topnav .nav-dropdown-toggle,
  .fap-header .navlinks>a,.fap-header .nav-dropdown-toggle{
    padding:0 6px!important;
    font-size:11.8px!important;
  }
  .topnav .header-actions,.fap-header .header-actions{gap:6px!important}
  .topnav .fap-lang-current,.fap-header .fap-lang-current{min-width:64px!important;height:42px!important;padding:0 8px!important}
  .topnav .reservation-nav,.fap-header .reservation-nav{min-height:42px!important;padding:0 10px!important;font-size:11.5px!important}
  .topnav .whatsapp-nav,.topnav .instagram-nav,
  .fap-header .whatsapp-nav,.fap-header .instagram-nav{width:42px!important;height:42px!important;min-height:42px!important}
}

/* Mobile/tablette : menus déroulants propres dans le menu vertical */
@media (max-width:1080px){
  .fap-header .navlinks .nav-dropdown,
  .topnav .navlinks .nav-dropdown{width:100%!important;display:block!important}
  .fap-header .navlinks>a,
  .fap-header .nav-dropdown-toggle,
  .topnav .navlinks>a,
  .topnav .nav-dropdown-toggle{
    width:100%!important;
    justify-content:space-between!important;
  }
  .fap-header .nav-dropdown-menu,
  .topnav .nav-dropdown-menu{
    margin:4px 0 8px!important;
    border-radius:12px!important;
  }
  .fap-header .nav-dropdown-toggle.fap-nav-active,
  .fap-header .navlinks>a.fap-nav-active,
  .topnav .nav-dropdown-toggle.fap-nav-active,
  .topnav .navlinks>a.fap-nav-active{
    color:#9a6b00!important;
    font-weight:900!important;
  }
}

/* Para quem? — introduction lisible avant les cartes */
.para-quem-intro{
  max-width:960px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.para-quem-intro h2{margin-bottom:18px!important}
.para-quem-intro>p{
  max-width:900px!important;
  margin:0 auto 14px!important;
  line-height:1.65!important;
}
.para-quem-intro .participation-line{
  margin:20px auto 0!important;
  max-width:760px!important;
  padding:12px 18px!important;
  border-radius:14px!important;
  background:#f7f0df!important;
  border:1px solid #ead7aa!important;
}


/* V98 — contraste lisible du message "Vous ne savez pas quoi choisir ?" */
.para-quem-intro .participation-line{
  color:#173d2a!important;
}
.para-quem-intro .participation-line strong{
  color:#b27a16!important;
}


/* V105 — Mobile : garder le bandeau visible en permanence */
@media (max-width:1080px){
  html{
    scroll-padding-top:82px!important;
  }
  body{
    padding-top:82px!important;
  }

  .topnav,
  .fap-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    z-index:100000!important;
    transform:none!important;
    translate:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  .topnav .wrap.navrow,
  .fap-header .wrap.navrow{
    min-height:82px!important;
    height:82px!important;
  }
}

/* Très petits écrans : même principe, bandeau légèrement plus compact */
@media (max-width:620px){
  html{
    scroll-padding-top:76px!important;
  }
  body{
    padding-top:76px!important;
  }

  .topnav .wrap.navrow,
  .fap-header .wrap.navrow{
    min-height:76px!important;
    height:76px!important;
  }
}
