*{box-sizing:border-box}
:root{--blue:#003366;--gold:#D4AF37;--text:#333;--bg:#f9f9f9}
html{scroll-behavior:smooth}
body{font-family:Georgia,serif;margin:0;background:var(--bg);color:var(--text);line-height:1.6}
header{position:fixed;top:0;width:100%;background:var(--blue);color:#fff;padding:10px 0;z-index:1000;box-shadow:0 2px 5px rgba(0,0,0,.2)}
.container{max-width:1100px;margin:0 auto;padding:0 20px;display:flex;align-items:center;justify-content:space-between}
.logo a{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:#fff}
.logo img{height:40px;width:auto;display:block}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:18px;flex-wrap:wrap}
nav a{color:#fff;text-decoration:none;font-weight:700;transition:opacity .2s}
nav a:hover{opacity:.85}
main{margin-top:72px}
.section{padding:56px 0}
h1,h2,h3{color:var(--blue);margin:0 0 .6em}
h1{font-size:2.2rem} h2{font-size:1.8rem} h3{font-size:1.25rem}
p{margin:0 0 1rem}
.lead{max-width:860px;margin:8px auto 0;text-align:center;font-size:1.05rem}
.banner{background-image:url('/assets/img/louvre_cour.jpg');background-size:cover;background-position:center;color:#fff;text-align:center;padding:120px 20px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}
.banner h1{font-size:2.6rem;margin-bottom:.2rem}
.buttons{margin-top:14px}
.btn{display:inline-block;background:var(--gold);color:var(--blue);padding:10px 18px;margin:6px;text-decoration:none;border:0;border-radius:8px;transition:filter .2s;font-weight:700;cursor:pointer}
.btn:hover{filter:brightness(.95)}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.card{background:#fff;border-radius:12px;box-shadow:0 6px 20px rgba(0,0,0,.08);padding:18px;text-align:center}
.card img{width:100%;height:190px;object-fit:cover;border-radius:10px;margin-bottom:10px}
.card h4{margin:.4rem 0 .2rem;color:var(--blue)}
footer{background:var(--blue);color:#fff;text-align:center;padding:22px}
footer a{color:var(--gold);text-decoration:none}
#cookie-banner{background:var(--gold);color:var(--blue);padding:12px 16px;text-align:center;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 5px rgba(0,0,0,.2);display:none;gap:10px;flex-wrap:wrap;justify-content:center;align-items:center;z-index:1001}
#cookie-banner .row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
#cookie-banner button{background:var(--blue);color:#fff;border:none;padding:8px 14px;border-radius:6px;cursor:pointer}
#cookie-banner .btn-reject{background:#4a5568}
.notice{font-size:.95rem;opacity:.9}
.content{max-width:900px;margin:0 auto;padding:0 20px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
hr.sep{border:0;border-top:1px solid #e5e7eb;margin:24px 0}
@media(max-width:900px){.grid-3{grid-template-columns:1fr 1fr}.two-col{grid-template-columns:1fr}}
@media(max-width:640px){.grid-3{grid-template-columns:1fr}}
/* hide logo text visually, keep for screen readers */
.logo span{position:absolute!important;clip:rect(1px,1px,1px,1px);padding:0;border:0;height:1px;width:1px;overflow:hidden;white-space:nowrap}
