[hidden]{display:none !important;}

body.p27,.p27 .n27-section,.p27 .n27-recap,.p27 .n27-nav{background:#f5f5f5;}

.p27-tete{padding:1.6rem 0 .4rem;}
.p27-ariane{font-size:.76rem;color:var(--gris2);margin-bottom:1rem;}
.p27-ariane a{color:var(--rouge);text-decoration:underline;text-underline-offset:3px;}
.p27-tete-ligne{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;border-bottom:4px solid var(--rouge);padding-bottom:.8rem;}
.p27-h1{flex:1 1 18rem;min-width:0;font-size:clamp(1.8rem,4vw,2.7rem);font-weight:800;line-height:1.08;letter-spacing:-.025em;}
.p27-intro{font-size:1.04rem;line-height:1.65;color:var(--gris1);max-width:66ch;margin-top:1rem;}
.p27-actions{display:flex;flex-wrap:wrap;gap:.5rem;}

.p27-btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--rouge);color:#fff;border:1.5px solid var(--rouge);padding:.55rem 1.1rem;font:800 .84rem var(--sans);cursor:pointer;white-space:nowrap;}
.p27-btn:hover{background:var(--rouge-dk);border-color:var(--rouge-dk);}
.p27-btn--contour{background:#fff;color:var(--rouge);}
.p27-btn--contour:hover,.p27-btn--contour.actif{background:var(--rouge);color:#fff;}
.p27-btn[disabled]{opacity:.35;cursor:default;}

.p27-onglets{display:flex;flex-wrap:wrap;gap:.45rem;margin:1.2rem 0 .4rem;}
.p27-onglets a{display:inline-flex;align-items:center;gap:.4rem;border:1.5px solid var(--rouge);color:var(--rouge);padding:.42rem .85rem;font-weight:700;font-size:.84rem;white-space:nowrap;}
.p27-onglets a:hover,.p27-onglets a.actif,.p27-onglets a[aria-current]{background:var(--rouge);color:#fff;}
.p27-onglets a span{font-size:.72rem;font-weight:800;opacity:.85;}

.p27-h2{font-size:clamp(1.3rem,2.4vw,1.7rem);font-weight:800;letter-spacing:-.02em;line-height:1.15;padding-bottom:.5rem;border-bottom:3px solid var(--rouge);margin:2.4rem 0 1.2rem;scroll-margin-top:80px;}
.p27-h2 small{font-size:.82rem;font-weight:700;color:var(--gris2);margin-left:.5rem;white-space:nowrap;letter-spacing:0;}
.p27-h2 a{font-size:.84rem;font-weight:700;color:var(--rouge);}

.e27-grille{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.6rem 1.4rem;}
.e27-grille--3{grid-template-columns:repeat(3,minmax(0,1fr));}

.e27{position:relative;display:flex;flex-direction:column;min-width:0;}
.e27-cadre{display:block;background:#F3F1EE;margin-bottom:.65rem;}
.e27-cadre img{display:block;width:100%;height:auto;aspect-ratio:var(--ratio);object-fit:cover;}
.e27-rang{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding:0 .4rem;background:var(--rouge);color:#fff;font-weight:800;font-size:1rem;margin-bottom:.45rem;align-self:flex-start;}
.e27-lieu{font-size:.74rem;font-weight:800;color:var(--rouge);margin-bottom:.2rem;}
.e27-titre{font-size:1rem;font-weight:800;line-height:1.28;overflow-wrap:anywhere;}
.e27-titre a::after{content:'';position:absolute;inset:0;}
.e27:hover .e27-titre{color:var(--rouge);}
.e27-date{font-size:.78rem;color:var(--gris1);line-height:1.45;margin-top:.35rem;}
.e27-date b{font-weight:700;}
.e27-desc{font-size:.84rem;color:var(--gris2);line-height:1.5;margin-top:.35rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.e27-pastilles{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.45rem;}
.e27-pastille{font-size:.68rem;font-weight:800;padding:.12rem .45rem;background:var(--rouge-pale);color:var(--rouge-dk);}
.e27-pastille--avant{background:var(--encre);color:#fff;}
.e27-pastille--gratuit{background:#E3F4EA;color:#1a6b3c;}
.e27-cat{font-size:.74rem;color:var(--gris2);margin-top:.35rem;}

.e27-defile{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,1fr);gap:1.2rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:.4rem;}
.e27-defile::-webkit-scrollbar{display:none;}
.e27-defile>.e27{scroll-snap-align:start;}
@media (min-width:1080px){.e27-defile{grid-auto-columns:calc((100% - 3 * 1.2rem) / 4);}}

.p27-vide{border:1.5px dashed var(--sep);padding:1.6rem 1.2rem;text-align:center;color:var(--gris2);font-size:.95rem;}
.p27-vide a{color:var(--rouge);font-weight:700;text-decoration:underline;}

.p27-filtres{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem 1rem;align-items:end;border:1.5px solid var(--sep);padding:1rem 1.1rem;margin:1rem 0;}
.p27-champ{display:flex;flex-direction:column;min-width:0;}
.p27-champ label{font-size:.72rem;font-weight:800;color:var(--gris1);margin-bottom:.3rem;}
.p27-champ input,.p27-champ select{font:500 .9rem var(--sans);padding:.55rem .65rem;border:1.5px solid var(--sep);background:#fff;color:var(--encre);width:100%;}
.p27-champ input:focus,.p27-champ select:focus{outline:none;border-color:var(--rouge);}
.p27-filtres-bas{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;}

.p27-actifs{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;font-size:.82rem;margin:.6rem 0 0;}
.p27-actifs b{font-weight:800;}
.p27-actif{background:var(--rouge-pale);color:var(--rouge-dk);font-weight:700;padding:.15rem .5rem;}
.p27-actifs a{color:var(--rouge);font-weight:700;text-decoration:underline;}

.p27-seo{margin-top:3rem;padding-top:1rem;border-top:1px solid var(--sep);max-width:78ch;}
.p27-seo h2{font-size:1.25rem;font-weight:800;padding-bottom:.45rem;border-bottom:3px solid var(--rouge);margin-bottom:.9rem;display:inline-block;}
.p27-seo p{font-size:.95rem;line-height:1.75;color:var(--gris1);margin-bottom:.9rem;}
.p27-seo a{color:var(--rouge);font-weight:700;text-decoration:underline;}
.p27-seo details summary{cursor:pointer;color:var(--rouge);font-weight:800;font-size:.9rem;list-style:none;}
.p27-seo details summary::-webkit-details-marker{display:none;}
.p27-seo details[open] summary{display:none;}

@media (max-width:1080px){ .e27-grille{grid-template-columns:repeat(3,minmax(0,1fr));} .p27-filtres{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media (max-width:760px){
  .e27-grille,.e27-grille--3{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 1rem;}
  .p27-tete-ligne{border-bottom-width:3px;}
}
@media (max-width:520px){
  .e27-grille,.e27-grille--3{grid-template-columns:minmax(0,1fr);}
  
  .e27-grille>.e27{display:grid;grid-template-columns:120px minmax(0,1fr);column-gap:.9rem;align-content:start;}
  .e27-grille>.e27>.e27-cadre{grid-row:1 / span 6;margin:0;}
  .e27-desc{-webkit-line-clamp:2;}
  .p27-filtres{grid-template-columns:minmax(0,1fr);}
}

.brv27{position:relative;display:flex;flex-direction:column;min-width:0;}
.brv27-cadre{display:block;background:#F3F1EE;aspect-ratio:1;margin-bottom:.6rem;}
.brv27-cadre img{display:block;width:100%;height:100%;object-fit:cover;}
.brv27-meta{display:flex;flex-wrap:wrap;gap:.2rem .6rem;font-size:.74rem;font-weight:700;color:var(--gris2);}
.brv27-cat{color:var(--rouge);font-weight:800;}
.brv27-titre{font-size:1rem;font-weight:800;line-height:1.28;margin-top:.2rem;overflow-wrap:anywhere;}
.brv27-titre a::after{content:'';position:absolute;inset:0;}
.brv27:hover .brv27-titre{color:var(--rouge);}
.brv27-desc{font-size:.86rem;color:var(--gris1);line-height:1.5;margin-top:.3rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.brv27-date{font-size:.76rem;color:var(--gris2);margin-top:.35rem;}
@media (max-width:520px){
  .e27-grille>.brv27{display:grid;grid-template-columns:110px minmax(0,1fr);column-gap:.9rem;align-content:start;}
  .e27-grille>.brv27>.brv27-cadre{grid-row:1 / span 5;margin:0;}
}

.p27-prose{max-width:760px;font-size:1.02rem;line-height:1.75;}
.p27-prose>*:first-child{margin-top:0;}
.p27-prose h2{font-size:clamp(1.3rem,2.4vw,1.6rem);font-weight:800;letter-spacing:-.02em;line-height:1.2;padding-bottom:.45rem;border-bottom:3px solid var(--rouge);margin:2.2rem 0 .9rem;}
.p27-prose h3{font-size:1.1rem;font-weight:800;margin:1.4rem 0 .4rem;}
.p27-prose p{margin-bottom:.9rem;}
.p27-prose ul{margin:0 0 1rem 1.2rem;}
.p27-prose li{margin-bottom:.4rem;}
.p27-prose li::marker{color:var(--rouge);}
.p27-prose a{color:var(--rouge);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
.p27-encadre{border-left:4px solid var(--rouge);background:#F7F5F2;padding:1rem 1.2rem;margin:1.6rem 0;}
.p27-encadre>*:last-child{margin-bottom:0;}
.p27-encadre h3{margin-top:0;color:var(--rouge);}
.p27-chiffres{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.8rem;margin:1rem 0 1.4rem;}
.p27-chiffres div{border-top:3px solid var(--rouge);padding-top:.5rem;}
.p27-chiffres b{display:block;font-size:1.5rem;font-weight:800;color:var(--rouge);line-height:1.1;}
.p27-chiffres span{font-size:.86rem;color:var(--gris1);line-height:1.4;display:block;margin-top:.2rem;}
.p27-bandeau{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;background:var(--encre);color:#fff;padding:1.3rem 1.4rem;margin-top:2.6rem;}
.p27-bandeau p{max-width:60ch;color:rgba(255,255,255,.82);line-height:1.6;margin:0;}
.p27-bandeau strong{display:block;color:#fff;font-size:1.1rem;margin-bottom:.2rem;}

.an-liste{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;}
.an-etab{border:1.5px solid var(--sep);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.35rem;}
.an-etab h3{font-size:1.08rem;font-weight:800;line-height:1.3;}
.an-spec{font-size:.8rem;font-weight:800;color:var(--rouge);}
.an-adresse,.an-infos{font-size:.9rem;color:var(--gris1);line-height:1.5;}
.an-desc{font-size:.92rem;line-height:1.6;}
.an-avis{font-size:.9rem;font-style:italic;color:var(--gris1);border-left:3px solid var(--sep);padding-left:.7rem;}
.an-note{font-size:.84rem;font-weight:800;}
.an-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:auto;padding-top:.5rem;}
.an-actions form{margin:0;}
.an-actions .p27-btn{padding:.42rem .85rem;font-size:.84rem;}
.an-filtre{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:1rem 0 1.2rem;}
.an-filtre label{font-weight:800;font-size:.9rem;}
.an-filtre select{font:600 .92rem var(--sans);padding:.45rem .6rem;border:1.5px solid var(--sep);}
.an-filtre output{font-size:.88rem;color:var(--gris2);}
.an-autres{display:flex;flex-wrap:wrap;gap:.4rem;}
.an-autres a{border:1.5px solid var(--sep);padding:.35rem .75rem;font-size:.86rem;font-weight:700;}
.an-autres a:hover{border-color:var(--rouge);color:var(--rouge);}
.an-texte{max-width:78ch;font-size:1rem;line-height:1.75;margin-top:2rem;}
.an-texte p{margin-bottom:.8rem;}
.an-texte a{color:var(--rouge);text-decoration:underline;}
.an-texte h2,.an-texte h3{font-weight:800;margin:1.4rem 0 .5rem;}
@media (max-width:760px){ .an-liste{grid-template-columns:minmax(0,1fr);} }

.f27{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.45rem;margin-top:1.2rem;}
.f27-b{display:inline-flex;align-items:center;gap:.35rem;font:700 .92rem var(--sans);background:#F3F1EE;color:var(--encre);padding:.5rem .95rem;border:none;cursor:pointer;list-style:none;}
.f27-b::-webkit-details-marker{display:none;}
.f27-b:hover{background:#E8E5E0;}
.f27-b[aria-pressed="true"],.f27-b[aria-pressed="true"]:hover{background:var(--rouge);color:#fff;}
.f27-plus{position:relative;}
.f27-plus[open]>.f27-b:not([aria-pressed="true"]){background:#E8E5E0;}
.f27-liste{position:absolute;z-index:30;top:calc(100% + .35rem);left:0;background:#fff;border:1.5px solid var(--sep);box-shadow:0 8px 24px rgba(22,18,26,.12);padding:.4rem;display:grid;grid-template-columns:repeat(2,minmax(0,max-content));gap:.1rem .4rem;width:max-content;max-width:min(560px,90vw);}
.f27-liste button{display:block;text-align:left;font:600 .92rem var(--sans);background:none;border:none;padding:.45rem .6rem;cursor:pointer;color:var(--encre);white-space:nowrap;}
.f27-liste button:hover{background:#F3F1EE;}
.f27-liste button[aria-pressed="true"]{color:var(--rouge);font-weight:800;}
@media (max-width:520px){ .f27-liste{grid-template-columns:minmax(0,1fr);} }