/* Frosted surfaces over a shared atmospheric background, with readable content. */
.cd-room{--cd-paper:#172332;--cd-ink:#f4f5ef;--cd-accent:#d7c29b;--cd-line:#ffffff21;background:radial-gradient(ellipse at 8% 15%,#c5936440,transparent 43%),radial-gradient(ellipse at 95% 45%,#66857438,transparent 48%),linear-gradient(135deg,#1c2835,#111b27)!important}.cd-room.cd-restaurant{--cd-paper:#172c2b;--cd-ink:#f3f5ed;--cd-accent:#bbd497;--cd-line:#ffffff24;background:radial-gradient(ellipse at 85% 10%,#81926644,transparent 50%),radial-gradient(ellipse at 15% 65%,#4d80953a,transparent 50%),linear-gradient(135deg,#172a2d,#111e29)!important}.cd-room-scroll{position:relative}.cd-top{background:#172332b8;border-bottom:1px solid #ffffff21;backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);padding-inline:max(24px,calc((100vw - 1180px)/2));box-shadow:0 12px 25px #07101a18}.cd-top button{background:#ffffff0c;border-color:#ffffff30}.cd-hero{margin:20px auto 0;width:calc(100% - 40px);max-width:1240px;border:1px solid #ffffff25;border-radius:32px;background:radial-gradient(ellipse at 10% 40%,#ba957060,transparent 45%),linear-gradient(125deg,#243344,#493b32);box-shadow:0 25px 70px #00000025;height:min(65vh,600px)}.cd-restaurant .cd-hero{background:radial-gradient(ellipse at 20% 30%,#94a66c50,transparent 45%),linear-gradient(125deg,#1f3936,#29323b)}.cd-hero-shade{background:linear-gradient(90deg,#0b142430,#0b1424b0 85%)}.cd-hero-copy{margin:30px 35px;width:fit-content;max-width:650px;border:1px solid #ffffff2d;background:linear-gradient(130deg,#ffffff13,#ffffff06);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:28px;padding:32px;box-shadow:inset 0 1px 0 #ffffff10,0 20px 50px #00000018}.cd-hero h2{font-size:clamp(36px,5vw,65px);margin:12px 0 15px}.cd-hero-copy a{background:#f1e0bd;color:#2a352c;box-shadow:0 8px 26px #09141b28}.cd-hero p{color:#e8eae3}.cd-menu{padding-top:48px}.cd-menu-heading>p{padding:8px 12px;border:1px solid #ffffff20;border-radius:999px;color:#c2ccce;background:#ffffff06}.cd-menu-tools{padding:13px;border:1px solid #ffffff20;border-radius:22px;background:#ffffff07;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.cd-categories button{color:#e1e7e3;background:#ffffff05;border-color:#ffffff20}.cd-categories button[aria-pressed=true]{background:#e3edcf;color:#273728;border-color:#e3edcf;box-shadow:0 4px 20px #17242020}.cd-search input{background:#09152144!important;border-color:#ffffff24!important;color:#f4f6ef!important}.cd-search input::placeholder{color:#a8b5b8}.cd-product{background:linear-gradient(140deg,#ffffff11,#ffffff05);border:1px solid #ffffff24;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:inset 0 1px 0 #ffffff13,0 15px 35px #020c1714;transition:transform .4s,opacity .55s,box-shadow .4s,border-color .3s}.cd-product:hover{border-color:#c6d4b667;box-shadow:0 22px 45px #020c173b;transform:translateY(-6px)}.cd-product-photo{margin:12px 12px 0;border-radius:15px;background:radial-gradient(circle at 40% 30%,#c6a77d25,transparent 50%),linear-gradient(140deg,#d8c1a015,#dcc69f08)}.cd-restaurant .cd-product-photo{background:radial-gradient(circle at 40% 30%,#b2c89725,transparent 50%),linear-gradient(140deg,#c0d3b015,#c0d3b008)}.cd-product-photo img{opacity:0;transition:opacity .55s,transform .65s}.cd-product.photo-ready img{opacity:1}.cd-product-placeholder{opacity:.65}.cd-product-copy{padding:20px 23px}.cd-product p{color:#bbc6c8}.cd-product-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cd-product.is-expanded .cd-product-description{display:block;max-height:none}.cd-product h4{font-size:20px}.cd-product strong{font-size:22px;color:#e8efdb}.cd-product-more{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0 0;padding:11px 0 0;width:100%;border:0;border-top:1px solid #ffffff19;background:transparent;color:#b9c7ba;font:inherit;font-size:11px}.cd-product-more span{font-size:20px;color:#e4edd5}.cd-unavailable{background:#182635ce;color:#e4ceaf;border:1px solid #ffffff24;backdrop-filter:blur(8px)}.cd-empty{background:#ffffff07;border-color:#ffffff30;color:#d0d9d5}.cd-gallery img{border:1px solid #ffffff2c}.cd-footer{color:#ced7d3}.cd-footer small{color:#8ea2a7}.cd-scroll-progress{position:absolute;top:env(safe-area-inset-top,0px);right:0;z-index:24;height:3px;background:linear-gradient(90deg,#dcbf92,#c7e79c);box-shadow:0 0 12px #ddedb96b;pointer-events:none;width:0}.cd-load-more{grid-column:1/-1;text-align:center;padding:30px}.cd-load-more button{border:1px solid #ffffff25;color:#d9e4d4;background:#ffffff0a;border-radius:999px;font:inherit;padding:12px 23px;font-size:12px}.cd-product.cd-reveal{opacity:0;transform:translateY(28px) scale(.97);transition-delay:var(--cd-delay,0ms)}.cd-product.cd-reveal.is-revealed{opacity:1;transform:none}.cd-product.cd-reveal.is-revealed:hover{transform:translateY(-6px)}
@media(max-width:850px){.cd-menu-tools{gap:10px}.cd-hero-copy{margin:24px;padding:26px;max-width:calc(100% - 48px)}.cd-menu-grid{gap:16px}}
@media(max-width:500px){.cd-top{padding-inline:14px}.cd-hero{width:calc(100% - 24px);margin-top:12px;border-radius:24px;min-height:410px}.cd-hero-copy{padding:24px 20px;margin:16px;max-width:calc(100% - 32px);border-radius:20px}.cd-hero h2{font-size:36px}.cd-hero-copy .cd-eyebrow{font-size:10px}.cd-hero-label{bottom:10px;font-size:35px}.cd-menu{padding-inline:14px}.cd-menu-tools{padding:9px;border-radius:18px}.cd-categories button{padding:10px 14px;font-size:11px}.cd-product{grid-template-columns:118px minmax(0,1fr);border-radius:20px}.cd-product-photo{margin:10px 10px 10px 0;border-radius:13px}.cd-product-copy{padding:18px 14px}.cd-product h4{font-size:17px}.cd-product strong{font-size:19px}.cd-product-more{margin-top:12px;padding-top:9px;font-size:10px}.cd-product p{line-height:1.8}.cd-product-placeholder svg{width:39px;height:39px}.cd-menu-heading>p{font-size:9px;padding:7px 9px}}
@media(prefers-reduced-motion:reduce){.cd-product.cd-reveal{opacity:1;transform:none;transition:none}.cd-product.cd-reveal.is-revealed:hover{transform:none}}

/* Abstract glass entrance: no photograph or simulated wooden doors. */
.cd-transition{position:absolute;inset:0;z-index:30;display:none;pointer-events:none;overflow:hidden}.cd-transition span{position:absolute;inset:-20%;border:1px solid #ffffff28;background:linear-gradient(125deg,#b7d1d322,#293743d9 45%,#172332f5);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:50%;transform-origin:70% 30%;box-shadow:0 0 70px #a6c9bf16}.cd-transition span:nth-child(2){inset:-12%;background:linear-gradient(135deg,#dcc49a28,#1e303dd9);transform-origin:20% 70%}.cd-transition span:nth-child(3){inset:-5%;background:linear-gradient(135deg,#ffffff14,#14222ce8);transform-origin:80% 80%}.cd-room.is-entering .cd-transition{display:block}.cd-room.is-entering .cd-transition span{animation:cdGlassSweep .8s cubic-bezier(.2,.75,.2,1) both}.cd-room.is-entering .cd-transition span:nth-child(2){animation-delay:.07s}.cd-room.is-entering .cd-transition span:nth-child(3){animation-delay:.14s}.cd-room.is-entering .cd-room-scroll{animation:cdSpaceReveal .85s cubic-bezier(.2,.75,.2,1) both}.cd-room.is-entering .cd-hero-copy{animation:cdCopyEnter .65s .15s ease both}.cd-hero-atmosphere{position:absolute;inset:0;z-index:-2;overflow:hidden;background:radial-gradient(ellipse at 20% 25%,#ccb89422,transparent 55%),radial-gradient(ellipse at 85% 80%,#7eadaa24,transparent 60%)}.cd-hero-atmosphere span{position:absolute;width:320px;height:320px;left:-40px;top:-80px;border:1px solid #ffffff20;border-radius:50%;background:linear-gradient(140deg,#ffffff08,transparent);box-shadow:0 0 60px #b1cfbb0a}.cd-hero-atmosphere span+span{width:440px;height:440px;left:auto;right:-180px;top:auto;bottom:-200px;border-color:#d4c09c20}.cd-restaurant .cd-hero-atmosphere{background:radial-gradient(ellipse at 20% 25%,#a2c7b32a,transparent 55%),radial-gradient(ellipse at 85% 80%,#91aabf24,transparent 60%)}
@keyframes cdGlassSweep{0%{opacity:1;transform:scale(1.05) rotate(-12deg)}100%{opacity:0;transform:translateX(-110%) rotate(20deg) scale(.8)}}
@keyframes cdSpaceReveal{from{opacity:.25;transform:translateY(22px) scale(.965)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.cd-room.is-entering .cd-transition{display:none}.cd-room.is-entering .cd-room-scroll{animation:none}}

.cd-space-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.cd-hero:has(.cd-space-image) .cd-hero-shade{background:linear-gradient(90deg,#0b142440,#0b1424b8 85%)}
