/* UMBRA: an image-led story within the shared studio identity. */
.umbra-case{--u-ease:cubic-bezier(.23,1,.32,1);--u-sand:#e8d8bf;--u-coal:#1f211e;--u-muted:#6c6b60}
.umbra-case .site-header{height:85px}.umbra-case .site-header nav a{font-size:14px}.umbra-case main{background:var(--paper)}
.u-pad{padding:90px var(--gutter)}.u-eyebrow{font-size:12px;line-height:1.6;letter-spacing:.065em;margin:0}.u-hero{position:relative;isolation:isolate;min-height:620px;height:calc(100svh - 85px);max-height:1150px;color:#fff9ee;background:#30291f;overflow:hidden}.u-hero-photo,.u-hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-1}.u-hero-photo{object-fit:cover;object-position:center 55%}.u-hero-shade{background:linear-gradient(180deg,#0004 0%,transparent 25%,#0002 45%,#000b 100%)}.u-hero-top{position:absolute;top:27px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;gap:30px;font-size:12px;letter-spacing:.035em}.u-hero-top a{font-size:14px}.u-hero-copy{position:absolute;left:var(--gutter);right:var(--gutter);bottom:80px}.u-hero-copy h1{font-family:var(--display);font-weight:900;font-size:clamp(110px,18.4vw,290px);letter-spacing:-.075em;line-height:.82;margin:25px 0 30px}.u-hero-copy h1>span{display:block;font-family:Georgia,'Times New Roman',serif;font-size:clamp(25px,3.2vw,52px);font-style:italic;font-weight:400;letter-spacing:-.03em;line-height:1.2;margin-top:22px;color:var(--u-sand)}.u-hero-bottom{display:flex;justify-content:space-between;gap:25px;align-items:center}.u-hero-bottom>p{font-size:17px;line-height:1.6;margin:0}.u-visit{display:grid;grid-template-columns:1fr auto;align-items:center;gap:9px 35px;padding:15px 21px;background:var(--lime);color:var(--ink);border-radius:5px;min-width:265px;font-size:18px;font-weight:600;transition:transform 160ms var(--u-ease)}.u-visit>span{font-size:28px;grid-column:2;grid-row:1/3}.u-visit small{font-size:10px;letter-spacing:.07em;grid-column:1;opacity:.8}.u-scroll{position:absolute;bottom:22px;left:var(--gutter);right:var(--gutter);border-top:1px solid #fff5;padding-top:13px;font-size:12px;letter-spacing:.06em;display:flex;justify-content:space-between}.u-scroll>span{font-size:19px}
.u-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:12%;align-items:start;padding-top:105px;padding-bottom:105px}.u-intro h2,.u-arrival h2,.u-spaces h2{font-family:var(--display);font-size:clamp(40px,5vw,80px);font-weight:900;letter-spacing:-.065em;line-height:.98;margin:27px 0 0}.u-intro h2 em,.u-arrival h2 em{font-style:normal;color:var(--blue)}.u-intro-copy>p:first-child{font-size:25px;line-height:1.35;letter-spacing:-.025em;margin-top:0}.u-intro-copy>p{font-size:17px;line-height:1.75;margin:0 0 25px}.u-project-meta{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px;font-size:11px;line-height:1.65;letter-spacing:.035em}.u-section-head{display:flex;justify-content:space-between;gap:20px;border-top:1px solid currentColor;padding-top:20px;margin-bottom:45px}.u-section-head>span{font-size:11px;letter-spacing:.04em;line-height:1.6;text-align:right}.u-arrival{padding-top:0;padding-bottom:95px}.u-arrival-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:5%;align-items:start}.u-arrival-main{padding-top:90px}.u-image{display:block;position:relative;overflow:hidden;isolation:isolate;width:100%;border:0;padding:0;background:#30291f;cursor:zoom-in;color:white;text-align:left}.u-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 250ms var(--u-ease)}.u-arrival-main .u-image{aspect-ratio:1.25}.u-arrival-side h2{font-size:clamp(48px,6.4vw,100px);margin:0 0 22px}.u-arrival-side>p{font-size:17px;line-height:1.6;margin-bottom:30px}.u-arrival-side .u-image{aspect-ratio:1.18}.u-caption{display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.04em;line-height:1.6;margin:15px 0 0;color:var(--u-muted)}.u-caption>span:last-child{text-align:right}.u-expand{position:absolute;bottom:16px;right:16px;width:42px;height:42px;border:1px solid #fff7;background:#17171455;backdrop-filter:blur(5px);border-radius:50%;display:grid;place-items:center;color:white;font-size:23px;transition:transform 160ms var(--u-ease),background 160ms ease}.u-threshold{height:65vw;max-height:800px;min-height:450px;margin-top:90px}.u-threshold:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0009,transparent 70%);pointer-events:none}.u-threshold-copy{position:absolute;left:5%;bottom:9%;z-index:1;pointer-events:none}.u-threshold-copy>span{font-size:12px;letter-spacing:.05em}.u-threshold-copy strong{display:block;font-size:clamp(40px,7vw,110px);font-family:var(--display);letter-spacing:-.065em;line-height:.95;margin-top:22px;font-weight:900}
.u-spaces{background:var(--u-coal);color:var(--paper);padding-top:60px;padding-bottom:65px}.u-spaces .u-section-head{border-color:#ffffff50}.u-spaces-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:45px}.u-spaces h2{margin:0;font-size:clamp(45px,6.7vw,105px)}.u-spaces h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--u-sand);letter-spacing:-.045em}.u-spaces-heading>p{font-size:17px;line-height:1.6;margin:0 8% 0 0;color:#dbd9cf}.u-room-layout{display:grid;grid-template-columns:1.8fr 1fr;gap:4%;align-items:start}.u-room-image{aspect-ratio:1.4}.u-room-caption{display:flex;justify-content:space-between;gap:30px;font-size:14px;line-height:1.6;margin-top:20px;color:#cfcdc3;min-height:48px}.u-room-caption>span:first-child{max-width:510px}.u-room-caption>span:last-child{white-space:nowrap;font-size:12px;padding-top:2px}.u-room-list button{display:flex;align-items:center;gap:15px;width:100%;text-align:left;border:0;border-bottom:1px solid #fff3;background:transparent;color:#b9bab1;padding:24px 10px;cursor:pointer;transition:background 180ms ease,color 180ms ease,transform 140ms var(--u-ease)}.u-room-list button:first-child{border-top:1px solid #fff3}.u-room-list button>span{font-size:11px;align-self:center}.u-room-list strong{font-size:19px;letter-spacing:-.03em;font-weight:400}.u-room-list i{margin-left:auto;font-size:23px;font-style:normal}.u-room-list [aria-pressed=true]{background:var(--u-sand);color:#211c17}.u-room-list>p{font-size:13px;line-height:1.7;color:#b9bab1;margin-top:28px}.u-outside{padding-top:75px;padding-bottom:85px}.u-outside-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:5%;align-items:start}.u-outside-grid>div:first-child .u-image{aspect-ratio:1.2}.u-outside-grid>div:last-child{padding-top:90px}.u-outside-grid>div:last-child .u-image{aspect-ratio:1}.u-outside-note{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:clamp(30px,4.2vw,65px);line-height:1.12;letter-spacing:-.03em;margin:0 0 35px}.u-invitation{position:relative;isolation:isolate;overflow:hidden;min-height:650px;display:flex;align-items:center;text-align:center;justify-content:center;color:#fff9ee;padding:75px var(--gutter);background:#30291f}.u-invitation>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.u-invitation:before{content:'';position:absolute;inset:0;background:#1119;z-index:-1}.u-invitation h2{font-family:var(--display);font-size:clamp(70px,12vw,190px);line-height:.85;letter-spacing:-.07em;font-weight:900;margin:30px 0}.u-invitation-content>p:not(.u-eyebrow){font-size:18px;line-height:1.7}.u-invitation .pill{margin-top:15px}.u-invitation small{display:block;font-size:11px;letter-spacing:.05em;margin-top:18px}.u-end{display:flex;justify-content:space-between;align-items:start;gap:50px;padding-top:40px;padding-bottom:45px;border-bottom:1px solid var(--line)}.u-end>p{max-width:470px;font-size:13px;line-height:1.7;color:var(--u-muted);margin:0}.u-end>div{display:flex;flex-direction:column;gap:18px;font-size:16px}.u-end a{border-bottom:1px solid;padding-bottom:7px}.u-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.u-lightbox{width:100%;height:100svh;max-width:none;max-height:none;margin:0;padding:25px 4vw;border:0;background:#171815;color:#f4f1e8}.u-lightbox::backdrop{background:#171815}.u-lightbox[open]{display:flex;flex-direction:column}.u-lightbox-top,.u-lightbox-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex:none}.u-lightbox-top{font-size:12px;letter-spacing:.06em;min-height:48px}.u-lightbox button{color:inherit;border:1px solid #fff5;background:none;cursor:pointer;border-radius:30px;min-height:44px;min-width:44px;transition:transform 140ms var(--u-ease),background 150ms ease}.u-lightbox-top button{padding:10px 20px;font-size:14px}.u-lightbox-photo{min-height:0;flex:1;padding:20px 0;display:flex;align-items:center;justify-content:center}.u-lightbox-photo img{display:block;width:100%;height:100%;object-fit:contain}.u-lightbox-bottom{min-height:55px}.u-lightbox-bottom>p{font-size:16px;margin:0}.u-lightbox-bottom>div{display:flex;align-items:center;gap:20px}.u-lightbox-bottom button{font-size:23px}.u-lightbox-bottom span{font-size:12px;min-width:45px}.u-lightbox:focus-visible{outline:none}.u-visit:active,.u-lightbox button:active,.u-room-list button:active,.u-invitation .pill:active{transform:scale(.97)}
@media(hover:hover) and (pointer:fine){.u-image:hover img{transform:scale(1.025)}.u-image:hover .u-expand{background:var(--lime);color:var(--ink);transform:rotate(45deg)}.u-room-list button:not([aria-pressed=true]):hover{background:#ffffff0c;color:white}.u-visit:hover{transform:translateY(-3px)}.u-lightbox button:hover{background:#fff2}}
@media(max-width:1000px){.u-room-layout{grid-template-columns:1.6fr 1fr}.u-room-list button{padding:19px 10px;gap:10px}.u-room-list strong{font-size:16px}.u-intro{gap:7%}.u-project-meta{flex-direction:column}}
@media(max-width:760px){.umbra-case .site-header{height:80px}.u-pad{padding:55px var(--gutter)}.u-hero{height:calc(100svh - 80px);min-height:680px;max-height:950px}.u-hero-photo{object-position:55% center}.u-hero-shade{background:linear-gradient(180deg,#0006,transparent 30%,#0006 60%,#000c)}.u-hero-top{top:22px;font-size:10px}.u-hero-top>span{max-width:150px;text-align:right;line-height:1.6}.u-hero-copy{bottom:80px}.u-hero-copy h1{font-size:24vw;margin:22px 0 27px}.u-hero-copy h1>span{font-size:7.2vw;line-height:1.2;margin-top:16px}.u-hero-bottom{display:block}.u-hero-bottom>p{font-size:16px;margin-bottom:25px}.u-visit{max-width:310px;min-width:0;font-size:17px;padding:14px 18px}.u-intro{grid-template-columns:1fr;gap:32px}.u-intro h2{font-size:11.5vw;margin-top:22px}.u-intro-copy>p:first-child{font-size:23px}.u-intro-copy>p{font-size:16px}.u-project-meta{flex-direction:row;font-size:10px}.u-section-head{margin-bottom:30px;gap:20px}.u-section-head>span{max-width:140px;font-size:10px}.u-eyebrow{font-size:11px}.u-arrival{padding-top:10px}.u-arrival-grid{grid-template-columns:1fr;gap:35px}.u-arrival-main{padding-top:0}.u-arrival-main .u-image{aspect-ratio:1.12}.u-arrival-side{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.u-arrival-side h2{font-size:11vw;margin:5px 0}.u-arrival-side>p{grid-column:1;font-size:14px;line-height:1.6;margin:0}.u-arrival-side .u-image{grid-column:2;grid-row:1/3;aspect-ratio:.7}.u-caption{font-size:10px;gap:15px}.u-threshold{margin-top:45px;height:125vw;min-height:0;max-height:650px}.u-threshold img{object-position:48% center}.u-threshold-copy{bottom:10%;left:6%}.u-threshold-copy strong{font-size:11vw}.u-threshold-copy>span{font-size:10px}.u-spaces-heading{display:block;margin-bottom:30px}.u-spaces h2{font-size:12vw}.u-spaces-heading>p{font-size:15px;margin:20px 0 0}.u-room-layout{display:flex;flex-direction:column-reverse;gap:20px}.u-room-list{display:flex;gap:8px;overflow-x:auto;width:100%;padding:4px 3px 12px;scrollbar-width:thin;scrollbar-color:#e8d8bf #333;scroll-snap-type:x proximity}.u-room-list button,.u-room-list button:first-child{flex:0 0 auto;border:1px solid #fff4;border-radius:40px;padding:12px 15px;gap:9px;scroll-snap-align:start;min-height:44px}.u-room-list strong{font-size:14px;white-space:nowrap}.u-room-list i,.u-room-list>p{display:none}.u-room-list button>span{font-size:10px}.u-room-view{width:100%}.u-room-image{aspect-ratio:1.12}.u-room-caption{font-size:13px;margin-top:15px;gap:15px}.u-room-caption>span:last-child{font-size:11px}.u-outside-grid{grid-template-columns:1fr;gap:30px}.u-outside-grid>div:last-child{padding-top:0;display:grid;grid-template-columns:1fr 1.1fr;gap:15px}.u-outside-note{font-size:8vw;margin:15px 0}.u-outside-grid>div:last-child .u-caption{grid-column:1/-1;margin:0}.u-outside-grid>div:last-child .u-image{aspect-ratio:.9}.u-invitation{min-height:600px;padding:65px var(--gutter)}.u-invitation .u-eyebrow{max-width:260px;margin:auto;line-height:1.7}.u-invitation h2{font-size:18vw;line-height:.9}.u-invitation-content>p:not(.u-eyebrow){font-size:16px}.u-end{display:block;padding-top:30px;padding-bottom:35px}.u-end>div{margin-top:30px;font-size:16px;align-items:start}.u-lightbox{padding:15px 5vw}.u-lightbox-top{font-size:10px}.u-lightbox-bottom{display:block}.u-lightbox-bottom>p{font-size:15px;margin-bottom:15px}.u-lightbox-bottom>div{justify-content:space-between}.u-lightbox-photo{padding:20px 0}.u-hero .u-visit small,.u-hero-top>span,.u-eyebrow,.u-project-meta,.u-section-head>span,.u-caption,.u-invitation small{font-size:12px}}
@media(prefers-reduced-motion:reduce){.u-image img,.u-visit,.u-room-list button,.u-expand,.u-lightbox button{transition:none!important}.u-image:hover img,.u-image:hover .u-expand,.u-visit:hover{transform:none!important}}
/* Keyboard interactions stay immediate. */
.u-room-list button:focus-visible,.u-lightbox button:focus-visible,.u-image:focus-visible,.u-visit:focus-visible{transition:none;outline:3px solid var(--lime);outline-offset:5px}

.u-visit small,.u-project-meta,.u-section-head>span,.u-caption,.u-room-list button>span,.u-invitation small,.u-lightbox-top{font-size:12px}
@media(max-width:760px){.u-room-list button,.u-room-list button:first-child{width:auto}}
/* User-created aerial descent: pinned, reversible, native scrolling. */
.u-motion-story{height:380svh;position:relative;background:#30291f}.u-hero.u-motion-stage{position:sticky;top:0;height:100svh;min-height:620px;max-height:none}.u-arrival-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;object-fit:cover}.u-arrival-canvas[hidden]{display:none}.u-motion-stage .u-hero-photo{object-position:center}.u-motion-stage.sequence-ready .u-arrival-poster{visibility:hidden}.u-motion-stage .u-hero-copy{bottom:145px}.u-motion-stage .u-hero-shade{background:linear-gradient(180deg,#0005,transparent 30%,#0002 50%,#000a 100%)}.u-arrival-heading{opacity:1;transform:none;will-change:opacity,transform}.u-motion-stage .u-hero-bottom{margin-top:25px}.u-arrival-controls{position:absolute;left:var(--gutter);right:var(--gutter);bottom:24px;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:12px;letter-spacing:.035em;padding-top:18px;border-top:1px solid #fff6}.u-arrival-controls>a{font-size:14px;text-decoration:underline;text-underline-offset:5px}.u-arrival-track{position:absolute;top:-2px;left:0;width:100%;height:2px;background:#ffffff30}.u-arrival-track>i{display:block;width:100%;height:100%;background:var(--lime);transform:scaleX(0);transform-origin:left}.u-arrival-instruction{position:absolute;right:var(--gutter);bottom:83px;font-size:12px;letter-spacing:.05em}.u-arrival-controls>a{margin-right:110px}.u-motion-static{height:auto}.u-motion-static .u-motion-stage{position:relative;height:calc(100svh - 85px);min-height:640px}.u-motion-static .u-arrival-instruction,.u-motion-static .u-arrival-track{display:none}.u-motion-static .u-arrival-heading{opacity:1!important;transform:none!important}
@media(max-width:760px){.u-motion-story{height:340svh}.u-hero.u-motion-stage{min-height:620px}.u-motion-stage .u-hero-copy{bottom:160px}.u-motion-stage .u-hero-copy h1{font-size:23vw}.u-motion-stage .u-hero-bottom{margin-top:23px}.u-motion-stage .u-hero-bottom>p{font-size:15px;margin-bottom:20px}.u-motion-stage .u-visit{font-size:16px;max-width:300px}.u-arrival-controls{bottom:30px;font-size:11px;gap:15px;align-items:start}.u-arrival-controls>span{max-width:160px;line-height:1.7}.u-arrival-controls>a{margin-right:0;white-space:nowrap}.u-arrival-instruction{bottom:100px;left:var(--gutter);right:auto;font-size:11px}.u-motion-static .u-motion-stage{height:calc(100svh - 80px);min-height:680px}.u-motion-stage .u-arrival-controls,.u-motion-stage .u-arrival-instruction{font-size:12px}}
@media(prefers-reduced-motion:reduce){.u-motion-story{height:auto}.u-hero.u-motion-stage{position:relative;height:calc(100svh - 85px)}.u-arrival-instruction,.u-arrival-track{display:none}.u-arrival-heading{will-change:auto;opacity:1!important;transform:none!important}}
@media(min-width:761px){.u-motion-stage .u-hero-copy{bottom:170px}.u-arrival-instruction{bottom:110px}}
