:root{--navy:#122f40;--red:#a63029;--cream:#f6f5ef;--ink:#223d4c;--muted:#536976;--line:#dbe1df}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;background:#fff}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b84b39;outline-offset:5px}img{display:block;max-width:100%}.skip{position:absolute;left:20px;top:-100px;z-index:20;background:white;padding:12px}.skip:focus{top:10px}.topline{background:var(--navy);color:white;display:flex;justify-content:space-between;padding:8px 5%;font-size:12px;letter-spacing:.04em}.header{position:sticky;top:0;z-index:10;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:12px 5%;border-bottom:1px solid var(--line);gap:22px}.brand img{width:105px;height:74px;object-fit:contain}.header nav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:var(--red);color:white;min-height:50px;padding:13px 22px;font-size:14px;font-weight:600;border-radius:3px;line-height:1.5;transition:background .2s}.button:hover{background:#88251f;text-decoration:none}.button.small{font-size:12px;padding:12px 15px;min-height:44px}.button.light{background:var(--cream);color:var(--navy)}.button.light:hover{background:#e9e6d9}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:46% 54%;background:var(--cream);min-height:640px}.hero-copy{padding:64px 9% 54px 11%}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.17em;margin:0 0 24px;text-transform:uppercase}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.04em;line-height:1.06;margin:0}h1{font-size:clamp(54px,5.4vw,86px)}h1 em{color:var(--red);font-weight:400}h2{font-size:clamp(34px,3.6vw,53px)}.intro{font-size:16px;max-width:360px;margin:28px 0;color:var(--muted);line-height:1.8}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px}.text-link{font-size:13px;font-weight:600;white-space:nowrap}.hero-note{display:flex;align-items:center;gap:16px;margin-top:38px;font-size:12px;color:var(--muted);line-height:1.5}.anchor{font-size:29px;color:var(--navy)}.hero-photo{position:relative;min-width:0}.hero-photo>img{height:100%;width:100%;object-fit:cover;object-position:58% center}.photo-label{position:absolute;bottom:0;left:0;right:0;padding:26px 30px;color:#fff;display:flex;justify-content:space-between;background:linear-gradient(transparent,rgba(7,29,40,.85));font-size:12px}.photo-label>span{letter-spacing:.12em;font-size:10px}.season{display:flex;align-items:center;gap:22px;padding:23px 5%;border-bottom:1px solid var(--line);font-size:13px}.season p{margin:0;flex:1}.season a{font-weight:700;white-space:nowrap}.season-tag{font-size:10px;font-weight:700;letter-spacing:.1em;border-left:3px solid var(--red);padding-left:13px}.wrap{width:90%;max-width:1280px;margin:auto}.section{width:90%;max-width:1280px;margin:auto;padding:90px 0}.section-heading{margin-bottom:38px}.marina{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.marina .section-heading{margin:0}.lead{font-size:24px;line-height:1.45;margin:0 0 18px}.marina-body>p:not(.lead){color:var(--muted);max-width:600px}.audiences{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.audiences a{position:relative;border-top:1px solid var(--line);padding-top:20px}.audiences span{display:block;font-size:9px;letter-spacing:.08em;margin-bottom:9px}.audiences strong{font-size:15px;font-weight:600}.audiences b{position:absolute;right:0;bottom:0;font-weight:400}.escale{max-width:none;width:100%;background:var(--navy);color:#fff;padding:64px 5%}.escale-top{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.escale-top>p{font-size:13px;color:#c2d0d7;margin:0;max-width:410px}.stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:50px;border-top:1px solid #49606d;border-bottom:1px solid #49606d}.stats>div{padding:28px 28px 30px;border-right:1px solid #49606d}.stats>div:first-child{padding-left:0}.stats>div:last-child{border:0}.stats strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:58px;line-height:1.2}.stats small{font-size:24px}.stats span{font-size:12px;color:#d7e1e5}.footnote{font-size:10px;color:#c2d0d7;max-width:760px;margin:15px 0 30px}.escale-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.escale-bottom p{font-family:Georgia,serif;font-size:23px;margin:0}.horizontal{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.horizontal>p{font-size:13px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid article{padding:34px 38px;border-right:1px solid var(--line)}.service-grid article:first-child{padding-left:0}.service-grid article:last-child{border:0}.service-number{font-size:12px;color:var(--red);font-weight:700}.service-grid h3{font-family:Georgia,serif;font-weight:400;font-size:26px;margin:18px 0}.service-grid ul{list-style:none;padding:0;margin:0;font-size:14px;color:var(--muted)}.service-grid li{padding:7px 0}.gallery-section{background:var(--cream);padding:80px 0}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.gallery-item{position:relative;display:block;aspect-ratio:1/1;border:0;padding:0;background:var(--navy);overflow:hidden;text-align:left;color:white;border-radius:3px}.gallery-item.wide{grid-column:span 2;aspect-ratio:2/1}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item span{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(7,29,40,.85));padding:35px 20px 16px;font-size:13px;display:flex;justify-content:space-between}.gallery-item b{font-weight:400}.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:70px}.contact address{font-style:normal;font-size:15px;color:var(--muted);margin:28px 0 14px}.phone{font-family:Georgia,serif;font-size:30px;display:block;margin:0 0 28px}.map-panel{min-width:0;background:var(--cream);border:1px solid var(--line);border-radius:4px;overflow:hidden;align-self:start}.map-panel iframe{border:0;display:block;width:100%;height:390px}.map-panel p{font-size:12px;padding:16px 22px;margin:0}.hours{font-size:12px;margin-top:30px;border-top:1px solid var(--line);padding-top:16px;color:var(--muted)}summary{cursor:pointer;font-weight:600}.resources{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;padding-top:20px}.resource-list details{border-top:1px solid var(--line);padding:18px 0}.resource-list summary{font-size:16px}.resource-list a{display:block;font-size:13px;padding:6px 0;color:var(--muted)}.resource-list a:first-of-type{margin-top:15px}.resource-list p{font-size:13px}.closing{position:relative;min-height:360px;display:flex;align-items:center;overflow:hidden;color:white}.closing>img{position:absolute;width:100%;height:100%;object-fit:cover}.closing:after{content:'';position:absolute;inset:0;background:rgba(8,29,41,.73)}.closing>div{position:relative;z-index:1;width:90%;margin:auto;padding:60px 0}.closing h2{margin-bottom:30px}.partners{display:flex;align-items:center;gap:50px;padding:35px 0;border-bottom:1px solid var(--line)}.partners .eyebrow{margin:0}.partners img{width:180px;height:auto}footer{display:flex;justify-content:space-between;gap:20px;padding:25px 0;font-size:11px;color:var(--muted)}.mobile-actions{display:none}dialog{border:0;border-radius:5px;background:var(--navy);color:white;width:min(1000px,94vw);max-height:92vh;padding:18px}dialog::backdrop{background:rgba(4,15,22,.86)}.lightbox-toolbar,.lightbox-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:13px}.lightbox-toolbar{padding-bottom:14px}.lightbox-footer{padding-top:14px}.lightbox-footer p{margin:0;text-align:center}dialog button{border:1px solid #78909c;background:transparent;color:white;padding:8px 14px;min-height:44px;border-radius:3px}#large-photo{max-height:70vh;object-fit:contain;width:100%}
@media(min-width:1500px){.hero-copy{padding-left:max(11%,calc((100vw - 1280px)/2))}}@media(max-width:1100px){.header nav{gap:15px;font-size:12px}.hero-copy{padding:48px 9%}.hero{min-height:580px}.marina{gap:45px}.contact,.resources{gap:40px}.button{font-size:12px;gap:12px}.hero .actions{gap:16px}.service-grid article{padding:30px 22px}}
@media(max-width:900px){.menu-toggle{display:flex;align-items:center;gap:12px;background:white;border:1px solid var(--line);border-radius:3px;padding:9px 13px;font-size:13px;min-height:44px}.header nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;border-bottom:1px solid var(--line);padding:20px 5%;flex-direction:column;align-items:stretch;font-size:15px;gap:0}.header nav a{padding:12px}.header nav.open{display:flex}.hero-copy{padding:45px 9%}.hero .actions{align-items:flex-start;flex-direction:column}.hero h1{font-size:58px}.intro{font-size:14px}.hero-note{margin-top:28px}.season{flex-wrap:wrap;gap:10px}.season p{min-width:50%}.season a{margin-left:auto}.marina{gap:30px}.lead{font-size:20px}.audiences{grid-template-columns:1fr}.gallery{gap:12px}.photo-label{padding:25px 18px}.photo-label>span{display:none}}
@media(max-width:640px){html{scroll-padding-top:90px}.topline{font-size:10px;padding:7px 5%}.topline span{max-width:210px}.header{padding:8px 5%}.brand img{width:82px;height:58px}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 5% 35px}.hero h1{font-size:58px;line-height:1.05}.hero .eyebrow{font-size:10px;margin-bottom:20px}.hero .actions{flex-direction:row;align-items:center}.hero-note{display:none}.intro{font-size:15px;max-width:390px;margin:23px 0}.hero-photo{height:300px}.hero-photo>img{object-position:center 66%}.photo-label>span{display:block}.season{padding:20px 5%;display:block}.season p{margin:8px 0}.season a{font-size:12px}.section{padding:55px 0}.marina,.contact,.resources{grid-template-columns:1fr;gap:30px}.section-heading{margin-bottom:25px}.eyebrow{margin-bottom:16px}h2{font-size:38px}.audiences{grid-template-columns:1fr 1fr;gap:20px}.audiences span{font-size:8px}.audiences strong{font-size:13px;display:block;padding-right:16px}.escale{padding:48px 5%;width:100%}.escale-top,.horizontal{display:block}.escale-top>p{margin-top:20px}.stats{grid-template-columns:1fr 1fr;margin-top:28px}.stats>div{padding:20px!important}.stats>div:nth-child(2){border-right:0}.stats>div:nth-child(-n+2){border-bottom:1px solid #49606d}.stats strong{font-size:48px}.escale-bottom{display:block}.escale-bottom p{font-size:21px;margin-bottom:20px}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid var(--line);padding:25px 0}.service-grid h3{margin:8px 0 12px}.service-grid ul{display:grid;grid-template-columns:1fr 1fr;gap:0 15px;font-size:13px}.gallery-section{padding:48px 0}.gallery{grid-template-columns:1fr 1fr;gap:12px}.gallery-item{aspect-ratio:1/1}.gallery-item.wide{aspect-ratio:1.8/1}.gallery-item span{font-size:11px;padding:25px 12px 10px}.map-panel iframe{height:300px}.resources{padding-top:0}.closing{min-height:330px}.partners{gap:20px;justify-content:space-between}.partners img{width:140px}.partners .eyebrow{font-size:9px}footer{flex-wrap:wrap;padding-bottom:90px;font-size:10px}.mobile-actions{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:10;background:white;box-shadow:0 -2px 14px #122f4018;padding:10px 5% max(10px,env(safe-area-inset-bottom));gap:10px}.mobile-actions a{padding:12px;text-align:center;flex:1;font-size:12px;font-weight:600;border:1px solid var(--line);border-radius:3px}.mobile-actions a:last-child{background:var(--red);color:#fff;border-color:var(--red);flex:1.7}.lightbox-footer{gap:10px}.lightbox-footer p{font-size:11px}dialog{padding:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Logo fourni : proportions carrées, image intégrale sans recadrage. */
.brand{flex-shrink:0;display:block}.brand img{width:112px;height:112px;object-fit:contain;object-position:center}html{scroll-padding-top:150px}
@media(max-width:640px){.brand img{width:88px;height:88px}html{scroll-padding-top:115px}}
