/* ==========================================================================
   Boutique du Lycée Français d'Abatta
   Habillage de WooCommerce (thème Astra) aux couleurs du site.

   Le site principal est statique ; la boutique est un WordPress. Cette feuille
   réconcilie les deux : mêmes couleurs, mêmes polices, mêmes gestes. Elle ne
   fait que de la mise en forme — aucune règle ne masque un élément dont
   dépend le tunnel d'achat.

   Déployée à la racine du site (/assets/boutique.css) et chargée par le
   mu-plugin lfa-boutique.php.
   ========================================================================== */

:root{
  --navy:#0C2461; --navy-d:#081845; --navy-l:#1a3a8f;
  --orange:#E8711A; --orange-l:#f0882a; --orange-d:#c85e12;
  --gold:#F2B705; --green:#2FA84F;
  --bg:#ffffff; --bg2:#F6F8FC; --bg3:#EEF2F9;
  --tx:#0C1B3A; --tx2:#4A5568; --tx3:#8FA3BF;
  --border:rgba(12,36,97,.10); --border2:rgba(12,36,97,.06);
  --serif:'Playfair Display',Georgia,serif;
  --sans:'Inter',system-ui,-apple-system,sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);
  --maxw:1240px;
}

/* ---------- Base ---------- */
body.woocommerce-page,body{
  font-family:var(--sans);
  color:var(--tx);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
}
body a{color:var(--navy)}
body a:hover{color:var(--orange-d)}
.ast-container,.ast-width-md-content{max-width:var(--maxw)}

h1,h2,h3,.entry-title,.product_title,
.woocommerce-loop-category__title{
  font-family:var(--serif);
  color:var(--navy);
  font-weight:600;
  letter-spacing:-.01em;
}

