.home-page{--paper:#eeeee7;--quiet:#a5aaa0;--green:#b6ca83;background:#111310;color:var(--paper);font-family:Arial,Helvetica,sans-serif}
.home-page main{max-width:none;margin:0;padding:0}.home-page h2{color:var(--paper);text-align:left;border:0;padding:0;margin:0}.home-page h2::after{content:none}
.home-page a{color:inherit}.home-page a:focus-visible,.home-page button:focus-visible{outline:2px solid var(--green);outline-offset:6px}.home-page .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}
.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--paper);color:#111!important;padding:12px}.skip-link:focus{top:12px}
.home-page #site-header{position:relative;z-index:20}.home-page .site-header{background:#111310;border-bottom:1px solid #ffffff25}.home-page .nav-container{max-width:none;padding:18px 3.5vw;gap:25px}.home-page .brand-text{font-size:16px;letter-spacing:-.04em;text-shadow:none}.home-page .brand-logo{height:36px}.home-page .site-nav{gap:16px}.home-page .site-nav a{font-size:11px;font-weight:400;padding:5px 0;white-space:nowrap}.home-page .site-nav a.active{border-color:var(--green)}
.opening{position:relative;min-height:620px;height:100svh;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#20271d}.opening-we{height:calc(100svh - 73px)}.opening-media,.panorama-background,.panorama-background iframe,.shade{position:absolute;inset:0;width:100%;height:100%}.opening-media{object-fit:cover;z-index:-3}.panorama-background{z-index:-3;background:#20271d url('images/map-poster.jpg') center/cover}.panorama-background::after{content:attr(data-message);position:absolute;left:6vw;right:6vw;bottom:100px;text-align:center;font-size:13px;color:var(--paper)}.panorama-background iframe{border:0;pointer-events:none}.shade{z-index:-1;background:linear-gradient(180deg,#0005,transparent 40%,#0006)}
.slam{font-size:clamp(110px,27vw,470px);font-weight:900;letter-spacing:-.095em;line-height:.85;margin:0;padding-right:.08em;color:#f0f0e9;text-shadow:0 3px 40px #0002}.slam span{color:var(--green)}.opening-places .slam{font-size:clamp(75px,19vw,350px)}.opening-top,.opening-bottom{position:absolute;left:3.5vw;right:3.5vw;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.07em}.opening-top{top:32px;text-transform:uppercase}.opening-bottom{bottom:30px}.opening-bottom a{text-decoration:none}.media-control{font:inherit;color:inherit;border:1px solid #ffffff70;background:#1118;border-radius:30px;padding:9px 15px;cursor:pointer}.media-control[hidden]{display:none}
.editorial{padding:130px 6vw;max-width:1800px;margin:auto}.eyebrow{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--green)}.studio{display:grid;grid-template-columns:1.5fr 1fr;gap:45px 9vw}.studio .eyebrow{grid-column:1/-1}.editorial h2{font-weight:400;font-size:clamp(40px,5.5vw,90px);letter-spacing:-.065em;line-height:1.06}.editorial h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--quiet)}.studio-copy{align-self:end;max-width:440px;font-size:17px;line-height:1.7;color:var(--quiet)}.studio-copy p+p{margin-top:20px}.arrow-link{display:flex;align-items:center;justify-content:space-between;gap:40px;text-decoration:none;padding:20px 0;border-bottom:1px solid #70766a;color:var(--paper)!important;font-size:15px}.studio-copy .arrow-link{margin-top:35px}.arrow-link span{font-size:24px;color:var(--green)}
.selected-work{padding-top:30px}.section-heading,.photo-caption,.tour-caption{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-heading{margin-bottom:26px}.section-heading>span,.photo-caption>span,.tour-caption{font-size:12px;color:var(--quiet)}.photo-feature{display:block;overflow:hidden}.photo-feature img{width:100%;display:block;aspect-ratio:1.9;object-fit:cover;transition:transform .8s}.photo-feature:hover img{transform:scale(1.025)}.photo-caption{padding-top:22px}.photo-caption h2{font-size:24px;letter-spacing:-.04em}.photo-caption>a{font-size:26px;text-decoration:none}.photo-caption>span{margin-left:auto}
.immersive{border-top:1px solid #ffffff25}.immersive-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin:55px 0}.immersive-heading p{font-size:16px;color:var(--quiet)}.tour-stage{position:relative;width:100%;aspect-ratio:16/9;background:linear-gradient(#1118,#1118),url('images/roasted_Dwc.jpg') center/cover;display:grid;place-items:center;border:1px solid #ffffff20}.tour-stage iframe{width:100%;height:100%;border:0}.tour-launch{display:flex;flex-direction:column;align-items:center;gap:20px;width:100%;height:100%;justify-content:center;cursor:pointer;background:#0003;color:var(--paper);border:0;font:inherit}.tour-symbol{font-size:clamp(65px,10vw,150px);letter-spacing:-.07em;font-weight:700}.tour-launch small{font-size:12px;color:#ddd}.tour-caption{margin-top:16px}.tour-caption a{text-decoration:none}
.capabilities{padding-top:50px}.capabilities h2{margin:32px 0 60px}.service-lines>a{display:grid;grid-template-columns:50px 1fr 1fr 24px;align-items:center;gap:25px;padding:30px 0;border-top:1px solid #ffffff30;text-decoration:none}.service-lines>a:last-child{border-bottom:1px solid #ffffff30}.service-number{font-size:11px;color:var(--green)}.service-lines h3{font-size:clamp(22px,2.5vw,38px);font-weight:400;letter-spacing:-.04em}.service-lines p{color:var(--quiet);font-size:14px;max-width:300px}.service-lines>a:hover h3{color:var(--green)}
.closing{border-top:1px solid #ffffff25}.closing h2{font-size:clamp(70px,17vw,290px);font-weight:900;letter-spacing:-.085em;margin:55px 0}.closing h2>span{color:var(--green)}.closing-bottom{display:flex;align-items:center;justify-content:space-between;gap:40px}.closing-bottom p{color:var(--quiet)}.closing .arrow-link{min-width:230px}.subtle-link{font-size:12px;text-decoration:none}.home-page footer{background:#0b0d0a;border-top:1px solid #ffffff25;padding:35px 6vw;color:var(--quiet);font-size:12px}.home-page footer .inner{display:flex;justify-content:space-between;gap:25px}.home-page footer .partner-logos{display:none}.noscript-nav{padding:30px}.slam.entered{animation:slam-in .65s cubic-bezier(.16,1,.3,1) both}@keyframes slam-in{from{transform:scale(1.7);opacity:0;filter:blur(10px)}to{transform:scale(1);opacity:1;filter:blur(0)}}
@media(min-width:901px) and (max-width:1200px){.home-page .nav-container{padding:16px 2vw;gap:14px}.home-page .site-nav{gap:10px}.home-page .brand-text{font-size:14px}.home-page .brand-logo{height:30px}}
@media(max-width:900px){.home-page .nav-container{flex-wrap:wrap;padding:14px 6vw;gap:0}.home-page .hamburger{margin-left:auto}.home-page .site-nav{width:100%;flex-basis:100%;padding-top:20px!important}.home-page .site-nav a{font-size:15px;padding:8px 0}.opening{min-height:500px}.opening-we{height:calc(100svh - 73px)}.opening-top,.opening-bottom{left:6vw;right:6vw;font-size:10px}.opening-top>span:last-child{display:none}.opening-bottom{flex-wrap:wrap;gap:14px}.editorial{padding:80px 6vw}.studio{grid-template-columns:1fr;gap:35px}.studio-copy{max-width:580px}.studio-copy .arrow-link{max-width:330px}.immersive-heading{align-items:start;flex-direction:column;margin:35px 0}.service-lines>a{grid-template-columns:25px 1fr 20px;gap:14px}.service-lines p{grid-column:2;grid-row:2;max-width:none}.service-lines>a>span:last-child{grid-column:3;grid-row:1}.closing-bottom{align-items:start;flex-direction:column;gap:22px}.home-page footer .inner{flex-direction:column}.photo-caption{flex-wrap:wrap}.photo-caption>span{margin-left:0}.photo-caption>a{margin-left:auto}.tour-caption{align-items:start;flex-direction:column;gap:8px}.tour-stage{aspect-ratio:4/3}.photo-feature img{aspect-ratio:4/3}.slam{font-size:30vw}.opening-places .slam{font-size:20vw}}
@media(prefers-reduced-motion:reduce){.slam.entered{animation:none}.photo-feature img{transition:none}}
@media(max-width:900px){.home-page .site-nav{background:#111310;border-bottom:1px solid #ffffff30;padding-left:6vw!important;padding-right:6vw!important}.home-page .site-header.is-open .site-nav{max-height:calc(100svh - 74px);overflow-y:auto}}

.panorama-background canvas{position:absolute;inset:0;width:100%;height:100%;display:block}

/* Scroll position controls the opening words in both directions. */
.opening .slam{transform-origin:center;pointer-events:none}
.opening .slam.entered{animation:none}
@media(prefers-reduced-motion:reduce){
 .opening .slam{transform:none!important;filter:none!important;opacity:1!important;letter-spacing:-.095em!important}
}
