/* En-tête : le logo officiel prend sa place, sans cartouche ni texte doublonné. */
body{font-size:18px}
.header{height:148px;padding:18px 40px 24px;gap:38px;background:#24342a;align-items:center}
.header::after{height:7px;background:linear-gradient(90deg,#121612 0 33.333%,#e6bd46 33.333% 66.666%,#bb5144 66.666%)}
.identity{display:block;flex:0 0 290px;line-height:0}
.identity img{width:290px;height:auto;max-width:none;object-fit:contain;background:transparent;padding:0;border-radius:0}
.header nav{flex:1;display:flex;justify-content:flex-end;align-items:center;gap:7px;font-size:14px;font-weight:500}
.header nav>a:not(.nav-contact){position:relative;display:flex;align-items:center;text-align:center;justify-content:center;min-height:50px;padding:10px 12px;line-height:1.35;border:0;border-radius:6px;color:#d6dfd0;transition:background .2s,color .2s}
.header nav>a:not(.nav-contact):hover{background:#354b3b;color:#fff9ec}
.header nav>a[aria-current="page"]:not(.nav-contact){background:#3a4c3c;color:#fff8e9}
.header nav>a[aria-current="page"]:not(.nav-contact)::after{content:"";position:absolute;bottom:5px;left:calc(50% - 9px);width:18px;height:2px;background:var(--sand);border-radius:2px}
.header .nav-contact{display:flex;align-items:center;justify-content:center;min-height:48px;margin-left:12px;padding:14px 19px;gap:17px;border-radius:6px;font-size:14px;font-weight:bold;background:var(--sand);color:#213124;box-shadow:0 3px 12px #0002;transition:background .2s,transform .2s}
.header .nav-contact:hover{background:#eedbbd;transform:translateY(-1px)}
.hero-content{padding-top:95px}.hero-content>p:not(.eyebrow){font-size:19px;max-width:630px}.hero-caption{font-size:12px}
.eyebrow{font-size:12px}.text-link{font-size:15px}.button{font-size:15px}.intro-copy{font-size:18px}.strip-inner>p{font-size:15px}.strip-date .eyebrow{font-size:11px}.strip-date>strong{font-size:37px}.practical-grid p,.news-card>p,.info-row p,.advice-grid p{font-size:16px}.practical-grid a{font-size:14px}.news-meta{font-size:11px}.image-label{font-size:12px}.small-facts span{font-size:13px}.contact-block>a{font-size:16px}.footer-top>div>p:not(.eyebrow){font-size:16px}.footer-bottom{font-size:12px}.page-heading>p:not(.eyebrow){font-size:19px}.muted,.booking-grid ul{font-size:15px}
@media(max-width:1400px) and (min-width:1281px){.header{padding-inline:28px;gap:22px}.identity{flex-basis:260px}.identity img{width:260px}.header nav{font-size:13px;gap:3px}.header nav>a:not(.nav-contact){padding-inline:9px}.header .nav-contact{font-size:13px;padding-inline:15px;margin-left:6px}}
@media(max-width:1280px){.header{height:132px;padding:16px 28px 23px;gap:20px}.identity{flex:0 1 auto}.identity img{width:280px;max-width:100%}.menu-toggle{display:flex;gap:14px;align-items:center;background:#304534;color:#f0eee3;border:1px solid #63745c;border-radius:6px;padding:13px 18px;font-size:15px;cursor:pointer}.header nav{display:none;position:absolute;top:100%;left:0;right:0;flex:none;z-index:10;background:#24342a;padding:18px 28px 28px;box-shadow:0 18px 24px #0005;border-bottom:1px solid #55674f}.header nav.open{display:grid;grid-template-columns:1fr 1fr;gap:10px}.header nav>a:not(.nav-contact){justify-content:flex-start;text-align:left;font-size:16px;padding:14px 18px;background:#2b3d30}.header nav>a[aria-current="page"]:not(.nav-contact)::after{left:18px;bottom:7px;width:24px}.header .nav-contact{margin:4px 0 0;grid-column:1/-1;justify-self:start;font-size:16px;padding-inline:24px}}
@media(max-width:760px){.header{height:118px;padding:15px 20px 22px;gap:20px}.identity img{width:230px}.menu-toggle{padding:11px 13px;font-size:14px;gap:10px}.header nav{padding:15px 20px 22px}.header nav.open{grid-template-columns:1fr;gap:7px}.header nav>a:not(.nav-contact){min-height:45px;font-size:16px;padding:12px 16px}.header nav>a[aria-current="page"]:not(.nav-contact)::after{left:auto;right:18px;bottom:calc(50% - 1px)}.header .nav-contact{justify-self:stretch}.hero-content{padding-top:75px}.hero-content>p:not(.eyebrow){font-size:17px;max-width:350px}.hero-caption{font-size:10px}.intro-copy{font-size:17px}.eyebrow{font-size:11px}.page-heading>p:not(.eyebrow){font-size:17px}.footer-bottom{font-size:11px}.section-heading>.text-link{font-size:15px}}
@media(max-width:390px){.identity img{width:205px}.header{padding-inline:15px;gap:12px}.menu-toggle{padding-inline:10px;gap:8px}.hero h1{font-size:54px}}
@media(prefers-reduced-motion:reduce){.header nav>a,.header .nav-contact{transition:none}.header .nav-contact:hover{transform:none}}
