@font-face{font-family:"DM Sans";src:url("/assets/fonts/dm-sans-latin.woff2") format("woff2");font-style:normal;font-weight:400 700;font-display:swap}
@font-face{font-family:"Playfair Display";src:url("/assets/fonts/playfair-latin.woff2") format("woff2");font-style:normal;font-weight:400 600;font-display:swap}
@font-face{font-family:"Playfair Display";src:url("/assets/fonts/playfair-italic-latin.woff2") format("woff2");font-style:italic;font-weight:400 500;font-display:swap}
:root{--ink:#201812;--espresso:#160f0c;--red:#aa1519;--red-bright:#d03d2f;--cream:#f5f0e7;--paper:#fffaf2;--muted:#776d61;--line:#d9cfc0;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
body.nav-open{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{cursor:pointer}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;left:16px;top:-80px;z-index:999;background:#fff;padding:12px 20px}
.skip-link:focus{top:16px}
:focus-visible{outline:3px solid #ef8a44;outline-offset:4px}
.site-header{position:absolute;z-index:50;top:0;left:0;right:0;padding:22px clamp(18px,4.5vw,76px);color:#fff}
.nav-shell{display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:1600px;margin:auto;min-height:74px}
.brand{position:relative;display:flex;align-items:center;justify-content:center;width:184px;min-width:184px;height:70px;border-radius:8px;background:rgba(255,250,242,.92);box-shadow:0 14px 50px rgba(0,0,0,.15)}
.brand img{width:154px;height:auto;mix-blend-mode:multiply}
.site-nav{display:flex;align-items:center;gap:clamp(18px,2.2vw,34px)}
.site-nav a{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;position:relative}
.site-nav a:not(.nav-order)::after{content:"";position:absolute;bottom:-8px;left:0;width:0;height:1px;background:currentColor;transition:width .3s}
.site-nav a:not(.nav-order):hover::after,.site-nav a[aria-current="page"]:not(.nav-order)::after{width:100%}
.site-nav .nav-order{padding:17px 23px;border:1px solid rgba(255,255,255,.65);border-radius:3px;transition:background .25s,color .25s}
.site-nav .nav-order:hover{background:#fff;color:var(--ink)}
.nav-toggle{display:none}
.hero{position:relative;min-height:770px;height:min(860px,100svh);background:#281915 url("/assets/story-responsive/DSC08859-1-1500.webp") center/cover;overflow:hidden;color:#fff}
.hero-video-wrap,.hero-video-wrap iframe,.hero-shade{position:absolute;inset:0}
.hero-video-wrap{overflow:hidden;opacity:.74}
.hero-video-wrap iframe{border:0;pointer-events:none;width:100%;height:100%;min-width:177.78vh;min-height:56.25vw;left:50%;top:50%;transform:translate(-50%,-50%) scale(1.04);opacity:0;transition:opacity .6s}
.hero-video-wrap iframe.is-playing{opacity:1}
.hero-shade{background:linear-gradient(90deg,rgba(12,8,7,.88) 0%,rgba(12,8,7,.64) 43%,rgba(12,8,7,.26) 100%),linear-gradient(0deg,rgba(12,8,7,.52),transparent 35%)}
.hero-content{position:relative;z-index:2;max-width:1600px;height:100%;margin:auto;padding:clamp(190px,22vh,260px) clamp(25px,7vw,115px) 130px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.eyebrow{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.23em;line-height:1.5;text-transform:uppercase;color:var(--red);white-space:normal}
.eyebrow.light{color:#f6c9a2}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:var(--serif);font-weight:400}
h1 em,h2 em,h3 em{font-weight:400}
.hero h1{max-width:980px;font-size:clamp(64px,7.7vw,128px);line-height:1.08;letter-spacing:-.065em;margin:28px 0 22px}
.hero h1 em{color:#f3c49b}
.hero p{font-size:clamp(16px,1.35vw,19px);line-height:1.8;max-width:540px;color:#f6ece2}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:55px;padding:0 24px;border:1px solid transparent;border-radius:2px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;transition:transform .25s,background .25s,color .25s,border-color .25s}
.button:hover{transform:translateY(-3px)}
.button-light{background:var(--paper);color:var(--ink)}
.button-light:hover{background:#f0d7c0}
.button-ghost{border-color:rgba(255,255,255,.6);color:#fff;background:rgba(255,255,255,.08);backdrop-filter:blur(12px)}
.button-ghost:hover{background:rgba(255,255,255,.2)}
.button-dark{background:var(--espresso);color:#fff}
.button-dark:hover{background:var(--red)}
.button-outline{border-color:var(--ink);color:var(--ink)}
.button-outline:hover{background:var(--ink);color:#fff}
.scroll-cue,.film-link{position:absolute;z-index:2;bottom:32px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.scroll-cue{left:clamp(25px,7vw,115px)}
.scroll-cue span{margin-left:18px;font-size:18px;vertical-align:-3px}
.film-link{right:clamp(25px,7vw,115px);border-bottom:1px solid rgba(255,255,255,.7);padding-bottom:6px}
.motion-toggle{position:absolute;right:clamp(25px,7vw,115px);bottom:76px;z-index:3;background:rgba(20,12,8,.5);color:#fff;border:1px solid rgba(255,255,255,.6);padding:10px 14px;min-height:44px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.motion-paused .hero-video-wrap{visibility:hidden}
.motion-paused .ticker span,.motion-paused .reveal{animation-play-state:paused!important}
.ticker{height:52px;background:var(--red);color:#fff;display:flex;align-items:center;overflow:hidden}
.ticker span{white-space:nowrap;font-size:10px;letter-spacing:.24em;text-transform:uppercase;font-weight:700}
.js .ticker span{animation:ticker 25s linear infinite}
@keyframes ticker{to{transform:translateX(-30%)}}
.section-wrap{max-width:1600px;margin:auto;padding-left:clamp(25px,6vw,96px);padding-right:clamp(25px,6vw,96px)}
.welcome{padding-top:clamp(90px,11vw,170px);padding-bottom:clamp(100px,12vw,190px);display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(45px,7vw,120px);align-items:center}
.welcome-copy{max-width:550px}
.welcome h2,.section-heading h2,.visit-teaser h2,.story-intro h2,.visit-details h2,.visit-social h2{font-size:clamp(47px,5vw,82px);line-height:1.12;letter-spacing:-.06em;margin:22px 0 28px}
.welcome h2 em,.section-heading h2 em,.visit-teaser h2 em,.story-intro h2 em,.visit-details h2 em,.visit-social h2 em{color:var(--red)}
.welcome-copy p,.visit-teaser-copy p,.story-intro-text p{color:#5e5449;font-size:16px;line-height:1.95;max-width:525px}
.text-link{display:inline-flex;align-items:center;gap:24px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:6px 0 10px;border-bottom:1px solid var(--red);transition:gap .25s,color .25s}
.text-link:hover{gap:32px;color:var(--red)}
.welcome-copy .text-link{margin-top:24px}
.welcome-art{position:relative;height:620px}
.welcome-frame{position:absolute;overflow:hidden}
.welcome-frame img,.visit-teaser-image img,.experience-photo img,.page-hero-photo img,.story-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.welcome-frame:hover img,.visit-teaser-image:hover img,.story-gallery figure:hover img{transform:scale(1.04)}
.main-frame{top:0;right:0;width:78%;height:86%;border-radius:260px 260px 8px 8px}
.main-frame img{object-position:center}
.inset-frame{left:0;bottom:0;width:44%;height:41%;border:10px solid var(--cream);border-radius:200px 200px 6px 6px}
.seal{position:absolute;right:-3%;bottom:3%;width:125px;height:125px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--red);color:#fff;font-family:var(--serif);font-style:italic;font-size:19px;line-height:1.15;transform:rotate(10deg);box-shadow:0 20px 40px rgba(46,14,14,.15)}
.featured{padding-top:10px;padding-bottom:clamp(100px,11vw,175px)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}
.section-heading h2{margin-bottom:0}
.section-heading .text-link{margin-bottom:12px;white-space:nowrap}
.featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.menu-card{background:var(--paper);border:1px solid #e4dcd0;border-radius:3px;overflow:hidden;transition:transform .35s,box-shadow .35s}
.menu-card:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(38,24,14,.11)}
.card-image{position:relative;aspect-ratio:1.2;overflow:hidden;background:#ddd2c0}
.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.menu-card:hover .card-image img{transform:scale(1.06)}
.card-image-glow{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(40,22,12,.08),transparent 50%)}
.card-body{padding:24px 22px 25px;min-height:142px}
.card-title-row{display:flex;justify-content:space-between;gap:14px;align-items:baseline}
.card-body h3{font-size:22px;line-height:1.25;letter-spacing:-.03em;margin:0}
.card-price{color:var(--red);font-size:13px;font-weight:700;white-space:nowrap}
.card-body p{font-size:12px;line-height:1.6;color:#6f6359;margin:14px 0 0}
.card-note{display:block;margin-top:12px;font-size:11px;color:#897c70}
.unavailable .card-image{filter:saturate(.75)}
.unavailable .card-price{font-size:11px}
.experience{display:grid;grid-template-columns:1fr 1fr;min-height:620px;background:var(--red)}
.experience-photo{overflow:hidden}
.experience-photo img{object-position:center}
.experience-copy{padding:clamp(70px,9vw,145px) clamp(42px,7vw,120px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:radial-gradient(circle at 80% 15%,rgba(255,255,255,.09),transparent 35%),var(--red);color:#fff;position:relative}
.experience-copy::after{content:"";position:absolute;right:7%;bottom:5%;width:200px;height:200px;border:1px solid rgba(255,255,255,.14);border-radius:50%;pointer-events:none}
.experience-copy h2,.story-closer h2{font-size:clamp(50px,5.4vw,92px);line-height:1.12;letter-spacing:-.06em;margin:20px 0 24px}
.experience-copy h2 em{color:#f4cda7}
.experience-copy p{max-width:460px;line-height:1.9;color:#ffe8db;margin-bottom:30px}
.app-promo{margin:clamp(25px,4vw,65px) clamp(25px,6vw,96px) 0;background:#231711;color:#fff;display:grid;grid-template-columns:1fr .85fr;min-height:440px;overflow:hidden;position:relative}
.app-promo::before{content:"";position:absolute;width:420px;height:420px;left:-150px;bottom:-300px;border:1px solid rgba(255,255,255,.12);border-radius:50%;pointer-events:none}
.app-promo-copy{padding:clamp(65px,7vw,110px);display:flex;align-items:flex-start;flex-direction:column;justify-content:center;position:relative;z-index:1}
.app-promo h2{font-size:clamp(48px,5vw,80px);line-height:1.1;letter-spacing:-.06em;margin:18px 0}
.app-promo h2 em{color:#efb994}
.app-promo p{color:#dacbc0;line-height:1.7}
.app-promo .button{margin-top:17px}
.app-promo-photo{min-height:440px;overflow:hidden;clip-path:ellipse(100% 90% at 100% 50%)}
.app-promo-photo img{width:100%;height:100%;object-fit:cover}
.visit-teaser{padding-top:clamp(105px,11vw,170px);padding-bottom:clamp(105px,11vw,170px);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(60px,9vw,150px)}
.visit-teaser .button{margin-top:22px}
.visit-teaser-image{height:490px;border-radius:260px 260px 6px 6px;overflow:hidden}
.site-footer{background:var(--espresso);color:#f6f0e8;padding:clamp(70px,7vw,110px) clamp(25px,6vw,96px) 26px}
.footer-top,.footer-bottom{max-width:1408px;margin:auto}
.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.footer-intro h2{font-size:clamp(49px,5vw,80px);line-height:1.13;letter-spacing:-.06em;margin:21px 0 0}
.footer-intro h2 em{color:#eab897}
.footer-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 25px;padding-top:15px}
.footer-info div{display:flex;flex-direction:column;align-items:flex-start}
.footer-label{color:#e8aa82;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px}
.footer-info a{font-family:var(--serif);font-size:18px;line-height:1.5;margin-bottom:5px;transition:color .2s}
.footer-info a:hover{color:#e8aa82}
.footer-bottom{border-top:1px solid rgba(255,255,255,.2);margin-top:90px;padding-top:25px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#ab9f94}
.footer-bottom a{color:#f6f0e8}
.page-hero{min-height:540px;height:65vh;max-height:700px;position:relative;background:var(--espresso);color:#fff;display:flex;align-items:end;overflow:hidden}
.page-hero-photo,.page-hero-photo::after{position:absolute;inset:0}
.page-hero-photo::after{content:"";background:linear-gradient(90deg,rgba(15,8,5,.82),rgba(15,8,5,.25)),linear-gradient(0deg,rgba(15,8,5,.45),transparent 50%)}
.page-hero-photo img{object-position:center}
.page-hero-content{position:relative;z-index:1;width:min(100%,1600px);margin:0 auto;padding:185px clamp(25px,6vw,96px) clamp(70px,7vw,110px)}
.page-hero h1{font-size:clamp(70px,8vw,132px);line-height:1.04;letter-spacing:-.065em;margin:18px 0 0}
.page-hero h1 em{color:#e7b38d}
.page-hero p{font-size:16px;color:#f0e8e1;margin:22px 0 0}
.menu-toolbar{position:sticky;top:0;z-index:30;background:rgba(251,247,240,.95);backdrop-filter:blur(22px);border-bottom:1px solid var(--line)}
.menu-toolbar-inner{max-width:1600px;margin:auto;padding:0 clamp(25px,6vw,96px);display:flex;align-items:center;gap:32px;justify-content:space-between;min-height:82px}
.menu-tabs{display:flex;gap:24px;overflow-x:auto;scrollbar-width:none;white-space:nowrap}
.menu-tabs::-webkit-scrollbar{display:none}
.menu-tabs a{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;padding:28px 0;color:#776a5e;border-bottom:2px solid transparent}
.menu-tabs a:hover,.menu-tabs a.active{color:var(--red);border-bottom-color:var(--red)}
.menu-search-label{flex:0 0 210px}
.menu-search-label input{width:100%;padding:11px 12px;border:0;border-bottom:1px solid #bcb0a3;background:transparent;color:var(--ink);border-radius:0;outline-offset:3px;font-size:12px}
.menu-content{padding-top:55px;padding-bottom:100px}
.menu-intro{max-width:900px;color:#766b60;font-size:13px;line-height:1.7;margin-bottom:60px}
.search-empty{padding:25px;background:#fff4e7}
.menu-section{margin-bottom:90px;scroll-margin-top:100px}
.menu-section-heading{display:flex;align-items:end;gap:18px;margin-bottom:26px;border-bottom:1px solid var(--line);padding-bottom:22px}
.menu-section-heading .eyebrow{margin-bottom:6px}
.menu-section-heading h2{font-size:clamp(38px,4vw,64px);line-height:1.1;letter-spacing:-.05em;margin:0 auto 0 0}
.menu-section-heading span:last-child{color:#8b7e72;font-size:11px;white-space:nowrap}
.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.menu-grid .card-image{aspect-ratio:1.45}
.menu-grid .card-body{min-height:135px}
.menu-order-banner{background:var(--red);color:#fff;padding:60px max(clamp(25px,6vw,96px),calc((100vw - 1408px)/2));display:flex;align-items:center;justify-content:space-between;gap:30px}
.menu-order-banner h2{font-size:clamp(40px,4vw,65px);letter-spacing:-.05em;margin:13px 0 0}
.story-intro{padding-top:120px;padding-bottom:90px;display:grid;grid-template-columns:1fr 1fr;gap:100px}
.story-intro h2{margin-bottom:0}
.story-intro-text{padding-top:20px}
.story-intro-text p{max-width:630px}
.story-gallery{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:16px;padding-bottom:120px}
.story-gallery figure{margin:0;overflow:hidden;height:430px}
.story-gallery figure:nth-child(2){height:510px;margin-top:-40px}
.story-closer{padding:110px 25px;text-align:center;background:var(--red);color:#fff}
.story-closer h2 em{color:#f2c49f}
.story-closer .button{margin-top:12px}
.catering-content{padding-top:110px;padding-bottom:130px}
.catering-content .section-heading p{max-width:430px;color:#5d5349;line-height:1.8}
.catering-packages{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:65px}
.package-card{background:var(--paper);border:1px solid var(--line);padding:clamp(35px,5vw,70px);position:relative;overflow:hidden}
.package-card::after{content:"";position:absolute;width:260px;height:260px;border:1px solid #ead4cf;border-radius:50%;right:-120px;top:-110px;pointer-events:none}
.package-number{color:var(--red);font-size:12px;letter-spacing:.2em;font-weight:700}
.package-card h3{font-size:clamp(40px,4vw,65px);margin:30px 0 8px;letter-spacing:-.05em}
.package-price{font-family:var(--serif);color:var(--red);font-size:29px}
.package-card p{color:#60554a;margin:32px 0 42px;text-transform:capitalize}
.catering-note{margin-top:40px;padding:24px 30px;border-left:3px solid var(--red);background:#efe7da}
.catering-note p{margin:0;line-height:1.7;color:#574d43}
.catering-note a{text-decoration:underline;text-underline-offset:3px}
.visit-content{padding-top:115px;padding-bottom:115px;display:grid;grid-template-columns:.75fr 1.25fr;gap:60px}
.visit-details h2{margin-bottom:50px}
.detail-block{display:flex;flex-direction:column;gap:10px;margin:0 0 28px}
.detail-block span{font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:var(--red);font-weight:700}
.detail-block a{font-family:var(--serif);font-size:22px;line-height:1.45}
.detail-block a:hover{color:var(--red)}
.visit-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:45px}
.visit-map{min-height:550px;background:#e5dacf}
.visit-map iframe{width:100%;height:100%;border:0}
.visit-social{padding-bottom:110px;display:flex;align-items:end;justify-content:space-between;gap:30px}
.visit-social h2{margin-bottom:0}
.visit-social-links{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.not-found{min-height:70vh;padding:180px 8vw 100px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.not-found h1{font-size:clamp(55px,7vw,100px);line-height:1.1;letter-spacing:-.06em;margin:22px 0}
.not-found h1 em{color:var(--red)}
.not-found p{color:#665b51}
.not-found .button{margin-top:20px}
.reveal{opacity:1;transform:none}
.js .reveal.is-visible{animation:reveal-rise .75s ease both}
@keyframes reveal-rise{from{opacity:.45;transform:translateY(24px)}to{opacity:1;transform:none}}
@media(max-width:1180px){
  .site-nav{gap:16px}.site-nav a{font-size:10px}.site-nav .nav-order{padding:14px 16px}
  .brand{width:150px;min-width:150px;height:61px}.brand img{width:128px}
  .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .welcome-art{height:520px}
  .menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){
  .site-header{padding:15px 20px}.nav-shell{min-height:62px}
  .brand{width:142px;min-width:142px;height:56px}.brand img{width:120px}
  .nav-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:52px;height:52px;border:1px solid rgba(255,255,255,.7);border-radius:2px;background:rgba(20,12,8,.25);backdrop-filter:blur(12px);z-index:2}
  .nav-toggle span{width:21px;height:1px;background:#fff;transition:transform .25s}
  .nav-open .nav-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}
  .nav-open .nav-toggle span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .site-nav{position:fixed;inset:0;min-height:100svh;padding:120px 30px 45px;background:rgba(23,14,10,.98);display:flex;align-items:flex-start;flex-direction:column;gap:26px;transform:translateX(100%);visibility:hidden;transition:transform .35s,visibility .35s;overflow:auto}
  .nav-open .site-nav{transform:translateX(0);visibility:visible}
  .site-nav a{font-family:var(--serif);font-size:32px;letter-spacing:-.03em;text-transform:none;font-weight:400}
  .site-nav .nav-order{font-family:var(--sans);font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin-top:12px;padding:18px 24px}
  .hero{height:780px;min-height:690px;max-height:100svh}
  .hero-video-wrap iframe{min-width:177.78vh;min-height:100%;left:50%}
  .hero-content{padding:180px 25px 130px}
  .hero h1{font-size:clamp(58px,10vw,88px)}
  .film-link{right:25px;bottom:31px;font-size:0}
  .film-link::after{content:"Play film ↗";font-size:10px}
  .welcome{grid-template-columns:1fr;padding-top:90px;padding-bottom:110px;gap:55px}
  .welcome-art{height:500px;max-width:630px;width:100%;margin:auto}
  .experience{grid-template-columns:1fr}
  .experience-photo{height:390px}
  .experience-copy{min-height:450px}
  .app-promo{grid-template-columns:1fr .75fr}
  .app-promo-copy{padding:60px 45px}
  .visit-teaser{grid-template-columns:1fr;gap:45px}
  .visit-teaser-image{height:430px;max-width:600px}
  .footer-top{grid-template-columns:1fr;gap:45px}
  .story-intro{grid-template-columns:1fr;gap:20px;padding-top:85px}
  .story-intro-text{padding:0}
  .story-gallery figure,.story-gallery figure:nth-child(2){height:310px;margin:0}
  .menu-toolbar-inner{display:block;padding-top:12px}
  .menu-tabs{gap:23px}
  .menu-tabs a{padding:12px 0}
  .menu-search-label{display:block;margin:0 0 12px}
  .menu-search-label input{max-width:100%}
  .visit-content{grid-template-columns:1fr}
  .visit-map{height:460px;min-height:460px}
}
@media(max-width:600px){
  .hero{height:100svh;min-height:660px;max-height:900px}
  .hero-shade{background:linear-gradient(0deg,rgba(12,8,7,.83),rgba(12,8,7,.36) 75%),linear-gradient(90deg,rgba(12,8,7,.35),transparent)}
  .hero-content{justify-content:flex-end;padding-bottom:133px}
  .hero h1{font-size:clamp(52px,13vw,74px);margin:18px 0}
  .hero p{font-size:14px;line-height:1.7}
  .hero-actions{width:100%;gap:9px;margin-top:14px}
  .hero-actions .button{min-height:51px;padding:0 16px;font-size:10px}
  .scroll-cue{bottom:28px;left:25px}
  .ticker{height:44px}
  .welcome h2,.section-heading h2,.visit-teaser h2,.story-intro h2,.visit-details h2,.visit-social h2{font-size:clamp(45px,11vw,66px)}
  .welcome-art{height:390px}
  .seal{width:90px;height:90px;font-size:14px;right:-2%}
  .inset-frame{border-width:6px}
  .featured{padding-bottom:90px}
  .section-heading{align-items:start;flex-direction:column;gap:18px}
  .featured-grid,.menu-grid{grid-template-columns:1fr;gap:18px}
  .featured-grid .card-image{aspect-ratio:1.5}
  .experience-photo{height:330px}
  .experience-copy{padding:70px 25px;min-height:420px}
  .experience-copy h2,.story-closer h2{font-size:clamp(45px,11vw,66px)}
  .app-promo{margin:26px 25px 0;grid-template-columns:1fr}
  .app-promo-copy{padding:65px 26px 45px}
  .app-promo h2{font-size:clamp(45px,11vw,66px)}
  .app-promo-photo{min-height:270px;height:270px;clip-path:none}
  .visit-teaser{padding-top:90px;padding-bottom:90px}
  .visit-teaser-image{height:360px}
  .footer-info{grid-template-columns:1fr;gap:25px}
  .footer-bottom{flex-wrap:wrap;margin-top:65px}
  .footer-bottom span:nth-child(2){display:none}
  .page-hero{height:520px;min-height:500px}
  .page-hero-content{padding:175px 25px 65px}
  .page-hero h1{font-size:clamp(58px,13vw,80px)}
  .menu-toolbar-inner{padding-left:25px;padding-right:25px}
  .menu-content{padding-top:35px}
  .menu-intro{margin-bottom:40px}
  .menu-section-heading{gap:5px;align-items:start;flex-direction:column}
  .menu-section-heading h2{font-size:48px}
  .menu-section-heading span:last-child{margin-top:3px}
  .menu-grid .card-image{aspect-ratio:1.48}
  .menu-order-banner{align-items:start;flex-direction:column;padding:55px 25px}
  .story-intro{padding-bottom:45px}
  .story-gallery{grid-template-columns:1fr;gap:12px;padding-bottom:85px}
  .story-gallery figure,.story-gallery figure:nth-child(2){height:310px}
  .story-gallery figure:nth-child(3){display:none}
  .story-closer{padding:80px 25px}
  .catering-content{padding-top:80px;padding-bottom:85px}
  .catering-packages{grid-template-columns:1fr;margin-top:35px}
  .package-card{padding:38px 32px}
  .visit-content{padding-top:80px;padding-bottom:80px;gap:45px}
  .visit-map{height:390px;min-height:390px}
  .visit-social{align-items:start;flex-direction:column;padding-bottom:85px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
  .js .reveal{opacity:1;transform:none}
  .hero-video-wrap{display:none}
}

/* Zyara heritage direction · Figma mT3jaVNHA2w4QVmXLrxTcC · November 4, 2026 */
:root{--cream:#f3edde;--paper:#fffaf0;--red:#9b2629;--red-bright:#ba3634;--espresso:#22271e;--olive:#48513d;--brass:#b39a67;--line:#d8ccb5}
body{background-image:radial-gradient(ellipse at 8% 20%,#d9c8a51c,transparent 55%),radial-gradient(ellipse at 90% 70%,#b39a6714,transparent 50%)}
.site-header{padding-top:26px}
.nav-shell{border-bottom:1px solid #e6d5b638;padding-bottom:20px}
.brand{background:#fffaf0f2;border-radius:4px;box-shadow:0 6px 26px #10150b14}
.site-nav .nav-order{background:#f3edde;color:#241f18;border-color:#f3edde}
.hero{background-color:#22271e;min-height:800px;height:min(890px,100svh)}
.hero-shade{background:linear-gradient(90deg,#151d13ed 0%,#151d13b8 48%,#151d1330 100%),linear-gradient(0deg,#151d1370,transparent 50%)}
.hero-content{padding-top:195px;padding-bottom:145px}
.hero h1{font-size:clamp(62px,7.1vw,114px);line-height:1.08;letter-spacing:-.055em;max-width:950px}
.hero h1 em{color:#e8d2ac}
.hero p{max-width:480px;font-size:17px;color:#f3edde}
.hero-arch{position:absolute;z-index:1;right:5.5%;top:21%;width:27%;height:66%;border:1px solid #dbc39980;border-radius:50% 50% 3px 3px;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:40px;color:#f3edde}
.hero-arch::before{content:"";position:absolute;inset:12px;border:1px solid #dbc39938;border-radius:inherit}
.hero-arch .rosette{width:52px;height:52px;color:#ead5ad;margin-bottom:15px}
.hero-arch span{text-align:center;font-size:10px;text-transform:uppercase;letter-spacing:.2em;line-height:1.8}
.rosette{display:block;width:62px;height:62px;stroke:currentColor;stroke-width:1.2;color:var(--brass);flex-shrink:0}
.ticker{height:52px;background:var(--red);border-top:1px solid #c58d6c;border-bottom:1px solid #c58d6c}
.ticker span{font-size:11px;letter-spacing:.22em}
.welcome{position:relative;padding-top:110px;padding-bottom:120px;gap:8vw}
.welcome::before{content:"";position:absolute;left:0;top:30px;width:100%;height:20px;background-image:url("/assets/brand/heritage-border.svg");background-size:80px 20px;opacity:.35;pointer-events:none}
.welcome-copy>.rosette{margin-bottom:28px}
.welcome h2,.section-heading h2,.visit-teaser h2{font-size:clamp(47px,4.5vw,74px);letter-spacing:-.045em}
.welcome-art{height:560px}
.main-frame{width:80%;height:92%;border-radius:50% 50% 3px 3px;outline:1px solid #b39a6780;outline-offset:10px}
.inset-frame{width:43%;height:42%;border-radius:50% 50% 3px 3px;box-shadow:0 12px 28px #32281d18}
.seal{right:-1%;bottom:0;width:134px;height:134px;transform:rotate(5deg);background:var(--olive);border:1px solid #d1bc91;outline:5px solid var(--cream);flex-direction:column;gap:9px;font-style:normal;box-shadow:none}
.seal [lang=ar]{font-family:Georgia,"Times New Roman",serif;font-size:27px;line-height:1.5}
.seal small{font-family:var(--sans);font-size:8px;letter-spacing:.13em;text-transform:uppercase}
.kitchen-paths{background:var(--espresso);color:var(--cream);padding:90px 0 100px;position:relative;overflow:hidden}
.kitchen-paths::before{content:"";position:absolute;right:-80px;top:-40px;width:440px;height:440px;background:url("/assets/brand/heritage-rosette.svg") center/contain no-repeat;opacity:.13;pointer-events:none}
.kitchen-paths .section-heading h2{font-size:clamp(43px,4.3vw,70px)}
.kitchen-paths h2 em{color:#e3c797}
.kitchen-paths .section-heading p{font-size:14px;line-height:1.8;color:#d5d4c4}
.kitchen-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;margin-top:55px}
.kitchen-card{display:block;min-width:0}
.kitchen-image{position:relative;aspect-ratio:1.1;overflow:hidden;border-radius:50% 50% 3px 3px;outline:1px solid #c6b28a50;outline-offset:7px}
.kitchen-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.kitchen-card:hover .kitchen-image img{transform:scale(1.055)}
.kitchen-number{position:absolute;bottom:16px;left:20px;font-size:10px;letter-spacing:.15em;background:#22271ed9;padding:8px 11px;border:1px solid #f3edde4d;border-radius:20px}
.kitchen-caption{display:flex;justify-content:space-between;align-items:center;padding-top:24px}
.kitchen-caption h3{font-size:28px;margin:0 0 8px;letter-spacing:-.02em}
.kitchen-caption div>span{font-size:12px;color:#c1c4b2}
.kitchen-arrow{display:grid;place-items:center;width:43px;height:43px;border:1px solid #d5c6a86b;border-radius:50%;font-size:21px;transition:background .25s,color .25s}
.kitchen-card:hover .kitchen-arrow{background:var(--cream);color:var(--espresso)}
.featured{padding-top:100px;padding-bottom:110px}
.menu-card{border-radius:10px;background:#fffaf0;box-shadow:0 5px 16px #342c1e05}
.menu-card:hover{box-shadow:0 18px 35px #342c1e14}
.card-body h3{font-size:23px}
.experience{background:var(--red)}
.experience-copy{background:var(--red);overflow:hidden}
.experience-copy>.rosette{margin-bottom:28px;color:#e3c797}
.experience-copy::after{width:350px;height:350px;border:0;border-radius:0;background:url("/assets/brand/heritage-rosette.svg") center/contain no-repeat;right:-160px;bottom:-80px;opacity:.18}
.experience-copy h2{font-size:clamp(48px,4.7vw,77px)}
.experience-copy h2 em{color:#ecd6af}
.app-promo{background:var(--olive);border-radius:6px;margin-top:55px}
.app-promo h2 em{color:#e8d2ac}
.app-promo-photo{clip-path:none;border-radius:50% 0 0 0}
.visit-teaser-image{outline:1px solid #b39a6780;outline-offset:10px}
.site-footer{position:relative;border-top:1px solid #b39a6750}
.footer-ornament{display:flex;align-items:center;gap:24px;max-width:1408px;margin:0 auto 50px}
.footer-ornament::before,.footer-ornament::after{content:"";height:1px;background:#b39a6755;flex:1}
.footer-ornament .rosette{width:42px;height:42px}
.page-hero::after{content:"";position:absolute;right:7%;bottom:40px;width:220px;height:300px;border:1px solid #e3c7975e;border-radius:50% 50% 0 0;pointer-events:none}
.page-hero h1{font-size:clamp(65px,7vw,110px)}
.page-hero h1 em{color:#e8d2ac}
.page-hero-photo::after{background:linear-gradient(90deg,#192114dc,#19211440),linear-gradient(0deg,#19211466,transparent 60%)}
.menu-toolbar{background:#f3eddef5}
.menu-section-heading{border-bottom:1px solid #b39a6773}
.menu-section-heading::before{content:"";width:28px;height:28px;background:url("/assets/brand/heritage-rosette.svg") center/contain no-repeat;flex-shrink:0;align-self:center;margin-right:5px}
.story-gallery figure:first-child,.story-gallery figure:last-child{border-radius:48% 48% 3px 3px}
.story-closer{background:var(--olive)}
.package-card{border-radius:8px;border-top:3px solid var(--brass)}
.package-card::after{background:url("/assets/brand/heritage-rosette.svg") center/contain no-repeat;border:0;border-radius:0;opacity:.2}
.visit-map{border:1px solid var(--brass);padding:8px;border-radius:8px;overflow:hidden}
@media(min-width:1500px){.hero-arch{right:max(6%,calc((100vw - 1400px)/2));width:365px}}
@media(max-width:1180px){.hero-arch{width:26%;right:4%;opacity:.7}.hero-arch span{font-size:8px}.kitchen-grid{gap:24px}.kitchen-caption h3{font-size:25px}.welcome-art{height:490px}}
@media(max-width:800px){.site-header{padding:15px 20px}.nav-shell{padding-bottom:12px}.hero-arch{width:45%;right:-12%;top:20%;height:65%;opacity:.45}.hero-arch span,.hero-arch .rosette{display:none}.hero-content{padding:180px 25px 140px}.hero h1{font-size:clamp(58px,10vw,83px)}.hero p{font-size:16px}.welcome{padding-top:85px;padding-bottom:90px}.welcome-art{height:500px}.kitchen-paths{padding:70px 0 80px}.kitchen-grid{gap:22px}.kitchen-caption h3{font-size:23px}.kitchen-arrow{width:34px;height:34px;font-size:18px}.kitchen-caption div>span{font-size:11px}.featured{padding-top:80px;padding-bottom:85px}.app-promo{margin-top:30px}.page-hero::after{width:150px;height:220px;right:-35px;opacity:.6}}
@media(max-width:600px){.hero{height:100svh;min-height:730px;max-height:930px}.hero-content{padding:190px 25px 145px;justify-content:flex-end}.hero h1{font-size:clamp(45px,11.8vw,66px);line-height:1.1;margin:24px 0}.hero p{font-size:14px;max-width:325px}.hero .eyebrow{max-width:290px;font-size:10px;line-height:1.8}.hero-actions{margin-top:18px}.hero-actions .button{min-height:52px;font-size:10px;padding:0 16px;gap:12px}.hero-arch{top:21%;right:-22%;width:70%;height:62%;opacity:.4}.hero-shade{background:linear-gradient(0deg,#172013ed 0%,#172013ad 58%,#17201360),linear-gradient(90deg,#17201355,transparent)}.ticker{height:43px}.ticker span{font-size:10px}.welcome h2,.section-heading h2,.visit-teaser h2{font-size:clamp(41px,10.5vw,60px)}.welcome-copy>.rosette{width:48px;height:48px;margin-bottom:22px}.welcome-art{height:390px}.seal{width:108px;height:108px;right:0}.seal [lang=ar]{font-size:23px}.seal small{font-size:7px}.kitchen-paths .section-heading h2{font-size:42px}.kitchen-paths .section-heading p{margin-bottom:0}.kitchen-grid{grid-template-columns:1fr;gap:35px;margin-top:38px}.kitchen-card{display:grid;grid-template-columns:130px 1fr;gap:23px;align-items:center}.kitchen-image{aspect-ratio:1/1.13;outline-offset:5px}.kitchen-caption{padding:0;align-items:flex-start;gap:9px}.kitchen-caption h3{font-size:26px;margin-bottom:10px}.kitchen-caption div>span{font-size:11px}.kitchen-arrow{flex-shrink:0;width:32px;height:32px;margin-top:4px}.kitchen-number{bottom:10px;left:10px;padding:5px 8px;font-size:8px}.featured-grid .card-image{aspect-ratio:1.45}.experience-copy{padding:60px 25px}.experience-copy h2{font-size:46px}.app-promo-photo{border-radius:45% 45% 0 0;margin:0 22px;min-height:270px}.app-promo-copy{padding:55px 26px 40px}.footer-ornament{margin-bottom:35px}.menu-section-heading{display:grid;grid-template-columns:28px 1fr;column-gap:12px}.menu-section-heading::before{grid-row:1/4}.menu-section-heading h2{font-size:43px}.page-hero h1{font-size:clamp(55px,12.5vw,76px)}.page-hero::after{bottom:25px}.motion-toggle{right:25px}}
@media(prefers-reduced-motion:reduce){.kitchen-card:hover .kitchen-image img{transform:none}}

/* Homepage app conversion focus · November 4, 2026 */
.app-spotlight{background:var(--olive);color:var(--cream);position:relative;overflow:hidden;scroll-margin-top:20px}
.app-spotlight::after{content:"";position:absolute;left:-150px;bottom:-230px;width:500px;height:500px;background:url("/assets/brand/heritage-rosette.svg") center/contain no-repeat;opacity:.12;pointer-events:none}
.app-spotlight-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center;padding-top:90px;padding-bottom:90px;position:relative;z-index:1}
.app-spotlight-copy{max-width:640px}
.app-identity{display:flex;align-items:center;gap:17px;margin-bottom:27px}
.app-identity img{width:67px;height:67px;border-radius:16px;border:1px solid #ffffff70;box-shadow:0 8px 25px #10150b20}
.app-identity>div{display:flex;flex-direction:column;gap:5px}
.app-identity .eyebrow{color:#f1d8ae}
.app-platform{font-size:12px;color:#e0e4d6}
.app-spotlight h2{font-size:clamp(49px,5vw,78px);line-height:1.1;letter-spacing:-.045em;margin:0 0 25px}
.app-spotlight h2 em{color:#ecd6af}
.app-spotlight-copy>p{max-width:520px;font-size:16px;line-height:1.85;color:#f0f0e6}
.app-features{display:flex;flex-wrap:wrap;gap:10px 18px;list-style:none;padding:0;margin:25px 0 30px;max-width:520px}
.app-features li{font-size:12px;line-height:1.5;display:flex;align-items:center;gap:8px;color:#f1f2e9}
.app-features li::before{content:"✓";font-size:13px;color:#f1d8ae}
.app-download{display:inline-flex;align-items:center;gap:12px;padding:13px 21px;background:var(--paper);color:#201812;border:1px solid #fff7df;border-radius:8px;box-shadow:0 9px 25px #17201321;transition:transform .25s,background .25s;min-height:70px}
.app-download:hover{transform:translateY(-3px);background:#f0d7b5}
.app-download>svg{width:32px;height:32px}
.app-download>span:not(.app-download-arrow){display:flex;flex-direction:column;gap:2px}
.app-download small{font-size:11px;line-height:1.2}
.app-download strong{font-size:25px;letter-spacing:-.025em;line-height:1.15;font-weight:600}
.app-download-arrow{font-size:24px;margin-left:13px}
.app-web-order{display:block;width:fit-content;margin-top:21px;font-size:12px;line-height:1.7;text-decoration:underline;text-underline-offset:4px;color:#e1e5d8;padding:5px 0}
.app-web-order:hover{color:#fff}
.app-visual{position:relative;display:flex;align-items:center;flex-direction:column;justify-content:center;isolation:isolate;padding:20px 20px 0}
.app-visual-arch{position:absolute;z-index:-1;inset:0 0 75px;border:1px solid #e7d2a573;border-radius:50% 50% 4px 4px;background:radial-gradient(ellipse at 50% 75%,#d6c69c20,transparent 70%)}
.app-visual-arch::before{content:"";position:absolute;inset:12px;border:1px solid #e7d2a52b;border-radius:inherit}
.app-visual-arch>.rosette{position:absolute;width:45px;height:45px;right:25px;bottom:30px;opacity:.65;color:#ead5ac}
.app-phone{width:254px;padding:9px;border-radius:29px;background:#1a1b18;border:1px solid #d4c5a580;box-shadow:0 25px 60px #151b133d,0 0 0 5px #f3edde0d;transform:rotate(3deg);transition:transform .5s}
.app-phone:hover{transform:rotate(0)}
.app-phone img{width:100%;height:auto;border-radius:21px;background:#fff}
.app-visual-caption{margin-top:34px;text-align:center;display:flex;flex-direction:column;gap:7px}
.app-visual-caption>span{font-family:var(--serif);font-size:23px}
.app-visual-caption small{color:#d8ddcd;font-size:11px}
@media(min-width:801px) and (max-width:1180px){.site-nav{gap:14px}.site-nav a{font-size:9px;letter-spacing:.09em}.app-spotlight-inner{gap:45px}.app-phone{width:228px}}
@media(max-width:800px){.app-spotlight-inner{grid-template-columns:1fr;gap:48px;padding-top:65px;padding-bottom:65px}.app-spotlight-copy{max-width:600px}.app-visual{width:min(100%,420px);margin:auto}.app-visual-arch{inset:0 12px 75px}.app-phone{width:240px}.app-spotlight h2{font-size:clamp(47px,8vw,65px)}}
@media(max-width:600px){.app-spotlight-inner{padding-top:48px;padding-bottom:55px;gap:42px}.app-identity{margin-bottom:23px}.app-identity img{width:58px;height:58px;border-radius:14px}.app-spotlight h2{font-size:clamp(42px,11vw,60px)}.app-spotlight-copy>p{font-size:14px;line-height:1.8}.app-features{gap:9px 17px;margin:21px 0 26px}.app-features li{font-size:11px}.app-download{padding:12px 20px;min-height:67px}.app-download strong{font-size:24px}.app-web-order{font-size:11px;margin-top:16px;min-height:34px}.app-visual{padding-top:12px}.app-phone{width:216px}.app-visual-caption{margin-top:27px}.app-visual-caption>span{font-size:21px}.app-visual-caption small{font-size:10px}.hero-actions .button{padding:0 14px;letter-spacing:.1em;gap:10px}}
@media(prefers-reduced-motion:reduce){.app-phone{transform:none}.app-download:hover{transform:none}}

/* Claude review fixes · November 4, 2026 — contrast, menu usability, tablet nav, app CTA on menu */
.site-footer .eyebrow{color:#e8aa82}
.menu-tabs a{color:#665a4f}
.menu-intro{color:#665b51}
.menu-section-heading span:last-child,.card-note{color:#6c6055}
.card-body p{font-size:13px}
.menu-order-actions{display:flex;flex-wrap:wrap;gap:12px}
.menu-order-banner .button-ghost{border-color:#ffffffa6}
@media(min-width:801px) and (max-width:1180px){.site-nav a{font-size:10px;letter-spacing:.08em}}
@media(min-width:801px) and (max-width:1023px){.site-nav{gap:12px}.site-nav a[href="/"]{display:none}.site-nav .nav-order{padding:13px 13px}}
@media(max-width:800px){.site-nav{background:#170e0a}.menu-search-label input{font-size:16px}.site-nav .nav-app{color:#e8d2ac}}
@media(max-width:600px){.menu-grid .card-body,.featured-grid .card-body{min-height:0}.menu-order-actions{width:100%}.menu-order-actions .button{flex:1 1 200px}}

/* Smaller poster for narrow screens; original photo and crop retained. */
@media(max-width:600px){.hero{background-image:url("/assets/story-responsive/DSC08859-1-960.webp")}}
