/* Product sheets and restaurant information: same dark food-led visual system. */
.menu-sync{font-size:.75rem;color:#fff;opacity:.75;line-height:1.6;max-width:66ch;margin:0 0 1.5rem}
button.product-photo{display:block;border:0;padding:0;width:100%;text-align:left;cursor:pointer;background:#151515;color:#fff;position:relative;overflow:hidden;font:inherit}
.product-photo img{display:block;width:100%;height:100%;object-fit:cover}
.photo-view{position:absolute;right:12px;top:12px;border-radius:20px;background:#101010dd;color:#fff;padding:7px 10px;font-size:.7rem;line-height:1;z-index:2;letter-spacing:0;opacity:0;transition:opacity .2s}
.product:hover .photo-view,.product-photo:focus-visible .photo-view{opacity:1}
.dish-name{border:0;background:transparent;color:#fff;padding:0;text-align:left;font:inherit;cursor:pointer;overflow-wrap:anywhere}
.product-detail{border:1px solid #ffffff40;border-radius:30px;padding:9px 13px;background:transparent;color:#fff;cursor:pointer;font:600 .75rem Manrope,sans-serif;white-space:nowrap}
.product-detail:hover{background:#fff;color:#111}.card-servings{color:#fff;font-size:.75rem;margin:0 0 12px}.dish-is-open{overflow:hidden}
.product-dialog{position:fixed;inset:0;margin:auto;width:min(1100px,94vw);max-height:90dvh;border:1px solid #ffffff25;border-radius:24px;padding:0;background:#151515;color:#fff;overflow:auto;box-shadow:0 30px 120px #000a}
.product-dialog::backdrop{background:#000c;backdrop-filter:blur(7px)}
.dish-layout{display:grid;grid-template-columns:1fr 1fr;align-items:start}.dish-photo{position:sticky;top:0;min-width:0;aspect-ratio:1;overflow:hidden;background:#0c0c0c}.dish-photo>img{width:100%;height:100%;object-fit:contain;display:block}.dish-photo>.photo-caption{position:absolute;bottom:15px;left:15px}
.dish-close{position:sticky;top:12px;float:right;margin:12px 12px -54px 0;z-index:5;width:40px;height:40px;display:grid;place-items:center;border:1px solid #ffffff50;border-radius:50%;background:#111e;color:white;font:30px/1 sans-serif;cursor:pointer}
.dish-content{padding:clamp(24px,4vw,48px);min-width:0;overflow-wrap:anywhere}.dish-eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:#d9a46c;margin:0 0 16px}.dish-content h2{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-size:clamp(2.4rem,5vw,4.2rem);line-height:.95;letter-spacing:-.02em;margin:0 28px 18px 0}.dish-content>p{font-size:.9rem;line-height:1.7}.dish-content .dish-price{font-size:1.8rem;font-weight:700;margin:12px 0 22px}.dish-servings{border-block:1px solid #ffffff25;padding:15px 0;font-weight:700}.dish-servings small{display:block;font-size:.75rem;font-weight:400;margin-top:5px;line-height:1.6}.dish-allergens{margin:24px 0}.dish-allergens h3{font-size:1rem;margin:0 0 13px}.dish-allergens ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.dish-allergens li{display:flex;align-items:center;gap:8px;background:#222;border:1px solid #ffffff25;border-radius:8px;padding:9px 12px;font-size:.8rem}.dish-allergens li span{font-size:1.1rem}.dish-allergens p,.dish-source{font-size:.75rem!important;line-height:1.7;color:#ddd}.dish-content .button-primary{margin-top:15px;max-width:100%}
.salon-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(24px,5vw,90px);align-items:center;padding-top:100px;padding-bottom:100px;background:#131313a8}.salon-copy h2{font-family:'Barlow Condensed',sans-serif;font-size:clamp(3rem,6vw,6rem);line-height:.9;margin:0 0 25px}.salon-copy>p:not(.dish-eyebrow){font-size:.95rem;line-height:1.8;max-width:48ch}.salon-copy .salon-capacity{font-size:1.5rem!important;margin-top:25px}.salon-capacity strong{font-size:2rem}.salon-image{margin:0;min-width:0}.salon-image img{width:100%;height:auto;display:block;border-radius:16px}.salon-image figcaption{font-size:.7rem;opacity:.65;margin:12px 0 0}.salon-copy .button-primary{margin-top:18px}.visit-hours{font-size:.78rem!important;line-height:1.8!important;max-width:44ch}
:focus-visible{outline:2px solid #d9a46c;outline-offset:4px}
@media(max-width:700px){.product-dialog{width:94vw;max-height:94dvh;border-radius:18px}.dish-layout{grid-template-columns:1fr}.dish-photo{position:relative;aspect-ratio:4/3}.dish-content{padding:25px}.dish-content h2{font-size:2.8rem}.dish-close{position:sticky}.salon-section{grid-template-columns:1fr;padding-top:70px;padding-bottom:70px}.salon-copy h2{font-size:3.6rem}.product-bottom{flex-wrap:wrap;gap:10px}.product-detail{font-size:.68rem;padding:8px 10px}.photo-view{opacity:1;font-size:.6rem;padding:6px 8px}.dish-content .button-primary{width:100%;justify-content:center}}

.dish-allergens li svg{width:22px;height:22px;flex-shrink:0;color:#e9c395}.product-dialog{scrollbar-color:#7e6c56 #151515;scrollbar-width:thin}
/* Mobile reading sizes: retain the display headings and desktop composition. */
@media(max-width:700px){
 .button-primary,.button-text{font-size:14px}
 .hero-location,.hero-rating,.hero-rating>span:last-child{font-size:12px}
 .section-intro p,.thor-copy>p,.salon-copy>p:not(.dish-eyebrow),.visit-section>div>p{font-size:16px;line-height:1.7}
 .thor-copy .thor-sides{font-size:14px}
 #category-nav button{font-size:14px}
 .menu-search input,.menu-search input::placeholder{font-size:16px}
 .product .product-card-body>h4{font-size:16px;line-height:1.4}
 .product-card-body>.product-description{font-size:14px;line-height:1.7}
 .product-card-body>.product-category{font-size:12px}
 .product-card-body .product-price{font-size:16px}
 .product-card-body .product-order,.product-detail,.card-servings{font-size:13px}
 .product-detail{white-space:normal}
 .menu-result,.menu-sync,.menu-footnote{font-size:13px;line-height:1.65}
 .review-parallax-lane .review-person h3{font-size:14px}.review-parallax-lane .review blockquote{font-size:16px;line-height:1.7}
 .review>a,.review-bottom,.site-footer,.salon-image figcaption{font-size:13px}
 .visit-hours{font-size:14px!important}
 .dish-content>p{font-size:16px}.dish-servings small,.dish-allergens li{font-size:14px}
 .dish-allergens p,.dish-source{font-size:14px!important}
}
/* Warm yellow-orange headings, shared by desktop and mobile. */
:root{--heading-accent:#ffbd59}
#site-main h1,#site-main h2,#category-title,.menu-section .product h4,.dish-name,.dish-content h2,.marquee-track{color:var(--heading-accent)}

/* Complete menu: open sections, no filters or sideways navigation. */
#carta .menu-layout{display:block}
#carta #product-grid{display:block}
.menu-group+.menu-group{margin-top:72px}
#carta .menu-group-title{font-family:'Barlow Condensed',sans-serif;font-size:clamp(36px,5vw,64px);line-height:1.1;color:var(--heading-accent);margin:0 0 32px}
.menu-category+.menu-category{margin-top:44px}
#carta .menu-category-title{font-size:22px;color:var(--heading-accent);margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid #ffffff30}
.menu-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
#carta .product-category{display:none}
@media(max-width:900px){.menu-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .menu-category-grid{grid-template-columns:1fr;gap:0}
 #carta .menu-group-title{margin-bottom:24px}
 #carta .menu-category-title{font-size:20px;margin-bottom:0}
 #carta .product{padding:0;min-width:0}
 #carta .product-card-body{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:16px;row-gap:8px;padding:20px 0;margin:0;border:0;border-bottom:1px solid #ffffff20;border-radius:0;background:none;box-shadow:none;min-height:0;transform:none}
 #carta .product-card-body:before{display:none}
 #carta .product-card-body>.product-photo{grid-column:1;grid-row:1 / span 4;aspect-ratio:1;width:96px;align-self:start;border-radius:10px;transform:none}
 #carta .product-card-body>h4,#carta .product-card-body>.product-description,#carta .product-card-body>.card-servings,#carta .product-card-body>.product-bottom{grid-column:2;margin:0;transform:none}
 #carta .product-card-body>h4{font-size:17px;line-height:1.4}
 #carta .product-card-body>.product-description{font-size:14px;line-height:1.6}
 #carta .product-card-body>.product-description:empty{display:none}
 #carta .product-card-body>.product-bottom{display:flex;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;border:0;padding-top:4px}
 #carta .product-detail{min-height:44px;padding:10px 12px}
 #carta .photo-caption{font-size:9px;padding:4px}
 #carta .no-photo .product-card-body{grid-template-columns:minmax(0,1fr)}
 #carta .no-photo .product-card-body>*{grid-column:1}
}

/* Categories open on demand; native details supports touch and keyboard. */
#carta details.menu-category+details.menu-category{margin-top:0}
#carta details.menu-category>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;min-height:68px;margin:0;padding:18px 0;border-bottom:1px solid #ffffff30}
#carta details.menu-category>summary::-webkit-details-marker{display:none}
#carta details.menu-category>summary svg{width:24px;height:24px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .2s}
#carta details.menu-category[open]>summary svg{transform:rotate(180deg)}
#carta details.menu-category>summary:focus-visible{outline:2px solid var(--heading-accent);outline-offset:4px}
#carta details.menu-category[open]>.menu-category-grid{padding:24px 0 32px}
@media(max-width:600px){#carta details.menu-category[open]>.menu-category-grid{padding:0 0 16px}.menu-group+.menu-group{margin-top:40px}}
