/* ASE Events — moteur EMD v2 · noir chaud et or */
:root{--fond:#17120E;--fond-alt:#1D1712;--surface:#241C16;--or:#C8A266;--or-clair:#E6CC9A;--texte:#F4ECDD;--texte-2:#DDD2BF;--discret:#BCAF9A;--ligne:rgba(200,162,102,.24);--ligne-forte:rgba(200,162,102,.45);--serif:'Cormorant Garamond',Georgia,serif;--sans:'Figtree',system-ui,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--fond);color:var(--texte);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:var(--or-clair);text-decoration:none}a:hover{color:var(--texte)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--or-clair);outline-offset:3px}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.1;margin:0}
h1{font-size:clamp(40px,6vw,64px);letter-spacing:-.5px}
h1 em,h2 em{color:var(--or-clair)}
h2{font-size:clamp(32px,4.2vw,46px)}
h3{font-size:26px;font-weight:600}
p{margin:0}
.saut{position:absolute;left:-999px;top:8px;background:var(--or);color:var(--fond);padding:8px 14px;z-index:20}.saut:focus{left:8px}
.conteneur{max-width:1200px;margin:0 auto;padding-inline:32px}
.etroit{max-width:860px}
.pile{display:flex;flex-direction:column;gap:28px}
.sur-titre{font-size:13px;letter-spacing:3px;text-transform:uppercase;color:var(--or)}
.chapo{font-size:19px;color:var(--texte-2);max-width:600px}
.note{font-size:14px;color:var(--discret)}
.bouton{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border:1px solid var(--or);color:var(--or-clair);font-weight:600;border-radius:2px;background:transparent;font:inherit;font-weight:600;cursor:pointer}
.bouton-plein{background:var(--or);color:var(--fond)}.bouton-plein:hover{background:var(--or-clair);color:var(--fond)}
.bouton-centre{align-self:center}
.etoiles{color:var(--or);letter-spacing:2px}
/* en-tête */
.entete{border-bottom:1px solid var(--ligne)}
.nav{padding-block:14px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.marque{display:flex;align-items:center;gap:14px}
.marque img{display:block;width:72px;height:72px;object-fit:contain}
.marque-zone{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--discret);line-height:1.5}
.nav-liens{display:flex;flex-wrap:wrap;align-items:center;gap:26px;font-size:15px}
.nav-liens a:not(.bouton){color:var(--texte)}.nav-liens a[aria-current]{color:var(--or-clair)}
.nav-liens .bouton{min-height:44px;padding:0 20px;background:var(--or);color:var(--fond)}
/* hero */
.hero{display:flex;flex-wrap:wrap;gap:56px;align-items:center;padding-block:80px 72px}
.hero-texte{flex:1 1 540px;min-width:0;display:flex;flex-direction:column;gap:26px}
.hero-fiche{flex:1 1 360px;min-width:0;padding:36px;border:1px solid var(--ligne-forte);background:var(--surface);display:flex;flex-direction:column;gap:22px;position:relative}
.hero-fiche::before{content:"";position:absolute;inset:10px;border:1px solid var(--ligne);pointer-events:none}
.hero-fiche dl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.hero-fiche dt{font-family:var(--serif);font-size:44px;line-height:1;color:var(--or-clair)}
.hero-fiche dd{margin:6px 0 0;color:var(--texte-2);font-size:15px}
.hero-fiche .faits{grid-template-columns:1fr;gap:16px}
.hero-fiche .faits dt{font-family:var(--sans);font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--or)}
.hero-fiche .faits dd{font-family:var(--serif);font-size:24px;line-height:1.25;color:var(--texte);margin-top:2px}
.hero-lieu{padding-top:32px}
.badge{align-self:flex-start;display:inline-block;padding:4px 10px;border:1px solid var(--ligne-forte);color:var(--discret);font-size:12px;letter-spacing:1.2px;text-transform:uppercase;font-weight:600}
.badge-plein{background:var(--or);border-color:var(--or);color:var(--fond)}
.badge-or{border-color:var(--or);color:var(--or-clair)}
.preuves{display:flex;flex-wrap:wrap;gap:24px;font-size:15px;color:var(--texte-2)}
/* formulaire date */
.form-date{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;padding:22px;border:1px solid var(--ligne-forte);background:var(--surface);max-width:600px;margin-block:8px}
.champ{flex:1 1 200px;display:flex;flex-direction:column;gap:6px}
.champ label{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--discret)}
.champ input,.champ select{min-height:48px;padding:0 14px;background:var(--fond);color:var(--texte);border:1px solid var(--ligne-forte);border-radius:2px;font:inherit;color-scheme:dark}
.form-note{flex-basis:100%;font-size:14px;color:var(--discret)}
/* sections */
.bande{border-top:1px solid var(--ligne);padding-block:84px}
.bande-alt{background:var(--fond-alt)}
.titre-section{display:flex;flex-direction:column;gap:12px;max-width:700px}
.titre-section p:not(.sur-titre){color:var(--texte-2)}
.titre-ligne{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px}
.titre-ligne>p{color:var(--texte-2)}
.grille-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px}
.pilier{display:flex;flex-direction:column;gap:10px;padding-top:20px;border-top:1px solid var(--or)}
.pilier p{color:var(--texte-2);font-size:16px}
.rangee{display:flex;flex-wrap:wrap;gap:24px}
.avis{flex:1 1 300px;min-width:0;margin:0;padding:28px;border:1px solid var(--ligne);display:flex;flex-direction:column;gap:16px}
.avis blockquote{margin:0;font-family:var(--serif);font-style:italic;font-size:23px;line-height:1.35}
.avis figcaption{font-size:14px;color:var(--discret)}
details{border-bottom:1px solid var(--ligne);padding-bottom:16px}
summary{cursor:pointer;font-size:20px;font-weight:600;min-height:44px;display:flex;align-items:center;list-style-position:inside}
details p{margin-top:8px;color:var(--texte-2)}
.bande-cta{background:var(--surface)}
.cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px}
.cta h2{flex:1 1 520px}
.cta-boutons{display:flex;flex-wrap:wrap;gap:12px}
.avis-mn{display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.avis-mn p{color:var(--discret);font-size:15px}
.bouton-discret{border-color:var(--ligne-forte);color:var(--texte-2)}
/* cartes de lieux */
.grille-cartes{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.carte{display:flex;flex-direction:column;gap:8px;padding:24px;background:var(--surface);border:1px solid var(--ligne);color:var(--texte);transition:border-color .2s}
.carte:hover{border-color:var(--or);color:var(--texte)}
.carte-partenaire{border-color:var(--or)}
.carte-nom{font-family:var(--serif);font-size:27px;font-weight:600;line-height:1.15;margin-top:4px}
.carte-lieu{font-size:15px;color:var(--discret)}
.carte-infos{font-size:15px;color:var(--texte-2)}
.carte-lien{margin-top:auto;padding-top:6px;font-weight:600;color:var(--or-clair)}
.carte[hidden]{display:none}
.filtres{display:flex;flex-wrap:wrap;gap:8px}
.filtre{min-height:44px;padding:0 18px;background:transparent;color:var(--texte);border:1px solid var(--ligne-forte);border-radius:22px;font:inherit;font-size:15px;cursor:pointer}
.filtre.actif{background:var(--or);border-color:var(--or);color:var(--fond);font-weight:600}
/* page lieu */
.fil{padding-top:22px;font-size:14px;color:var(--discret)}
.entete-page{padding-block:40px 32px}
.bas{padding-bottom:48px}
.deux-colonnes{display:flex;flex-wrap:wrap;gap:56px}
.deux-colonnes>.pile{flex:1 1 440px;min-width:0;gap:18px}
.deux-colonnes p{color:var(--texte-2)}
.encadre{padding:26px;border:1px solid var(--ligne);display:flex;flex-direction:column;gap:12px}
.encadre ul{margin:0;padding-left:20px;color:var(--texte-2);display:flex;flex-direction:column;gap:8px}
.source{padding-block:28px}
/* pied */
.pied{border-top:1px solid var(--ligne);padding-block:40px 120px}
.pied-grille{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;font-size:14px;color:var(--discret)}
.pied-marque{display:flex;flex-direction:column;gap:14px}
.pied-marque img{width:200px;height:auto}
.pied-liens{display:flex;flex-wrap:wrap;gap:20px}
/* sites thématiques : articles */
.texte-long h2{font-size:clamp(28px,3.4vw,38px);margin-top:12px}
.texte-long p{color:var(--texte-2)}
.liste{margin:0;padding-left:22px;color:var(--texte-2);display:flex;flex-direction:column;gap:10px}
.liste li::marker{color:var(--or)}
.article{padding-block:32px 72px}
.article-tete{max-width:860px;gap:20px;padding-bottom:40px}
.reponse{max-width:780px;font-size:20px;color:var(--texte);border-left:2px solid var(--or);padding-left:20px}
.article-corps{display:flex;flex-wrap:wrap;gap:56px;align-items:flex-start}
.article-texte{flex:1 1 560px;min-width:0;max-width:760px;gap:20px}
.article-cote{flex:1 1 320px;min-width:0}
.colle{position:sticky;top:24px}
.colle .form-date{padding:0;border:0;background:none}
.liste-depts{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;font-family:var(--serif);font-size:23px}
.liste-lieux{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:4px 32px}
.liste-lieux li{padding:10px 0;border-bottom:1px solid var(--ligne);display:flex;flex-direction:column;gap:2px}
.liste-lieux strong{font-weight:600;color:var(--texte)}
.liste-lieux span{font-size:15px;color:var(--discret)}
.villes{color:var(--texte-2);font-size:15px;line-height:1.9}
/* sites pro : thème clair */
.theme-clair{--fond:#FBF8F3;--fond-alt:#F3EEE5;--surface:#FFFFFF;--or:#9C7A3C;--or-clair:#7D5F28;--texte:#1C1712;--texte-2:#3F372E;--discret:#6A6054;--ligne:rgba(156,122,60,.22);--ligne-forte:rgba(156,122,60,.45)}
.theme-clair .bouton-plein,.theme-clair .nav-liens .bouton,.theme-clair .filtre.actif{color:#fff}
.theme-clair .bouton-plein:hover{background:#7D5F28;color:#fff}
.theme-clair .pied{background:#17120E;color:#BCAF9A}.theme-clair .pied a{color:#E6CC9A}
.theme-clair .barre-mobile{background:rgba(251,248,243,.97)}
.theme-clair .champ input{color-scheme:light}
.form-pro{align-items:center}
.form-pro-titre{flex-basis:100%;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--discret)}
.references{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:12px}
.references li{padding:14px 22px;border:1px solid var(--ligne-forte);background:var(--surface);font-family:var(--serif);font-size:22px;font-weight:600}
/* sites entrée de gamme : thème accessible */
.theme-accessible{--fond:#FFFDF8;--fond-alt:#FFF3E6;--surface:#FFFFFF;--or:#C24E2A;--or-clair:#A3401F;--texte:#23201C;--texte-2:#463F37;--discret:#6E6458;--ligne:rgba(194,78,42,.18);--ligne-forte:rgba(194,78,42,.38);--serif:'Figtree',system-ui,sans-serif}
.theme-accessible h1,.theme-accessible h2,.theme-accessible h3{font-weight:700;letter-spacing:-.5px}
.theme-accessible h1{font-size:clamp(36px,5.2vw,56px)}
.theme-accessible h1 em,.theme-accessible h2 em{font-style:normal;color:var(--or)}
.theme-accessible .bouton{border-radius:999px}
.theme-accessible .bouton-plein,.theme-accessible .nav-liens .bouton,.theme-accessible .filtre.actif{color:#fff}
.theme-accessible .bouton-plein:hover{background:#A3401F;color:#fff}
.theme-accessible .form-date,.theme-accessible .hero-fiche,.theme-accessible .carte,.theme-accessible .encadre,.theme-accessible .avis{border-radius:16px}
.theme-accessible .hero-fiche::before{display:none}
.theme-accessible .champ input{border-radius:10px;color-scheme:light}
.theme-accessible .avis blockquote{font-style:normal;font-size:19px;line-height:1.5}
.theme-accessible .pied{background:#23201C;color:#CFC6BA}.theme-accessible .pied a{color:#FFB79C}
.theme-accessible .barre-mobile{background:rgba(255,253,248,.97)}
.marque img.logo-large{width:auto;height:56px;max-width:240px;object-fit:contain}
@media (max-width:760px){.marque img.logo-large{height:44px}}
/* site oldschool : habillages rétro tirés au hasard (Windows XP, Aqua, MSN, Nokia) */
.theme-retro h1 em,.theme-retro h2 em{font-style:normal}
.theme-retro .hero-fiche::before{display:none}
.bouton-epoque{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;border:1px solid var(--ligne-forte);background:var(--surface);color:var(--texte);border-radius:4px}
.retro-xp{--fond:#ECE9D8;--fond-alt:#F5F3E8;--surface:#FFFFFF;--or:#2456C8;--or-clair:#1C46A8;--texte:#141414;--texte-2:#2E2E2E;--discret:#555;--ligne:rgba(10,36,106,.22);--ligne-forte:#7A96DF;--serif:Tahoma,Verdana,'Figtree',sans-serif;--sans:Tahoma,Verdana,'Figtree',sans-serif}
.retro-xp h1,.retro-xp h2,.retro-xp h3{font-weight:700;letter-spacing:0}
.retro-xp .entete{background:linear-gradient(#3168D5,#245EDC 45%,#1941A5);border:0}
.retro-xp .entete a:not(.bouton),.retro-xp .marque-zone{color:#fff}
.retro-xp .bouton{border-radius:3px;border:1px solid #003C74;background:linear-gradient(#FFFFFF,#ECEBE6);color:#000}
.retro-xp .bouton-plein,.retro-xp .nav-liens .bouton{background:linear-gradient(#5BB45B,#3C9A3C 50%,#2E7D2E);border:1px solid #1E5E1E;color:#fff;border-radius:10px;font-style:italic}
.retro-xp .hero-fiche,.retro-xp .form-date,.retro-xp .carte,.retro-xp .encadre,.retro-xp .avis{border:3px solid #0A55E1;border-top-width:26px;border-radius:8px 8px 3px 3px;background:#fff;box-shadow:2px 2px 0 rgba(0,0,0,.2)}
.retro-xp .pied{background:linear-gradient(#245EDC,#1941A5);color:#E6EEFF}.retro-xp .pied a{color:#fff}
.retro-aqua{--fond:#F2F2F2;--fond-alt:#E8E8E8;--surface:#FFFFFF;--or:#1F6FD1;--or-clair:#1556A8;--texte:#1A1A1A;--texte-2:#333;--discret:#5C5C5C;--ligne:rgba(0,0,0,.14);--ligne-forte:rgba(0,0,0,.28);--serif:'Lucida Grande','Helvetica Neue',Helvetica,sans-serif;--sans:'Lucida Grande','Helvetica Neue',Helvetica,sans-serif}
.retro-aqua body,.retro-aqua{background:repeating-linear-gradient(#FFFFFF 0 2px,#EEEEEE 2px 4px)}
.retro-aqua h1,.retro-aqua h2,.retro-aqua h3{font-weight:700;letter-spacing:-.5px}
.retro-aqua .bande-alt{background:rgba(232,232,232,.85)}
.retro-aqua .entete{background:linear-gradient(#E8E8E8,#C9C9C9);border-bottom:1px solid #9A9A9A}
.retro-aqua .bouton{border-radius:999px;background:linear-gradient(#FFFFFF,#DADADA);border:1px solid #8C8C8C;color:#111}
.retro-aqua .bouton-plein,.retro-aqua .nav-liens .bouton{background:linear-gradient(#8FC3F7,#3A8EE6 50%,#2275D7 51%,#6FB2F5);border:1px solid #1D5FB3;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.3)}
.retro-aqua .hero-fiche,.retro-aqua .form-date,.retro-aqua .carte,.retro-aqua .encadre,.retro-aqua .avis{border-radius:10px;background:#fff;border:1px solid #B5B5B5;box-shadow:0 6px 18px rgba(0,0,0,.12)}
.retro-aqua .pied{background:#2B2B2B;color:#CCC}.retro-aqua .pied a{color:#9CCBFF}
.retro-msn{--fond:#EAF2FC;--fond-alt:#DCEAFB;--surface:#FFFFFF;--or:#2F7D32;--or-clair:#1F5FA8;--texte:#10203A;--texte-2:#2A3B55;--discret:#4F6380;--ligne:rgba(31,95,168,.2);--ligne-forte:rgba(31,95,168,.45);--serif:Tahoma,'Segoe UI','Figtree',sans-serif;--sans:Tahoma,'Segoe UI','Figtree',sans-serif}
.retro-msn h1,.retro-msn h2,.retro-msn h3{font-weight:700;letter-spacing:0}
.retro-msn .entete{background:linear-gradient(#FFFFFF,#CFE3FA);border-bottom:1px solid #8FB4E3}
.retro-msn .bouton{border-radius:6px;background:linear-gradient(#FFFFFF,#E3EEFB);border:1px solid #7FA6D8;color:#10203A}
.retro-msn .bouton-plein,.retro-msn .nav-liens .bouton{background:linear-gradient(#7BCB5A,#3FA33A);border:1px solid #2C7A28;color:#fff}
.retro-msn .hero-fiche,.retro-msn .form-date,.retro-msn .carte,.retro-msn .encadre,.retro-msn .avis{border-radius:12px;border:1px solid #9CBCE6;background:linear-gradient(#FFFFFF,#F2F7FE);box-shadow:0 2px 6px rgba(31,95,168,.15)}
.retro-msn .pied{background:#1F3F6E;color:#D6E4F7}.retro-msn .pied a{color:#BFE3A8}
.retro-nokia{--fond:#C7D7A0;--fond-alt:#BACB90;--surface:#D3E2AE;--or:#26330F;--or-clair:#26330F;--texte:#1B240A;--texte-2:#26330F;--discret:#3E4E22;--ligne:rgba(27,36,10,.3);--ligne-forte:rgba(27,36,10,.6);--serif:'Courier New',Courier,monospace;--sans:'Courier New',Courier,monospace}
.retro-nokia h1,.retro-nokia h2,.retro-nokia h3{font-weight:700;letter-spacing:0;text-transform:uppercase}
.retro-nokia h1{font-size:clamp(30px,4.6vw,48px)}
.retro-nokia .bouton,.retro-nokia .hero-fiche,.retro-nokia .form-date,.retro-nokia .carte,.retro-nokia .encadre,.retro-nokia .avis,.retro-nokia .champ input{border-radius:0;border:2px solid #1B240A}
.retro-nokia .bouton-plein,.retro-nokia .nav-liens .bouton{background:#1B240A;color:#C7D7A0}
.retro-nokia .bouton-plein:hover{background:#33441A;color:#E2EEC4}
.retro-nokia .pied{background:#1B240A;color:#C7D7A0}.retro-nokia .pied a{color:#E2EEC4}
.retro-nokia .barre-mobile{background:rgba(199,215,160,.97)}
.retro-xp .barre-mobile{background:rgba(236,233,216,.97)}.retro-msn .barre-mobile{background:rgba(234,242,252,.97)}.retro-aqua .barre-mobile{background:rgba(242,242,242,.97)}
.theme-retro .champ input{color-scheme:light;background:#fff;color:#111}
/* barre mobile */
.barre-mobile{display:none}
@media (max-width:760px){
  body{font-size:16px}
  .conteneur{padding-inline:18px}
  .nav-liens{display:none}
  .marque img{width:60px;height:60px}
  .hero{padding-block:44px 48px;gap:36px}
  .bande{padding-block:60px}
  .hero-fiche{padding:26px}
  .hero-fiche dt{font-size:36px}
  .barre-mobile{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(23,18,14,.96);border-top:1px solid var(--ligne-forte);z-index:10}
  .barre-mobile .bouton{flex:1}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.carte{transition:none}}