/* ---------- En-tête ---------- */
/* Astra sert un bandeau orange pâle qui jure avec le navy du site. */
.ast-above-header-wrap,.ast-above-header-bar{
  background:var(--navy-d)!important;
  border:0!important;
}
.ast-main-header-wrap,.main-header-bar-wrap,.main-header-bar,
.ast-primary-header-bar{
  background:var(--navy)!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 2px 24px rgba(12,36,97,.18);
}
.ast-above-header-bar a,.main-header-bar a,
.ast-header-search .search-field,
.ast-builder-layout-element svg{color:#fff!important;fill:#fff!important}
.ast-header-search .astra-search-icon{color:#fff!important}

/* Le logo est posé sur une pastille blanche, comme dans la barre du site. */
.site-branding .custom-logo-link img{
  background:#fff;
  border-radius:9px;
  padding:5px 10px;
  box-shadow:0 4px 12px rgba(8,24,69,.25);
}

/* Bouton hamburger d'Astra */
.ast-mobile-menu-trigger-minimal,.menu-toggle{
  color:#fff!important;background:transparent!important;
}
.ast-mobile-menu-trigger-minimal svg{fill:#fff!important}

/* ---------- Notre menu (rendu par le mu-plugin) ---------- */
.lfa-menu a{
  color:rgba(255,255,255,.82)!important;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
  transition:color .25s;
}
.lfa-menu a:hover,.lfa-menu .current-menu-item a{color:#fff!important}
.lfa-menu .current-menu-item a{text-decoration:none;position:relative}
.lfa-menu .current-menu-item a::after{
  content:"";position:absolute;left:0;right:0;bottom:4px;
  height:2px;background:var(--orange);border-radius:2px;
}
/* Le retour vers le site : premier, et visuellement distinct. */
.lfa-menu li:first-child a{color:var(--gold)!important;font-weight:700}

/* Le panier, toujours visible — c'est ce qui manquait. */
.lfa-panier{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--orange);color:#fff!important;
  padding:9px 16px;border-radius:6px;
  font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  white-space:nowrap;
  box-shadow:0 6px 18px rgba(232,113,26,.35);
  transition:.25s var(--ease);
}
.lfa-panier:hover{background:var(--orange-l);color:#fff!important;transform:translateY(-1px)}
.lfa-panier-n{
  background:#fff;color:var(--orange-d);
  min-width:20px;height:20px;border-radius:20px;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:800;padding:0 6px;
}
.lfa-panier.vide{background:rgba(255,255,255,.12);box-shadow:none}
.lfa-panier.vide .lfa-panier-n{background:rgba(255,255,255,.25);color:#fff}

/* ---------- Titre de page ---------- */
.ast-single-post .entry-header,.woocommerce-products-header{
  padding:52px 0 8px;
}
.entry-title,.woocommerce-products-header__title{
  font-size:clamp(30px,4vw,46px);
  line-height:1.15;
  margin:0;
}
.woocommerce-breadcrumb{
  font-size:12.5px;color:var(--tx3);margin-bottom:22px;
}
.woocommerce-breadcrumb a{color:var(--tx2)}

/* ---------- Sections de la page d'accueil ---------- */
.lfa-ajout{margin:8px 0 70px}
.lfa-sec{margin:0 0 54px}
.lfa-eyebrow{
  display:flex;align-items:center;gap:12px;
  font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--orange-d);margin-bottom:12px;
}
.lfa-eyebrow::before{
  content:"";width:26px;height:2px;background:var(--orange);border-radius:2px;flex:none;
}
.lfa-h2{
  font-family:var(--serif);font-size:clamp(23px,3vw,31px);
  color:var(--navy);margin:0 0 6px;font-weight:600;
}
.lfa-h2 em{font-style:italic;color:var(--orange-d)}
.lfa-sous{
  font-size:14.5px;color:var(--tx2);line-height:1.65;
  margin:0 0 26px;max-width:70ch;font-weight:300;
}

/* ---------- Tuiles de catégorie ---------- */
.lfa-tuiles{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:16px;margin-bottom:14px;
}
.lfa-tuile,.lfa-tuile:hover,.lfa-tuile:focus{text-decoration:none!important}
.lfa-tuile{
  display:flex;flex-direction:column;justify-content:space-between;
  min-height:118px;padding:22px 24px;border-radius:14px;
  background:var(--navy);color:#fff!important;
  border:1px solid transparent;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease);
}
.lfa-tuile:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 34px rgba(12,36,97,.26);
  border-color:var(--orange);
  color:#fff!important;
}
.lfa-tuile-t{display:block;font-size:16.5px;font-weight:700;margin-bottom:6px;line-height:1.3}
.lfa-tuile-s{display:block;font-size:12.5px;color:rgba(255,255,255,.72);line-height:1.5}
.lfa-tuile.accent{background:linear-gradient(135deg,var(--orange-d),var(--orange))}
.lfa-tuile.accent .lfa-tuile-s{color:rgba(255,255,255,.85)}

/* ---------- Grille de produits ---------- */
ul.products{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(228px,1fr))!important;
  gap:22px!important;
  margin:0!important;padding:0!important;list-style:none!important;
}
ul.products::before,ul.products::after{display:none!important}
ul.products li.product{
  width:auto!important;margin:0!important;float:none!important;
  display:flex!important;flex-direction:column;
  background:var(--bg);
  border:1px solid var(--border);
  border-radius:16px;
  overflow:hidden;
  transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .28s;
}
ul.products li.product:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 40px rgba(12,36,97,.13);
  border-color:rgba(232,113,26,.45);
}
/* La carte est rendue par le mu-plugin : image, titre, description, prix,
   bouton — dans cet ordre, quel que soit le gabarit du theme. */
