/* Additions to the original Gift Shop; its existing styles stay intact. */
html{scroll-behavior:auto;scroll-padding-top:90px}.live-shop{display:flex;align-items:center;text-decoration:none}.shelf-card{text-decoration:none}.visit{padding-top:16px;padding-bottom:72px}.visit-heading{margin-bottom:30px}.visit-heading>span,.press-heading .tube{font-size:16px;letter-spacing:.2em}.visit-heading h2,.press-heading h2{margin-top:12px}.visit-signs{display:grid;grid-template-columns:1fr 1fr;gap:32px}.visit-sign{scroll-margin-top:85px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 24px 28px;background:var(--wall);border:3px solid #73455e;border-radius:12px;box-shadow:0 0 12px #ff3ea535,inset 0 0 15px #ff3ea51a;position:relative}.visit-sign:before{content:"";position:absolute;inset:7px;border:1px solid #ff3ea570;border-radius:5px;pointer-events:none}.small-sign{font-size:14px;letter-spacing:.1em;background:var(--lamp);color:var(--red);padding:4px 10px}.visit-sign h3{font-size:clamp(34px,4vw,50px);line-height:1.12;margin:30px 0 18px}.visit-sign p{color:var(--ink);font-size:15px;line-height:1.65;margin:0 0 24px}.visit-sign .sign-button{min-height:46px;display:inline-flex;align-items:center;padding:8px 20px;background:var(--pink);color:var(--night);font-size:20px;letter-spacing:.03em;text-decoration:none;border-radius:3px;box-shadow:0 0 15px #ff3ea535}.visit-sign>small{font-size:11px;color:var(--mute);margin-top:15px}.stretch-sign{border-color:#47756b;box-shadow:0 0 12px #22e6d230,inset 0 0 15px #22e6d212}.stretch-sign:before{border-color:#22e6d260}.stretch-sign .sign-button{background:var(--teal);box-shadow:0 0 15px #22e6d230}.press-shelf{padding-top:15px;padding-bottom:70px}.press-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:38px}.press-stamp{font-size:22px;letter-spacing:.04em;color:var(--red);background:var(--lamp);padding:8px 16px;transform:rotate(4deg);flex:none}.featured-clippings{display:grid;grid-template-columns:1.13fr 1fr 1fr;align-items:start;gap:25px;padding:0 5px}.press-clipping{background:#f2ecdE;color:#25201b;padding:21px;box-shadow:3px 5px 0 #ada18c;border:1px solid #d0c6b3;min-width:0}.featured-clippings>.press-clipping:first-child{transform:rotate(-1.3deg)}.featured-clippings>.press-clipping:nth-child(2){transform:rotate(1deg);margin-top:26px}.featured-clippings>.press-clipping:nth-child(3){transform:rotate(-.6deg);margin-top:8px}.clip-publisher{border-top:3px solid #25201b;border-bottom:1px solid #25201b;padding:9px 0;display:flex;flex-wrap:wrap;gap:5px 15px;align-items:baseline;justify-content:space-between}.clip-publisher b{font:bold 23px/1.15 Georgia,serif;letter-spacing:-.05em}.clip-publisher time{font:10px/1.4 'Courier New',monospace}.clip-type{font:10px/1.5 'Courier New',monospace;text-transform:uppercase;letter-spacing:.06em;margin:11px 0}.clip-photo{aspect-ratio:1.3;object-fit:cover;object-position:50% 25%;filter:grayscale(1);mix-blend-mode:multiply;margin:10px 0 16px}.press-clipping h3{font:bold 29px/1.06 Georgia,serif;letter-spacing:-.035em;margin:14px 0}.clip-summary{font:15px/1.5 Georgia,serif;margin:0 0 18px}.press-clipping>a{font:bold 11px/1.6 'Courier New',monospace;color:#25201b;display:inline-block;margin-top:10px;text-underline-offset:4px}.press-archive{margin-top:38px}.press-archive>summary{display:flex;justify-content:space-between;align-items:center;padding:15px 19px;background:var(--lamp);color:var(--red);font-size:22px;letter-spacing:.02em;cursor:pointer;list-style:none;border-radius:2px}.press-archive>summary::-webkit-details-marker{display:none}.press-archive>summary span{font-size:29px;line-height:1}.press-archive[open]>summary span{transform:rotate(45deg)}.archive-tools{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px;padding:25px 0 0}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{font-size:12px;padding:10px 12px;border:1px solid var(--edge);background:var(--shelf);color:var(--ink)}.filters button[aria-pressed=true]{background:var(--teal);color:var(--night);border-color:var(--teal)}.archive-tools input{background:var(--wall);border:1px solid #5b4066;color:var(--ink);padding:12px;font-size:14px;width:250px}.archive-tools input::placeholder{color:var(--mute)}#results{font-size:12px;color:var(--mute);margin:16px 0 23px}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.archive-item[hidden]{display:none}.archive-item .press-clipping{height:100%}.archive-item .clip-publisher b{font-size:21px}.archive-item .press-clipping h3{font-size:25px}.press-note{font-size:12px;line-height:1.6;color:var(--mute);max-width:750px;margin:28px 0 12px}.press-contact{font-size:13px;color:var(--teal);text-underline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}a:focus-visible,summary:focus-visible,input:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
@media(max-width:760px){.visit-signs{grid-template-columns:1fr;gap:25px}.featured-clippings{grid-template-columns:1fr;max-width:540px;margin:auto;gap:27px}.featured-clippings>.press-clipping:nth-child(n){margin-top:0}.press-clipping{padding:22px}.featured-clippings .press-clipping h3{font-size:33px}.archive-grid{grid-template-columns:1fr 1fr}.press-heading{align-items:flex-start}.press-stamp{font-size:15px;padding:6px 9px}.press-heading .tube,.visit-heading>span{font-size:13px}.press-heading h2{font-size:33px}.visit-sign h3{font-size:45px}.live-shop{padding:0 12px;font-size:15px}.logo{gap:6px}.logo .script{font-size:24px}.logo .tube{font-size:11px;letter-spacing:.12em}}
@media(max-width:460px){.archive-grid{grid-template-columns:1fr}.archive-tools label,.archive-tools input{width:100%}.press-heading{gap:14px}.press-stamp{max-width:79px;text-align:center;margin-top:14px}.press-archive>summary{font-size:19px}.visit-sign h3{font-size:39px}.visit-sign p{font-size:14px}.logo .script{font-size:23px}.logo .tube{font-size:10px}.live-shop{font-size:14px;padding:0 10px}}
/* Small neon destinations beneath the original marquee. */

.front .wrap{grid-template-areas:"sign sign" "fl open" "extras extras" "panels panels" "lede lede"}
.neon-extras{grid-area:extras;display:grid;grid-template-columns:repeat(3,132px);justify-content:center;align-items:end;gap:30px;padding:12px 8px 8px}
.neon-prop{display:grid;grid-template-rows:132px 30px;justify-items:center;align-items:center;background:none;border:0;padding:0;color:var(--teal);text-decoration:none;min-width:80px;perspective:450px}
.neon-prop svg{display:block;height:130px;width:91px;overflow:visible;filter:drop-shadow(0 0 2px currentColor) drop-shadow(0 0 6px currentColor);transition:transform .3s}
.news-prop{color:var(--pink)}.prop-tube{stroke:currentColor;stroke-width:3}.prop-core{stroke:#e5fffc;stroke-width:1.2}.prop-letter{fill:#fff6d8;stroke:none;font:17px Anton,Impact,sans-serif;text-anchor:middle;letter-spacing:1px}.prop-small{fill:#fff6d8;stroke:none;font:7.5px 'Tilt Neon',sans-serif;text-anchor:middle;letter-spacing:.7px}.prop-caption{display:block;color:var(--mute);font:12px/1.5 'Tilt Neon',sans-serif;letter-spacing:.04em;margin-top:8px;text-align:center}.neon-prop:hover svg{transform:rotate(-3deg)}.neon-prop:hover .prop-caption,.members-neon:hover .prop-caption{color:var(--lamp)}.news-door{transform-box:fill-box;transform-origin:left center;transition:transform .6s}.news-prop.is-open .news-door{transform:perspective(160px) rotateY(-65deg)}.flying-sheets{stroke:#fff6d8;stroke-width:1.2;fill:var(--wall);opacity:0}.news-prop.is-open .flying-sheets{animation:paper-pop .9s ease-out both}.phone-receiver{stroke:#e1fffb;stroke-width:2.7;fill:var(--wall);transform-box:fill-box;transform-origin:center;transition:transform .65s cubic-bezier(.2,.8,.25,1)}.phone-prop.is-lifted .phone-receiver{transform:translate(-12px,-17px) rotate(-32deg)}.members-neon{text-decoration:none;display:grid;grid-template-rows:132px 30px;justify-items:center;align-items:center;align-self:end;transition:transform .65s,filter .65s}.members-sign{grid-area:auto;padding:10px 12px 12px;margin:0;animation:none}.members-sign b{font-size:40px}.members-sign small{font-size:9px;letter-spacing:.16em}.members-neon.entering{transform:scale(1.14);filter:drop-shadow(0 0 25px #ff2a3d)}.press-shelf[hidden]{display:none}.press-shelf{scroll-margin-top:88px;padding-bottom:45px}.press-heading:after{display:none}.press-close{border:1px solid var(--edge);background:var(--wall);color:var(--mute);font-size:13px;padding:8px 14px;margin-top:24px;min-height:44px}.journey-status{position:fixed;z-index:20;left:50%;bottom:24px;transform:translateX(-50%);background:#140c1af5;border:1px solid var(--pink);padding:16px 22px;box-shadow:0 0 25px #ff3ea533;color:var(--lamp);text-align:center;width:max-content;max-width:90vw}.journey-status[hidden]{display:none}.journey-status p{margin:0;font-size:14px}.journey-status button{display:block;margin:8px auto 0;background:none;border:0;color:var(--teal);text-decoration:underline;font-size:12px;min-height:32px}
@keyframes paper-pop{0%{opacity:0;transform:translateY(0) scale(.8)}25%{opacity:1}80%{opacity:1;transform:translate(9px,-49px) rotate(14deg)}100%{opacity:0;transform:translate(24px,-65px) rotate(22deg)}}
@media(min-width:820px){.front .wrap{grid-template-areas:"fl sign open" "extras extras extras" "panels panels panels" "lede lede lede"}.neon-extras{gap:32px;margin-top:0}.members-sign{margin-bottom:0;justify-self:auto}}
@media(max-width:460px){.neon-extras{grid-template-columns:repeat(3,90px);gap:15px;padding:6px 0}.neon-prop,.members-neon{grid-template-rows:112px 30px}.neon-prop svg{height:106px;width:74px}.neon-prop{min-width:65px}.members-sign{padding:8px 9px}.members-sign b{font-size:33px}.members-sign small{font-size:8px;letter-spacing:.09em}.prop-caption{font-size:11px}.front .wrap{row-gap:24px}.press-heading{gap:10px}.press-stamp{font-size:14px;padding:6px 8px}.press-heading h2{font-size:29px}}
@media(prefers-reduced-motion:reduce){.neon-prop svg,.news-door,.phone-receiver,.members-neon{transition:none}.news-prop.is-open .flying-sheets,.members-sign{animation:none}}

/* Give the marquee room, and keep the three destinations on one baseline. */
.front .wrap{padding-top:42px;padding-bottom:36px;row-gap:26px}
.lede{font-size:16px;line-height:1.65;max-width:29em}
.lede a{font-size:18px;min-height:46px;margin-top:18px;padding:0 24px}
.neon-extras a:focus-visible,.neon-extras button:focus-visible{border-radius:6px}
.panels{gap:9px}.panels button{text-transform:uppercase;font:inherit;line-height:1.1;letter-spacing:.05em;font-size:23px;padding:8px 13px 7px;min-height:44px;border:0;border-radius:2px;background:var(--lamp);color:var(--red);box-shadow:0 0 17px #fff6d833;transition:background .2s,box-shadow .2s,transform .2s}.panels button:hover{background:var(--sun);box-shadow:0 0 24px #ffe45c55;transform:translateY(-2px)}.panels button[aria-pressed=true]{background:var(--sun)}.shelf-card[hidden]{display:none}
.shelf .wrap{padding-top:34px}.shelf-intro{margin-bottom:28px}
@media(min-width:1000px){.front .wrap{grid-template-columns:120px minmax(0,690px) 155px;column-gap:28px}.signbox{padding:25px 30px 28px;width:100%}.signbox .script{font-size:90px;white-space:nowrap}.signbox .tube{font-size:42px}.flamingo{width:115px}.open:not(.members-sign){padding:9px 13px 11px}.open:not(.members-sign) b{font-size:34px}.open:not(.members-sign) small{font-size:12px}}
@media(max-width:460px){.front .wrap{padding-top:30px;padding-bottom:26px;row-gap:20px}.signbox{margin-top:14px;padding:21px 16px 23px}.signbox .script{font-size:56px}.signbox .tube{font-size:26px}.signbox:before{inset:-11px;border-width:5px;border-radius:20px}.flamingo{width:76px}.open:not(.members-sign){padding:8px 13px 10px}.open:not(.members-sign) b{font-size:30px}.open:not(.members-sign) small{font-size:11px}.panels{flex-wrap:nowrap;gap:7px}.panels button{font-size:18px;padding:7px 9px 6px}.lede{font-size:15px}.lede a{font-size:17px}.shelf .wrap{padding-top:26px}.members-neon .prop-caption{margin-top:8px}}

@media(prefers-reduced-motion:reduce){.panels button{transition:none}.panels button:hover{transform:none}}

.editions{max-width:940px;margin:65px auto 0}.editions[hidden]{display:none}.editions-heading{margin-bottom:25px}.editions-heading>.tube{font-size:13px;letter-spacing:.16em}.editions-heading h2{font-size:30px;margin-top:9px}.editions-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.edition{display:flex;min-height:300px;background:#ece1c8;color:#211623;text-decoration:none;box-shadow:5px 5px 0 #5e4b48;border:1px solid #8f796b;transition:transform .2s}.edition:hover{transform:translateY(-4px)}.book-spine{writing-mode:vertical-rl;transform:rotate(180deg);padding:20px 11px;border-left:1px solid #aa9277;font:11px Anton,sans-serif;letter-spacing:.15em}.edition-content{display:flex;flex-direction:column;align-items:flex-start;gap:19px;padding:25px}.edition-content small{font:10px/1.5 'Courier New',monospace;letter-spacing:.07em}.edition-content strong{font:bold 43px/1.03 Georgia,serif}.edition-content>span{font:14px/1.5 Georgia,serif}.edition-content>b{font:12px/1.4 'Tilt Neon',sans-serif;margin-top:auto;text-decoration:underline;text-underline-offset:4px}.course-edition{background:#c9e4da}.members-room{position:fixed;margin:auto;width:min(440px,calc(100vw - 36px));max-height:90dvh;border:1px solid #a15b79;border-radius:9px;padding:35px 27px 25px;box-shadow:0 0 30px #ff3ea526}.members-room::backdrop{background:#07040bdb;backdrop-filter:blur(5px)}.room-close{position:absolute;right:7px;top:4px;width:44px;height:44px;background:none;border:0;font-size:28px}.members-room>.tube{font-size:11px;letter-spacing:.12em}.members-room h2{font-size:38px;margin:14px 0}.members-room p{font-size:14px;color:var(--mute)}.member-destinations{display:grid;gap:9px;margin:23px 0}.member-destinations a{display:flex;justify-content:space-between;gap:18px;min-height:48px;align-items:center;border:1px solid var(--edge);padding:10px 14px;background:var(--shelf);text-decoration:none;font-size:15px}.member-destinations a:hover{border-color:var(--pink)}.members-room>small{display:block;color:var(--mute);font-size:11px;line-height:1.6}.members-neon .prop-caption{white-space:nowrap;font-size:11px}
@media(max-width:600px){.editions-grid{grid-template-columns:1fr;gap:25px}.edition{min-height:280px}.editions{margin-top:45px}.members-neon .prop-caption{font-size:9px}}
@media(prefers-reduced-motion:reduce){.edition{transition:none}.edition:hover{transform:none}}




/* One main entrance; the smaller attractions live below the shelves. */
.front .wrap{grid-template-areas:"sign sign" "tagline tagline" "fl open" "entrance entrance";padding-bottom:40px;row-gap:26px}
.main-entrance{grid-area:entrance;display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:12px;max-width:100%;text-decoration:none;padding:7px 0;color:#ffe1f0}
.entrance-sign{font-size:clamp(30px,5vw,49px);line-height:1.25;letter-spacing:.09em;border:2px solid #ffd0e5;border-radius:8px;padding:17px 30px 16px;background:#190e1c;text-shadow:0 0 2px #fff,0 0 7px #ff3ea5,0 0 20px #ff3ea5;box-shadow:0 0 4px #fff5,0 0 17px #ff3ea580,inset 0 0 13px #ff3ea533;transition:box-shadow .2s,background .2s}
.entrance-invitation{font:16px/1.5 'Tilt Neon',sans-serif;letter-spacing:.04em;color:var(--lamp)}
.entrance-invitation>span{display:inline-block;margin-left:7px;transition:transform .2s}.main-entrance:hover .entrance-sign{background:#291129;box-shadow:0 0 5px #fff6,0 0 27px #ff3ea5aa,inset 0 0 18px #ff3ea540}.main-entrance:hover .entrance-invitation>span{transform:translate(2px,-2px)}
.live-shop{background:none;color:var(--mute);box-shadow:none;font:13px 'Tilt Neon',sans-serif;padding:8px 0;text-transform:none}.live-shop:hover{color:var(--lamp)}
.shelf .panels{margin:0 auto 48px;gap:12px}.panels button{font-size:20px;box-shadow:0 0 8px #fff6d81a}.panels button[aria-pressed=true]{background:var(--lamp);box-shadow:0 3px 0 var(--pink)}
.shop-extras{padding-top:18px;padding-bottom:48px;border-top:1px solid var(--edge);max-width:940px}.extras-heading{color:var(--mute);text-align:center;font-size:14px;letter-spacing:.06em;margin:28px 0 10px}.neon-extras{grid-template-columns:repeat(2,132px);gap:60px;padding:14px 0 8px}.neon-prop svg{filter:drop-shadow(0 0 2px currentColor) drop-shadow(0 0 4px currentColor)}
@media(min-width:820px){.front .wrap{grid-template-areas:"fl sign open" "tagline tagline tagline" "entrance entrance entrance";row-gap:28px}.main-entrance{margin-top:18px}}
@media(max-width:460px){.front .wrap{grid-template-columns:1fr 1fr;padding-bottom:28px;row-gap:21px}.main-entrance{margin-top:6px;gap:13px}.entrance-sign{font-size:29px;padding:15px 19px}.entrance-invitation{font-size:15px}.shelf .panels{margin-bottom:35px;gap:8px}.panels button{font-size:18px}.neon-extras{grid-template-columns:repeat(2,100px);gap:40px}.live-shop{font-size:12px}}
@media(prefers-reduced-motion:reduce){.entrance-sign,.entrance-invitation>span{transition:none}.main-entrance:hover .entrance-invitation>span{transform:none}}

.members-entry{text-decoration:none}.members-entry:hover{box-shadow:0 0 15px #ff3ea566}.members-entry:focus-visible{outline:3px solid var(--teal);outline-offset:5px}

.shelf-intro{align-items:center;max-width:940px;margin:0 auto 32px}.shelf .panels{margin-bottom:20px}.order-label{display:inline-block;padding:5px 15px;border:1px solid #9d8470;background:#e7dabd;color:#49332c;font:12px/1.6 Georgia,serif;font-variant:small-caps;letter-spacing:.1em;box-shadow:2px 2px 0 #49332c;transform:rotate(-2deg)}

.shop-tagline{grid-area:tagline;margin:3px 0 -8px;color:#e8d4ba;font:27px/1.35 "Yellowtail",cursive;transform:rotate(-2deg)}.shop-tagline span{white-space:nowrap}.main-entrance{margin-top:4px}@media(max-width:460px){.shop-tagline{font-size:23px;margin:0 0 -5px}}

/* Compact storefront entrance and physical shop props. */
.front .wrap{grid-template-areas:"sign sign" "tagline tagline" "fl open" "attractions attractions";row-gap:22px;padding-bottom:30px}
.signbox::before,.signbox .flicker,.open{animation:none}
.storefront-scene{grid-area:attractions;display:grid;grid-template-columns:110px 180px 110px;grid-template-areas:"news door phone";gap:40px;align-items:end;position:relative;padding:12px 36px 23px;isolation:isolate}
.storefront-scene::before{content:'';position:absolute;z-index:-1;bottom:0;left:0;right:0;height:55px;background:linear-gradient(180deg,#44333d55,#100b1580),repeating-linear-gradient(90deg,transparent 0 79px,#7c666225 80px 81px);transform:perspective(250px) rotateX(35deg);border-top:1px solid #76596255;border-bottom:2px solid #30222c}
.storefront-scene .neon-extras{display:contents}.storefront-scene .news-prop{grid-area:news}.storefront-scene .phone-prop{grid-area:phone}.storefront-scene .neon-prop{grid-template-rows:132px 28px;position:relative;margin-bottom:1px;min-width:0}.storefront-scene .neon-prop::after{content:'';position:absolute;bottom:24px;width:90px;height:12px;background:#0008;border-radius:50%;filter:blur(5px);z-index:-1}.storefront-scene .neon-prop svg{height:132px;width:92px}.storefront-scene .neon-prop:hover svg{transform:none}
.members-door{grid-area:door;display:block;perspective:700px;text-decoration:none;position:relative;margin-bottom:24px;width:180px}.door-frame{display:block;height:276px;padding:8px 8px 0;background:linear-gradient(90deg,#8e6b55,#3e272b 6%,#855d4d 92%,#b58d68);border-top:4px solid #9f7961;box-shadow:6px 4px 0 #24141c,0 14px 20px #000a;position:relative}.door-frame::before{content:'';position:absolute;inset:8px 8px 0;background:radial-gradient(ellipse at bottom,#8e2e5255,#060409 70%)}.door-leaf{position:relative;display:flex;align-items:center;flex-direction:column;height:100%;background:linear-gradient(100deg,#612c3d,#421e30 50%,#59283b);border:2px solid #8c4e59;box-shadow:inset 0 0 0 5px #28131e66;transform-origin:left center;transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .2s}.door-plaque{margin-top:40px;padding:9px 12px;background:linear-gradient(120deg,#f7e7bf,#cebc97);color:#552334;border:1px solid #ad9472;box-shadow:1px 3px 5px #0006;font:18px/1.25 Anton,sans-serif;letter-spacing:.1em;text-align:center;transform:rotate(-2deg)}.door-inset{width:70%;height:76px;margin-top:25px;border:2px solid #301522;box-shadow:1px 1px 0 #a2656744,inset 2px 2px 7px #1d0c1655}.door-handle{position:absolute;right:10px;top:49%;width:7px;height:30px;border-radius:4px;background:linear-gradient(90deg,#6f4924,#f3d79c 48%,#b38b4e);box-shadow:2px 2px 3px #160a12}.door-kickplate{position:absolute;bottom:8px;left:8px;right:8px;height:20px;background:linear-gradient(110deg,#8f7150,#c3a479,#785f49);opacity:.65}.door-step{display:block;height:9px;margin:0 -6px;background:linear-gradient(#9d7c66,#47313b);box-shadow:0 5px 0 #251821}.members-door:hover .door-leaf,.members-door:focus-visible .door-leaf{filter:brightness(1.13)}.members-door.entering .door-leaf{transform:rotateY(-72deg)}.members-door:focus-visible{outline-offset:8px}
.shelf .wrap{padding-top:18px;padding-bottom:42px}.shelf-items{gap:30px;max-width:940px}.shelf-card{gap:7px}.shelf-card[hidden]{display:none}.shelf-card .num{font-size:11px;letter-spacing:.12em}.shelf-card .kind{font-size:13px}.shelf-card h3{font-size:24px}.shelf-card .price{font-size:14px}.shelf .panels{margin-bottom:18px}.shelf-intro{margin-bottom:26px}
@media(min-width:681px){.shelf-items{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:820px){.front .wrap{grid-template-areas:"fl sign open" "tagline tagline tagline" "attractions attractions attractions";row-gap:22px}.storefront-scene{padding-top:6px}}
@media(max-width:460px){.front .wrap{row-gap:19px}.storefront-scene{grid-template-columns:70px 126px 70px;gap:12px;padding:4px 0 17px;width:100%;justify-content:center}.members-door{width:126px;margin-bottom:24px}.door-frame{height:214px;padding:6px 6px 0}.door-plaque{font-size:14px;margin-top:29px;padding:8px}.door-inset{height:57px;margin-top:20px}.door-handle{right:6px;height:24px;width:6px}.storefront-scene .neon-prop{grid-template-rows:106px 28px}.storefront-scene .neon-prop svg{height:106px;width:74px}.prop-caption{font-size:11px}.shelf-items{gap:27px}.shelf .wrap{padding-top:10px}.shelf-card img{max-height:460px}.shelf-card h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){.door-leaf,.storefront-scene .neon-prop svg{transition:none}.members-door.entering .door-leaf{transform:none}}

.hiring-sign{display:flex;flex-direction:column;align-items:center;width:max-content;max-width:100%;margin:0 auto 34px;padding:9px 22px 11px;background:#eadcbd;color:#6c243b;border:3px double #8c654f;box-shadow:3px 4px 0 #302029;transform:rotate(2deg);text-decoration:none}.hiring-sign>span{font:22px/1.2 Anton,sans-serif;letter-spacing:.06em}.hiring-sign small{font:11px/1.5 "Tilt Neon",sans-serif;margin-top:4px}.hiring-sign:hover{background:#fff0ce}.hiring-sign:focus-visible{outline:3px solid var(--teal);outline-offset:6px}

/* The small studio notice belongs on the shop wall, not between product shelves. */
.storefront-scene .hiring-sign{position:absolute;left:5px;top:28px;width:141px;max-width:none;margin:0;padding:11px 8px 9px;transform:rotate(-4deg);background:repeating-linear-gradient(0deg,#6b472509 0 1px,transparent 1px 4px),#eadcbd;box-shadow:2px 3px 0 #302029,0 5px 9px #0005}
.storefront-scene .hiring-sign::before{content:'';position:absolute;width:29px;height:11px;top:-8px;left:calc(50% - 14px);background:#d9c7a4b3;transform:rotate(7deg)}
.storefront-scene .hiring-sign>span{font-size:18px}.storefront-scene .hiring-sign small{font-size:9px;line-height:1.4}
.hiring-sign:active,.panels button:active{filter:brightness(.88)}.neon-prop:active svg{filter:brightness(1.5) drop-shadow(0 0 4px currentColor)}.members-door:active .door-leaf{filter:brightness(1.3)}.shelf-card:active{opacity:.8}
@media(max-width:819px){.front .wrap{row-gap:14px;padding-top:25px;padding-bottom:22px}.flamingo{width:62px;max-height:95px}.open:not(.members-sign){padding:6px 10px 7px;align-self:center}.open:not(.members-sign) b{font-size:24px}.open:not(.members-sign) small{font-size:9px}.signbox{margin-top:9px}.storefront-scene{padding-top:4px}.storefront-scene .hiring-sign{left:0;top:12px;width:94px;padding:8px 4px}.storefront-scene .hiring-sign>span{font-size:13px;letter-spacing:.03em}.storefront-scene .hiring-sign small{font-size:8px;max-width:80px}.storefront-scene .hiring-sign::before{width:22px;left:calc(50% - 11px)}}
@media(min-width:461px) and (max-width:819px){.storefront-scene{grid-template-columns:90px 154px 90px;gap:24px;padding-left:10px;padding-right:10px}.members-door{width:154px}.door-frame{height:240px}.storefront-scene .hiring-sign{left:0;width:112px}.storefront-scene .hiring-sign>span{font-size:15px}}
@media(max-width:360px){.storefront-scene .hiring-sign{left:-5px;width:70px}.storefront-scene .hiring-sign>span{font-size:11px}.storefront-scene .hiring-sign small{font-size:7px}.front .wrap{row-gap:12px}.signbox .script{font-size:48px}}

/* Useful shop signs keep the original lettering and physical scale. */
.flamingo-button{grid-area:fl;display:flex;flex-direction:column;align-items:center;gap:5px;padding:0 6px 4px;min-width:44px;border:0;background:none;color:var(--mute)}.flamingo-button .flamingo{grid-area:auto;display:block}.flamingo-button>span{font:11px/1.5 'Tilt Neon',sans-serif}.flamingo-button:hover>span{color:var(--lamp)}.flamingo-button:active .flamingo{filter:brightness(1.4)}a.open{text-decoration:none}a.open:hover{background:#56203744}a.open:active{filter:brightness(1.3)}
.shop-destinations a{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:58px;padding:8px 13px;text-decoration:none;border-radius:2px;background:var(--lamp);color:var(--red);box-shadow:2px 3px 0 #3b2630;transition:background .15s}.shop-destinations b{font:20px/1.15 Anton,sans-serif;letter-spacing:.04em}.shop-destinations small{font:10px/1.4 'Tilt Neon',sans-serif;text-transform:none;color:#6f3941;white-space:nowrap}.shop-destinations a:hover{background:#ffe9b1}.shop-destinations a:active{background:#edcda1;box-shadow:0 1px 0 #3b2630}#grid{scroll-margin-top:90px}
.lana-postcard{width:min(720px,calc(100vw - 36px));max-width:none;max-height:90dvh;overflow:auto;margin:auto;border:8px solid #e7d8b8;border-radius:2px;padding:0;background:#f1e6cb;color:#412a2b;box-shadow:0 12px 60px #0009}.lana-postcard[open]{display:grid;grid-template-columns:43% 57%}.lana-postcard::backdrop{background:#08050dde;backdrop-filter:blur(4px)}.postcard-photo{position:relative;min-height:390px;background:#42252f}.postcard-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 18%}.postcard-photo>span{position:absolute;bottom:18px;left:15px;right:15px;font:27px/1.1 Yellowtail,cursive;color:#fff3d5;text-shadow:0 2px 9px #231122}.postcard-copy{position:relative;padding:72px 25px 25px;background:repeating-linear-gradient(0deg,#8f75470a 0 1px,transparent 1px 4px)}.postcard-kicker{font:9px/1.6 'Tilt Neon',sans-serif;letter-spacing:.07em;margin:0 0 15px}.postcard-copy h2{font:32px/1.1 Yellowtail,cursive;color:#67283c;text-transform:none;letter-spacing:0}.postcard-copy p:not(.postcard-kicker){font:14px/1.65 'Tilt Neon',sans-serif;margin:16px 0}.postcard-copy>a{display:flex;align-items:center;min-height:44px;color:#67283c;font-size:13px;text-underline-offset:4px}.postcard-signature{display:block;font:35px Yellowtail,cursive;color:#67283c}.postcard-stamp{position:absolute;top:17px;left:25px;padding:5px 10px;border:2px dotted #8f6c5b;transform:rotate(-6deg);font:8px/1.3 'Courier New',monospace;text-align:center;color:#825448}.postcard-close{position:absolute;z-index:2;right:4px;top:4px;width:44px;height:44px;border:0;background:#f1e6cb;color:#67283c;font-size:29px}.lana-postcard :is(a,button):focus-visible{outline-color:#087269}
@media(max-width:680px){.lana-postcard[open]{grid-template-columns:1fr}.postcard-photo{height:230px;min-height:0}.postcard-photo img{object-position:50% 22%}.postcard-copy{padding:63px 23px 20px}.postcard-copy h2{font-size:31px}}
@media(max-width:460px){.shop-destinations{gap:8px!important}.shop-destinations a{padding:8px 9px;min-width:0}.shop-destinations b{font-size:17px}.shop-destinations small{font-size:9px}.flamingo-button>span{font-size:10px}.flamingo-button{gap:0}}
@media(max-width:360px){.shop-destinations a{padding:8px 7px}.shop-destinations b{font-size:15px}.shop-destinations small{font-size:8px}}
@media(prefers-reduced-motion:reduce){.shop-destinations a{transition:none}}
@media(max-width:360px){.signbox::before{inset:-9px}.storefront-scene::before{transform:none}}
@media(min-width:820px) and (max-width:999px){.front .wrap{grid-template-columns:90px minmax(0,1fr) 130px;column-gap:20px}.signbox{width:100%;padding:24px 15px}.signbox .script{font-size:clamp(48px,6.5vw,64px);white-space:nowrap}.signbox .tube{font-size:30px}.flamingo-button .flamingo{width:85px}.open:not(.members-sign){padding:9px 10px}.open:not(.members-sign) b{font-size:28px}}
@media(max-width:360px){.storefront-scene{grid-template-columns:60px 118px 60px;gap:8px}.members-door{width:118px}.storefront-scene .neon-prop svg{width:64px;height:98px}}

/* Entrance polish: a compact composition with one shared storefront finish. */
.front .wrap{grid-template-areas:"sign sign" "tagline tagline" "fl open" "attractions attractions" "destinations destinations";row-gap:18px;padding-bottom:22px}
.front .shop-destinations{grid-area:destinations;justify-self:center;gap:10px;margin:0;max-width:100%}
.shop-tagline{margin:7px 0 2px;line-height:1.4;transform:rotate(-1deg)}
.storefront-scene{padding-top:0;padding-bottom:12px}
.door-frame{border-top-color:#c6a27d;box-shadow:inset 1px 0 #e8caa36b,6px 4px 0 #24141c,0 14px 20px #000a,0 0 20px #edb47318}
.door-step{position:relative;background:linear-gradient(#c2a07b,#634235)}
.door-step::after{content:'';position:absolute;left:9px;right:9px;top:-3px;height:3px;background:#ffd18c;box-shadow:0 2px 10px 2px #edac6c88;pointer-events:none}
.door-handle{transform-origin:50% 15%;transition:transform .25s ease}
.members-door:hover .door-handle,.members-door:focus-visible .door-handle{transform:rotate(-12deg)}
.storefront-scene .neon-prop svg{filter:drop-shadow(3px 4px 1px #0a060ac9) drop-shadow(0 0 3px currentColor)}
.storefront-scene .prop-tube{stroke-width:2}.storefront-scene .prop-core{stroke-width:1}
.storefront-scene .hiring-sign{left:12px;top:25px;width:118px;padding:9px 6px;transform:rotate(-2deg)}
.storefront-scene .hiring-sign>span{font-size:15px}.storefront-scene .hiring-sign small{font-size:9px}
@media(min-width:820px){.front .wrap{grid-template-areas:"fl sign open" "tagline tagline tagline" "attractions attractions attractions" "destinations destinations destinations"}.shop-tagline{font-size:28px;margin:8px 0 5px}.front .shop-destinations{margin-top:4px}}
@media(max-width:819px){.front .wrap{padding-top:19px;row-gap:12px}.signbox{margin-top:8px}.shop-tagline{font-size:24px;margin:7px 0 4px}.flamingo-button .flamingo{width:51px;height:71px}.flamingo-button{gap:2px}.open:not(.members-sign){padding:6px 11px 7px}.storefront-scene .hiring-sign{left:2px;top:18px;width:81px;padding:7px 4px}.storefront-scene .hiring-sign>span{font-size:11px}.storefront-scene .hiring-sign small{font-size:8px;max-width:70px}.storefront-scene .hiring-sign::before{width:18px;height:8px;top:-5px;left:calc(50% - 9px)}}
@media(max-width:460px){.front .wrap{padding-bottom:17px}.signbox{padding:17px 14px 19px}.signbox .script{font-size:clamp(44px,14vw,56px)}.signbox .tube{font-size:24px}.shop-tagline{font-size:clamp(20px,6vw,25px)}.door-frame{height:190px}.door-plaque{margin-top:25px}.door-inset{height:47px;margin-top:15px}.members-door{margin-bottom:23px}.storefront-scene{padding-bottom:9px}.storefront-scene .neon-prop{grid-template-rows:101px 28px}.storefront-scene .neon-prop svg{height:101px;width:71px}.front .shop-destinations a{min-height:58px;padding:9px 10px}.shop-destinations small{font-size:10px}.logo .script{font-size:25px}.logo .tube{font-size:11px;letter-spacing:.1em}}
@media(max-width:360px){.storefront-scene .hiring-sign{left:0;top:16px;width:65px}.storefront-scene .hiring-sign>span{font-size:10px}.storefront-scene .hiring-sign small{font-size:7px}.front .shop-destinations{gap:6px!important}.front .shop-destinations a{padding:9px 7px}.shop-destinations small{font-size:9px}.logo .script{font-size:24px}.storefront-scene .neon-prop svg{width:64px;height:98px}}
@media(prefers-reduced-motion:reduce){.door-handle{transition:none}.members-door:hover .door-handle,.members-door:focus-visible .door-handle{transform:none}}

/* Optional feature announcement, enabled only for a confirmed studio feature. */
.feature-banner{grid-area:feature;justify-self:center;display:grid;gap:5px;width:min(100%,570px);box-sizing:border-box;padding:13px 22px;background:linear-gradient(110deg,#fff0c9,#e9d8b1);color:#65283c;border:4px dotted #ffe3a3;outline:3px solid #695039;box-shadow:0 0 15px #f7c87728,inset 0 0 0 1px #b39061;text-align:center;text-decoration:none}
.feature-kicker{font:10px/1.5 'Tilt Neon',sans-serif;letter-spacing:.12em;text-transform:uppercase}
.feature-banner strong{font:22px/1.3 Anton,sans-serif;font-weight:400;letter-spacing:.03em;overflow-wrap:anywhere}
.feature-details{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 20px;font:12px/1.5 'Tilt Neon',sans-serif}.feature-details>span{text-decoration:underline;text-underline-offset:3px}
.feature-banner:hover{background:#fff2d3}.feature-banner:focus-visible{outline:3px solid var(--teal);outline-offset:6px}
.front .wrap:has(.feature-banner){grid-template-areas:"sign sign" "feature feature" "tagline tagline" "fl open" "attractions attractions" "destinations destinations"}
@media(min-width:820px){.front .wrap:has(.feature-banner){grid-template-areas:"fl sign open" "feature feature feature" "tagline tagline tagline" "attractions attractions attractions" "destinations destinations destinations"}}
@media(max-width:460px){.feature-banner{padding:10px 12px;margin-top:4px}.feature-banner strong{font-size:19px}.feature-kicker{font-size:9px}.feature-details{font-size:11px}}

/* The cart uses the live shop bag, including items saved on that domain. */
.cart-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;text-decoration:none}
.cart-link svg{width:19px;height:19px}
.cart-link:focus-visible{outline:2px solid var(--teal);outline-offset:4px}
@media(max-width:460px){.cart-link{padding:0 11px;font-size:16px;gap:6px}}
@media(max-width:360px){.top .logo{flex-direction:column;align-items:flex-start;gap:2px}.top .logo .tube{font-size:9px}}
