
:root{--ink:#203c3c;--sea:#236369;--paper:#f6f4ed;--sand:#e7e1d3;--line:#d5dcd5;--muted:#64716a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}figure{margin:0}h1,h2,.brand{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(48px,5.8vw,88px);line-height:1.04;letter-spacing:-3px;margin:28px 0}h1 em{font-weight:400;color:var(--sea)}h2{font-size:clamp(36px,4vw,60px);line-height:1.14;letter-spacing:-1.7px;margin:18px 0 28px}p{margin:0 0 20px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #bc7228;outline-offset:5px}.skip{position:fixed;top:-100px;background:white;z-index:100;padding:15px}.skip:focus{top:0}.preview{text-align:center;font-size:12px;padding:8px 16px;background:var(--sea);color:white}header{max-width:1440px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-size:36px;line-height:1}.brand span{font:10px/1.4 system-ui;display:block;margin-top:9px;letter-spacing:2px}nav{display:flex;gap:30px;align-items:center;font-size:14px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid var(--sea);background:var(--sea);color:white;padding:15px 24px;font-size:14px;text-align:center}.button:hover{background:#174c51}.button.small{padding:12px 18px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1fr;padding:26px 5% 65px;gap:35px;align-items:center}.hero-text{padding:25px 0}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:650}.intro{color:#50625d;font-size:17px;line-height:1.85}.hero-meta{display:flex;gap:18px;flex-wrap:wrap;font-size:12px;margin-top:45px}.hero-meta span+span{border-left:1px solid #c4cdc6;padding-left:18px}.hero-picture img{height:570px;width:100%;object-fit:cover;object-position:45% center;border-radius:180px 180px 0 0}.hero-picture figcaption{font-family:Georgia,serif;font-style:italic;font-size:15px;text-align:right;padding-top:12px;color:var(--muted)}.ribbon{background:var(--sand);display:flex;justify-content:center;flex-wrap:wrap;gap:18px 50px;font-size:13px;padding:23px}.section{max-width:1260px;margin:auto;padding:100px 35px}.story{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.story p:not(.eyebrow):not(.signature){max-width:470px;color:#50625d}.signature{font-family:Georgia,serif;font-style:italic;font-size:25px;color:var(--sea)}.story img{width:100%;min-height:410px;object-fit:cover}.story figcaption{margin-top:10px;font-size:12px;color:var(--muted)}.gallery{padding-top:30px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px}.section-heading>p{font-size:13px;color:var(--muted)}.photos{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:260px 260px;gap:16px}.photo{padding:0;border:0;position:relative;background:var(--sea);color:white;overflow:hidden;text-align:left}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.photo:hover img{transform:scale(1.035)}.photo span{position:absolute;bottom:0;left:0;right:0;padding:35px 20px 15px;background:linear-gradient(transparent,rgba(0,0,0,.65));font-size:14px}.photo.large{grid-row:span 2}.photo.wide{grid-column:span 1}.details{display:grid;grid-template-columns:1fr 1fr;gap:100px;border-top:1px solid var(--line);padding-top:70px}.details p{color:#50625d}dl{margin:0}dl>div{display:grid;grid-template-columns:1fr 1.35fr;gap:20px;border-bottom:1px solid var(--line);padding:23px 0}dt{font-size:14px;font-weight:600}dd{margin:0;font-size:14px;color:#50625d}.reservation{background:var(--sea);color:white;padding:80px max(35px,calc((100vw - 1190px)/2));display:grid;grid-template-columns:1fr 1fr;gap:90px}.reservation-copy>p{max-width:490px;color:#e1eae7}.notice{border-top:1px solid #ffffff40;padding-top:24px;margin-top:30px;max-width:480px}.notice p{font-size:13px;margin-top:8px;color:#e1eae7}.booking-card{background:var(--paper);color:var(--ink);padding:35px;align-self:start}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0 25px}.form-grid label:last-child{grid-column:1/-1}label{font-size:13px;font-weight:600;display:block}input,select{display:block;width:100%;min-width:0;border:1px solid #b9c6bd;background:#fffef9;border-radius:0;padding:12px 9px;margin-top:7px;color:var(--ink);min-height:48px;font-size:14px}.booking-card .button{width:100%}.booking-note{font-size:12px;color:var(--muted);margin:18px 0}.text-button{padding:0;background:none;border:0;border-bottom:1px solid var(--ink);color:var(--ink);font-size:13px}.result{padding:18px;background:#e0e9e1;margin-top:22px;font-size:14px}.result.error{background:#f1e0d7}.result p{margin:10px 0 0}.result dl>div{grid-template-columns:1fr auto;padding:7px 0}.result dd{color:var(--ink)}.useful{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:16px;font-weight:550}details p{font-size:14px;color:var(--muted);margin:18px 0 0}.closing{text-align:center;padding:60px 20px 85px;background:var(--sand)}.closing a{border-bottom:1px solid;font-size:14px}footer{padding:45px 5%;display:flex;justify-content:space-between;align-items:center;gap:30px}footer>p{font-size:12px;color:var(--muted);margin:0}footer>a:last-child{font-size:13px}dialog{border:0;padding:55px 25px 20px;max-width:min(980px,94vw);max-height:92vh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#061d22db}#lightboxImage{max-height:70vh;max-width:100%;margin:auto;object-fit:contain}.dialog-close{position:absolute;right:15px;top:12px;border:0;background:none;color:var(--ink);padding:5px}.lightbox-tools{display:flex;justify-content:space-between;align-items:center;gap:20px}.lightbox-tools p{margin:12px;text-align:center}.lightbox-tools button{background:none;border:1px solid var(--line);padding:4px 18px}#accountDialog{max-width:min(560px,94vw);padding:50px 35px 25px}#accountDialog li{margin:12px 0}#accountDialog>p:last-child{font-size:14px;color:var(--muted)}@media(max-width:950px){nav{gap:15px}nav>a:not(.button){display:none}.hero{gap:25px}.hero-picture img{height:480px}.story,.details,.reservation,.useful{gap:40px}.section{padding:65px 25px}.reservation{padding:60px 25px}.photos{grid-template-rows:230px 230px}h1{letter-spacing:-2px}}@media(max-width:650px){header{padding:24px 20px}.brand{font-size:30px}.brand span{font-size:8px}nav .button{font-size:12px;padding:11px}.hero{grid-template-columns:1fr;padding:0 20px 35px;gap:15px}.hero-text{padding:20px 0 5px}h1{font-size:60px}.intro{font-size:16px}.hero-meta{margin-top:30px;gap:10px}.hero-meta span+span{padding-left:10px}.hero-picture img{height:330px;border-radius:120px 120px 0 0}.ribbon{justify-content:flex-start;padding:22px;gap:12px 25px;font-size:12px}.story,.details,.reservation,.useful{grid-template-columns:1fr;gap:28px}.story img{min-height:0}.section{padding:55px 20px}.section-heading{display:block}.photos{grid-template-columns:1fr 1fr;grid-template-rows:250px 200px 200px;gap:10px}.photo.large{grid-column:span 2;grid-row:span 1}.photo span{font-size:12px;padding:30px 10px 10px}.booking-card{padding:22px}.reservation{padding:50px 20px}.form-grid{gap:15px}.useful h2{margin-bottom:0}footer{flex-direction:column;align-items:flex-start;padding:35px 20px}h2{font-size:42px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.logo-brand{display:block;width:200px;overflow:hidden}.logo-brand img{width:100%;height:auto}.journal{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center;border-top:1px solid var(--line)}.journal-cover{background:var(--sea);color:var(--paper);padding:35px;aspect-ratio:3/4;display:flex;flex-direction:column;justify-content:space-between;max-width:340px;box-shadow:9px 9px 0 var(--sand);transform:rotate(-2deg)}.journal-cover>span{font-size:12px;letter-spacing:3px}.journal-cover>div{font:48px/1.12 Georgia,serif}.journal-cover small{font-size:9px;letter-spacing:1.4px}.journal-text>p:not(.eyebrow){max-width:530px;color:var(--muted)}.journal-status{font-size:13px;border-top:1px solid var(--line);padding-top:20px;margin-top:28px}@media(max-width:650px){.logo-brand{width:155px}.journal{grid-template-columns:1fr;gap:40px}.journal-cover{width:230px;padding:25px}.journal-cover>div{font-size:36px}nav .button{font-size:13px}}

/* Album photo : quatre rubriques et lecture en plein écran. */
.album-nav{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0 35px}.album-nav a{border:1px solid var(--line);padding:9px 18px;font-size:14px}.album-nav a:hover{background:var(--sand)}.album-group{scroll-margin-top:25px;margin-top:45px}.album-group h3{font:32px/1.2 Georgia,serif;margin:0 0 20px}.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.album-grid .photo{aspect-ratio:4/3}.album-grid img{width:100%;height:100%;object-fit:cover}.album-group:last-child{margin-bottom:15px}.lightbox-tools button{min-width:48px;min-height:48px}.lightbox-tools p{font-size:14px}#lightbox{width:min(1100px,94vw)}.hero-picture img{object-position:50% center}@media(max-width:800px){.album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.album-grid{grid-template-columns:1fr;gap:14px}.album-nav a{padding:8px 12px}.album-group{margin-top:32px}.album-grid .photo{aspect-ratio:4/3}.lightbox-tools{gap:5px}.lightbox-tools p{font-size:12px;margin:10px 5px}#lightbox{padding-left:10px;padding-right:10px}}

.album-nav>a{display:block}

/* Carnet mensuel, daté et illustré. */
.carnet-article{max-width:1120px;margin:20px auto 90px;padding:20px 30px}.carnet-back{font-size:14px;border-bottom:1px solid var(--line)}.carnet-heading{max-width:820px;margin:45px auto 35px;text-align:center}.carnet-heading h1{font-size:clamp(42px,6vw,72px);letter-spacing:-2px}.carnet-deck{font:24px/1.5 Georgia,serif;color:var(--sea);max-width:650px;margin:20px auto}.carnet-date{font-size:13px;color:var(--muted)}.carnet-opening img{width:100%;max-height:560px;object-fit:cover}.carnet-body{max-width:760px;margin:45px auto}.carnet-body h2{font-size:clamp(30px,4vw,42px);letter-spacing:-1px;margin-top:48px}.carnet-body h3{font:25px/1.3 Georgia,serif;margin:0 0 15px}.carnet-body a,.carnet-article figcaption a{border-bottom:1px solid var(--line);color:var(--sea);overflow-wrap:anywhere}.carnet-lead{font-size:19px;line-height:1.85}.carnet-body figure{margin:35px 0}.carnet-body figure img{width:100%;height:auto}.carnet-portrait{max-width:460px;margin:40px auto!important}.carnet-article figcaption{font-size:12px;line-height:1.6;color:var(--muted);padding-top:10px}.carnet-event{background:var(--sand);padding:25px 28px;margin:25px 0}.carnet-event p:last-child{margin-bottom:0}.carnet-sources{border-top:1px solid var(--line);margin-top:45px;padding-top:25px;font-size:13px}.carnet-sources h3{font:18px/1.4 system-ui}.journal-text .button{margin:10px 0 0}@media(max-width:650px){.carnet-article{padding:15px 20px;margin-top:0}.carnet-heading{margin-top:35px}.carnet-deck{font-size:21px}.carnet-event{padding:22px 20px}.carnet-body{margin-top:28px}.carnet-opening img{max-height:350px}}

.weather-note{max-width:680px;font:21px/1.65 Georgia,serif;color:var(--sea);margin:5px 0 28px}.language-switch{display:flex;gap:10px;align-items:center;font-size:12px}.language-switch a{padding:8px 3px}.language-switch [aria-current="page"]{border-bottom:2px solid var(--sea)}footer p a{border-bottom:1px solid var(--line)}@media(max-width:650px){header{gap:12px}header nav{gap:10px}.language-switch{gap:6px}.weather-note{font-size:19px}}
@media(max-width:450px){header .logo-brand{width:125px}header{gap:10px}header nav{gap:10px}header nav .button{padding:10px 12px;font-size:12px}.language-switch{gap:3px;font-size:11px}.language-switch a{display:inline-flex;justify-content:center;align-items:center;min-width:28px;min-height:44px;padding:8px 3px}}

.carnet-notes{border-top:1px solid var(--line);margin-top:45px;padding-top:12px;font-size:14px;color:var(--muted)}.carnet-notes details{padding:8px 0}.carnet-notes summary{cursor:pointer;min-height:44px;display:list-item;align-content:center;color:var(--sea)}.carnet-notes summary:focus-visible{outline:2px solid var(--sea);outline-offset:4px}.carnet-notes ul{padding-left:22px;line-height:1.9}.carnet-notes li{margin:8px 0}

@media(max-width:480px){header nav{max-width:calc(100% - 135px);flex-wrap:wrap;justify-content:flex-end;gap:6px}header nav .language-switch{order:2;width:100%;justify-content:flex-end;gap:3px}header nav .button{order:1}.language-switch a{min-width:28px;min-height:44px}}

/* A short selection on the page; the complete album opens in the dialog. */
.gallery-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.gallery-preview .photo{aspect-ratio:4/3}.gallery-preview img{width:100%;height:100%;object-fit:cover}.album-cta{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:30px}.album-cta>span{font-size:13px;color:var(--muted)}@media(max-width:800px){.gallery-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}@media(max-width:480px){.gallery-preview{gap:10px}.gallery-preview .photo{aspect-ratio:1}.album-cta{flex-direction:column;gap:8px}.gallery-preview .photo span{font-size:11px;padding:28px 8px 8px}}

/* Keep availability reachable on small screens. */
nav>a.availability-link{display:inline-flex;color:var(--teal,#236369);font-weight:600}
@media(max-width:950px){header nav{flex-wrap:wrap;justify-content:flex-end;gap:12px}}
@media(max-width:650px){header{flex-wrap:wrap}header nav{width:100%;justify-content:flex-start;font-size:12px}}

nav>a.traveller-entry{display:inline-flex;align-items:center;min-height:44px;font-weight:600;font-size:13px}
