/* Agri360 News 1.88.4 — colonne latérale de l'accueil + widgets de colonne en largeur maximale */

/* Bande : sections à gauche, colonne à droite */
.home-band { padding-top: 8px; padding-bottom: 8px; }
.home-band__grid { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 40px; align-items: start; }
.home-band__main { min-width: 0; }
/* Les sections gardent leur propre conteneur : on neutralise ses marges dans la bande */
.home-band__main .container { max-width: none !important; width: 100% !important; padding-left: 0 !important; padding-right: 0 !important; margin: 0 !important; }
.home-band__main > .section:first-child, .home-band__main > section:first-child { padding-top: 0; }
/* Grilles de 3 ou 4 articles : 2 colonnes à côté de la colonne latérale */
.home-band__main .post-grid--3,
.home-band__main .post-grid--4,
.home-band__main .image-grid--3,
.home-band__main .image-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
/* Blocs « article + pavé » ou « hero + pavé » : le pavé passe sous le bloc */
.home-band__main .cat-pave-grid,
.home-band__main .hero-pave-grid { grid-template-columns: minmax(0, 1fr) !important; }
.home-band__side { position: static; top: auto; }

/* Tous les widgets de colonne (accueil, articles, catégories) en largeur maximale */
.sidebar .widget,
.sidebar .agri360-banniere-colonne,
.sidebar .tribunes-pave,
.sidebar .a360v { width: 100% !important; max-width: 100% !important; box-sizing: border-box; }
.sidebar .agri360-banniere-colonne img,
.sidebar .banner-slot img,
.sidebar .banner-slot__img { width: 100% !important; max-width: 100% !important; height: auto !important; display: block; }
.sidebar .banner-slot,
.sidebar .banner-slot a { display: block; width: 100%; }
.sidebar .banner-slot--custom-html * { max-width: 100%; }
.sidebar iframe { max-width: 100%; }

/* Tablette et mobile : la colonne passe sous le contenu */
@media (max-width: 1024px) {
  .home-band__grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
}
@media (max-width: 640px) {
  .home-band__main .post-grid--3,
  .home-band__main .post-grid--4,
  .home-band__main .image-grid--3,
  .home-band__main .image-grid--4 { grid-template-columns: minmax(0, 1fr) !important; }
}

/* 1.88.9 : blocs catégorie à côté de la colonne : l'article principal à gauche,
   les autres articles en une seule liste à droite (titres plus lisibles). */
@media (min-width: 769px) {
  .home-band__main .cat-block__layout { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) !important; grid-auto-rows: auto; column-gap: 28px; row-gap: 12px; align-items: start; }
  .home-band__main .cat-block__layout .cat-block__feature { grid-column: 1; grid-row: 1 / span 4; }
  .home-band__main .cat-block__layout > .post-list { grid-column: 2; }
  .home-band__main .cat-block__layout .post-list__item { grid-template-columns: 112px minmax(0, 1fr); }
  .home-band__main .cat-block__layout .post-list__item > img { width: 112px; height: 76px; }
  /* Le pastille « réservé aux abonnés » (articles Club en avant-première) garde son petit logo */
  .home-band__main .post-list__item .club-embargo-badge { white-space: normal; }
  .home-band__main .cat-block__layout .post-list__item h4 { font-size: 15px; line-height: 1.3; -webkit-line-clamp: 3; }
}
/* Article sans image dans une liste : le titre prend toute la largeur */
.post-list__item > div:only-child { grid-column: 1 / -1; }

/* 1.88.9 : MegaBanner 2 après le chapeau des articles */
.single-article__mb2 { margin: 18px 0 20px; text-align: center; }
.single-article__mb2 .banner-slot, .single-article__mb2 a { display: inline-block; max-width: 100%; }
.single-article__mb2 img { max-width: 100%; height: auto; display: block; margin: 0 auto; }

/* 1.88.12 : mégamenu « Filières » en 3 groupes (classe CSS « has-mega » sur l'élément de menu) */
@media (min-width: 1025px) {
  .mainnav__menu .has-mega > .sub-menu { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px 32px; width: 860px; padding: 22px 26px; }
  .mainnav__menu .has-mega > .sub-menu > li > a { font-weight: 700; color: var(--brand-primary); text-transform: uppercase; font-size: 12px; letter-spacing: .05em; padding: 4px 0 8px; margin-bottom: 6px; border-bottom: 1px solid #e7e1d5; background: none; }
  .mainnav__menu .has-mega > .sub-menu > li > a .menu-arrow { display: none; }
  .mainnav__menu .has-mega .sub-menu .sub-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; padding: 0; min-width: 0; background: none; border-radius: 0; }
  .mainnav__menu .has-mega .sub-menu .sub-menu a { padding: 6px 0; }
  .mainnav__menu .has-mega .sub-menu .sub-menu a:hover { background: none; color: var(--brand-primary); }
}

/* 1.88.14 : pas de bouton « Rechercher » dans le menu rouge : la grande barre de recherche est juste au-dessus */
.mainnav__search-toggle { display: none !important; }

/* 1.88.15 : correction des fautes de frappe dans la recherche */
.search-correction { margin: 6px 0 14px; padding: 10px 14px; background: #f5f1e8; border-left: 3px solid var(--brand-primary); font-size: 15px; }
.search-correction a { color: var(--brand-primary); text-decoration: underline; }

/* 1.88.16 : « À la une » aussi large que les blocs en dessous (ordinateur et téléphone) */
.hero-article__wrap { padding: 0 32px; }
.home-band__main .hero-article__wrap { padding: 0; }
.home-band__main .section--hero-article { padding-top: 0 !important; }
@media (max-width: 768px) {
  .hero-article__wrap { padding: 0 16px; }
  .home-band__main .hero-article__wrap { padding: 0; }
  /* Sur téléphone : la photo en entier, le titre et le chapô en dessous (plus de texte qui déborde sur la photo) */
  .hero-article { height: auto !important; min-height: 0 !important; display: flex; flex-direction: column; background: #1a1414 !important; }
  .hero-article > a { height: auto !important; aspect-ratio: 16 / 10; }
  .hero-article__text { position: static !important; background: #1a1414 !important; padding: 16px 18px 18px !important; }
  .hero-article__text h2 { font-size: 22px !important; line-height: 1.2 !important; }
  .hero-article__text p { font-size: 14px !important; }
}
