/* ========================================================================== 
   S2IA V58 — TV / Desktop / Mobile / Popups
   Feuille finale chargée après tous les historiques.
   ========================================================================== */
:root{
  --v58-navy:#071f46;
  --v58-blue:#0d4da8;
  --v58-orange:#f26722;
  --v58-orange-dark:#d84f0b;
  --v58-green:#23833a;
  --v58-ink:#102a50;
  --v58-muted:#526985;
  --v58-light:#eef2f6;
  --v58-line:#d7e0ea;
  --v58-header-height:92px;
}
html{
  scroll-padding-top:calc(var(--v58-header-height) + 16px)!important;
  overflow-x:hidden!important;
}
html body{
  margin:0!important;
  padding:0!important;
  overflow-x:hidden!important;
}
html body > main,
html body main{
  margin:0!important;
  padding-top:var(--v58-header-height)!important;
}

/* --------------------------------------------------------------------------
   HEADER FIXE — DESKTOP / LAPTOP
   -------------------------------------------------------------------------- */
html body .site-header{
  position:fixed!important;
  inset:0 0 auto 0!important;
  z-index:100000!important;
  height:var(--v58-header-height)!important;
  min-height:var(--v58-header-height)!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  background:rgba(255,255,255,.985)!important;
  border:0!important;
  border-bottom:1px solid rgba(7,31,70,.10)!important;
  box-shadow:0 8px 28px rgba(7,31,70,.12)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
html body .site-header .top-shell{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:minmax(230px,300px) minmax(470px,1fr) minmax(390px,470px)!important;
  grid-template-areas:"brand nav countdown"!important;
  grid-template-rows:1fr!important;
  align-items:center!important;
  gap:14px!important;
  width:min(calc(100% - 24px),1960px)!important;
  max-width:1960px!important;
  height:82px!important;
  min-height:82px!important;
  margin:5px auto!important;
  padding:5px 14px!important;
  overflow:visible!important;
  background:#fff!important;
  border:1px solid #dce4ed!important;
  border-radius:13px!important;
  box-shadow:0 8px 24px rgba(7,31,70,.065)!important;
}
html body .site-header .brand{
  grid-area:brand!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:100%!important;
  height:72px!important;
  min-height:72px!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body .site-header .top-shell > .brand > img.header-logo-exact,
html body .site-header .brand img{
  display:block!important;
  width:min(292px,100%)!important;
  min-width:0!important;
  max-width:292px!important;
  height:72px!important;
  min-height:0!important;
  max-height:72px!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:left center!important;
  transform:none!important;
  filter:none!important;
}

/* Barre de navigation rectangulaire orange — sans pastilles arrondies. */
html body .site-header .main-nav{
  grid-area:nav!important;
  position:static!important;
  inset:auto!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body .site-header .main-nav .mobile-nav-head,
html body .site-header .main-nav .mobile-nav-contact{
  display:none!important;
}
html body .site-header .main-nav .mobile-nav-body{
  display:contents!important;
}
html body .site-header .main-nav .main-nav-links{
  display:flex!important;
  align-items:stretch!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  width:100%!important;
  min-height:50px!important;
  margin:0!important;
  padding:0 4px!important;
  gap:0!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,var(--v58-orange-dark) 0%,var(--v58-orange) 58%,#f58a3d 100%)!important;
  border:1px solid rgba(184,65,7,.28)!important;
  border-radius:8px!important;
  box-shadow:0 9px 24px rgba(242,103,34,.24)!important;
}
html body .site-header .main-nav .main-nav-links > a{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:1 1 auto!important;
  min-width:0!important;
  min-height:50px!important;
  height:50px!important;
  margin:0!important;
  padding:0 12px!important;
  overflow:hidden!important;
  background:transparent!important;
  border:0!important;
  border-right:1px solid rgba(255,255,255,.28)!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#fff!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:16px!important;
  font-weight:900!important;
  line-height:1.15!important;
  letter-spacing:-.025em!important;
  text-align:center!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  transform:none!important;
  opacity:1!important;
  transition:background .2s ease,color .2s ease,box-shadow .2s ease!important;
}
html body .site-header .main-nav .main-nav-links > a:last-child{border-right:0!important}
html body .site-header .main-nav .main-nav-links > a::after{
  content:""!important;
  position:absolute!important;
  left:15%!important;
  right:15%!important;
  bottom:0!important;
  height:4px!important;
  background:#fff!important;
  transform:scaleX(0)!important;
  transform-origin:center!important;
  transition:transform .2s ease!important;
}
html body .site-header .main-nav .main-nav-links > a:hover,
html body .site-header .main-nav .main-nav-links > a:focus-visible,
html body .site-header .main-nav .main-nav-links > a.is-active{
  background:rgba(7,31,70,.94)!important;
  color:#fff!important;
  border-color:transparent!important;
  outline:none!important;
  transform:none!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)!important;
}
html body .site-header .main-nav .main-nav-links > a:hover::after,
html body .site-header .main-nav .main-nav-links > a:focus-visible::after,
html body .site-header .main-nav .main-nav-links > a.is-active::after{
  transform:scaleX(1)!important;
}
html body .site-header .main-nav .mobile-nav-index,
html body .site-header .main-nav .mobile-nav-arrow{display:none!important}
html body .site-header .nav-toggle{display:none!important}

/* Compteur desktop — Mois / Jours / Heures / Minutes / Secondes. */
html body .site-header .header-countdown{
  grid-area:countdown!important;
  position:relative!important;
  inset:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  height:66px!important;
  min-height:66px!important;
  margin:0!important;
  padding:7px 9px!important;
  overflow:visible!important;
  background:linear-gradient(135deg,#061a3d 0%,#0a2e63 100%)!important;
  border:1px solid rgba(7,31,70,.22)!important;
  border-top:4px solid var(--v58-orange)!important;
  border-radius:11px!important;
  box-shadow:0 8px 20px rgba(7,31,70,.18),inset 0 1px 0 rgba(255,255,255,.12)!important;
  transform:none!important;
}
html body .site-header .header-countdown::before{display:none!important;content:none!important}
html body .site-header .header-countdown .countdown-grid{
  display:grid!important;
  grid-template-columns:minmax(54px,1fr) 6px minmax(54px,1fr) 6px minmax(54px,1fr) 6px minmax(54px,1fr) 6px minmax(54px,1fr)!important;
  align-items:start!important;
  justify-content:center!important;
  width:100%!important;
  max-width:none!important;
  gap:3px!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}
html body .site-header .countdown-unit{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:4px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
html body .site-header .countdown-digits{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1px!important;
  width:100%!important;
  min-height:33px!important;
  margin:0!important;
  padding:0 4px!important;
  overflow:hidden!important;
  background:rgba(255,255,255,.09)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:6px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
html body .site-header .flip-digit{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:15px!important;
  height:31px!important;
  min-height:31px!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#fff!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:23px!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:-.08em!important;
  text-shadow:0 2px 5px rgba(0,0,0,.25)!important;
}
html body .site-header .flip-digit::after{display:none!important;content:none!important}
html body .site-header .countdown-unit small{
  display:block!important;
  margin:0!important;
  color:#fff!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:7.5px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  opacity:.90!important;
}
html body .site-header .countdown-separator{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:6px!important;
  height:33px!important;
  margin:0!important;
  padding:0!important;
  color:#ffb077!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:17px!important;
  font-weight:900!important;
  line-height:33px!important;
}
html body .countdown-mobile-close{display:none!important}

/* --------------------------------------------------------------------------
   SLIDER — sans flèches, pastilles discrètes en bas
   -------------------------------------------------------------------------- */
html body .hero-slider,
html body main > .hero-slider{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  line-height:0!important;
  background:#07182f!important;
  border:0!important;
}
html body .hero-slider .slider-stage{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:1999/786!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#07182f!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  line-height:0!important;
}
html body .hero-slider .slider-viewport{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
html body .hero-slider .slider-stage .slide,
html body .hero-slider .slider-stage [data-slide]{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
html body .hero-slider .slide-picture,
html body .hero-slider .slide-media,
html body .hero-slider .slide img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
}
html body .hero-slider .slider-arrow,
html body .hero-slider [data-prev],
html body .hero-slider [data-next]{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
html body .hero-slider .slider-control-bar{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  bottom:16px!important;
  z-index:12!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  transform:translateX(-50%)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body .hero-slider .mobile-slider-dots{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:8px 13px!important;
  background:rgba(3,15,34,.55)!important;
  border:1px solid rgba(255,255,255,.26)!important;
  border-radius:999px!important;
  box-shadow:0 8px 24px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}
html body .hero-slider .mobile-slider-dots button{
  display:block!important;
  width:9px!important;
  min-width:9px!important;
  height:9px!important;
  min-height:9px!important;
  margin:0!important;
  padding:0!important;
  background:rgba(255,255,255,.72)!important;
  border:0!important;
  border-radius:999px!important;
  box-shadow:none!important;
  opacity:1!important;
  cursor:pointer!important;
  transition:width .22s ease,background .22s ease!important;
}
html body .hero-slider .mobile-slider-dots button.is-active{
  width:31px!important;
  background:var(--v58-orange)!important;
}
html body .hero-actions{margin-top:0!important;padding-top:0!important;border-top:0!important}

/* --------------------------------------------------------------------------
   TITRE / PRÉSENTATION DU SALON
   -------------------------------------------------------------------------- */
html body .salon-presentation-head .salon-subtitle-colored,
html body .salon-presentation-head .subtitle-red{
  font-family:Verdana,Arial,sans-serif!important;
  font-weight:950!important;
}
html body .salon-presentation-text,
html body .salon-presentation-text p{
  font-family:Verdana,Arial,sans-serif!important;
  text-align:justify!important;
  text-justify:inter-word!important;
}

/* --------------------------------------------------------------------------
   CHIFFRES CLÉS — fond gris clair, image plein cadre, texte blanc superposé
   -------------------------------------------------------------------------- */
html body .s2ia-keyfig-black{
  position:relative!important;
  margin:0!important;
  padding:74px 0 84px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#f4f6f8 0%,#e8edf2 100%)!important;
  color:var(--v58-navy)!important;
}
html body .s2ia-keyfig-black::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:radial-gradient(circle at 10% 12%,rgba(13,77,168,.08),transparent 28%),radial-gradient(circle at 92% 80%,rgba(35,131,58,.08),transparent 24%)!important;
}
html body .s2ia-keyfig-inner{
  position:relative!important;
  z-index:1!important;
  width:min(94%,1700px)!important;
  max-width:1700px!important;
  margin:0 auto!important;
}
html body .s2ia-keyfig-black .s2ia-section-title-dark{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:20px!important;
  margin:0 auto 34px!important;
}
html body .s2ia-keyfig-black .s2ia-section-title-dark h2{
  color:var(--v58-navy)!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:clamp(34px,3.1vw,54px)!important;
  font-weight:950!important;
  line-height:1.1!important;
  text-align:center!important;
}
html body .s2ia-keyfig-black .s2ia-section-title-dark span{
  display:block!important;
  width:150px!important;
  height:5px!important;
  border-radius:999px!important;
  background:var(--v58-navy)!important;
  opacity:1!important;
}
html body .s2ia-keyfig-black .s2ia-section-title-dark span:last-child{background:var(--v58-green)!important}
html body .keyfig-grid-premium{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
html body .keyfig-premium-card{
  position:relative!important;
  display:block!important;
  min-width:0!important;
  min-height:270px!important;
  aspect-ratio:16/11!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#1a2f4e!important;
  border:1px solid rgba(7,31,70,.10)!important;
  border-radius:20px!important;
  box-shadow:0 16px 34px rgba(7,31,70,.14)!important;
  isolation:isolate!important;
}
html body .keyfig-premium-card::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  background:linear-gradient(180deg,rgba(4,17,38,.02) 22%,rgba(4,17,38,.28) 52%,rgba(4,17,38,.92) 100%)!important;
  pointer-events:none!important;
}
html body .keyfig-premium-card::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:2!important;
  height:5px!important;
  background:linear-gradient(90deg,var(--v58-blue),var(--v58-green))!important;
}
html body .keyfig-premium-icon{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#dfe6ee!important;
  border:0!important;
  border-radius:0!important;
}
html body .keyfig-premium-icon img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:none!important;
  transform:scale(1.01)!important;
}
html body .keyfig-premium-card strong{
  position:absolute!important;
  left:24px!important;
  right:20px!important;
  bottom:56px!important;
  z-index:3!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:clamp(30px,2.5vw,48px)!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
  text-shadow:0 4px 14px rgba(0,0,0,.58)!important;
}
html body .keyfig-premium-card p{
  position:absolute!important;
  left:25px!important;
  right:20px!important;
  bottom:23px!important;
  z-index:3!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:950!important;
  line-height:1.25!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  text-shadow:0 3px 12px rgba(0,0,0,.66)!important;
}

/* --------------------------------------------------------------------------
   PACKS — boutons toujours visibles sur mobile
   -------------------------------------------------------------------------- */
html body .professional-pack-card{
  height:auto!important;
  min-height:0!important;
  overflow:hidden!important;
}
html body .professional-pack-content{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  min-height:0!important;
  overflow:visible!important;
}
html body .pack-card-actions{
  position:static!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  width:100%!important;
  margin-top:auto!important;
  padding-top:18px!important;
  visibility:visible!important;
  opacity:1!important;
  overflow:visible!important;
}
html body .pack-card-actions button,
html body .pack-action-outline,
html body .pack-action-primary{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:48px!important;
  height:auto!important;
  padding:10px 13px!important;
  visibility:visible!important;
  opacity:1!important;
  overflow:visible!important;
  white-space:normal!important;
}

/* --------------------------------------------------------------------------
   POPUPS — affichage stable, aucun chevauchement image / texte / formulaire
   -------------------------------------------------------------------------- */
html body .premium-modal[aria-hidden="true"]{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
html body .premium-modal.is-open,
html body .premium-modal[aria-hidden="false"]{
  position:fixed!important;
  inset:0!important;
  z-index:100500!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:20px!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
}
html body .premium-modal .modal-backdrop{
  position:fixed!important;
  inset:0!important;
  background:rgba(3,14,32,.76)!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}
html body .premium-modal .modal-card{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:minmax(360px,.86fr) minmax(520px,1.14fr)!important;
  align-items:stretch!important;
  width:min(1420px,96vw)!important;
  max-width:1420px!important;
  height:auto!important;
  min-height:0!important;
  max-height:calc(100dvh - 40px)!important;
  margin:auto!important;
  padding:0!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(255,255,255,.34)!important;
  border-radius:24px!important;
  box-shadow:0 38px 110px rgba(0,0,0,.42)!important;
}
html body .premium-modal .modal-close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  z-index:20!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  height:44px!important;
  margin:0!important;
  padding:0 0 3px!important;
  background:#fff!important;
  color:var(--v58-navy)!important;
  border:1px solid rgba(7,31,70,.14)!important;
  border-radius:50%!important;
  box-shadow:0 10px 26px rgba(7,31,70,.18)!important;
  font-size:29px!important;
  line-height:1!important;
  cursor:pointer!important;
}
html body .premium-modal .modal-visual{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  min-height:620px!important;
  height:auto!important;
  max-height:calc(100dvh - 40px)!important;
  margin:0!important;
  padding:38px!important;
  overflow:hidden!important;
  background:#081d42!important;
  color:#fff!important;
}
html body .premium-modal .modal-visual > img,
html body .premium-modal .modal-visual .stand-slide{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center!important;
  opacity:1!important;
}
html body .premium-modal .modal-visual::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  background:linear-gradient(180deg,rgba(6,23,53,.08) 18%,rgba(6,23,53,.38) 54%,rgba(6,23,53,.96) 100%)!important;
}
html body .premium-modal .modal-visual-content{
  position:relative!important;
  z-index:3!important;
  display:block!important;
  width:100%!important;
  max-width:620px!important;
  margin:0!important;
  padding:22px!important;
  overflow:visible!important;
  background:rgba(4,18,42,.62)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:18px!important;
  box-shadow:0 18px 44px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}
html body .premium-modal .modal-visual-content h3{
  margin:0 0 12px!important;
  color:#fff!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:clamp(27px,2.2vw,38px)!important;
  font-weight:950!important;
  line-height:1.16!important;
}
html body .premium-modal .modal-visual-content p,
html body .premium-modal .modal-visual-content li{
  color:#edf5ff!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:650!important;
  line-height:1.58!important;
}
html body .premium-modal .modal-form-panel{
  position:relative!important;
  display:block!important;
  min-width:0!important;
  max-height:calc(100dvh - 40px)!important;
  margin:0!important;
  padding:30px 36px 34px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  background:#fff!important;
  scrollbar-width:thin!important;
  scrollbar-color:#a9b6c6 transparent!important;
}
html body .premium-modal .modal-logo{
  display:block!important;
  width:190px!important;
  max-width:48%!important;
  height:auto!important;
  max-height:78px!important;
  margin:0 auto 10px!important;
  object-fit:contain!important;
}
html body .premium-modal .modal-form-panel h2{
  margin:0!important;
  color:var(--v58-navy)!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:clamp(27px,2.4vw,40px)!important;
  font-weight:950!important;
  line-height:1.12!important;
  text-align:center!important;
}
html body .premium-modal .modal-intro{
  max-width:700px!important;
  margin:10px auto 18px!important;
  color:var(--v58-muted)!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:650!important;
  line-height:1.55!important;
  text-align:center!important;
}
html body .premium-modal .premium-form{
  width:100%!important;
  margin:0!important;
  padding:20px!important;
  overflow:visible!important;
  background:#f7f9fc!important;
  border:1px solid #dfe6ef!important;
  border-radius:18px!important;
  box-shadow:none!important;
}
html body .premium-modal .form-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
html body .premium-modal .premium-form label{
  min-width:0!important;
  margin:0 0 12px!important;
  color:var(--v58-navy)!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1.35!important;
}
html body .premium-modal .premium-form input,
html body .premium-modal .premium-form select,
html body .premium-modal .premium-form textarea{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:11px 12px!important;
  background:#fff!important;
  border:1px solid #cfd9e5!important;
  border-radius:10px!important;
  color:#172a47!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:14px!important;
  line-height:1.35!important;
  box-shadow:none!important;
}
html body .premium-modal .premium-form input,
html body .premium-modal .premium-form select{min-height:45px!important}
html body .premium-modal .premium-form textarea{min-height:105px!important;resize:vertical!important}
html body .premium-modal .modal-submit{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:50px!important;
  margin:5px 0 0!important;
  padding:10px 18px!important;
  border-radius:11px!important;
  font-family:Verdana,Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:950!important;
}

/* Popup du message du Président. */
html body .president-message-modal.is-open,
html body .president-message-modal[aria-hidden="false"]{
  align-items:center!important;
  justify-content:center!important;
  padding:20px!important;
}
html body .president-message-modal .president-message-modal-card{
  display:block!important;
  width:min(980px,95vw)!important;
  max-width:980px!important;
  height:auto!important;
  min-height:0!important;
  max-height:calc(100dvh - 40px)!important;
  margin:auto!important;
  padding:36px 42px 40px!important;
  overflow-y:auto!important;
  background:var(--president-popup-bg,#fff)!important;
  border-radius:24px!important;
}
html body .president-popup-heading{
  display:grid!important;
  grid-template-columns:128px minmax(0,1fr)!important;
  align-items:center!important;
  gap:24px!important;
  margin:0 0 26px!important;
  padding:0 44px 0 0!important;
}
html body .president-popup-heading img{
  display:block!important;
  width:128px!important;
  height:148px!important;
  object-fit:cover!important;
  object-position:center top!important;
  border-radius:18px!important;
  box-shadow:0 14px 30px rgba(7,31,70,.16)!important;
}
html body .president-popup-heading h2{
  margin:0!important;
  font-size:min(var(--president-popup-title-size,32px),40px)!important;
  line-height:1.15!important;
}
html body .president-popup-content{
  font-size:min(var(--president-popup-text-size,18px),20px)!important;
  line-height:1.78!important;
  overflow-wrap:anywhere!important;
}

/* Popups détaillés des packs. */
html body .stand-pack-modal-card,
html body .real-stand-modal{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr)!important;
  width:min(1460px,96vw)!important;
  max-width:1460px!important;
  max-height:calc(100dvh - 40px)!important;
  margin:auto!important;
  padding:0!important;
  overflow:hidden!important;
}
html body .stand-pack-photo{
  min-height:560px!important;
  height:auto!important;
  overflow:hidden!important;
  background:#e6ecf2!important;
}
html body .stand-pack-photo img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:560px!important;
  object-fit:cover!important;
  object-position:center!important;
}
html body .stand-pack-copy{
  display:flex!important;
  flex-direction:column!important;
  max-height:calc(100dvh - 40px)!important;
  margin:0!important;
  padding:48px 38px 34px!important;
  overflow-y:auto!important;
}
html body .stand-pack-copy .pack-cta{
  display:flex!important;
  width:100%!important;
  min-height:50px!important;
  margin-top:18px!important;
}
html body.modal-open{overflow:hidden!important}

/* --------------------------------------------------------------------------
   LAPTOP COMPACT
   -------------------------------------------------------------------------- */
@media (min-width:1181px) and (max-width:1500px){
  :root{--v58-header-height:88px}
  html body .site-header .top-shell{
    grid-template-columns:minmax(200px,236px) minmax(450px,1fr) minmax(350px,400px)!important;
    width:calc(100% - 14px)!important;
    height:80px!important;
    margin:4px auto!important;
    gap:8px!important;
    padding:4px 8px!important;
  }
  html body .site-header .brand{height:68px!important;min-height:68px!important}
  html body .site-header .top-shell > .brand > img.header-logo-exact,
  html body .site-header .brand img{width:228px!important;max-width:228px!important;height:68px!important;max-height:68px!important}
  html body .site-header .main-nav .main-nav-links > a{padding:0 8px!important;font-size:13.5px!important}
  html body .site-header .header-countdown{height:63px!important;padding:6px 6px!important}
  html body .site-header .header-countdown .countdown-grid{grid-template-columns:minmax(45px,1fr) 4px minmax(45px,1fr) 4px minmax(45px,1fr) 4px minmax(45px,1fr) 4px minmax(45px,1fr)!important;gap:2px!important}
  html body .site-header .flip-digit{font-size:20px!important;min-width:13px!important}
  html body .site-header .countdown-unit small{font-size:6.4px!important;letter-spacing:.035em!important}
  html body .site-header .countdown-separator{width:4px!important;font-size:13px!important}
}

/* --------------------------------------------------------------------------
   MOBILE / TABLETTE — logo seul en haut, compteur flottant et menu scrollable
   -------------------------------------------------------------------------- */
@media (max-width:1180px){
  :root{--v58-header-height:82px}
  html{scroll-padding-top:calc(var(--v58-header-height) + 8px)!important}
  html body > main,
  html body main{padding-top:var(--v58-header-height)!important}
  html body .site-header{
    height:var(--v58-header-height)!important;
    min-height:var(--v58-header-height)!important;
    background:#fff!important;
    border-bottom:1px solid #dce4ed!important;
    box-shadow:0 5px 18px rgba(7,31,70,.11)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  html body .site-header .top-shell{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 58px!important;
    grid-template-rows:82px!important;
    grid-template-areas:"brand toggle"!important;
    align-items:center!important;
    gap:6px!important;
    width:100%!important;
    max-width:none!important;
    height:82px!important;
    min-height:82px!important;
    margin:0!important;
    padding:2px 10px!important;
    overflow:visible!important;
    background:#fff!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  html body .site-header .brand{
    grid-area:brand!important;
    height:78px!important;
    min-height:78px!important;
    overflow:visible!important;
  }
  html body .site-header .top-shell > .brand > img.header-logo-exact,
  html body .site-header .brand img{
    display:block!important;
    width:min(325px,calc(100vw - 78px))!important;
    min-width:0!important;
    max-width:min(325px,calc(100vw - 78px))!important;
    height:78px!important;
    min-height:0!important;
    max-height:78px!important;
    object-fit:contain!important;
    object-position:left center!important;
    transform:none!important;
  }
  html body .site-header .nav-toggle{
    grid-area:toggle!important;
    position:relative!important;
    inset:auto!important;
    z-index:100020!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    width:54px!important;
    min-width:54px!important;
    height:54px!important;
    min-height:54px!important;
    margin:0!important;
    padding:0!important;
    background:linear-gradient(145deg,var(--v58-navy),#0b397b)!important;
    border:0!important;
    border-radius:14px!important;
    box-shadow:0 8px 20px rgba(7,31,70,.24)!important;
  }
  html body .site-header .nav-toggle span{
    display:block!important;
    width:25px!important;
    height:3px!important;
    min-height:3px!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    border:0!important;
    border-radius:999px!important;
  }

  /* Le compteur quitte le header et flotte en bas au milieu. */
  html body .site-header .header-countdown{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    top:auto!important;
    bottom:calc(14px + env(safe-area-inset-bottom))!important;
    z-index:99970!important;
    display:flex!important;
    width:min(94vw,520px)!important;
    min-width:0!important;
    height:auto!important;
    min-height:64px!important;
    margin:0!important;
    padding:9px 38px 8px 10px!important;
    overflow:visible!important;
    background:linear-gradient(135deg,rgba(6,26,61,.97),rgba(10,48,102,.97))!important;
    border:1px solid rgba(255,255,255,.22)!important;
    border-top:3px solid var(--v58-orange)!important;
    border-radius:16px!important;
    box-shadow:0 18px 48px rgba(0,0,0,.34)!important;
    backdrop-filter:blur(12px)!important;
    -webkit-backdrop-filter:blur(12px)!important;
    transform:translateX(-50%)!important;
    transition:opacity .2s ease,transform .2s ease!important;
  }
  html body .site-header .header-countdown.is-dismissed{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  html body .countdown-mobile-close{
    position:absolute!important;
    top:7px!important;
    right:7px!important;
    z-index:3!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:27px!important;
    height:27px!important;
    margin:0!important;
    padding:0 0 2px!important;
    background:rgba(255,255,255,.16)!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.30)!important;
    border-radius:50%!important;
    font-size:20px!important;
    font-weight:800!important;
    line-height:1!important;
    cursor:pointer!important;
  }
  html body .site-header .header-countdown .countdown-grid{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    align-items:start!important;
    justify-content:center!important;
    width:100%!important;
    gap:5px!important;
  }
  html body .site-header .countdown-separator{display:none!important}
  html body .site-header .countdown-digits{
    min-height:31px!important;
    padding:0 3px!important;
    border-radius:6px!important;
  }
  html body .site-header .flip-digit{
    min-width:13px!important;
    height:29px!important;
    min-height:29px!important;
    font-size:20px!important;
  }
  html body .site-header .countdown-unit{gap:3px!important}
  html body .site-header .countdown-unit small{
    font-size:7px!important;
    letter-spacing:.03em!important;
  }
  html body.mobile-nav-open .header-countdown,
  html body.modal-open .header-countdown{display:none!important}

  /* Menu mobile : le bloc entier défile, y compris les contacts et boutons. */
  html body .site-header .main-nav{
    position:fixed!important;
    inset:0 0 0 auto!important;
    z-index:100030!important;
    display:flex!important;
    flex-direction:column!important;
    visibility:hidden!important;
    opacity:0!important;
    width:min(94vw,470px)!important;
    max-width:470px!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:0!important;
    max-height:100dvh!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    background:linear-gradient(180deg,#fff 0%,#f1f5f9 100%)!important;
    border:0!important;
    border-left:1px solid #d8e2ec!important;
    border-radius:0!important;
    box-shadow:-22px 0 58px rgba(7,31,70,.28)!important;
    transform:translateX(105%)!important;
    transition:transform .30s cubic-bezier(.22,.8,.28,1),opacity .20s ease,visibility .20s ease!important;
    overscroll-behavior:contain!important;
  }
  html body .site-header .main-nav.is-open{
    visibility:visible!important;
    opacity:1!important;
    transform:translateX(0)!important;
  }
  html body .site-header .main-nav .mobile-nav-head{
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:84px!important;
    margin:0!important;
    padding:11px 13px 10px 16px!important;
    background:#fff!important;
    border-bottom:1px solid #dbe4ee!important;
  }
  html body .site-header .mobile-nav-brand{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    min-width:0!important;
  }
  html body .site-header .mobile-nav-brand img{
    display:block!important;
    width:126px!important;
    max-width:126px!important;
    height:56px!important;
    max-height:56px!important;
    object-fit:contain!important;
  }
  html body .site-header .mobile-nav-brand strong{
    font-size:16px!important;
    color:var(--v58-navy)!important;
  }
  html body .site-header .mobile-nav-brand span{
    font-size:10px!important;
    color:#61758f!important;
  }
  html body .site-header .nav-close{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    width:44px!important;
    height:44px!important;
    margin:0!important;
    padding:0 0 3px!important;
    background:var(--v58-navy)!important;
    color:#fff!important;
    border:0!important;
    border-radius:12px!important;
    font-size:30px!important;
    line-height:1!important;
    cursor:pointer!important;
  }
  html body .site-header .main-nav .mobile-nav-body{
    display:block!important;
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0 0 max(28px,env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
    scrollbar-width:thin!important;
    scrollbar-color:#a9b7c8 transparent!important;
  }
  html body .site-header .main-nav .main-nav-links{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:14px!important;
    gap:8px!important;
    overflow:visible!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  html body .site-header .main-nav .main-nav-links > a{
    --nav-accent:var(--v58-blue);
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr) 28px!important;
    align-items:center!important;
    justify-content:stretch!important;
    flex:0 0 auto!important;
    width:100%!important;
    min-height:58px!important;
    height:auto!important;
    margin:0!important;
    padding:8px 12px!important;
    overflow:visible!important;
    background:#fff!important;
    color:var(--v58-navy)!important;
    border:1px solid #dce4ed!important;
    border-left:5px solid var(--nav-accent)!important;
    border-radius:12px!important;
    box-shadow:0 7px 18px rgba(7,31,70,.07)!important;
    font-size:15px!important;
    font-weight:900!important;
    line-height:1.25!important;
    text-align:left!important;
    white-space:normal!important;
  }
  html body .site-header .main-nav .main-nav-links > a::after{display:none!important;content:none!important}
  html body .site-header .main-nav .main-nav-links > a:nth-child(1){--nav-accent:#0d4da8}
  html body .site-header .main-nav .main-nav-links > a:nth-child(2){--nav-accent:#f26722}
  html body .site-header .main-nav .main-nav-links > a:nth-child(3){--nav-accent:#23833a}
  html body .site-header .main-nav .main-nav-links > a:nth-child(4){--nav-accent:#7b53b4}
  html body .site-header .main-nav .main-nav-links > a:nth-child(5){--nav-accent:#15899e}
  html body .site-header .main-nav .main-nav-links > a:nth-child(6){--nav-accent:#bd4050}
  html body .site-header .main-nav .main-nav-links > a:hover,
  html body .site-header .main-nav .main-nav-links > a:focus-visible,
  html body .site-header .main-nav .main-nav-links > a.is-active{
    background:#f4f7fb!important;
    color:var(--v58-navy)!important;
    transform:none!important;
  }
  html body .site-header .main-nav .mobile-nav-index{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:31px!important;
    height:31px!important;
    background:#eef3f8!important;
    color:var(--nav-accent)!important;
    border-radius:8px!important;
    font-size:10px!important;
    font-weight:950!important;
  }
  html body .site-header .main-nav .nav-label{display:block!important;min-width:0!important;padding:0 7px!important}
  html body .site-header .main-nav .mobile-nav-arrow{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:var(--nav-accent)!important;
    font-size:20px!important;
    font-weight:950!important;
  }
  html body .site-header .main-nav .mobile-nav-contact{
    display:block!important;
    margin:0!important;
    padding:14px 14px 20px!important;
    background:#edf2f7!important;
    border-top:1px solid #d8e1eb!important;
  }
  html body .site-header .mobile-nav-contact > p{margin:0 0 10px!important}
  html body .site-header .mobile-contact-line{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    width:100%!important;
    min-height:45px!important;
    margin:0 0 8px!important;
    padding:9px 11px!important;
    overflow-wrap:anywhere!important;
    background:#fff!important;
    color:var(--v58-navy)!important;
    border:1px solid #d6e0ea!important;
    border-radius:10px!important;
    text-decoration:none!important;
  }
  html body .site-header .mobile-nav-cta-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    margin:11px 0 0!important;
  }
  html body .site-header .mobile-nav-cta{
    display:flex!important;
    min-height:48px!important;
    border-radius:10px!important;
    font-size:13px!important;
  }
  html body.mobile-nav-open,
  html body.mobile-nav-open html{overflow:hidden!important}
  html body.mobile-nav-open::before{
    content:""!important;
    position:fixed!important;
    inset:0!important;
    z-index:100010!important;
    background:rgba(3,14,32,.58)!important;
    backdrop-filter:blur(2px)!important;
  }

  /* Aucun espace entre le header fixe et le slider. */
  html body .hero-slider,
  html body main > .hero-slider,
  html body .hero-slider .slider-stage{
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  html body .hero-slider .slider-stage{
    width:100%!important;
    height:clamp(300px,82vw,590px)!important;
    min-height:300px!important;
    max-height:590px!important;
    aspect-ratio:auto!important;
    line-height:0!important;
  }
  html body .hero-slider .slide-picture,
  html body .hero-slider .slide-media,
  html body .hero-slider .slide img{
    object-fit:cover!important;
    object-position:center!important;
  }
  html body .hero-slider .slider-control-bar{bottom:10px!important}
  html body .hero-slider .mobile-slider-dots{gap:6px!important;padding:6px 10px!important}
  html body .hero-slider .mobile-slider-dots button{width:7px!important;min-width:7px!important;height:7px!important;min-height:7px!important}
  html body .hero-slider .mobile-slider-dots button.is-active{width:25px!important}

  /* Titre rouge et texte de présentation mobile agrandis. */
  html body .salon-presentation-head h2{display:none!important}
  html body .salon-presentation-head .salon-subtitle-colored{
    display:block!important;
    margin:0 auto 18px!important;
    padding:0 12px!important;
    color:#cf271f!important;
    font-family:Verdana,Arial,sans-serif!important;
    font-size:clamp(28px,7vw,42px)!important;
    font-weight:950!important;
    line-height:1.16!important;
    letter-spacing:-.035em!important;
    text-align:center!important;
  }
  html body .salon-presentation-head .subtitle-red{
    color:#cf271f!important;
    font-family:Verdana,Arial,sans-serif!important;
    font-size:inherit!important;
    font-weight:950!important;
  }
  html body .salon-presentation-text,
  html body .salon-presentation-text p{
    font-family:Verdana,Arial,sans-serif!important;
    font-size:16px!important;
    font-weight:500!important;
    line-height:1.82!important;
    text-align:justify!important;
    text-justify:inter-word!important;
    hyphens:auto!important;
  }

  html body .keyfig-grid-premium{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  html body .keyfig-premium-card{min-height:220px!important}
  html body .keyfig-premium-card strong{left:18px!important;bottom:48px!important;font-size:31px!important}
  html body .keyfig-premium-card p{left:18px!important;bottom:18px!important;font-size:11px!important}

  html body .professional-pack-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }

  /* Popups tablette/mobile : une seule colonne et défilement du popup complet. */
  html body .premium-modal.is-open,
  html body .premium-modal[aria-hidden="false"]{
    align-items:flex-start!important;
    justify-content:center!important;
    padding:8px!important;
    overflow-y:auto!important;
  }
  html body .premium-modal .modal-card{
    display:block!important;
    width:min(760px,100%)!important;
    max-width:760px!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0 auto!important;
    overflow:hidden!important;
    border-radius:18px!important;
  }
  html body .premium-modal .modal-visual{
    min-height:250px!important;
    max-height:none!important;
    padding:20px!important;
  }
  html body .premium-modal .modal-visual-content{
    max-width:none!important;
    padding:17px!important;
    border-radius:14px!important;
  }
  html body .premium-modal .modal-visual-content h3{font-size:24px!important}
  html body .premium-modal .modal-visual-content p,
  html body .premium-modal .modal-visual-content li{font-size:13px!important;line-height:1.48!important}
  html body .premium-modal .modal-form-panel{
    max-height:none!important;
    padding:22px 18px 26px!important;
    overflow:visible!important;
  }
  html body .premium-modal .modal-logo{width:170px!important;max-width:58%!important;margin-bottom:8px!important}
  html body .premium-modal .modal-form-panel h2{font-size:28px!important}
  html body .premium-modal .modal-intro{font-size:13px!important;margin-bottom:15px!important}
  html body .premium-modal .premium-form{padding:16px!important;border-radius:14px!important}
  html body .premium-modal .form-grid{grid-template-columns:1fr!important;gap:0!important}
  html body .premium-modal .premium-form label{font-size:12px!important;margin-bottom:10px!important}
  html body .premium-modal .premium-form input,
  html body .premium-modal .premium-form select,
  html body .premium-modal .premium-form textarea{font-size:16px!important;border-radius:9px!important}
  html body .premium-modal .premium-form input,
  html body .premium-modal .premium-form select{min-height:50px!important}
  html body .premium-modal .modal-submit{min-height:54px!important;font-size:15px!important}

  html body .president-message-modal.is-open,
  html body .president-message-modal[aria-hidden="false"]{
    align-items:flex-start!important;
    padding:8px!important;
  }
  html body .president-message-modal .president-message-modal-card{
    width:100%!important;
    max-width:760px!important;
    max-height:none!important;
    margin:0 auto!important;
    padding:25px 18px 30px!important;
    overflow:visible!important;
    border-radius:18px!important;
  }
  html body .president-popup-heading{
    grid-template-columns:92px minmax(0,1fr)!important;
    gap:15px!important;
    margin-bottom:20px!important;
    padding-right:34px!important;
  }
  html body .president-popup-heading img{width:92px!important;height:110px!important;border-radius:14px!important}
  html body .president-popup-heading h2{font-size:min(var(--president-popup-title-size,32px),27px)!important}
  html body .president-popup-content{font-size:min(var(--president-popup-text-size,18px),17px)!important;line-height:1.72!important}

  html body .stand-pack-modal-card,
  html body .real-stand-modal{
    display:block!important;
    width:min(760px,100%)!important;
    max-width:760px!important;
    max-height:none!important;
    margin:0 auto!important;
    overflow:hidden!important;
  }
  html body .stand-pack-photo,
  html body .stand-pack-photo img{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/10!important;
    object-fit:cover!important;
  }
  html body .stand-pack-copy{
    max-height:none!important;
    padding:28px 20px 25px!important;
    overflow:visible!important;
  }
}

@media (max-width:720px){
  :root{--v58-header-height:78px}
  html body .site-header,
  html body .site-header .top-shell{height:78px!important;min-height:78px!important}
  html body .site-header .top-shell{grid-template-rows:78px!important;grid-template-columns:minmax(0,1fr) 54px!important;padding:1px 7px!important}
  html body .site-header .brand{height:76px!important;min-height:76px!important}
  html body .site-header .top-shell > .brand > img.header-logo-exact,
  html body .site-header .brand img{
    width:min(306px,calc(100vw - 69px))!important;
    max-width:min(306px,calc(100vw - 69px))!important;
    height:76px!important;
    max-height:76px!important;
  }
  html body .site-header .nav-toggle{width:50px!important;min-width:50px!important;height:50px!important;min-height:50px!important}
  html body .hero-slider .slider-stage{
    height:clamp(315px,86vw,520px)!important;
    min-height:315px!important;
    max-height:520px!important;
  }
  html body .salon-presentation-section{padding-left:16px!important;padding-right:16px!important}
  html body .salon-presentation-head .salon-subtitle-colored{font-size:clamp(30px,8.5vw,40px)!important}
  html body .salon-presentation-text,
  html body .salon-presentation-text p{font-size:16px!important;line-height:1.82!important}

  html body .s2ia-keyfig-black{padding:54px 0 62px!important}
  html body .s2ia-keyfig-inner{width:92%!important}
  html body .s2ia-keyfig-black .s2ia-section-title-dark h2{font-size:34px!important}
  html body .s2ia-keyfig-black .s2ia-section-title-dark span{width:48px!important;height:4px!important}
  html body .keyfig-grid-premium{grid-template-columns:1fr!important;gap:15px!important}
  html body .keyfig-premium-card{min-height:235px!important;aspect-ratio:16/10!important}
  html body .keyfig-premium-card strong{font-size:36px!important}
  html body .keyfig-premium-card p{font-size:12px!important}

  html body .professional-pack-grid{
    grid-template-columns:1fr!important;
    width:min(94%,600px)!important;
    gap:18px!important;
  }
  html body .professional-pack-card{height:auto!important;overflow:hidden!important}
  html body .professional-pack-content{padding:20px!important}
  html body .professional-pack-content h3{font-size:25px!important}
  html body .professional-pack-card .pack-subtitle{margin-bottom:12px!important}
  html body .professional-pack-card .pack-advantages li:nth-child(n+3){display:none!important}
  html body .professional-pack-card .pack-more{margin:0 0 11px!important}
  html body .pack-card-actions{
    grid-template-columns:1fr!important;
    gap:9px!important;
    margin-top:10px!important;
    padding-top:8px!important;
  }
  html body .pack-card-actions button{min-height:50px!important;font-size:13px!important}
  html body button.pack-visual-button{aspect-ratio:16/9!important}

  html body .premium-modal .modal-visual{min-height:220px!important;padding:15px!important}
  html body .premium-modal .modal-visual-content{padding:14px!important}
  html body .premium-modal .modal-visual-content h3{font-size:21px!important;margin-bottom:7px!important}
  html body .premium-modal .modal-visual-content p{font-size:12.5px!important}
  html body .premium-modal .modal-mini-grid{gap:5px!important}
  html body .premium-modal .modal-mini-grid span{padding:6px 8px!important;font-size:10px!important}
  html body .premium-modal .modal-form-panel{padding:19px 13px 22px!important}
  html body .premium-modal .premium-form{padding:13px!important}
  html body .premium-modal .modal-close{top:9px!important;right:9px!important;width:40px!important;height:40px!important}

  html body .president-popup-heading{grid-template-columns:1fr!important;text-align:center!important;padding:0 34px 0 0!important}
  html body .president-popup-heading img{margin:0 auto!important}
  html body .president-popup-heading span{text-align:center!important}
  html body .president-popup-heading h2{text-align:center!important}
}

@media (max-width:420px){
  html body .site-header .top-shell{grid-template-columns:minmax(0,1fr) 50px!important;padding-left:5px!important;padding-right:5px!important}
  html body .site-header .top-shell > .brand > img.header-logo-exact,
  html body .site-header .brand img{width:min(286px,calc(100vw - 62px))!important;max-width:min(286px,calc(100vw - 62px))!important}
  html body .site-header .nav-toggle{width:47px!important;min-width:47px!important;height:47px!important;min-height:47px!important}
  html body .site-header .header-countdown{width:96vw!important;padding-left:8px!important;padding-right:34px!important}
  html body .site-header .header-countdown .countdown-grid{gap:3px!important}
  html body .site-header .countdown-digits{padding-left:2px!important;padding-right:2px!important}
  html body .site-header .flip-digit{min-width:11px!important;font-size:18px!important}
  html body .site-header .countdown-unit small{font-size:6px!important;letter-spacing:0!important}
  html body .site-header .main-nav{width:96vw!important}
}

/* --------------------------------------------------------------------------
   TV / TRÈS GRANDS ÉCRANS — proportions agrandies et contenu centré
   -------------------------------------------------------------------------- */
@media (min-width:1921px){
  :root{--v58-header-height:108px}
  html body .site-header .top-shell{
    grid-template-columns:minmax(320px,390px) minmax(800px,1fr) minmax(560px,680px)!important;
    width:min(96vw,3000px)!important;
    max-width:3000px!important;
    height:98px!important;
    min-height:98px!important;
    margin:5px auto!important;
    padding:6px 18px!important;
    gap:20px!important;
    border-radius:16px!important;
  }
  html body .site-header .brand{height:86px!important;min-height:86px!important}
  html body .site-header .top-shell > .brand > img.header-logo-exact,
  html body .site-header .brand img{width:370px!important;max-width:370px!important;height:86px!important;max-height:86px!important}
  html body .site-header .main-nav .main-nav-links{min-height:60px!important;border-radius:9px!important}
  html body .site-header .main-nav .main-nav-links > a{height:60px!important;min-height:60px!important;padding:0 17px!important;font-size:19px!important}
  html body .site-header .header-countdown{height:78px!important;padding:9px 12px!important}
  html body .site-header .header-countdown .countdown-grid{grid-template-columns:minmax(70px,1fr) 8px minmax(70px,1fr) 8px minmax(70px,1fr) 8px minmax(70px,1fr) 8px minmax(70px,1fr)!important;gap:5px!important}
  html body .site-header .countdown-digits{min-height:42px!important}
  html body .site-header .flip-digit{height:40px!important;min-height:40px!important;min-width:20px!important;font-size:30px!important}
  html body .site-header .countdown-unit small{font-size:9px!important}
  html body .site-header .countdown-separator{height:42px!important;line-height:42px!important;font-size:21px!important}

  html body .s2ia-keyfig-inner,
  html body .institutional-clean-inner,
  html body .s2ia-strip-inner,
  html body .salon-presentation-inner,
  html body .s2ia-showcase-inner,
  html body .pack-section-header,
  html body .professional-pack-grid,
  html body .s2ia-participation-reasons .reasons-grid,
  html body .footer-pro-inner{
    width:min(92vw,2700px)!important;
    max-width:2700px!important;
  }
  html body .keyfig-grid-premium{gap:28px!important}
  html body .keyfig-premium-card{min-height:360px!important;border-radius:26px!important}
  html body .keyfig-premium-card strong{left:32px!important;bottom:75px!important;font-size:58px!important}
  html body .keyfig-premium-card p{left:33px!important;bottom:32px!important;font-size:18px!important}
  html body .s2ia-keyfig-black .s2ia-section-title-dark h2{font-size:64px!important}
  html body .s2ia-participation-reasons .reasons-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:28px!important}
  html body .reason-photo-copy h3{font-size:25px!important}
  html body .reason-photo-copy p{font-size:17px!important}
  html body .professional-pack-grid{gap:28px!important}
  html body .professional-pack-content h3{font-size:30px!important}
  html body .professional-pack-card .pack-subtitle,
  html body .professional-pack-card .pack-advantages li{font-size:17px!important}
  html body .pack-card-actions button{font-size:15px!important;min-height:55px!important}
  html body .premium-modal .modal-card{width:min(1800px,94vw)!important;max-width:1800px!important}
}

@media (min-width:3000px){
  :root{--v58-header-height:126px}
  html body .site-header .top-shell{
    grid-template-columns:440px minmax(1100px,1fr) 760px!important;
    width:min(94vw,3500px)!important;
    max-width:3500px!important;
    height:114px!important;
    min-height:114px!important;
  }
  html body .site-header .brand{height:100px!important;min-height:100px!important}
  html body .site-header .top-shell > .brand > img.header-logo-exact,
  html body .site-header .brand img{width:425px!important;max-width:425px!important;height:100px!important;max-height:100px!important}
  html body .site-header .main-nav .main-nav-links > a{font-size:22px!important;height:70px!important;min-height:70px!important}
  html body .site-header .header-countdown{height:92px!important}
  html body .site-header .flip-digit{font-size:36px!important;min-width:24px!important;height:50px!important;min-height:50px!important}
  html body .site-header .countdown-digits{min-height:52px!important}
  html body .site-header .countdown-unit small{font-size:11px!important}
  html body .site-header .countdown-separator{height:52px!important;line-height:52px!important;font-size:26px!important}
  html body .s2ia-keyfig-inner,
  html body .institutional-clean-inner,
  html body .s2ia-strip-inner,
  html body .salon-presentation-inner,
  html body .s2ia-showcase-inner,
  html body .pack-section-header,
  html body .professional-pack-grid,
  html body .s2ia-participation-reasons .reasons-grid,
  html body .footer-pro-inner{width:min(90vw,3200px)!important;max-width:3200px!important}
}

@media (prefers-reduced-motion:reduce){
  html body .site-header .main-nav,
  html body .hero-slider .slide,
  html body .hero-slider .mobile-slider-dots button{
    transition:none!important;
    animation:none!important;
  }
}

/* ========================================================================== 
   V58 — CORRECTIF FINAL TV / 4K
   Neutralise les anciennes largeurs maximales et adapte les proportions aux
   téléviseurs et écrans très larges sans modifier les formats PC et mobiles.
   ========================================================================== */
@media (min-width:2200px){
  :root{--v58-header-height:132px}

  html body .site-header,
  html body .site-header .top-shell{
    min-height:120px!important;
  }
  html body .site-header .top-shell{
    grid-template-columns:minmax(430px,500px) minmax(1100px,1fr) minmax(760px,900px)!important;
    width:min(96vw,3380px)!important;
    max-width:3380px!important;
    height:120px!important;
    margin:6px auto!important;
    padding:7px 20px!important;
    gap:24px!important;
    border-radius:18px!important;
  }
  html body .site-header .brand{
    height:106px!important;
    min-height:106px!important;
    overflow:visible!important;
  }
  html body .site-header .top-shell > a.brand > img.header-logo-exact,
  html body .site-header .top-shell > .brand > img.header-logo-exact,
  html body .site-header .brand img{
    width:420px!important;
    min-width:420px!important;
    max-width:420px!important;
    height:104px!important;
    min-height:104px!important;
    max-height:104px!important;
    object-fit:contain!important;
  }
  html body .site-header .main-nav .main-nav-links{
    min-height:72px!important;
    border-radius:10px!important;
  }
  html body .site-header .main-nav .main-nav-links > a{
    height:72px!important;
    min-height:72px!important;
    padding:0 22px!important;
    font-size:22px!important;
    line-height:1.1!important;
  }
  html body .site-header .header-countdown{
    width:100%!important;
    height:96px!important;
    min-height:96px!important;
    padding:10px 14px!important;
    border-radius:14px!important;
  }
  html body .site-header .header-countdown .countdown-grid{
    grid-template-columns:minmax(82px,1fr) 10px minmax(82px,1fr) 10px minmax(82px,1fr) 10px minmax(82px,1fr) 10px minmax(82px,1fr)!important;
    gap:5px!important;
  }
  html body .site-header .countdown-digits{min-height:52px!important}
  html body .site-header .flip-digit{
    min-width:25px!important;
    height:50px!important;
    min-height:50px!important;
    font-size:37px!important;
  }
  html body .site-header .countdown-unit small{
    margin-top:5px!important;
    font-size:11px!important;
    letter-spacing:.08em!important;
  }
  html body .site-header .countdown-separator{
    height:52px!important;
    line-height:52px!important;
    font-size:27px!important;
  }

  /* Actions immédiatement sous le slider */
  html body .hero-actions{padding:22px 0!important}
  html body .hero-actions .hero-actions-inner{
    display:grid!important;
    grid-template-columns:1.15fr .82fr .98fr 1.25fr!important;
    width:min(82vw,2850px)!important;
    max-width:2850px!important;
    gap:22px!important;
  }
  html body .hero-actions .action-pill,
  html body .hero-actions .action-button{
    min-height:68px!important;
    height:68px!important;
    border-radius:15px!important;
    font-size:20px!important;
    padding:0 28px!important;
  }

  /* Patronage : occupe réellement l'espace TV */
  html body .patronage-welcome{
    padding:44px 0 58px!important;
  }
  html body .patronage-welcome .patronage-main-title{
    margin:0 auto 30px!important;
    font-size:52px!important;
    line-height:1.08!important;
  }
  html body .patronage-welcome .patronage-welcome-inner{
    width:min(84vw,2820px)!important;
    max-width:2820px!important;
    grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr)!important;
    gap:36px!important;
  }
  html body .patronage-welcome .patronage-identity-card,
  html body .patronage-welcome .president-message-card{
    min-height:430px!important;
    border-radius:26px!important;
    padding:36px 42px!important;
  }
  html body .patronage-welcome .patronage-identity-content{
    grid-template-columns:minmax(0,1fr) 300px!important;
    gap:34px!important;
  }
  html body .patronage-welcome .patronage-president-photo,
  html body .patronage-welcome .patronage-president-photo img{
    width:300px!important;
    height:350px!important;
    min-height:350px!important;
    border-radius:22px!important;
    object-fit:cover!important;
  }
  html body .patronage-welcome .patronage-identity-text h3{
    font-size:38px!important;
    line-height:1.16!important;
  }
  html body .patronage-welcome .president-function{
    font-size:23px!important;
  }
  html body .patronage-welcome .president-message-card h3{
    font-size:38px!important;
  }
  html body .patronage-welcome .president-message-card p{
    font-size:23px!important;
    line-height:1.7!important;
  }
  html body .patronage-welcome .president-message-link{
    min-height:68px!important;
    font-size:21px!important;
    border-radius:14px!important;
  }

  /* Largeurs principales cohérentes sur TV. */
  html body .s2ia-keyfig-black .s2ia-keyfig-inner,
  html body .institutional-clean-section .institutional-clean-inner,
  html body .diplomatic-partners-section .s2ia-strip-inner,
  html body .salon-presentation-section .salon-presentation-inner,
  html body .s2ia-showcase-section .s2ia-showcase-inner,
  html body .event-pillars-section .event-pillars-inner,
  html body .partner-logo-cloud-section .partner-logo-cloud-inner,
  html body .s2ia-participation-reasons .s2ia-showcase-inner,
  html body .s2ia-footer-pro .footer-pro-inner{
    width:min(90vw,3150px)!important;
    max-width:3150px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Présentation du Salon : texte et panneau latéral équilibrés. */
  html body .salon-presentation-section{
    padding-top:90px!important;
    padding-bottom:96px!important;
  }
  html body .salon-presentation-section .salon-presentation-head h2{
    font-size:66px!important;
    line-height:1.08!important;
  }
  html body .salon-presentation-section .salon-subtitle-colored{
    font-size:44px!important;
    margin-top:18px!important;
  }
  html body .salon-presentation-section .salon-presentation-grid{
    grid-template-columns:minmax(0,1.62fr) minmax(720px,.88fr)!important;
    gap:54px!important;
    align-items:start!important;
  }
  html body .salon-presentation-section .salon-presentation-text,
  html body .salon-presentation-section .salon-presentation-text p{
    font-size:23px!important;
    line-height:1.82!important;
  }
  html body .salon-presentation-section .salon-audience-panel{
    width:100%!important;
    max-width:none!important;
    grid-template-columns:1fr!important;
    gap:20px!important;
    padding:28px!important;
    border-radius:28px!important;
  }
  html body .salon-presentation-section .audience-card,
  html body .salon-presentation-section .salon-audience-extra{
    min-height:210px!important;
    padding:28px!important;
    border-radius:22px!important;
  }
  html body .salon-presentation-section .audience-card h4,
  html body .salon-presentation-section .salon-audience-extra h4{
    font-size:30px!important;
  }
  html body .salon-presentation-section .audience-card p,
  html body .salon-presentation-section .salon-audience-extra p{
    font-size:18px!important;
    line-height:1.55!important;
  }
  html body .salon-presentation-section .audience-btn{
    min-height:58px!important;
    font-size:17px!important;
  }

  /* Titres et cartes des autres grandes sections. */
  html body .section-line-title h2,
  html body .institutional-clean-title h2,
  html body .compact-strip-title h2{
    font-size:clamp(45px,1.65vw,64px)!important;
    line-height:1.12!important;
  }
  html body .section-line-title{
    margin-bottom:44px!important;
  }
  html body .showcase-card-grid{
    gap:26px!important;
  }
  html body .profile-card-body h3,
  html body .profile-card-body strong{
    font-size:22px!important;
  }
  html body .profile-card-body p,
  html body .profile-card-body em{
    font-size:17px!important;
  }

  /* Raisons de participer : quatre colonnes centrées et lisibles. */
  html body .s2ia-participation-reasons{
    padding:100px 0!important;
  }
  html body .s2ia-participation-reasons .reasons-intro{
    margin-bottom:48px!important;
  }
  html body .s2ia-participation-reasons .reasons-kicker{
    font-size:17px!important;
    min-height:42px!important;
  }
  html body .s2ia-participation-reasons .reasons-intro h2{
    font-size:72px!important;
  }
  html body .s2ia-participation-reasons .reasons-intro p{
    max-width:1700px!important;
    font-size:23px!important;
  }
  html body .s2ia-participation-reasons .reasons-grid{
    width:100%!important;
    max-width:none!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:28px!important;
  }
  html body .s2ia-participation-reasons .reason-photo-card{
    min-height:430px!important;
    border-radius:26px!important;
  }
  html body .s2ia-participation-reasons .reason-photo-media{
    min-height:260px!important;
  }
  html body .s2ia-participation-reasons .reason-photo-copy{
    padding:26px 28px 30px!important;
  }
  html body .s2ia-participation-reasons .reason-photo-copy h3{
    font-size:26px!important;
  }
  html body .s2ia-participation-reasons .reason-photo-copy p{
    font-size:18px!important;
  }

  /* Packs : neutralise le max-width 1660px hérité de V56. */
  html body .s2ia-pack-section .s2ia-showcase-inner,
  html body .sponsor-pack-section .s2ia-showcase-inner,
  html body .exhibition-pack-section .s2ia-showcase-inner{
    width:min(90vw,3150px)!important;
    max-width:3150px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  html body .s2ia-pack-section .pack-section-header,
  html body .s2ia-pack-section .professional-pack-grid,
  html body .sponsor-pack-section .pack-section-header,
  html body .sponsor-pack-section .professional-pack-grid,
  html body .exhibition-pack-section .pack-section-header,
  html body .exhibition-pack-section .professional-pack-grid{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  html body .s2ia-pack-section .pack-section-header{
    grid-template-columns:minmax(0,1fr) minmax(760px,1fr)!important;
    gap:70px!important;
    margin-bottom:46px!important;
    padding-bottom:32px!important;
  }
  html body .s2ia-pack-section .pack-section-eyebrow{
    font-size:17px!important;
  }
  html body .s2ia-pack-section .pack-section-header h2{
    font-size:68px!important;
  }
  html body .s2ia-pack-section .pack-section-header p{
    font-size:22px!important;
  }
  html body .s2ia-pack-section .professional-pack-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:28px!important;
  }
  html body .s2ia-pack-section .professional-pack-card{
    border-radius:26px!important;
  }
  html body .s2ia-pack-section .professional-pack-content{
    padding:26px!important;
  }
  html body .s2ia-pack-section .professional-pack-content h3{
    font-size:28px!important;
  }
  html body .s2ia-pack-section .pack-subtitle,
  html body .s2ia-pack-section .pack-advantages li{
    font-size:17px!important;
  }
  html body .s2ia-pack-section .pack-card-actions button{
    min-height:58px!important;
    font-size:16px!important;
  }

  /* Popups TV : dimensions confortables, sans bande plate disproportionnée. */
  html body .premium-modal .modal-card{
    width:min(84vw,2100px)!important;
    max-width:2100px!important;
    max-height:88vh!important;
    border-radius:28px!important;
  }
  html body .premium-modal .modal-form-panel h2{
    font-size:42px!important;
  }
  html body .premium-modal .modal-intro,
  html body .premium-modal .premium-form label{
    font-size:18px!important;
  }
  html body .premium-modal .premium-form input,
  html body .premium-modal .premium-form select,
  html body .premium-modal .premium-form textarea{
    font-size:20px!important;
  }
  html body .president-message-modal .president-message-modal-card{
    width:min(66vw,1800px)!important;
    max-width:1800px!important;
    min-height:520px!important;
    max-height:82vh!important;
    padding:54px 62px!important;
  }
  html body .president-message-modal .president-popup-heading{
    grid-template-columns:230px minmax(0,1fr)!important;
    gap:34px!important;
  }
  html body .president-message-modal .president-popup-heading img{
    width:230px!important;
    height:270px!important;
  }
  html body .president-message-modal .president-popup-heading h2{
    font-size:44px!important;
  }
  html body .president-message-modal .president-popup-content{
    font-size:24px!important;
    line-height:1.75!important;
  }
}

@media (min-width:3000px){
  :root{--v58-header-height:154px}
  html body .site-header .top-shell{
    grid-template-columns:540px minmax(1350px,1fr) 980px!important;
    width:min(95vw,3660px)!important;
    max-width:3660px!important;
    height:140px!important;
    min-height:140px!important;
    padding:8px 24px!important;
  }
  html body .site-header .brand{height:124px!important;min-height:124px!important}
  html body .site-header .top-shell > a.brand > img.header-logo-exact,
  html body .site-header .top-shell > .brand > img.header-logo-exact,
  html body .site-header .brand img{
    width:500px!important;
    min-width:500px!important;
    max-width:500px!important;
    height:122px!important;
    min-height:122px!important;
    max-height:122px!important;
  }
  html body .site-header .main-nav .main-nav-links > a{
    height:82px!important;
    min-height:82px!important;
    font-size:25px!important;
    padding:0 26px!important;
  }
  html body .site-header .header-countdown{
    height:112px!important;
    min-height:112px!important;
  }
  html body .site-header .header-countdown .countdown-grid{
    grid-template-columns:minmax(102px,1fr) 12px minmax(102px,1fr) 12px minmax(102px,1fr) 12px minmax(102px,1fr) 12px minmax(102px,1fr)!important;
  }
  html body .site-header .countdown-digits{min-height:62px!important}
  html body .site-header .flip-digit{
    min-width:30px!important;
    height:60px!important;
    min-height:60px!important;
    font-size:44px!important;
  }
  html body .site-header .countdown-unit small{font-size:13px!important}
  html body .site-header .countdown-separator{height:62px!important;line-height:62px!important;font-size:32px!important}

  html body .s2ia-keyfig-black .s2ia-keyfig-inner,
  html body .institutional-clean-section .institutional-clean-inner,
  html body .diplomatic-partners-section .s2ia-strip-inner,
  html body .salon-presentation-section .salon-presentation-inner,
  html body .s2ia-showcase-section .s2ia-showcase-inner,
  html body .event-pillars-section .event-pillars-inner,
  html body .partner-logo-cloud-section .partner-logo-cloud-inner,
  html body .s2ia-participation-reasons .s2ia-showcase-inner,
  html body .s2ia-pack-section .s2ia-showcase-inner,
  html body .sponsor-pack-section .s2ia-showcase-inner,
  html body .exhibition-pack-section .s2ia-showcase-inner,
  html body .s2ia-footer-pro .footer-pro-inner{
    width:min(88vw,3360px)!important;
    max-width:3360px!important;
  }
  html body .hero-actions .hero-actions-inner{width:min(78vw,3000px)!important;max-width:3000px!important}
}
