html{scroll-padding-top:0}body{background:#f7f8f5}#journey{height:544.444444svh;position:relative}.chapter-anchor{position:absolute;left:0;width:1px;height:1px;pointer-events:none}.journey-stage{position:sticky;top:0;height:100svh;overflow:hidden;perspective:1400px;isolation:isolate}.journey-layer{position:absolute;inset:0;will-change:transform,opacity;overflow:hidden}.entry-layer{z-index:4;background:radial-gradient(ellipse at 50% 80%,#e5e9e1,#f7f8f5 60%);overflow:visible}.entry-layer .threshold{will-change:transform;transition:none;top:38%}.entry-layer .door-panel{transition:none}.entry-layer .doorway:hover .door-panel{transform:none}.entry-layer .intro{top:17%}.entry-layer .entrance-foot{bottom:105px}.entrance-foot button{border:0;background:none;border-bottom:1px solid #a8b49a;padding:0 0 4px;color:inherit;font-size:12px}.door-cue{white-space:nowrap;left:-80px;right:-80px;font-size:12px}.gallery-layer{z-index:5;background:#e5e8de}.gallery-world{position:absolute;inset:0;background:url('interior.webp') center/cover;will-change:transform;transform-origin:50% 43%}.gallery-veil{position:absolute;inset:0;background:linear-gradient(#f5f7f09c,transparent 35%,transparent 75%,#f5f7f075)}.scene-copy{position:absolute;top:15%;left:0;right:0;text-align:center}.scene-copy .eyebrow{font-size:10px;margin-bottom:17px}.scene-copy h2{font-size:clamp(36px,4.2vw,65px)}.scene-copy p:last-child{font-size:13px;color:#7a856e;margin-top:17px}#journey-tees{position:absolute;inset:0;perspective:1200px}.journey-tee{position:absolute;width:25%;max-width:400px;top:37%;left:8%;background:none;border:0;padding:0;text-align:center;will-change:transform,opacity}.journey-tee-1{left:38%;top:42%}.journey-tee-2{left:68%;top:34%}.journey-tee .encounter-tee{animation:encounter-float 7s ease-in-out infinite}.journey-tee-1 .encounter-tee{animation-delay:-2s}.journey-tee-2 .encounter-tee{animation-delay:-4s}.journey-tee .encounter-print{top:34%;font-size:clamp(12px,1.8vw,28px)}.journey-tee:hover .encounter-tee{scale:1.08}.drop-layer{z-index:6;background:radial-gradient(ellipse at 50% 60%,#3c433a,#141813 70%);color:#e1e9d8}.drop-copy{z-index:5;top:14%}.drop-copy .eyebrow{color:#a5b099}.drop-copy p:last-child{color:#929f88}.drop-orbit{position:absolute;left:50%;top:57%;width:85vw;height:85vw;border:1px solid #b4c2a738;border-radius:50%;pointer-events:none;transform-style:preserve-3d}.orbit-two{width:115vw;height:115vw;border-color:#bdcaae24}.orbit-three{width:140vw;height:140vw;border-color:#bdcaae18}.drop-sculpture{position:absolute;left:50%;top:57%;width:30vw;max-width:440px;aspect-ratio:1;transform-style:preserve-3d;will-change:transform;pointer-events:none}.sculpture-shirt{position:absolute;inset:0;backface-visibility:hidden;filter:drop-shadow(0 30px 25px #0008)}.sculpture-shirt img{width:100%;height:100%;object-fit:contain;filter:brightness(.24)}.sculpture-shirt>span{position:absolute;top:33%;left:35%;width:30%;text-align:center;color:#ceddb9;font-family:'Space Grotesk',sans-serif;font-size:clamp(18px,3vw,44px);line-height:.92;font-weight:600;letter-spacing:-2px}.sculpture-shirt-0{transform:translateZ(140px)}.sculpture-shirt-1{transform:rotateY(120deg) translateZ(140px);opacity:.8}.sculpture-shirt-2{transform:rotateY(240deg) translateZ(140px);opacity:.8}.sculpture-shirt-1 img{filter:sepia(.4) brightness(.8)}.sculpture-shirt-2 img{filter:sepia(.5) hue-rotate(35deg) brightness(.65)}.drop-discover{position:absolute;left:50%;top:81%;transform:translateX(-50%);border:0;border-bottom:1px solid #a8b895;background:none;padding:12px 0;color:#e0e9d5;min-width:200px;font-size:14px;z-index:6}.drop-discover span{display:block;font-size:11px;color:#a4b198;margin-top:7px}.room-whisper{position:absolute;bottom:34px;left:5%;font-size:9px;letter-spacing:1.4px;color:#a4b198}.studio-layer{z-index:3;background:radial-gradient(ellipse at center,#e5ecd9,#f6f8f0 70%);perspective:1200px}.studio-grid{position:absolute;inset:40% -50% -100%;background-image:linear-gradient(#9cae891d 1px,transparent 1px),linear-gradient(90deg,#9cae891d 1px,transparent 1px);background-size:90px 90px;transform:rotateX(68deg);transform-origin:50% 0;mask-image:linear-gradient(transparent,#000 30%)}.studio-words{position:absolute;left:50%;top:42%;display:flex;flex-direction:column;align-items:center;color:#a5b2936b;line-height:.72;will-change:transform}.studio-words>span{font-family:'Space Grotesk';font-size:clamp(100px,21vw,330px);letter-spacing:-.08em}.studio-words>i{font-family:Georgia,serif;font-size:clamp(120px,23vw,360px);color:#75896070}.studio-floating{position:absolute;left:50%;top:47%;width:31vw;max-width:440px;filter:drop-shadow(10px 35px 25px #52643d28);will-change:transform}.studio-floating>img{width:100%}.studio-floating>span{position:absolute;left:33%;top:33%;width:34%;font-size:clamp(19px,3vw,43px);text-align:center;line-height:.94;font-family:'Space Grotesk';letter-spacing:-1.5px;color:#71875a;font-weight:600}.studio-invitation{position:absolute;top:76%;left:0;right:0;text-align:center}.studio-invitation h2{font-size:clamp(33px,3vw,48px)}.studio-invitation .eyebrow{margin-bottom:14px}.studio-invitation .text-button{margin:14px auto 0;min-width:170px}.journey-end{position:absolute;top:100px;left:0;right:0;text-align:center;z-index:8;opacity:0;font-size:12px;color:#819071}.journey-end button{display:block;margin:10px auto;background:none;border:0;border-bottom:1px solid #a8b696;padding:6px;color:#5c7149;font-size:12px}.room-nav{z-index:30}.room-nav button{border:0;background:none;font-size:10px;padding:10px 15px;border-radius:30px;color:#7c8574;white-space:nowrap}.room-nav button span{font-size:12px;margin-left:5px}.room-nav button.active{background:#e0e5d9;color:#35422a}.journey-progress{position:fixed;right:0;top:0;height:100svh;width:3px;background:#8c9c7c22;z-index:40}.journey-progress span{display:block;height:100%;background:#859672;transform-origin:top;transform:scaleY(0)}.scroll-note{position:fixed;bottom:36px;right:5%;font-size:11px;color:#8a967c;z-index:30;pointer-events:none}.scroll-note span{margin-left:13px}header{z-index:35}.journey-layer .encounter-label{backdrop-filter:blur(8px)}@media(max-width:700px){#journey{height:544.444444svh}.entry-layer .threshold{top:37%;width:155px;height:280px}.entry-layer .intro{top:18%}.entry-layer .entrance-foot{bottom:125px}.scene-copy{top:13%}.scene-copy h2{font-size:35px}.scene-copy .eyebrow{font-size:9px}.scene-copy p:last-child{font-size:11px}.gallery-world{background-position:48% center}.journey-tee{left:0%;top:31%;width:49%}.journey-tee-1{left:50%;top:38%}.journey-tee-2{left:25%;top:59%;width:48%}.journey-tee .encounter-print{font-size:clamp(12px,3.4vw,21px)}.drop-sculpture{width:65vw;top:52%}.sculpture-shirt-0{transform:translateZ(75px)}.sculpture-shirt-1{transform:rotateY(120deg) translateZ(75px)}.sculpture-shirt-2{transform:rotateY(240deg) translateZ(75px)}.sculpture-shirt>span{font-size:29px}.drop-orbit{top:53%;width:150vw;height:150vw}.orbit-two{width:200vw;height:200vw}.orbit-three{width:260vw;height:260vw}.drop-discover{top:76%}.room-whisper{display:none}.studio-floating{width:66vw;top:46%}.studio-floating>span{font-size:29px}.studio-invitation{top:73%}.studio-invitation h2{font-size:32px}.studio-words{top:41%}.studio-words>span{font-size:29vw}.studio-words>i{font-size:38vw}.room-nav{bottom:22px}.room-nav button{padding:10px 9px;font-size:9px}.room-nav button span{font-size:11px;margin-left:4px}.scroll-note{bottom:79px;left:0;right:0;text-align:center;font-size:10px}.journey-end{top:95px;font-size:10px}.entry-layer .door-cue{font-size:11px}}@media(prefers-reduced-motion:reduce){.journey-stage *{animation:none!important;transition:none!important}.journey-layer{will-change:auto}}
@media(min-width:701px) and (max-height:850px){.journey-tee{width:min(23%,36vh);top:37%}.journey-tee-1{top:39%}.journey-tee-2{top:35%}.drop-sculpture{width:min(30vw,44vh)}.studio-floating{width:min(31vw,43vh)}.studio-invitation{top:71%}.drop-discover{top:76%}}
/* Reference-inspired double doors, sized by both screen width and height. */
.entry-layer{background:radial-gradient(ellipse at 50% 68%,#e7e1d5,#f7f6f1 67%)}
.entry-layer .intro{top:14%}.entry-layer .intro .eyebrow{margin-bottom:15px;color:#8b8070}.entry-layer .intro h1{font-size:clamp(43px,5vw,65px)}
.entry-layer .threshold{top:27%;width:min(38svh,350px);height:auto;aspect-ratio:0.64;perspective:1400px;filter:drop-shadow(0 12px 20px #5945231c)}
.entry-layer .doorway{border-radius:50% 50% 2px 2px / 32% 32% 2px 2px;background:#33362b;box-shadow:0 0 0 2px #978168,0 0 0 7px #ded5c3,0 0 0 9px #b9aa92,0 0 0 15px #f0eade,0 0 0 16px #d1c5af;perspective:1400px;overflow:visible;isolation:isolate}
.entry-layer .beyond{border-radius:inherit;background-position:50% center}
.door-leaf{position:absolute;top:0;width:50%;height:100%;display:block;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform;overflow:hidden;filter:brightness(1);}
.door-left{left:0;transform-origin:0% 50%;border-radius:100% 0 0 1px / 32% 0 0 1px;box-shadow:inset -1px 0 0 #44362665}
.door-right{right:0;transform-origin:100% 50%;border-radius:0 100% 1px 0 / 0 32% 1px 0;box-shadow:inset 1px 0 0 #44362665}
.door-surface{position:absolute;inset:0;background-image:url('arched-door.webp');background-size:200% 100%;background-repeat:no-repeat;background-position:left center}
.door-right .door-surface{background-position:right center}.entry-layer .door-cue{bottom:-48px;left:-40px;right:-40px;font-size:12px;letter-spacing:.5px;color:#8c7c65}.entry-layer .door-shadow{left:-20%;width:140%;height:22%;top:99%;transform:perspective(250px) rotateX(60deg);background:radial-gradient(ellipse,#8070503b,transparent 67%);filter:blur(10px)}
.entry-layer .entrance-foot{color:#8c806e;bottom:100px}.entry-layer .entrance-foot button{border-color:#baae9c}.entry-layer .doorway:focus-visible{outline:2px solid #967b55;outline-offset:22px}
@media(max-width:700px){.entry-layer .threshold{top:27%;width:min(82vw,36svh);height:auto;aspect-ratio:.64}.entry-layer .intro{top:13%}.entry-layer .intro h1{font-size:46px}.entry-layer .intro .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:15px}.entry-layer .door-cue{font-size:11px;bottom:-41px}.entry-layer .entrance-foot{bottom:111px;font-size:10px}.entry-layer .entrance-foot button{font-size:10px}.entry-layer .doorway{box-shadow:0 0 0 1px #978168,0 0 0 5px #ded5c3,0 0 0 6px #b9aa92,0 0 0 11px #f0eade,0 0 0 12px #d1c5af}}
@media(max-height:650px){.entry-layer .intro{top:14%}.entry-layer .intro .eyebrow{display:none}.entry-layer .intro h1{font-size:35px}.entry-layer .threshold{top:25%;width:min(72vw,33svh)}.entry-layer .door-cue{bottom:-32px}.entry-layer .entrance-foot{display:none}}
.door-surface{background-size:260% 100%;background-position:18.75% center}.door-right .door-surface{background-position:81.25% center}.entry-layer .doorway{border-radius:50% 50% 2px 2px / 25% 25% 2px 2px}.door-left{border-radius:100% 0 0 1px / 25% 0 0 1px}.door-right{border-radius:0 100% 1px 0 / 0 25% 1px 0}
/* Minimal frosted-glass leaves with physical edge depth. */
.entry-layer .doorway{box-shadow:0 0 0 1px #a99b86,0 0 0 5px #e1dcd0,0 0 0 6px #c1b6a4,0 8px 25px #70624a18}
.door-leaf{overflow:visible;filter:none;backface-visibility:visible;transform-style:preserve-3d;box-shadow:none}
.door-surface{inset:0;transform:translateZ(7px);border:1px solid #b5a58c;background:linear-gradient(120deg,#f3eee1b8,#d0c8b687 50%,#e9e5d9c9);box-shadow:inset 2px 0 2px #ffffff90,inset -2px 0 3px #806e5038;backdrop-filter:blur(22px) saturate(.35);-webkit-backdrop-filter:blur(22px) saturate(.35);overflow:hidden}
.door-left .door-surface{border-radius:100% 0 0 1px / 25% 0 0 1px}.door-right .door-surface{border-radius:0 100% 1px 0 / 0 25% 1px 0;background:linear-gradient(240deg,#f3eee1b8,#d0c8b687 50%,#e9e5d9c9)}
.door-surface::before{content:'';position:absolute;inset:-8%;background:url('interior.webp') center/auto 110%;filter:blur(22px) saturate(.25);opacity:.23;pointer-events:none}
.door-surface::after{content:'';position:absolute;top:48%;height:18%;width:5px;border-radius:4px;background:linear-gradient(90deg,#827560,#e0d7c5 45%,#978871);box-shadow:3px 4px 5px #64533838;border:1px solid #9e907a}
.door-left .door-surface::after{right:12px}.door-right .door-surface::after{left:12px}
.door-leaf::before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,#b6b09f,#d5d1c4);transform:translateZ(-7px);border:1px solid #a89d88;backface-visibility:visible;border-radius:inherit}
.door-leaf::after{content:'';position:absolute;top:0;height:100%;width:14px;background:linear-gradient(90deg,#756c5b,#d4c8b2 30%,#a79b85 70%,#817662);backface-visibility:visible}
.door-left::after{right:0;transform-origin:right center;transform:translateZ(7px) rotateY(-90deg)}.door-right::after{left:0;transform-origin:left center;transform:translateZ(7px) rotateY(90deg)}
@media(max-width:700px){.entry-layer .doorway{box-shadow:0 0 0 1px #a99b86,0 0 0 4px #e1dcd0,0 0 0 5px #c1b6a4,0 8px 20px #70624a18}.door-surface::after{width:4px}.door-left .door-surface::after{right:10px}.door-right .door-surface::after{left:10px}}
@media(max-width:700px){.entry-layer .entrance-foot,.entry-layer .door-cue{display:none}}
/* One quiet bottom dock, with a separate bag within thumb reach. */
.room-nav{height:56px;bottom:max(24px,env(safe-area-inset-bottom));align-items:center;gap:3px;padding:7px 9px}
.room-nav button{height:40px;display:flex;align-items:center;justify-content:center;padding:0 15px;min-width:0}.room-nav button span{margin:0;font-size:12px}.room-nav .dock-search{padding:0;width:38px;margin-left:3px;border-left:1px solid #cbd3c180;border-radius:0}
.floating-bag{position:fixed;right:28px;bottom:max(24px,env(safe-area-inset-bottom));width:56px;height:56px;border:1px solid #cfd5c488;border-radius:50%;background:#f8faf3ed;backdrop-filter:blur(14px);color:#435039;box-shadow:0 4px 25px #101e1110;display:flex;align-items:center;justify-content:center;z-index:31}
.floating-bag #bag-count{position:absolute;right:-2px;top:-3px;min-width:19px;height:19px;padding:0 4px;border-radius:20px;background:#58674a;color:#fff;font-size:10px;line-height:19px;text-align:center;border:2px solid #f6f8f0}
.scroll-note{bottom:96px;right:28px}.room-whisper{bottom:42px}
@media(max-width:700px){.room-nav{left:12px;right:80px;width:auto;transform:none;height:48px;bottom:max(18px,env(safe-area-inset-bottom));padding:5px;gap:0}.room-nav button{height:36px;padding:0 5px;flex:1}.room-nav button span{font-size:11px;margin:0}.room-nav .dock-search{flex:0 0 28px;width:28px;margin-left:2px;padding-left:3px}.floating-bag{width:48px;height:48px;right:14px;bottom:max(18px,env(safe-area-inset-bottom))}.scroll-note{bottom:84px;right:0}.room-whisper{display:none}}
@media(max-width:350px){.room-nav button span{font-size:10px}.room-nav button{padding:0 4px}.room-nav .dock-search{flex-basis:25px;width:25px}}
/* The drop-room background stays full-bleed; reveals happen inside the room. */
.drop-layer{inset:0;transform:none;transform-origin:center;backface-visibility:hidden}.drop-layer .sculpture-shirt-0{transform:none}.drop-copy,.drop-sculpture,.drop-discover{will-change:transform,opacity}.drop-sculpture{filter:drop-shadow(0 18px 34px #0003)}

/* A small invitation to enter; scroll smoothly takes over the opening. */
.entry-layer .door-leaf{rotate:y 0deg;transition:rotate .65s cubic-bezier(.22,1,.36,1)}
@media(hover:hover) and (pointer:fine){
 .entry-layer .doorway:hover .door-left{rotate:y calc(-12deg * var(--door-rest,1))}
 .entry-layer .doorway:hover .door-right{rotate:y calc(12deg * var(--door-rest,1))}
}
.entry-layer .doorway:focus-visible .door-left{rotate:y calc(-12deg * var(--door-rest,1))}
.entry-layer .doorway:focus-visible .door-right{rotate:y calc(12deg * var(--door-rest,1))}

/* Explicit clips keep blurred glass inside the arch on WebKit. */
.door-left .door-surface{clip-path:inset(0 round 100% 0 0 1px / 25% 0 0 1px);-webkit-mask-image:linear-gradient(#fff,#fff)}
.door-right .door-surface{clip-path:inset(0 round 0 100% 1px 0 / 0 25% 1px 0);-webkit-mask-image:linear-gradient(#fff,#fff)}
.entry-layer .beyond{clip-path:inset(0 round 50% 50% 2px 2px / 25% 25% 2px 2px)}
