:root{--cream:#f8f1e8;--ink:#1c1713;--copper:#b87333;--choc:#3a2418;--latte:#d9b99b;--white:#fff;--dark:#121212;--line:rgba(58,36,24,.14);--shadow:0 28px 70px rgba(58,36,24,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,sans-serif;overflow-x:hidden}body.modal-open{overflow:hidden}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.header{position:fixed;z-index:50;top:0;left:0;right:0;height:78px;padding:0 clamp(20px,5vw,74px);display:flex;align-items:center;gap:38px;background:rgba(248,241,232,.82);backdrop-filter:blur(18px);border-bottom:1px solid transparent;transition:.3s}.header.scrolled{border-color:var(--line);box-shadow:0 10px 30px rgba(58,36,24,.06)}.logo{display:flex;align-items:center;gap:11px;font-weight:800;white-space:nowrap}.logo span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--choc);color:var(--cream);font-family:Playfair Display;font-size:20px}.nav{display:flex;justify-content:center;gap:28px;margin:auto;font-size:13px;font-weight:700}.nav a{position:relative}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--copper);transition:.3s}.nav a:hover:after{right:0}.header-button{padding:13px 19px;border-radius:999px;background:var(--ink);color:#fff;font-size:12px;font-weight:800}.menu-toggle,.mobile-nav{display:none}.section{padding:clamp(84px,10vw,150px) clamp(20px,5vw,74px)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Playfair Display,serif;letter-spacing:-.04em}h1{font-size:clamp(52px,6.2vw,96px);line-height:.96;margin-bottom:30px}h2{font-size:clamp(40px,5vw,70px);line-height:1.02;margin-bottom:24px}h3{font-size:22px}.eyebrow{font-size:11px;letter-spacing:.19em;text-transform:uppercase;font-weight:800;color:var(--copper)}.lead,.section-head>p:last-child{max-width:630px;color:#6f6259;font-size:17px;line-height:1.75}.section-head{max-width:850px;margin-bottom:55px}.hero{min-height:100vh;padding-top:130px;display:grid;grid-template-columns:1fr .92fr;gap:6vw;align-items:center;background:radial-gradient(circle at 75% 22%,rgba(184,115,51,.15),transparent 30%)}.hero h1 em{color:var(--copper);font-weight:500}.actions,.badges{display:flex;flex-wrap:wrap;gap:12px}.actions{margin:34px 0}.btn{display:inline-flex;min-height:54px;padding:0 25px;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--ink);font-size:13px;font-weight:800;cursor:pointer;transition:.3s}.btn:hover{transform:translateY(-2px)}.primary{background:var(--ink);color:#fff}.secondary{background:transparent}.badges span{padding:10px 13px;border:1px solid var(--line);border-radius:999px;font-size:11px}.hero-visual{position:relative;height:min(72vh,720px);min-height:540px;border-radius:48% 48% 24px 24px;overflow:visible}.hero-visual>img{height:100%;object-fit:cover;border-radius:inherit;box-shadow:var(--shadow)}.float-card{position:absolute;padding:16px 20px;border-radius:18px;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);box-shadow:0 18px 45px rgba(58,36,24,.16);display:flex;align-items:center;gap:12px}.float-card b{font-size:23px}.float-card span{font-size:11px;color:#65584f}.rating{left:-42px;bottom:12%}.open{right:-22px;top:12%}.open i{width:9px;height:9px;border-radius:50%;background:#4f9e69;box-shadow:0 0 0 5px rgba(79,158,105,.15)}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.story-text{font-size:21px;line-height:1.7;color:#574b43}.story-points{display:grid}.story-points span{padding:22px 0;border-bottom:1px solid var(--line);color:var(--copper);font-size:12px}.story-points b{margin-left:22px;color:var(--ink);font-size:16px}.stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:75px;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:rgba(255,255,255,.45)}.stats article{padding:35px;border-right:1px solid var(--line)}.stats article:last-child{border:0}.stats b{display:block;font:600 42px Playfair Display}.stats span{color:#77695f;font-size:12px}.dark{background:var(--dark);color:#fff}.dark .eyebrow{color:#d79555}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.12)}.benefit-grid article{min-height:290px;padding:32px;border-right:1px solid rgba(255,255,255,.12);transition:.4s}.benefit-grid article:hover{background:linear-gradient(145deg,rgba(184,115,51,.28),transparent);transform:translateY(-8px)}.benefit-grid span{color:#d79555;font-size:11px}.benefit-grid h3{margin-top:80px}.benefit-grid p{color:#aaa09a;line-height:1.6}.filters{display:flex;gap:8px;overflow:auto;margin-bottom:34px;padding-bottom:6px}.filters button{white-space:nowrap;border:1px solid var(--line);background:transparent;padding:12px 17px;border-radius:999px;cursor:pointer}.filters button.active{background:var(--choc);color:#fff}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.menu-card{border-radius:24px;background:#fff;overflow:hidden;border:1px solid var(--line);transition:.35s}.menu-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.menu-card.hidden{display:none}.menu-image{height:220px;background-size:300% auto;background-repeat:no-repeat}.pos-0{background-position:left center}.pos-1{background-position:center center}.pos-2{background-position:right center}.menu-body{padding:22px}.menu-body small{color:var(--copper);font-weight:800;text-transform:uppercase}.menu-body h3{margin:9px 0}.menu-body p{min-height:48px;color:#766a62;font-size:13px;line-height:1.55}.menu-bottom{display:flex;align-items:center;justify-content:space-between}.menu-bottom b{font-size:19px}.add-button{width:42px;height:42px;border:0;border-radius:50%;background:var(--ink);color:#fff;cursor:pointer;font-size:20px;transition:.25s}.add-button:hover{background:var(--copper);transform:rotate(8deg)}.gallery{background:#ede0d2}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:250px;gap:14px}.gallery figure{position:relative;margin:0;border-radius:22px;overflow:hidden}.gallery .g-wide{grid-column:span 2}.gallery .g-tall{grid-row:span 2}.gallery img{height:100%;object-fit:cover;transition:.7s}.gallery figure:hover img{transform:scale(1.05)}.gallery figcaption{position:absolute;inset:auto 0 0;padding:50px 22px 20px;color:#fff;font-weight:800;background:linear-gradient(transparent,rgba(0,0,0,.66))}.crop-left img{object-position:left}.crop-right img{object-position:right}.signature{background:#151210;color:#fff;overflow:hidden}.signature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.drink{padding:14px 14px 28px;border:1px solid rgba(255,255,255,.13);border-radius:26px;background:rgba(255,255,255,.035);transition:.4s}.drink:hover{transform:translateY(-8px);box-shadow:0 0 55px rgba(184,115,51,.2)}.drink div{height:350px;border-radius:17px;background-image:url('assets/images/signature.jpg');background-size:300% auto;background-repeat:no-repeat}.d1 div{background-position:left center}.d2 div{background-position:center}.d3 div{background-position:right center}.drink span{display:block;margin:22px 0 8px;color:#d79555;font-size:11px}.drink h3{margin-bottom:8px}.drink p{color:#aaa09a;font-size:13px}.booking{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:start}.booking-copy{position:sticky;top:120px}.booking-copy p{color:#766a62;line-height:1.7}.booking-copy a{display:inline-block;margin-top:25px;color:var(--copper);font-weight:800}.booking-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:36px;border-radius:28px;background:#fff;box-shadow:var(--shadow)}label{display:grid;gap:8px;font-size:11px;font-weight:800;text-transform:uppercase}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:13px;background:#fbf8f4;padding:16px;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--copper);box-shadow:0 0 0 3px rgba(184,115,51,.12)}textarea{min-height:100px;resize:vertical}.full{grid-column:1/-1}.reviews{display:grid;grid-template-columns:.45fr 1.55fr;gap:45px;background:#fff}.review-score b{font:600 clamp(70px,10vw,140px) Playfair Display;color:var(--copper)}.review-score span{font-weight:800}.review-list{display:grid;grid-template-columns:1fr 1fr;gap:15px}.review-list article{padding:25px;border:1px solid var(--line);border-radius:20px}.review-list span{color:var(--copper);letter-spacing:.12em}.review-list p{line-height:1.65;color:#5f534b}.contacts{display:grid;grid-template-columns:1fr 1.15fr;gap:7vw}.contact-copy dl div{display:grid;grid-template-columns:120px 1fr;padding:18px 0;border-bottom:1px solid var(--line)}dt{color:#887a70;font-size:12px}dd{margin:0;font-weight:800}.map{position:relative;min-height:520px;border-radius:30px;overflow:hidden;background:linear-gradient(135deg,#e8dccd,#c9ae93)}.map:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 48%,rgba(255,255,255,.7) 49% 51%,transparent 52%),linear-gradient(25deg,transparent 45%,rgba(255,255,255,.55) 46% 49%,transparent 50%)}.map-pin{position:absolute;z-index:2;top:44%;left:48%;transform:translate(-50%,-50%);padding:18px;border-radius:16px;background:#fff;box-shadow:var(--shadow);display:grid;justify-items:center}.map-pin span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--copper);color:#fff}.map-pin small{color:#786c64}.project{text-align:center;background:linear-gradient(135deg,#fff,#efe0d1)}.project>p{max-width:720px;margin:0 auto 25px;line-height:1.7}.project div{display:flex;justify-content:center;flex-wrap:wrap;gap:9px}.project div span{padding:10px 14px;border:1px solid var(--line);border-radius:999px;font-size:12px}footer{padding:55px clamp(20px,5vw,74px);display:grid;grid-template-columns:1fr 1fr;gap:25px;background:var(--choc);color:#fff}footer p,footer small{color:#cbbdb4}footer nav{display:flex;gap:22px;justify-content:flex-end}footer small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:22px}.cart-fab{position:fixed;z-index:45;right:24px;bottom:22px;border:0;border-radius:999px;background:var(--copper);color:#fff;padding:10px 18px 10px 10px;display:flex;align-items:center;gap:10px;box-shadow:0 16px 40px rgba(58,36,24,.25);cursor:pointer}.cart-fab span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff;color:var(--ink);font-weight:800}.modal{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:20px;background:rgba(18,18,18,.65);backdrop-filter:blur(10px);opacity:0;visibility:hidden;transition:.3s}.modal.open{opacity:1;visibility:visible}.modal-card{position:relative;width:min(540px,100%);max-height:85vh;overflow:auto;padding:34px;border-radius:28px;background:var(--cream)}.modal-close{position:absolute;right:18px;top:15px;border:0;background:none;font-size:28px;cursor:pointer}.cart-line{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);font-size:13px}.cart-total{display:flex;justify-content:space-between;padding:22px 0;font-size:19px}.modal-card .btn{width:100%}.toast{position:fixed;z-index:100;left:50%;bottom:28px;transform:translate(-50%,30px);padding:14px 20px;border-radius:999px;background:var(--ink);color:#fff;opacity:0;pointer-events:none;transition:.3s}.toast.show{opacity:1;transform:translate(-50%,0)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){.nav,.header-button{display:none}.menu-toggle{display:grid;margin-left:auto;gap:6px;border:0;background:none}.menu-toggle i{display:block;width:25px;height:2px;background:var(--ink)}.mobile-nav{display:grid;position:fixed;z-index:49;inset:78px 0 auto;padding:30px;background:var(--cream);transform:translateY(-140%);transition:.35s;border-bottom:1px solid var(--line);gap:18px}.mobile-nav.open{transform:none}.hero{grid-template-columns:1fr;padding-top:130px}.hero-visual{height:600px}.story-grid,.booking,.contacts{grid-template-columns:1fr}.booking-copy{position:static}.benefit-grid{grid-template-columns:1fr 1fr}.menu-grid{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}.signature-grid{overflow:auto;grid-template-columns:repeat(3,300px);padding-bottom:12px}.reviews{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery .g-wide{grid-column:span 2}}
@media(max-width:620px){.section{padding:76px 15px}.header{height:68px;padding:0 15px}.mobile-nav{inset:68px 0 auto}.hero{padding-top:105px}.hero-visual{height:500px;min-height:0}.float-card{padding:12px}.rating{left:8px}.open{right:8px}.badges{display:grid}.story-grid{gap:35px}.stats,.benefit-grid,.menu-grid,.review-list{grid-template-columns:1fr}.stats article{border-right:0;border-bottom:1px solid var(--line)}.benefit-grid article{min-height:230px;border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.benefit-grid h3{margin-top:55px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:260px}.gallery .g-wide{grid-column:auto}.gallery .g-tall{grid-row:auto}.booking-form{grid-template-columns:1fr;padding:22px}.booking-form>*{grid-column:1}.contact-copy dl div{grid-template-columns:1fr;gap:7px}.map{min-height:390px}.actions .btn{width:100%}footer{grid-template-columns:1fr}footer nav{justify-content:flex-start;flex-wrap:wrap}.cart-fab b{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

.menu-image{height:400px;background-color:#eee4d8;background-size:cover;background-position:center;background-repeat:no-repeat}

.nutrition{display:flex;gap:8px;margin:14px 0 20px}.nutrition span{padding:7px 10px;border-radius:999px;background:#f3ebe2;color:#6f6259;font-size:11px;font-weight:700}

@media(max-width:620px){.menu-image{height:300px}}