.lfa-carte-img{
  display:block;background:var(--bg3);aspect-ratio:1/1;overflow:hidden;
  text-decoration:none!important;
}
.lfa-carte-img img{
  width:100%;height:100%;object-fit:cover;display:block;margin:0!important;
  transition:transform .5s var(--ease);
}
ul.products li.product:hover .lfa-carte-img img{transform:scale(1.045)}
.lfa-carte-corps{
  padding:17px 18px 19px;
  display:flex;flex-direction:column;gap:7px;flex:1;
}
.lfa-carte-t{
  font-family:var(--sans)!important;
  font-size:14.5px!important;font-weight:600!important;
  line-height:1.4!important;color:var(--tx)!important;
  margin:0!important;padding:0!important;
}
.lfa-carte-t a{color:var(--tx)!important;text-decoration:none!important}
.lfa-carte-t a:hover{color:var(--orange-d)!important}
.lfa-desc{
  font-size:12.5px;color:var(--tx2);line-height:1.55;font-weight:300;margin:0;
}
.lfa-carte-prix,.lfa-carte-prix .price{
  font-family:var(--sans)!important;
  font-size:15px!important;font-weight:700!important;
  color:var(--navy)!important;margin:2px 0 0!important;
}
.lfa-carte-prix del{color:var(--tx3);font-weight:400;margin-right:6px}
.lfa-carte-prix ins{text-decoration:none;color:var(--orange-d)}
.lfa-carte-prix .woocommerce-Price-amount{white-space:nowrap}

/* Le bouton reste au fond de la carte quelle que soit la longueur du titre. */
ul.products li.product .button,
ul.products li.product .added_to_cart{
  margin-top:auto!important;
  align-self:flex-start;
}
/* WooCommerce ajoute « Voir le panier » sous le bouton apres un ajout. */
ul.products li.product .added_to_cart{
  background:transparent!important;color:var(--navy)!important;
  box-shadow:none!important;padding:8px 0!important;
  text-decoration:underline!important;
}

/* ---------- Boutons ---------- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce a.button.alt,.woocommerce button.button.alt,
.woocommerce #respond input#submit,
.wp-block-button__link,.wc-block-components-button{
  background:var(--orange)!important;color:#fff!important;
  border:0!important;border-radius:5px!important;
  padding:12px 22px!important;
  font-family:var(--sans)!important;font-size:12.5px!important;font-weight:600!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;
  line-height:1.2!important;
  box-shadow:0 6px 18px rgba(232,113,26,.28);
  transition:.25s var(--ease)!important;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce input.button:hover,.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,.wc-block-components-button:hover{
  background:var(--orange-l)!important;color:#fff!important;
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(232,113,26,.36);
}
.woocommerce a.button.added_to_cart{
  background:var(--green)!important;box-shadow:none;
}
/* Boutons secondaires (« Continuer mes achats », etc.) */
.woocommerce .cart .button[name="update_cart"],
.woocommerce a.button.wc-backward{
  background:var(--bg3)!important;color:var(--navy)!important;
  box-shadow:none!important;
}
.woocommerce a.button.wc-backward:hover{background:var(--border)!important;color:var(--navy)!important}

/* ---------- Fiche produit ---------- */
/* Astra impose display:inline-block sur la fiche produit et enferme le
   contenu dans un conteneur de 840 px : l'image et le bloc d'achat se
   retrouvaient l'un sous l'autre, tout en bas de page. */
.ast-woocommerce-container{max-width:var(--maxw)!important}
.single-product div.product{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:48px;align-items:start;width:100%;
}
.single-product div.product .woocommerce-product-gallery{width:auto!important;float:none!important;margin:0!important}
.single-product div.product .summary{width:auto!important;float:none!important;margin:0!important}
.single-product .woocommerce-product-gallery__image img{border-radius:16px;border:1px solid var(--border)}
.single-product .product_title{font-size:clamp(25px,3.2vw,36px);margin-bottom:14px}
.single-product .summary .price,.single-product .woocommerce-variation-price .price{
  font-family:var(--sans)!important;font-size:26px!important;font-weight:700!important;
  color:var(--navy)!important;margin-bottom:18px!important;
}
.single-product .woocommerce-product-details__short-description{
  font-size:15px;color:var(--tx2);line-height:1.75;font-weight:300;
  padding:16px 0 4px;border-top:1px solid var(--border);margin-top:6px;
}
.single-product .product_meta{
  font-size:12.5px;color:var(--tx3);border-top:1px solid var(--border);
  padding-top:16px;margin-top:20px;
}
.woocommerce-tabs .panel h2{font-size:20px}
.woocommerce-tabs ul.tabs li{border-radius:8px 8px 0 0!important}
.woocommerce-tabs ul.tabs li.active{border-bottom-color:var(--orange)!important}

