:root{--c-primary:#1B4F82;--c-primary-d:#103258;--c-primary-l:#e8f0fa;--c-accent:#1B8C5E;--c-accent-l:#e6f5ef;--c-green:#2A6B3C;--c-gold:#C47B1A;--c-dark:#111827;--c-gray:#6B7280;--c-light:#F3F6FA;--c-border:#DDE3EC;--c-white:#FFFFFF;--ff-heading:'Barlow Condensed',sans-serif;--ff-body:'Barlow',sans-serif;--ff-serif:'Lora',serif;--shadow-sm:0 1px 4px rgba(0,0,0,.08);--shadow:0 4px 20px rgba(0,0,0,.10);--shadow-lg:0 12px 48px rgba(0,0,0,.14);--rad:6px;--rad-lg:12px;--trans:.22s cubic-bezier(.4,0,.2,1);}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--ff-body);color:var(--c-dark);background:var(--c-white);line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}.wrap{max-width:1280px;margin:0 auto;padding:0 1.5rem}.wrap--sm{max-width:960px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.topbar{background:var(--c-primary-d);padding:.4rem 0;font-size:.8rem;font-family:var(--ff-heading);letter-spacing:.04em}.topbar__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.topbar__left{display:flex;align-items:center;gap:1.5rem;color:rgba(255,255,255,.65)}.topbar__left a{color:rgba(255,255,255,.65);transition:color var(--trans)}.topbar__left a:hover{color:#fff}.topbar__socials{display:flex;align-items:center;gap:.5rem}.topbar__socials a{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.6);font-size:.8rem;transition:all var(--trans);}.topbar__socials a:hover{background:var(--c-accent);color:#fff}.site-header{background:var(--c-white);border-bottom:2px solid var(--c-primary);position:sticky;top:0;z-index:900;box-shadow:var(--shadow-sm);}.header__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem 0;}.header__brand{display:flex;align-items:center;gap:.9rem}.header__logo{width:52px;height:52px;border-radius:50%;background:var(--c-primary);display:flex;align-items:center;justify-content:center;font-family:var(--ff-heading);font-size:1.2rem;font-weight:900;color:#fff;letter-spacing:-.02em;flex-shrink:0;}.header__title-wrap{}.header__site-name{font-family:var(--ff-heading);font-weight:900;font-size:1.4rem;color:var(--c-primary);text-transform:uppercase;letter-spacing:.05em;line-height:1;}.header__tagline{font-size:.75rem;color:var(--c-gray);margin-top:.15rem}.header__nav{display:flex;align-items:center;gap:.15rem}.nav__item{position:relative}.nav__item > a{font-family:var(--ff-heading);font-weight:700;font-size:.95rem;text-transform:uppercase;letter-spacing:.06em;color:var(--c-dark);padding:.55rem .9rem;border-radius:var(--rad);display:block;white-space:nowrap;transition:all var(--trans);}.nav__item > a:hover,.nav__item.active > a{color:var(--c-primary);background:var(--c-primary-l)}.nav__item > a .nav__arrow{display:inline-block;font-size:.65rem;margin-left:.3rem;transition:transform var(--trans);vertical-align:middle;}.nav__item:hover > a .nav__arrow{transform:rotate(180deg)}.nav__dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:220px;background:var(--c-white);border:1px solid var(--c-border);border-radius:var(--rad-lg);box-shadow:var(--shadow-lg);padding:.5rem 0;opacity:0;visibility:hidden;transform:translateY(8px);transition:all var(--trans);z-index:100;}.nav__item:hover .nav__dropdown{opacity:1;visibility:visible;transform:translateY(0)}.nav__dropdown a{display:block;padding:.5rem 1.1rem;font-size:.88rem;color:var(--c-dark);transition:all var(--trans);}.nav__dropdown a:hover{background:var(--c-primary-l);color:var(--c-primary);padding-left:1.5rem}.nav__dropdown .nav__group{font-family:var(--ff-heading);font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--c-gray);padding:.6rem 1.1rem .2rem;}.header__right{display:flex;align-items:center;gap:.6rem}.btn-search{width:38px;height:38px;border-radius:50%;border:2px solid var(--c-border);background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--c-gray);font-size:.95rem;transition:all var(--trans);}.btn-search:hover{border-color:var(--c-primary);color:var(--c-primary);background:var(--c-primary-l)}.btn-clic{background:var(--c-accent);color:#fff;font-family:var(--ff-heading);font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.07em;padding:.5rem 1rem;border-radius:var(--rad);transition:all var(--trans);white-space:nowrap;}.btn-clic:hover{background:#146b47;transform:translateY(-1px);box-shadow:0 4px 12px rgba(27,140,94,.35)}.btn-profils{background:var(--c-primary);color:#fff;font-family:var(--ff-heading);font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.07em;padding:.5rem 1.1rem;border-radius:var(--rad);display:flex;align-items:center;gap:.4rem;transition:all var(--trans);white-space:nowrap;border:none;cursor:pointer;}.btn-profils:hover{background:var(--c-primary-d)}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:1000;opacity:0;visibility:hidden;transition:all var(--trans);display:flex;align-items:flex-start;justify-content:flex-end;}.modal-overlay.open{opacity:1;visibility:visible}.modal-panel{background:var(--c-white);width:380px;height:100vh;overflow-y:auto;padding:2rem 1.75rem;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);border-left:4px solid var(--c-accent);}.modal-overlay.open .modal-panel{transform:translateX(0)}.modal-panel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.modal-panel__title{font-family:var(--ff-heading);font-weight:900;font-size:1.6rem;text-transform:uppercase;letter-spacing:.05em;color:var(--c-primary);}.modal-panel__close{width:36px;height:36px;border:none;background:var(--c-light);border-radius:50%;cursor:pointer;font-size:1.1rem;color:var(--c-gray);display:flex;align-items:center;justify-content:center;transition:all var(--trans);}.modal-panel__close:hover{background:var(--c-accent);color:#fff}.clic-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.clic-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem .75rem;border:1px solid var(--c-border);border-radius:var(--rad-lg);text-align:center;transition:all var(--trans);color:var(--c-dark);cursor:pointer;}.clic-item:hover{border-color:var(--c-accent);background:var(--c-accent-l);color:var(--c-accent)}.clic-item__icon{font-size:1.6rem;line-height:1}.clic-item__label{font-family:var(--ff-heading);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;line-height:1.2}.hero{position:relative;min-height:92vh;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;text-align:center;}.hero__bg{position:absolute;inset:0;background:linear-gradient(160deg,rgba(17,24,39,.75) 0%,rgba(27,79,130,.6) 45%,rgba(17,24,39,.45) 100%),url('https://images.unsplash.com/photo-1501854140801-50d01698950b?w=1600&q=80&auto=format') center/cover no-repeat;transform:scale(1.04);animation:heroZoom 18s ease-in-out infinite alternate;}@keyframes heroZoom{from{transform:scale(1.04)}to{transform:scale(1)}}.hero__content{position:relative;z-index:2;padding:2rem 1rem}.hero__sup{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--ff-heading);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.15em;color:rgba(255,255,255,.7);margin-bottom:1.5rem;animation:fadeUp .8s .1s both;}.hero__sup::before,.hero__sup::after{content:'';display:inline-block;width:32px;height:1px;background:var(--c-accent);opacity:.7}.hero__welcome{font-family:var(--ff-heading);font-weight:400;font-style:italic;font-size:clamp(1rem,2vw,1.4rem);color:rgba(255,255,255,.75);margin-bottom:.5rem;animation:fadeUp .8s .2s both;}.hero__welcome{font-family:var(--ff-serif)}.hero__title{font-family:var(--ff-heading);font-weight:900;font-size:clamp(4rem,11vw,9rem);line-height:.92;text-transform:uppercase;letter-spacing:-.01em;animation:fadeUp .8s .3s both;margin-bottom:1.5rem;background:linear-gradient(to right,#002395 0%,#4a6fa5 28%,#ffffff 50%,#e8a0a0 72%,#ED2939 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;filter:drop-shadow(0 3px 12px rgba(0,0,0,.45));}.hero__title em{font-style:normal}.hero__subtitle{font-size:clamp(.95rem,1.5vw,1.2rem);color:rgba(255,255,255,.82);max-width:520px;margin:0 auto 2.5rem;animation:fadeUp .8s .4s both;line-height:1.65;}.hero__actions{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;animation:fadeUp .8s .5s both;}.btn-hero-p{background:var(--c-accent);color:#fff;font-family:var(--ff-heading);font-weight:800;font-size:1rem;text-transform:uppercase;letter-spacing:.07em;padding:.75rem 1.8rem;border-radius:var(--rad);transition:all var(--trans);display:flex;align-items:center;gap:.5rem;}.btn-hero-p:hover{background:#146b47;transform:translateY(-2px);box-shadow:0 6px 20px rgba(27,140,94,.4)}.btn-hero-s{background:rgba(255,255,255,.12);color:#fff;border:2px solid rgba(255,255,255,.4);font-family:var(--ff-heading);font-weight:700;font-size:1rem;text-transform:uppercase;letter-spacing:.07em;padding:.7rem 1.6rem;border-radius:var(--rad);transition:all var(--trans);backdrop-filter:blur(4px);}.btn-hero-s:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.7)}.hero__search{position:relative;max-width:560px;width:100%;margin:0 auto 2.5rem;animation:fadeUp .8s .45s both;}.hero__search input{width:100%;padding:1rem 1.5rem;padding-right:120px;border-radius:var(--rad);border:none;font-size:1rem;font-family:var(--ff-body);box-shadow:0 8px 40px rgba(0,0,0,.25);outline:none;}.hero__search input::placeholder{color:#9CA3AF}.hero__search button{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:var(--c-accent);color:#fff;border:none;cursor:pointer;padding:.6rem 1.1rem;border-radius:calc(var(--rad) - 2px);font-family:var(--ff-heading);font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;transition:background var(--trans);}.hero__search button:hover{background:#146b47}.hero__stats{position:absolute;bottom:0;left:0;right:0;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(17,24,39,.75);backdrop-filter:blur(8px);border-top:1px solid rgba(255,255,255,.08);}.hero__stat{padding:1.1rem;text-align:center;color:#fff;border-right:1px solid rgba(255,255,255,.08);}.hero__stat:last-child{border-right:none}.hero__stat-n{display:block;font-family:var(--ff-heading);font-weight:900;font-size:2rem;color:var(--c-accent);line-height:1;}.hero__stat-l{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;opacity:.65;margin-top:.25rem}@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.section-title{font-family:var(--ff-heading);font-weight:900;font-size:clamp(1.8rem,3vw,2.6rem);text-transform:uppercase;letter-spacing:.02em;color:var(--c-dark);line-height:1;}.section-title span{color:var(--c-accent)}.section-link{font-family:var(--ff-heading);font-weight:700;font-size:.88rem;text-transform:uppercase;letter-spacing:.08em;color:var(--c-primary);display:flex;align-items:center;gap:.35rem;transition:gap var(--trans);white-space:nowrap;}.section-link:hover{gap:.6rem}.section-link::after{content:'→'}.news{padding:4.5rem 0}.news-grid{display:grid;grid-template-columns:1.85fr 1fr;gap:1.5rem}.news-grid__side{display:flex;flex-direction:column;gap:1.5rem}.card-main{position:relative;border-radius:var(--rad-lg);overflow:hidden;min-height:440px;display:flex;flex-direction:column;justify-content:flex-end;cursor:pointer;}.card-main__img{position:absolute;inset:0;background:linear-gradient(160deg,rgba(0,0,0,.1),rgba(0,0,0,.7)),url('https://images.unsplash.com/photo-1499678329028-101435549a4e?w=900&q=80') center/cover;transition:transform .5s ease;}.card-main:hover .card-main__img{transform:scale(1.04)}.card-main__body{position:relative;z-index:2;padding:2rem}.card-main__cat{display:inline-block;font-family:var(--ff-heading);font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;background:var(--c-accent);color:#fff;padding:.25rem .75rem;border-radius:99px;margin-bottom:.75rem;}.card-main__title{font-family:var(--ff-heading);font-weight:800;font-size:1.6rem;color:#fff;line-height:1.15;margin-bottom:.5rem;text-shadow:0 2px 8px rgba(0,0,0,.3);}.card-main:hover .card-main__title{color:var(--c-accent)}.card-main__text{color:rgba(255,255,255,.8);font-size:.9rem;line-height:1.5}.card-sm{display:flex;gap:1rem;border-radius:var(--rad);overflow:hidden;background:var(--c-white);border:1px solid var(--c-border);transition:all var(--trans);cursor:pointer;flex:1;}.card-sm:hover{box-shadow:var(--shadow);border-color:var(--c-primary)}.card-sm__img{width:130px;flex-shrink:0;background:url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=400&q=70') center/cover;}.card-sm:nth-child(2) .card-sm__img{background-image:url('https://images.unsplash.com/photo-1473448912268-2022ce9509d8?w=400&q=70');}.card-sm__body{padding:.9rem 1rem;display:flex;flex-direction:column;justify-content:center}.card-sm__cat{font-family:var(--ff-heading);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--c-accent);margin-bottom:.35rem;}.card-sm__title{font-family:var(--ff-heading);font-weight:700;font-size:1rem;color:var(--c-dark);line-height:1.25;margin-bottom:.3rem;}.card-sm:hover .card-sm__title{color:var(--c-primary)}.card-sm__date{font-size:.78rem;color:var(--c-gray)}.news-dots{display:flex;align-items:center;gap:.5rem;margin-top:1.5rem;justify-content:center}.news-dots span{width:8px;height:8px;border-radius:50%;background:var(--c-border);cursor:pointer;transition:all var(--trans)}.news-dots span.active{background:var(--c-primary);width:24px;border-radius:4px}.agenda{padding:4.5rem 0;background:var(--c-light)}.agenda-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;}.event-card{background:var(--c-white);border-radius:var(--rad-lg);overflow:hidden;border:1px solid var(--c-border);transition:all var(--trans);cursor:pointer;display:flex;flex-direction:column;}.event-card:hover{box-shadow:var(--shadow);transform:translateY(-3px);border-color:var(--c-primary)}.event-card__img{aspect-ratio:16/9;background:url('https://images.unsplash.com/photo-1470229722913-7c0e2dbbafd3?w=500&q=70') center/cover;position:relative;}.event-card:nth-child(2) .event-card__img{background-image:url('https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?w=500&q=70')}.event-card:nth-child(3) .event-card__img{background-image:url('https://images.unsplash.com/photo-1524178232363-1fb2b075b655?w=500&q=70')}.event-card:nth-child(4) .event-card__img{background-image:url('https://images.unsplash.com/photo-1529260830199-42c24126f198?w=500&q=70')}.event-card__date-badge{position:absolute;top:.7rem;left:.7rem;background:var(--c-primary);color:#fff;border-radius:var(--rad);padding:.35rem .55rem;text-align:center;min-width:46px;}.event-card__date-d{display:block;font-family:var(--ff-heading);font-weight:900;font-size:1.3rem;line-height:1;}.event-card__date-m{display:block;font-family:var(--ff-heading);font-weight:600;font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;opacity:.85;}.event-card__type{position:absolute;bottom:.7rem;right:.7rem;background:rgba(0,0,0,.6);color:#fff;backdrop-filter:blur(4px);font-family:var(--ff-heading);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;padding:.2rem .55rem;border-radius:99px;}.event-card__body{padding:1rem 1.1rem 1.2rem;flex:1;display:flex;flex-direction:column}.event-card__title{font-family:var(--ff-heading);font-weight:700;font-size:1rem;color:var(--c-dark);line-height:1.25;margin-bottom:.35rem;flex:1;}.event-card:hover .event-card__title{color:var(--c-primary)}.event-card__where{font-size:.8rem;color:var(--c-gray);display:flex;align-items:center;gap:.3rem;}.media-strip{padding:4.5rem 0}.media-strip__grid{display:grid;grid-template-columns:1fr .65fr;gap:2rem}.media-strip__left{}.video-thumb{position:relative;border-radius:var(--rad-lg);overflow:hidden;cursor:pointer;background:#000;}.video-thumb__img{aspect-ratio:16/9;background:url('https://images.unsplash.com/photo-1455849318743-b2233052fcff?w=800&q=80') center/cover;opacity:.75;transition:opacity var(--trans);}.video-thumb:hover .video-thumb__img{opacity:.9}.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:var(--c-accent);display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:#fff;box-shadow:0 4px 24px rgba(27,140,94,.4);transition:transform var(--trans),box-shadow var(--trans);}.video-thumb:hover .video-play{transform:translate(-50%,-50%) scale(1.08);box-shadow:0 6px 32px rgba(27,140,94,.5)}.video-title{position:absolute;bottom:0;left:0;right:0;padding:1.5rem;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff;font-family:var(--ff-heading);font-weight:700;font-size:1.1rem;line-height:1.3;}.video-list{list-style:none;margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}.video-list li a{display:flex;align-items:center;gap:.7rem;padding:.6rem .75rem;border-radius:var(--rad);color:var(--c-dark);font-size:.9rem;transition:all var(--trans);border-left:3px solid transparent;}.video-list li a:hover{background:var(--c-primary-l);color:var(--c-primary);border-left-color:var(--c-primary)}.video-list li a::before{content:'▶';font-size:.6rem;color:var(--c-accent)}.media-strip__right{display:flex;flex-direction:column;gap:1.25rem}.kiosque{background:var(--c-primary);border-radius:var(--rad-lg);padding:1.5rem;color:#fff;display:flex;gap:1.25rem;align-items:flex-start;}.kiosque__cover{width:90px;flex-shrink:0;border-radius:var(--rad);overflow:hidden;box-shadow:var(--shadow);background:url('https://images.unsplash.com/photo-1504711434969-e33886168f5c?w=200&q=70') center/cover;aspect-ratio:3/4;}.kiosque__body{}.kiosque__label{font-family:var(--ff-heading);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.6);margin-bottom:.4rem;}.kiosque__title{font-family:var(--ff-heading);font-weight:800;font-size:1.15rem;margin-bottom:.75rem;line-height:1.2;}.kiosque__btn{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:var(--rad);padding:.4rem .9rem;font-family:var(--ff-heading);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;transition:all var(--trans);cursor:pointer;}.kiosque__btn:hover{background:rgba(255,255,255,.25)}.newsletter{background:var(--c-dark);border-radius:var(--rad-lg);padding:1.5rem;color:#fff;}.newsletter__icon{font-size:1.8rem;margin-bottom:.5rem}.newsletter__title{font-family:var(--ff-heading);font-weight:800;font-size:1.2rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.3rem;}.newsletter__sub{font-size:.85rem;color:rgba(255,255,255,.6);margin-bottom:1rem}.newsletter__form{display:flex;gap:.5rem;flex-direction:column}.newsletter__input{padding:.7rem 1rem;border-radius:var(--rad);border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);color:#fff;font-family:var(--ff-body);font-size:.9rem;outline:none;transition:border var(--trans);}.newsletter__input::placeholder{color:rgba(255,255,255,.35)}.newsletter__input:focus{border-color:var(--c-accent)}.newsletter__submit{background:var(--c-accent);color:#fff;border:none;cursor:pointer;padding:.7rem;border-radius:var(--rad);font-family:var(--ff-heading);font-weight:800;font-size:.88rem;text-transform:uppercase;letter-spacing:.06em;transition:background var(--trans);}.newsletter__submit:hover{background:#146b47}.other-sites{padding:3.5rem 0;background:var(--c-light);border-top:1px solid var(--c-border)}.sites-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.site-card{background:var(--c-white);border:1px solid var(--c-border);border-radius:var(--rad-lg);padding:1.5rem 1.25rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center;transition:all var(--trans);cursor:pointer;}.site-card:hover{box-shadow:var(--shadow);border-color:var(--c-primary);transform:translateY(-2px)}.site-card__icon{width:56px;height:56px;border-radius:var(--rad);background:var(--c-primary-l);display:flex;align-items:center;justify-content:center;font-size:1.6rem;}.site-card:hover .site-card__icon{background:var(--c-primary-d)}.site-card__name{font-family:var(--ff-heading);font-weight:700;font-size:.92rem;text-transform:uppercase;letter-spacing:.04em;color:var(--c-dark);line-height:1.2;}.site-card:hover .site-card__name{color:var(--c-primary)}.site-card__url{font-size:.75rem;color:var(--c-gray)}.footer{background:var(--c-dark);color:rgba(255,255,255,.65)}.footer__main{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;padding:3.5rem 0;}.footer__brand-logo{width:64px;height:64px;border-radius:50%;background:var(--c-primary);display:flex;align-items:center;justify-content:center;font-family:var(--ff-heading);font-size:1.5rem;font-weight:900;color:#fff;margin-bottom:1rem;}.footer__brand-name{font-family:var(--ff-heading);font-weight:900;font-size:1.2rem;text-transform:uppercase;letter-spacing:.06em;color:#fff;margin-bottom:.25rem;}.footer__brand-tag{font-size:.82rem;color:rgba(255,255,255,.45);margin-bottom:1.2rem}.footer__address{font-size:.85rem;line-height:1.7;margin-bottom:1.2rem}.footer__tel{font-family:var(--ff-heading);font-weight:700;font-size:1rem;color:#fff;display:flex;align-items:center;gap:.4rem;margin-bottom:1rem;}.footer__socials{display:flex;gap:.5rem}.footer__socials a{width:34px;height:34px;border-radius:var(--rad);background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);font-size:.85rem;transition:all var(--trans);}.footer__socials a:hover{background:var(--c-accent);color:#fff}.footer__col-title{font-family:var(--ff-heading);font-weight:800;font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;color:#fff;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--c-primary);display:inline-block;}.footer__links{list-style:none;display:flex;flex-direction:column;gap:.45rem}.footer__links li a{font-size:.86rem;color:rgba(255,255,255,.55);transition:all var(--trans);display:flex;align-items:center;gap:.4rem;}.footer__links li a::before{content:'›';opacity:.4}.footer__links li a:hover{color:#fff;padding-left:.3rem}.footer__links li a:hover::before{opacity:1}.footer__bottom{border-top:1px solid rgba(255,255,255,.07);padding:1.2rem 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;font-size:.78rem;color:rgba(255,255,255,.35);}.footer__bottom-links{display:flex;gap:1.25rem;flex-wrap:wrap}.footer__bottom-links a{color:rgba(255,255,255,.35);transition:color var(--trans)}.footer__bottom-links a:hover{color:rgba(255,255,255,.75)}.footer__accesib{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:99px;padding:.2rem .75rem;font-size:.72rem;color:rgba(255,255,255,.45);}@media(max-width:1100px){.news-grid{grid-template-columns:1fr}.news-grid__side{flex-direction:row}.agenda-grid{grid-template-columns:repeat(2,1fr)}.media-strip__grid{grid-template-columns:1fr}.footer__main{grid-template-columns:1fr 1fr;gap:2rem}.sites-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.topbar__left>*:not(:first-child){display:none}.header__nav,.btn-profils{display:none}.hero__stats{grid-template-columns:repeat(2,1fr)}.news-grid__side{flex-direction:column}.agenda-grid{grid-template-columns:1fr}.clic-grid{grid-template-columns:1fr 1fr}.sites-grid{grid-template-columns:1fr 1fr}.footer__main{grid-template-columns:1fr}.media-strip__right{flex-direction:row}}@media(max-width:480px){.hero{min-height:auto;padding-bottom:130px}.hero__title{font-size:clamp(3rem,15vw,5rem)}.hero__stats{grid-template-columns:repeat(2,1fr)}.media-strip__right{flex-direction:column}.clic-grid{grid-template-columns:repeat(3,1fr)}}.reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.reveal.vis{opacity:1;transform:none}.reveal-d1.vis{transition-delay:.1s}.reveal-d2.vis{transition-delay:.2s}.reveal-d3.vis{transition-delay:.3s}.reveal-d4.vis{transition-delay:.4s}.nav__item>a{display:flex;align-items:center;gap:.25rem}.nav__item.pv3-open>a{color:var(--c-primary);background:var(--c-primary-l)}.nav__item.pv3-open>a .nav__arrow{transform:rotate(180deg)}.nav__item.pv3-open>.nav__dropdown,.nav__item.pv3-open>.nav__mega{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.nav__mega{position:absolute;top:calc(100% + 4px);left:0;width:580px;max-width:96vw;background:var(--c-white);border:1px solid var(--c-border);border-radius:var(--rad-lg);box-shadow:var(--shadow-lg);display:flex;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(8px);transition:all var(--trans);z-index:500;pointer-events:none}.nav__item:nth-child(n+3)>.nav__mega{left:auto;right:0}.nav__mega-links{width:210px;flex-shrink:0;padding:.5rem 0;border-right:1px solid var(--c-border);background:var(--c-white)}.nav__mega-links a{display:block;padding:.5rem 1.1rem;font-size:.87rem;color:var(--c-dark);transition:all var(--trans)}.nav__mega-links a:hover{background:var(--c-primary-l);color:var(--c-primary);padding-left:1.5rem}.nav__mega-links .nav__group{font-family:var(--ff-heading);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--c-gray);padding:.6rem 1.1rem .2rem;display:block}.nav__mega-all{padding:.75rem 1.1rem .5rem;border-top:1px solid var(--c-border);margin-top:.4rem}.nav__mega-all-link{font-family:var(--ff-heading);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--c-primary);display:flex;align-items:center;gap:.25rem;transition:gap var(--trans)}.nav__mega-all-link:hover{gap:.5rem}.nav__mega-articles{flex:1;padding:.9rem;display:flex;flex-direction:column;gap:.6rem;background:var(--c-light);overflow-y:auto}.nav__mega-card{display:flex;gap:.65rem;padding:.6rem;background:var(--c-white);border-radius:var(--rad);border:1px solid var(--c-border);transition:all var(--trans);text-decoration:none;color:var(--c-dark)}.nav__mega-card:hover{border-color:var(--c-primary);box-shadow:var(--shadow);transform:translateY(-1px)}.nav__mega-card-img{width:70px;height:54px;flex-shrink:0;border-radius:4px;background:var(--c-border) center/cover}.nav__mega-card-body{display:flex;flex-direction:column;gap:.1rem;justify-content:center}.nav__mega-card-cat{font-family:var(--ff-heading);font-weight:700;font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;color:var(--c-accent)}.nav__mega-card-title{font-family:var(--ff-heading);font-weight:700;font-size:.87rem;line-height:1.2}.nav__mega-card:hover .nav__mega-card-title{color:var(--c-primary)}.nav__mega-card-date{font-size:.7rem;color:var(--c-gray)}.modal-overlay--profils{justify-content:flex-start}.modal-panel--profils{border-left:none;border-right:4px solid var(--c-primary)}
/* ── SVG Service Icons ── */
.site-card__icon--svg{width:64px;height:64px;border-radius:var(--rad-lg);background:transparent;padding:0;display:flex;align-items:center;justify-content:center;}
.site-card__icon--svg svg{width:64px;height:64px;border-radius:var(--rad-lg);transition:transform var(--trans);}
.site-card:hover .site-card__icon--svg svg{transform:scale(1.08);}

/* ── HAMBURGER MENU MOBILE ── */
.btn-hamburger{display:none;width:40px;height:40px;border:2px solid var(--c-border);border-radius:var(--rad);background:none;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;transition:all var(--trans)}
.btn-hamburger:hover{border-color:var(--c-primary);background:var(--c-primary-l)}
.btn-hamburger__line{display:block;width:18px;height:2px;background:var(--c-dark);border-radius:2px;transition:all .25s ease}
.btn-hamburger.open .btn-hamburger__line:nth-child(1){transform:translateY(7px) rotate(45deg)}
.btn-hamburger.open .btn-hamburger__line:nth-child(2){opacity:0;transform:scaleX(0)}
.btn-hamburger.open .btn-hamburger__line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.pv3-mobile-nav{position:fixed;inset:0;top:0;z-index:950;background:var(--c-white);transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);overflow-y:auto;display:flex;flex-direction:column}
.pv3-mobile-nav.open{transform:translateX(0)}
.pv3-mobile-nav__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:2px solid var(--c-primary);background:var(--c-white);position:sticky;top:0;z-index:2}
.pv3-mobile-nav__brand{font-family:var(--ff-heading);font-weight:900;font-size:1.3rem;text-transform:uppercase;letter-spacing:.05em;color:var(--c-primary)}
.pv3-mobile-nav__close{width:36px;height:36px;border:none;background:var(--c-light);border-radius:50%;cursor:pointer;font-size:1.1rem;color:var(--c-gray);display:flex;align-items:center;justify-content:center;transition:all var(--trans)}
.pv3-mobile-nav__close:hover{background:var(--c-accent);color:#fff}
.pv3-mobile-nav__body{padding:1rem 0;flex:1}
.pv3-mnav-item{}
.pv3-mnav-item__top{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;font-family:var(--ff-heading);font-weight:800;font-size:1rem;text-transform:uppercase;letter-spacing:.06em;color:var(--c-dark);border-bottom:1px solid var(--c-border);cursor:pointer;transition:background var(--trans)}
.pv3-mnav-item__top:hover{background:var(--c-primary-l);color:var(--c-primary)}
.pv3-mnav-item__top a{color:inherit;flex:1}
.pv3-mnav-item__toggle{width:28px;height:28px;border:1px solid var(--c-border);border-radius:var(--rad);background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.65rem;color:var(--c-gray);transition:all var(--trans);flex-shrink:0}
.pv3-mnav-item.open .pv3-mnav-item__toggle{background:var(--c-primary);border-color:var(--c-primary);color:#fff;transform:rotate(180deg)}
.pv3-mnav-item__sub{display:none;background:var(--c-light);border-bottom:1px solid var(--c-border)}
.pv3-mnav-item.open .pv3-mnav-item__sub{display:block}
.pv3-mnav-item__sub a{display:block;padding:.7rem 1.5rem;font-size:.9rem;color:var(--c-gray);border-bottom:1px solid var(--c-border);transition:all var(--trans)}
.pv3-mnav-item__sub a:last-child{border-bottom:none}
.pv3-mnav-item__sub a:hover{background:var(--c-primary-l);color:var(--c-primary);padding-left:2rem}
.pv3-mnav-item__sub .pv3-mnav-group{font-family:var(--ff-heading);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--c-gray);padding:.6rem 1.5rem .2rem;display:block;opacity:.6}
.pv3-mobile-nav__footer{padding:1.25rem;border-top:1px solid var(--c-border);display:flex;gap:.75rem;flex-wrap:wrap}
.pv3-mobile-nav__footer a,.pv3-mobile-nav__footer button{flex:1;min-width:120px;padding:.7rem;border-radius:var(--rad);font-family:var(--ff-heading);font-weight:800;font-size:.88rem;text-transform:uppercase;letter-spacing:.06em;text-align:center;cursor:pointer;border:none}
.pv3-mnav-btn-clic{background:var(--c-accent);color:#fff}
.pv3-mnav-btn-profils{background:var(--c-primary);color:#fff}
.pv3-mobile-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:940;opacity:0;visibility:hidden;transition:all var(--trans)}
.pv3-mobile-overlay.open{opacity:1;visibility:visible}
@media(max-width:768px){
  .btn-hamburger{display:flex}
  .header__nav{display:none!important}
  .btn-profils{display:none!important}
}

/* ── PAGE 404 ── */
.pv3-404-wrap{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 1.5rem}
.pv3-404-code{font-family:var(--ff-heading);font-weight:900;font-size:clamp(6rem,20vw,12rem);color:var(--c-primary);line-height:1;opacity:.12;position:absolute}
.pv3-404-content{position:relative;z-index:1}
.pv3-404-icon{font-size:4rem;margin-bottom:1rem}
.pv3-404-title{font-family:var(--ff-heading);font-weight:900;font-size:clamp(1.8rem,4vw,3rem);text-transform:uppercase;color:var(--c-dark);margin-bottom:.75rem}
.pv3-404-sub{font-size:1.05rem;color:var(--c-gray);max-width:500px;margin:0 auto 2rem;line-height:1.6}
.pv3-404-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}

/* ── NEWSLETTER ADMIN PANEL ── */
.pv3-nl-table{width:100%;border-collapse:collapse;font-size:.88rem}
.pv3-nl-table th{background:var(--c-primary);color:#fff;padding:.6rem 1rem;text-align:left;font-family:var(--ff-heading);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}
.pv3-nl-table td{padding:.55rem 1rem;border-bottom:1px solid #eee}
.pv3-nl-table tr:hover td{background:#f8fafc}

/* ── SERVICES ADMIN VISUAL SELECTOR ── */
.pv3-icon-selector{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;margin-top:.5rem}
.pv3-icon-opt{border:2px solid #e0e4ea;border-radius:8px;padding:.6rem;text-align:center;cursor:pointer;transition:all .15s;background:#fff}
.pv3-icon-opt:hover{border-color:#1B4F82;background:#e8f0fa}
.pv3-icon-opt.selected{border-color:#1B4F82;background:#e8f0fa}
.pv3-icon-opt svg{width:40px;height:40px}
.pv3-icon-opt span{display:block;font-size:.7rem;color:#6B7280;margin-top:.25rem;font-family:sans-serif}

/* ====================================================
   MODE SOMBRE -- unifie sur [data-theme="dark"]
   Les anciens selecteurs :root.pv3-auto-dark et :root.pv3-dark-mode
   ont ete supprimes en v3.19.6 au profit de [data-theme="dark"]
   defini plus bas. Ne pas reintroduire.
==================================================== */

/* Bouton toggle dark mode (injecte en JS) */
.pv3-dark-toggle {
    width: 38px; height: 38px; border-radius: 50%;
    border: 2px solid var(--c-border); background: none; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    color: var(--c-gray); font-size: 1rem; transition: all var(--trans);
}
.pv3-dark-toggle:hover { border-color: var(--c-primary); color: var(--c-primary); background: var(--c-primary-l); }

/* ====================================================
   ACCESSIBILITÉ RGAA
==================================================== */
/* Skip links */
.pv3-skip-links { position: absolute; top: -100px; left: 0; z-index: 9999; }
.pv3-skip-link {
    position: absolute; top: -100px; left: 1rem;
    background: var(--c-primary); color: #fff;
    padding: .6rem 1.2rem; border-radius: 0 0 var(--rad) var(--rad);
    font-family: var(--ff-heading); font-weight: 700; font-size: .9rem;
    text-transform: uppercase; letter-spacing: .05em; text-decoration: none;
    transition: top .15s;
}
.pv3-skip-link:focus { top: 0; }

/* Focus visible amélioré */
:focus-visible {
    outline: 3px solid var(--c-accent) !important;
    outline-offset: 3px !important;
    border-radius: 2px !important;
}

/* Contraste amélioré */
.nav__item > a { color: #111827; }
.card-sm__date { color: #4b5563; }
.event-card__where { color: #4b5563; }
.footer__links li a { color: rgba(255,255,255,.70); }

/* Images décoratives */
img[role="presentation"], img[alt=""] { pointer-events: none; }

/* Taille minimum zones cliquables (RGAA 6.5) */
.nav__item > a { min-height: 44px; }
.btn-search, .modal-panel__close, .pv3-dark-toggle { min-width: 44px; min-height: 44px; }

/* Animations réduites (RGAA motion) */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
    }
    .hero__bg { animation: none !important; }
}

/* ====================================================
   MODE SOMBRE — activé par data-theme="dark" sur <html>
==================================================== */
[data-theme="dark"] {
  --c-white:   #1a1f2e;
  --c-light:   #232836;
  --c-border:  #2e3447;
  --c-dark:    #f0f4ff;
  --c-gray:    #8b93a7;
  --c-primary-l: #1e2d45;
  --c-accent-l:  #2d1a0e;
}
[data-theme="dark"] body { background: var(--c-white); color: var(--c-dark); }
[data-theme="dark"] .site-header { background: #1a1f2e; border-bottom-color: var(--c-primary); }
[data-theme="dark"] .nav__dropdown,
[data-theme="dark"] .nav__mega { background: #232836; border-color: #2e3447; }
[data-theme="dark"] .nav__dropdown a,
[data-theme="dark"] .nav__mega-links a { color: var(--c-dark); }
[data-theme="dark"] .nav__dropdown a:hover,
[data-theme="dark"] .nav__mega-links a:hover { background: var(--c-primary-l); }
[data-theme="dark"] .card-sm,
[data-theme="dark"] .event-card,
[data-theme="dark"] .site-card,
[data-theme="dark"] .pv3-result,
[data-theme="dark"] .pv3-event-row,
[data-theme="dark"] .pv3-video-card { background: #232836; border-color: #2e3447; }
[data-theme="dark"] .modal-panel { background: #1a1f2e; }
[data-theme="dark"] .nav__mega-articles { background: #1a1f2e; }
[data-theme="dark"] input,
[data-theme="dark"] textarea,
[data-theme="dark"] select { background: #232836; color: var(--c-dark); border-color: #2e3447; }

/* Note v3.19.6 : le bloc .pv3-theme-toggle a ete supprime (doublon de
   .pv3-dark-toggle defini plus haut, jamais utilise). */

/* ====================================================
   ACCESSIBILITÉ RGAA — focus, skip link, sr-only
==================================================== */
.pv3-skip-link {
  position: absolute; top: -100%; left: 1rem;
  background: var(--c-primary); color: #fff;
  padding: .6rem 1.2rem; border-radius: 0 0 var(--rad) var(--rad);
  font-family: var(--ff-heading); font-weight: 700; font-size: .88rem;
  text-transform: uppercase; letter-spacing: .05em; z-index: 9999;
  text-decoration: none; transition: top .15s;
}
.pv3-skip-link:focus { top: 0; }

/* Ratio de contraste amélioré */
.card-sm__date,
.event-card__where,
.pv3-result__date,
.pv3-event-row__meta { color: #4b5563; }  /* ratio 7:1 sur blanc */

/* Indicateur focus renforcé */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid var(--c-accent);
  outline-offset: 3px;
  border-radius: 3px;
}

/* Images décoratives */
[aria-hidden="true"] { pointer-events: none; }

/* Texte suffisamment grand */
@media (max-width: 480px) {
  body { font-size: 17px; }  /* RGAA : min 14px, recommandé 16px+ */
  .nav__dropdown a,
  .nav__mega-links a { font-size: 1rem; padding: .65rem 1.1rem; }
}

/* ====================================================
   MODE SOMBRE
==================================================== */
[data-theme="dark"] {
    --c-primary:   #4d9de0;
    --c-primary-d: #2d7bbf;
    --c-primary-l: #1a2d40;
    --c-accent:    #f97316;
    --c-accent-l:  #2d1a0a;
    --c-dark:      #f1f5f9;
    --c-gray:      #94a3b8;
    --c-light:     #1e293b;
    --c-border:    #334155;
    --c-white:     #0f172a;
}
[data-theme="dark"] body { background: #0f172a; color: #f1f5f9; }
[data-theme="dark"] .site-header { background: #1e293b; border-bottom-color: #334155; }
[data-theme="dark"] .footer { background: #020617; }
[data-theme="dark"] .topbar { background: #020617; }
[data-theme="dark"] .card-sm,
[data-theme="dark"] .event-card,
[data-theme="dark"] .nav__dropdown,
[data-theme="dark"] .nav__mega { background: #1e293b; border-color: #334155; }
[data-theme="dark"] .pv3-page-hero { background: #0f172a; }
[data-theme="dark"] .pv3-mini-cal,
[data-theme="dark"] .pv3-upcoming,
[data-theme="dark"] .pv3-result,
[data-theme="dark"] .pv3-search-suggestions { background: #1e293b; border-color: #334155; }
[data-theme="dark"] input,
[data-theme="dark"] select,
[data-theme="dark"] textarea { background: #1e293b; color: #f1f5f9; border-color: #334155; }

/* Toggle sombre */
.pv3-dark-toggle {
    width: 36px; height: 36px; border-radius: 50%;
    border: 2px solid var(--c-border); background: none; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    color: var(--c-gray); font-size: 1rem;
    transition: all var(--trans);
}
.pv3-dark-toggle:hover { border-color: var(--c-primary); color: var(--c-primary); background: var(--c-primary-l); }

/* ── Bouton flèche nav — séparation lien / dropdown ── */
.nav__arrow-btn {
    background: none; border: none; cursor: pointer;
    padding: 0 0 0 .2rem; display: inline-flex; align-items: center;
    color: inherit; line-height: 1; vertical-align: middle;
}
.nav__arrow-btn:focus-visible {
    outline: 2px solid var(--c-accent); border-radius: 2px;
}
/* Le lien principal navigue normalement */
.nav__item > a {
    display: flex; align-items: center; gap: .15rem;
}
/* Au survol du nav__item, ouvrir le dropdown via CSS (existant) */
/* Au clic sur la flèche, ouvrir via JS (nouveau) */
.nav__item:hover > .nav__dropdown,
.nav__item:hover > .nav__mega {
    opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto;
}
/* Quand ouvert via JS (mobile/clavier), garder ouvert même sans hover */
.nav__item.pv3-open > .nav__dropdown,
.nav__item.pv3-open > .nav__mega {
    opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto;
}
/* Rotation flèche quand ouvert */
.nav__item:hover .nav__arrow,
.nav__item.pv3-open .nav__arrow { transform: rotate(180deg); }
