/* =====================================================================
   Adhélios Software — couche responsive (novembre 2026)
   Chargée APRÈS toutes les autres feuilles de style.
   Ne modifie pas l'affichage bureau (> 1100px) sauf les 2 règles
   "globales" ci-dessous, sans effet visible sur grand écran.
   ===================================================================== */

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
.adhlayout img, .entry-header img, .widget img, footer img { max-width: 100%; height: auto; }

/* ---------------------------------------------------------------------
   Tablette / petit portable : contenu fluide, colonne de droite conservée
   --------------------------------------------------------------------- */
@media screen and (max-width: 1100px) {

  .site-main .my-full-size,
  .site-main .entry-header.my-full-size,
  .site-main .adhlayout.my-full-size {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 230px !important;
    box-sizing: border-box;
  }
  .site-main .entry-title.my-full-size { width: auto !important; margin-right: 0 !important; padding: 0 !important; }

  .site-main .sidebar-container { width: 210px; }
  .site-main .widget-area { max-width: none; width: 100%; }

  /* textes réduits à 10px par l'ancien thème : on remet une taille lisible */
  /* l'ancien thème force p/ul à 10px !important sous 1024px */
  #main p, #main ul, #main ol, #main li, #main .contenu, #main .pream-adh,
  #main [class^="des-sol"], #main [class*=" des-sol"] { font-size: 14px !important; line-height: 1.5; }
  #main .mapolice { font-size: 15px !important; }
  #main .ui-accordion-header { font-size: 15px !important; }
  #main .widget p, #main .widget .tel { font-size: 15px !important; }

  /* blocs à largeur fixe en % trop étroits */
  .avantages { width: auto !important; }
  .tt, .tt1, .solutions { width: auto !important; height: auto !important; min-height: 60px; }

  table { max-width: 100%; }

  /* onglets verticaux de la page « Solutions métiers » (largeur fixe 950px / 560px) */
  .ui-tabs-vertical .ui-tabs-nav { float: none !important; width: auto !important; max-width: 100% !important; box-sizing: border-box; }
  .ui-tabs-vertical .ui-tabs-nav li { float: none !important; width: auto !important; margin-right: 0 !important; }
  .ui-tabs-vertical .ui-tabs-nav li a { float: none !important; display: flex !important; align-items: center; gap: 12px; white-space: normal !important; }
  .ui-tabs-vertical .ui-tabs-nav li a img { flex: 0 0 auto; }
  .ui-tabs-vertical .ui-tabs-panel { float: none !important; width: auto !important; max-width: none !important; box-sizing: border-box; }
}

/* ---------------------------------------------------------------------
   Mobile : une seule colonne, menu repliable
   --------------------------------------------------------------------- */