/* Variantes : le point sensible du catalogue (classe, versement, taille). */
.woocommerce div.product form.cart .variations{
  width:100%;background:var(--bg2);border:1px solid var(--border);
  border-radius:14px;padding:6px 18px 14px;margin-bottom:18px;
}
.woocommerce div.product form.cart .variations tr{display:block;padding:10px 0}
.woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td{display:block;width:100%;padding:0!important;text-align:left!important}
.woocommerce div.product form.cart .variations label{
  font-size:12px!important;font-weight:700!important;letter-spacing:.08em;
  text-transform:uppercase;color:var(--navy)!important;margin-bottom:7px;display:block;
}
.woocommerce div.product form.cart .reset_variations{
  font-size:12px;color:var(--tx3);
}

/* ---------- Champs de formulaire ---------- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce table.cart td.actions .coupon .input-text,
.select2-container .select2-selection--single,
.woocommerce div.product form.cart .variations select{
  width:100%;
  border:1px solid var(--border)!important;
  border-radius:9px!important;
  padding:12px 14px!important;
  font-family:var(--sans)!important;font-size:14.5px!important;
  color:var(--tx)!important;background:var(--bg)!important;
  height:auto!important;line-height:1.4!important;
  transition:border-color .2s,box-shadow .2s;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus,
.woocommerce div.product form.cart .variations select:focus{
  outline:none!important;
  border-color:var(--orange)!important;
  box-shadow:0 0 0 3px rgba(232,113,26,.16)!important;
}
.woocommerce form .form-row label{
  font-size:12.5px;font-weight:600;color:var(--tx);margin-bottom:6px;display:block;
}
.woocommerce form .form-row .required{color:var(--orange-d);text-decoration:none}
.woocommerce .quantity .qty{
  border:1px solid var(--border)!important;border-radius:9px!important;
  padding:11px 8px!important;font-weight:600;
}

/* ---------- Panier ---------- */
.woocommerce table.shop_table{
  border:1px solid var(--border)!important;
  border-radius:16px!important;
  border-collapse:separate!important;border-spacing:0!important;
  overflow:hidden;
}
.woocommerce table.shop_table th{
  background:var(--bg2)!important;
  font-size:11.5px!important;font-weight:700!important;
  letter-spacing:.1em;text-transform:uppercase;color:var(--navy)!important;
  padding:15px 16px!important;border:0!important;
}
.woocommerce table.shop_table td{
  padding:16px!important;border-top:1px solid var(--border2)!important;
  vertical-align:middle;
}
.woocommerce table.cart img{width:64px!important;border-radius:9px}
.woocommerce a.remove{
  color:var(--tx3)!important;font-weight:400;
  border:1px solid var(--border);width:26px;height:26px;line-height:24px;
}
.woocommerce a.remove:hover{background:#E23B3B!important;color:#fff!important;border-color:#E23B3B}
.cart_totals h2{font-family:var(--serif);font-size:22px}
.cart-collaterals .cart_totals{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:16px;padding:24px;
}

/* ---------- Commande ---------- */
.woocommerce-checkout h3,.woocommerce-checkout h2,
.woocommerce-billing-fields h3,#order_review_heading{
  font-family:var(--serif);font-size:22px;color:var(--navy);
  margin:0 0 18px;
}
#customer_details{background:var(--bg);}
.woocommerce-checkout #payment{
  background:var(--bg2)!important;
  border:1px solid var(--border);border-radius:16px;padding:6px 8px;
}
.woocommerce-checkout #payment ul.payment_methods{
  border-bottom:1px solid var(--border)!important;padding:16px!important;
}
.woocommerce-checkout #payment ul.payment_methods li{
  background:var(--bg);border:1px solid var(--border);
  border-radius:12px;padding:14px 16px!important;margin-bottom:10px;
  font-size:14px;font-weight:600;color:var(--tx);
}
.woocommerce-checkout #payment div.payment_box{
  background:var(--bg3)!important;border-radius:10px;
  font-size:13px;color:var(--tx2);
}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--bg3)!important}
.woocommerce-checkout #payment div.form-row.place-order{padding:18px 16px!important}
#place_order{width:100%;font-size:14px!important;padding:16px 22px!important}

