/* style.css — freebierevolution.net. Reproduit la mise en page Elementor d'origine (en-tête blanc à filet or,
   hero plein écran, cartes à image arrondie et cartouche blanc, boutons pilules or, pied vert sapin).
   Améliorations techniques seulement : un H1 par page, menu mobile accessible, cibles de 44 px, focus visibles,
   contrastes relevés, aucune ressource tierce. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--c-fond);color:var(--c-texte);font-family:var(--f-texte);font-size:var(--t-base);line-height:var(--interligne);overflow-x:hidden}
img,picture,video,svg{max-width:100%;height:auto;display:block}
a{color:var(--c-or-fonce);text-underline-offset:.15em}
a:hover{color:var(--c-sapin)}
:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}
h1,h2,h3,h4{color:var(--c-titre);line-height:1.2;margin:1.6em 0 .55em}
h1{font-family:var(--f-texte);font-weight:600;font-size:var(--t-h1);margin-top:0}
h2{font-family:var(--f-texte);font-weight:400;font-size:var(--t-h2)}
h3{font-family:var(--f-texte);font-weight:500;font-size:var(--t-h3)}
p,ul,ol,table{margin:0 0 1em}
.fbr-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.fbr-saut{position:absolute;left:-999px;top:0;background:var(--c-sapin);color:#fff;padding:.7em 1em;z-index:50}
.fbr-saut:focus{left:.5rem;top:.5rem}
.fbr-cadre{width:100%;max-width:calc(var(--l-cadre) + 2*var(--gouttiere));margin:0 auto;padding:0 var(--gouttiere)}

/* boutons pilules */
.fbr-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.45em 1.2em;border-radius:var(--r-bouton);background:var(--c-or);color:var(--c-sapin);font-family:var(--f-texte);font-weight:500;font-size:.9375rem;text-decoration:none;border:0;cursor:pointer;line-height:1.2;white-space:nowrap}
.fbr-btn:hover{background:var(--c-sapin);color:#fff}
.fbr-btn-fonce{background:var(--c-sapin);color:#fff}
.fbr-btn-fonce:hover{background:var(--c-or);color:var(--c-sapin)}

/* en-tête */
.fbr-tete{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--c-or)}
.fbr-tete-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:86px}
.fbr-logo img{width:var(--h-logo);height:var(--h-logo)}
.fbr-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
.fbr-nav a{display:flex;align-items:center;min-height:46px;padding:0 .95rem;color:var(--c-sapin);font-weight:600;font-size:var(--t-nav);text-decoration:none;position:relative}
.fbr-nav a::after{content:"";position:absolute;left:.95rem;right:.95rem;bottom:4px;height:2px;background:var(--c-sapin);transform:scaleX(0);transition:transform .25s}
.fbr-nav a:hover::after,.fbr-nav a[aria-current]::after{transform:scaleX(1)}
.fbr-burger{display:none}
@media (max-width:1060px){
  .fbr-nav-large{display:none}
  .fbr-burger{display:block;position:relative}
  .fbr-burger summary{list-style:none;display:flex;align-items:center;gap:.5rem;min-height:44px;min-width:44px;padding:0 .4rem;cursor:pointer;color:var(--c-sapin);font-weight:600}
  .fbr-burger summary::-webkit-details-marker{display:none}
  .fbr-burger-i,.fbr-burger-i::before,.fbr-burger-i::after{display:block;width:24px;height:2px;background:var(--c-sapin);position:relative}
  .fbr-burger-i::before,.fbr-burger-i::after{content:"";position:absolute;left:0}
  .fbr-burger-i::before{top:-7px}.fbr-burger-i::after{top:7px}
  .fbr-burger[open] .fbr-nav{position:absolute;right:0;top:calc(100% + 18px);background:#fff;border:1px solid var(--c-or);box-shadow:var(--ombre);min-width:15rem;padding:.4rem 0}
  .fbr-burger .fbr-nav ul{flex-direction:column}
  .fbr-burger .fbr-nav a{padding:0 1.2rem}
  .fbr-tete-in{min-height:72px}
  :root{--h-logo:56px}
}

/* accueil : hero plein écran */
.fbr-une{position:relative;min-height:clamp(420px,62vh,560px);display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;overflow:hidden;background:var(--c-sapin)}
.fbr-une-media,.fbr-une-media picture,.fbr-une-media img{position:absolute;inset:0;width:100%;height:100%}
.fbr-une-media img{object-fit:cover;object-position:center 45%}
.fbr-une-voile{position:absolute;inset:0;background:linear-gradient(rgba(10,20,24,.38),rgba(10,20,24,.52))}
.fbr-une-txt{position:relative;padding-top:3rem;padding-bottom:3rem}
.fbr-une h1{color:#fff;margin:0;font-family:var(--f-texte);line-height:1.05}
.fbr-une-l1{display:block;font-weight:200;font-size:clamp(2.6rem,1.4rem + 5vw,5.6rem)}
.fbr-une-l2{display:block;font-weight:700;font-size:clamp(1.9rem,1rem + 4vw,4.4rem);text-transform:uppercase;letter-spacing:.01em}
.fbr-une-base{margin:1.6rem auto .4rem;font-size:.95rem;max-width:42rem}
.fbr-une-fleche{display:inline-flex;color:#fff;margin-top:.6rem;min-width:44px;min-height:44px;align-items:center;justify-content:center}
.fbr-une-fleche:hover{color:var(--c-or)}

/* grilles de cartes (Elementor « posts ») */
.fbr-recents{padding:3.2rem 0 1rem}
.fbr-grille{display:grid;gap:2rem 1.75rem;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.fbr-grille{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:980px){.fbr-grille{grid-template-columns:repeat(3,minmax(0,1fr))}}
.fbr-carte{display:flex;flex-direction:column;min-width:0}
.fbr-carte-img{display:block;border-radius:var(--r-carte);overflow:hidden;aspect-ratio:1/1;background:var(--c-doux)}
.fbr-carte-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.fbr-carte:hover .fbr-carte-img img{transform:scale(1.04)}
.fbr-carte-txt{display:flex;flex-direction:column;flex:1;padding:1rem 0 0}
.fbr-carte-t{font-family:var(--f-texte);font-weight:500;font-size:1.06rem;line-height:1.35;margin:0 0 .5rem}
.fbr-carte-t a{color:var(--c-sapin);text-decoration:none}
.fbr-carte-t a:hover{color:var(--c-or-fonce)}
.fbr-carte-d{font-size:.875rem;line-height:1.55;color:var(--c-texte);margin:0 0 .9rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fbr-carte-pied{margin:auto 0 0;display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap}
.fbr-carte-pied time{font-size:.8rem;color:var(--c-gris)}
/* cartouche blanc décalé (sections de l'accueil) */
.fbr-cartouche .fbr-carte-img{aspect-ratio:1/1.02;border-radius:var(--r-carte) var(--r-carte) var(--r-carte) var(--r-carte)}
.fbr-cartouche .fbr-carte-txt{background:#fff;margin:-1.9rem 1.1rem 0;padding:1.4rem 1.5rem 1.5rem;position:relative}
.fbr-cartouche .fbr-carte-t{font-family:var(--f-titre);font-weight:500;font-size:1rem}
.fbr-cartouche .fbr-carte-d{display:none}
.fbr-cartouche .fbr-carte-pied time{display:none}
/* à la une : première carte en grand, image à gauche, cadre or */
.fbr-grille-une .fbr-carte:first-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr);border:1px solid var(--c-or);border-radius:var(--r-carte) 0 0 var(--r-carte);overflow:hidden}
.fbr-grille-une .fbr-carte:first-child .fbr-carte-img{border-radius:0;aspect-ratio:16/10}
.fbr-grille-une .fbr-carte:first-child .fbr-carte-txt{padding:1.6rem 1.6rem 1.8rem;justify-content:center}
.fbr-grille-une .fbr-carte:first-child .fbr-carte-t{font-size:1.3rem;font-weight:600}
@media (min-width:860px){
  .fbr-grille-une .fbr-carte:first-child{grid-template-columns:1fr 1fr;min-height:340px}
  .fbr-grille-une .fbr-carte:first-child .fbr-carte-img{aspect-ratio:auto;height:100%}
  .fbr-grille-une .fbr-carte:first-child .fbr-carte-txt{padding:2rem 2.4rem}
}

/* sections de l'accueil */
.fbr-section{padding:3rem 0 3.4rem}
.fbr-section-gris{background:var(--c-bande)}
.fbr-section-tete{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.8rem}
.fbr-section-t{font-family:var(--f-titre);font-weight:700;font-size:var(--t-section);color:var(--c-sapin);margin:0;padding-left:.2rem}
.fbr-section .fbr-btn{font-size:.875rem}
/* produits : cartes en surimpression pleine largeur */
.fbr-mosaique{display:grid;gap:4px;grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.fbr-mosaique{grid-template-columns:2fr 1fr 1fr}}
.fbr-tuile{position:relative;display:block;min-height:300px;border-radius:var(--r-carte);overflow:hidden;color:#fff;text-decoration:none;background:var(--c-sapin)}
.fbr-tuile picture,.fbr-tuile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fbr-tuile::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(0,0,0,.72))}
.fbr-tuile span{position:absolute;left:1.1rem;right:1.1rem;bottom:1.1rem;z-index:1;font-family:var(--f-titre);font-weight:700;font-size:clamp(1.15rem,1rem + .6vw,1.55rem);line-height:1.3}
.fbr-tuile:hover{color:#fff}.fbr-tuile:hover img{transform:scale(1.03)}
.fbr-section-lien{text-align:right;margin:1.2rem 0 0}
.fbr-section-lien a{color:var(--c-sapin);font-family:var(--f-titre);font-weight:700;text-decoration:none}
/* alcool divers : bandeau défilant (carrousel CSS, sans script) */
.fbr-defile{display:grid;grid-auto-flow:column;grid-auto-columns:min(86%,24rem);gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.8rem;overscroll-behavior-x:contain}
.fbr-defile .fbr-carte{scroll-snap-align:start;background:#EEEEEE;border-radius:var(--r-carte);overflow:hidden;text-align:center}
.fbr-defile .fbr-carte-img{border-radius:0 0 var(--r-carte) var(--r-carte);aspect-ratio:16/10}
.fbr-defile .fbr-carte-txt{padding:1rem 1.2rem 1.4rem;align-items:center}
.fbr-defile .fbr-carte-t{font-weight:600}
.fbr-defile .fbr-carte-d{color:#5d5d5d}
.fbr-defile .fbr-carte-pied{justify-content:center}.fbr-defile .fbr-carte-pied time{display:none}
.fbr-defile .fbr-btn{background:#fff;color:var(--c-sapin)}
.fbr-presentation{padding:3rem 0}

/* hero des pages et articles : titre à gauche, image à droite */
.fbr-hero{background:#fff}
.fbr-hero-grille{display:grid;grid-template-columns:minmax(0,1fr);align-items:center}
.fbr-hero-txt{padding:2.2rem var(--gouttiere) 1.6rem;text-align:center;max-width:calc(var(--l-cadre)/2 + 4rem);margin:0 auto}
.fbr-hero h1{margin:.2rem 0 .6rem}
.fbr-hero:not(.fbr-hero-img) .fbr-hero-txt{max-width:calc(var(--l-cadre) + 2*var(--gouttiere))}
.fbr-hero:not(.fbr-hero-img) h1{font-family:var(--f-titre);font-weight:700;font-size:clamp(2rem,1.4rem + 2vw,2.8rem)}
.fbr-chapo{font-size:1rem;color:var(--c-texte);max-width:46rem;margin:0 auto .6rem}
.fbr-infos{display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem 1.1rem;font-size:.85rem;color:var(--c-gris);margin:1rem 0 0}
.fbr-hero-visuel{aspect-ratio:16/10;overflow:hidden}
.fbr-hero-visuel picture,.fbr-hero-visuel img{width:100%;height:100%;object-fit:cover}
@media (min-width:900px){
  .fbr-hero-img .fbr-hero-grille{grid-template-columns:1fr 1fr;min-height:330px}
  .fbr-hero-img .fbr-hero-txt{padding:2.5rem 2.5rem 2.5rem max(var(--gouttiere),calc((100vw - var(--l-cadre))/2));max-width:none;margin:0}
  .fbr-hero-visuel{aspect-ratio:auto;height:100%;min-height:330px}
}
.fbr-ariane ol{list-style:none;margin:0 0 .8rem;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.2rem .5rem;font-size:.8rem;color:var(--c-gris)}
.fbr-ariane li+li::before{content:"›";margin-right:.5rem}
.fbr-ariane a{color:var(--c-gris)}

/* corps : même largeur que l'en-tête */
.fbr-corps{padding-top:2rem;padding-bottom:2.5rem}
.fbr-intro{padding-bottom:0}
.fbr-prose{width:100%;font-size:1.0625rem}
.fbr-prose h2{font-weight:400;color:var(--c-sapin)}
.fbr-prose h3{font-weight:500}
.fbr-prose ul,.fbr-prose ol{padding-left:1.3rem}
.fbr-prose li{margin:.3em 0}
.fbr-prose strong{font-weight:600}
.fbr-prose table{width:100%;border-collapse:collapse;font-size:.95rem;display:block;overflow-x:auto}
.fbr-prose th,.fbr-prose td{border:1px solid var(--c-ligne);padding:.55em .7em;text-align:left;vertical-align:top}
.fbr-prose th{background:var(--c-doux);color:var(--c-sapin);font-weight:600}
.fbr-prose blockquote{margin:1.4em 0;padding:.4em 0 .4em 1.1em;border-left:3px solid var(--c-or);color:var(--c-sapin)}
.fbr-sommaire{border:1px solid #D5D8DC;border-radius:var(--r-boite);margin:0 0 2rem}
.fbr-sommaire summary{cursor:pointer;padding:.9rem 1.2rem;color:var(--c-or-fonce);font-weight:500;border-bottom:1px solid #D5D8DC;min-height:44px}
.fbr-sommaire ol{margin:.8rem 0 1rem;padding:0 1.2rem 0 2.6rem;font-size:.95rem}
.fbr-sommaire a{color:var(--c-texte);text-decoration:none}
.fbr-sommaire a:hover{color:var(--c-or-fonce);text-decoration:underline}
.fbr-essentiel,.fbr-encadre{background:var(--c-doux);border-left:4px solid var(--c-or);padding:1.1rem 1.4rem;margin:1.6em 0;border-radius:0 var(--r-boite) var(--r-boite) 0}
.fbr-essentiel-t,.fbr-encadre-t{font-weight:600;color:var(--c-sapin);margin:0 0 .4em}
.fbr-encadre>:last-child{margin-bottom:0}
.fbr-figure{margin:1.8em 0}.fbr-figure img{border-radius:var(--r-carte)}
.fbr-figure figcaption{font-size:.85rem;color:var(--c-gris);margin-top:.5em;text-align:center}
.fbr-faq{margin:2.4rem 0}
.fbr-faq details{border-bottom:1px solid var(--c-ligne)}
.fbr-faq summary{cursor:pointer;padding:.85rem 0;font-weight:500;color:var(--c-sapin);min-height:44px}
.fbr-faq details p{margin:0 0 1rem}
.fbr-ia{margin:2.4rem 0 0;padding:1.2rem 1.4rem;border:1px solid var(--c-ligne);border-radius:var(--r-boite);font-size:.9rem}
.fbr-ia-t{font-weight:600;color:var(--c-sapin);margin:0 0 .6rem}
.fbr-ia-l{list-style:none;padding:0;margin:0 0 .6rem;display:flex;flex-wrap:wrap;gap:.5rem}
.fbr-ia-l a{display:inline-flex;align-items:center;min-height:40px;padding:0 .9rem;border:1px solid var(--c-or);border-radius:var(--r-bouton);color:var(--c-sapin);text-decoration:none}
.fbr-ia-l a:hover{background:var(--c-or)}
.fbr-ia-copie{font:inherit;min-height:40px;padding:0 .9rem;border:1px solid var(--c-sapin);background:#fff;color:var(--c-sapin);border-radius:var(--r-bouton);cursor:pointer}
.fbr-ia-note{color:var(--c-gris);font-size:.8rem;margin:0}

/* « Continuez le voyage… » */
.fbr-voyage{background:var(--c-bande);padding:3rem 0 3.4rem}
.fbr-voyage-t{text-align:center;text-transform:uppercase;font-family:var(--f-texte);font-weight:600;font-size:clamp(1.6rem,1.2rem + 1.3vw,2.2rem);margin:0 0 2rem}
.fbr-grille-voyage .fbr-carte{text-align:center}
.fbr-grille-voyage .fbr-carte-img{aspect-ratio:16/10}
.fbr-grille-voyage .fbr-carte-t{font-size:1rem}
.fbr-grille-voyage .fbr-carte-t a{color:var(--c-or-fonce)}
.fbr-grille-voyage .fbr-carte-d{display:none}
.fbr-grille-voyage .fbr-carte-pied{justify-content:center;flex-direction:column;gap:.3rem}
.fbr-grille-voyage .fbr-btn{background:transparent;min-height:36px;padding:0;font-size:.85rem}

/* listes et rubriques */
.fbr-liste{padding:1.5rem 0 3.5rem}

/* formulaire */
.fbr-form{margin:2rem 0;padding:1.6rem;border:1px solid var(--c-ligne);border-radius:var(--r-boite);background:var(--c-doux)}
.fbr-form-l{display:grid;gap:0 1.2rem}
@media (min-width:700px){.fbr-form-l{grid-template-columns:1fr 1fr}}
.fbr-form-c{margin:0 0 1rem}
.fbr-form label{display:block;font-weight:500;color:var(--c-sapin);margin-bottom:.3rem}
.fbr-form input[type=text],.fbr-form input[type=email],.fbr-form textarea{width:100%;font:inherit;padding:.7rem .8rem;border:1px solid #9AA3A6;border-radius:var(--r-boite);background:#fff;min-height:44px}
.fbr-form-ok{display:flex;gap:.6rem;align-items:flex-start;font-size:.9rem;margin:0 0 1rem}
.fbr-form-ok input{width:22px;height:22px;margin-top:.15rem;flex:none}
.fbr-form-ok label{font-weight:400;color:var(--c-texte)}
.fbr-form-pot{display:none}
.fbr-form-attente{color:var(--c-ko)}

/* 404 */
.fbr-hero-404 .fbr-hero-txt{padding-top:2.6rem}
.fbr-404-code{font-family:var(--f-texte);font-weight:200;font-size:clamp(4rem,3rem + 6vw,8rem);line-height:1;color:var(--c-or);margin:0}

/* pied */
.fbr-pied{background:var(--c-sapin);color:#fff;margin-top:0}
.fbr-pied-in{display:grid;gap:2rem;padding-top:2.6rem;padding-bottom:1.5rem;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.fbr-pied-in{grid-template-columns:1fr 1.3fr 1fr;align-items:start}}
.fbr-pied-logo img{width:136px;height:136px}
.fbr-pied ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0 .9rem}
.fbr-pied-legal{flex-direction:column}
.fbr-pied a{color:#fff;font-weight:600;font-size:.95rem;text-decoration:none;display:inline-flex;min-height:36px;align-items:center}
.fbr-pied a:hover,.fbr-pied a[aria-current]{color:var(--c-or)}
.fbr-pied-bas{padding-bottom:1.8rem;text-align:center}
.fbr-moderation{font-size:.95rem;margin:1rem 0 .8rem}
.fbr-pied-note{font-size:.8rem;color:#D5DCDE;margin:.3rem auto;max-width:56rem}