@media screen and (max-width: 767px) {

  body { overflow-x: hidden; }
  #page, #masthead, .site-header, header, .navbar, #navbar, .main-navigation,
  .site-main, .site-info, footer {
    min-width: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box;
  }

  /* --- Bandeau logo --- */
  .logo-adhelios img { display: block; width: 100%; height: auto; }

  /* --- Menu « hamburger » --- */
  .main-navigation { min-height: 0; padding: 0; }
  .main-navigation .menu-toggle {
    display: flex !important;
    align-items: center;
    gap: 10px;
    float: none;
    margin: 0;
    padding: 14px 16px;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    font-style: normal;
    cursor: pointer;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
  }
  .main-navigation .menu-toggle::before {
    content: "";
    display: inline-block;
    width: 22px; height: 16px;
    background:
      linear-gradient(#fff, #fff) 0 0 / 100% 2px no-repeat,
      linear-gradient(#fff, #fff) 0 7px / 100% 2px no-repeat,
      linear-gradient(#fff, #fff) 0 14px / 100% 2px no-repeat;
  }
  .main-navigation .menu-toggle::after { content: none !important; }
  .main-navigation .adhleft { float: none !important; }

  .main-navigation .nav-menu,
  .main-navigation ul.nav-menu { display: none !important; margin: 0; padding: 0 0 8px; }
  .main-navigation.toggled-on .nav-menu,
  .main-navigation.toggled-on ul.nav-menu { display: block !important; }

  .main-navigation .nav-menu li { display: block !important; float: none; width: 100%; }
  .main-navigation .nav-menu li a {
    display: block;
    padding: 13px 16px !important;
    font-size: 15px !important;
    line-height: 1.2;
    border-top: 1px solid #222;
    color: #fff;
  }
  /* sous-menu toujours visible, en retrait */
  .main-navigation .nav-menu .sub-menu {
    display: block !important;
    position: static !important;
    left: auto !important;
    float: none;
    width: 100% !important;
    box-shadow: none;
    background: #111;
    border: 0;
    margin: 0; padding: 0;
  }
  .main-navigation .nav-menu .sub-menu a { padding-left: 32px !important; font-size: 14px !important; width: auto !important; }
  .main-navigation .nav-menu > .menu-item-has-children > a[href="#"] { pointer-events: none; color: #9bd3f5; }

  /* --- Zone principale --- */
  .site-main { margin-top: 0 !important; min-height: 0 !important; padding-bottom: 0 !important; }
  #page { padding-bottom: 0 !important; }
  .hentry { padding: 16px 0 0 !important; }

  .site-main .my-full-size,
  .site-main .entry-header.my-full-size,
  .site-main .adhlayout.my-full-size {
    margin-right: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  .site-main .entry-header.my-full-size { padding-top: 10px !important; padding-bottom: 6px !important; }
  .site-main .my-full-size { height: auto !important; min-height: 0 !important; }
  .adhlayout p, .adhlayout li, .adhlayout .contenu, .adhlayout [class^="des-sol"] { text-align: left !important; }
  .adhlayout p.adh-spacer { display: none; } /* paragraphes vides servant de cale sur ordinateur */

  /* page « Solutions métiers » : titres et encadrés à largeur fixe en % */
  .adhlayout [class^="tt"], .adhlayout [class*=" tt"] { width: auto !important; height: auto !important; min-height: 50px; float: none !important; }
  .adhlayout [class^="des-sol"], .adhlayout [class*=" des-sol"] { width: auto !important; box-sizing: border-box; padding: 14px 14px 14px 18px !important; margin-left: 0 !important; margin-right: 0 !important; }
  .adhlayout ul[class^="des-sol"] { padding-left: 32px !important; }
  .adhlayout { -webkit-hyphens: auto; hyphens: auto; }
  h1.entry-title { font-size: 24px !important; line-height: 1.25; margin: 0; }
  h1.entry-title .titleicon { height: 28px; width: auto; vertical-align: middle; }

  .adhlayout .partie1, .adhlayout .partie2, .pream-adh,
  .adhlayout > div, .adhlayout div { max-width: 100%; box-sizing: border-box; }
  .adhlayout ul, .adhlayout ol { padding-left: 20px; margin-left: 0; }
  .adhlayout h2, .adhlayout h3 { font-size: 18px; line-height: 1.3; }

  /* --- Colonne de droite (contact, partenaires, revendeurs) passe sous le contenu --- */
  .site-main .sidebar-container {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    clear: both;
    padding: 16px 14px 0;
    box-sizing: border-box;
  }
  .site-main .sidebar-inner { max-width: none; }
  .site-main .widget-area {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin-top: 0 !important;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
  .site-main .widget-area .widget {
    flex: 1 1 100%;
    margin: 0 !important;
    padding: 14px;
    box-sizing: border-box;
    text-align: center;
  }
  /* le diaporama partenaires prend la largeur de son bloc : on resserre le bloc */
  .site-main .widget-area .SlideshowWidget { padding-left: max(14px, calc(50% - 130px)) !important; padding-right: max(14px, calc(50% - 130px)) !important; }
  .site-main .widget-area .widget-title img,
  .site-main .widget-area .textwidget > p > img[src*="bouton_"] { width: 100%; max-width: 260px; }
  .site-main .widget-area .textwidget img[src*="contact-adhelios.png"] { max-width: 160px; }

  /* --- Pied de page --- */
  footer .site-info { padding: 24px 14px !important; font-size: 14px; line-height: 1.5; }
  .site-footer { height: auto !important; }

  /* --- Divers --- */
  .tt, .tt1, .solutions, .avantages { margin-left: 0 !important; margin-right: 0 !important; }
  .solutions_adhelios { margin: 12px; }
  .ui-dialog { max-width: 95vw !important; left: 2.5vw !important; }
  .adhlayout table { display: block; overflow-x: auto; }
  iframe, video { max-width: 100%; }
  /* formulaire contact : 16px évite le zoom automatique sur iPhone */
  input[type="text"], input[type="email"], input[type="tel"], textarea, select { font-size: 16px !important; max-width: 100%; box-sizing: border-box; }
}

/* Petit mobile : widgets côte à côte impossible, on garde 1 colonne */
@media screen and (min-width: 480px) and (max-width: 767px) {
  .site-main .widget-area .widget { flex: 1 1 calc(50% - 10px); }
}
