/* ============================================================
   mod_halbandeau — bandeau partenaire du club Haliotis
   Tout est porté par le module : aucune retouche de user.css ni
   surcharge de template n'est nécessaire.
   ============================================================ */

/* ---- Le bandeau lui-même ---------------------------------- */
.hal-bandeau {
    margin: 0;
    padding: 0;
    text-align: center;
    line-height: 0;
}
.hal-bandeau__lien {
    display: block;
    line-height: 0;
}
.hal-bandeau__image {
    display: block;
    width: 100%;
    max-width: var(--hal-bandeau-largeur, 728px);
    height: auto;
    margin: 0 auto;
}

/* ---- La bande qui le porte --------------------------------
   Cible l'enfant direct de la grille Cassiopeia qui contient le
   module, quelle que soit la position choisie (top-a, bottom-a…). */
.site-grid > [class*="container-"]:has(.hal-bandeau) {
    grid-column: full-start / full-end;
    background: var(--hal-bandeau-fond, #ffffff);
    padding: 12px 10px;
    margin: 0;
    border-bottom: 1px solid #e2e8f0;
}
.site-grid > [class*="container-"]:has(.hal-bandeau) > * {
    flex: 1;
    margin: 0 !important;
}

/* ---- Neutraliser le cadre « card » de Cassiopeia ----------- */
.card:has(.hal-bandeau),
.card-body:has(.hal-bandeau),
.moduletable:has(.hal-bandeau) {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
}
.card:has(.hal-bandeau) .card-header {
    display: none !important;
}

/* ---- Option « sous le menu principal » ---------------------
   Cassiopeia place nativement top-a AU-DESSUS du menu (top-b).
   Quand le module est en top-a et l'option active, on permute les
   deux lignes de la grille : le bandeau tombe sous le menu, juste
   au-dessus du contenu. Le sélecteur :has() limite l'effet à ce
   cas précis — sans le module, la grille reste celle d'origine. */
@media (min-width: 992px) {
    .site-grid:has(> .container-top-a .hal-bandeau--sous-menu) {
        grid-template-areas:
            ". banner banner banner banner ."
            ". top-b  top-b  top-b  top-b  ."
            ". top-a  top-a  top-a  top-a  ."
            ". side-l comp   comp   side-r ."
            ". bot-a  bot-a  bot-a  bot-a  ."
            ". bot-b  bot-b  bot-b  bot-b  .";
    }
}

/* ---- Mobile ------------------------------------------------
   Sous 992 px la grille Haliotis passe en flex-column ordonnée :
   bandeau d'en-tête (0), barre de menu (1), colonne latérale (2),
   contenu (3). On intercale le bandeau partenaire juste après la
   barre de menu — à égalité d'ordre, l'ordre du DOM tranche et
   top-a précède la colonne latérale. */
@media (max-width: 991px) {
    .site-grid > [class*="container-"]:has(.hal-bandeau--sous-menu) {
        width: 100% !important;
        grid-column: auto !important;
        order: 2 !important;
        padding: 10px 8px !important;
    }
}

/* ---- Option « masquer sur les pages adhérents » ------------
   com_adherents (annuaire, gestion des adhérents) passe en pleine
   largeur et y retire déjà le bandeau d'en-tête : pages de travail,
   pas de promotion. */
body.com_adherents .site-grid > [class*="container-"]:has(.hal-bandeau--hors-adherents) {
    display: none !important;
}

/* ---- Impression -------------------------------------------- */
@media print {
    .site-grid > [class*="container-"]:has(.hal-bandeau) {
        display: none !important;
    }
}
