/* ==========================================================================
   Webfonts – Asap (regular, bold, italic, bold italic)
   ========================================================================== */

/* latin-ext */
@font-face {
  font-family: "Asap";
  font-style: normal;
  font-weight: 400;
  src:
    local("Asap"),
    local("Asap-Regular"),
    url("https://fonts.gstatic.com/s/asap/v4/iadKCBVahjA5ul3LDhwH7A.woff2") format("woff2");
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Asap";
  font-style: normal;
  font-weight: 400;
  src:
    local("Asap"),
    local("Asap-Regular"),
    url("https://fonts.gstatic.com/s/asap/v4/oiVlPAjaPL0EznW3E5Z2DQ.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}
/* latin-ext */
@font-face {
  font-family: "Asap";
  font-style: normal;
  font-weight: 700;
  src:
    local("Asap Bold"),
    local("Asap-Bold"),
    url("https://fonts.gstatic.com/s/asap/v4/ovPqj5yHJvE65V38pSjaNfY6323mHUZFJMgTvxaG2iE.woff2") format("woff2");
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Asap";
  font-style: normal;
  font-weight: 700;
  src:
    local("Asap Bold"),
    local("Asap-Bold"),
    url("https://fonts.gstatic.com/s/asap/v4/YUlqaYZPVSsAAN2ZtG3iyA.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}
/* latin-ext */
@font-face {
  font-family: "Asap";
  font-style: italic;
  font-weight: 400;
  src:
    local("Asap Italic"),
    local("Asap-Italic"),
    url("https://fonts.gstatic.com/s/asap/v4/U9TJbbpl5H5Da1XgQw17dPesZW2xOQ-xsNqO47m55DA.woff2") format("woff2");
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Asap";
  font-style: italic;
  font-weight: 400;
  src:
    local("Asap Italic"),
    local("Asap-Italic"),
    url("https://fonts.gstatic.com/s/asap/v4/fpSkRkcsVvo2_AnP2Zt5Yg.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}
/* latin-ext */
@font-face {
  font-family: "Asap";
  font-style: italic;
  font-weight: 700;
  src:
    local("Asap Bold Italic"),
    local("Asap-BoldItalic"),
    url("https://fonts.gstatic.com/s/asap/v4/HeYzwarLlBOP-vBnan8oPRJtnKITppOI_IvcXXDNrsc.woff2") format("woff2");
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Asap";
  font-style: italic;
  font-weight: 700;
  src:
    local("Asap Bold Italic"),
    local("Asap-BoldItalic"),
    url("https://fonts.gstatic.com/s/asap/v4/_sVKdO-TLWvaH-ptGimJBVtXRa8TVwTICgirnJhmVJw.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}


/* ==========================================================================
   Layout / tables / conteneurs
   ========================================================================== */

li.list-inline-item.MainMenuItem {
display: none !important;
}

nav#menu > ul.menu > li {
    font-family: Arial !important;
    font-size: 1rem !important;
}

nav#menu > ul.menu > li > a {
    padding: 10px 5px 12px 5px;
}

ul#ctl00_Main_ctl11_headerMenu {
    text-align: right;
}

.tableRegistration { width: 100%; max-width: 1140px; }
#contenu { background-color: #fff; padding: 2px 15px 15px; }

/* En-têtes / logos / images top */
.tdEnteteRegistrationLogo { height: 92px; }
.tdEnteteRegistrationTopInner { position: relative; top: 0; left: 0; }
.imgTopL { position: absolute; top: 0; left: 0; }

/* Table d’inscription */
div#ctl00_mainTableRegistration { border-top: unset !important; }
#ctl00_mainTableRegistration { border-top: 35px solid #0a89c9; }

/* Cellules diverses */
.CellMenu { height: auto; }
.blocksep,
.lblTitleEvent_css,
.lblDateEvent_css,
.lblPlaceEvent_css { display: none !important; }
.tdEnteteRegistrationLogo,
.foDisplayNone { display: none; }

/* Divers */
#ctl00_Main_TcktFront_IT_LBL_TEXTE_29734,
#ctl00_Main_TcktFront_IT_LBL_TEXTE_29737 {
  width: 100%;
  text-align: right;
  display: inline-block;
}
#ctl00_Main_TcktFront_cell_IT_29739 { font-weight: bold; }
#ctl00_TblRwMenu_Home { display: none; } /* Onglet accueil */

/* Champs */
#ctl00_Main_TcktFront_IT_TEXTE_29763,
#ctl00_Main_TcktFront_IT_TEXTE_29764 { width: 100px; }
.ItemKLblfax,
.ItemKLblcity { text-align: right; }

/* Mobile (classe serveur déjà posée) */
.mobile .registration select { width: 232px !important; }

/* Menu top */
.menu_top { padding-top: 20px; height: auto; border-bottom: 1px solid #fff; }
.menu_top_container { padding-left: 228px !important; }
.menu_top ul li { float: left; color: #fff; text-align: center; height: auto; }
.menu_top ul li a {
  color: #3E4043;
  font-family: Asap, sans-serif;
  font-size: 13px;
  font-weight: normal;
  margin: 0 5px 0 10px;
  padding: 9px 8px 0 0;
}
.menu_top ul li ul { /* sous-menus */ }
.menu_top ul li ul li a span span { color: #000; }
.menu_top ul li:hover a,
.menu_top ul li.actif a,
.menu_top ul li ul li a,
.menu_top ul li ul li a:hover,
.menu_top ul li ul li a:hover span span {
  background: none;
  color: #3695EB !important;
}
.MenuSelected { background-image: none; }

/* Menu (position de dropdowns) */
.menu_top ul li ul { top: 30px; }

/* Rubriques / titres */
.RubriqueSpan {
  display: block;
  background-color: #f1f1f1;
  margin-bottom: 15px;
  border: 1px solid #c8c8c8;
  padding-left: 10px;
}
.TitreRubriqueBo,
.TitreGroupe { font-size: 14px; }
.TitreRubriqueBo {
  display: block;
  padding: 4px;
  color: #3b3b3b;
  width: 95% !important;
  font-weight: bold;
  border-bottom: 1px solid #0d4e9e;
  text-transform: uppercase;
}
.TitreGroupe { padding-left: 4px; font-weight: normal; }

/* ==========================================================================
   Registrations list
   ========================================================================== */

.registrationslist .Registration { width: 25%; float: left; }

.registrationslist .RegistrationsByCountry,
.registrationslist .CountryName {
  display: block;
  width: 100%;
  float: left;
}

.registrationslist .RegistrationsByCountry { padding-bottom: 10px; }

.registrationslist .CountryName {
  /* Si besoin de réactiver un fond en dégradé, décommente l’une des lignes : */
  /* background: -webkit-linear-gradient(left top, #354b61, transparent); */
  /* background: -o-linear-gradient(bottom right, #354b61, transparent); */
  /* background: -moz-linear-gradient(bottom right, #354b61, transparent); */
  /* background: linear-gradient(to bottom right, #354b61, transparent); */
  font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
}

.registrationslist .TotalCountRegs { font-size: 18px; margin-bottom: 25px; }


/* ==========================================================================
   Validateurs / popups / messages
   ========================================================================== */

#VldtrCallout_shoulderarthroscopyexp_popupTable,
#VldtrCallout_shoulderreplacementexp_popupTable,
#VldtrCallout_29738_popupTable,
#VldtrCallout_29730_popupTable,
#VldtrCallout_29731_popupTable,
#VldtrCallout_29739_popupTable,
#VldtrCallout_30194_popupTable,
#VldtrCallout_Format_29738_popupTable,
.cmsg {
  color: #000;
}


/* ==========================================================================
   Divers laissés de côté / historiques
   ========================================================================== */

/* Exemple d’image de fond :
   body { background-image: url("./images/client/437/images/body-bg.jpg"); } */

/* Largeurs de colonnes – ancien usage :
   #ctl00_TblRwMenu_MTOP3274 { width: 210px; }
   #ctl00_TblRwMenu_MTOP3277 { width: 124px; }
   #ctl00_TblRwMenu_MTOP3275 { width: 150px; } */

/* Déblocage d’une sous-section spécifique :
   table.TblSubSection3196 { display: block !important; } */

/* Correction de marge spécifique :
   #ctl00_MTOP3271 { margin-left: 0; } */
   
@media (max-width: 480px) {

header a.menu-trigger {
    background-color: royalblue !important;
}

/* === Forçage du logo en mobile ===
   - match viewport réel (≤400px)
   - fallback pour pages sans <meta viewport> (≈980px de largeur de mise en page)
   - ciblage précis: body#ctl00_body + src du logo
*/
@media screen and (max-width: 400px),
       screen and (max-device-width: 480px),
       screen and (max-width: 980px) and (orientation: portrait) {
  /* 1) Cible l'image du logo NSC */
  body#ctl00_body img[src*="Logo_NSC26_web"] {
    display: block !important;
    width: 35% !important;
    height: auto !important;
    /* fallback puis logique */
    float: right !important;
    float: inline-end !important;
    margin-top: 25px !important;
    margin-right: 35px !important;
    margin-left: 0 !important;
  }

  /* 2) Neutralise le text-align:center du <p> qui entoure l'image
        (pour que le float s'applique correctement) */
  body#ctl00_body p:has(> img[src*="Logo_NSC26_web"]) {
    text-align: initial !important;
  }
  /* Fallback si :has() n'est pas supporté */
  @supports not (selector(:has(*))) {
    body#ctl00_body p[style*="text-align"] {
      text-align: initial !important;
    }
  }

  /* 3) Clear le float dans la zone menu si besoin */
  body#ctl00_body td.menu_top::after {
    content: "";
    display: table;
    clear: both;
  }

  /* 4) Sécurité : si le logo est positionné en absolu ailleurs */
  body#ctl00_body .imgTopL {
    position: static !important;
    top: auto !important;
    left: auto !important;
  }
}



}
