:root{
  --bg:#12110f;--ink:#f4efe8;--paper:#f3eee6;--dark:#171513;--muted:#b5ada3;--pink:#d34d82;--pink2:#ef6da1;--line:rgba(255,255,255,.15);--radius:24px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}
.nav{position:fixed;inset:0 0 auto 0;height:82px;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;background:linear-gradient(to bottom,rgba(13,12,11,.8),transparent);transition:.3s}.nav.scrolled{background:rgba(18,17,15,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.brand{display:flex;flex-direction:column;line-height:.9}.brand-main{font-family:'Playfair Display',serif;font-style:italic;font-weight:600;font-size:32px;color:var(--pink2)}.brand-sub{font-size:10px;text-transform:uppercase;letter-spacing:.18em;margin-top:8px}.desktop-nav{display:flex;gap:32px;font-size:14px}.desktop-nav a{opacity:.82}.desktop-nav a:hover{opacity:1;color:var(--pink2)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border:1px solid transparent;border-radius:999px;font-weight:700;font-size:14px;transition:.25s}.btn:hover{transform:translateY(-2px)}.btn-small{min-height:42px;padding:0 18px}.btn-pink{background:var(--pink);color:#fff}.btn-pink:hover{background:var(--pink2)}.btn-ghost{border-color:rgba(255,255,255,.4);color:#fff;background:rgba(255,255,255,.03)}.btn-light{background:#fff;color:#171513}
.hero{position:relative;min-height:100svh;display:grid;align-items:end;overflow:hidden}.hero-bg{position:absolute;inset:0;background:url('assets/Festin tropical sous lumières dorées.png') center/cover no-repeat;overflow:hidden}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.01)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,8,7,.87) 0%,rgba(9,8,7,.58) 43%,rgba(9,8,7,.2) 70%),linear-gradient(0deg,rgba(9,8,7,.8),transparent 45%)}.hero-content{position:relative;z-index:2;padding:150px 8vw 11vh;max-width:820px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:700;color:#f4d9e4;margin:0 0 20px}.eyebrow.dark{color:#9f3b62}.hero h1,.section h2,.bar-copy h2,.visit h2{font-family:'Playfair Display',serif;font-size:clamp(58px,8.5vw,128px);line-height:.86;letter-spacing:-.045em;margin:0}.hero h1 em,.section h2 em,.bar-copy h2 em,.visit h2 em{font-weight:500;color:var(--pink2)}.hero-copy{max-width:600px;font-size:18px;color:#ddd4ca;margin:32px 0}.hero-actions,.visit-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-note{position:absolute;right:4vw;bottom:28px;z-index:2;font-size:10px;text-transform:uppercase;letter-spacing:.24em;writing-mode:vertical-rl;opacity:.55}.scroll-cue{position:absolute;right:7vw;bottom:32px;z-index:2;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}
.section{padding:120px 8vw}.intro{background:var(--paper);color:var(--dark);display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:center}.intro h2,.story h2{font-size:clamp(48px,6vw,84px)}.intro-copy>p:not(.eyebrow),.story-copy>p:not(.eyebrow){font-size:17px;color:#5f5851;max-width:560px;margin:28px 0}.text-link{font-weight:700;border-bottom:1px solid #222;padding-bottom:6px}.text-link span{margin-left:10px}.intro-image{position:relative;height:min(680px,70vw);border-radius:var(--radius);overflow:hidden}.floating-card{position:absolute;left:-42px;bottom:38px;background:#151310;color:#fff;padding:24px 30px;border-radius:16px;display:flex;align-items:center;gap:20px;box-shadow:0 20px 50px rgba(0,0,0,.18)}.card-number{font-family:'Playfair Display',serif;color:var(--pink2);font-size:42px;line-height:1}.floating-card span:last-child{font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.menu-section{background:#151310}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:64px}.section-head h2{font-size:clamp(52px,6vw,90px)}.section-head>p{max-width:380px;color:var(--muted)}.dish-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:18px}.dish-card{background:#211e1a;border:1px solid rgba(255,255,255,.08);border-radius:20px;overflow:hidden}.dish-photo{height:300px;overflow:hidden}.dish-photo.large{height:420px}.dish-card img{transition:.6s}.dish-card:hover img{transform:scale(1.04)}.dish-info{position:relative;padding:24px}.dish-tag{display:inline-block;color:var(--pink2);font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:700}.dish-info h3{font-family:'Playfair Display',serif;font-size:28px;margin:8px 0}.dish-info p{color:var(--muted);font-size:14px;max-width:90%}.price{position:absolute;right:22px;top:24px;font-weight:700}.menu-cta{margin-top:44px;padding-top:32px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.menu-cta p{font-family:'Playfair Display',serif;font-size:28px;margin:0}
.bar-section{min-height:760px;display:grid;grid-template-columns:1.05fr .95fr;background:#211e1a}.bar-photo{min-height:650px}.bar-copy{padding:10vw 8vw;display:flex;flex-direction:column;justify-content:center}.bar-copy h2{font-size:clamp(52px,6vw,88px)}.bar-copy>p:not(.eyebrow){color:var(--muted);font-size:17px;max-width:520px;margin:28px 0}.cocktail-tags{display:flex;gap:10px;flex-wrap:wrap}.cocktail-tags span{border:1px solid var(--line);border-radius:999px;padding:10px 14px;font-size:12px;color:#ddd}
.story{background:var(--paper);color:var(--dark);display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;overflow:hidden}.story-photo{height:620px;border-radius:var(--radius);overflow:hidden;position:relative}.story-photo img{width:100%;height:100%;object-fit:cover;object-position:center;filter:sepia(.16) saturate(.92) brightness(.98) contrast(.94);transform:scale(1.01)}.story-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(232,180,125,.12),rgba(207,91,132,.05));pointer-events:none}
.visit{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;background:#0d0c0b}.visit-card{padding:7vw;background:#181614;border-radius:var(--radius)}.visit h2{font-size:clamp(56px,7vw,96px)}.visit-details{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:26px;margin:48px 0}.visit-details span{display:block;text-transform:uppercase;letter-spacing:.14em;color:var(--pink2);font-size:10px;font-weight:700;margin-bottom:8px}.visit-details p{margin:0;color:#cfc7be;font-size:14px}.visit-image{border-radius:var(--radius);overflow:hidden;min-height:620px}.visit-image img{object-position:center 68%}
footer{padding:48px 8vw 110px;display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid var(--line)}.footer-brand{display:flex;align-items:baseline;gap:12px}.footer-brand strong{font-family:'Playfair Display',serif;font-style:italic;font-size:36px;color:var(--pink2)}.footer-brand span,footer p,.footer-links{font-size:12px;color:#9d958c}.footer-links{display:flex;gap:20px;justify-content:flex-end}footer p{grid-column:1/-1;margin:0}.mobile-bar{display:none}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}.reveal-delay{transition-delay:.12s}
@media(max-width:900px){.nav{height:70px}.desktop-nav{display:none}.nav>.btn{display:none}.brand-main{font-size:28px}.hero-content{padding:130px 24px 120px}.hero h1{font-size:clamp(58px,18vw,92px)}.hero-copy{font-size:16px}.hero-note,.scroll-cue{display:none}.section{padding:84px 24px}.intro,.story,.visit{grid-template-columns:1fr}.intro{gap:42px}.intro-image{height:68vh}.floating-card{left:16px;bottom:16px}.section-head{display:block}.section-head>p{margin-top:24px}.dish-grid{grid-template-columns:1fr}.dish-photo,.dish-photo.large{height:55vw;min-height:280px}.bar-section{grid-template-columns:1fr}.bar-photo{min-height:58vh}.bar-copy{padding:80px 24px}.story-photo{height:520px}.visit-card{padding:56px 24px}.visit-details{grid-template-columns:1fr;gap:24px}.visit-image{min-height:420px}footer{grid-template-columns:1fr;padding:44px 24px 96px}.footer-links{justify-content:flex-start;flex-wrap:wrap}.mobile-bar{position:fixed;z-index:60;display:grid;grid-template-columns:1fr 1.4fr 1fr;left:10px;right:10px;bottom:10px;background:rgba(24,22,20,.94);backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:18px;padding:7px}.mobile-bar a{display:grid;place-items:center;min-height:48px;font-size:12px;font-weight:700}.mobile-bar .mobile-main{background:var(--pink);border-radius:12px;color:#fff}.menu-cta{align-items:flex-start;gap:20px;flex-direction:column}}
@media(max-width:520px){.hero-actions .btn{width:100%}.intro-image{height:520px}.dish-photo,.dish-photo.large{height:360px}.menu-cta .btn{width:100%}.visit-actions .btn{width:100%}.story-photo{height:420px}}
.nav-actions{display:flex;align-items:center;gap:16px}.lang-switch{display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(18,17,15,.35);backdrop-filter:blur(10px)}.lang-switch button{appearance:none;border:0;background:transparent;color:#fff;opacity:.55;font:700 11px 'DM Sans',sans-serif;letter-spacing:.08em;cursor:pointer;padding:4px 3px}.lang-switch button.active{color:var(--pink2);opacity:1}.lang-switch span{font-size:10px;opacity:.3}@media(max-width:900px){.nav-actions{gap:8px}.nav-actions .nav-book{display:none}.lang-switch{padding:6px 8px;gap:4px}.lang-switch button{font-size:10px}}


/* Notre histoire — signature Aline et Pascal */
#story .story-signature{
  font-family:"Snell Roundhand","Segoe Script","Brush Script MT","Apple Chancery",cursive!important;
  font-size:clamp(30px,3.4vw,48px)!important;
  font-weight:400!important;
  line-height:1.05!important;
  letter-spacing:.01em!important;
  transform:rotate(-2deg);
  transform-origin:left center;
  margin-top:22px!important;
}
@media(max-width:640px){
  #story .story-signature{font-size:36px!important;}
}
