
:root{--navy:#0C142B;--gold:#9C762D;--olive:#55611F;--bg:#FBF8F1;--bg2:#F4EEDD;--card:#fff;--tx:#1a2038;--mut:#5b6073;--line:#e3dcc8;--acc:#9C762D;--nv:#0C142B;--hero:#0C142B;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0B1020;--bg2:#111833;--card:#151d38;--tx:#ece8dc;--mut:#a4a9bc;--line:#262f52;--acc:#d1a64e;--nv:#e9e2cc;--hero:#070b18}}
:root[data-theme="dark"]{--bg:#0B1020;--bg2:#111833;--card:#151d38;--tx:#ece8dc;--mut:#a4a9bc;--line:#262f52;--acc:#d1a64e;--nv:#e9e2cc;--hero:#070b18}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(env(safe-area-inset-top,0px) + 72px)}
body{margin:0;background:var(--bg);color:var(--tx);font:400 16px/1.65 Inter,"Segoe UI",Aptos,Arial,sans-serif}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);background:var(--hero);z-index:60}
h1,h2,h3{font-family:"Playfair Display",Georgia,serif;line-height:1.2;margin:0}
a{color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--hero);border-bottom:2px solid var(--gold)}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;font:700 18px "Playfair Display",Georgia,serif}
.brand img{width:44px;height:44px;border-radius:50%;background:#fff;object-fit:cover}
.brand small{display:block;font:500 10px Inter,sans-serif;letter-spacing:.14em;color:#d1a64e;text-transform:uppercase}
nav ul{display:flex;gap:6px;list-style:none;margin:0;padding:0;align-items:center}
nav a{display:block;padding:8px 12px;border-radius:8px;color:#e9e2cc;text-decoration:none;font-size:14px;font-weight:500}
nav a:hover{background:rgba(255,255,255,.1)}
nav a.cta{background:#9C762D;color:#fff}
.ib{background:none;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:8px;width:38px;height:38px;cursor:pointer;font-size:17px}
#burger{display:none}
@media(max-width:860px){#burger{display:block}nav ul{display:none;position:absolute;left:0;right:0;top:68px;background:var(--hero);flex-direction:column;padding:12px 22px 18px;align-items:stretch;border-bottom:2px solid var(--gold)}nav ul.open{display:flex}}
.hero{background:radial-gradient(1200px 500px at 80% -10%,#26366b55,transparent),var(--hero);color:#fff;padding:84px 0 96px}
.hero .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:center}
.hero h1{font-size:clamp(34px,5.2vw,58px)}
.hero h1 em{color:#d1a64e;font-style:normal}
.hero p{color:#cfd3e2;font-size:18px;max-width:560px;margin:20px 0 30px}
.eb{font:600 12px Inter,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#d1a64e;margin-bottom:14px}
.btn{display:inline-block;padding:13px 24px;border-radius:10px;font-weight:600;text-decoration:none;border:2px solid #9C762D;background:#9C762D;color:#fff;cursor:pointer;font-size:15px;font-family:inherit}
.btn.o{background:transparent;color:inherit;border-color:currentColor;margin-left:10px}
.hero .logo{background:#fff;border-radius:28px;padding:18px;box-shadow:0 30px 60px #0008;justify-self:center;max-width:340px}
.hero .logo img{width:100%;display:block}
@media(max-width:860px){.hero .wrap{grid-template-columns:1fr}.hero .logo{max-width:240px;order:-1}.btn.o{margin:10px 0 0}}
section{padding:84px 0}
section.alt{background:var(--bg2)}
.sh{max-width:680px;margin-bottom:44px}
.sh .eb{color:var(--acc)}
.sh h2{font-size:clamp(28px,3.6vw,40px);color:var(--nv)}
.sh p{color:var(--mut);margin:14px 0 0}
.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.g2,.g3,.g4{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px;transition:.2s}
.card:hover{transform:translateY(-4px);box-shadow:0 14px 34px #0c142b22}
.card h3{font-size:20px;color:var(--nv);margin:12px 0 8px}
.card p{margin:0;color:var(--mut);font-size:15px}
.ic{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;font-size:23px;background:var(--bg2);border:1px solid var(--line)}
.quote{border-left:4px solid var(--gold);padding:6px 0 6px 22px;font:600 clamp(20px,2.4vw,26px)/1.45 "Playfair Display",Georgia,serif;color:var(--nv)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
@media(max-width:860px){.two{grid-template-columns:1fr;gap:28px}}
.pl{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px}
.chip{padding:8px 16px;border-radius:99px;border:1px solid var(--line);background:var(--card);color:var(--tx);cursor:pointer;font:500 14px Inter,sans-serif}
.chip.on{background:var(--nv);color:var(--bg);border-color:var(--nv)}
.tag{display:inline-block;font-size:12px;font-weight:600;padding:3px 10px;border-radius:99px;margin-right:6px}
.p-Important{background:#f6d9d9;color:#8b1e1e}.p-Modéré{background:#fcefd1;color:#8a6100}.p-Faible{background:#e1eedb;color:#2f5d34}
.h{background:var(--bg2);color:var(--mut)}
.ac .po{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--acc);font-weight:600;margin-bottom:6px}
.steps{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;gap:14px}
.steps li{counter-increment:s;display:flex;gap:16px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}
.steps li::before{content:counter(s);flex:none;width:34px;height:34px;border-radius:50%;background:var(--gold);color:#fff;display:grid;place-items:center;font-weight:700}
.news small{color:var(--acc);font-weight:600}
form{display:grid;gap:14px}
input,textarea,select{width:100%;padding:13px 14px;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--tx);font:inherit}
label{font-size:14px;font-weight:600}
.ct{display:grid;gap:14px;margin-top:20px}
.ct div{display:flex;gap:12px;align-items:center;color:var(--mut)}
footer{background:var(--hero);color:#cfd3e2;padding:56px 0 30px;border-top:2px solid var(--gold)}
footer .g4{margin-bottom:30px}
footer h4{color:#d1a64e;margin:0 0 12px;font-size:14px;letter-spacing:.1em;text-transform:uppercase}
footer a{display:block;text-decoration:none;padding:3px 0;font-size:14px}
footer .b{border-top:1px solid #ffffff22;padding-top:20px;font-size:13px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
#ok{display:none;color:var(--olive);font-weight:600}
.si{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.hero{position:relative;overflow:hidden;min-height:640px;display:flex;align-items:center;padding:60px 0}
.scene{position:absolute;inset:0;width:100%;height:100%}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,11,24,.92),rgba(7,11,24,.55) 55%,rgba(7,11,24,.08))}
.hero .wrap{position:relative;z-index:1;width:100%}
.hero .logo{max-width:210px;border-radius:50%;padding:12px}
.band{background:var(--hero);color:#fff;border-bottom:2px solid var(--gold)}
.band .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:34px;padding-bottom:34px;text-align:center}
.band b{display:block;font:700 40px "Playfair Display",Georgia,serif;color:#d1a64e}
.band span{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#cfd3e2}
@media(max-width:700px){.band .wrap{grid-template-columns:repeat(2,1fr)}}
.pc{padding:0;overflow:hidden}
.pc>h3{margin:18px 24px 8px}.pc>p{margin:0 24px 24px}
.ph{height:150px;display:flex;align-items:flex-end;justify-content:space-between;padding:18px 22px;color:#fff;background:radial-gradient(circle at 85% 22%,#ffffff33 0 36px,transparent 38px),linear-gradient(135deg,var(--a),var(--b))}
.ph .si{width:64px;height:64px}.ph b{font:700 34px "Playfair Display",serif;opacity:.5}
.k1{--a:#0C142B;--b:#2a4a9a}.k2{--a:#6b2d1a;--b:#d1a64e}.k3{--a:#2c3a14;--b:#7f9a2e}.k4{--a:#1b2a5a;--b:#9C762D}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tile{position:relative;aspect-ratio:4/3;border-radius:18px;overflow:hidden;color:#fff;display:flex;align-items:flex-end;padding:20px;background:radial-gradient(circle at 80% 25%,#ffffff40 0 46px,transparent 48px),radial-gradient(circle at 12% 95%,#ffffff1f 0 80px,transparent 82px),linear-gradient(135deg,var(--a),var(--b));transition:.25s}
.tile:hover{transform:scale(1.03)}
.tile .si{position:absolute;right:22px;top:20px;width:92px;height:92px}
.tile h3{font-size:19px;color:#fff}.tile p{margin:4px 0 0;font-size:13px;color:#ffffffd0}
@media(max-width:900px){.gal{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.gal{grid-template-columns:1fr}}
.panel{border-radius:20px;background:radial-gradient(circle at 80% 20%,#ffe9a855 0 50px,transparent 52px),linear-gradient(135deg,#0C142B,#2a4a9a 60%,#9C762D);color:#fff;padding:34px 20px;display:flex;justify-content:space-around;margin-bottom:22px}
.panel .si{width:78px;height:78px}
.news .card{padding-top:0;overflow:hidden}
.news .card::before{content:"";display:block;height:130px;margin:0 -26px 18px;background:radial-gradient(circle at 78% 30%,#ffe9a866 0 34px,transparent 36px),radial-gradient(circle at 20% 100%,#ffffff22 0 70px,transparent 72px),linear-gradient(135deg,#0C142B,#9C762D)}
#programme{background:var(--hero)}#programme .sh h2{color:#fff}#programme .sh p{color:#cfd3e2}#programme .chip{background:#ffffff14;border-color:#ffffff30;color:#e9e2cc}#programme .chip.on{background:#9C762D;border-color:#9C762D;color:#fff}
body,h1,h2,h3,h4,.brand,.brand small,.eb,.chip,.band b,.ph b,.quote,button,input,select,textarea{font-family:Aptos,"Segoe UI",Calibri,"Helvetica Neue",Arial,sans-serif}
.rv{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}
.card.rv.in,.tile.rv.in{transition:opacity .7s,transform .25s,box-shadow .25s}
.prog{position:fixed;top:env(safe-area-inset-top,0px);left:0;right:0;height:3px;background:linear-gradient(90deg,#9C762D,#ffe9a8);transform-origin:0 50%;transform:scaleX(0);z-index:70}
header .nav{transition:height .3s}header.sm .nav{height:54px}
.fx{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.live{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#cfd3e2;background:#ffffff14;border:1px solid #ffffff2a;border-radius:99px;padding:5px 14px;margin-bottom:18px}
.live i{width:8px;height:8px;border-radius:50%;background:#5fd36b;animation:pu 1.4s infinite}
@keyframes pu{0%{box-shadow:0 0 0 0 #5fd36b99}100%{box-shadow:0 0 0 10px #5fd36b00}}
@keyframes bl{50%{opacity:0}}
@keyframes fl{50%{transform:translateY(-10px)}}
@keyframes bg{50%{background-position:100% 50%}}
@keyframes mq{to{transform:translateX(-50%)}}
@keyframes pop{from{opacity:0;transform:scale(.94) translateY(10px)}}
.hero .logo,.panel .si,.tile .si{animation:fl 5s ease-in-out infinite}
.panel .si:nth-child(2),.tile:nth-child(even) .si{animation-delay:-1.6s}.panel .si:nth-child(3){animation-delay:-3.2s}
.ac{animation:pop .45s both}
.hero .eb{min-height:18px}.hero .eb::after{content:"|";margin-left:2px;animation:bl 1s steps(2) infinite}
.mq{background:var(--gold);color:#fff;overflow:hidden;white-space:nowrap;padding:14px 0}
.mt{display:inline-block;font-weight:700;letter-spacing:.2em;font-size:14px;animation:mq 28s linear infinite}
.phero{position:relative;overflow:hidden;color:#fff;padding:96px 0 70px;background:linear-gradient(120deg,#070b18,#1b2a5a,#9C762D,#1b2a5a);background-size:300% 300%;animation:bg 14s ease infinite}
.phero h1{font-size:clamp(34px,5vw,54px)}.phero p{color:#cfd3e2;max-width:560px}
.art{display:flex;flex-direction:column;padding-top:0;overflow:hidden}
.art .ab{height:140px;margin:0 -26px 18px;display:flex;align-items:flex-end;justify-content:space-between;padding:16px 20px;color:#fff;background:radial-gradient(circle at 80% 25%,#ffffff40 0 30px,transparent 32px),linear-gradient(135deg,var(--a),var(--b))}
.art .ab span{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:#0006;padding:4px 10px;border-radius:99px}
.art .ab .si{width:56px;height:56px;animation:fl 5s ease-in-out infinite}
.art small{color:var(--acc);font-weight:600}
.art .more{max-height:0;overflow:hidden;opacity:0;transition:.5s;color:var(--mut);font-size:15px}
.art.open .more{max-height:300px;opacity:1;margin-top:10px}
.lk{margin-top:16px;align-self:flex-start;background:none;border:0;color:var(--acc);font-weight:700;cursor:pointer;padding:0;font-size:15px}
.note{color:var(--mut);font-size:13px;margin-top:26px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}
#visions{background:var(--hero)}#visions .sh h2{color:#fff}#visions .sh p{color:#cfd3e2}
.vi{display:flex;gap:18px;align-items:flex-start}.vi b{font-size:42px;line-height:1;color:var(--acc);opacity:.75}
.band .wrap{grid-template-columns:repeat(3,1fr)}@media(max-width:700px){.band .wrap{grid-template-columns:1fr}}
.badge{display:inline-block;background:var(--gold);color:#fff;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 12px;border-radius:99px;margin-bottom:12px;animation:bd 2s infinite}
@keyframes bd{50%{box-shadow:0 0 0 7px #9C762D33}}
.news .hf{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.25fr;padding:0}
.news .hf::before{height:auto;min-height:280px;margin:0}
.hb{padding:30px;display:flex;flex-direction:column;align-items:flex-start}.hb h3{font-size:26px}.hb small{color:var(--acc);font-weight:600}.hb .lk{text-decoration:none}
.art.feat{grid-column:1/-1}
@media(min-width:760px){.art.feat{display:grid;grid-template-columns:1fr 1.3fr;column-gap:30px}.art.feat .ab{grid-column:1;grid-row:1/7;margin:0 0 0 -26px;height:auto;min-height:260px}.art.feat>:not(.ab){grid-column:2}.art.feat h3{font-size:24px}}
@media(max-width:760px){.news .hf{grid-template-columns:1fr}.news .hf::before{min-height:160px}}
.i1{--im:url(../img/i1.jpg)}
.i2{--im:url(../img/i2.jpg)}
.i3{--im:url(../img/i3.jpg)}
.i4{--im:url(../img/i4.jpg)}
.i5{--im:url(../img/i5.jpg)}
.i6{--im:url(../img/i6.jpg)}
.i7{--im:url(../img/i7.jpg)}
.i8{--im:url(../img/i8.jpg)}
.i9{--im:url(../img/i9.jpg)}
.i10{--im:url(../img/i10.jpg)}
.i11{--im:url(../img/i11.jpg)}
.i12{--im:url(../img/i12.jpg)}
.i13{--im:url(../img/i13.jpg)}
.scene>*{display:none}
.scene{background:url(../img/scene.jpg) 62% center/cover no-repeat}
@media(min-width:861px){.scene{background-image:url(../img/scene.jpg);background-position:right center}}
@media(max-width:860px){.hero::after{background:linear-gradient(180deg,rgba(7,11,24,.8),rgba(7,11,24,.55))}}
.hero .logo{display:none}
.hasim.tile,.hasim.ph,.hasim.ab{background:linear-gradient(0deg,rgba(7,11,24,.72),rgba(7,11,24,0) 62%),var(--im) center/cover no-repeat}
.news .card.hasim::before{background:linear-gradient(0deg,rgba(7,11,24,.45),rgba(7,11,24,0) 60%),var(--im) center/cover no-repeat}
.hasim.tile .si,.hasim.ph .si,.hasim.ab .si{display:none}
.hasim.ph b{opacity:.9;text-shadow:0 2px 8px #000a}

.lg{width:auto;padding:0 10px;display:flex;align-items:center;gap:5px;font:700 12px/1 Aptos,"Segoe UI",Calibri,Arial,sans-serif;letter-spacing:.06em}
.lg span{opacity:.55;transition:.2s}.lg span.on{opacity:1;color:#d1a64e}.lg i{opacity:.4;font-style:normal}
.lg:hover{background:rgba(255,255,255,.1)}
.hero .wrap{grid-template-columns:1.05fr .95fr}
.hero .logo{display:block;width:100%;max-width:350px;justify-self:end;position:relative;left:clamp(0px,calc((100vw - 1120px)/2 + 6px),56px);top:clamp(0px,5vh,48px);background:#fff;border-radius:28px;padding:18px;border:3px solid #d1a64e;box-shadow:0 36px 90px #000c,0 0 0 10px rgba(209,166,78,.18)}
.hero .logo img{width:100%;height:auto;display:block;border-radius:14px}
@media(max-width:860px){.hero .wrap{grid-template-columns:1fr}.hero .logo{order:-1;max-width:min(260px,66vw);justify-self:center;left:0;top:0;border-radius:24px;padding:12px}}
@media(max-width:420px){.wrap{padding:0 14px}.brand{font-size:16px;gap:8px}.brand img{width:36px;height:36px}.brand small{letter-spacing:.08em}}
