:root{--paper:#f1ece2;--sand:#c7b9a5;--ink:#352921;--wine:#2a211b;--seam:#784f2e;--ceu:#a89278;--light:#f7f2e7;--line:#35292140;--display:'Bodoni Moda',Georgia,serif;--script:'Great Vibes',cursive;--body:'Manrope',Arial,sans-serif;--gutter:5.77vw;--section-space:clamp(80px,10vw,180px);--ease-out:cubic-bezier(.23,1,.32,1);--state:250ms;--entrance:750ms}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--body)}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:400}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid currentColor;outline-offset:6px}
img{display:block;width:100%;height:auto;object-fit:cover}
button{min-height:44px}
::selection{background:var(--wine);color:var(--light)}
.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--paper);padding:12px}
.skip:focus{top:20px}
.paper{background:var(--paper)}
.sand{background:var(--sand)}
.eyebrow{font-size:11px;letter-spacing:.19em;text-transform:uppercase;line-height:1.7}
.center{text-align:center}
.display,.medium-title,.statement,.giant-title{font-family:var(--display);line-height:1.02;letter-spacing:-.055em}
.display{font-size:clamp(72px,12vw,220px)}
.medium-title{font-size:clamp(36px,4.9vw,85px)}
.statement{font-size:clamp(34px,4.5vw,78px);line-height:1.15;text-transform:uppercase}
.script{font-family:var(--script);font-weight:400;text-transform:none;letter-spacing:0;line-height:1.05}
.line-link{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid currentColor;padding:18px 0;max-width:410px;font-size:11px;letter-spacing:.1em;line-height:1.5}
.line-link>span:last-child{font-size:25px;transition:transform var(--state) var(--ease-out)}
.shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#130c0c65,#130c0c15 48%,#130c0c80)}
.bridge figcaption,figcaption,.image-caption{font-size:11px;line-height:1.6;margin-top:12px;opacity:.8}
.concept{padding:var(--section-space) 14vw 8vw}
.concept>.statement{text-align:center;margin:45px auto;max-width:1150px}
.concept-copy{max-width:530px;text-align:center;margin:auto}
.concept-plate{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1fr) minmax(0,.82fr);align-items:center;gap:clamp(28px,4.5vw,90px);margin:var(--section-space) 0 6vw}
.plate-photo{position:relative;overflow:hidden;margin:0}
.plate-photo img{position:absolute;inset:0;width:100%;height:100%}
.plate-photo.is-left{aspect-ratio:3/4;transform:translateY(-3vw)}
.plate-photo.is-right{aspect-ratio:4/5;transform:translateY(4vw)}
.plate-place{text-align:center;font-size:11px;letter-spacing:.19em;text-transform:uppercase;line-height:1.7;margin-top:32px;padding-top:28px;position:relative}
.plate-place::before{content:"";position:absolute;top:0;left:50%;width:52px;height:1px;background:var(--line);transform:translateX(-50%)}
.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;margin-top:4vw}
.arch-photo{overflow:hidden;border-radius:50% 50% 0 0 / 30% 30% 0 0}
.arch-photo img{aspect-ratio:4/5}
.editorial-grid .medium-title{margin:28px 0}
.editorial-grid p:not(.eyebrow){margin-bottom:28px}
.giant-title{font-size:clamp(60px,12vw,220px);text-align:center;margin:var(--section-space) -8vw 0}
.giant-title>span{display:block}
.giant-title .script{font-size:1.2em;position:relative;margin:-.05em 0;z-index:1}
.concept .giant-title{font-size:10vw;padding:4vw 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}
.section-head h2{margin-top:18px}
.carousel-controls{display:flex;align-items:center;gap:24px;flex-shrink:0;font-size:11px;letter-spacing:.1em}
.carousel-controls button{width:50px;height:50px;border:1px solid var(--line);border-radius:50%;font-size:24px}
.carousel-controls button:disabled{opacity:.3;cursor:default}
.carousel{display:flex;gap:32px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--ink) transparent;padding-bottom:24px;overscroll-behavior-x:contain}
.slide{flex:0 0 70%;scroll-snap-align:start;min-width:0}
.slide img{aspect-ratio:1.5;object-fit:cover}
.slide-copy{padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:30px}
.slide-copy h3{font:clamp(32px,4vw,65px)/1 var(--display);letter-spacing:-.05em}
.slide-copy p{font-size:13px;max-width:220px}
.details{position:relative;padding:2vw var(--gutter) var(--section-space);background:linear-gradient(180deg,#f1ece2 0%,#f1ece2 74%,#f1ece2 80%,#f1ebe1 85%,#efeae0 90%,#ede8dd 95%,#ebe4d9 100%);z-index:2}
.details>.giant-title{margin:5vw 0 9vw}
.detail-pair{display:grid;grid-template-columns:1fr 1fr;gap:14vw;align-items:center;padding:0 8vw;margin-bottom:12vw}
.detail-small{width:80%;justify-self:end}
.detail-small img{aspect-ratio:3/4}
.detail-text h3{margin:25px 0}
.detail-text .line-link{margin-top:30px}
.detail-large{width:80%;justify-self:start;order:2}
.detail-pair.reverse .detail-text{order:1;justify-self:end}
.detail-large img{aspect-ratio:4/5}
.detail-carousel .slide{flex-basis:31%}
.detail-carousel .slide img{aspect-ratio:3/4}
.detail-carousel .slide-copy{display:block}
.detail-carousel .slide-copy h3{font-size:clamp(28px,3vw,45px)}
.detail-carousel .slide-copy p{margin-top:16px}
.contact{position:relative;z-index:2;color:var(--light)}
.contact-photo{position:absolute;inset:0;z-index:-3}
.contact-photo img{height:100%}
.contact .shade{background:#1e15155c}
.contact-content{height:100%;padding:8vw var(--gutter);display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center}
.contact-content>p{font-size:14px}
.contact .giant-title{font-size:10vw;margin:0}
.contact .line-link{width:330px;max-width:100%;text-align:left}
.footer{--c-primary:var(--light);--c-bg:var(--wine);--c-gray:var(--light-60);--c-line:var(--light-10);position:relative;z-index:2;background:var(--c-bg);color:var(--c-primary);padding:var(--u96) calc(var(--offset) + var(--u160)) var(--u32);overflow:hidden}
.footer_head{text-align:center}
.footer_mark{display:block;width:var(--u64);margin:0 auto}
.footer_phone{display:block;margin:var(--u64) 0 var(--u24);font-family:var(--display);font-size:min(var(--h1-size),8.2vw);line-height:100%;letter-spacing:-.024em;font-feature-settings:"onum" 1;white-space:nowrap}
.footer_eyebrow{color:var(--c-gray)}
.footer_place{margin-top:var(--u8)}
.footer_base{display:flex;justify-content:space-between;align-items:end;gap:var(--u32);margin-top:var(--u160);padding-top:var(--u24);border-top:1px solid var(--c-line)}
.footer_base_col.is-right{text-align:right}
.footer_base_mark{display:block;width:var(--u24);margin:0 0 var(--u12) auto}
.footer_links a{border-bottom:1px solid var(--c-line);padding-bottom:.15em;transition:border-color var(--state) var(--ease-out)}
.disclosure{max-width:calc(var(--u272)*2);margin:var(--u48) auto 0;text-align:center;font-size:var(--p1-size);line-height:var(--p1-lh);letter-spacing:var(--p1-ls);color:var(--c-gray)}
@media(hover:hover) and (pointer:fine){.line-link:hover>span:last-child{transform:translate(4px,-4px)}
.carousel-controls button:not(:disabled):hover{background:var(--ink);color:var(--paper)}
.footer_links a:hover{border-color:var(--c-primary)}}
@media(max-width:991px){:root{--gutter:5.77vw;--section-space:85px}
.concept{padding:80px var(--gutter) 65px}
.concept>.statement{font-size:8.5vw;margin:30px auto}
.concept-copy{font-size:15px;max-width:380px}
.concept-plate{grid-template-columns:1fr 1fr;gap:14px;margin:55px 0 45px}
.concept-mid{grid-column:1/-1;order:-1;margin-bottom:45px}
.plate-photo.is-left{transform:translateY(-2vw)}
.plate-photo.is-right{transform:translateY(2vw)}
.plate-place{margin-top:26px;padding-top:22px}
.editorial-grid{grid-template-columns:1fr;gap:45px;padding:0 3vw}
.arch-photo{width:85%;margin:auto}
.editorial-grid .medium-title{font-size:10vw}
.giant-title{margin:90px 0 0;font-size:16vw}
.concept .giant-title{font-size:14vw;margin-top:90px}
.section-head{align-items:center;gap:18px}
.section-head .eyebrow{font-size:9px}
.section-head .medium-title{font-size:10vw}
.carousel-controls{gap:9px;font-size:9px}
.carousel-controls button{width:40px;height:44px;font-size:20px}
.carousel{gap:16px;scroll-padding-left:0}
.slide{flex-basis:100%}
.slide img{aspect-ratio:4/5}
.slide-copy{display:block}
.slide-copy h3{font-size:40px}
.slide-copy p{margin-top:15px;font-size:13px}
.details{border-radius:50% 50% 0 0 / 8vw 8vw 0 0;margin-top:-8vw;padding-top:30px}
.details>.giant-title{font-size:20vw;margin:65px 0}
.detail-pair,.detail-pair.reverse{grid-template-columns:1fr;gap:40px;padding:0 3vw;margin-bottom:75px}
.detail-small{width:78%;justify-self:start}
.detail-large{width:86%;justify-self:end}
.detail-text{max-width:440px}
.detail-text h3{font-size:10vw}
.detail-carousel .slide{flex-basis:100%}
.detail-carousel .slide img{aspect-ratio:4/5}
.detail-carousel .slide-copy h3{font-size:34px}
.contact-content{padding:75px 7vw}
.contact .giant-title{font-size:13vw}
.contact-content>p{font-size:13px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{animation:none!important;transition:none!important}
.hero-title,.hero-photo,.seal svg,.image-reveal img,.contact-photo img{transform:none!important}}
.furniture{padding:var(--section-space) var(--gutter) 7vw}
.furniture-lead{max-width:46ch;font-size:15px;line-height:1.75;margin:-14px 0 46px}
.furniture-track .slide{flex:0 0 46%;position:relative}
.furniture-track .slide img{aspect-ratio:.82;object-fit:cover}
.piece-index{position:absolute;top:18px;left:18px;z-index:2;font:11px/1 var(--body);letter-spacing:.2em;color:var(--light);mix-blend-mode:difference}
.furniture-track .slide-copy{align-items:start;flex-direction:column;gap:10px;padding-top:20px;border-top:1px solid var(--line);margin-top:20px}
.furniture-track .slide-copy h3{font-size:clamp(26px,2.6vw,44px)}
.furniture-track .slide-copy p{max-width:34ch;opacity:.75}
@media(max-width:991px){.furniture-track .slide{flex:0 0 100%}
.furniture-track .slide img{aspect-ratio:4/5}
.furniture-track .slide-copy{padding-top:16px;margin-top:16px}
.furniture-track .slide-copy p{max-width:none}
.furniture-lead{margin-bottom:34px}}
html.is-loading{overflow:hidden}
html.is-loading body{pointer-events:none}
[data-magnetic]{will-change:transform}
.crossing{position:relative;height:420svh;background:var(--wine);color:var(--light)}
.crossing-rail{position:sticky;top:0;height:100svh;overflow:hidden}
.crossing-head{position:absolute;z-index:3;top:6svh;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:baseline;gap:20px}
.crossing-hint{font-size:11px;letter-spacing:.2em;opacity:.7}
.crossing-track{display:flex;align-items:center;height:100%;gap:5vw;padding:0 var(--gutter);width:max-content;will-change:transform}
.crossing-panel{flex:0 0 54vw;position:relative;display:flex;flex-direction:column;gap:26px}
.crossing-figure{height:54svh;overflow:hidden;position:relative}
.crossing-figure img{height:100%;width:100%;object-fit:cover}
.crossing-index{position:absolute;top:-30px;left:0;font-size:11px;letter-spacing:.28em;opacity:.65}
.crossing-title{font:clamp(30px,3.6vw,64px)/1 var(--display);letter-spacing:-.05em}
.crossing-copy{display:flex;flex-direction:column;gap:14px;max-width:44ch}
.crossing-copy p{font-size:15px;line-height:1.7;opacity:.82}
@media(max-width:991px){.crossing{height:420svh}
.crossing-track{display:grid;grid-auto-flow:column;grid-auto-columns:100%;width:100%;gap:0;padding:0}
.crossing-panel{width:auto;padding:0 var(--gutter);gap:20px}
.crossing-figure{height:38svh}
.crossing-index{left:var(--gutter)}
.crossing-copy{max-width:none}
.crossing-title{font-size:9.4vw}
}
@media(prefers-reduced-motion:reduce){.crossing{height:auto}
.crossing-rail{position:static;height:auto;padding:var(--section-space) 0}
.crossing-track{width:auto;flex-direction:column;transform:none!important;gap:60px}
.crossing-panel{flex:auto}
}
.canvas{position:relative;height:640svh;background:var(--paper)}
.canvas-stage{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate;background:var(--paper)}
.canvas-bg{position:absolute;top:0;left:0;height:100%;width:max-content;padding-right:8vw;display:flex;align-items:center;z-index:0;pointer-events:none;mix-blend-mode:multiply;will-change:transform}
.canvas-video,.canvas-bg img{display:block;height:100%;width:auto;aspect-ratio:6000/1080;max-width:none}
.canvas-head{position:absolute;z-index:3;bottom:5svh;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:baseline;gap:20px}
.canvas-hint{font-size:11px;letter-spacing:.2em;opacity:.55}
@media(min-width:992px){.crossing-head,.canvas-head{left:calc(var(--offset) + var(--u136) + var(--u16));right:calc(var(--offset) + var(--u136) + var(--u16))}}
@media(max-width:991px){.crossing-head{top:calc(var(--offset) + var(--u64) + var(--gap))}
.crossing-hint,.canvas-hint{display:none}}
.canvas-track{position:relative;z-index:2;display:flex;align-items:center;height:100%;gap:7vw;padding:0 28vw 0 var(--gutter);width:max-content;will-change:transform}
.canvas-panel{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4.5vw}
.canvas-panel.is-right .canvas-figure{order:2}
.canvas-panel.is-left{transform:translateY(-3svh)}
.canvas-panel.is-right{transform:translateY(3svh)}
.canvas-figure{margin:0;overflow:hidden;height:56svh;aspect-ratio:4/5}
.canvas-figure img{width:100%;height:100%;object-fit:cover}
.canvas-copy{position:relative;display:flex;flex-direction:column;gap:20px;width:38vw;max-width:520px}
.canvas-copy::before{content:"";position:absolute;inset:-12% -9%;z-index:-1;background:var(--paper);border-radius:44%;filter:blur(34px)}
.canvas-index{font-size:11px;letter-spacing:.28em;opacity:.6}
.canvas-title{font:clamp(28px,3.3vw,58px)/1.04 var(--display);letter-spacing:-.05em;text-transform:uppercase}
.canvas-copy p{font-size:15px;line-height:1.75;opacity:.82;max-width:40ch}
.canvas-panel.is-end{position:relative;flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:44vw;margin-left:34vw;transform:none}
.canvas-mark{width:clamp(140px,16vw,280px);aspect-ratio:776/603}
.canvas-wordmark{margin-top:var(--u24);font-family:var(--display);font-size:var(--h4-size);line-height:var(--h4-lh);letter-spacing:var(--h4-ls);text-transform:uppercase}
@media(max-width:991px){.canvas{height:440svh}
.canvas-video,.canvas-bg img{height:40%}
.canvas-track{display:grid;grid-auto-flow:column;grid-auto-columns:100%;width:100%;gap:0;padding:0}
.canvas-panel,.canvas-panel.is-right{width:auto;padding:0 var(--gutter);grid-template-columns:1fr;gap:24px;transform:none}
.canvas-panel.is-right .canvas-figure{order:0}
.canvas-figure{height:30svh;aspect-ratio:4/3;width:auto}
.canvas-copy{width:auto;gap:14px}
.canvas-copy::before{inset:-8% -6%;filter:blur(24px)}
.canvas-title{font-size:8.6vw}
.canvas-copy p{font-size:14px;max-width:none}
.canvas-panel.is-end{width:auto;margin-left:0;padding:0 var(--gutter)}
.canvas-wordmark{font-size:var(--h5-size)}
.canvas-head .eyebrow{font-size:9px}
.canvas-hint{display:none}}
@media(prefers-reduced-motion:reduce){.canvas{height:auto}
.canvas-stage{position:static;height:auto;padding:var(--section-space) 0;overflow:visible}
.canvas-bg{position:absolute;inset:0;width:100%;padding-right:0;justify-content:center}
.canvas-head{position:static;padding:0 var(--gutter);margin-bottom:48px;bottom:auto}
.canvas-hint{display:none}
.canvas-track{width:auto;flex-direction:column;align-items:stretch;height:auto;gap:70px;padding:0 var(--gutter);transform:none!important}
.canvas-panel,.canvas-panel.is-right{transform:none}}
@media(max-width:991px){.footer{padding:var(--u64) var(--offset) var(--u32)}
.footer_mark{width:var(--u48)}
.footer_phone{margin:var(--u32) 0 var(--u16);font-size:min(var(--h1-size),8.8vw)}
.footer_base{flex-direction:column;align-items:start;gap:var(--u24);margin-top:var(--u96)}
.footer_base_col.is-right{text-align:left}
.footer_base_mark{margin:0 auto var(--u12) 0}
.disclosure{text-align:left;margin-top:var(--u32)}}
