/* The supplied reference is the visual source of truth: ivory paper, lacquer red, moon gate. */
:root{--paper:#f2ecdc;--paper-light:#f8f3e8;--ink:#261e17;--muted:#6f6457;--red:#902a2b;--red-dark:#702024;--wine:#3b2328;--line:#d8cdb9;--gold:#a8885a;--display:'Bodoni Moda',Georgia,serif;--sans:'DM Sans',sans-serif;--frame:1040px;--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper) url('./paper.svg');color:var(--ink);font:400 15px/1.65 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}::selection{background:var(--red);color:var(--paper-light)}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button{cursor:pointer}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}svg{display:block}p{margin:0 0 1.3em}h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.12;margin:0;letter-spacing:-.04em;text-wrap:balance}h1{font-size:clamp(42px,4.5vw,64px)}h2{font-size:clamp(31px,3vw,44px)}h3{font-size:30px}em{font-style:normal;font-weight:inherit;color:var(--red)}.muted{color:var(--muted)}small,.small{font-size:12px;line-height:1.65}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.eyebrow{font:500 10px/1.5 var(--sans);letter-spacing:.19em;text-transform:uppercase;margin:0 0 19px;color:var(--red)}.section-wrap{max-width:calc(var(--frame) + 64px);margin:auto;padding:60px 32px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:32px}.section-heading>p{font-size:13px;max-width:320px;margin:0;color:var(--muted)}.section-heading>.small{max-width:250px}.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}:focus-visible{outline:2px solid var(--red);outline-offset:5px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--red);color:white;padding:12px;z-index:100}.skip-link:focus{top:8px}button:disabled{opacity:.4;cursor:not-allowed}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:44px;background:var(--red);color:#fff8ec;border:1px solid var(--red);padding:11px 22px;font-size:12px;font-weight:500;transition:background .25s,border-color .25s,transform .3s var(--ease)}.button:hover{background:var(--red-dark);border-color:var(--red-dark)}.button>.icon{width:17px;height:17px;transition:transform .3s var(--ease)}.button:hover>.icon{transform:translateX(3px)}.button-secondary{background:transparent;color:var(--ink);border-color:#655b4b}.button-secondary:hover{color:var(--red-dark);background:#e6dcc8;border-color:var(--red-dark)}.button-row{display:flex;gap:12px;flex-wrap:wrap}.text-link{display:inline-flex;align-items:center;gap:14px;border:0;background:transparent;padding:0;font-size:12px;font-weight:500;color:var(--red)}.text-link>.icon{width:17px;height:17px}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.red-stroke{display:block;width:36px;height:2px;background:var(--red)}
/* Shared masthead */
.site-header{display:flex;align-items:center;justify-content:space-between;height:60px;gap:28px;padding:0 max(32px,calc((100vw - var(--frame))/2));position:relative;z-index:20;background:var(--paper) url('./paper.svg');border-bottom:1px solid #bfb09125}.brand{display:flex;align-items:flex-start;gap:7px;flex-shrink:0}.wordmark{font:500 31px/.95 var(--display);text-transform:uppercase;letter-spacing:-.005em;white-space:nowrap}.wordmark small{display:block;font:500 8px var(--sans);letter-spacing:.56em;text-align:center;margin-top:7px}.brand-seal{font:24px/1.04 Georgia,'Times New Roman',serif;color:var(--red);border:1px solid var(--red);padding:1px;transform:rotate(2deg);margin-top:1px;box-shadow:inset 0 0 0 1px var(--paper)}.desktop-nav{display:flex;gap:28px;margin-left:auto}.desktop-nav a{font-size:11px;position:relative;padding:14px 0;white-space:nowrap}.desktop-nav a::after{content:'';position:absolute;left:0;bottom:5px;width:100%;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .3s}.desktop-nav a:hover::after,.desktop-nav a[aria-current]::after{transform:scaleX(1)}.desktop-nav a[aria-current]{color:var(--red)}.reserve-link{font-size:11px;background:var(--red);color:#fff8ec;min-height:37px;display:flex;align-items:center;justify-content:center;white-space:nowrap;padding:9px 25px;margin-left:36px;transition:background .2s}.reserve-link:hover{background:var(--red-dark)}.reserve-link>.icon{display:none}.menu-toggle{display:none}.mobile-menu{position:fixed;border:0;margin:0;width:100%;height:100%;max-width:none;max-height:none;padding:28px;background:var(--paper) url('./paper.svg');color:var(--ink)}.mobile-menu::backdrop{background:var(--paper)}.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.mobile-menu-head .wordmark{font-size:27px}.close-menu{border:1px solid var(--line);background:transparent;width:44px;height:44px;display:grid;place-items:center}.mobile-menu nav{display:flex;flex-direction:column;gap:15px;margin:50px 0}.mobile-menu nav a{font:36px/1.2 var(--display);padding:6px 0}.mobile-menu nav a[aria-current]{color:var(--red)}.mobile-menu-bottom{border-top:1px solid var(--line);padding-top:25px;color:var(--muted);font-size:13px}.mobile-reserve{display:none}
/* Reference composition, with live text over the photograph. */
.palace-hero{height:clamp(335px,25.4vw,410px);position:relative;isolation:isolate;overflow:hidden}.palace-scene{position:absolute;top:0;bottom:0;left:calc(50% - 190px);right:34px;z-index:-3;overflow:hidden}.palace-scene img{width:100%;height:100%;object-fit:cover;object-position:50% 68%;animation:scene-arrive 1.5s var(--ease) both}.hero-paper-curtain{position:absolute;inset:0 auto 0 0;width:calc(50% - 82px);background:var(--paper) url('./paper.svg');clip-path:ellipse(100% 155% at 0% 50%);z-index:-1}.hero-right-curtain{position:absolute;right:-5px;top:-20px;bottom:-20px;width:95px;background:var(--paper) url('./paper.svg');clip-path:ellipse(100% 125% at 100% 50%);z-index:-1}.hero-inner{max-width:var(--frame);margin:auto;height:100%;display:flex;align-items:center}.hero-copy{width:425px;padding-bottom:1px;position:relative;z-index:2}.hero-copy>.eyebrow{color:var(--ink);font-size:9px;letter-spacing:.36em;margin-bottom:5px}.hero-copy h1{font-size:53px;text-transform:uppercase;font-weight:600;letter-spacing:-.045em;line-height:1.15}.hero-copy .red-stroke{margin:12px 0 17px;width:35px}.hero-copy h2{font-size:36px;line-height:1.06;letter-spacing:-.045em}.hero-copy>p:not(.eyebrow){font-size:13px;margin:12px 0 23px;max-width:390px;line-height:1.45}.hero-copy .button{font-size:11px;padding:10px 18px;min-height:42px;white-space:nowrap}.hero-copy .button>.icon{display:none}.hero-copy .button-row{gap:13px}.blossom{position:absolute;pointer-events:none;color:var(--muted)}.hero-blossom{left:-12px;top:-19px;width:190px;height:300px;opacity:.4;z-index:1;transform-origin:top left;animation:branch-sway 16s ease-in-out infinite}.hero-calligraphy{position:absolute;left:3.1%;bottom:21px;display:flex;align-items:flex-end;gap:7px;color:#938c74;z-index:1}.hero-calligraphy>span{writing-mode:vertical-rl;font:15px/1.5 Georgia,'Times New Roman',serif;letter-spacing:.25em}.hero-calligraphy>b,.hero-side-note>b{font:23px/1 Georgia,serif;border:1px solid var(--red);color:var(--red);padding:1px;transform:rotate(4deg)}.hero-side-note{position:absolute;top:35px;right:22px;width:48px;z-index:2;text-align:center}.hero-side-note>span{font:500 6px/2.1 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:#766b56;display:block;margin-bottom:23px}.hero-side-note>b{display:inline-block}.hero-art-caption{position:absolute;bottom:7px;right:105px;font-size:8px;color:#fff9ed;text-shadow:0 1px 3px #000;opacity:.9}.info-band{background:var(--wine);color:#fff7e7;position:relative;border-top:3px solid #a689702e;border-bottom:3px solid #a6897033;isolation:isolate}.info-band::before,.info-band::after{content:'';position:absolute;top:0;bottom:0;width:145px;z-index:-1;background:url('./lattice.svg') center/145px 56px}.info-band::before{left:0}.info-band::after{right:0;transform:scaleX(-1)}.info-band-inner{max-width:920px;margin:auto;display:grid;grid-template-columns:1.25fr .85fr 1.25fr;align-items:center;min-height:54px}.info-band-inner>a{display:flex;align-items:center;justify-content:center;gap:13px;min-height:33px;padding:2px 20px}.info-band-inner>a+a{border-left:1px solid #ecdebf44}.info-band-inner .icon{width:27px;height:27px;stroke-width:1.8}.info-band-inner span{font-size:11px;line-height:1.35}.info-band-inner small{display:block;font-size:9px;line-height:1.4;color:#e5d7c4}.info-band-inner .info-rating{display:flex;flex-direction:column;gap:1px}.info-band-inner .rating-number{font:600 21px/1.05 var(--sans);letter-spacing:.01em}.rating-number>span{font-size:10px!important}.info-rating small{font-size:7px}.info-band a:hover{color:#f3cd9a}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:var(--frame);margin:auto;padding:16px 0 14px}.feature-card{border:1px solid var(--line);background:var(--paper-light);box-shadow:0 3px 6px #69523005;overflow:hidden;transition:box-shadow .3s,transform .3s var(--ease)}.feature-card:hover{transform:translateY(-3px);box-shadow:0 7px 20px #69523014}.feature-photo{height:clamp(95px,8.4vw,125px);overflow:hidden;background:#3b2b25}.feature-photo img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}.feature-card:nth-child(2) .feature-photo img{object-position:65% 43%}.feature-card:hover img{transform:scale(1.055)}.feature-label{display:flex;align-items:center;justify-content:space-between;padding:13px 19px 16px;gap:15px;border-left:4px solid #bead8d;height:53px}.feature-label h2{font-size:20px;position:relative;letter-spacing:-.025em;white-space:nowrap}.feature-label h2::after{content:'';position:absolute;bottom:-7px;left:0;width:22px;height:1.5px;background:var(--red)}.feature-label>.icon{width:17px;height:17px}.home-story{display:grid;grid-template-columns:55% 45%;position:relative}.reference-interior{margin:0;position:relative;overflow:hidden;min-height:280px}.reference-interior img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 54%;transition:transform 1.2s var(--ease)}.reference-interior:hover img{transform:scale(1.03)}.reference-interior figcaption{position:absolute;bottom:8px;left:15px;color:#f8eddb;font-size:8px;text-shadow:0 1px 4px #000}.reference-story-copy{position:relative;padding:35px 45px 35px 58px;overflow:hidden;isolation:isolate}.reference-story-copy h2{font-size:36px;letter-spacing:-.025em;margin:0}.reference-story-copy .red-stroke{margin:13px 0 15px;width:33px}.reference-story-copy p{font-size:12px;line-height:1.65;max-width:390px;color:var(--muted);margin-bottom:6px}.reference-story-copy .button{margin-top:17px;min-height:37px;font-size:10px;padding:9px 15px;gap:13px}.story-blossom{right:-27px;top:-36px;width:160px;height:280px;opacity:.38;transform:scaleX(-1);z-index:-1}.home-visit{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-top:45px;padding-bottom:45px}.home-visit h2{font-size:32px}.home-visit .eyebrow{font-size:9px;margin-bottom:12px}.home-visit p:not(.eyebrow){font-size:12px;color:var(--muted);margin:12px 0 0}.home-visit .button{white-space:nowrap;min-width:180px}
/* Independent pages in the same paper-and-red identity */
.subhero{max-width:calc(var(--frame) + 64px);padding:56px 32px 45px;margin:auto;display:grid;grid-template-columns:1fr 200px;align-items:center;gap:50px;border-bottom:1px solid var(--line);position:relative}.subhero h1{font-size:clamp(42px,4.5vw,62px)}.subhero .intro{font-size:14px;max-width:630px;color:var(--muted);margin:23px 0 0}.subhero-art{color:var(--red);opacity:.62;padding:15px}.subhero-art svg{width:100%;height:auto;animation:art-arrive 1.2s var(--ease) both}.source-note{font-size:10px;color:var(--muted);margin:16px 0 0}.source-note a,.legal-copy a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.buffet-section{padding-top:35px;padding-bottom:20px}.buffet-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.buffet-card{background:var(--paper-light);border:1px solid var(--line);border-top:3px solid var(--red);padding:30px 35px;position:relative;overflow:hidden}.buffet-card.evening{background:var(--wine);color:#fff4df;border-color:var(--wine)}.card-label{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.035em;color:var(--red);margin-bottom:23px}.card-label>.icon{width:20px;height:20px}.evening .card-label{color:#dfc5a0}.buffet-card h2{font-size:34px}.price{font:600 70px/1.1 var(--display);letter-spacing:-.05em;margin-top:18px}.price span{font-size:28px;vertical-align:top;line-height:2.1;margin-left:8px}.price+p{font-size:11px;color:var(--muted);margin-top:7px}.evening .price+p{color:#d8c5b5}.buffet-time{font:26px var(--display);border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.evening .buffet-time{border-color:#d8c5b544}.buffet-card .small{font-size:11px;margin:8px 0 0}.calculator-section{padding-top:48px}.calculator{display:grid;grid-template-columns:1.25fr 1fr;border:1px solid var(--line);background:var(--paper-light)}.calculator-inputs{padding:30px}.buffet-selector{border:0;padding:0;margin:0 0 20px;display:flex;gap:8px;flex-wrap:wrap}.buffet-selector legend{font-size:13px;margin-bottom:13px}.buffet-selector label{flex:1;white-space:nowrap;position:relative}.buffet-selector input{position:absolute;opacity:0}.buffet-selector span{display:block;border:1px solid var(--line);padding:12px 13px;text-align:center;cursor:pointer;font-size:11px;transition:background .2s}.buffet-selector input:checked+span{background:var(--red);color:#fff6e4;border-color:var(--red)}.buffet-selector input:focus-visible+span{outline:2px solid var(--red);outline-offset:4px}.guest-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid var(--line)}.guest-row label{font-size:12px}.stepper{display:flex;align-items:center;border:1px solid var(--line)}.stepper button{width:33px;height:37px;border:0;background:transparent;font-size:18px}.stepper button:hover{background:#e8ddc7}.stepper input{width:34px;text-align:center;border:0;background:transparent;font-size:12px;appearance:textfield;-moz-appearance:textfield}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.calculator-result{padding:35px;background:#eae0ca;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.calculator-result output{font:600 58px var(--display);letter-spacing:-.06em;color:var(--red)}.calculator-result>p{font-size:12px;color:var(--muted)}.calculator-result>.small{font-size:11px;max-width:260px}.calculator-result .button{font-size:10px;padding:12px 15px;gap:12px}.kids-section{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-top:0}.price-table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}.price-table caption{text-align:left;color:var(--muted);font-size:11px;padding-bottom:14px}.price-table td,.price-table th{padding:14px 9px;border-bottom:1px solid var(--line);font-weight:400}.price-table thead th{font-size:10px;color:var(--red)}.price-table td,.price-table thead th:not(:first-child){text-align:right}.table-scroll .small{font-size:10px;margin-top:14px}.faq{max-width:850px;padding-top:10px}.faq h2{margin-bottom:27px}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding:20px 0;font-size:13px}.faq summary::-webkit-details-marker{display:none}.faq summary>.icon{width:17px;height:17px;transition:transform .3s}.faq details[open] summary>.icon{transform:rotate(45deg)}.faq details>p{font-size:13px;color:var(--muted);max-width:660px;padding:0 30px 12px 0}.faq details a{text-decoration:underline;text-underline-offset:4px;color:var(--red)}.visit-banner{max-width:var(--frame);margin:20px auto 65px;padding:42px 48px;background:var(--wine);color:#f6eddc;display:grid;grid-template-columns:1fr 1fr;gap:60px;border-top:3px solid var(--red)}.visit-banner .eyebrow{color:#dfc3a5;font-size:9px}.visit-banner h2{font-size:40px}.visit-banner em{color:#e5caac}.visit-banner>div:last-child{align-self:center}.visit-banner p:not(.eyebrow){font-size:12px;color:#decec3;max-width:350px}.visit-banner .button{background:#f1e6d2;color:var(--wine);border-color:#f1e6d2;min-width:200px}.visit-banner .button:hover{background:#e4d3b7}.visit-banner .small{display:block;margin-top:12px;font-size:10px;color:#decec3}.original-menu{max-width:var(--frame);margin:35px auto 0;background:#e9dfc9;border:1px solid var(--line);padding:28px 34px;display:flex;align-items:center;justify-content:space-between;gap:35px}.original-menu h2{font-size:31px}.original-menu .eyebrow{margin-bottom:10px}.original-menu p:not(.eyebrow){font-size:12px;margin:12px 0 0;color:var(--muted)}.original-menu .button{white-space:nowrap}.menu-selection{padding-top:48px}.menu-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{font-size:11px;padding:10px 13px;border:1px solid var(--line);background:transparent;transition:background .2s}.filters button:hover{border-color:var(--red)}.filters button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#fff6e9}.menu-search{display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--line);padding:8px 0}.menu-search>.icon{width:17px;height:17px;color:var(--muted)}.menu-search input{font-size:11px;border:0;background:transparent;width:200px;padding:4px}.menu-search input::placeholder{color:var(--muted)}.dish-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.dish-card{padding:24px 20px;border:1px solid var(--line);background:var(--paper-light);min-width:0;transition:transform .3s var(--ease),box-shadow .3s}.dish-card:hover{transform:translateY(-3px);box-shadow:0 4px 15px #3428190a}.dish-card>svg{height:85px;width:85px;color:var(--red);opacity:.8;margin:0 auto 19px}.dish-card>.eyebrow{font-size:8px;margin-bottom:9px;letter-spacing:.12em}.dish-card>h2{font-size:25px;hyphens:auto;overflow-wrap:anywhere;letter-spacing:-.035em}.dish-card>p{font-size:11px;color:var(--muted);margin:14px 0 0}.dish-card[hidden]{display:none}.dish-card.filter-in{animation:filter-in .4s var(--ease)}.allergy-note{max-width:var(--frame);margin:0 auto 60px;padding:26px 30px;background:#eae2d2;border:1px solid var(--line);display:flex;align-items:center;gap:23px}.allergy-note>.icon{color:var(--red);width:30px;height:30px}.allergy-note h2{font-size:25px}.allergy-note p{font-size:12px;color:var(--muted);margin:8px 0 0}.allergy-note>a{display:flex;align-items:center;gap:15px;font-size:12px;white-space:nowrap;margin-left:auto;color:var(--red)}.restaurant-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:center}.wide-photo{margin:0}.wide-photo img{width:100%;aspect-ratio:.96;object-fit:cover;object-position:48% center;border:5px solid #e3d5bc}.wide-photo figcaption{font-size:9px;color:var(--muted);margin-top:12px}.restaurant-copy h2{margin-bottom:23px}.restaurant-copy>p:not(.eyebrow){font-size:13px;color:var(--muted)}.restaurant-copy .button{margin-top:8px}.restaurant-details{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:0}.restaurant-details article{border-top:1px solid var(--line);padding-top:28px}.restaurant-details article>.icon{color:var(--red);width:31px;height:31px;margin-bottom:20px}.restaurant-details h2{font-size:31px;margin-bottom:18px}.restaurant-details p{font-size:13px;color:var(--muted);max-width:370px}.photo-source{display:grid;grid-template-columns:140px 1fr;gap:42px;align-items:center;max-width:var(--frame);margin:0 auto 65px;padding:35px 45px;background:#e8dfcd;border:1px solid var(--line)}.photo-source-art{aspect-ratio:1;border:1px solid #c9bba2;display:grid;place-items:center}.photo-source-art>.icon{color:var(--red);height:52px;width:52px;stroke-width:1}.photo-source .eyebrow{font-size:9px;margin-bottom:12px}.photo-source h2{font-size:35px;margin-bottom:16px}.photo-source p:not(.eyebrow){font-size:12px;color:var(--muted);max-width:530px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;padding-bottom:30px}.contact-card{padding:33px;background:var(--paper-light);border:1px solid var(--line);border-top:2px solid var(--red)}.contact-card h2{font-size:33px}.big-phone{font:600 43px var(--display);letter-spacing:-.04em;color:var(--red);display:flex;align-items:center;gap:17px;margin:25px 0 19px}.big-phone>.icon{width:27px;height:27px}.contact-card>p:not(.eyebrow){font-size:12px;color:var(--muted);max-width:360px}.copy-phone{font-size:11px;padding-bottom:5px;border-bottom:1px solid var(--line)}.copy-phone>.icon{width:14px;height:14px}.contact-card [role=status]{display:block;color:var(--red);margin-top:12px}.hours{margin:24px 0 15px}.hours>div{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;font-size:12px;padding:13px 0;border-bottom:1px solid var(--line)}.hours dt{color:var(--muted)}.hours dd{margin:0;text-align:right}.contact-card>.small{font-size:11px}.location-section{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.location-art{height:370px;background:var(--wine);color:#f5e8d4;position:relative;overflow:hidden}.location-city{position:absolute;bottom:39px;left:29px;font:46px var(--display);letter-spacing:.05em;opacity:.2}.location-caption{position:absolute;bottom:28px;left:32px;font-size:9px;color:#d7baa0;letter-spacing:.1em}.location-orbits{position:absolute;top:45%;left:50%}.location-orbits i{position:absolute;width:200px;height:200px;border-radius:50%;border:1px solid #d1b49a33;transform:translate(-50%,-50%)}.location-orbits i:nth-child(2){width:340px;height:340px}.location-orbits i:nth-child(3){width:490px;height:490px}.location-pin{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);text-align:center;white-space:nowrap}.location-pin>.icon{height:52px;width:52px;stroke-width:1;margin:0 auto 14px;color:#ead0ac;animation:pin-float 5s ease-in-out infinite}.location-pin>span{font:27px var(--display)}.location-pin small{display:block;font:11px var(--sans);margin-top:8px;color:#d7baa0}.location-section address{font-style:normal;font-size:13px;color:var(--muted);margin:25px 0}.location-section .button{font-size:11px;gap:13px}.location-section .small{font-size:10px;margin-top:15px}.legal-copy{max-width:850px;padding-top:42px}.legal-copy h2{font-size:28px;margin:32px 0 16px}.legal-copy h2:first-child{margin-top:0}.legal-copy p{font-size:13px;color:var(--muted)}
/* The footer mirrors the dark information strip. */
.site-footer{background:var(--wine);color:#f3e7d1;padding:43px max(32px,calc((100vw - var(--frame))/2)) 20px;border-top:3px solid #a6897033;position:relative}.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:38px}.footer-brand{font:30px var(--display);letter-spacing:-.025em}.footer-brand>span{display:block;font:10px var(--sans);letter-spacing:0;color:#d6c3b5;margin-top:13px}.footer-top h2{font:500 9px var(--sans);color:#dcbda0;text-transform:uppercase;letter-spacing:.12em;margin:4px 0 19px}.footer-top>div>a{display:block;font-size:11px;margin-bottom:8px}.footer-top p{font-size:10px;line-height:1.9;color:#d6c3b5;margin-bottom:6px}.footer-top .footer-phone{font-size:15px}.footer-top .muted{color:#d6c3b5;font-size:10px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e7ceb323;padding-top:17px;font-size:9px;color:#d6c3b5}.footer-bottom>div{display:flex;gap:20px}.site-footer a:hover{color:#fffaf2}.site-footer :focus-visible,.info-band :focus-visible,.visit-banner :focus-visible{outline-color:#f3d6b0}
/* Gentle motion keeps all links as real page navigation. */
.motion-ready .reveal{opacity:0;transform:translateY(16px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.motion-ready .reveal.in-view{opacity:1;transform:translateY(0)}.hero-copy{animation:copy-arrive 1.05s var(--ease) both}.hero-copy h2{animation:copy-arrive 1.1s .09s var(--ease) both}.hero-copy .button-row{animation:copy-arrive 1.1s .18s var(--ease) both}@view-transition{navigation:auto}::view-transition-old(root){animation:page-out .17s ease both}::view-transition-new(root){animation:page-in .35s var(--ease) both}@keyframes scene-arrive{from{opacity:.6;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes copy-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes branch-sway{0%,100%{transform:rotate(0)}50%{transform:rotate(1.8deg)}}@keyframes art-arrive{from{opacity:0;transform:rotate(-6deg)}to{opacity:1;transform:rotate(0)}}@keyframes pin-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes filter-in{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes page-out{to{opacity:0}}@keyframes page-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
/* Responsive translation of the reference, not a scaled screenshot. */
@media(min-width:1600px){:root{--frame:1180px}.site-header{height:70px}.hero-copy{width:455px}.hero-copy h1{font-size:60px}.hero-copy h2{font-size:40px}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-copy .button{font-size:12px;min-height:45px}.hero-blossom{width:235px;height:365px}.hero-side-note{right:26px;width:60px}.hero-side-note>span{font-size:7px}.hero-paper-curtain{width:calc(50% - 115px)}.palace-scene{left:calc(50% - 200px)}.feature-photo{height:130px}.feature-label{height:57px}.reference-interior{min-height:330px}.reference-story-copy{padding:45px 65px}.reference-story-copy h2{font-size:40px}.reference-story-copy p{font-size:13px}}
@media(max-width:1150px){:root{--frame:calc(100vw - 96px)}.site-header{padding:0 48px;gap:20px}.wordmark{font-size:28px}.desktop-nav{gap:21px}.reserve-link{margin-left:12px;padding:9px 19px}.hero-copy{width:370px}.hero-copy h1{font-size:47px}.hero-copy h2{font-size:32px}.hero-copy>p:not(.eyebrow){font-size:12px;max-width:330px}.hero-copy .button{font-size:10px;padding:10px 15px;min-height:40px}.hero-blossom{left:-45px;width:142px;height:240px;opacity:.24}.hero-calligraphy{display:none}.hero-paper-curtain{width:calc(50% - 30px)}.palace-scene{left:calc(50% - 155px);right:15px}.hero-side-note{right:10px;width:38px}.hero-right-curtain{width:60px}.hero-side-note>span{font-size:5px}.hero-art-caption{right:68px}.info-band-inner{max-width:850px}.info-band::before,.info-band::after{width:80px;opacity:.6}.feature-grid{gap:17px}.feature-label{padding-left:15px;padding-right:15px}.feature-label h2{font-size:19px}.reference-story-copy{padding:30px 37px}.reference-story-copy h2{font-size:31px}.reference-story-copy p{font-size:11px;max-width:330px}.reference-interior{min-height:280px}.story-blossom{width:120px;right:-40px;opacity:.3}.section-wrap{padding-left:32px;padding-right:32px}.visit-banner,.original-menu,.photo-source,.allergy-note{max-width:var(--frame)}.menu-tools{flex-wrap:wrap}.dish-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-top{gap:25px}.footer-brand{font-size:28px}.site-footer{padding-left:48px;padding-right:48px}.big-phone{font-size:36px}}
@media(max-width:860px){:root{--frame:calc(100vw - 56px)}.site-header{padding:0 28px;gap:16px;height:65px}.desktop-nav{display:none}.reserve-link{margin-left:auto}.menu-toggle{width:39px;height:37px;border:1px solid var(--line);background:transparent;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:10px}.menu-toggle span{width:100%;height:1px;background:var(--ink)}.palace-hero{height:350px}.hero-copy{width:350px}.hero-copy h1{font-size:43px}.hero-copy h2{font-size:31px}.hero-copy .red-stroke{margin:10px 0 15px}.hero-copy>p:not(.eyebrow){font-size:11px;max-width:300px;margin-bottom:21px}.hero-copy .button{font-size:10px;padding:10px 13px}.hero-copy .button-row{gap:9px}.hero-paper-curtain{width:calc(50% + 25px)}.palace-scene{left:calc(50% - 125px);right:0}.palace-scene img{object-position:52% 70%}.hero-side-note,.hero-right-curtain{display:none}.hero-blossom{display:none}.hero-art-caption{right:10px}.info-band-inner>a{padding:2px 13px;gap:8px}.info-band-inner span{font-size:10px}.info-band-inner small{font-size:8px}.info-band-inner .icon{width:22px;height:22px}.info-band-inner .rating-number{font-size:20px}.info-rating small{font-size:6px}.info-band::before,.info-band::after{display:none}.feature-grid{gap:13px}.feature-label{padding:12px 11px 15px;height:49px}.feature-label h2{font-size:16px}.feature-label .icon{width:14px}.feature-photo{height:97px}.home-story{grid-template-columns:1fr 1fr}.reference-story-copy{padding:28px}.reference-story-copy h2{font-size:30px}.reference-story-copy p{font-size:11px}.reference-interior{min-height:290px}.home-visit{padding-top:36px;padding-bottom:36px}.home-visit h2{font-size:28px}.home-visit p:not(.eyebrow){max-width:390px;font-size:11px}.home-visit>.button{min-width:150px;font-size:11px}.subhero{grid-template-columns:1fr 140px;padding-top:43px;gap:20px}.subhero h1{font-size:46px}.subhero .intro{font-size:13px}.subhero-art{padding:5px}.section-wrap{padding-top:45px;padding-bottom:45px;padding-left:28px;padding-right:28px}.section-heading{gap:30px}.section-heading>p{font-size:12px;max-width:230px}.buffet-card{padding:26px}.buffet-card h2{font-size:30px}.price{font-size:64px}.buffet-time{font-size:23px}.calculator{grid-template-columns:1fr}.calculator-result{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;padding:28px}.calculator-result .eyebrow{grid-column:1/-1;margin:0}.calculator-result output{grid-column:1;grid-row:2;font-size:52px}.calculator-result p{grid-column:1;margin:0}.calculator-result .button{grid-column:2;grid-row:2/4;align-self:center;font-size:11px}.calculator-result .small{grid-column:1/-1;max-width:none;margin-top:5px}.kids-section{gap:30px;padding-top:0}.kids-section h2{font-size:34px}.visit-banner{padding:34px;gap:35px}.visit-banner h2{font-size:34px}.original-menu{padding:25px;gap:25px}.original-menu h2{font-size:28px}.original-menu .button{font-size:10px;padding:11px 14px}.dish-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-tools{align-items:flex-start}.menu-search{width:100%}.menu-search input{width:100%}.restaurant-intro{gap:35px}.restaurant-copy h2{font-size:35px}.restaurant-details{gap:35px}.photo-source{grid-template-columns:95px 1fr;padding:28px;gap:27px}.photo-source h2{font-size:31px}.contact-grid{gap:20px}.contact-card{padding:25px}.contact-card h2{font-size:29px}.big-phone{font-size:32px;gap:10px}.big-phone .icon{width:22px}.hours>div{font-size:11px;gap:15px}.location-section{gap:35px}.location-art{height:335px}.location-city{font-size:34px;left:23px}.location-section h2{font-size:34px}.location-section .button{font-size:10px;padding:12px 14px}.footer-top{grid-template-columns:1.3fr 1fr;gap:33px}.site-footer{padding:38px 28px 22px}.footer-bottom{flex-wrap:wrap}.allergy-note{flex-wrap:wrap}.allergy-note>div{flex:1}.allergy-note>a{margin-left:53px}}
@media(max-width:600px){:root{--frame:calc(100vw - 40px)}body{padding-bottom:58px}.site-header{height:65px;padding:0 20px;gap:11px}.wordmark{font-size:25px}.wordmark small{font-size:6px;margin-top:7px;letter-spacing:.6em}.brand-seal{font-size:19px}.brand{gap:5px}.reserve-link{padding:8px 10px;min-height:36px;background:transparent;color:var(--red)}.reserve-link:hover{background:#e7dac4}.reserve-link>.icon{display:block;width:19px;height:19px}.reserve-link>span{display:none}.menu-toggle{width:36px;height:36px}.palace-hero{height:auto;min-height:650px;padding:0 0 290px;display:flex;flex-direction:column}.hero-inner{width:100%;height:auto;padding:38px 25px 34px;position:relative;background:var(--paper) url('./paper.svg');margin:0;z-index:1}.hero-copy{width:100%;padding:0}.hero-copy>.eyebrow{font-size:8px;margin-bottom:7px}.hero-copy h1{font-size:clamp(36px,10.7vw,51px);letter-spacing:-.035em}.hero-copy h2{font-size:clamp(29px,7.9vw,37px);line-height:1.06}.hero-copy .red-stroke{margin:12px 0 17px;width:33px}.hero-copy>p:not(.eyebrow){font-size:12px;max-width:350px;margin:13px 0 22px;line-height:1.5}.hero-copy .button-row{gap:10px}.hero-copy .button{font-size:10px;min-height:43px;padding:11px 14px}.palace-scene{top:auto;bottom:0;left:0;right:0;height:310px;z-index:0}.palace-scene img{object-position:center 69%;object-fit:cover}.hero-paper-curtain{display:none}.hero-right-curtain{display:none}.hero-inner::after{content:'';position:absolute;left:-5%;right:-5%;height:31px;bottom:-17px;border-radius:0 0 50% 50%;background:var(--paper) url('./paper.svg')}.hero-art-caption{z-index:3;bottom:7px;font-size:7px}.hero-side-note{display:none}.hero-calligraphy{display:none}.info-band{border-width:2px}.info-band-inner{grid-template-columns:1fr 1fr;min-height:92px;max-width:100%}.info-band-inner>a{min-height:45px;padding:6px 15px;justify-content:center}.info-band-inner span{font-size:10px}.info-band-inner small{font-size:8px}.info-band-inner .info-hours{grid-column:1/-1;border-bottom:1px solid #ecdebf22;justify-content:center;gap:13px}.info-hours>span{display:flex;gap:13px;align-items:center}.info-band-inner .info-rating{border-left:0;gap:3px;flex-direction:row}.info-rating small{font-size:6px;max-width:59px;line-height:1.4}.info-band-inner .rating-number{font-size:18px}.info-band-inner .info-address{border-left:1px solid #ecdebf33;padding:6px 8px}.info-address .icon{width:18px;height:18px}.info-address>span{font-size:9px;max-width:120px}.feature-grid{padding:18px 0;grid-template-columns:1fr;gap:13px}.feature-card{display:grid;grid-template-columns:43% 57%;min-height:104px}.feature-photo{height:104px}.feature-label{height:100%;border-left:3px solid #bfad8f;padding:18px 14px}.feature-label h2{font-size:20px;white-space:normal}.feature-label>.icon{width:15px;height:15px}.home-story{grid-template-columns:1fr}.reference-interior{min-height:230px;order:0}.reference-interior img{object-position:center 56%}.reference-interior figcaption{font-size:7px;left:10px;bottom:7px}.reference-story-copy{padding:31px 25px 35px;order:1}.reference-story-copy h2{font-size:35px}.reference-story-copy p{font-size:12px;max-width:350px}.reference-story-copy .red-stroke{margin:12px 0 15px}.reference-story-copy .button{font-size:11px;min-height:40px}.story-blossom{width:110px;right:-25px;top:0;opacity:.3}.home-visit{display:block;padding:28px 25px 35px;border-top:1px solid var(--line)}.home-visit h2{font-size:32px}.home-visit .eyebrow{font-size:8px}.home-visit p:not(.eyebrow){font-size:12px;margin:15px 0 22px}.home-visit .button{font-size:12px;min-width:190px}.section-wrap{padding:40px 20px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{max-width:350px;margin-top:19px;font-size:12px}.section-heading>.small{display:block;margin-top:18px;font-size:10px}h2{font-size:34px}.eyebrow{font-size:9px;margin-bottom:17px}.subhero{padding:37px 20px 32px;grid-template-columns:1fr;gap:0;overflow:hidden}.subhero h1{font-size:clamp(37px,10vw,51px)}.subhero .intro{font-size:12px;margin-top:20px;max-width:350px}.subhero-art{position:absolute;width:145px;right:-30px;bottom:-30px;opacity:.1;pointer-events:none}.buffet-section{padding-top:25px;padding-bottom:10px}.buffet-cards{grid-template-columns:1fr;gap:17px}.buffet-card{padding:28px}.buffet-card h2{font-size:34px}.price{font-size:67px}.card-label{font-size:10px}.buffet-time{font-size:24px}.source-note{font-size:9px}.calculator-section{padding-top:35px}.calculator-inputs{padding:22px 17px}.buffet-selector{gap:6px}.buffet-selector span{font-size:9px;padding:12px 9px}.guest-row{gap:8px}.guest-row label{font-size:10px}.stepper button{width:29px;height:37px}.stepper input{width:27px}.calculator-result{display:flex;gap:0;padding:25px}.calculator-result>.eyebrow{margin-bottom:13px}.calculator-result output{font-size:53px}.calculator-result>p{font-size:11px;margin-top:8px}.calculator-result .small{margin:15px 0}.calculator-result .button{font-size:10px;align-self:stretch;margin:0}.kids-section{grid-template-columns:1fr;gap:28px;padding-top:0}.kids-section h2{font-size:35px}.table-scroll{overflow:auto;width:100%}.price-table{font-size:11px}.price-table td,.price-table th{padding:13px 7px}.faq{padding-top:8px}.faq h2{font-size:33px}.faq summary{font-size:12px}.faq details>p{font-size:12px}.visit-banner{display:block;padding:30px 25px;margin:15px 20px 45px;max-width:none}.visit-banner h2{font-size:36px}.visit-banner>div:last-child{margin-top:25px}.visit-banner p:not(.eyebrow){font-size:12px}.visit-banner .button{min-width:205px}.original-menu{display:block;margin:24px 20px 0;max-width:none;padding:25px}.original-menu h2{font-size:30px}.original-menu p:not(.eyebrow){font-size:12px}.original-menu .button{margin-top:20px;font-size:11px}.menu-selection{padding-top:35px}.menu-tools{gap:17px}.filters{gap:6px}.filters button{font-size:10px;padding:10px 11px}.dish-grid{gap:12px}.dish-card{padding:21px 15px}.dish-card>h2{font-size:23px}.dish-card>svg{height:70px;width:70px;margin-bottom:16px}.dish-card>.eyebrow{font-size:7px;letter-spacing:.07em}.dish-card>p{font-size:10px}.allergy-note{display:grid;grid-template-columns:24px minmax(0,1fr);padding:23px 20px;gap:17px;max-width:none;margin:0 20px 40px}.allergy-note>.icon{width:24px;height:24px}.allergy-note h2{font-size:25px}.allergy-note p{font-size:11px}.allergy-note>a{grid-column:2;margin-left:0;font-size:11px}.restaurant-intro{grid-template-columns:1fr;gap:30px}.wide-photo img{aspect-ratio:1.2}.restaurant-copy h2{font-size:36px}.restaurant-copy>p:not(.eyebrow){font-size:12px}.restaurant-details{grid-template-columns:1fr;gap:30px;padding-top:0}.restaurant-details h2{font-size:29px}.restaurant-details p{font-size:12px}.photo-source{max-width:none;margin:0 20px 45px;padding:25px;grid-template-columns:1fr;gap:24px}.photo-source-art{width:66px}.photo-source-art>.icon{width:33px;height:33px}.photo-source h2{font-size:33px}.contact-grid{grid-template-columns:1fr;gap:17px;padding-top:25px;padding-bottom:15px}.contact-card{padding:27px 23px}.contact-card h2{font-size:33px}.big-phone{font-size:38px}.hours>div{font-size:12px}.location-section{grid-template-columns:1fr;gap:30px}.location-art{height:310px}.location-city{font-size:39px;left:23px}.location-section h2{font-size:37px}.location-section .button{font-size:11px}.legal-copy{padding-top:30px}.legal-copy h2{font-size:26px}.legal-copy p{font-size:13px}.site-footer{padding:35px 22px 22px}.footer-top{grid-template-columns:1fr 1fr;gap:30px 20px;padding-bottom:29px}.footer-brand{grid-column:1/-1;font-size:34px}.footer-top>div:last-child{grid-column:1/-1}.footer-top>div:last-child p{display:inline-block;margin-right:13px}.footer-top h2{font-size:9px;margin-bottom:16px}.footer-top>div>a{font-size:12px}.footer-top p{font-size:11px}.footer-bottom{font-size:8px;gap:15px}.footer-bottom .made-by{width:100%}.mobile-reserve{position:fixed;bottom:0;left:0;right:0;height:58px;display:flex;align-items:center;gap:12px;padding:12px 20px;background:var(--red);color:#fff5e6;z-index:18;border-top:1px solid #f3d6b055;font-size:11px;box-shadow:0 -4px 20px #35201718}.mobile-reserve>.icon{width:17px;height:17px}.mobile-reserve>span{margin-left:auto;font-size:11px}.mobile-reserve:focus-visible{outline-color:#f3d6b0;outline-offset:-5px}}
@media(min-width:1151px) and (max-width:1599px){:root{--frame:min(1040px,71vw)}.site-header{height:52px}.wordmark{font-size:29px}.palace-hero{height:25.2vw}.hero-copy h1{font-size:clamp(47px,3.67vw,53px)}.hero-copy h2{font-size:clamp(32px,2.5vw,36px)}.hero-copy>p:not(.eyebrow){margin:11px 0 19px}.hero-copy .red-stroke{margin:10px 0 15px}.palace-scene{left:calc(50% - 145px)}.feature-grid{padding:12px 0;gap:20px}.feature-photo{height:clamp(92px,7.1vw,114px)}.feature-label{height:46px}.feature-label h2{font-size:18px}.info-band-inner{min-height:49px}}
@media(max-width:360px){.site-header{padding:0 16px;gap:8px}.wordmark{font-size:22px}.brand-seal{font-size:17px}.reserve-link{padding:7px}.menu-toggle{width:32px;min-width:32px}.hero-copy h1{font-size:35px}.hero-inner{padding-left:22px;padding-right:22px}.hero-copy .button{padding:10px 12px;font-size:9px}.feature-label{padding-left:11px;padding-right:10px}.feature-label h2{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}::view-transition-old(root),::view-transition-new(root){animation:none!important}}
