.world-page{background:var(--maza-ink)}.world-page .tour-header{z-index:50;background:linear-gradient(#11120fc7,#11120f14);border-bottom:0;padding:1.5rem 4.5%;position:fixed}.tour-edition{letter-spacing:.21em;opacity:.8;margin-left:2vw;margin-right:auto;font-size:9px}.tour-header-contact{align-items:center;gap:1rem;min-height:44px;font-size:11px;display:flex}.tour-header-contact svg{width:21px}.tour-menu-toggle{align-items:center;gap:1.1rem;min-height:44px;margin-left:2rem;display:flex;font-size:11px!important}.tour-menu-toggle i{border-top:1px solid;border-bottom:1px solid;width:25px;height:11px;position:relative}.tour-menu-toggle[aria-expanded=true] i{transform:rotate(90deg)}.tour-menu{background:var(--maza-paper);width:300px;color:var(--maza-ink);padding:1rem 1.5rem;position:absolute;top:calc(100% + .3rem);right:4.5%;box-shadow:0 20px 60px #0003}.tour-menu[hidden]{display:none!important}.tour-menu a{border-bottom:1px solid #11120f21;align-items:center;gap:1rem;min-height:53px;font-size:12px;display:flex}.tour-menu a:last-child{border-bottom:0}.tour-menu a>span{color:#8c7750;font-size:9px}.tour-menu a>svg{width:20px;margin-left:auto}.tour-menu a[aria-current]{color:#826a3e}.world-journey .scroll-scrub__stage:after{content:"";pointer-events:none;background:linear-gradient(90deg,#11120fa8,#11120f1a 58%,#11120f26),linear-gradient(#0000 50%,#11120f9e);position:absolute;inset:0}.world-journey .scroll-scrub__chapter{min-height:220svh!important}.world-journey .scroll-scrub__chapter:first-child{min-height:260svh!important}.world-journey .scroll-scrub__chapter:last-child{min-height:270svh!important}.world-journey .scroll-scrub__connector-band{min-height:65svh!important}.world-journey .scroll-scrub__chapter-pin{align-items:flex-end;min-height:100svh;padding:8rem 7% 17svh}.world-journey .scroll-scrub__copy{width:min(660px,65vw)}.world-journey .scroll-scrub__copy:before{display:none}.world-journey .scroll-scrub__title{font-family:var(--maza-serif);letter-spacing:-.045em;max-width:12ch;font-size:clamp(64px,7.6vw,125px);font-weight:400;line-height:.94}.world-journey .scroll-scrub__kicker{font:400 10px var(--maza-sans);color:var(--maza-paper);letter-spacing:.22em;max-width:none;margin-bottom:1.7rem}.world-journey .scroll-scrub__body{max-width:37ch;color:var(--maza-paper);margin-top:1.7rem;font-size:13px;line-height:1.85}.world-journey .scroll-scrub__actions{margin-top:1.6rem}.tour-actions{flex-direction:column;align-items:flex-start;gap:1.2rem;display:flex}.tour-scroll-hint{letter-spacing:.17em;text-transform:uppercase;opacity:.75;font-size:8px}.tour-discover{border-bottom-color:#f3efe666!important;gap:1rem!important;font-size:11px!important}.tour-focus-mark{border:1px solid var(--maza-gold);border-radius:50%;place-items:center;width:30px;height:30px;flex:none;position:relative;font-size:0;line-height:0;letter-spacing:0;display:grid}.tour-focus-mark:before,.tour-focus-mark:after{content:"";position:absolute;top:50%;left:50%;width:11px;height:1px;background:currentColor;transform:translate(-50%,-50%);pointer-events:none}.tour-focus-mark:after{width:1px;height:11px}.tour-contact{letter-spacing:.015em;font-size:13px}.world-journey .scroll-scrub__progress{background:#f3efe629;width:1px;height:auto;inset:24% auto 21% 3.2%}.world-journey .scroll-scrub__progress span{background:var(--maza-gold);transform:scaleY(var(--ss-progress));transform-origin:top}.world-journey .scroll-scrub__route{counter-reset:room;flex-direction:column;gap:7px;display:flex;inset:50% 3.2% auto auto;transform:translateY(-50%)}.world-journey .scroll-scrub__route-button{width:44px;height:44px;min-height:44px;color:var(--maza-paper);counter-increment:room;opacity:.62;border:1px solid #0000;border-radius:50%;place-items:center;padding:0;font-size:9px;display:grid;position:relative}.world-journey .scroll-scrub__route-button:before{content:counter(room,decimal-leading-zero);letter-spacing:.08em}.world-journey .scroll-scrub__route-button span{white-space:nowrap;letter-spacing:.05em;opacity:0;pointer-events:none;font-size:9px;position:absolute;right:calc(100% + 12px)}.world-journey .scroll-scrub__route-button:hover span,.world-journey .scroll-scrub__route-button:focus-visible span{opacity:1}.world-journey .scroll-scrub__route-button[aria-current=step]{opacity:1;border-color:var(--maza-gold);background:#11120f47;text-decoration:none}.tour-position{z-index:25;letter-spacing:.15em;text-transform:uppercase;pointer-events:none;align-items:center;gap:1.4rem;font-size:9px;display:flex;position:fixed;bottom:2.3rem;left:7%}.tour-position>span:first-child{color:var(--maza-gold)}.tour-position i{color:var(--maza-paper);opacity:.5;margin-left:.2rem;font-style:normal}.tour-position-hint{opacity:.55;margin-left:1.5rem;font-size:8px}.tour-footer{z-index:30;background:var(--maza-ink);border-top:1px solid var(--maza-line);justify-content:space-between;align-items:center;gap:2rem;padding:3rem 7%;font-size:10px;display:flex;position:relative}.tour-footer a{align-items:center;gap:1rem;min-height:44px;display:flex}.tour-footer a svg{width:20px}.tour-footer p{color:var(--maza-muted);text-align:center;max-width:40ch;font-size:8px}.world-page .tour-detail-dialog{max-height:88dvh}.world-page .tour-detail-dialog .product-image-wrap{background:#151611;place-items:center;display:grid}.world-page .tour-detail-dialog .product-image-wrap img{object-fit:contain;width:100%;height:100%;max-height:85dvh;transform:none}.world-page .tour-detail-dialog .product-copy>p:not(.eyebrow){color:#615c51}.world-page .tour-detail-dialog .text-link{color:var(--maza-ink)}@media (width<=700px){.world-page .tour-header{padding:1.2rem 6%}.tour-edition,.tour-header-contact{display:none}.tour-menu-toggle{margin-left:auto;font-size:10px!important}.tour-menu{width:min(88vw,340px);max-height:calc(100svh - 110px);right:6%;overflow:auto}.world-journey .scroll-scrub__stage:after{background:linear-gradient(#11120f1a 24%,#11120fe0)}.world-journey .scroll-scrub__chapter{min-height:180svh!important}.world-journey .scroll-scrub__chapter:first-child{min-height:200svh!important}.world-journey .scroll-scrub__chapter:last-child{min-height:220svh!important}.world-journey .scroll-scrub__connector-band{min-height:55svh!important}.world-journey .scroll-scrub__chapter-pin{padding:7rem 7% max(24svh,9rem)}.world-journey .scroll-scrub__copy{width:100%}.world-journey .scroll-scrub__title{max-width:13ch;font-size:clamp(50px,13vw,85px)}.world-journey .scroll-scrub__kicker{letter-spacing:.15em;margin-bottom:1.3rem;font-size:8px}.world-journey .scroll-scrub__body{max-width:33ch;margin-top:1.3rem;font-size:11px}.world-journey .scroll-scrub__actions{margin-top:1rem}.tour-actions{gap:.75rem}.tour-discover{min-height:44px;font-size:10px!important}.tour-focus-mark{width:25px;height:25px}.world-journey .scroll-scrub__progress{opacity:.6;top:19%;bottom:27%;left:3%}.world-journey .scroll-scrub__route{top:auto;left:7%;right:7%;bottom:calc(3.2rem + env(safe-area-inset-bottom));flex-direction:row;justify-content:space-between;gap:0;overflow:visible;transform:none}.world-journey .scroll-scrub__route-button{flex:0 0 38px;width:38px;height:44px}.world-journey .scroll-scrub__route-button span{clip-path:inset(50%);width:1px;height:1px;right:auto;overflow:hidden;opacity:0!important}.tour-position{left:7%;bottom:calc(1.3rem + env(safe-area-inset-bottom));gap:1rem;font-size:8px}.tour-position-hint{display:none}.tour-footer{flex-wrap:wrap;gap:1rem;padding:2rem 7% 3rem}.tour-footer p{text-align:left;flex-basis:100%;order:3;max-width:none}.world-page .tour-detail-dialog .product-image-wrap{height:38dvh;min-height:220px}.world-page .tour-detail-dialog .product-image-wrap img{max-height:38dvh}}@media (prefers-reduced-motion:reduce){.world-journey .scroll-scrub__chapter,.world-journey .scroll-scrub__chapter:first-child,.world-journey .scroll-scrub__chapter:last-child{min-height:110svh!important}.world-journey .scroll-scrub__chapter-pin{position:relative}.world-journey .scroll-scrub__connector-band,.tour-scroll-hint,.tour-position-hint{display:none}}@media (width<=700px) and (height<=650px){.world-journey .scroll-scrub__chapter-pin{padding:5.7rem 7% 9.5rem}.world-journey .scroll-scrub__title{font-size:44px}.world-journey .scroll-scrub__kicker{margin-bottom:.8rem}.world-journey .scroll-scrub__body{margin-top:.85rem;font-size:10.5px}.world-journey .scroll-scrub__actions{margin-top:.8rem}.tour-actions{gap:.5rem}.tour-scroll-hint{font-size:7px}}.world-journey .house-world:after{content:"";pointer-events:none;height:100lvh;display:block}@media (prefers-reduced-motion:reduce){.world-journey .house-world:after{display:none}}

/* The original residence keeps its existing pacing. These values come from
   residence2-content.mjs, including the first and last room. */
.world-journey .house-world.residence-v-world .scroll-scrub__chapter {
  min-height: var(--residence-scroll) !important;
}

.residence-v-curtain { isolation: isolate; }
.residence-cloth-canvas { display: none; width: 100%; height: 100%; }
.residence-v-curtain[data-cloth-ready=true] .residence-cloth-canvas { display: block; }
.residence-cloth-fallback {
  position: absolute; top: -1%; bottom: -1%; width: var(--cloth-width,54%);
  background: repeating-linear-gradient(90deg,#b8aa94 0%,#d9ceb9 3%,#eee6d5 6%,#e1d7c4 9%,#b5a68e 12%);
  box-shadow: 0 0 24px #39271825; transform-origin: center top;
}
.residence-cloth-fallback--left { left: 0; transform: translateX(calc(-1 * var(--cloth-shift,0%))) skewX(var(--cloth-bend,0deg)); }
.residence-cloth-fallback--right { right: 0; transform: translateX(var(--cloth-shift,0%)) skewX(calc(-1 * var(--cloth-bend,0deg))); }
.residence-v-curtain[data-cloth-ready=true] .residence-cloth-fallback { display: none; }
.residence-v-welcome { color: #463426; padding-top: 6.5rem; }
.residence-v-welcome .woven-welcome-title { font-size: clamp(60px,7.1vw,112px); }
.residence-v-welcome .woven-welcome-title em { color: #765940; }
.residence-v-welcome .woven-welcome-index { margin: 1.8rem 0 1.6rem; color: #5c4634; }
.residence-v-welcome .woven-welcome-copy { margin: 1.5rem 0 1rem; }
.residence-v-welcome .woven-enter { color: #463426; border-color: #76594088; }
.residence-partnership { display: flex; align-items: center; justify-content: center; gap: 1.8rem; color: inherit; flex-shrink: 0; }
.residence-partnership a { color: inherit; text-decoration: none; pointer-events: auto; }
.residence-partner-maza { display: flex; flex-direction: column; align-items: center; width: 146px; }
.residence-maza-name { font: 400 50px/.95 var(--maza-serif); letter-spacing: .10em; padding-left: .1em; }
.residence-maza-decor { font: 500 9px/1 var(--maza-sans); letter-spacing: .5em; padding-left: .5em; margin-top: 10px; }
.residence-partner-cross { font: 300 22px/1 var(--maza-sans); opacity: .65; }
.residence-partner-ale { width: 205px; position: relative; display: block; }
.residence-partner-ale img { display: block; width: 100%; height: auto; filter: sepia(1) saturate(.5) brightness(.55); }
@supports ((mask-image:url('/residence-05/brand/ale-ulmann.png')) or (-webkit-mask-image:url('/residence-05/brand/ale-ulmann.png'))) {
  .residence-partner-ale img { opacity: 0; }
  .residence-partner-ale:before { content: ''; position: absolute; inset: 0; background: currentColor;
    -webkit-mask: url('/residence-05/brand/ale-ulmann.png') center / contain no-repeat;
    mask: url('/residence-05/brand/ale-ulmann.png') center / contain no-repeat; }
}
.residence-partnership a:focus-visible { outline: 1px solid currentColor; outline-offset: 6px; }
.residence-partnership--header { gap: 1rem; color: #f0e3ce; }
.residence-partnership--header .residence-partner-maza { width: 92px; }
.residence-partnership--header .residence-maza-name { font-size: 31px; }
.residence-partnership--header .residence-maza-decor { font-size: 6px; margin-top: 7px; }
.residence-partnership--header .residence-partner-ale { width: 128px; }
.residence-partnership--header .residence-partner-cross { font-size: 15px; }
.residence-v-page .tour-header { gap: 1.4rem; }
.residence-v-page .tour-edition { margin-left: 0; }
.residence-v-page[data-woven-arrival=true] .tour-header { color: #463426; background: linear-gradient(#e2d7c4d9,#e2d7c400); }
.residence-v-page[data-woven-arrival=true] .residence-partnership--header { color: #463426; }
@media (max-width: 700px) {
  .residence-v-page .tour-header { padding: 1rem 5%; gap: .7rem; }
  .residence-v-page .tour-menu-toggle { gap: .6rem; }
  .residence-v-page .tour-menu-toggle i { width: 20px; }
  .residence-partnership--header { gap: .65rem; }
  .residence-partnership--header .residence-partner-maza { width: 76px; }
  .residence-partnership--header .residence-maza-name { font-size: 26px; }
  .residence-partnership--header .residence-partner-ale { width: 105px; }
  .residence-partnership--header .residence-partner-cross { font-size: 13px; }
  .residence-partnership--welcome { gap: .75rem; }
  .residence-partnership--welcome .residence-partner-maza { width: clamp(86px,28vw,112px); }
  .residence-partnership--welcome .residence-maza-name { font-size: clamp(30px,9.5vw,38px); }
  .residence-partnership--welcome .residence-maza-decor { font-size: 7px; margin-top: 9px; }
  .residence-partnership--welcome .residence-partner-ale { width: clamp(118px,39vw,156px); }
  .residence-partnership--welcome .residence-partner-cross { font-size: 16px; }
  .residence-v-welcome { padding: 6rem 6% max(2rem,env(safe-area-inset-bottom)); }
  .residence-v-welcome .woven-welcome-title { font-size: clamp(50px,14vw,82px); }
  .residence-v-welcome .woven-welcome-index { margin: 1.6rem 0 1.4rem; font-size: 7px; }
}
@media (max-height: 680px) {
  .residence-v-welcome .woven-welcome-title { font-size: clamp(44px,8vh,64px); }
  .residence-v-welcome .woven-welcome-index { margin: 1rem 0; }
  .residence-v-welcome .woven-welcome-copy { margin: 1rem 0 .5rem; }
  .residence-v-welcome .woven-welcome-scroll { margin-top: .65rem; }
}
@media (max-width: 860px), (hover: none) and (pointer: coarse) {
  .world-journey .house-world.residence-v-world .scroll-scrub__chapter {
    min-height: var(--residence-scroll-mobile) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .world-journey .house-world.residence-v-world .scroll-scrub__chapter {
    min-height: 110svh !important;
  }
}

/* Native dialogs need explicit auto margins after the site's global reset.
   Give the photograph the full width; keep room information underneath. */
.residence-v-page .tour-detail-dialog {
  position: fixed;
  inset: 0;
  margin: auto;
  width: calc(100vw - 32px);
  max-width: 1600px;
  height: calc(100dvh - 32px);
  max-height: calc(100dvh - 32px);
  padding: 0;
  border: 0;
  background: #151611;
  overflow: hidden;
  box-sizing: border-box;
}
.residence-v-page .tour-detail-dialog .product-layout {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) auto;
  width: 100%;
  height: 100%;
  min-height: 0;
}
.residence-v-page .tour-detail-dialog .product-image-wrap {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  padding: 12px;
  box-sizing: border-box;
}
.residence-v-page .tour-detail-dialog .product-image-wrap img {
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
  transform: none;
}
.residence-v-page .tour-detail-dialog .product-copy {
  position: static;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
  align-items: center;
  gap: 6px 32px;
  min-height: 0;
  max-height: 24dvh;
  padding: 16px 24px;
  background: var(--maza-paper);
  overflow: auto;
  overscroll-behavior: contain;
  box-sizing: border-box;
}
.residence-v-page .tour-detail-dialog .product-copy .eyebrow { grid-area: 1 / 1; }
.residence-v-page .tour-detail-dialog .product-copy h2 {
  grid-area: 2 / 1;
  margin: 0;
  font-size: clamp(24px, 2.6vw, 36px);
  line-height: 1.08;
}
.residence-v-page .tour-detail-dialog .product-copy .product-kind { grid-area: 1 / 2; margin: 0; }
.residence-v-page .tour-detail-dialog .product-copy > p:not(.eyebrow):not(.product-kind) {
  grid-area: 2 / 2;
  margin: 0;
  font-size: 11px;
  line-height: 1.6;
}
.residence-v-page .tour-detail-dialog .product-copy .text-link {
  grid-area: 3 / 2;
  justify-self: start;
  margin: 0;
  min-height: 44px;
}
.residence-v-page .tour-detail-dialog .product-copy .small-note { grid-area: 3 / 1; }
.residence-v-page .tour-detail-dialog .close-control {
  position: absolute;
  z-index: 2;
  top: max(12px, env(safe-area-inset-top));
  right: max(12px, env(safe-area-inset-right));
  width: 44px;
  height: 44px;
  border: 1px solid #f3efe650;
  border-radius: 50%;
  background: #151611e6;
  color: #f3efe6;
}
.residence-v-page .tour-detail-dialog .close-control:focus-visible {
  outline: 2px solid var(--maza-gold);
  outline-offset: 3px;
}
@media (max-width: 700px) {
  .residence-v-page .tour-detail-dialog {
    width: calc(100vw - 16px);
    height: calc(100dvh - 16px);
    max-height: calc(100dvh - 16px);
  }
  .residence-v-page .tour-detail-dialog .product-image-wrap { padding: 8px; }
  .residence-v-page .tour-detail-dialog .product-copy {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    padding: 14px 18px max(14px, env(safe-area-inset-bottom));
  }
  .residence-v-page .tour-detail-dialog .product-copy > :not(.close-control),
  .residence-v-page .tour-detail-dialog .product-copy > p:not(.eyebrow):not(.product-kind) { grid-area: auto; }
  .residence-v-page .tour-detail-dialog .product-copy .eyebrow { max-width: none; }
}

.residence-v-welcome .residence-tv-link{pointer-events:auto;color:inherit;font:inherit;font-size:11px;letter-spacing:.12em;text-underline-offset:5px;margin-top:14px;display:inline-block;opacity:.85}

.residence-iii-page .residence-photo-controls { grid-area: 3 / 2; display: flex; align-items: center; gap: 20px; font: 10px var(--maza-sans); }
.residence-iii-page .residence-photo-controls button { display: grid; place-items: center; width: 44px; height: 44px; background: transparent; color: inherit; border: 1px solid #4e49374a; cursor: pointer; }
.residence-iii-page .tour-focus-mark { display: inline-grid; place-items: center; line-height: 1; padding: 0; }
.residence-iii-page .tour-detail-dialog .close-control { display: grid; place-items: center; font: 300 28px/1 Arial,sans-serif; }
@media(max-width:700px) {
 .residence-iii-page .tour-detail-dialog .residence-photo-controls { grid-area: auto; }
 .residence-iii-page .tour-detail-dialog .product-copy { max-height: 30dvh; }
}

@media(max-width:860px){.world-journey .scroll-scrub__route-button{flex:1 1 0;width:auto;min-width:0;max-width:44px;height:44px}}