/* ---------- Messages ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error,
.wc-block-components-notice-banner{
  border-top:0!important;border-radius:12px!important;
  border:1px solid var(--border)!important;
  background:var(--bg2)!important;color:var(--tx)!important;
  font-size:14px;padding:16px 18px 16px 52px!important;
  box-shadow:none!important;
}
.woocommerce-message{border-left:4px solid var(--green)!important}
.woocommerce-info{border-left:4px solid var(--navy-l)!important}
.woocommerce-error{border-left:4px solid #E23B3B!important}
.woocommerce-message::before{color:var(--green)!important}
.woocommerce-info::before{color:var(--navy-l)!important}
.woocommerce-message .button,.woocommerce-info .button{
  padding:9px 16px!important;font-size:11.5px!important;
}

/* ---------- Mon compte ---------- */
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.woocommerce-MyAccount-navigation li{
  border-bottom:1px solid var(--border2);
}
.woocommerce-MyAccount-navigation li a{
  display:block;padding:13px 4px;font-size:14px;font-weight:500;color:var(--tx2);
}
.woocommerce-MyAccount-navigation li.is-active a{color:var(--orange-d);font-weight:700}
.woocommerce form.login,.woocommerce form.register{
  border:1px solid var(--border)!important;border-radius:16px!important;
  padding:26px!important;
}

/* ---------- Pied de page ---------- */
.site-footer,.ast-small-footer{
  background:var(--navy-d)!important;color:rgba(255,255,255,.7)!important;
}
.site-footer a,.ast-small-footer a{color:rgba(255,255,255,.85)!important}

/* ==========================================================================
   Téléphones et tablettes
   ========================================================================== */
@media(max-width:921px){
  .lfa-menu a{font-size:14px;text-transform:none;letter-spacing:0}
  .lfa-panier{width:calc(100% - 40px);margin:12px 20px;justify-content:center}
}

@media(max-width:768px){
  .ast-single-post .entry-header,.woocommerce-products-header{padding:30px 0 4px}
  .lfa-ajout{margin-bottom:44px}
  .lfa-sec{margin-bottom:40px}
  .lfa-sous{font-size:14px;margin-bottom:20px}

  /* Deux produits par ligne : sur un téléphone, une seule colonne oblige à
     faire défiler interminablement un catalogue de dix-neuf articles. */
  ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:13px!important;
  }
  .lfa-carte-corps{padding:13px 13px 15px;gap:5px}
  .lfa-carte-t{font-size:13px!important}
  .lfa-desc{display:none}
  .lfa-carte-prix,.lfa-carte-prix .price{font-size:13.5px!important}
  ul.products li.product .button{
    width:100%;text-align:center;padding:11px 10px!important;font-size:11px!important;
  }

  .lfa-tuiles{grid-template-columns:1fr;gap:11px}
  .lfa-tuile{min-height:0;padding:17px 19px}

  /* Fiche produit : une colonne, image d'abord. */
  .single-product div.product{grid-template-columns:1fr;gap:24px}
  .single-product .summary .price{font-size:22px!important}

  /* Le panier en tableau est illisible sur un écran étroit : on le remet en
     fiches, chaque ligne devenant un bloc avec ses intitulés. */
  .woocommerce table.shop_table_responsive tr,
  .woocommerce-cart table.cart tbody tr{
    display:block;border:1px solid var(--border);border-radius:14px;
    margin-bottom:12px;padding:6px 12px;background:var(--bg);
  }
  .woocommerce table.shop_table_responsive thead{display:none}
  .woocommerce table.shop_table_responsive td{
    display:flex;justify-content:space-between;align-items:center;gap:14px;
    padding:10px 2px!important;border-top:1px solid var(--border2)!important;
    text-align:right;
  }
  .woocommerce table.shop_table_responsive td::before{
    content:attr(data-title);font-weight:700;font-size:11px;
    letter-spacing:.08em;text-transform:uppercase;color:var(--tx3);
    text-align:left;flex:none;
  }
  .woocommerce table.cart td.product-remove{justify-content:flex-end;border-top:0!important}
  .woocommerce table.cart td.actions{display:block;text-align:left}
  .woocommerce table.cart td.actions .button{width:100%;margin-top:10px}
  .woocommerce .quantity .qty{width:80px!important}

  .cart-collaterals,.cart-collaterals .cart_totals{width:100%!important;float:none!important}
  #place_order{padding:17px 20px!important}
}

