:root{--ink:#16130f;--paper:#f5f0e7;--cream:#fffaf2;--terracotta:#c65335;--olive:#68734b;--line:rgba(22,19,15,.16)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--paper);overflow-x:hidden}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.loader{position:fixed;inset:0;z-index:9999;background:var(--ink);color:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;transition:.7s}.loader.hidden{opacity:0;visibility:hidden}.loader-mark{width:90px;height:90px;border:1px solid rgba(255,255,255,.4);border-radius:50%;display:grid;place-items:center;font-family:"Playfair Display";font-size:32px}.loader p{letter-spacing:.25em;text-transform:uppercase;font-size:12px}.progress{position:fixed;top:0;left:0;height:3px;background:var(--terracotta);width:0;z-index:9998}.header{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:24px 5%;display:flex;align-items:center;justify-content:space-between;color:white;transition:.35s}.header.scrolled{background:rgba(22,19,15,.96);padding-top:17px;padding-bottom:17px;box-shadow:0 10px 40px rgba(0,0,0,.2)}.brand{display:flex;flex-direction:column;line-height:.9}.brand span{font-size:10px;letter-spacing:.5em}.brand strong{font-family:"Playfair Display";font-size:27px;letter-spacing:.08em}nav{display:flex;align-items:center;gap:28px}nav a{font-size:13px;font-weight:600}nav a:not(.nav-cta):after{content:"";display:block;width:0;height:1px;background:currentColor;transition:.25s;margin-top:4px}nav a:hover:after{width:100%}.nav-cta{border:1px solid rgba(255,255,255,.7);padding:11px 18px;border-radius:999px}.menu-toggle{display:none;background:none;border:0}.hero{min-height:100vh;color:white;position:relative;display:flex;align-items:center;padding:130px 8% 100px}.hero-media,.hero-overlay{position:absolute;inset:0}.hero-media{background:url('https://images.unsplash.com/photo-1516211697506-8360dbcfe9a4?auto=format&fit=crop&w=1900&q=90') center/cover}.hero-overlay{background:linear-gradient(90deg,rgba(16,12,9,.82),rgba(16,12,9,.2)),linear-gradient(0deg,rgba(16,12,9,.5),transparent 50%)}.hero-content{position:relative;z-index:2;max-width:800px}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.23em;font-size:12px;font-weight:700}.eyebrow{margin-bottom:24px}.hero h1{font-family:"Playfair Display";font-weight:500;font-size:clamp(58px,8vw,118px);line-height:.86;letter-spacing:-.035em}.hero h1 em{color:#e1a488;font-weight:500}.hero-text{max-width:610px;font-size:18px;line-height:1.75;margin:30px 0}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;padding:16px 25px;border:1px solid transparent;font-weight:700;cursor:pointer;font-family:inherit;transition:.25s}.btn:hover{transform:translateY(-3px)}.primary{background:var(--terracotta);color:white}.ghost{border-color:rgba(255,255,255,.55);color:white}.scroll-hint{position:absolute;z-index:3;bottom:34px;left:8%;display:flex;gap:14px;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:.18em}.hero-info{position:absolute;z-index:3;right:5%;bottom:30px;display:flex;gap:45px}.hero-info span,.hero-info strong{display:block}.hero-info span{font-size:11px;text-transform:uppercase;letter-spacing:.16em;opacity:.7;margin-bottom:5px}.hero-info strong{font-size:13px}.marquee{overflow:hidden;background:var(--terracotta);color:white;padding:17px 0;white-space:nowrap}.marquee div{font-weight:700;letter-spacing:.16em;animation:marquee 26s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:115px 7%}.concept{display:grid;grid-template-columns:1.05fr .95fr;gap:9%;align-items:center}.concept-image{height:690px;position:relative}.concept-image span{position:absolute;right:-25px;bottom:42px;background:var(--olive);color:white;padding:24px 18px;writing-mode:vertical-rl;letter-spacing:.17em;text-transform:uppercase;font-size:11px}.kicker{color:var(--terracotta);margin-bottom:20px}.concept-copy h2,.section-head h2,.brunch-card h2,.reservation-copy h2,.contact-card h2{font-family:"Playfair Display";font-weight:600;font-size:clamp(42px,5vw,74px);line-height:1.02}.concept-copy>p:not(.kicker){font-size:17px;line-height:1.8;color:#554f47;margin-top:22px}.signature{font-family:"Playfair Display";font-size:29px;font-style:italic;margin-top:34px}.signature span{display:block;font-family:"DM Sans";font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-style:normal;margin-top:5px}.menu{background:var(--ink);color:var(--cream)}.section-head{text-align:center;max-width:850px;margin:0 auto 55px}.menu .kicker{color:#e1a488}.menu-tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:45px}.menu-tabs button{background:transparent;color:#c9c1b6;border:1px solid rgba(255,255,255,.18);padding:12px 21px;font-family:inherit;cursor:pointer;border-radius:100px}.menu-tabs button.active{background:var(--terracotta);border-color:var(--terracotta);color:white}.menu-panels{max-width:1050px;margin:auto}.menu-panel{display:none;grid-template-columns:1fr 1fr;gap:0 65px}.menu-panel.active{display:grid}.menu-panel article{display:flex;justify-content:space-between;gap:18px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.14)}.menu-panel h3{font-family:"Playfair Display";font-size:23px;margin-bottom:7px}.menu-panel p{font-size:13px;color:#aaa296}.menu-panel strong{color:#e1a488;font-size:15px;white-space:nowrap}.menu-note{text-align:center;font-size:12px;color:#8c847a;margin-top:35px}.brunch{display:grid;grid-template-columns:1.25fr .75fr;min-height:740px;background:#e5d3bb}.brunch-photo{min-height:600px}.brunch-card{display:flex;flex-direction:column;justify-content:center;padding:75px}.brunch-card>p:not(.kicker){line-height:1.8;margin:25px 0;color:#554f47}.brunch-price{display:flex;align-items:center;gap:22px;margin-bottom:32px}.brunch-price strong{font-family:"Playfair Display";font-size:58px}.brunch-price span{font-size:12px;text-transform:uppercase;letter-spacing:.13em;line-height:1.6}.text-link{font-weight:700;display:inline-flex;gap:12px;align-items:center}.gallery{background:var(--cream)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:330px;gap:18px}.gallery-grid .wide{grid-column:span 2}.gallery figure{overflow:hidden}.gallery figure img{transition:.6s}.gallery figure:hover img{transform:scale(1.06)}.reviews{display:grid;grid-template-columns:.35fr .65fr;gap:8%;align-items:center;background:var(--olive);color:white}.review-score{display:flex;align-items:center;gap:25px}.review-score>span{font-family:"Playfair Display";font-size:100px}.review-score div{color:#f5ca71;letter-spacing:.15em}.review-score small{display:block;color:white;letter-spacing:.08em;margin-top:10px}.review-slider{position:relative;min-height:230px}.review{display:none}.review.active{display:block}.review p{font-family:"Playfair Display";font-size:clamp(28px,3.5vw,49px);line-height:1.25;margin-bottom:24px}.review strong{font-size:13px;text-transform:uppercase;letter-spacing:.15em}.review-dots{display:flex;gap:9px;margin-top:28px}.review-dots button{width:35px;height:3px;border:0;background:rgba(255,255,255,.35);cursor:pointer}.review-dots button.active{background:white}.reservation{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;background:var(--paper)}.reservation-copy>p:not(.kicker){line-height:1.8;margin:25px 0;color:#554f47}.reservation-copy ul{list-style:none;display:grid;gap:15px}.reservation-copy li{display:flex;gap:12px;align-items:center}.booking-form{background:white;padding:45px;box-shadow:0 30px 80px rgba(22,19,15,.1)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.field label{text-transform:uppercase;font-size:10px;letter-spacing:.15em;font-weight:700}.field input,.field select{width:100%;border:0;border-bottom:1px solid var(--line);padding:13px 0;background:transparent;font-family:inherit;outline:none}.booking-form .btn{width:100%;margin-top:8px}.form-feedback{text-align:center;margin-top:14px;font-size:13px;color:var(--olive);font-weight:700}.contact{display:grid;grid-template-columns:1.2fr .8fr;padding:0}.contact-map{height:680px;position:relative}.map-pin{position:absolute;inset:0;display:grid;place-items:center}.map-pin i{background:var(--terracotta);color:white;width:66px;height:66px;border-radius:50%;display:grid;place-items:center;font-size:25px;box-shadow:0 0 0 18px rgba(198,83,53,.2)}.contact-card{background:var(--terracotta);color:white;padding:90px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.contact-card .kicker{color:#ffd5c8}.contact-card address{font-style:normal;font-size:20px;line-height:1.7;margin:30px 0}.contact-card>a{margin-bottom:10px}.socials{display:flex;gap:12px;margin-top:25px}.socials a{width:42px;height:42px;border:1px solid rgba(255,255,255,.5);border-radius:50%;display:grid;place-items:center}footer{background:var(--ink);color:white;padding:55px 7%;display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:center;gap:30px}footer p{font-size:12px;color:#aaa296}footer>div{display:flex;gap:20px;font-size:13px}footer>span{font-size:11px;color:#8c847a}.back-top{position:fixed;right:22px;bottom:22px;width:48px;height:48px;border:0;border-radius:50%;background:var(--terracotta);color:white;display:none;cursor:pointer;z-index:800}.reveal{opacity:0;transform:translateY(35px);transition:.8s}.reveal.visible{opacity:1;transform:none}@media(max-width:950px){nav{position:fixed;top:0;right:-100%;width:min(340px,88vw);height:100vh;background:var(--ink);flex-direction:column;justify-content:center;transition:.35s}nav.open{right:0}.menu-toggle{display:block;z-index:2;width:40px;height:40px}.menu-toggle span{display:block;width:25px;height:1px;background:white;margin:7px auto}.hero-info{display:none}.concept,.reservation,.reviews{grid-template-columns:1fr}.concept-image{height:520px}.menu-panel{grid-template-columns:1fr}.brunch{grid-template-columns:1fr}.brunch-card{padding:65px 7%}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .wide{grid-column:span 2}.review-score{margin-bottom:40px}.contact{grid-template-columns:1fr}.contact-card{padding:70px 7%}footer{grid-template-columns:1fr 1fr}footer>div{justify-content:flex-end}}@media(max-width:620px){.section{padding:85px 6%}.header{padding-left:6%;padding-right:6%}.hero{padding-left:6%;padding-right:6%}.hero h1{font-size:58px}.hero-text{font-size:16px}.hero-actions .btn{width:100%}.scroll-hint{display:none}.concept-image{height:430px}.concept-image span{right:0}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:280px}.gallery-grid .wide{grid-column:auto}.brunch-photo{min-height:420px}.brunch-card{padding:55px 6%}.review-score>span{font-size:75px}.booking-form{padding:28px 20px}.form-row{grid-template-columns:1fr}.contact-map{height:450px}.contact-card{padding:60px 6%}footer{grid-template-columns:1fr;text-align:center}footer .brand{align-items:center}footer>div{justify-content:center}nav{gap:22px}}
