@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap";:root{color:#211536;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;scroll-behavior:smooth;background:#fff;font-family:DM Sans,Arial,sans-serif;font-weight:400}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible{outline-offset:4px;outline:3px solid #a88af0}::selection{color:#fff;background:#7548d8}:root{color:#302923;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--couleur-bordeaux:#713e50;--couleur-bordeaux-fonce:#552b3b;--couleur-ocre:#d99a51;--couleur-fond:#fdfbf7;--couleur-creme:#f4ede3;--couleur-texte:#302923;--couleur-secondaire:#776e65;--couleur-bordure:#e9e0d6;background:#fdfbf7;font-family:DM Sans,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{min-width:320px;min-height:100vh;margin:0}body,button,a{font-family:DM Sans,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--couleur-ocre);outline-offset:4px}.application{width:100%;overflow:hidden}.application main,.entete,.pied-page{width:min(1160px,100% - 48px);margin:0 auto}.entete{border-bottom:1px solid var(--couleur-bordure);justify-content:space-between;align-items:center;gap:28px;min-height:84px;display:flex}.logo{letter-spacing:-1px;white-space:nowrap;align-items:center;gap:9px;font-size:23px;font-weight:800;display:inline-flex}.logo-symbole{color:#fff;background:var(--couleur-bordeaux);border-radius:50%;place-items:center;width:36px;height:36px;font-size:23px;display:grid}.logo-accent{color:var(--couleur-bordeaux)}.navigation{justify-content:center;align-items:center;gap:34px;display:flex}.navigation a{color:var(--couleur-secondaire);padding:9px 0;font-size:14px;transition:color .2s}.navigation a:hover,.navigation .lien-actif{color:var(--couleur-bordeaux)}.navigation .lien-actif{font-weight:700}.bouton-connexion{border:1px solid var(--couleur-bordeaux);color:var(--couleur-bordeaux);border-radius:6px;padding:11px 17px;font-size:13px;font-weight:700;transition:background .2s,color .2s}.bouton-connexion:hover{color:#fff;background:var(--couleur-bordeaux)}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:60px;padding:76px 0 82px;display:grid}.hero-contenu{max-width:560px}.surtitre{color:var(--couleur-bordeaux);letter-spacing:1.5px;align-items:center;gap:8px;font-size:11px;font-weight:800;line-height:1.7;display:inline-flex}.petit-signe{color:var(--couleur-ocre);font-size:17px}.hero h1{letter-spacing:-1.8px;margin:22px 0 20px;font-family:Georgia,Times New Roman,serif;font-size:clamp(38px,4.5vw,60px);font-weight:500;line-height:1.12}.hero h1 span{color:var(--couleur-bordeaux);font-style:italic;display:block}.hero-description{max-width:500px;color:var(--couleur-secondaire);margin:0;font-size:15px;line-height:1.9}.bouton-principal{color:#fff;background:var(--couleur-bordeaux);border-radius:6px;align-items:center;gap:20px;margin-top:27px;padding:15px 20px;font-size:14px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex}.bouton-principal:hover{background:var(--couleur-bordeaux-fonce);transform:translateY(-2px)}.bouton-principal span{font-size:19px}.hero-note{color:var(--couleur-secondaire);align-items:center;gap:9px;margin-top:24px;font-size:12px;line-height:1.6;display:flex}.etat-point{color:var(--couleur-ocre);font-size:12px}.etat-point.actif{color:#39815c}.hero-visuel{min-width:0}.illustration{color:#fff;background:#713e50;border-radius:10px;min-height:390px;padding:32px;position:relative;overflow:hidden}.illustration:before{content:"";border:1px solid #ffffff2e;border-radius:50%;width:260px;height:260px;position:absolute;top:-80px;right:-70px}.illustration:after{content:"";border:1px solid #ffffff26;border-radius:50%;width:300px;height:300px;position:absolute;bottom:-130px;right:-20px}.illustration-petit-texte{z-index:1;letter-spacing:2px;font-size:10px;font-weight:700;position:relative}.illustration-disque{background:#874f61;border:1px solid #ffffff47;border-radius:50%;place-items:center;width:175px;height:175px;display:grid;position:absolute;top:70px;right:48px;box-shadow:0 0 0 13px #ffffff0d,0 0 0 28px #ffffff0a}.illustration-disque span{width:75px;height:75px;color:var(--couleur-bordeaux);background:var(--couleur-ocre);border-radius:50%;place-items:center;font-size:39px;display:grid}.illustration-texte{z-index:1;position:absolute;bottom:34px;left:32px}.illustration-texte span{color:#f1d9c0;margin-bottom:10px;font-size:12px;display:block}.illustration-texte strong{font-family:Georgia,Times New Roman,serif;font-size:43px;font-weight:500;line-height:1.05}.illustration-etoile{z-index:1;color:var(--couleur-ocre);position:absolute}.etoile-une{font-size:25px;top:65px;left:48%}.etoile-deux{font-size:30px;bottom:100px;right:36px}.legende-visuel{color:var(--couleur-secondaire);align-items:center;gap:9px;margin:15px 0 0;font-size:12px;display:flex}.legende-visuel span{color:var(--couleur-ocre);font-size:11px}.evenements-section{border-top:1px solid var(--couleur-bordure);padding:67px 0 78px}.section-entete{justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px;display:flex}.section-entete h2,.apropos-section h2{letter-spacing:-.7px;margin:12px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(28px,3vw,39px);font-weight:500;line-height:1.2}.section-entete p{color:var(--couleur-secondaire);margin:0;font-size:14px;line-height:1.8}.compteur-evenements{color:var(--couleur-bordeaux);background:var(--couleur-creme);border-radius:5px;flex-shrink:0;padding:9px 12px;font-size:12px;font-weight:700}.cartes-evenements{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.carte-evenement{border:1px solid var(--couleur-bordure);background:#fff;border-radius:8px;min-width:0;transition:box-shadow .2s,transform .2s;overflow:hidden}.carte-evenement:hover{transform:translateY(-3px);box-shadow:0 9px 28px #3a261e14}.carte-visuel{justify-content:space-between;align-items:flex-start;min-height:170px;padding:17px;display:flex;position:relative;overflow:hidden}.visuel-musique{color:#fff9ef;background:#713e50}.visuel-danse{color:#39291e;background:#e6bb82}.visuel-theatre{color:#fff8ef;background:#425b54}.visuel-culture{color:#49352b;background:#eadfd0}.carte-categorie{z-index:1;background:#ffffff1f;border:1px solid #ffffff47;border-radius:4px;max-width:75%;padding:7px 10px;font-size:11px;font-weight:700;position:relative}.visuel-danse .carte-categorie,.visuel-culture .carte-categorie{background:#ffffff59;border-color:#30292326}.carte-symbole{opacity:.8;font-family:Georgia,Times New Roman,serif;font-size:92px;line-height:1.2;position:absolute;bottom:6px;right:23px}.carte-decoration{opacity:.6;font-size:23px;position:absolute;top:62px;left:25px}.carte-contenu{padding:20px}.carte-date{color:var(--couleur-bordeaux);margin:0 0 10px;font-size:11px;font-weight:800;line-height:1.7}.carte-contenu h3{overflow-wrap:anywhere;margin:0 0 12px;font-family:Georgia,Times New Roman,serif;font-size:22px;font-weight:600;line-height:1.3}.carte-lieu{color:var(--couleur-secondaire);align-items:flex-start;gap:8px;margin:0;font-size:13px;line-height:1.6;display:flex}.carte-lieu span{color:var(--couleur-ocre)}.carte-adresse{color:var(--couleur-secondaire);margin:5px 0 0 21px;font-size:12px;line-height:1.6}.bouton-details{border:0;border-top:1px solid var(--couleur-bordure);width:100%;color:var(--couleur-bordeaux);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;margin-top:19px;padding:13px 0 0;font-size:13px;font-weight:800;display:flex}.bouton-details span{font-size:18px;transition:transform .2s}.bouton-details:hover span{transform:translate(3px)}.details-evenement{border-top:1px solid var(--couleur-bordure);color:var(--couleur-secondaire);overflow-wrap:anywhere;margin-top:16px;padding-top:13px;font-size:12px;line-height:1.8}.details-evenement p{margin:0 0 10px}.details-evenement strong{color:var(--couleur-texte)}.details-categories{gap:8px;margin-top:14px;display:grid}.ligne-categorie{border-top:1px solid var(--couleur-bordure);justify-content:space-between;gap:12px;padding-top:8px;display:flex}.ligne-categorie span:last-child{color:var(--couleur-bordeaux);text-align:right;font-weight:700}.note-evenements{color:var(--couleur-secondaire);margin:24px 0 0;font-size:12px;line-height:1.7}.message-etat,.message-vide{border:1px solid var(--couleur-bordure);color:var(--couleur-secondaire);text-align:center;background:#fff;border-radius:8px;padding:30px;line-height:1.8}.message-erreur{color:#9a3333;background:#fff8f7;border-color:#e4b9b9}.message-vide h3{color:var(--couleur-texte);margin:12px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:500}.message-vide p{max-width:520px;margin:0 auto;font-size:14px}.vide-symbole{color:var(--couleur-ocre);font-size:34px}.apropos-section{border-top:1px solid var(--couleur-bordure);grid-template-columns:1fr 1fr;align-items:start;gap:55px;padding:58px 0 67px;display:grid}.apropos-section h2{max-width:470px;margin-bottom:0}.apropos-description p{color:var(--couleur-secondaire);margin:0 0 16px;font-size:14px;line-height:1.9}.lien-principal{color:var(--couleur-bordeaux);margin-top:5px;font-size:13px;font-weight:800;display:inline-block}.lien-principal:hover,.lien-retour:hover{text-decoration:underline}.pied-page{border-top:1px solid var(--couleur-bordure);justify-content:space-between;align-items:center;gap:22px;padding:25px 0;display:flex}.pied-page .logo{font-size:19px}.pied-page .logo-symbole{width:30px;height:30px;font-size:19px}.pied-page p{color:var(--couleur-secondaire);margin:0;font-size:11px;line-height:1.7}.lien-retour{color:var(--couleur-bordeaux);flex-shrink:0;font-size:12px;font-weight:700}@media (width<=900px){.hero{gap:30px;padding:60px 0}.illustration{min-height:330px;padding:24px}.illustration-disque{width:135px;height:135px;top:75px;right:25px}.illustration-disque span{width:60px;height:60px;font-size:31px}.illustration-texte{bottom:28px;left:24px}.illustration-texte strong{font-size:36px}.cartes-evenements{grid-template-columns:repeat(2,minmax(0,1fr))}.apropos-section{gap:30px}.navigation{gap:20px}}@media (width<=600px){.application main,.entete,.pied-page{width:calc(100% - 32px)}.entete{flex-wrap:wrap;gap:12px;min-height:76px;padding:14px 0}.logo{font-size:21px}.logo-symbole{width:32px;height:32px;font-size:20px}.navigation{border-top:1px solid var(--couleur-bordure);order:3;justify-content:space-between;gap:12px;width:100%;padding-top:8px}.navigation a{font-size:12px}.bouton-connexion{padding:9px 11px;font-size:11px}.hero{grid-template-columns:1fr;gap:32px;padding:48px 0}.hero h1{letter-spacing:-1.2px;margin-top:18px;font-size:clamp(36px,10vw,48px)}.hero-description{font-size:14px}.bouton-principal{gap:12px;padding:14px 16px;font-size:12px}.illustration{min-height:300px}.illustration-disque{width:125px;height:125px;top:57px;right:30px}.illustration-texte strong{font-size:37px}.evenements-section{padding:48px 0}.section-entete{flex-direction:column;align-items:flex-start;gap:15px}.section-entete h2,.apropos-section h2{font-size:30px}.section-entete p{font-size:13px}.cartes-evenements{grid-template-columns:1fr;gap:18px}.carte-visuel{min-height:155px}.carte-contenu{padding:18px}.apropos-section{grid-template-columns:1fr;gap:22px;padding:45px 0}.pied-page{flex-direction:column;align-items:flex-start;gap:15px;padding:24px 0}}.filtres-evenements{background:#fff;border:1px solid #eee5e4;border-radius:18px;margin:32px 0 36px;padding:24px;box-shadow:0 8px 24px #552b3b0b}.champ-recherche,.champ-filtre{flex-direction:column;gap:8px;min-width:0;display:flex}.champ-recherche{margin-bottom:20px}.champ-recherche label,.champ-filtre label{color:#552b3b;font-size:.9rem;font-weight:600}.champ-recherche input,.champ-filtre input,.champ-filtre select{box-sizing:border-box;color:#382b30;width:100%;min-height:46px;font:inherit;background:#fdfbf7;border:1px solid #e4d8d9;border-radius:10px;outline:none;padding:11px 13px;transition:border-color .2s,box-shadow .2s}.champ-recherche input::placeholder{color:#9b8b90}.champ-recherche input:focus,.champ-filtre input:focus,.champ-filtre select:focus{border-color:#713e50;box-shadow:0 0 0 3px #713e501f}.filtres-ligne{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.filtres-actions{color:#796a70;border-top:1px solid #f0e8e7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:16px;font-size:.9rem;display:flex}.bouton-reinitialiser{color:#713e50;font:inherit;cursor:pointer;background:#f5e9e9;border:0;border-radius:9px;padding:10px 14px;font-weight:600;transition:background .2s,transform .2s}.bouton-reinitialiser:hover{background:#ead7dc;transform:translateY(-1px)}.bouton-reinitialiser:focus-visible,.champ-recherche input:focus-visible,.champ-filtre input:focus-visible,.champ-filtre select:focus-visible{outline-offset:2px;outline:2px solid #713e50}.bouton-vide{cursor:pointer;font:inherit;border:0;justify-content:center;align-items:center;margin-top:12px;display:inline-flex}@media (width<=900px){.filtres-ligne{grid-template-columns:repeat(2,minmax(0,1fr))}.filtres-evenements{padding:20px}}@media (width<=600px){.filtres-evenements{border-radius:14px;margin:24px 0;padding:16px}.filtres-ligne{grid-template-columns:1fr;gap:14px}.filtres-actions{flex-direction:column;align-items:flex-start}.bouton-reinitialiser{width:100%}}.navigation{flex-wrap:wrap}.explication-section{border-top:1px solid var(--couleur-bordure);padding:70px 0 80px}.explication-entete{max-width:780px;margin-bottom:32px}.explication-entete h2{margin:12px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(30px,4vw,44px);font-weight:500;line-height:1.2}.explication-entete>p,.explication-bloc>p,.explication-bloc li,.explication-fin p{color:var(--couleur-secondaire);font-size:14px;line-height:1.85}.architecture-projet{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:30px 0 46px;display:grid}.architecture-carte,.explication-bloc,.tables-explication article{border:1px solid var(--couleur-bordure);background:#fff;border-radius:10px;min-width:0;padding:22px}.architecture-numero{color:#fff;background:var(--couleur-bordeaux);border-radius:50%;place-items:center;width:36px;height:36px;font-size:12px;font-weight:800;display:inline-grid}.architecture-carte h3,.explication-bloc h3{color:var(--couleur-texte);margin:14px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:23px;font-weight:600;line-height:1.3}.architecture-carte p,.tables-explication p{color:var(--couleur-secondaire);margin:0;font-size:13px;line-height:1.8}.explication-bloc{margin-bottom:24px;padding:clamp(20px,3vw,30px)}.explication-bloc h3{margin-top:10px;font-size:clamp(23px,3vw,30px)}.tables-explication{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px;display:grid}.tables-explication article{background:#fdfbf7;padding:17px}.tables-explication h4{color:var(--couleur-bordeaux);margin:0 0 8px;font-size:15px}.explication-deux-colonnes{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:20px;display:grid}.explication-deux-colonnes .explication-bloc{margin-bottom:24px}.explication-bloc ul,.etapes-techniques{padding-left:22px}.explication-bloc li{margin:0 0 10px}.explication-bloc li strong{color:var(--couleur-texte)}.explication-bloc code{background:var(--couleur-creme);color:var(--couleur-bordeaux-fonce);overflow-wrap:anywhere;border-radius:4px;padding:2px 5px}.note-technique{border-top:1px solid var(--couleur-bordure);padding-top:12px;font-size:12px!important}.avertissement-paiement{border-left:4px solid var(--couleur-ocre);color:#5d4935;background:#fbf4e9;border-radius:5px;margin-top:22px;padding:17px 19px;font-size:13px;line-height:1.8}.explication-fin{max-width:780px;margin-top:28px}.explication-fin p{margin-bottom:12px}@media (width<=900px){.architecture-projet,.tables-explication{grid-template-columns:repeat(2,minmax(0,1fr))}.explication-deux-colonnes{grid-template-columns:1fr;gap:0}}@media (width<=600px){.explication-section{padding:48px 0}.architecture-projet,.tables-explication{grid-template-columns:1fr}.architecture-carte,.explication-bloc{padding:18px}}
