@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:wght@400;500;600&display=swap');:root{--cream:#f7f3ed;--ink:#25251f;--terra:#b96743;--sand:#d7c6ad}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}.nav{display:flex;align-items:center;justify-content:space-between;padding:22px 6vw;background:#fffdf9;gap:20px;flex-wrap:wrap}.brand{font-family:'Playfair Display',serif;letter-spacing:.16em;font-size:25px}.brand small{display:block;font:10px 'DM Sans';letter-spacing:.3em;text-align:center;margin-top:4px}.links{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.btn{display:inline-block;background:var(--terra);color:white;padding:15px 22px;font-size:11px;letter-spacing:.15em;text-transform:uppercase}.hero{min-height:590px;padding:100px 8vw 80px;color:white;background:linear-gradient(90deg,rgba(20,22,20,.74) 0%,rgba(20,22,20,.40) 40%,rgba(20,22,20,.04) 100%),url('/assets/riviera-hero.jpg') center 52%/cover no-repeat;display:flex;align-items:center}.hero-inner{max-width:650px}.eyebrow{text-transform:uppercase;letter-spacing:.25em;font-size:11px}.hero h1{font:clamp(56px,8vw,100px)/.98 'Playfair Display',serif;margin:20px 0}.hero p{font:22px/1.5 'Playfair Display',serif;max-width:540px}.section{padding:70px 8vw}.section h2{font:clamp(32px,4vw,52px) 'Playfair Display',serif;font-weight:400;margin:0 0 18px}.intro{max-width:760px;font-size:16px;line-height:1.8}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:32px}.tile{padding:0 0 24px;background:#fffdf9;border:1px solid #e8dfd3;min-height:250px;overflow:hidden}.tile img{display:block;width:100%;height:180px;object-fit:cover}.tile h3,.tile p{margin-left:24px;margin-right:24px}.tile h3{margin-top:20px}.tile h3{font:25px 'Playfair Display',serif;font-weight:400}.strip{background:#ebe2d6;padding:22px 8vw;display:flex;gap:24px;justify-content:space-between;flex-wrap:wrap;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.footer{padding:35px 8vw;background:#25251f;color:#f7f3ed;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer p{font-size:12px;line-height:1.8}.lang{font-size:11px;letter-spacing:.1em}.crumb{font-size:12px;color:#806d5b;margin-bottom:22px}.citylinks{display:flex;flex-wrap:wrap;gap:12px}.citylinks a{border:1px solid #d9cbb9;padding:10px 14px;font-size:12px}form{display:grid;gap:12px;max-width:600px}input,textarea,select{padding:14px;border:1px solid #d7c6ad;background:#fffdf9;font:14px 'DM Sans'}textarea{min-height:120px} @media(max-width:650px){.nav{padding:18px 5vw}.hero{padding:70px 7vw;min-height:500px}.section{padding:50px 7vw}.links{gap:12px}.hero p{font-size:19px}}
.hero h1{max-width:700px}.hero p{max-width:560px;text-shadow:0 1px 12px rgba(0,0,0,.22)}.section:nth-of-type(even){background:#f1e9df}.citylinks a:hover,.links a:hover{color:var(--terra)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.note{font-size:12px;line-height:1.7;color:#74695d}@media(max-width:650px){.contact-grid{grid-template-columns:1fr}.hero{background-position:58% center}}

/* Final responsive polish */
html{scroll-behavior:smooth;scroll-padding-top:20px}img{max-width:100%}.nav{position:relative;z-index:2}.brand{white-space:nowrap}.links a{padding:8px 0}.hero{background-position:center;background-size:cover;min-height:560px}.tile{transition:transform .25s ease,box-shadow .25s ease}.tile:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(49,36,25,.10)}.tile p{line-height:1.75}.citylinks a{border-radius:0;transition:background .2s,color .2s}.citylinks a:hover{background:#b96743;color:white}form label{font-size:12px;letter-spacing:.05em}input:focus,textarea:focus,select:focus{outline:2px solid #b96743;outline-offset:1px}button{border:0;cursor:pointer;font-family:inherit}.footer a{text-decoration:underline;text-underline-offset:3px}.hero .btn:hover,.btn:hover{background:#8f4e32}@media(max-width:760px){.nav{align-items:flex-start}.links{width:100%;order:3}.lang{margin-left:auto}.hero{min-height:490px;padding-top:64px;padding-bottom:58px;background-position:58% center}.hero h1{font-size:clamp(48px,13vw,76px)}.strip{gap:14px}.section{padding-top:48px;padding-bottom:48px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tile{transition:none}}

.legal-links{font-size:11px;opacity:.8}.legal-links a{text-decoration:underline;text-underline-offset:3px}


/* Chef Brun — floating WhatsApp contact button */
.whatsapp-float {
  position: fixed;
  left: max(20px, env(safe-area-inset-left));
  bottom: max(22px, env(safe-area-inset-bottom));
  z-index: 2147483000;
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 54px; padding: 0 19px; border: 1px solid rgba(255,255,255,.24);
  border-radius: 999px; background: #16845b; color: #fff !important;
  font: 600 14px/1.1 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-decoration: none !important; box-shadow: 0 8px 26px rgba(20,45,35,.24);
  transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease;
}
.whatsapp-float:hover { background: #116f4b; color: #fff !important; transform: translateY(-2px); box-shadow: 0 12px 30px rgba(20,45,35,.30); }
.whatsapp-float:focus-visible { outline: 3px solid #d6b18a; outline-offset: 4px; }
.whatsapp-float svg { display:block; width:25px; height:25px; flex:0 0 25px; }
@media (max-width:600px) {
 .whatsapp-float { left:max(14px,env(safe-area-inset-left)); bottom:max(16px,env(safe-area-inset-bottom)); min-height:50px; padding:0 15px; gap:8px; font-size:13px; }
 .whatsapp-float svg { width:23px; height:23px; flex-basis:23px; }
}
@media (prefers-reduced-motion: reduce) { .whatsapp-float { transition:none; } }

\n/* Brunch navigation highlight */\n.links a[href*="#brunch"]{display:inline-flex;align-items:center;gap:6px;background:var(--terra);color:#fff;padding:8px 12px;border-radius:2px;font-weight:600}\n.links a[href*="#brunch"]::before{content:"☕";font-size:14px}\n
/* Premium horizontal gallery carousel */
.gallery-carousel{margin-top:30px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;padding:4px 2px 18px;-webkit-overflow-scrolling:touch}.gallery-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,38%);gap:20px}.gallery-slide{margin:0;position:relative;min-width:0;scroll-snap-align:start;overflow:hidden;background:#fffdf9;border:1px solid #e8dfd3;box-shadow:0 12px 32px rgba(49,36,25,.08)}.gallery-slide img{display:block;width:100%;height:clamp(240px,34vw,420px);object-fit:cover;transition:transform .45s ease}.gallery-slide:hover img{transform:scale(1.035)}.gallery-slide figcaption{display:flex;flex-direction:column;gap:8px;padding:20px 22px 24px}.gallery-slide figcaption strong{font:24px 'Playfair Display',serif;font-weight:400;color:#342b24}.gallery-slide figcaption span{font-size:13px;line-height:1.7;color:#74695d}.gallery-hint{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#806d5b;margin-top:8px}.gallery-carousel::-webkit-scrollbar{height:7px}.gallery-carousel::-webkit-scrollbar-track{background:#e8dfd3}.gallery-carousel::-webkit-scrollbar-thumb{background:#b96743}@media(max-width:650px){.gallery-track{grid-auto-columns:84%;gap:14px}.gallery-slide img{height:300px}}@media(prefers-reduced-motion:reduce){.gallery-carousel{scroll-behavior:auto}.gallery-slide img{transition:none}}