/* En dessous de 360 px (les plus petits telephones), deux colonnes rendraient
   les vignettes illisibles : on repasse a une seule, description comprise. */
@media(max-width:359px){
  ul.products{grid-template-columns:1fr!important}
  .lfa-desc{display:block}
}

/* ---------- Accessibilité et confort ---------- */
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  ul.products li.product:hover,.lfa-tuile:hover{transform:none}
}
:where(a,button,input,select,textarea):focus-visible{
  outline:2px solid var(--orange);outline-offset:2px;
}

/* Les textes reserves aux lecteurs d'ecran (« Plage de prix : … ») ne doivent
   jamais devenir visibles : certaines regles de grille les font reapparaitre. */
.screen-reader-text,.lfa-carte-prix .screen-reader-text{
  position:absolute!important;width:1px;height:1px;overflow:hidden;
  clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap;
}
.lfa-prix-neutre{font-weight:600;color:var(--tx2)!important;font-size:13.5px}

/* ---------- Fiche produit : un seul titre ---------- */
/* Astra coiffe la fiche d'un bandeau gris qui repete le nom du produit :
   deux <h1> identiques sur la meme page, l'un decoratif. On garde celui du
   bloc d'achat, qui porte le prix et le bouton. */
.single-product .ast-container>.entry-title,
.single-product header.entry-header{display:none}
.single-product .ast-woocommerce-container{padding-top:26px}

/* ---------- Pied de page ---------- */
/* Les widgets heritent de l'ancien site et titrent en <h1> : trois titres de
   niveau 1 en bas de chaque page. On les ramene visuellement a leur rang. */
.site-footer h1,.site-footer h2,
.site-footer .wp-block-heading{
  font-family:var(--sans)!important;
  font-size:15px!important;font-weight:700!important;
  letter-spacing:.08em;text-transform:uppercase;
  color:#fff!important;margin-bottom:10px!important;
}
.site-footer,.site-footer p,.site-footer li{font-size:13.5px;line-height:1.7}

/* ---------- Deux debordements horizontaux sur telephone ---------- */
/* 1. Le champ de recherche d'Astra se deploie sur 586 px dans un ecran de
      375 : la page partait en travers. La recherche ne sert d'ailleurs a rien
      ici — elle remonterait les pages editoriales de l'ancien site, qui
      redirigent toutes vers l'accueil. */
.ast-header-search,.ast-search-menu-icon,.search-form{display:none!important}

/* 2. Les colonnes du pied de page ne se replient pas : elles depassaient de
      145 px. On les empile. */
@media(max-width:921px){
  .ast-builder-footer-grid-columns,
  .site-above-footer-wrap .ast-builder-grid-row,
  .site-primary-footer-wrap .ast-builder-grid-row{
    grid-template-columns:1fr!important;
  }
  .footer-widget-area{max-width:100%!important;text-align:left}
  .site-footer .wp-block-heading{text-align:left!important}
}

/* Garde-fou : rien ne doit pouvoir elargir la page. */
html,body{max-width:100%;overflow-x:hidden}
