/* =========================================================
   NAIVELI V56.10.03 — Navigation Express + intro discrète
   Un accueil orienté action : une recherche, des raccourcis,
   NAÏA comme guide, et une navigation mobile persistante.
   ========================================================= */

.navx-primary-search{
  margin-top:28px;
  max-width:1000px;
  padding:18px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:24px;
  background:rgba(255,255,255,.92);
  box-shadow:0 20px 55px rgba(7,27,46,.18);
  backdrop-filter:blur(12px);
}
.navx-primary-search>label{
  display:block;
  margin:0 0 10px;
  color:#071b2e;
  font-size:clamp(1rem,1.5vw,1.2rem);
  font-weight:800;
}
.navx-search-grid{
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:10px !important;
}
.navx-primary-search #homeSearchCategory{display:none !important}
.navx-primary-search .smart-search-field{
  min-height:58px;
  background:#fff;
  border:1px solid rgba(7,27,46,.16);
  border-radius:15px;
}
.navx-primary-search .smart-search-field:focus-within{
  border-color:#c79a43;
  box-shadow:0 0 0 4px rgba(199,154,67,.12);
}
.navx-primary-search .smart-search-field input{
  font-size:1rem;
  color:#071b2e;
}
.navx-primary-search .btn{
  min-width:145px;
  min-height:58px;
  border-radius:15px;
  font-weight:800;
}
.navx-primary-search .search-hint{
  min-height:22px;
  margin:9px 4px 0;
  color:#546473;
}
.navx-primary-search .search-hint.error{color:#9b342d}

.navx-ambiguity{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.navx-ambiguity>span{margin-right:2px}
.navx-ambiguity button{
  border:1px solid rgba(7,27,46,.16);
  border-radius:999px;
  padding:7px 11px;
  background:#fff;
  color:#071b2e;
  font:inherit;
  font-size:.86rem;
  font-weight:750;
  cursor:pointer;
}
.navx-ambiguity button:hover,.navx-ambiguity button:focus-visible{
  border-color:#c79a43;
  outline:none;
}

.navx-quick-intents{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  max-width:1000px;
  margin:12px 0 0;
}
.navx-quick-intents a,.navx-quick-intents button{
  appearance:none;
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:9px;
  align-items:center;
  min-height:70px;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:15px;
  background:rgba(255,255,255,.88);
  color:#071b2e;
  text-align:left;
  text-decoration:none;
  box-shadow:0 10px 28px rgba(7,27,46,.12);
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.navx-quick-intents a:hover,.navx-quick-intents button:hover,
.navx-quick-intents a:focus-visible,.navx-quick-intents button:focus-visible{
  transform:translateY(-2px);
  border-color:#c79a43;
  box-shadow:0 15px 34px rgba(7,27,46,.18);
  outline:none;
}
.navx-quick-intents span{
  grid-row:1/3;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:#071b2e;
  color:#fff;
  font-weight:800;
}
.navx-quick-intents b{font-size:.92rem;line-height:1.15}
.navx-quick-intents small{font-size:.72rem;line-height:1.25;color:#64717d}
.navx-quick-intents button:last-child{
  background:#071b2e;
  color:#fff;
  border-color:#071b2e;
}
.navx-quick-intents button:last-child span{background:#c79a43;color:#071b2e}
.navx-quick-intents button:last-child small{color:rgba(255,255,255,.75)}

.navx-secondary-actions{
  margin-top:14px !important;
  align-items:center;
}
.navx-secondary-actions .btn{min-height:44px;padding:10px 16px}
.navx-partner-link{
  color:inherit;
  font-weight:700;
  text-decoration:none;
  font-size:.9rem;
}
.navx-partner-link:hover{text-decoration:underline}

.navx-dashboard-orientation{
  display:grid;
  grid-template-columns:1fr 1fr auto;
  gap:14px;
  align-items:stretch;
  margin:0 0 20px;
  padding:16px;
  border:1px solid rgba(7,27,46,.09);
  border-radius:20px;
  background:#fff;
  box-shadow:0 14px 40px rgba(7,27,46,.07);
}
.navx-orientation-copy{
  display:flex;
  gap:12px;
  align-items:center;
  padding:4px 8px;
}
.navx-orientation-number{
  display:grid;
  place-items:center;
  flex:0 0 38px;
  width:38px;height:38px;
  border-radius:50%;
  background:#f6efe2;
  color:#8a6424;
  font-weight:900;
}
.navx-orientation-copy div{display:grid;gap:3px}
.navx-orientation-copy b{color:#071b2e;font-size:.96rem}
.navx-orientation-copy small{color:#66727c;line-height:1.35}
.navx-dashboard-naia{
  align-self:center;
  min-height:48px;
  padding:0 18px;
  border:0;
  border-radius:14px;
  background:#071b2e;
  color:#fff;
  font-weight:800;
  cursor:pointer;
}
.navx-dashboard-naia:hover,.navx-dashboard-naia:focus-visible{outline:2px solid #c79a43;outline-offset:2px}

.navx-mobile-bar{display:none}

/* L'introduction de marque reste accessible, mais n'interrompt plus l'entrée. */
.v138-intro-replay.is-visible{
  opacity:.82;
}

@media (max-width:980px){
  .navx-quick-intents{grid-template-columns:repeat(3,minmax(0,1fr))}
  .navx-dashboard-orientation{grid-template-columns:1fr 1fr}
  .navx-dashboard-naia{grid-column:1/-1;width:100%}
}

@media (max-width:720px){
  body{padding-bottom:72px}
  .home-hero .hero-content{padding-bottom:24px}
  .navx-primary-search{padding:12px;border-radius:18px;margin-top:18px}
  .navx-search-grid{grid-template-columns:1fr !important}
  .navx-primary-search .btn{width:100%;min-height:52px}
  .navx-quick-intents{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .navx-quick-intents a,.navx-quick-intents button{min-height:64px;padding:9px 10px}
  .navx-quick-intents button:last-child{grid-column:1/-1}
  .navx-secondary-actions{display:grid !important;grid-template-columns:1fr;gap:9px}
  .navx-secondary-actions .btn{text-align:center}
  .navx-partner-link{text-align:center;padding:4px}
  .navx-dashboard-orientation{grid-template-columns:1fr;padding:12px}
  .navx-dashboard-naia{grid-column:auto}
  .v141-dashboard-profile{display:none !important}
  .v141-action-grid{grid-template-columns:1fr !important}

  .navx-mobile-bar{
    position:fixed;
    z-index:9998;
    left:8px;right:8px;bottom:8px;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    min-height:58px;
    padding:5px;
    border:1px solid rgba(7,27,46,.12);
    border-radius:18px;
    background:rgba(255,255,255,.96);
    box-shadow:0 12px 35px rgba(7,27,46,.22);
    backdrop-filter:blur(14px);
  }
  .navx-mobile-bar a,.navx-mobile-bar button{
    appearance:none;
    display:grid;
    place-items:center;
    gap:1px;
    padding:4px 2px;
    border:0;
    border-radius:12px;
    background:transparent;
    color:#071b2e;
    text-decoration:none;
    font:inherit;
    cursor:pointer;
  }
  .navx-mobile-bar a:active,.navx-mobile-bar button:active{background:#f5efe5}
  .navx-mobile-bar span{font-size:1.08rem;font-weight:850;line-height:1}
  .navx-mobile-bar small{font-size:.63rem;font-weight:750}
  .navx-mobile-bar button:last-child{background:#071b2e;color:#fff}

  .floating{bottom:82px !important}
  .v160-launcher{display:none !important}
  /* V56.10.02 — l’ancienne expérience de marque reste accessible sur mobile. */
  .v138-intro-replay{
    display:block !important;
    max-width:calc(100vw - 28px);
    white-space:nowrap;
  }
}

@media (max-width:420px){
  .navx-quick-intents{grid-template-columns:1fr}
  .navx-quick-intents button:last-child{grid-column:auto}
  .navx-mobile-bar{left:5px;right:5px;bottom:5px}
}


/* =========================================================
   V56.10.03 — Accès discret à l'introduction de marque
   Placé dans l'en-tête, près du logo, sans gêner l'action principale.
   ========================================================= */
.home-header .navx-intro-link{
  position:static !important;
  right:auto !important;
  bottom:auto !important;
  z-index:auto !important;
  display:inline-flex !important;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
  min-height:32px;
  margin-left:-8px;
  padding:6px 10px !important;
  border:1px solid rgba(235,202,112,.38) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.055) !important;
  color:rgba(255,255,255,.84) !important;
  box-shadow:none !important;
  backdrop-filter:blur(8px);
  font-size:9.5px !important;
  font-weight:800;
  letter-spacing:.055em !important;
  text-transform:uppercase;
  white-space:nowrap;
  transform:none !important;
  transition:border-color .2s ease,background .2s ease,color .2s ease,opacity .2s ease !important;
}
.home-header .navx-intro-link.is-visible{
  opacity:.9 !important;
  pointer-events:auto !important;
  transform:none !important;
}
.home-header .navx-intro-link:hover,
.home-header .navx-intro-link:focus-visible{
  opacity:1 !important;
  border-color:rgba(244,216,139,.8) !important;
  background:rgba(255,255,255,.11) !important;
  color:#f3d989 !important;
  outline:none;
}
.navx-intro-play{
  color:#e0b650;
  font-size:9px;
  line-height:1;
}
.navx-intro-mobile{display:none}

@media (max-width:1180px){
  .home-header .navx-intro-link{
    margin-left:-4px;
    padding:6px 8px !important;
    font-size:9px !important;
  }
}
@media (max-width:1080px){
  .home-header .header-inner{justify-content:flex-start}
  .home-header .header-actions{margin-left:auto}
  .home-header .navx-intro-link{margin-left:0}
}
@media (max-width:700px){
  .home-header .navx-intro-link{
    min-height:30px;
    padding:5px 8px !important;
    font-size:8.5px !important;
    letter-spacing:.035em !important;
  }
  .navx-intro-desktop{display:none}
  .navx-intro-mobile{display:inline}
}
@media (max-width:390px){
  .home-header .navx-intro-link{
    padding:5px 7px !important;
  }
  .navx-intro-mobile{display:none}
  .navx-intro-play{font-size:10px}
}
