*{box-sizing:border-box}body{margin:0;background:#f3efe8;color:#244144;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;font-size:16px}header{max-width:1400px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:28px 40px;border-bottom:1px solid #d8d9cf}.brand{font-family:serif;font-size:30px;letter-spacing:5px;text-decoration:none;color:#174f55}.brand span{font-family:sans-serif;font-size:14px;letter-spacing:3px;margin-left:24px;color:#7c8a80}.intro{font-size:14px;color:#72867c}main{max-width:1400px;margin:auto;padding:28px 40px}h1{font-family:serif;font-size:26px;font-weight:500;letter-spacing:2px;margin:0}p{color:#77867e;font-size:14px;line-height:1.7}.map-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}.zoom{display:flex;gap:5px;align-items:center;font-size:13px}.zoom span{padding:0 5px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.map-panel{background:#e7e4dc;border:1px solid #dbd8cc;border-radius:16px;overflow:hidden}.map-scroll{overflow:auto;padding:12px;min-height:300px}#stage{position:relative;width:100%;margin:auto;user-select:none;line-height:0}#map{display:block;width:100%;height:auto}#overlay{position:absolute;inset:0;pointer-events:none}.pin{position:absolute;transform:translate(-50%,-50%);border:0;background:transparent!important;padding:0;min-width:44px;min-height:44px;pointer-events:auto;display:grid;place-items:center}.disc{display:grid;place-items:center;width:var(--size);height:var(--size);border:2px solid #fff5e4;border-radius:50%;background:var(--color);color:white;font-size:12px;box-shadow:0 2px 5px #142b4566;z-index:1}.pin[aria-pressed=true]{--color:#c9573f!important}.pin[aria-pressed=true] .disc{outline:2px solid #fff3da;outline-offset:2px}.arrow{position:absolute;width:var(--size);height:var(--size);transform:rotate(var(--angle))}.arrow:before{content:"";position:absolute;left:50%;top:-10px;transform:translateX(-50%);border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:9px solid var(--color)}.label{position:absolute;transform:translate(-50%,-50%);white-space:pre;line-height:1.4;padding:3px 6px;border-radius:3px}.map-foot{display:flex;justify-content:space-between;padding:12px 18px;font-size:12px;color:#78867b}.eyebrow{font-size:11px;letter-spacing:3px;color:#927b59}aside{background:#fffaf3;border-radius:16px;padding:22px;box-shadow:0 8px 30px #32473908;min-height:260px}h2{font-size:18px;font-weight:500;margin:10px 0 16px}.scene{width:100%;max-height:450px;object-fit:contain;background:#e9e1d7;border-radius:8px;display:block;cursor:zoom-in}.detail-top{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:8px}.badge{background:#167b86;color:#fff;font-size:12px;border-radius:20px;padding:5px 10px}.direction{font-size:12px;color:#a95840}.photo-name{font-size:13px;margin:12px 0}.nav{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.thumbs{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.thumbs button{padding:2px;border:2px solid transparent;min-height:0}.thumbs button[aria-pressed=true]{border-color:#167b86}.thumbs img{display:block;width:40px;height:48px;object-fit:cover;border-radius:4px}button{font:inherit;cursor:pointer;min-height:40px;border:1px solid #d9ddd2;background:#fffaf3;color:#244144;border-radius:7px;padding:8px 12px}button:hover{background:#e6f1ee}button:disabled{opacity:.4;cursor:default}button:focus-visible{outline:3px solid #167b86;outline-offset:3px}#message{text-align:center;padding:60px 15px;line-height:1.8;color:#6b8278}footer{text-align:center;color:#8d978b;font-size:12px;letter-spacing:3px;padding:12px 20px 30px}dialog{max-width:min(90vw,850px);border:0;border-radius:16px;padding:18px;background:#fffaf3}dialog::backdrop{background:#163d41cc}dialog form{text-align:right;margin-bottom:12px}dialog img{max-width:100%;max-height:75vh;display:block;margin:auto}dialog p{margin-bottom:0}.empty{padding:25px 0}@media(max-width:900px){.layout{grid-template-columns:1fr}header,main{padding:20px}.intro{display:none}.map-heading{align-items:flex-start;flex-wrap:wrap;gap:4px}h1{font-size:22px}.map-scroll{padding:6px;min-height:0}.map-heading p{margin:8px 0}.scene{max-height:500px}aside{min-height:0}header{padding:18px 20px}.map-foot{padding:10px;font-size:11px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s}}

/* Keep the view first and its caption below. */
.photo-details{margin-top:12px}.photo-details h2{margin:6px 0}.photo-details .photo-name{margin:4px 0 10px}
@media(max-width:600px){
 header{padding:10px 14px}.brand{font-size:23px}.brand span{font-size:12px;margin-left:12px;letter-spacing:2px}
 main{padding:8px 12px}.map-heading{margin-bottom:8px;gap:4px;align-items:center;flex-wrap:nowrap}.map-heading h1{display:none}.map-heading p{font-size:11px;line-height:1.4;margin:0;max-width:165px}.zoom{gap:2px;font-size:11px}.zoom span{display:none}.zoom button{min-height:36px;padding:5px 9px}
 .layout{gap:8px}.map-panel{border-radius:10px}.map-scroll{padding:4px}#stage:not(.zoomed){max-width:calc(32svh * 1200 / 965)}.map-foot{padding:4px 8px;font-size:10px}
 aside{padding:8px;border-radius:10px}.scene{height:34svh;max-height:360px;object-fit:contain;background:#eee7dc}.photo-details{margin-top:7px}.detail-top{margin-bottom:3px}.badge{font-size:11px;padding:3px 8px}.direction{font-size:11px}.photo-details h2{font-size:15px;margin:4px 0}.photo-details .photo-name{font-size:11px;margin:2px 0 5px;line-height:1.4}.nav{font-size:12px}.nav button{min-height:36px;padding:5px 10px}.thumbs{margin-top:6px}.thumbs img{width:28px;height:34px}footer{padding:8px;font-size:10px}
}

/* Consistent landscape photo frames; full originals remain in the lightbox. */
.scene{width:100%;height:auto;aspect-ratio:3 / 2;max-height:none;object-fit:cover;object-position:center;border-radius:12px}.thumbs img{width:48px;height:32px;border-radius:6px}

[hidden]{display:none!important}.section-tabs{display:flex;gap:8px}.section-tabs button{border:0;background:transparent;color:#75847b}.section-tabs button[aria-pressed=true]{background:#167b86;color:#fff}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:24px}.catalog-card{background:#fffaf3;border-radius:16px;padding:14px}.catalog-card h2{margin:14px 0 8px}.catalog-intro{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.catalog-price{color:#a95840}.catalog-image{display:block;border:0;padding:0;width:100%;border-radius:12px;background:none}.catalog-image .scene{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;border-radius:12px}.catalog-empty{padding:40px 0}@media(max-width:950px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){header{flex-wrap:wrap;gap:8px}.section-tabs{width:100%;gap:4px}.section-tabs button{flex:1;font-size:13px;padding:6px;min-height:36px}.catalog-grid{grid-template-columns:1fr;gap:14px;margin-top:16px}#catalog-view h1{font-size:22px;margin-top:12px}}

/* Match the original understated header label across all three sections. */
header{justify-content:flex-start;gap:24px}.section-tabs{gap:24px}.section-tabs button{font-family:sans-serif;font-size:14px;font-weight:400;letter-spacing:3px;color:#7c8a80;padding:8px 0;background:transparent;border:0;border-radius:0;min-height:40px}.section-tabs button[aria-pressed=true]{background:transparent;color:#174f55;box-shadow:inset 0 -1px #174f55}.section-tabs button:hover{background:transparent;color:#174f55}
@media(max-width:600px){header{gap:8px}.section-tabs{gap:18px;justify-content:space-between;width:100%}.section-tabs button{flex:0 1 auto;font-size:12px;letter-spacing:2px;padding:5px 0;min-height:36px}}

/* Editorial catalog spreads: paper tones, a lead image, and paired modules. */
body[data-section=food]{background:#f6f1e5;--catalog-ink:#414b34;--catalog-muted:#73755e;--catalog-rule:#d8d0bb;--catalog-accent:#896835}
body[data-section=drinks]{background:#eeefec;--catalog-ink:#333b3d;--catalog-muted:#697173;--catalog-rule:#cdd1cf;--catalog-accent:#794b50}
#catalog-view{max-width:1120px;margin:0 auto;padding:14px 0 40px;color:var(--catalog-ink)}
.catalog-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:48px;padding:20px 0 32px;border-bottom:1px solid var(--catalog-rule)}
.catalog-kicker{font-size:10px;letter-spacing:4px;color:var(--catalog-accent)}#catalog-view h1{font-family:'Songti SC',SimSun,serif;font-size:38px;letter-spacing:5px;margin:14px 0 0;font-weight:400}.catalog-heading>.catalog-intro{margin:0;max-width:440px}
.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 40px;margin-top:32px}.catalog-card{background:transparent;border-radius:0;padding:0;min-width:0;border-bottom:1px solid var(--catalog-rule);padding-bottom:26px}.catalog-image{overflow:hidden;background:transparent}.catalog-image:hover{background:transparent}.catalog-image .scene{border-radius:12px;background:transparent}
.catalog-copy{padding:18px 0 0;overflow-wrap:anywhere}.catalog-number{font-size:10px;letter-spacing:2px;color:var(--catalog-accent);display:block;margin-bottom:10px}.catalog-card h2{font-family:'Songti SC',SimSun,serif;font-size:25px;letter-spacing:1px;line-height:1.4;font-weight:400;margin:0 0 12px}.catalog-card .catalog-intro{font-size:13px;color:var(--catalog-muted);line-height:1.9;margin:0 0 14px}.catalog-price{font-size:13px;color:var(--catalog-accent);margin:16px 0 0;letter-spacing:1px}.catalog-heading .catalog-intro{color:var(--catalog-muted)}
.catalog-featured{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:36px;align-items:center;padding-bottom:32px}.catalog-featured .catalog-copy{padding:12px 0}.catalog-featured h2{font-size:32px}.catalog-text-only{display:block}.catalog-empty{color:var(--catalog-muted);border-bottom:1px solid var(--catalog-rule);padding:56px 0}
@media(max-width:600px){#catalog-view{padding:4px 4px 24px}.catalog-heading{grid-template-columns:1fr;gap:16px;padding:16px 0 22px}#catalog-view h1{font-size:29px;margin:10px 0 0}.catalog-kicker{font-size:9px;letter-spacing:3px}.catalog-heading .catalog-intro{font-size:12px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 16px;margin-top:22px}.catalog-featured{display:block;padding-bottom:22px}.catalog-copy{padding-top:12px}.catalog-featured .catalog-copy{padding-top:16px}.catalog-card{padding-bottom:18px}.catalog-card h2{font-size:19px;margin-bottom:8px}.catalog-featured h2{font-size:26px}.catalog-card .catalog-intro{font-size:12px;line-height:1.8}.catalog-number{margin-bottom:7px}.catalog-price{font-size:12px;margin-top:10px}.catalog-image .scene{border-radius:10px}}
@media(max-width:340px){.catalog-grid{grid-template-columns:1fr}}

/* Keep section navigation grouped at the left on every screen size. */
header{justify-content:flex-start;column-gap:18px}.section-tabs{justify-content:flex-start;gap:16px}.section-tabs button{flex:0 0 auto}
@media(max-width:600px){.section-tabs{justify-content:flex-start;gap:14px}}

body[data-section=seasonal]{background:#f6f1e5;--catalog-ink:#414b34;--catalog-muted:#73755e;--catalog-rule:#d8d0bb;--catalog-accent:#896835}
.section-tabs{flex-wrap:wrap}

/* Original supplied logotype, framed with its surrounding whitespace hidden. */
.seasonal-logo{display:inline-block;position:relative;overflow:hidden;vertical-align:middle;flex:none;mix-blend-mode:multiply}.seasonal-logo img{position:absolute;width:230%;max-width:none;height:auto;left:50%;top:50%;transform:translate(-50%,-50%);filter:grayscale(1) contrast(10)}.nav-logo{width:34px;height:28px}.hero-logo{width:140px;height:112px}.section-tabs button[data-section=seasonal]{display:flex;align-items:center;justify-content:center;min-width:44px}.seasonal-title{line-height:0!important;margin:0!important}
body[data-section=seasonal]{background:#111313;color:#e7e6df;--catalog-ink:#e7e6df;--catalog-muted:#a7aaa5;--catalog-rule:#343937;--catalog-accent:#c5b99b}body[data-section=seasonal] header{border-color:#343937}body[data-section=seasonal] .brand{color:#e7e6df}body[data-section=seasonal] .section-tabs button{color:#a7aaa5}body[data-section=seasonal] .section-tabs button[aria-pressed=true]{color:#fff;background:transparent;box-shadow:inset 0 -1px #d4d3c9}body[data-section=seasonal] .section-tabs button:hover{color:#fff}body[data-section=seasonal] .seasonal-logo{mix-blend-mode:screen}body[data-section=seasonal] .seasonal-logo img{filter:grayscale(1) contrast(10) invert(1)}body[data-section=seasonal] footer{color:#939990}body[data-section=seasonal] dialog{background:#1b1e1c;color:#e7e6df}body[data-section=seasonal] dialog p{color:#babdb6}body[data-section=seasonal] dialog button{background:#292e2b;color:#e7e6df;border-color:#464c47}body[data-section=seasonal] button:focus-visible{outline-color:#d4c5a3}
@media(max-width:600px){.nav-logo{width:29px;height:24px}.hero-logo{width:108px;height:88px}}

/* Transparent paths extracted directly from the supplied Illustrator artwork. */
.seasonal-logo{background:currentColor;mix-blend-mode:normal!important;-webkit-mask:url('/seasonal-logo.svg') center/contain no-repeat;mask:url('/seasonal-logo.svg') center/contain no-repeat}body[data-section=seasonal] .hero-logo{color:#e7e6df}

.seasonal-emblem{display:block;position:relative;overflow:hidden;width:152px;height:152px}.seasonal-emblem img{position:absolute;width:290%;max-width:none;height:auto;left:50%;top:50%;transform:translate(-50%,-50%)}@media(max-width:600px){.seasonal-emblem{width:120px;height:120px}}

/* Follow the lower-right room's interior boundary, excluding the restroom. */
.seasonal-zone{position:absolute;inset:0;background:rgba(12,19,18,.48);clip-path:polygon(68.3% 57.1%,86.4% 57.1%,86.4% 65.6%,97.4% 65.6%,97.4% 96.4%,61.5% 96.4%,61.5% 80%,68.3% 80%);pointer-events:none}.seasonal-zone-link{position:absolute;left:80%;top:79.3%;transform:translate(-50%,-50%);width:10%;height:10%;min-width:44px;min-height:44px;border:0;border-radius:8px;padding:4px;background:transparent;color:#f3f1e8;display:grid;place-items:center;z-index:1}.seasonal-zone-link .seasonal-logo{width:100%;height:100%;filter:drop-shadow(0 2px 4px #0008)}.seasonal-zone-link:hover{background:#ffffff12;color:#fff}#overlay{z-index:2}.seasonal-zone-link:focus-visible{outline:2px solid #f3f1e8;outline-offset:2px}
