:root{color-scheme:dark;--ink:#0b110e;--cream:#f3ecdf;--quiet:#c9c3b4;--copper:#dfb984;--line:rgba(232,217,184,.2);--sans:Inter,"Helvetica Neue",Arial,sans-serif;--serif:Georgia,"Iowan Old Style","Times New Roman",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{margin:0;background:var(--ink);color:var(--cream);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}button,a{font:inherit}a{color:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--copper);outline-offset:5px}::selection{background:#b8874e;color:#141714}.skip-link{position:fixed;left:16px;top:-100px;z-index:9999;background:var(--cream);color:#111b15;padding:12px 16px}.skip-link:focus{top:10px}
.site-head{height:88px;position:fixed;inset:0 0 auto;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 clamp(20px,4vw,64px);background:linear-gradient(180deg,rgba(7,12,10,.84),rgba(7,12,10,0));pointer-events:none}.site-head>*{pointer-events:auto}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:15px;font-weight:700;letter-spacing:.17em;line-height:1.05}.brand small{display:block;letter-spacing:.23em;color:#d0bc9d;font-size:8px;font-weight:600;margin-top:7px}.brand-icon{display:grid;place-items:center;border:1px solid rgba(230,199,147,.62);width:37px;height:37px;font-family:var(--serif);font-size:20px;font-weight:400}.head-chapter{display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:.19em;font-weight:700;color:#ddc6a5}.head-rule{display:block;width:44px;height:1px;background:#b99568}.visit-shortcut{border:1px solid rgba(241,227,201,.48);border-radius:99px;background:rgba(7,12,10,.5);backdrop-filter:blur(12px);padding:13px 19px;display:flex;gap:28px;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700;transition:background .3s}.visit-shortcut:hover{background:rgba(137,103,63,.4)}.visit-shortcut>.ui-arrow{width:16px;height:16px}.concept-note{position:fixed;z-index:61;bottom:21px;left:clamp(18px,3.4vw,56px);font-size:9px;letter-spacing:.09em;color:rgba(243,236,223,.65);pointer-events:none}
.journey{position:relative;background:#0b110e}.stage{height:100svh;position:sticky;top:0;isolation:isolate;overflow:hidden;background:#101713;z-index:1;will-change:transform}.stage-scene{position:absolute;inset:-3%;background-repeat:no-repeat;background-position:center;background-size:cover;opacity:0;will-change:opacity,transform;transform:scale(1.12)}.stage-counter{background-image:url('/scenes/counter.svg');z-index:2}.stage-sushi{background-image:url('/scenes/sushi.svg');z-index:3}.stage-tuna{background-image:url('/scenes/tuna.svg');z-index:4}.stage-omakase{background-image:url('/scenes/omakase.svg');z-index:5}.stage-offsite{background-image:url('/scenes/offsite.svg');z-index:6}
.exterior{position:absolute;inset:0;background:radial-gradient(ellipse at 53% 44%,#514833 0%,#303a30 34%,#171e1b 69%,#0b1110 100%);z-index:8;overflow:hidden;transform-origin:center 50%;will-change:transform,opacity}.street-glow{position:absolute;inset:-30%;background:radial-gradient(ellipse at 50% 60%,rgba(247,176,99,.23),transparent 40%);filter:blur(30px)}.wood-beams{position:absolute;inset:0;opacity:.87;background:linear-gradient(90deg,rgba(0,0,0,.65) 1%,transparent 5%,transparent 94%,rgba(0,0,0,.7)),linear-gradient(180deg,#1b201a 0%,#273026 15%,transparent 50%,#101612 100%)}.exterior-left,.exterior-right{position:absolute;top:13%;bottom:0;width:31%;background:repeating-linear-gradient(90deg,#1d281f 0 12px,#202c23 12px 58px,#29362a 58px 62px,#111b16 62px 74px);opacity:.85;border-top:13px solid #151b16}.exterior-left{left:0;box-shadow:inset -15px 0 60px #090d0a}.exterior-right{right:0;box-shadow:inset 15px 0 60px #090d0a}.exterior-left:after,.exterior-right:after{content:"";position:absolute;top:18%;height:45%;width:50%;border:10px solid #161a15;background:repeating-linear-gradient(0deg,#121b16 0 39px,#3a4338 40px 41px),repeating-linear-gradient(90deg,#000 0 36px,#b1a68e 37px 38px);box-shadow:0 0 50px #d8ad77 inset,0 0 40px #050b09}.exterior-left:after{left:10%}.exterior-right:after{right:10%}
.exterior-title{position:absolute;top:11%;left:50%;transform:translateX(-50%);z-index:14;width:39%;min-width:310px;height:15%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:linear-gradient(180deg,#241f19,#131916);border:3px solid #756043;outline:8px solid #171d17;box-shadow:0 25px 65px #030706,0 0 75px #a37643a8 inset;letter-spacing:.35em;white-space:nowrap}.exterior-title span{font:21px var(--serif);color:#d1a06b;margin-bottom:6px}.exterior-title b{font-size:clamp(13px,1.3vw,20px);font-weight:500}.exterior-title small{font-size:8px;letter-spacing:.33em;color:#d0a875;margin-top:9px}.threshold{position:absolute;z-index:13;top:28%;bottom:12%;left:30.5%;width:39%;background:#0b0b0a;border:15px solid #161b15;outline:7px solid #564431;box-shadow:0 0 0 16px #181c15,0 8px 70px rgba(0,0,0,.8);perspective:1000px;overflow:hidden}.threshold-inside{position:absolute;inset:-12%;background:url('/scenes/counter.svg') center/cover;filter:blur(1.5px) brightness(.85);transform:scale(1.04)}.door-half{position:absolute;top:0;bottom:0;width:50%;background:linear-gradient(90deg,#332d21,#4d392a 28%,#30251e 90%,#201d18);border:8px solid #251e18;box-shadow:inset 0 0 30px #0a0b09;backface-visibility:hidden;transform-style:preserve-3d;will-change:transform}.door-left{left:0;transform-origin:left center}.door-right{right:0;transform-origin:right center}.lattice{position:absolute;inset:8% 12% 14%;background:repeating-linear-gradient(0deg,transparent 0 42px,#372d22 43px 49px),repeating-linear-gradient(90deg,#b6ab8d45 0 41px,#272c2440 41px 45px),radial-gradient(ellipse at 50% 55%,#8e8970aa,#12221c);border:7px solid #3a3025;box-shadow:inset 0 0 30px #1b201a}.door-handle{position:absolute;top:50%;width:10px;height:59px;right:8%;border-radius:6px;background:#ccb18a;box-shadow:0 0 0 3px #534733,inset 3px 0 2px #ede5bf}.door-right .door-handle{left:8%;right:auto}.lantern{position:absolute;z-index:14;top:31%;height:118px;width:64px;border-radius:25px;background:linear-gradient(90deg,#a37849,#f5d2a0 40%,#f4c78c 70%,#795537);box-shadow:0 0 70px 24px #c8964c75,0 0 150px 30px #e3a65325;display:grid;place-items:center;font:38px var(--serif);color:#3c3025;border-top:9px solid #26231d;border-bottom:9px solid #26231d}.lantern-left{left:18%}.lantern-right{right:18%;top:40%;transform:scale(.8)}.lantern:before{content:"";position:absolute;bottom:100%;left:50%;height:80px;border-left:3px solid #191e17}.street-floor{position:absolute;left:0;right:0;bottom:-6%;height:18%;background:linear-gradient(180deg,#252822,#101711);clip-path:polygon(0 20%,100% 0,100% 100%,0 100%)}.floor-reflection{position:absolute;bottom:1%;left:29%;height:12%;width:44%;background:radial-gradient(ellipse at 50% 0%,#eab66d44,transparent 74%);filter:blur(17px)}
.cinema-vignette{position:absolute;z-index:10;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(4,8,7,.74) 0%,rgba(5,9,8,.34) 37%,transparent 72%),linear-gradient(0deg,rgba(5,8,7,.78) 0%,transparent 35%,rgba(3,7,5,.36) 100%)}.film-grain{position:absolute;z-index:11;inset:0;pointer-events:none;opacity:.2;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E")}.scene-marker{position:absolute;right:clamp(18px,4vw,66px);bottom:52px;z-index:21;display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.18em;color:#ddc5a4}.scene-marker span:first-child{font-size:18px;color:#fff}.marker-line{height:1px;width:60px;background:#b89b74}.art-caption{position:absolute;z-index:22;left:clamp(18px,4vw,64px);bottom:52px;color:#a8a89c;font-size:8px;letter-spacing:.14em}.hotspot{z-index:22;position:absolute;top:53%;left:61%;width:64px;height:64px;border:1px solid #ead1a9;border-radius:50%;display:grid;place-items:center;background:rgba(16,24,20,.42);backdrop-filter:blur(8px);color:#fff;box-shadow:0 0 0 12px #ecb77918}.hotspot:before,.hotspot:after{content:"";position:absolute;background:#f4e1bd}.hotspot:before{width:18px;height:1px}.hotspot:after{width:1px;height:18px}.hotspot-pulse{position:absolute;inset:-14px;border-radius:50%;border:1px solid #e9bb8066;animation:pulse 2.7s ease-out infinite}.hotspot-label{position:absolute;top:74px;white-space:nowrap;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.15em;text-shadow:0 1px 10px #000}.hotspot[hidden]{display:none!important}@keyframes pulse{0%{transform:scale(.85);opacity:.7}100%{transform:scale(1.4);opacity:0}}
.beats{position:relative;z-index:20;margin-top:-100svh;pointer-events:none}.beat{position:relative;min-height:100svh;display:flex;align-items:center;padding:120px clamp(25px,8.3vw,150px) 80px}.copy{max-width:570px;opacity:0;transform:translate3d(0,48px,0);transition:opacity .35s ease,transform .5s ease;pointer-events:none;position:relative}.copy:before{content:"";position:absolute;z-index:-1;inset:-85px -90px;background:radial-gradient(ellipse at 35% 55%,#06100c96,transparent 72%);pointer-events:none}.beat.is-active .copy{opacity:1;transform:translate3d(0,0,0);pointer-events:auto}.copy-right{margin-left:auto;margin-right:0}.copy-center{margin:auto;text-align:center}.copy-center:before{background:radial-gradient(ellipse at center,#07120ed9,transparent 73%)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.26em;color:#ebc79a;text-transform:uppercase;display:block;line-height:1.5}.eyebrow i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#e8b878;margin-right:10px;vertical-align:middle}.copy h1,.copy h2,.visit-intro h2,.find-us h3{font:400 clamp(52px,6.9vw,113px)/.98 var(--serif);letter-spacing:-.06em;margin:25px 0 23px;text-wrap:balance}.copy h2{font-size:clamp(51px,6.5vw,103px)}.copy em,.visit-section em{font-weight:400;color:#dbaf7d}.copy p{font-size:clamp(14px,1.18vw,17px);line-height:1.75;letter-spacing:.005em;color:#e4dfd1;max-width:390px;text-shadow:0 2px 14px #000}.copy-center p{margin-inline:auto}.scroll-prompt,.mini-instruction{display:inline-flex;gap:20px;align-items:center;margin-top:28px;font-size:10px;letter-spacing:.22em;font-weight:800;color:#eecb9f}.scroll-prompt .ui-arrow{width:22px;height:22px;animation:indicate 2s ease-in-out infinite}@keyframes indicate{50%{transform:translateY(9px)}}.story-trigger,.end-link{pointer-events:auto;display:inline-flex;align-items:center;gap:50px;margin-top:20px;color:#f6d0a2;background:transparent;border:0;border-bottom:1px solid #ba9367;padding:0 0 13px 0;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.08em}.story-trigger:hover,.end-link:hover{color:white}.story-trigger .ui-arrow,.end-link .ui-arrow{width:23px;height:23px}.scroll-rail{position:absolute;z-index:30;right:18px;top:100svh;bottom:0;width:2px;background:#f5dfc71c;pointer-events:none}.scroll-rail>div{position:sticky;top:0;background:var(--copper);width:2px;height:0}
.visit-section{background:#e8e2d5;color:#1b261f;padding:clamp(70px,9vw,135px) clamp(22px,7vw,120px) 35px;position:relative;z-index:35}.visit-section .eyebrow{color:#875d37}.visit-intro{max-width:1000px;margin-bottom:72px}.visit-intro h2{font-size:clamp(58px,6.7vw,108px);color:#17251f}.visit-intro em{color:#9d774f}.visit-intro p{font-size:16px;max-width:600px;line-height:1.7;color:#5e665c}.visit-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(25px,6vw,100px);align-items:start}.hours-card{background:#24342d;color:#f1e7d5;padding:clamp(24px,3.7vw,55px);box-shadow:16px 18px 0 #c5baaa}.hours-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;font-weight:800;letter-spacing:.15em;color:#d5bc98}.hours-badge{padding:7px 10px;border:1px solid #b8a6895e;font-size:9px;letter-spacing:.08em;text-align:right}.hours-card h3{font:400 clamp(23px,2.7vw,38px)/1.2 var(--serif);margin:40px 0 8px}.status-descriptor{font-size:12px;color:#cbc0ab;line-height:1.7;margin:0 0 26px}.weekly-hours{border-top:1px solid #fff3;min-height:150px}.hours-row{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #fff2;font-size:12px}.hours-row.is-today{color:#f1c68c}.hours-row strong{font-weight:500;text-align:right}.visit-note{color:#e1c7a7;font-size:13px;line-height:1.7}.visitor-notes h3{font:400 clamp(32px,3vw,48px) var(--serif);margin:0 0 25px}.note-row{display:grid;grid-template-columns:48px 1fr;padding:15px 0;border-top:1px solid #bbb3a4}.note-row>span{font:14px var(--serif);color:#9d774f}.note-row p{margin:0;color:#586157;font-size:14px;line-height:1.7}.note-row strong{color:#233028}.find-us{border-top:1px solid #bcb2a3;margin-top:95px;padding:75px 0;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.find-us h3{font-size:clamp(48px,5vw,82px);margin:15px 0}.find-us p{color:#586157;line-height:1.7;max-width:380px}.map-placeholder{min-height:290px;background:repeating-linear-gradient(0deg,#c5c4b2 0 1px,transparent 1px 51px),repeating-linear-gradient(90deg,#c5c4b2 0 1px,transparent 1px 51px),#d5d2c3;position:relative;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:10px;overflow:hidden;border:1px solid #c8bfaa}.map-road{height:30px;position:absolute;background:#efeee2;left:-20%;right:-20%;transform:rotate(-24deg);box-shadow:0 0 0 1px #c7bfaf}.map-road-two{transform:rotate(36deg);width:24px;height:150%;top:-30%;left:65%;right:auto}.map-pin{z-index:2;font-size:46px;color:#6b5e46}.map-placeholder span{z-index:2;font-size:11px;max-width:200px;text-align:center;background:#e8e2d5;padding:10px 13px;line-height:1.6;color:#4f594f}.visit-footer{border-top:1px solid #c4bcb1;display:flex;justify-content:space-between;gap:20px;align-items:start;padding-top:24px;font-size:11px;color:#5d665c}.visit-footer a{text-decoration:none}.visit-footer details{max-width:340px}.visit-footer summary{cursor:pointer;text-decoration:underline}.visit-footer details p{font-size:12px;line-height:1.6}
.detail-panel{position:fixed;z-index:100;right:clamp(18px,4vw,70px);bottom:clamp(18px,5vw,70px);width:min(540px,calc(100vw - 36px));padding:36px 39px 38px;background:#eae4d7;color:#233128;box-shadow:0 22px 90px #030605d9;border-top:5px solid #ac865b;max-height:calc(100svh - 120px);overflow:auto}.detail-panel[hidden]{display:none}.detail-panel h2{font:400 clamp(30px,3vw,50px)/1.08 var(--serif);letter-spacing:-.035em;margin:18px 0}.detail-panel p{font-size:14px;line-height:1.75;color:#4d594f}.detail-panel small{color:#89674e;line-height:1.6;display:block}.detail-panel .eyebrow{color:#8b643d}.detail-close{position:absolute;right:20px;top:17px;border:0;background:none;color:#24342d;font-size:20px}
.detail-media{margin:10px 0 22px}.detail-media-frame{position:relative;aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:#d8d0c2;box-shadow:0 10px 30px rgba(32,25,22,.18);touch-action:pan-y;user-select:none;-webkit-user-select:none}.detail-media-frame img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.detail-media-nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:999px;border:0;background:rgba(24,18,16,.72);color:#f4ecdf;font-size:28px;line-height:1;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px)}.detail-media-prev{left:14px}.detail-media-next{right:14px}.detail-media-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;min-height:22px}.detail-media-dots{display:flex;gap:8px;flex-wrap:wrap}.detail-media-dot{width:9px;height:9px;border-radius:999px;border:0;background:#c4afa7;cursor:pointer;padding:0}.detail-media-dot.is-active{background:#a52d33;transform:scale(1.1)}.detail-media-credit{font-size:11px;line-height:1.5;color:#7b655d;text-align:right}.detail-media-caption{margin-top:10px!important;font-size:12px!important;line-height:1.65!important;color:#5b4f49!important}
.detail-media-nav[hidden],.detail-media-dots[hidden]{display:none!important}
@media(max-width:900px){.site-head{height:73px}.head-chapter{display:none}.copy{max-width:460px}.beat{padding-left:6vw;padding-right:6vw}.exterior-title{width:47%}.threshold{width:45%;left:27.5%}.lantern-left{left:11%}.lantern-right{right:10%}.exterior-left,.exterior-right{width:29%}.visit-layout{grid-template-columns:1fr}.find-us{grid-template-columns:1fr;gap:25px}.visit-footer{flex-wrap:wrap}.concept-note{font-size:8px;max-width:55%}}
@media(max-width:600px){.site-head{padding:0 16px;height:65px}.brand{font-size:10px;gap:7px;letter-spacing:.09em}.brand-icon{width:30px;height:30px;font-size:16px}.brand small{font-size:6px;margin-top:4px;letter-spacing:.11em}.visit-shortcut{padding:11px 13px;gap:12px;font-size:9px}.visit-shortcut-text{max-width:105px}.concept-note{bottom:13px;left:13px;max-width:74%;font-size:7px;letter-spacing:.04em}.scene-marker{bottom:25px;right:15px;font-size:9px}.scene-marker span:first-child{font-size:15px}.marker-line{width:28px}.art-caption{display:none}.beat{min-height:100svh;align-items:flex-end;padding:108px 22px 105px}.beat-opening{align-items:center}.beat-threshold{align-items:flex-end}.copy{max-width:100%;width:100%}.copy:before{inset:-80px -40px;background:linear-gradient(0deg,rgba(5,10,8,.92),rgba(5,10,8,.57) 61%,transparent 100%);filter:blur(12px)}.copy-right{margin-left:0}.copy h1{font-size:clamp(43px,12vw,65px);margin:18px 0}.copy h2{font-size:clamp(47px,12.6vw,67px);margin:16px 0}.copy p{font-size:13px;line-height:1.6;max-width:320px}.eyebrow{font-size:9px;letter-spacing:.18em}.copy-center{text-align:left}.copy-center p{margin-left:0}.copy-center:before{background:linear-gradient(0deg,#06100ce3,transparent)}.story-trigger{margin-top:8px}.scroll-prompt{margin-top:12px}.exterior-title{min-width:0;width:69%;top:17%;height:13%;letter-spacing:.17em}.exterior-title span{font-size:16px}.exterior-title b{font-size:14px}.exterior-title small{font-size:6px}.threshold{left:11%;width:78%;top:31%;bottom:13%;border-width:11px}.exterior-left,.exterior-right{width:11%;opacity:.9}.exterior-left:after,.exterior-right:after{display:none}.lantern{height:66px;width:36px;font-size:22px;top:32%;border-width:5px;z-index:16}.lantern-left{left:0}.lantern-right{right:0;top:38%}.lantern:before{height:40px}.cinema-vignette{background:linear-gradient(0deg,rgba(1,7,5,.76) 0%,rgba(3,9,7,.13) 48%,rgba(3,7,5,.43) 100%)}.hotspot{top:37%;left:60%;width:50px;height:50px}.hotspot-label{top:59px;font-size:8px}.visit-section{padding:70px 22px 23px}.visit-intro{margin-bottom:42px}.visit-intro h2{font-size:clamp(49px,12vw,72px)}.visit-intro p{font-size:14px}.hours-card{padding:24px;box-shadow:7px 9px 0 #c5baaa}.hours-top{font-size:9px}.hours-card h3{margin-top:27px}.find-us{margin-top:65px;padding:48px 0}.map-placeholder{min-height:230px}.visit-footer{font-size:10px}.detail-panel{padding:30px 25px;bottom:15px;right:15px;width:min(100vw - 30px,540px)}.detail-media{margin:8px 0 18px}.detail-media-frame{border-radius:16px}.detail-media-nav{width:38px;height:38px;font-size:24px}.detail-media-credit{font-size:10px;max-width:52%;text-align:right}.stage-scene{background-position:56% center}.stage-tuna{background-position:63% center}.stage-sushi{background-position:62% center}.stage-offsite{background-position:58% center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition-duration:0s!important}.copy{transform:none}.hotspot-pulse{display:none}}

/* November 2026 art-direction pass: charcoal, timber, rice paper, and lantern crimson.
   Keep the art placeholders explicitly marked until authorized photography is supplied. */
:root{
  --ink:#171312;
  --cream:#f2e8db;
  --quiet:#cbbbab;
  --copper:#c58b68;
  --crimson:#a52d33;
  --crimson-bright:#d04b45;
  --wood:#6b4637;
  --paper:#ede4d7;
  --line:rgba(236,210,189,.22);
}
body{background:#171312}
::selection{background:#a52d33;color:#fff3e7}
button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:#f0a69a}
.site-head{background:linear-gradient(180deg,rgba(22,13,12,.93),rgba(22,13,12,0))}
.brand-icon{border:1px solid rgba(206,102,96,.83);color:#e6ada4;border-radius:50%;font-size:17px}
.brand small{color:#dcc1b1}
.head-chapter{color:#e7cabb}.head-rule{background:#9e4141}
.visit-shortcut{border-color:rgba(235,205,190,.55);background:rgba(32,20,18,.63)}
.visit-shortcut:hover{background:rgba(121,38,39,.68)}
.concept-note{color:rgba(246,231,218,.72)}
.journey{background:#181210}
.stage{background:#211917}
.exterior{background:radial-gradient(ellipse at 50% 44%,#655344 0%,#413630 31%,#251d1b 66%,#141011 100%)}
.street-glow{background:radial-gradient(ellipse at 50% 60%,rgba(218,157,106,.22),transparent 43%)}
.wood-beams{background:linear-gradient(90deg,rgba(11,6,6,.65) 0%,transparent 9%,transparent 92%,rgba(10,6,6,.69)),linear-gradient(180deg,#352c28 0%,#42332b 12%,transparent 55%,#241b18 100%)}
.exterior-left,.exterior-right{background:repeating-linear-gradient(90deg,#3f3631 0 7px,#4b423b 7px 57px,#594d43 57px 60px,#342b27 60px 74px);border-top-color:#312522}
.exterior-left{box-shadow:inset -15px 0 60px #190e0d}.exterior-right{box-shadow:inset 15px 0 60px #190e0d}
.exterior-left:after,.exterior-right:after{border-color:#332923;background:repeating-linear-gradient(0deg,#25201b 0 39px,#55463b 40px 41px),repeating-linear-gradient(90deg,transparent 0 36px,#dbc3a955 37px 38px);box-shadow:0 0 44px #c2936a44 inset,0 0 34px #160f0c}
.exterior-title{background:linear-gradient(180deg,#4d3830,#30221d);border-color:#8a6a54;outline-color:#302521;box-shadow:0 19px 65px #0d0707,0 0 50px #d5a58434 inset}
.exterior-title span{color:#d97d76}.exterior-title small{color:#e0bc9c}
.threshold{border-color:#3a2822;outline-color:#7e5943;box-shadow:0 0 0 16px #2e211d,0 8px 70px #130907e6}
.door-half{background:linear-gradient(90deg,#4e3029,#6d4934 35%,#51382d 90%,#2d241f);border-color:#412c25;box-shadow:inset 0 0 30px #170e0b}
.lattice{border-color:#49352d;box-shadow:inset 0 0 30px #251915;background:repeating-linear-gradient(0deg,transparent 0 42px,#563d2c 43px 49px),repeating-linear-gradient(90deg,#b19c7a45 0 41px,#42352d40 41px 45px),radial-gradient(ellipse at 50% 55%,#b2a28b88,#3e2b27)}
.door-handle{background:#e5bd92;box-shadow:0 0 0 3px #71513e,inset 3px 0 2px #fff0ce}
.lantern{background:linear-gradient(90deg,#661b24,#b73137 35%,#d14743 58%,#9e252f 78%,#5a1520);color:#f3d4c0;box-shadow:0 0 55px 15px #be30345e,0 0 130px 22px #ba51351c;border-color:#2d1717}
.lantern span{font-size:0}.lantern span:before{content:"";display:block;height:47px;width:8px;border-left:1px solid #f4d1c17a;border-right:1px solid #f4d1c17a}
.street-floor{background:linear-gradient(180deg,#403730,#191311)}.floor-reflection{background:radial-gradient(ellipse at 50% 0%,#c8493d37,transparent 74%)}
.cinema-vignette{background:linear-gradient(90deg,rgba(16,8,8,.79) 0%,rgba(22,10,8,.38) 38%,transparent 75%),linear-gradient(0deg,rgba(11,5,5,.78) 0%,transparent 42%,rgba(17,7,7,.36) 100%)}
.hotspot{border-color:#e7b3a7;background:rgba(56,21,22,.56);box-shadow:0 0 0 12px #9a2e3420}
.hotspot:before,.hotspot:after{background:#ffe9d6}.hotspot-pulse{border-color:#d6646c9a}
.copy:before{background:radial-gradient(ellipse at 35% 55%,#1c100dcf,transparent 73%)}
.copy-center:before{background:radial-gradient(ellipse at center,#1a0c0edb,transparent 75%)}
.eyebrow{color:#f3b2a7}.eyebrow i{background:#cd4248}
.copy em{color:#e9b0a4}
.copy p{color:#efe3d7}
.scroll-prompt,.mini-instruction{color:#e8b6aa}
.story-trigger,.end-link{color:#ffd1c0;border-bottom-color:#ad4a44}
.scroll-rail{background:#f5dfc71c}.scroll-rail>div{background:#b53d42}
.opening-disclaimer{display:flex;align-items:baseline;flex-wrap:wrap;gap:9px;color:#f3cfc1;text-decoration:none;border-bottom:1px solid #be8b806f;width:fit-content;padding:0 0 10px;margin-top:20px;font-family:var(--serif);font-size:20px;letter-spacing:-.02em}
.opening-disclaimer sup{color:#ee817d;font-family:var(--sans);font-size:16px;top:-.1em;position:relative}
.opening-disclaimer span{color:#e4b6a6;font:600 10px var(--sans);letter-spacing:.045em}
.opening-disclaimer:hover span{text-decoration:underline}
.visit-section{background:var(--paper);color:#261a19}
.visit-section .eyebrow{color:#9e343b}
.visit-intro h2{color:#251b19}
.visit-intro h2 sup{font:400 .26em var(--sans);vertical-align:top;position:relative;top:.07em;color:#a52d33;letter-spacing:0}
.visit-section em{color:#9d343b}
.visit-intro p{color:#64534d}
.hours-card{background:#2d211f;color:#f4e8d9;box-shadow:14px 16px 0 #d4c3af}
.hours-top{color:#e5b0a5}.hours-badge{border-color:#c87c6a70}
.status-descriptor{color:#d0b9a8}.hours-row.is-today{color:#f1a19b}
.visit-note{color:#e2bcb0}
.ig-visit-link{display:inline-block;margin-top:19px;padding:12px 0;color:#ffe2d5;text-decoration:none;border-bottom:1px solid #b45e54;font-weight:700;font-size:12px;letter-spacing:.04em}
.ig-visit-link:hover,.directions-link:hover{color:#d97772}
.visitor-notes h3{font:400 clamp(31px,3vw,48px)/1.14 var(--serif);margin:12px 0 21px;color:#2b1c1a}
.rules-lede{max-width:490px;font-size:14px;line-height:1.7;color:#614d47;margin:0 0 18px}
.rules-lede strong{color:#98333a}
.note-row{border-top-color:#c9bcb2}.note-row>span{color:#a4363d}
.note-row p{color:#5b4a44}.note-row strong{color:#2e211f}
.rules-footer{padding-top:18px;border-top:1px solid #c9bcb2;font-size:12px;line-height:1.75;color:#746058}
.find-us{border-top-color:#cabdb1}.find-us p{color:#63554f}
.directions-link{display:inline-block;margin-top:10px;padding:9px 0;color:#983239;font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid #c28a83}
.find-us .parking-caveat{font-size:12px;max-width:480px;color:#8b6a61}
.map-placeholder{border-color:#d0bfae;background:repeating-linear-gradient(0deg,#cbbdaf 0 1px,transparent 1px 51px),repeating-linear-gradient(90deg,#cbbdaf 0 1px,transparent 1px 51px),#e0d3c4}
.map-road{background:#f7eee3;box-shadow:0 0 0 1px #cab9a6}.map-placeholder span{background:#f0e3d5;color:#6f5750}
.map-pin{color:#ab3c43}.visit-footer{border-top-color:#c9bbae;color:#745f56}
.detail-panel{background:#f2e6d8;color:#261b19;border-top-color:#ac3842}
.detail-panel p{color:#69544c}.detail-panel small{color:#976e64}.detail-panel .eyebrow{color:#9e343b}.detail-close{color:#492928}
@media(max-width:600px){
  .copy:before{background:linear-gradient(0deg,rgba(23,10,9,.96),rgba(23,10,9,.67) 65%,transparent 100%)}
  .copy-center:before{background:linear-gradient(0deg,#1d0c0be8,transparent)}
  .cinema-vignette{background:linear-gradient(0deg,rgba(14,5,5,.78),rgba(19,7,6,.12) 48%,rgba(13,5,5,.46) 100%)}
  .opening-disclaimer{font-size:16px;line-height:1.25;margin-top:15px}
  .opening-disclaimer span{font-size:9px}
  .beat-opening{align-items:flex-end;padding-bottom:128px}
  .visit-section{padding-top:80px}.hours-card{box-shadow:7px 9px 0 #d4c3af}
  .visitor-notes{padding-top:17px}
}

/* The persistent navigation must remain readable above light visitor guidance. */
.site-head.over-visit{background:rgba(35,24,22,.96);border-bottom:1px solid #9f605341;box-shadow:0 7px 30px #2a16131c}
#visit,#visit-rules,#location{scroll-margin-top:83px}
@media(max-width:600px){#visit,#visit-rules,#location{scroll-margin-top:68px}}


/* November 10 — precise entrance retrofit, not a new visual concept.
   Based on supplied images: concrete walls, red-brown wood, white noren,
   two crimson lanterns, vertical name plaque. Only left door leaf opens. */
.brand-icon{width:43px;height:43px;flex:none;display:block;overflow:hidden;background:#fff;border:1px solid rgba(242,219,201,.8);border-radius:50%;box-shadow:0 1px 14px #160c0b70}
.brand-icon img{width:100%;height:100%;object-fit:contain;display:block}
.exterior{background:radial-gradient(ellipse at 50% 38%,#8a8278 0%,#655d58 48%,#3c3330 87%,#211916 100%)}
.wood-beams{opacity:.8;background:linear-gradient(90deg,#251a18b3 0%,transparent 20%,transparent 84%,#251a18ac 100%),repeating-linear-gradient(0deg,transparent 0 93px,#a99d8f1b 94px 96px),linear-gradient(180deg,#554941,#897e74 52%,#53443f)}
.exterior-left,.exterior-right{top:15%;width:28%;border-top:0;opacity:.75;background:linear-gradient(180deg,#6c6259,#8e8176 68%,#54443e);box-shadow:none}
.exterior-left:after{left:10%;width:44%;top:46%;height:32%;border:6px solid #79574a;background:linear-gradient(90deg,#3e302a 0 12%,#716255 12% 16%,#37312a 16% 84%,#816958 84% 88%,#3c312c 88%);box-shadow:inset 0 0 20px #1a1212}
.exterior-right:after{right:8%;width:42%;top:37%;height:23%;border:6px solid #ddd1be;background:linear-gradient(90deg,#262421 0 47%,#ddd1be 47% 53%,#262421 53%);box-shadow:inset 0 0 15px #1a1110}
.exterior-title{display:none}
.roof-edge{position:absolute;z-index:12;top:20.4%;left:22.4%;width:56%;height:4%;background:linear-gradient(180deg,#6e2f2b 0 32%,#4a2523 32% 58%,#2d1b1b 58%);transform:skewY(-2deg);box-shadow:0 9px 18px #2114105c;clip-path:polygon(0 0,95% 0,100% 100%,0 100%)}
.threshold{top:30%;bottom:16%;left:32%;width:36%;border:9px solid #7d4233;outline:5px solid #6b4a3d;box-shadow:0 0 0 12px #49342d,0 15px 45px #1b0e0de0;background:#18100e}
.door-half{background:linear-gradient(100deg,#7a422e,#a25b3b 26%,#633324 76%,#45271e);border:8px solid #6d3626;box-shadow:inset 0 0 18px #21100c}
.door-left{transform-origin:left center}.door-right{transform-origin:right center}
.lattice{inset:8% 9% 8%;border:6px solid #683828;background:repeating-linear-gradient(0deg,transparent 0 66px,#844c36 66px 74px),repeating-linear-gradient(90deg,transparent 0 63px,#995a40 63px 70px),radial-gradient(ellipse at 50% 60%,#b9a59575 0%,#342421c9 80%);box-shadow:inset 0 0 24px #150f0ee6}
.door-handle{right:9%;top:50%;width:7px;height:35px;background:#ccb398;box-shadow:0 0 0 2px #5b3128}
.door-right .lattice{background:repeating-linear-gradient(0deg,transparent 0 66px,#844c36 66px 74px),repeating-linear-gradient(90deg,transparent 0 63px,#995a40 63px 70px),radial-gradient(ellipse at 50% 60%,#b9a59575 0%,#342421c9 80%)}
.lantern{top:23.5%;height:76px;width:45px;border-width:6px;border-radius:27% 27% 32% 32%;z-index:17;box-shadow:0 0 24px #ba30355e,0 0 70px #b0312924}
.lantern-left{left:32%}.lantern-right{top:23.5%;right:32%;transform:none}
.lantern:before{height:20px;border-left:2px solid #291b18}
.lantern span{font-size:11px!important;font-family:serif;line-height:.85;color:#1b1211!important;text-align:center;font-weight:800;text-shadow:0 1px #c95851}
.lantern span:before{display:none!important}
.noren{position:absolute;z-index:16;left:33%;width:34%;top:27.3%;height:12.4%;display:flex;align-items:flex-start;justify-content:space-between;gap:1.4%;padding:0 .2%;filter:drop-shadow(0 11px 18px #21180f66);pointer-events:none}
.noren::before{content:"";position:absolute;left:0;right:0;top:-3px;height:7px;border-radius:2px 2px 0 0;background:linear-gradient(180deg,#d7c8b3 0%,#b9a48c 100%);box-shadow:0 1px 0 #f9efde inset,0 1px 0 #8f7a67}
.noren-panel{position:relative;flex:1 1 0;height:100%;background:linear-gradient(180deg,#fff8ec 0%,#efe6da 48%,#ddd0c1 100%);border-top:4px solid #baa994;border-left:1px solid #f9efde88;border-right:1px solid #bba58f66;border-bottom:1px solid #c7b39e;overflow:hidden;clip-path:polygon(0 0,100% 0,100% 97%,70% 99%,34% 100%,0 98%)}
.noren-panel::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,#ffffff36 16%,transparent 34%,transparent 100%)}
.noren-panel::after{content:"";position:absolute;left:0;right:0;top:0;height:24%;background:linear-gradient(180deg,#ffffff34,transparent)}
.noren-panel-1{transform:translateY(0)}
.noren-panel-2{transform:translateY(1px)}
.noren-panel-3{transform:translateY(0)}
.noren-copy{position:absolute;left:50%;top:47%;transform:translate(-50%,-2%);z-index:1;color:#44372f;font:clamp(13px,1.55vw,24px)/1.08 serif;letter-spacing:.16em;text-shadow:0 1px 0 #fff9ef;white-space:nowrap}
.facade-plaque{position:absolute;z-index:13;left:72%;top:31%;width:clamp(31px,3.5vw,54px);height:clamp(105px,15vh,182px);display:flex;align-items:center;justify-content:center;background:linear-gradient(90deg,#87512f,#bb8750 35%,#8b572e);border:2px solid #5b3524;box-shadow:6px 8px 10px #24171172;color:#291d19;text-align:center;font:clamp(23px,2.2vw,35px)/1.25 serif}
.facade-window{position:absolute;z-index:12;left:78%;top:54%;width:clamp(40px,7vw,110px);height:clamp(36px,9vh,85px);border:7px solid #d0c0a8;background:linear-gradient(90deg,#262420 0 47%,#d0c0a8 48% 53%,#292420 54%);box-shadow:4px 7px 18px #160c0d76}
.entrance-sign{position:absolute;z-index:19;left:43%;top:42%;width:15%;min-width:83px;padding:5px 7px;text-align:center;background:#ebe7db;border:2px solid #655044;color:#34302c;font:700 clamp(5px,.5vw,7px)/1.35 Arial,sans-serif;box-shadow:1px 1px 4px #221716}
.street-floor{height:19%;background:repeating-linear-gradient(0deg,#99897c 0 1px,#766960 2px 18px,#9e8c7e 19px 20px);clip-path:polygon(0 22%,100% 2%,100% 100%,0 100%)}
.floor-reflection{background:radial-gradient(ellipse at 50% 0%,#bd62464d,transparent 76%)}
@media(max-width:900px){
  .threshold{left:26%;width:48%}.noren{left:27%;width:46%}
  .lantern-left{left:26%}.lantern-right{right:26%}
  .roof-edge{left:19%;width:65%}.facade-plaque{left:78%;top:33%}.facade-window{display:none}
  .entrance-sign{left:41%;width:19%;}
}
@media(max-width:600px){
  .brand-icon{width:36px;height:36px}.brand{gap:8px}.brand small{font-size:5.5px}
  .exterior-left,.exterior-right{width:13%}.exterior-left:after,.exterior-right:after{display:none}
  .roof-edge{top:20%;left:4%;width:92%;height:4%}
  .threshold{top:30.5%;bottom:14%;left:11%;width:78%;border:7px solid #7d4233;outline:3px solid #6b4a3d;box-shadow:0 0 0 8px #49342d}
  .noren{left:12%;width:76%;top:28%;height:12.9%}.noren-copy{font-size:16px;letter-spacing:.14em}
  .lantern{top:25%;width:35px;height:62px;z-index:20}.lantern-left{left:13%}.lantern-right{top:25%;right:13%}
  .lantern span{font-size:9px!important}
  .facade-plaque{left:auto;right:2%;top:43%;width:23px;height:80px;font-size:18px;border-width:1px}
  .facade-window{display:none}.entrance-sign{top:44%;left:39%;min-width:70px;width:22%;font-size:5px;padding:3px}
  .lattice{inset:6% 6% 7%;border-width:5px;background-size:auto}
  .cinema-vignette{background:linear-gradient(0deg,rgba(16,7,6,.85) 0%,rgba(16,7,6,.18) 61%,rgba(16,7,6,.32) 100%)}
}

/* Entrance correction — the real frontage has one small white-framed window
   to the right of the door. Remove two legacy decorative windows. */
.exterior-left::after,
.exterior-right::after {
  content: none;
  display: none;
}

/* Parking v2 — screenshot-aligned vector; no invented road layout. */
.find-us{grid-template-columns:minmax(0,0.92fr) minmax(0,1.08fr);gap:clamp(24px,5vw,70px);align-items:center}
.find-us .location-content{min-width:0}
.find-us h3{font-size:clamp(39px,4.8vw,73px);line-height:1.04;letter-spacing:-.045em;margin:17px 0 24px}
.find-us .location-content>p:not(.parking-caveat){max-width:470px;margin:0 0 22px;font-size:14px;line-height:1.7}
.find-us .parking-caveat{font-size:11px;line-height:1.55;max-width:420px;margin:17px 0 0;color:#846e64}
.location-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:stretch}
.location-actions>a{display:inline-flex;align-items:center;gap:9px;min-height:45px;white-space:nowrap;padding:10px 14px;border:1px solid #9e756d;color:#4d2a2a;background:#f7ebe0;text-decoration:none;font-size:12px;font-weight:700;transition:background .2s ease,border-color .2s ease}
.location-actions>a:hover,.location-actions>a:focus-visible{background:#ecd3c6;border-color:#983239}
.location-link-dot{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#a43c44;color:#fff;font-size:10px;line-height:1}
.location-link-parking{font-size:12px}
.parking-vector{margin:0;width:100%;min-width:0}
.parking-vector img{display:block;width:100%;height:auto;aspect-ratio:757/748;object-fit:contain;border:1px solid #cbb9a8;background:#f7f2eb}
.parking-vector figcaption{padding:8px 0 0;font-size:10px;line-height:1.5;color:#7a6961}
@media(max-width:900px){.find-us{grid-template-columns:1fr;gap:25px}.parking-vector{width:min(100%,550px);margin-inline:auto}}
@media(max-width:600px){.find-us h3{font-size:clamp(37px,10vw,54px);max-width:380px}.find-us .location-content>p:not(.parking-caveat){font-size:13px}.location-actions{gap:8px}.location-actions>a{flex:1 1 140px;justify-content:center;padding:10px 9px;font-size:11px}.parking-vector figcaption{font-size:10px}}
/* The small concept disclaimer belongs over the cinematic scene, not the light visit guide. */
.site-head.over-visit + .concept-note{opacity:0}

/* Concise optional brand history, revealed at the threshold instead of interrupting scroll. */
.history-trail{list-style:none;margin:23px 0 15px;padding:0;border-top:1px solid #cdb7aa}
.history-trail[hidden],.detail-source[hidden]{display:none}
.history-trail li{display:grid;grid-template-columns:53px minmax(0,1fr);gap:15px;padding:13px 0;border-bottom:1px solid #cdb7aa}
.history-trail time{font:400 17px/1.2 var(--serif);color:#a43b42}
.history-trail strong{display:block;font-size:13px;line-height:1.4;color:#32231f}
.history-trail span{display:block;margin-top:3px;font-size:12px;line-height:1.55;color:#65534d}
.detail-source{display:inline-flex;align-items:center;gap:15px;margin:13px 0;color:#973940;font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid #aa666a;padding-bottom:5px}
.detail-source:hover,.detail-source:focus-visible{color:#63242c}
.visit-footer{justify-content:flex-end}
@media(max-width:600px){.history-trail li{grid-template-columns:45px minmax(0,1fr);gap:9px;padding:10px 0}.history-trail span{font-size:11.5px}.history-trail strong{font-size:12px}}

/* The story hotspot follows the same scroll-linked visual opacity as its scene. */
.hotspot{opacity:0;pointer-events:none}

/* Entrance: paper noren hangs behind the two lanterns, as on the real façade. */
.lantern{z-index:21}
@media(min-width:601px){.lantern-left{left:31.5%}.lantern-right{right:31.5%}}
@media(max-width:600px){.lantern{z-index:21}.lantern-left{left:11%}.lantern-right{right:11%}}

/* Restrained maker attribution and social link in the visitor footer. */
.visit-footer{justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.footer-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;line-height:1.55}
.footer-meta a{color:#74413f;text-decoration:none;border-bottom:1px solid #bb8f88}
.footer-social{display:flex;align-items:center;gap:12px}
.footer-social .instagram-link{display:grid;place-items:center;width:38px;height:38px;border:1px solid #ad8580;border-radius:50%;color:#8d3b3f;transition:background .2s,color .2s}
.footer-social .instagram-link:hover,.footer-social .instagram-link:focus-visible{background:#a52d33;color:#fff}
.instagram-link svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}
@media(max-width:600px){.footer-meta{width:100%;gap:5px 9px}.visit-footer{align-items:center}.footer-social{margin-left:auto}}

/* GAStronusa editorial revision: original warm scene palette retained.
   User-approved ceramic paper cards and readable ivory rules only. */
.detail-panel{background:#e8e4dc;color:#292523;border-top:4px solid #a52d33;box-shadow:0 22px 76px rgba(15,13,13,.73),0 1px 0 #faf7f0 inset}
.detail-panel h2,.history-trail strong{color:#292523}
.detail-panel p,.history-trail span{color:#57514c}
.detail-panel .eyebrow,.history-trail time{color:#963842}
.detail-panel .detail-source{color:#86333d;border-bottom-color:#a5797b}
.visitor-notes{background:linear-gradient(153deg,#f2eee7 0%,#ece7de 100%);border:1px solid #ded6ca;padding:clamp(22px,2.9vw,38px);box-shadow:0 10px 32px rgba(52,40,30,.055)}
.visitor-notes .note-row{border-top-color:#d3c9bc}
.visitor-notes .rules-lede,.visitor-notes .note-row p{color:#57504b}
.visitor-notes .note-row strong{color:#292423}
.hours-card{background:#2d211f;color:#f2e8db}
@media(max-width:600px){.visitor-notes{padding:24px 22px}.hours-card{box-shadow:7px 9px 0 #d4c3af}.stage .hotspot{left:74%!important;top:30%!important}}
@media(max-width:350px){.visitor-notes{padding:22px 17px}}
/* Closure/status controls introduced in hours-management v2. */
.weekly-disclosure{margin-top:24px;border-top:1px solid #ffffff35}
.weekly-disclosure summary{list-style:none;cursor:pointer;padding:15px 0;color:#f1d4c9;font-size:12px;font-weight:700;letter-spacing:.02em}
.weekly-disclosure summary::-webkit-details-marker{display:none}
.weekly-disclosure summary:after{content:'+';float:right;font-size:17px;line-height:1}
.weekly-disclosure[open] summary:after{content:'−'}
.weekly-disclosure .weekly-hours{border-top:1px solid #ffffff20}
.event-info{border-left:3px solid #bb4f56;margin:17px 0;padding:11px 14px;background:#ffffff0c;color:#f0d9d1;font-size:12px;line-height:1.75}
.event-info[hidden]{display:none}



/* Closing scene: a deliberate dark end-cap instead of a tiny utility row. */
.visit-footer {
  display:block;
  position:relative;
  isolation:isolate;
  margin:clamp(25px,3vw,48px) calc(-1 * clamp(22px,7vw,120px)) -35px;
  padding:clamp(47px,6vw,86px) clamp(22px,7vw,120px) 22px;
  background:radial-gradient(ellipse at 7% 0%,#3d2b27 0%,transparent 54%),#211917;
  color:#f2e8db;
  border:0;
  font-size:14px;
  line-height:1.4;
}
.visit-footer::before {
  content:'';
  position:absolute;
  top:0;left:clamp(22px,7vw,120px);
  width:58px;height:2px;background:#a52d33;
}
.footer-main {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(285px,390px);
  gap:clamp(28px,5vw,90px);
  align-items:end;
  padding-bottom:clamp(42px,5.4vw,73px);
}
.footer-signoff {min-width:0}
.footer-kicker {display:block;color:#d4aea2;font-size:11px;font-weight:700;letter-spacing:.19em}
.footer-signoff p {
  margin:16px 0 0;
  font:400 clamp(52px,6.3vw,98px)/.98 var(--serif);
  letter-spacing:-.055em;
  color:#f2e8db;
}
.footer-signoff p em {font-style:italic;color:#dea9a0}
.footer-actions {display:grid;gap:0;min-width:0}
.footer-action {
  display:flex;align-items:center;gap:15px;
  min-height:69px;padding:14px 0;
  color:#f2e8db;
  border-top:1px solid #eee2d42e;
  font-size:13px;font-weight:650;letter-spacing:.015em;
  text-decoration:none;
  transition:color .2s ease,border-color .2s ease;
}
.footer-action:last-child {border-bottom:1px solid #eee2d42e}
.footer-action:hover,.footer-action:focus-visible {color:#f0b7b0;border-color:#bc7c74}
.footer-action:focus-visible {outline:2px solid #efbdb1;outline-offset:3px}
.footer-action-icon {
  width:37px;height:37px;display:grid;place-items:center;flex:none;
  border:1px solid #be9990;border-radius:50%;
  color:#eabcb1;
}
.footer-action-icon svg {
  width:17px;height:17px;fill:none;stroke:currentColor;
  stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;
}
.footer-arrow {
  width:17px;height:17px;margin-left:auto;flex:none;
  fill:none;stroke:currentColor;stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round;
}
.footer-bottom {
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:9px 25px;padding-top:20px;
  border-top:1px solid #eee2d42b;
  color:#c3b1a9;font-size:11px;letter-spacing:.025em;
}
.footer-bottom a {color:#f2e8db;text-decoration:underline;text-decoration-color:#b77c77;text-underline-offset:4px}
.footer-bottom a:hover,.footer-bottom a:focus-visible {color:#f0b7b0}
@media(max-width:800px){
  .footer-main {grid-template-columns:1fr;gap:37px}
  .footer-signoff p {font-size:clamp(54px,11vw,76px)}
}
@media(max-width:600px){
  .visit-footer {
    margin:30px -22px -23px;
    padding:48px 22px max(30px,env(safe-area-inset-bottom));
  }
  .visit-footer::before {left:22px;width:43px}
  .footer-main {gap:29px;padding-bottom:43px}
  .footer-signoff p {font-size:clamp(50px,12vw,65px);margin-top:14px}
  .footer-kicker {font-size:10px;letter-spacing:.17em}
  .footer-action {min-height:60px;padding:11px 0;font-size:12px;gap:12px}
  .footer-action-icon {width:35px;height:35px}
  .footer-bottom {display:grid;gap:8px;font-size:11px;padding-top:22px}
}

/* Copy polish: contextual Instagram links in status and house rules */
.ig-inline-link{color:inherit;text-decoration:underline;text-decoration-color:currentColor;text-decoration-thickness:1px;text-underline-offset:.23em;font-weight:650}
.ig-inline-link:hover,.ig-inline-link:focus-visible{color:#a52d33;text-decoration-thickness:2px}
.hours-card .ig-inline-link{color:#f4c6af}
.hours-card .ig-inline-link:hover,.hours-card .ig-inline-link:focus-visible{color:#fff}
.note-row .ig-inline-link,.rules-footer .ig-inline-link{color:#93343d}
.copy .ig-inline-link{color:#f5d2bc}
@media (max-width:600px){.copy .ig-inline-link{display:inline-block;max-width:100%;padding:4px 0}}

/* Compact empty schedule: explain once, never repeat seven placeholder rows. */
.weekly-placeholder{margin:0;padding:18px 0 8px;color:#d8c8bc;font-size:12px;line-height:1.65}
.hours-card .visit-note[hidden],.hours-card .ig-visit-link[hidden],.hours-card .hours-badge[hidden]{display:none}
.hours-card .weekly-hours:has(.weekly-placeholder){min-height:0}


/* Consistent vector arrows on iOS/desktop; the SVG inherits link color. */
.ui-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.13em;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;letter-spacing:0}
.opening-disclaimer .ui-arrow{vertical-align:-.12em}
.ig-inline-link>.ui-arrow{margin-left:.12em}
