:root{--paper:#f7f4ed;--ink:#282722;--wine:#6e2939;--sage:#aab29a;--line:#d9d3c8;--muted:#706d65;--serif:"Songti SC","STSong","Noto Serif CJK SC",SimSun,Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--wine);outline-offset:5px}img{display:block;width:100%}h1,h2,h3,p{margin:0}button{border:0;background:none}.masthead{max-width:1200px;margin:auto;padding:23px 42px;display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);font-family:Georgia,serif;font-size:11px;letter-spacing:2px}.hero{max-width:1080px;margin:auto;padding:64px 40px 60px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.eyebrow{font-family:Georgia,serif;font-size:11px;letter-spacing:2px;color:var(--wine)}h1{font:500 64px/1.3 var(--serif);letter-spacing:5px;margin:22px 0}h1 span{display:block;color:var(--wine)}.intro{font-size:15px;color:var(--muted);letter-spacing:1px}.text-link{display:inline-flex;gap:28px;border-bottom:1px solid var(--wine);color:var(--wine);font-size:13px;padding:7px 0;margin-top:27px}.hero-visual{position:relative;padding:0 22px}.arch{height:430px;overflow:hidden;border-radius:200px 200px 0 0;background:#e9e5dc;border:7px solid var(--paper);outline:1px solid #b5b798}.arch img{height:100%;object-fit:cover;object-position:center 44%}.date-stamp{position:absolute;bottom:-18px;left:-10px;background:var(--paper);padding:8px 20px;font:42px Georgia,serif;color:var(--wine)}.date-stamp i{font-size:28px;color:var(--sage)}.vertical-note{position:absolute;right:-9px;top:40%;writing-mode:vertical-rl;letter-spacing:3px;font:10px Georgia,serif;color:var(--muted)}.shop-nav{position:sticky;top:0;z-index:10;display:flex;justify-content:center;gap:48px;background:rgba(247,244,237,.96);backdrop-filter:blur(14px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 20px;font-size:13px}.shop-nav small{font-family:Georgia,serif;color:var(--wine);margin-right:6px}.shop-nav a.active{color:var(--wine)}.overview{max-width:1000px;margin:0 auto;padding:48px 40px 16px}.section-label{display:flex;gap:16px;font-size:12px;letter-spacing:2px;color:var(--wine);margin-bottom:12px}.section-label span:first-child{font-family:Georgia,serif}.compare{display:grid;grid-template-columns:32px 1fr auto 24px;align-items:center;gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}.compare-index{font:19px Georgia,serif;color:#9b9e8d}.compare h3{font:500 20px var(--serif);margin-bottom:8px}.compare h3 em{font:12px Georgia,serif;color:var(--muted);margin-left:8px;letter-spacing:1px}.compare p{font-size:13px}.mini-note{display:block;font-size:12px;color:var(--muted);margin-top:3px}.compare-price{font:29px Georgia,serif;color:var(--wine);text-align:right}.compare-price small{display:block;font:11px/1.5 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:var(--muted);margin-top:6px}.arrow{color:var(--wine)}.overview-note{font-size:12px;color:var(--muted);margin-top:16px}.shop{max-width:1080px;margin:0 auto;padding:62px 40px 16px;scroll-margin-top:0}.shop-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:25px;gap:20px}.shop-kicker{font:11px Georgia,serif;letter-spacing:2px;color:var(--wine);margin-bottom:12px}.shop h2{font:500 34px/1.4 var(--serif);letter-spacing:2px}.subtitle{font-size:12px;color:var(--muted);letter-spacing:1px;margin-top:6px}.shop-price{font:38px Georgia,serif;color:var(--wine);text-align:right;white-space:nowrap}.shop-price small{display:block;font:12px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:var(--muted);margin-top:4px}.shop-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:42px;align-items:start}.gallery{min-width:0}.gallery-track{display:flex;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border:1px solid var(--line);background:#eee9df}.gallery-track::-webkit-scrollbar{display:none}.slide{position:relative;flex:0 0 100%;scroll-snap-align:start;aspect-ratio:4/5;overflow:hidden;padding:0;display:block}.slide img{height:100%;object-fit:cover;object-position:center}.slide.contain img{object-fit:contain;background:#fff}.zoom-icon{position:absolute;bottom:12px;right:12px;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:rgba(247,244,237,.92);font-size:18px}.gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:12px}.gallery-caption{color:var(--wine)}.gallery-controls{display:flex;align-items:center;gap:10px;white-space:nowrap;font:12px Georgia,serif;color:var(--muted)}.gallery-controls button{font-size:18px;padding:0 8px;min-height:36px;min-width:30px}.thumbnails{display:flex;overflow-x:auto;gap:8px;padding:2px 0 10px}.thumb{padding:0;flex:0 0 48px;height:60px;border:1px solid transparent;opacity:.6}.thumb img{height:100%;object-fit:cover}.thumb[aria-current="true"]{border-color:var(--wine);opacity:1}.photo-note{color:var(--muted);font-size:11px;margin-top:7px}.detail-lead{font:22px/1.6 var(--serif);color:var(--wine);padding:0 0 22px;border-bottom:1px solid var(--line)}.fact{padding:18px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:65px 1fr;gap:15px}.fact dt{font-size:12px;color:var(--muted);letter-spacing:1px}.fact dd{margin:0;font-size:14px}.fact dd small{display:block;font-size:12px;color:var(--muted);margin-top:5px}dl{margin:0}.address-block{padding-top:22px}.address-label{color:var(--muted);font-size:11px;letter-spacing:2px}.address{font-size:14px;margin:8px 0 14px;line-height:1.8}.map-link{display:inline-flex;align-items:center;gap:24px;padding:10px 18px;border:1px solid var(--wine);font-size:12px;color:var(--wine);min-height:44px}.map-note{display:block;font-size:11px;color:var(--muted);margin-top:9px}.closing{max-width:1000px;margin:55px auto 0;border-top:1px solid var(--line);padding:46px 40px 60px;text-align:center}.closing h2{font:26px/1.5 var(--serif);margin:15px 0}.closing p{max-width:610px;margin:auto;font-size:13px;color:var(--muted);line-height:1.9}footer{border-top:1px solid var(--line);padding:22px 40px;display:flex;justify-content:space-between;gap:15px;font:10px Georgia,serif;letter-spacing:2px;color:var(--muted)}dialog{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;margin:0;border:0;background:#1d1d1b;color:#f7f4ed;padding:20px;overflow:hidden}dialog::backdrop{background:#1d1d1b}.lightbox-bar,.lightbox-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:13px;min-height:42px}#lightbox-image{height:calc(100dvh - 145px);object-fit:contain}.lightbox-actions{max-width:500px;margin:12px auto 0}.lightbox-actions button,#close-lightbox{padding:9px 6px;min-height:44px}body.modal-open{overflow:hidden}@media(hover:hover){.compare:hover h3,.shop-nav a:hover{color:var(--wine)}.map-link:hover{background:var(--wine);color:var(--paper)}.thumb:hover{opacity:1}}
@media(max-width:700px){html{scroll-padding-top:68px}.masthead{padding:18px 22px;font-size:9px;letter-spacing:1.4px}.masthead span{font-size:8px}.hero{padding:34px 25px 38px;gap:19px;grid-template-columns:1.06fr .94fr}.hero .eyebrow{font-size:8px;letter-spacing:1.1px;max-width:175px}.hero h1{font-size:34px;letter-spacing:2px;margin:16px 0}.intro{font-size:11px;letter-spacing:0;max-width:160px;line-height:1.8}.hero .text-link{font-size:11px;gap:15px;margin-top:17px}.hero-visual{padding:0 7px}.arch{height:242px;border-width:4px}.date-stamp{font-size:25px;padding:3px 9px;left:-6px;bottom:-12px}.date-stamp i{font-size:18px}.vertical-note{font-size:7px;right:-8px;letter-spacing:1.8px}.shop-nav{padding:14px 12px;justify-content:space-between;gap:6px;font-size:11px}.shop-nav small{font-size:10px;margin-right:3px}.overview{padding:30px 24px 0}.section-label{font-size:10px;gap:12px;letter-spacing:1.7px}.compare{grid-template-columns:19px 1fr auto;gap:10px;padding:20px 0}.compare-index{font-size:15px}.compare h3{font-size:18px}.compare h3 em{display:none}.compare p{font-size:11px;line-height:1.7}.mini-note{font-size:10px}.compare-price{font-size:25px}.compare-price small{font-size:9px;max-width:88px}.compare .arrow{display:none}.overview-note{font-size:11px;line-height:1.8}.shop{padding:44px 24px 0}.shop-heading{margin-bottom:20px;gap:12px}.shop h2{font-size:27px;letter-spacing:1px}.shop-kicker{font-size:10px;margin-bottom:9px;letter-spacing:1.4px}.subtitle{font-size:11px;letter-spacing:.5px}.shop-price{font-size:31px}.shop-price small{font-size:10px}.shop-layout{grid-template-columns:1fr;gap:20px}.slide{aspect-ratio:4/5}.gallery-footer{padding:8px 0 3px}.gallery-caption{font-size:11px}.thumbnails{padding-bottom:3px}.thumb{flex-basis:43px;height:53px}.detail-lead{font-size:21px;padding-bottom:15px}.fact{padding:15px 0;grid-template-columns:57px 1fr;gap:14px}.fact dd{font-size:13px}.fact dt{font-size:11px}.fact dd small{font-size:11px}.address-block{padding-top:18px}.address{font-size:13px}.closing{padding:35px 25px 42px;margin:40px 24px 0}.closing h2{font-size:23px}.closing p{font-size:12px}.closing .eyebrow{font-size:9px;letter-spacing:1.3px}footer{padding:20px 24px;font-size:8px;letter-spacing:1px}dialog{padding:14px}.lightbox-bar{font-size:11px}.lightbox-actions{font-size:12px}}
@media(max-width:360px){.hero{padding-left:20px;padding-right:20px;gap:12px}.hero h1{font-size:30px}.arch{height:222px}.masthead{padding-left:18px;padding-right:18px;letter-spacing:1px}.shop-nav{font-size:10px}.shop h2{font-size:24px}.shop-price{font-size:29px}.compare p{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Revision: concise content, synchronized variant prices, map picker. */
.shop-heading{display:grid;grid-template-columns:minmax(0,1fr) auto}.shop-price.price-range{font-size:30px}.price-value{display:block}.price-style{white-space:normal;max-width:200px}.thumbnails{position:relative}.shop h2{overflow-wrap:anywhere}.closing{padding-top:30px;padding-bottom:35px}.closing .text-link{margin-top:14px}
#map-dialog{position:fixed;inset:auto 0 max(12px,env(safe-area-inset-bottom));margin:0 auto;padding:0;width:min(420px,calc(100% - 24px));height:auto;max-height:90dvh;overflow:auto;background:transparent;color:var(--ink);border:0;border-radius:18px}
#map-dialog::backdrop{background:rgba(20,20,18,.42);backdrop-filter:blur(3px)}.map-sheet{background:var(--paper);padding:24px 22px 12px;border-radius:18px}.map-sheet h2{font:22px/1.4 var(--serif);text-align:center}.map-sheet #map-address{font-size:12px;color:var(--muted);line-height:1.8;text-align:center;padding:12px 10px 18px;user-select:text;-webkit-user-select:text}.map-sheet #map-options{border-top:1px solid var(--line)}.map-sheet #map-options a{display:flex;align-items:center;justify-content:space-between;padding:17px 8px;border-bottom:1px solid var(--line);font-size:16px;color:var(--wine);min-height:56px}.map-sheet #map-options small{font-size:11px;color:var(--muted);margin-left:10px}.map-sheet #copy-address{display:block;width:100%;padding:14px 8px;font-size:14px;min-height:48px}.map-sheet #map-status{font-size:12px;text-align:center;color:var(--wine)}.map-sheet #map-status:empty{display:none}.map-sheet #close-map{display:block;width:100%;margin-top:8px;padding:12px;border-top:1px solid var(--line);font-size:15px;min-height:48px}
@media(max-width:700px){.hero .text-link{margin-top:10px}.compare h3 em{display:block;font:10px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;letter-spacing:.5px;margin:3px 0 0}.compare{grid-template-columns:18px minmax(0,1fr) auto;gap:9px}.compare-price small{max-width:86px}.mini-note{line-height:1.8}.shop-price.price-range{font-size:25px}.price-style{max-width:140px}.shop h2{font-size:26px}.fact{grid-template-columns:64px minmax(0,1fr)}.detail-lead{font-size:20px}.closing{padding:28px 0 30px}.gallery-caption{line-height:1.6}.gallery-controls button{min-width:36px;min-height:44px}.thumb{min-width:44px;min-height:54px}.shop-nav a{min-height:28px;display:flex;align-items:center}}
@media(max-width:360px){.shop h2{font-size:23px}.shop-price.price-range{font-size:22px}.shop-heading{gap:10px}.price-style{max-width:125px;font-size:9px}.compare-price{font-size:23px}.compare-price small{max-width:75px}.compare p{font-size:10px}.mini-note{font-size:10px}}

/* Watercolor group portrait: preserve all five figures in the arch. */
.arch.illustration{background:#f7f4ed}.arch.illustration img{object-fit:contain;object-position:center center}
.arch.illustration{height:auto;aspect-ratio:2/3;max-width:320px;margin-inline:auto}.arch.illustration img{object-fit:cover}

.location-section{max-width:1000px;margin:56px auto 0;padding:0 40px}.location-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:24px}.location-heading h2{font:500 31px/1.4 var(--serif);letter-spacing:2px;margin-top:10px}.location-heading>p{font-size:11px;color:var(--muted);white-space:nowrap}.illustrated-map{position:relative;max-width:620px;margin:auto;border:1px solid var(--line);background:#f7f4ed}.illustrated-map img{height:auto;width:100%}.map-hotspot{position:absolute;width:56px;height:56px;transform:translate(-50%,-50%);border-radius:50%;background:transparent;border:1px solid transparent}.map-hotspot:hover{background:rgba(110,41,57,.08);border-color:rgba(110,41,57,.3)}.location-links{max-width:620px;margin:0 auto;display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.location-links button{display:flex;align-items:center;gap:8px;min-height:58px;padding:10px 0;font-size:12px;color:var(--wine)}.location-links small{font-family:Georgia,serif;font-size:11px}.location-links span{margin-left:4px}
@media(max-width:700px){.location-section{margin:38px 24px 0;padding:0}.location-heading{gap:10px;margin-bottom:20px}.location-heading h2{font-size:26px}.location-heading .eyebrow{font-size:9px;letter-spacing:1.5px}.location-heading>p{font-size:9px}.location-links{gap:8px}.location-links button{font-size:10px;gap:4px;min-height:52px}.location-links small{font-size:9px}.location-links span{display:none}.map-hotspot{width:48px;height:48px}}

.map-enlarge{font-size:12px;color:var(--wine);border-bottom:1px solid var(--wine);padding:6px 0;white-space:nowrap}.watercolor-map{max-width:620px}.location-links{max-width:620px}@media(max-width:700px){.map-enlarge{font-size:10px}}
