@font-face{font-family:Machro;src:url('/assets/machro-regular.otf') format('opentype');font-weight:400;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#10110e;color:#e8e4d8;font-family:Arial,Helvetica,sans-serif}body:has(dialog[open]){overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ff5a12;outline-offset:6px}::selection{background:#ff5400;color:#111}.skip{position:fixed;top:-100px;left:20px;background:#ff5400;color:#111;padding:15px;z-index:100}.skip:focus{top:15px}.header{position:absolute;top:0;left:0;width:100%;height:92px;z-index:10;display:flex;align-items:center;padding:0 3%;gap:32px;border-bottom:1px solid #d7d6c33b;background:linear-gradient(#10110ed9,transparent)}.brand{display:flex;align-items:center;gap:14px}.brand img{filter:invert(94%) sepia(9%) saturate(260%);width:58px;height:29px}.brand span{font-family:Machro;font-size:24px;line-height:.95}.header nav{display:flex;gap:34px;margin-left:auto;font:10px monospace;letter-spacing:1px}.header nav span{color:#909287;font-size:9px;vertical-align:super}.header a:hover{color:#ff5400}.header button{font:10px monospace;letter-spacing:1px}.motion{border:0;background:none;padding:12px 0}.motion span{color:#ff6b23}.checkin{background:#e8e4d8;color:#151612;border:0;padding:16px 20px;min-width:118px;display:flex;justify-content:space-between}.checkin:hover{background:#ff5400}.arrival{position:relative;height:max(820px,100svh);min-height:740px;overflow:hidden;background:radial-gradient(ellipse at 69% 46%,#414c37,#10110e 65%)}#world{position:absolute;inset:0;opacity:.88}#world canvas{display:block;width:100%;height:100%}.scanlines{position:absolute;inset:0;background:repeating-linear-gradient(transparent 0px,transparent 3px,#0000000b 4px);pointer-events:none;z-index:2}.arrival:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b0d0b94,transparent 75%),linear-gradient(0deg,#10110e 1%,transparent 28%);pointer-events:none}.hero-top{position:absolute;z-index:3;left:3%;right:3%;top:120px;display:flex;justify-content:space-between;font:9px monospace;letter-spacing:1.5px;color:#c0c4b4}.status-dot{display:inline-block;width:6px;height:6px;background:#ff5400;margin-right:10px;border-radius:50%;box-shadow:0 0 12px #ff5400}.hero-copy{position:absolute;z-index:3;left:6.5%;top:25%;width:75%}.eyebrow{font:10px/1.6 monospace;letter-spacing:1.8px}.hero-copy .eyebrow{margin:0 0 22px 4px;color:#d1d4c4}h1,h2,h3{font-family:Machro;font-weight:400;margin:0}h1{font-size:clamp(115px,17.3vw,290px);line-height:.79;letter-spacing:-.01em}.hero-copy h1>span{display:block;width:max-content}.hero-copy h1>span+span{color:#ff5400;margin-top:8px}.hero-bottom{display:flex;align-items:center;gap:80px;margin:35px 0 0 4px}.hero-bottom p{font:10px/1.8 monospace;letter-spacing:.8px}.enter{display:flex;align-items:center;gap:28px;font:10px monospace;letter-spacing:1px}.circle-arrow{border:1px solid #888d7b;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-size:23px;transition:background .3s,transform .3s}.enter:hover .circle-arrow{background:#ff5400;color:#111;transform:translateY(4px)}.scene-caption{position:absolute;bottom:27px;left:3%;right:3%;z-index:3;display:flex;align-items:center;justify-content:space-between;font:9px monospace;letter-spacing:1px;color:#a8ad9d}.scene-caption b{font-size:20px;margin:0 12px;font-weight:400}.distortion-control{display:flex;align-items:center;gap:12px}.distortion-control input{width:88px;accent-color:#ff5400}.distortion-control output{width:30px}.warp{position:absolute;right:5%;top:52%;z-index:4;border:1px solid #9ba18c77;border-radius:50%;width:96px;height:96px;background:#181d1540;backdrop-filter:blur(5px);font:9px/1.7 monospace;letter-spacing:1px;transition:background .3s,transform .4s;user-select:none}.warp:hover,.warp.active{background:#ff5400;color:#10110e;transform:rotate(-12deg)}.ticker{overflow:hidden;padding:14px 0 10px;background:#ff5400;color:#10110e;border-top:1px solid #111;border-bottom:1px solid #111}.ticker div{font-family:Machro;font-size:40px;white-space:nowrap;width:max-content;animation:marquee 30s linear infinite}.ticker span{margin:0 35px;font:30px sans-serif}@keyframes marquee{to{transform:translateX(-33.333%)}}.section{padding:70px 5%}.collection{background:#e8e4d8;color:#161712}.section-label{display:flex;justify-content:space-between;font:9px monospace;letter-spacing:1.4px;border-bottom:1px solid #7b7c7050;padding-bottom:20px}.collection-heading{display:flex;align-items:end;justify-content:space-between;margin:45px 0 40px}.collection-heading h2{font-size:clamp(62px,8vw,130px);line-height:.9}.collection-heading p{font-size:13px;line-height:1.7;max-width:280px;margin:0 0 5px}.collection-heading p span{display:block;margin-top:16px;font:10px monospace;text-transform:uppercase}.room-tabs{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #aaa99f;border-radius:9px 9px 0 0;overflow:hidden}.room-tabs button{color:#171812;border:0;border-right:1px solid #aaa99f;background:transparent;display:grid;grid-template-columns:1fr auto;padding:20px;text-align:left;font:10px monospace;gap:8px;transition:background .25s}.room-tabs button:last-child{border:0}.room-tabs button span{font:9px monospace;grid-column:1}.room-tabs button b{grid-column:2;grid-row:1/3;font:26px sans-serif}.room-tabs button[aria-selected=true]{background:#ff5400}.room-tabs button:hover{background:#d1d1c4}.room-tabs button[aria-selected=true]:hover{background:#ff5400}.room{display:grid;grid-template-columns:1.15fr 1fr;border:1px solid #aaa99f;border-top:0;border-radius:0 0 9px 9px;overflow:hidden}.product-art{min-height:570px;background:#a4ad94;position:relative;display:grid;place-items:center;overflow:hidden;background-image:radial-gradient(#c2c8b5,#939c83)}.art-label,.art-bottom{position:absolute;left:24px;right:24px;font:9px monospace;letter-spacing:1px;z-index:2}.art-label{top:25px}.art-bottom{bottom:22px;display:flex;justify-content:space-between}.garment{width:380px;height:420px;filter:drop-shadow(0 28px 15px #20261e45);transform:rotate(-5deg);transition:transform .7s}.product-art:hover .garment{transform:rotate(1deg) translateY(-8px)}.garment-shape{position:absolute;inset:15px 0 0;background:radial-gradient(ellipse at 48% 30%,#373835,#151613 80%);clip-path:polygon(30% 0,41% 0,44% 4%,56% 4%,59% 0,70% 0,100% 24%,88% 44%,76% 35%,76% 100%,24% 100%,24% 35%,12% 44%,0 24%);color:#e5e2d7}.garment-shape:after{content:'';position:absolute;inset:0;opacity:.14;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.4' filter='url(%23n)'/%3E%3C/svg%3E");pointer-events:none}.neck{position:absolute;top:0;left:40%;width:20%;height:22px;border:5px solid #151613;border-radius:0 0 50% 50%}.garment-print{position:absolute;top:65px;left:29%;width:42%;font:40px/.9 Machro;text-align:center}.print-image{height:100px;margin:13px 0 9px;background:url('/assets/campaign.png') center/cover;filter:grayscale(1) contrast(1.5)}.garment-print small{font:7px monospace}.hem{position:absolute;bottom:20px;right:26%;background:#ff5400;color:#111;padding:4px;font:6px monospace}.garment.shell .garment-shape{clip-path:polygon(32% 0,40% 0,44% 8%,56% 8%,60% 0,68% 0,87% 12%,100% 98%,79% 100%,73% 40%,74% 100%,26% 100%,27% 40%,21% 100%,0 98%,13% 12%);background:linear-gradient(90deg,#141612,#42483c 48%,#10120f 50%,#353b2f 55%,#141612)}.garment.shell .garment-print{font-size:23px;top:110px;left:55%;width:17%;text-align:left}.garment.shell .print-image,.garment.shell small{display:none}.garment.access{height:250px;width:340px;transform:rotate(-12deg)}.garment.access .garment-shape{clip-path:none;border-radius:16px;background:#ff5400;color:#111;border:1px solid #e95400;inset:0}.garment.access .neck{display:none}.garment.access .garment-print{text-align:left;top:35px;left:25px;font-size:47px;width:80%}.garment.access .print-image{height:45px;width:95px;filter:none;background:#111;mask:url('/assets/hh.svg') left center/contain no-repeat;margin:15px 0}.garment.access .hem{right:20px;bottom:22px;font-size:9px}.room-info{position:relative;padding:42px 48px;background:#dfded2;overflow:hidden}.room-number{position:absolute;right:26px;top:18px;font:110px Machro;color:#c5c6b8;pointer-events:none}.room-info .eyebrow{position:relative;font-size:8px;margin-bottom:25px}.room-info h3{font-size:clamp(55px,6vw,95px);line-height:.94;position:relative}.room-description{font-size:13px;line-height:1.7;max-width:330px;margin:22px 0}.room-info dl{margin:26px 0;font:9px monospace}.room-info dl div{display:flex;justify-content:space-between;border-top:1px solid #b5b7a7;padding:11px 0;gap:10px}.room-info dd{margin:0;text-align:right}.solid-button{display:flex;justify-content:space-between;align-items:center;background:#171912;color:#e8e4d8;border:0;width:100%;padding:19px 20px;font:10px monospace;letter-spacing:1px}.solid-button:hover{background:#ff5400;color:#111}.availability{font:9px/1.5 monospace;color:#646657;margin:12px 0 0}.after-hours{position:relative;min-height:850px;overflow:hidden;background:#181b15}.campaign-photo{position:absolute;inset:0;background:url('/assets/campaign.png') center 35%/cover;filter:grayscale(1) contrast(1.15);opacity:.78}.campaign-grid{position:absolute;inset:0;background:radial-gradient(#080a06aa 1px,transparent 1.5px) 0 0/4px 4px;mix-blend-mode:multiply}.after-hours:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#10110e96,transparent),linear-gradient(0deg,#10110e 0%,transparent 75%);pointer-events:none}.campaign-content{position:relative;z-index:1;padding:45px 5%}.campaign-content .section-label{border-color:#e8e4d84d}.campaign-content h2{font-size:clamp(120px,20vw,330px);line-height:.85;margin:65px 0 35px;color:#ff5400}.campaign-bottom{display:flex;justify-content:space-between;align-items:end}.campaign-bottom p{font-size:13px;line-height:1.8}.access-stamp{display:flex;flex-direction:column;gap:26px;background:#ff5400;color:#111;padding:25px;transform:rotate(5deg);font:9px/1.6 monospace;letter-spacing:1px}.access-stamp img{width:100px;height:50px}.house-rules{background:#181b14}.rules-title{display:flex;justify-content:space-between;align-items:end;margin:45px 0}.rules-title h2{font-size:clamp(50px,6vw,100px);line-height:.95}.rules-title p{font:11px/1.7 monospace}.rules{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #656c553f}.rules article{padding:30px 30px 5px 0}.rules article+article{border-left:1px solid #656c553f;padding-left:30px}.rules article>span{font:9px monospace;letter-spacing:1px;color:#9da68d}.rules h3{font-size:56px;line-height:.98;margin:32px 0 20px}.rules p{font-size:12px;line-height:1.6;max-width:220px;color:#b1b5a6}.checkout{background:#ff5400;color:#13150e;padding-top:50px;padding-bottom:30px}.checkout>.eyebrow{margin:0}.big-checkin{font:clamp(95px,20vw,310px)/1.1 Machro;background:none;border:0;border-bottom:1px solid #1719126b;width:100%;display:flex;align-items:center;justify-content:space-between;padding:25px 0 0;color:#13150e;text-align:left}.big-checkin>span{font:clamp(80px,15vw,220px) Arial;transition:transform .4s}.big-checkin:hover>span{transform:translate(12px,-12px)}.checkout>div{display:flex;justify-content:space-between;font:9px monospace;margin-top:25px;letter-spacing:1px}footer{padding:30px 3%;display:flex;align-items:center;justify-content:space-between;gap:20px;font:8px monospace;letter-spacing:.6px}footer>a:last-child:hover{color:#ff5400}dialog{width:min(500px,calc(100% - 30px));padding:45px 35px 35px;background:#e8e4d8;color:#171912;border:1px solid #ff5400;border-radius:12px;max-height:90svh;overflow:auto}dialog::backdrop{background:#090b08d9;backdrop-filter:blur(12px)}.dialog-close{position:absolute;right:15px;top:15px;border:0;background:transparent;color:#171912;padding:9px;font-size:18px}.dialog-intro h2{font-size:76px;line-height:.92;margin:25px 0}.dialog-intro p{font-size:13px;line-height:1.7;margin:25px 0}dialog small{display:block;font:9px/1.7 monospace;color:#656859;margin-top:18px}.key-result>p{font:13px/1.7 monospace;margin-top:25px}#access-card{position:relative;background:#ff5400;border-radius:12px;padding:25px;color:#111;min-height:270px;transform:rotate(-3deg);margin:15px 0 35px;box-shadow:0 12px 25px #1112}#access-card>img{position:absolute;right:25px;top:30px;width:80px}#access-card>span{font:48px/.92 Machro}#access-card p{font:9px monospace;letter-spacing:1px}.card-rule{height:1px;background:#111;margin:20px 0}.key-code{font:9px/1.7 monospace}.barcode{position:absolute;right:25px;bottom:30px;height:35px;width:100px;background:repeating-linear-gradient(90deg,#111 0 2px,transparent 2px 4px,#111 4px 5px,transparent 5px 8px)}[hidden]{display:none!important}.motion-off .ticker div{animation:none}.motion-off *{scroll-behavior:auto!important;transition:none!important}.webgl-fallback #world:before{content:'';position:absolute;inset:15% 10% 10% 38%;border:2px solid #ff5400;box-shadow:0 0 60px #ff540044,inset 0 0 90px #ff540033;transform:perspective(500px) rotateY(-25deg)}
@media(min-width:1700px){.hero-copy{top:25%;width:70%}}
@media(max-width:900px){.header{gap:20px}.header nav{gap:18px}.header nav a{font-size:9px}.coordinates{display:none}.hero-copy{left:5%;top:29%;width:90%}h1{font-size:22vw}.hero-bottom{gap:35px}.room-info{padding:35px 25px}.garment{width:300px;height:360px}.product-art{min-height:530px}.garment-print{font-size:32px}.print-image{height:85px}.rules h3{font-size:43px}.campaign-content h2{font-size:25vw}.after-hours{min-height:760px}footer{flex-wrap:wrap}.section{padding:55px 5%}}
@media(max-width:600px){.header{height:78px;gap:16px;padding:0 5%}.brand{gap:10px}.brand img{width:44px;height:22px}.brand span{font-size:20px}.header nav{display:none}.header .motion{margin-left:auto;font-size:8px}.checkin{min-width:88px;padding:13px 12px;font-size:8px!important}.arrival{height:calc(100svh - 30px);min-height:700px;max-height:1000px}.hero-top{top:103px;left:5%;font-size:7px;right:5%;letter-spacing:.8px}.hero-top>span:last-child{display:none}.hero-copy{top:31%}h1{font-size:25vw;line-height:.87}.hero-copy .eyebrow{font-size:7px;letter-spacing:1px}.hero-bottom{gap:15px;justify-content:space-between;margin-top:28px}.hero-bottom p{font-size:8px}.enter{font-size:8px;gap:12px}.circle-arrow{width:34px;height:34px}.warp{top:18%;right:7%;width:72px;height:72px;font-size:7px}.scene-caption{left:5%;right:5%;bottom:22px;align-items:start;gap:22px;flex-direction:column;font-size:8px}.scene-caption b{font-size:16px}.distortion-control{width:100%;justify-content:space-between}.distortion-control input{width:100px}.ticker div{font-size:30px}.collection-heading{margin:30px 0;display:block}.collection-heading h2{font-size:65px}.collection-heading p{margin-top:22px;font-size:12px}.section-label{font-size:7px;letter-spacing:.7px;gap:20px}.section-label>span:last-child{text-align:right}.room-tabs button{padding:13px 10px;font-size:9px;gap:7px}.room-tabs button span{font-size:7px;line-height:1.4}.room-tabs button b{display:none}.room{grid-template-columns:1fr}.product-art{min-height:430px}.garment{height:330px;width:290px}.room-info{padding:30px}.room-info h3{font-size:70px}.room-info .eyebrow{margin-bottom:18px}.room-description{max-width:none}.room-number{font-size:100px}.after-hours{min-height:760px}.campaign-content{padding:30px 5%}.campaign-content h2{font-size:37vw;margin-top:85px}.campaign-photo{background-position:62% center}.campaign-bottom p{font-size:11px;max-width:240px}.access-stamp{padding:15px;gap:12px;font-size:7px}.access-stamp img{width:65px;height:34px}.campaign-bottom{gap:20px}.rules-title{display:block;margin:30px 0}.rules-title h2{font-size:55px}.rules-title p{margin-top:20px}.rules{grid-template-columns:1fr}.rules article{padding:25px 0!important;border:0!important;border-top:1px solid #656c553f!important}.rules h3{font-size:50px;margin:20px 0 12px}.rules p{max-width:none}.checkout>.eyebrow{font-size:8px}.big-checkin{font-size:26vw;padding-top:24px}.big-checkin>span{font-size:21vw}.checkout>div{font-size:7px;gap:15px}footer{font-size:7px;gap:25px;justify-content:space-between;padding:30px 5%}footer>span{max-width:130px}footer>span:nth-child(3){display:none}.dialog-intro h2{font-size:66px}}


/* Machro has unusually tall ink bounds; keep the hero caption clear. */
.hero-copy>.eyebrow{transform:translateY(-32px)}

/* Generated product photography, displayed as a three-frame asset sheet. */
.product-art{background:#b1b8a6;min-height:600px}
.garment,.garment.access{width:300px;height:600px;filter:none;transform:none;border-radius:0;background-image:url('/assets/uniforms.png');background-size:300% 100%;background-repeat:no-repeat;background-position:0 50%;mix-blend-mode:multiply;transition:transform .6s}
.garment.shell{background-position:50% 50%}.garment.access{background-position:100% 50%}.garment-shape{display:none}.product-art:hover .garment{transform:scale(1.035)}
@media(max-width:600px){.product-art{min-height:500px}.garment,.garment.access{width:250px;height:500px}}
/* Immersive hotel — the same live scene becomes the entire viewport. */
#hotel-experience{width:100vw;max-width:none;height:100dvh;max-height:none;inset:0;margin:0;padding:0;border:0;border-radius:0;overflow:hidden;background:#111510;color:#e8e4d8}
#hotel-stage,#hotel-stage #world{position:absolute;inset:0;opacity:1}#hotel-stage{z-index:0}#hotel-stage canvas{touch-action:pan-y}
.hotel-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0a100a99,transparent 50%),linear-gradient(0deg,#091009c9,transparent 24%,transparent 82%,#091009b3)}
.hotel-top{position:absolute;top:0;left:0;width:100%;padding:25px 3%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #d6e0c526;z-index:4}
.hotel-location{font:9px monospace;letter-spacing:1.5px;color:#a6b19a}.hotel-location b{color:#e8e4d8;font-weight:400}.hotel-controls{display:flex;gap:18px}.hotel-controls button{border:0;background:none;font:9px monospace;letter-spacing:1px;padding:12px 0;color:#d5dccb}.hotel-controls button:last-child{border:1px solid #a5b09166;padding:12px 17px}.hotel-controls button:hover{color:#ff6b20}
.hotel-guide{position:absolute;top:29%;left:5%;max-width:340px;pointer-events:none;transition:opacity .35s,filter .5s,transform .6s;z-index:2}.hotel-guide .eyebrow{font-size:8px;color:#b0bba0;display:block;margin-bottom:25px}.hotel-guide h2{font-size:clamp(60px,7.7vw,125px);line-height:.95;color:#e8e4d8;margin:0 0 20px}.hotel-guide p{font:11px/1.8 monospace;max-width:230px;color:#c2cbb6}.hotel-guide button{pointer-events:auto;margin-top:24px;background:#ff5400;color:#111;border:0;padding:17px 20px;font:9px monospace;letter-spacing:1px}
#hotel-experience[data-room="1"] .hotel-guide h2{color:#ff6423}#hotel-experience[data-room="2"] .hotel-guide h2{color:#b9dbbe}#hotel-experience[data-room="3"] .hotel-guide h2{color:#d0e0f4}
.elevator{position:absolute;right:3%;bottom:80px;z-index:4;width:360px;background:#111810b8;border:1px solid #929f7a55;backdrop-filter:blur(16px);padding:18px;border-radius:3px}.elevator-heading{font:8px monospace;letter-spacing:1.5px;display:flex;justify-content:space-between;color:#b7c2a6;margin-bottom:17px}.elevator>div{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.elevator button{border:1px solid #7f8a6e55;background:#1c2317;color:#bdc8ad;padding:13px 4px 10px;display:flex;flex-direction:column;align-items:center;gap:10px}.elevator button b{font:34px/1 Machro}.elevator button span{font:6px monospace;white-space:nowrap;letter-spacing:.3px}.elevator button[aria-current]{background:#ff5400;color:#10150d;border-color:#ff5400}.elevator button:hover{border-color:#ff7e35}
.hotel-bottom{position:absolute;bottom:25px;left:3%;right:3%;display:flex;justify-content:space-between;font:8px monospace;letter-spacing:1px;color:#a4b091;pointer-events:none}
.travel-readout{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;opacity:0;transition:opacity .25s;z-index:3}.travel-readout>span{font:8px monospace;letter-spacing:4px;color:#cfdbbd}.travel-readout b{display:block;font:120px/1.2 Machro;color:#e2ebd5;opacity:.45}.travel-readout>div{height:1px;background:#ff5400;width:150px;transform-origin:left;animation:travel-line 1s ease-in-out infinite alternate}.is-travelling .travel-readout{opacity:1}.is-travelling .hotel-guide{opacity:0;filter:blur(14px);transform:translateX(-40px) scale(.94)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes travel-line{from{transform:scaleX(.15)}to{transform:scaleX(1)}}
.motion-off .travel-readout>div{animation:none}
@media(max-width:800px){.hotel-location{display:none}.hotel-controls{gap:12px}.hotel-top{padding:20px 5%}.hotel-guide{top:22%;left:5%;max-width:210px}.hotel-guide h2{font-size:65px}.hotel-guide p{font-size:10px;max-width:185px}.elevator{right:5%;left:5%;bottom:65px;width:auto;max-width:370px;margin-left:auto}.hotel-bottom{left:5%;right:5%;bottom:22px;font-size:7px}.hotel-bottom span:last-child{display:none}}
@media(max-width:480px){.hotel-top .brand span{display:none}.hotel-controls{gap:13px}.hotel-controls button{font-size:8px}.hotel-top .brand img{width:40px}.hotel-guide{top:19%;max-width:190px}.hotel-guide h2{font-size:52px;line-height:1}.hotel-guide .eyebrow{font-size:7px;max-width:160px;line-height:1.6;margin-bottom:18px}.hotel-guide p{font-size:9px;max-width:160px}.hotel-guide button{font-size:8px;padding:14px 12px;max-width:180px}.elevator{padding:12px}.elevator-heading{margin-bottom:10px}.elevator button{padding:10px 3px}.elevator button b{font-size:30px}.travel-readout b{font-size:95px}.travel-readout>span{letter-spacing:2px;font-size:7px}}

/* Full garment viewports: original artwork, no sleeve cropping or hover zoom. */
.product-art{min-height:560px;padding:64px 24px;background:#b1b8a6}
.garment,.garment.access{width:100%;height:auto;aspect-ratio:3/4;max-width:480px;background-size:contain;background-position:center;background-image:url('/assets/uniform-tee.svg');mix-blend-mode:normal;flex-shrink:0}
.garment.shell{background-image:url('/assets/uniform-shell.svg');background-position:center}
.garment.access{background-image:url('/assets/uniform-access.svg');background-position:center}
.product-art:hover .garment{transform:none}
.residents{background:#171a14;color:#e7e4d8}
.residents-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin:40px 0}
.residents h2{font-family:Machro,sans-serif;font-size:clamp(64px,9vw,140px);font-weight:400;line-height:.92;margin:0}
.residents-heading p{max-width:310px;line-height:1.7}
.residents figure{margin:0;border:1px solid #5b6050}
.residents img{display:block;width:100%;height:auto;object-fit:contain}
.residents figcaption{display:flex;justify-content:space-between;gap:20px;padding:20px;font:11px monospace}
@media(max-width:600px){.product-art{min-height:0;padding:55px 16px}.garment,.garment.access{height:auto;width:100%}.residents-heading{display:block}.residents-heading p{margin-top:24px}.residents figcaption{flex-direction:column;gap:8px}}

/* A single-line signature with a moving signal slice. */
.header{gap:24px;height:104px}.brand{flex-shrink:0;gap:16px}.brand img{width:66px;height:34px}.brand .brand-wordmark{display:block;position:relative;white-space:nowrap;font:44px/1 Machro;letter-spacing:.1px;color:#e8e4d8}
.brand-wordmark:after{content:attr(data-text);position:absolute;inset:0;color:#ff6320;pointer-events:none;clip-path:inset(46% 0 45%);opacity:0;animation:brand-signal 7s infinite}.brand:hover .brand-wordmark:after{animation-duration:1.8s}.brand img{transition:transform .5s}.brand:hover img{transform:perspective(200px) rotateY(-24deg)}
@keyframes brand-signal{0%,62%,82%,100%{opacity:0;transform:translateX(0);clip-path:inset(46% 0 45%)}65%{opacity:.85;transform:translateX(-4px);clip-path:inset(18% 0 70%)}72%{opacity:.8;transform:translateX(5px);clip-path:inset(60% 0 27%)}78%{opacity:.5;transform:translateX(-2px);clip-path:inset(85% 0 7%)}}
.header nav{gap:20px;font-size:9px}.header .motion{font-size:9px}.hotel-location{display:none}.hotel-top .brand-wordmark{font-size:44px}
.directory{background:#141811;color:#e8e4d8;border-bottom:1px solid #5e66533d}.directory-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:40px 0}.directory-heading h2{font-size:clamp(68px,9vw,140px);line-height:.9}.directory-heading p{font:12px/1.8 monospace;color:#adb69d;max-width:320px}.portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.portal{position:relative;display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid #77836460;overflow:hidden;background:#20261b;transition:background .3s,border-color .3s,transform .3s}.portal:hover{border-color:#ff6320;background:#293121;transform:translateY(-5px)}.portal-meta,.portal-action{font:8px/1.5 monospace;letter-spacing:1px;display:flex;justify-content:space-between;gap:12px}.portal-meta b{font:20px Arial}.portal h3{font:clamp(42px,5vw,80px)/.94 Machro;margin:25px 0 12px}.portal p{font-size:12px;line-height:1.7;color:#c0c7b4;margin:0 0 25px;min-height:42px}.portal-action{margin-top:auto;border-top:1px solid #7d896d66;padding-top:18px;color:#ff7135}.portal-product,.portal-people{display:block;width:100%;height:220px;object-fit:contain;margin-top:22px}.portal-product{background:#b1b8a6}.portal-people{background:#10140d}.portal-door{height:220px;width:58%;margin:22px auto 0;display:grid;place-items:center;border:1px solid #ff6320;box-shadow:inset 0 0 45px #ff63201a,0 0 28px #ff632019;transform:perspective(450px) rotateY(-18deg);transition:transform .7s;position:relative}.portal-door:after{content:'';position:absolute;inset:12px;border:1px solid #8f9d7366}.portal-door img{width:60%;filter:invert(90%)}.portal:hover .portal-door{transform:perspective(450px) rotateY(16deg)}
.motion-off .brand-wordmark:after{animation:none;display:none}
@media(max-width:1050px){.header{flex-wrap:wrap;height:130px;gap:8px 20px;padding-top:17px;padding-bottom:15px}.header .brand{width:100%}.header nav{margin-left:0;margin-right:auto}.header .checkin{padding:10px 15px}.hero-top{top:153px}.hotel-top .brand-wordmark{font-size:36px}.hotel-top{gap:16px}.portal{padding:18px}.portal-product,.portal-people,.portal-door{height:180px}}
@media(max-width:700px){.portal-grid{grid-template-columns:1fr}.portal{padding:24px}.portal-product,.portal-people,.portal-door{height:260px}.portal h3{font-size:68px}.directory-heading{display:block}.directory-heading p{margin-top:24px}.portal p{min-height:0}.hotel-top{flex-wrap:wrap;gap:10px;padding-top:16px}.hotel-top .brand{width:100%}.hotel-controls{margin-left:auto}.hotel-guide{top:27%}}
@media(max-width:600px){.header{height:132px;gap:10px;padding-top:18px;padding-bottom:14px}.header .brand{gap:12px}.brand img,.hotel-top .brand img{width:52px;height:27px}.brand .brand-wordmark,.hotel-top .brand-wordmark{font-size:clamp(31px,8.2vw,42px);display:block}.header nav{display:flex;gap:13px}.header nav a{font-size:8px;letter-spacing:0}.header .motion{margin-left:0;font-size:7px}.header .checkin{min-width:74px;padding:10px;font-size:7px!important}.hero-top{top:154px}.warp{top:23%}.hero-copy{top:37%}.directory-heading h2{font-size:70px}.portal-meta{font-size:9px}}


.hotel-top .brand .brand-wordmark{display:block}

/* Wayfinding: one clean header, open architecture, real destinations. */
.header{position:absolute;height:94px;display:flex;flex-wrap:nowrap;padding:0 3%;gap:26px;background:linear-gradient(#0d100de8,#0d100d70);border-color:#d7d6c326}.header .brand{width:auto;gap:14px}.header .brand img{width:58px;height:30px}.header .brand-wordmark{font-size:40px}.header nav{display:flex;margin-left:auto;margin-right:0;gap:23px}.header nav a{font:10px monospace;letter-spacing:.6px;white-space:nowrap;display:flex;gap:6px;align-items:center}.header nav small{font-size:8px;color:#7f8976}.header nav a[aria-current]{color:#ff6926}.header .checkin{min-width:90px;padding:13px;font:9px monospace;border:1px solid #a5ae975c;background:transparent;color:#e8e4d8}.header .checkin:hover{background:#ff5400;color:#10110e}.hero-copy{top:auto;left:4%;bottom:11%;width:auto;max-width:50%}.arrival-location{display:flex;align-items:center;gap:10px;font:9px monospace;letter-spacing:1px;color:#d1d8c5}.arrival-location>span:not(.location-dot){color:#7e8874}.location-dot{width:5px;height:5px;border-radius:50%;background:#ff6320;box-shadow:0 0 12px #ff6320}.lobby-title{font:clamp(40px,5vw,78px)/1 Machro;margin:22px 0}.hero-copy .enter{display:flex;width:max-content;gap:32px;padding:13px 0;border-bottom:1px solid #9ca88d8c}.hero-copy .circle-arrow{border:0;width:auto;height:auto;font-size:28px}.lobby-wayfinding{position:absolute;bottom:11%;right:4%;width:300px;z-index:4;border-top:1px solid #99a58a8c}.lobby-wayfinding a{display:grid;grid-template-columns:44px 1fr 24px;gap:15px;align-items:center;padding:20px 0;border-bottom:1px solid #99a58a70;transition:color .3s,transform .3s;font:11px monospace;letter-spacing:1px}.way-number{font:44px/1 Machro;color:#b4c0a4}.lobby-wayfinding small{display:block;margin-top:9px;font:7px monospace;color:#a5b094;letter-spacing:1px}.lobby-wayfinding b{font:27px Arial}.lobby-wayfinding a:hover{color:#ff6320;transform:translateX(5px)}.floor-label{display:flex;align-items:center;gap:15px}.floor-label b{font:52px/1 Machro}.section-label{align-items:center}.hotel-top{flex-wrap:nowrap;gap:25px;padding:22px 3%}.hotel-top .brand{width:auto}.hotel-top .brand .brand-wordmark{font-size:40px}.hotel-controls{margin-left:auto}.hotel-guide{top:29%}
@media(max-width:800px){.header{gap:18px}.header .brand-wordmark{font-size:32px}.header .brand img{width:46px;height:24px}.header nav{gap:13px}.header nav a{font-size:8px;letter-spacing:0}.header .checkin{display:none}.lobby-wayfinding{width:245px}.hotel-top .brand .brand-wordmark{font-size:32px}.hotel-controls{gap:12px}.hotel-guide{top:25%}}
@media(max-width:600px){.header{height:112px;display:grid;grid-template-columns:1fr;padding:17px 5%;gap:15px}.header .brand{width:auto;gap:12px}.header .brand-wordmark{font-size:36px}.header nav{margin:0;justify-content:space-between;gap:15px}.header nav a{font-size:9px}.header nav small{font-size:8px}.header .brand img{width:48px;height:25px}.hero-copy{left:5%;bottom:235px;max-width:90%}.arrival-location{font-size:8px}.lobby-title{font-size:49px;margin:15px 0}.hero-copy .enter{font-size:10px;padding:8px 0}.lobby-wayfinding{left:5%;right:5%;bottom:35px;width:auto}.lobby-wayfinding a{padding:14px 0;grid-template-columns:38px 1fr 24px}.way-number{font-size:36px}.lobby-wayfinding small{margin-top:5px}.arrival{min-height:780px;height:100svh}.hotel-top{flex-wrap:wrap;padding:17px 5%;gap:10px}.hotel-top .brand{width:100%}.hotel-top .brand .brand-wordmark{font-size:34px}.hotel-controls{margin-left:auto}.hotel-guide{top:27%}}

/* Walkable hotel: the scene leads; instructions stay out of the center. */
#hotel-stage canvas{touch-action:none}.hotel-vignette{background:linear-gradient(0deg,#03090ac9,transparent 24%,transparent 80%,#03090ab0)}.hotel-guide{top:110px;left:3%;max-width:260px}.hotel-guide h2{font-size:46px;line-height:1;margin-bottom:12px}.hotel-guide .eyebrow{font-size:8px;margin-bottom:12px}.hotel-guide p{font:10px/1.7 monospace;max-width:225px}.hotel-guide button{font-size:8px;padding:10px 0;background:transparent;color:#ff7944;border-bottom:1px solid #ff794477;margin-top:8px}.is-travelling .hotel-guide{opacity:1;filter:none;transform:none}.travel-readout{display:none}.elevator{width:288px;bottom:58px;padding:12px;background:#0a1212b8;border-radius:0}.elevator-heading{font-size:7px;margin-bottom:10px}.elevator button{padding:8px 3px;gap:6px;background:#182322}.elevator button b{font-size:27px}.elevator button span{font-size:5px}.elevator button[aria-current]{background:#e45a22}.hotel-bottom{font-size:7px;bottom:20px}.walk-reticle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#d8e9e35c;font:20px monospace;pointer-events:none}.walk-controls{position:absolute;left:3%;bottom:60px;display:grid;grid-template-columns:repeat(3,42px);gap:5px;z-index:4}.walk-controls button{height:42px;border:1px solid #a5b5a455;background:#0a1414aa;color:#cedfd2;font:22px Arial;touch-action:none;user-select:none}.walk-controls button:first-child{grid-column:2}.walk-controls button:nth-child(2){grid-column:1}.walk-controls button:active{background:#e45a22;color:#111}.walk-controls:after{content:'WALK / DRAG TO LOOK';grid-column:1/4;font:7px monospace;letter-spacing:.5px;color:#a9beb4;margin-top:5px}.walk-controls button:hover{border-color:#e45a22}#inspect-nearby{position:absolute;left:50%;bottom:205px;transform:translateX(-50%);z-index:5;padding:14px 18px;border:1px solid #e67745;background:#101a18e8;color:#e9e6d8;font:9px monospace;letter-spacing:1px;white-space:nowrap}#inspect-nearby span{margin-left:22px;color:#ff7841}#garment-inspector{width:min(900px,94vw);padding:0;border-radius:0;max-height:90dvh;border:1px solid #838e7f;overflow:auto}#garment-inspector[open]{display:grid;grid-template-columns:1.1fr 1fr}.inspect-art{background:#b1b8a6;min-height:0;display:flex;align-items:center}.inspect-art img{width:100%;height:65dvh;object-fit:contain}.inspect-copy{padding:65px 35px 35px;display:flex;flex-direction:column;justify-content:center}.inspect-copy h2{font:64px/.96 Machro;margin:18px 0}.inspect-copy>p{font-size:13px;line-height:1.7}.inspect-copy .solid-button{margin-top:28px}.inspect-collection{background:none;border:0;border-bottom:1px solid #a0a497;color:#222a20;padding:20px 0;text-align:left;font:9px monospace}.hotel-top .brand-wordmark:after{display:none}
@media(max-width:600px){.hotel-guide{top:145px;left:5%;max-width:180px}.hotel-guide h2{font-size:32px}.hotel-guide p{font-size:8px;max-width:170px}.hotel-guide .eyebrow{font-size:7px}.hotel-guide button{display:none}.elevator{left:auto;right:5%;width:200px;bottom:62px;padding:9px}.elevator button b{font-size:23px}.elevator button span{font-size:4px;letter-spacing:0}.elevator button{padding:8px 1px}.walk-controls{left:5%;bottom:62px;grid-template-columns:repeat(3,35px);gap:3px}.walk-controls button{height:35px;font-size:18px}.walk-controls:after{font-size:6px}.hotel-bottom{left:5%;font-size:6px;max-width:90%;line-height:1.6}#inspect-nearby{bottom:195px;font-size:8px}#garment-inspector[open]{display:block}.inspect-art img{height:42dvh}.inspect-copy{padding:25px}.inspect-copy h2{font-size:48px}.inspect-copy .solid-button{margin-top:12px}}

@media(max-width:600px){.elevator{width:min(200px,46vw)}}

/* Align Machro’s visible capitals with the HH icon, compensating for font metrics. */
.brand .brand-wordmark{transform:translateY(.15em)}

/* Chapter 02: printed anime editorial, vermilion / cobalt / ink. */
.arrival-art{position:absolute;inset:0;background:url('/assets/residents-002.png') center 43% / cover no-repeat;animation:arrival-breathe 18s ease-in-out infinite alternate;pointer-events:none}
@keyframes arrival-breathe{from{transform:scale(1.015)}to{transform:scale(1.06) translateY(-.4%)}}
.arrival:after{background:linear-gradient(0deg,#080b19 0%,#080b1999 19%,transparent 46%),linear-gradient(180deg,#080b19b8,transparent 24%)}
.scanlines{opacity:.2}.header{background:linear-gradient(#090b1ce8,#090b1c30)}
.residents{background:#10132b}.residents figure{border-color:#4a4f77}.residents figcaption{color:#b5bcf6}.residents-heading p{color:#b5bcce}
.ticker{background:#ff3c18}.way-number{color:#ff563b}.lobby-wayfinding{border-color:#dad8ef80}.lobby-wayfinding small{color:#c0c5e4}
.lobby-wayfinding a{border-color:#dad8ef60}.hotel-dialog{background:#080b22}.hotel-directory button[aria-current=true]{background:#ff3c18}
@media(max-width:600px){.arrival-art{background-position:52% 25%;background-size:auto 74%;background-repeat:no-repeat;background-color:#080b19}.arrival:after{background:linear-gradient(0deg,#080b19 10%,#080b1999 36%,transparent 65%)}.arrival-art{animation-duration:22s}}

/* Restore the actual rendered world as the arrival, never a cover image. */
#world{opacity:1}.arrival{background:#080b22}.arrival-art{display:none}
.arrival:after{background:linear-gradient(0deg,#080b19 0%,transparent 28%),linear-gradient(180deg,#080b1980,transparent 22%)}
.warp{top:24%;right:4%;width:88px;height:88px;background:#090d234d;border-color:#8998e0}
#hotel-warp.active{background:#ff3c18;color:#080b19}
.scene-caption{bottom:22px}.scene-caption .coordinates{display:none}.scene-caption>span:first-child{display:none}.distortion-control{margin-left:auto}
@media(max-width:600px){.warp{top:150px;width:68px;height:68px;right:5%;font-size:7px}.scene-caption{bottom:10px}.distortion-control{font-size:7px;width:100%;justify-content:flex-end}.lobby-wayfinding{bottom:48px}.hotel-controls{gap:8px}.hotel-controls button{font-size:8px;padding:9px 7px}}

/* Keep optical texture in the renderer, without a screen-door overlay. */
.scanlines{display:none}.hotel-vignette{opacity:.35}

/* Night lobby / architectural edition. Keep the viewport quiet and navigable. */
.header{height:88px;background:linear-gradient(#100d10d9,#100d1010);border-bottom:1px solid #e3d7c31c}
.arrival{background:#151012}.arrival:after{background:linear-gradient(0deg,#120d11b8,transparent 28%);pointer-events:none}
.lobby-title{font-size:clamp(38px,4.3vw,65px);margin:17px 0 27px}.hero-copy{bottom:9%}.lobby-wayfinding{bottom:9%;width:255px}
.warp{width:70px;height:70px;border-color:#b6a18c66;background:#100c1040;font-size:7px}
.hotel-top{background:linear-gradient(#100c10b0,transparent);border-bottom:1px solid #e3d7c31a}
.hotel-guide{top:105px;max-width:195px}.hotel-guide h2{font-size:36px}.hotel-guide p{font-size:9px;max-width:180px;color:#c9bba9}.hotel-guide .eyebrow{color:#bba892}
.elevator{background:#110d10bf;border:1px solid #c4b49a40;backdrop-filter:blur(12px);width:272px}.elevator button{background:#231d1db0;color:#ddcfbb;border-color:#b9a68d30}.elevator button[aria-current]{background:#d63a1c;color:#f2e8d8}
.walk-controls button{background:#110d1080;border-color:#b5a48f44;color:#e4d5c2}.hotel-bottom{color:#b8a693}.walk-reticle{opacity:.45}
@media(min-width:700px){.hotel-guide p{opacity:0;transition:opacity .25s}.hotel-guide:hover p{opacity:1}.walk-controls{opacity:.5;transition:opacity .25s}.walk-controls:hover{opacity:1}}
@media(max-width:600px){.header{height:112px}.hero-copy{bottom:235px}.lobby-wayfinding{width:auto;bottom:48px}.hotel-guide{top:143px;max-width:160px}.hotel-guide h2{font-size:29px}.hotel-guide p{font-size:8px}.elevator{width:46vw}.warp{top:145px}}

/* Architectural editorial: clear destinations, readable controls, open view. */
.hotel-top{padding:22px 32px;border:0;background:linear-gradient(#070a10c9,transparent)}
.hotel-top .brand img{width:48px;height:26px}.hotel-top .brand .brand-wordmark{font-size:32px}
.hotel-controls{gap:16px}.hotel-controls button{font:11px monospace;letter-spacing:.4px;min-height:44px;padding:10px 14px}
.hotel-guide{top:112px;left:32px;max-width:230px}.hotel-guide h2{font-size:44px;color:#e8e4d8!important}
.hotel-guide .eyebrow{font:10px/1.5 monospace;letter-spacing:1px;color:#a6b0c1}.hotel-guide p{opacity:1;font:12px/1.6 Arial;max-width:210px;color:#b4bcc9}
.hotel-guide button{font:11px monospace;padding:12px 0;color:#e8e4d8;border-color:#bdc7d66b}
.elevator{left:50%;right:auto;transform:translateX(-50%);bottom:28px;width:min(580px,calc(100% - 64px));padding:0;border:1px solid #bac5d02e;background:#080d14df;backdrop-filter:blur(14px)}
.elevator-heading{display:none}.elevator>div{gap:0}.elevator button{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:12px;min-height:66px;padding:12px 10px;border:0;border-right:1px solid #bac5d020;background:transparent}
.elevator button:last-child{border-right:0}.elevator button b{font:28px/1 Machro}.elevator button span{font:10px/1.4 monospace;letter-spacing:0;text-align:left;max-width:75px}.elevator button[aria-current]{background:#ff5400;color:#fff1df}
.walk-controls{bottom:34px;left:32px;opacity:.75}.walk-controls button{background:#080d14b0;border-color:#bac5d030}.walk-controls:after{font-size:8px}
.hotel-bottom{display:none}.walk-reticle{font-size:13px;opacity:.4}
#inspect-nearby{bottom:116px;padding:14px 20px;font-size:11px;background:#e8e4d8;color:#10141b;border:0;box-shadow:0 4px 25px #0005}#inspect-nearby span{color:#713623}
@media(min-width:900px){.walk-controls{grid-template-columns:repeat(3,32px);gap:3px}.walk-controls button{height:32px;font-size:17px}}
@media(max-width:900px){.walk-controls{bottom:120px;left:24px}.elevator{width:calc(100% - 48px)}.hotel-guide{max-width:190px}.hotel-guide p{font-size:11px}.hotel-controls{gap:4px}.hotel-controls button{font-size:10px;padding:10px}.hotel-top{padding:18px 24px}}
@media(max-width:600px){.hotel-top{flex-wrap:nowrap;padding:14px 16px;gap:12px}.hotel-top .brand{width:auto}.hotel-top .brand img{width:40px;height:22px}.hotel-top .brand .brand-wordmark{display:none}.hotel-controls{gap:0}.hotel-controls button{font-size:10px;padding:10px}.hotel-guide{top:88px;left:20px;max-width:180px}.hotel-guide h2{font-size:34px}.hotel-guide .eyebrow{font-size:9px}.hotel-guide p{font-size:11px}.hotel-guide button{display:block;font-size:10px}.elevator{bottom:18px;width:calc(100% - 32px)}.elevator button{flex-direction:column;gap:6px;min-height:72px;padding:10px 3px}.elevator button b{font-size:27px}.elevator button span{font-size:9px;text-align:center;max-width:70px}.walk-controls{bottom:116px;left:20px;grid-template-columns:repeat(3,36px)}.walk-controls button{height:36px}#inspect-nearby{left:auto;right:18px;bottom:126px;transform:none;font-size:10px;padding:13px}#inspect-nearby span{display:none}}
.elevator button.is-destination{box-shadow:inset 0 -3px #ff5400;background:#34382e;color:#f0eee7}.is-travelling .hotel-guide h2{color:#e8e4d8}.elevator button span{white-space:normal}
