:root{--n0:#050f2e;--n1:#0a1a4a;--n2:#10297a;--pl:#e8ebf1;--pl2:#c5cce0;--gold:#d9b46c;--gold2:#f0d79b;--bro:#a8693a;--ink:#101a33;--mut:#9aa6c4;--g:1200px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{font:16px/1.6 "Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--pl);background:radial-gradient(1200px 600px at 50% -100px,var(--n2),transparent),var(--n0);min-height:100vh}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.w{max-width:var(--g);margin:0 auto;padding:0 20px}
.bar{position:fixed;inset:0 0 auto;height:64px;z-index:50;background:rgba(5,15,46,.94);border-bottom:1px solid var(--bro);backdrop-filter:blur(8px)}
.bar .w{height:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px}
.logo{font:700 22px Georgia,"Palatino Linotype",serif;color:var(--gold2);letter-spacing:.5px}
.cats{display:flex;gap:4px;justify-content:center}
.cats a{padding:8px 12px;border-radius:6px;color:var(--pl2);font-size:15px}
.cats a:hover,.cats a[aria-current]{background:var(--n2);color:var(--gold2)}
.srch{justify-self:end;display:flex;width:220px}
.srch input{width:100%;padding:8px 12px;border:1px solid var(--bro);border-radius:6px;background:var(--n1);color:var(--pl);font:inherit}
.burger{display:none;justify-self:end;background:none;border:1px solid var(--bro);color:var(--gold2);padding:6px 12px;border-radius:6px;font:inherit;cursor:pointer}
main{padding-top:64px}
.hero{margin:24px auto;border:2px solid var(--gold);border-radius:10px;background:linear-gradient(180deg,var(--n2),var(--n1));display:grid;grid-template-columns:1fr 1.4fr 1fr;overflow:hidden;min-height:460px}
.hero .side{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:28px 24px;background:rgba(5,15,46,.55)}
.hero .side:last-child{border-left:1px solid var(--bro)}.hero .side:first-child{border-right:1px solid var(--bro)}
.tag{padding:10px 12px;border:1px solid var(--gold);border-radius:6px;text-align:center;font-weight:600;color:var(--gold2);background:var(--n0)}
.tag small{display:block;font-weight:400;color:var(--pl2);font-size:13px}
.hero .mid{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 20px;gap:14px}
.hero .mid .visu{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero .mid::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,15,46,.2),rgba(5,15,46,.82));z-index:0}
.hero .mid>*{position:relative;z-index:1}
.hero h1{font:700 clamp(56px,9vw,112px)/.95 Georgia,"Palatino Linotype",serif;color:var(--gold2);text-shadow:0 4px 0 var(--bro),0 10px 30px #000a}
.hero p{max-width:48ch;color:var(--pl)}
.btn{display:inline-block;padding:12px 26px;border-radius:6px;background:linear-gradient(180deg,var(--gold2),var(--gold));color:var(--ink);font-weight:700;border:0;cursor:pointer;font-size:16px}
.btn:hover{background:var(--gold2)}.btn.o{background:none;border:1px solid var(--gold);color:var(--gold2)}
.bn{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.sec{padding:8px 0 40px}
.sh{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:16px;border-bottom:1px solid var(--bro);padding-bottom:12px;flex-wrap:wrap}
.sh h2{font:700 28px Georgia,serif;color:var(--gold2)}
.flt{display:flex;gap:6px;flex-wrap:wrap}
.flt button{padding:7px 14px;border-radius:6px;border:1px solid var(--bro);background:var(--n1);color:var(--pl2);font:inherit;cursor:pointer}
.flt button[aria-pressed=true]{background:var(--gold);color:var(--ink);border-color:var(--gold)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:linear-gradient(180deg,#122454,#0a173f);color:var(--pl);border-radius:10px;overflow:hidden;box-shadow:0 10px 24px #0007,0 0 0 1px rgba(217,180,108,.35);display:flex;flex-direction:column;cursor:pointer;border:0;text-align:left;font:inherit;width:100%}
.card:hover{box-shadow:0 14px 30px #000a,0 0 0 2px var(--gold)}
.card .im{aspect-ratio:16/9;position:relative;border-bottom:3px solid var(--bro);background:var(--n0)}
.card .im img,.cv img,.shots img,dialog .im img{display:block;width:100%;height:100%;object-fit:cover}
.sc{position:absolute;right:10px;top:10px;min-width:48px;padding:6px 8px;text-align:center;border-radius:6px;background:var(--n0);color:var(--gold2);font:700 20px Georgia,serif;border:1px solid var(--gold)}
.card .tx{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.card h3{font:700 20px Georgia,serif;color:var(--gold2)}
.meta{color:var(--mut);font-size:14px}
.card p{font-size:15px;color:var(--pl2);flex:1}
.pl{display:flex;gap:6px;flex-wrap:wrap}.pl span{font-size:13px;padding:2px 9px;border-radius:5px;background:#0c1840;border:1px solid var(--bro);color:var(--pl2)}
.none{grid-column:1/-1;padding:30px;text-align:center;border:1px dashed var(--bro);border-radius:10px}
.panel{background:#0c1840;color:var(--pl);border-radius:10px;padding:22px 24px;border:1px solid var(--bro)}
.panel h2,.panel h3{font-family:Georgia,serif;color:var(--gold2);margin-bottom:10px}
.panel p+p{margin-top:10px}
.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px}
.cols2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}
.scroll{overflow-x:auto}
table{width:100%;border-collapse:collapse}th,td{padding:10px 12px;text-align:left;border-bottom:1px solid #24345f;vertical-align:top}th{background:var(--n1);color:var(--gold2)}tr:nth-child(even) td{background:#101e48}
details{border:1px solid var(--bro);border-radius:8px;margin-bottom:8px;background:#0c1840}summary{padding:12px 14px;cursor:pointer;font-weight:600;color:var(--gold2)}details p{padding:0 14px 14px;color:var(--pl2)}
.tl{list-style:none;border-left:3px solid var(--bro);padding-left:18px}.tl li{margin-bottom:14px;position:relative}.tl li::before{content:"";position:absolute;left:-26px;top:6px;width:11px;height:11px;border-radius:50%;background:var(--gold);border:2px solid var(--n1)}
.page h1{font:700 40px Georgia,serif;color:var(--gold2);margin:18px 0 12px}
.page h2{font:700 26px Georgia,serif;color:var(--gold2);margin:8px 0 10px}
.page p{margin-bottom:12px}
.crumbs{margin:20px 0 0;color:var(--pl2);font-size:14px}.crumbs a{color:var(--gold2)}
.lead{font-size:20px;color:var(--pl);max-width:68ch;margin-bottom:20px}
.rv{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;margin-bottom:20px}
.cv{border:2px solid var(--gold);border-radius:10px;overflow:hidden;min-height:280px;background:var(--n0)}
.big{font:700 28px Georgia,serif;color:var(--gold2)}
blockquote{margin:14px 0;padding:12px 18px;border-left:4px solid var(--gold);background:#101e48;font:italic 19px Georgia,serif;color:var(--gold2)}
.pm{list-style:none}.pm li{padding:6px 0 6px 22px;position:relative}.pm li::before{position:absolute;left:0;font-weight:700}.pm.p li::before{content:"+";color:#7ddea0}.pm.m li::before{content:"–";color:#f0a0a0}
.pn{display:flex;justify-content:space-between;gap:12px;margin:20px 0 8px;flex-wrap:wrap}
.shots{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px}.shots div{border:2px solid var(--gold);border-radius:10px;overflow:hidden;aspect-ratio:16/10;background:var(--n0)}
.top{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.top div{padding:16px;border:1px solid var(--bro);border-radius:10px;background:var(--n1);text-align:center}.top b{display:block;font:700 28px Georgia,serif;color:var(--gold2)}
.note{border:1px dashed var(--gold);border-radius:8px;padding:12px 14px;color:var(--gold2);margin-bottom:16px;background:rgba(217,180,108,.08)}
.liste{margin:0 0 12px 18px}.liste li{margin:6px 0}
footer{border-top:2px solid var(--bro);background:var(--n0);margin-top:28px}
footer .w{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:28px;padding-top:28px;padding-bottom:28px}
footer strong{display:block;color:var(--gold2);font-family:Georgia,serif;font-size:18px;margin-bottom:8px}
footer p{color:var(--pl2);font-size:14px;margin-bottom:8px}
footer nav{display:flex;flex-direction:column;gap:6px}
footer nav span{color:var(--gold);font-size:13px;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px}
footer a{color:var(--gold2)}
footer a:hover{text-decoration:underline}
dialog{margin:auto;border:2px solid var(--gold);border-radius:10px;padding:0;max-width:680px;width:calc(100% - 32px);background:#0c1840;color:var(--pl)}
dialog::backdrop{background:#020820cc}
dialog .im{aspect-ratio:16/8;background:var(--n0)}
dialog .tx{padding:20px 24px 24px}dialog h3{font:700 26px Georgia,serif;color:var(--gold2)}dialog p{margin:10px 0;color:var(--pl2)}
@media(max-width:980px){.grid,.cols{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}.hero .side{flex-direction:row;flex-wrap:wrap;border:0!important}.hero .side .tag{flex:1}.bar .w{grid-template-columns:auto 1fr auto}.cats{display:none;position:absolute;top:64px;left:0;right:0;flex-direction:column;background:var(--n0);padding:10px 20px;border-bottom:1px solid var(--bro);z-index:60}.cats.open{display:flex}.burger{display:block}.cols2,.rv,.shots{grid-template-columns:1fr}footer .w{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.grid,.cols,.top{grid-template-columns:1fr}.srch{display:none}footer .w{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
