:root{--eau:#0E2A47;--lagon:#0F7C8C;--bouee:#D8432B;--ecume:#EEF6F8;--encre:#13212E;--blanc:#fff}
@media (prefers-color-scheme:dark){:root{--ecume:#0B1B2C;--encre:#E6EEF3;--blanc:#12263B}}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:1.05rem/1.65 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--encre);background:var(--ecume)}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.2;margin:0 0 .6rem}
h1{font-size:clamp(2rem,5vw,3.2rem)}h2{font-size:1.7rem;margin-top:2.2rem}h3{font-size:1.2rem}
p{max-width:68ch}a{color:var(--lagon)}a:focus-visible,.btn:focus-visible{outline:3px solid var(--bouee);outline-offset:3px}
.wrap{max-width:1050px;margin:0 auto;padding:0 1.2rem}
header{background:var(--eau);color:#fff}
header .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1.5rem;padding-top:.8rem;padding-bottom:.8rem}
.logo{font:700 1.6rem Georgia,serif;color:#fff;text-decoration:none}.logo span{color:#ff8a70}
nav{display:flex;flex-wrap:wrap;gap:.2rem}
nav a{color:#fff;text-decoration:none;padding:.5rem .9rem;border-radius:.4rem}
nav a:hover{background:rgba(255,255,255,.14)}nav a[aria-current=page]{background:var(--lagon)}
.hero{background:var(--eau);color:#fff;padding:2.5rem 0 4.5rem;position:relative}
.hero .wrap{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}
.hero p{font-size:1.2rem;color:#d6e6ef}
.bouee{width:200px;height:200px;border-radius:50%;background:conic-gradient(var(--bouee) 0 25%,#fff 0 50%,var(--bouee) 0 75%,#fff 0);-webkit-mask:radial-gradient(circle,transparent 34%,#000 35%);mask:radial-gradient(circle,transparent 34%,#000 35%)}
.vague{position:absolute;bottom:-1px;left:0;width:100%;height:50px;display:block}
.btn{display:inline-block;background:var(--bouee);color:#fff;text-decoration:none;font-weight:700;padding:.75rem 1.4rem;border-radius:.5rem;margin:.4rem .6rem .4rem 0}
.btn.clair{background:transparent;border:2px solid #fff}
main{padding-bottom:3rem}.page-titre{background:var(--eau);color:#fff;padding:2rem 0 3rem}
.grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem;margin-top:1rem}
.carte{background:var(--blanc);border-left:6px solid var(--lagon);padding:1.1rem 1.3rem;border-radius:.4rem}
.carte.rouge{border-color:var(--bouee)}.carte b.sigle{display:block;font:700 1.5rem Georgia,serif;color:var(--lagon)}
.carte p{margin:.3rem 0 0}
table{border-collapse:collapse;width:100%;background:var(--blanc)}th,td{padding:.7rem;border-bottom:1px solid rgba(127,127,127,.3);text-align:left}
.table-defil{overflow-x:auto}
footer{background:var(--eau);color:#c9dbe6;padding:1.6rem 0;font-size:.95rem}footer a{color:#fff}
@media (max-width:700px){.hero .wrap{grid-template-columns:1fr}.bouee{width:130px;height:130px;order:-1}}
.logo{display:flex;align-items:center;gap:.6rem}.logo img{height:44px;width:auto}
.logo-hero{width:220px;height:auto;filter:drop-shadow(0 6px 14px rgba(0,0,0,.35))}
@media (max-width:700px){.logo-hero{width:140px;order:-1}}
.part{border-left-color:var(--eau);text-align:center}.logobox{background:#fff;border-radius:.4rem;height:120px;display:flex;align-items:center;justify-content:center;padding:.6rem;margin-bottom:.8rem}.logobox img{max-width:100%;max-height:100%;object-fit:contain}.logobox:has(img[style*="none"]){display:none}
.ico{display:inline-block;width:1.4em;height:1.4em;vertical-align:-.25em;margin-right:.5rem;background:center/contain no-repeat}
.i-croix{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6v6h6v6h-6v6H9v-6H3V9h6z' fill='%23D8432B'/%3E%3C/svg%3E")}
.i-vagues{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 8c3-3 5 3 8 0s5 3 8 0 3 0 4 0M2 13c3-3 5 3 8 0s5 3 8 0 3 0 4 0M2 18c3-3 5 3 8 0s5 3 8 0 3 0 4 0' fill='none' stroke='%230F7C8C' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}
.i-coeur{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-8-5.5-8-11a4.5 4.5 0 018-2.8A4.5 4.5 0 0120 10c0 5.5-8 11-8 11z' fill='%23D8432B'/%3E%3C/svg%3E")}
.i-badge{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l8 3v6c0 5-3.5 9-8 11-4.5-2-8-6-8-11V5z' fill='%230F7C8C'/%3E%3Cpath d='M8 12l3 3 5-6' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E")}
.i-groupe{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='8' cy='8' r='3' fill='%230F7C8C'/%3E%3Ccircle cx='16' cy='8' r='3' fill='%23D8432B'/%3E%3Cpath d='M2 20c0-4 3-6 6-6s6 2 6 6zM10 20c0-4 3-6 6-6s6 2 6 6z' fill='%230E2A47' opacity='.7'/%3E%3C/svg%3E")}
.i-bulle{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 4h18v12H9l-5 4v-4H3z' fill='%23D8432B'/%3E%3C/svg%3E")}
.page-titre{padding-bottom:3.4rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 20'%3E%3Cpath d='M0 10Q30 0 60 10T120 10V20H0z' fill='%23EEF6F8'/%3E%3C/svg%3E");background-repeat:repeat-x;background-position:bottom;background-size:120px 20px}
@media (prefers-color-scheme:dark){.page-titre{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 20'%3E%3Cpath d='M0 10Q30 0 60 10T120 10V20H0z' fill='%230B1B2C'/%3E%3C/svg%3E")}}
.sigle .ico{width:1.1em;height:1.1em}
.galerie{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem}
.galerie figure{margin:0}.galerie button{all:unset;display:block;width:100%;cursor:zoom-in}.galerie button:focus-visible{outline:3px solid var(--bouee);outline-offset:3px}
.galerie img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:.4rem;display:block}.galerie figcaption{font-size:.95rem;padding:.3rem .2rem}
.videos{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.2rem}
.cadre{aspect-ratio:16/9;background:var(--eau);border-radius:.4rem;overflow:hidden}.cadre iframe{width:100%;height:100%;border:0}
button.video{all:unset;box-sizing:border-box;width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.15rem;cursor:pointer;text-align:center;padding:1rem}
button.video:hover{background:var(--lagon)}button.video:focus-visible{outline:3px solid var(--bouee);outline-offset:-6px}
dialog{border:0;padding:0;border-radius:.5rem;max-width:min(92vw,1000px);background:var(--blanc);color:var(--encre)}dialog::backdrop{background:rgba(0,0,0,.75)}
dialog img{display:block;max-width:100%;max-height:78vh;margin:0 auto}dialog p{margin:0;padding:.6rem 1rem}
dialog button{position:absolute;right:.5rem;top:.5rem;font-size:1.2rem;border:0;border-radius:50%;width:2.4rem;height:2.4rem;background:var(--bouee);color:#fff;cursor:pointer}
.lienpart{display:block;text-decoration:none;color:inherit}h3 .lienpart{display:inline;color:var(--lagon);text-decoration:underline}.lienpart:hover .logobox{outline:3px solid var(--lagon)}
:root{--lien:#0B6B7A}@media (prefers-color-scheme:dark){:root{--lien:#6CCBDB}}
a{color:var(--lien)}.carte b.sigle,h3 .lienpart{color:var(--lien)}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:.6rem 1rem;z-index:100}.skip:focus{left:.5rem;top:.5rem}
