/* A full-bleed architectural sequence. Movement follows the visitor, then rests. */
body[data-page=home]{--paper:#efede5;--ink:#181b18;--muted:#65665c;--line:#181b182b;--signal:#ef713f;background:#181b18;color:#f4f0e7;display:block;transition:none}
body[data-page=home] :is(a,button):focus-visible{outline-color:var(--signal)}
.cinema-header{position:absolute;inset:0 0 auto;z-index:10;padding:30px var(--gutter);color:#f4f0e7;gap:30px}.cinema-header .brand{gap:20px;color:inherit}.cinema-wordmark{display:flex;align-items:baseline;font-size:49px;font-weight:600;letter-spacing:-.085em;line-height:.85}.brand-point{display:inline-block;width:6px;height:6px;margin-left:5px;background:var(--signal)}.brand-descriptor{font-size:8px;font-weight:550;line-height:1.5;letter-spacing:.11em}.cinema-header .header-nav{gap:37px;font-size:11px}.cinema-header .header-nav>a{min-height:44px}.cinema-header .contact-link{gap:25px;border-bottom:1px solid #f4f0e770}.cinema-header .header-nav>a:hover{color:#fff}.icon-arrow{width:19px;height:19px;flex-shrink:0;transition:transform .3s}.contact-link:hover .icon-arrow,.chapter-action:hover .icon-arrow{transform:translate(2px,-2px)}
.cinema{position:relative;isolation:isolate;min-height:720px;height:100svh;max-height:1250px;overflow:hidden;touch-action:pan-y;outline-offset:-4px!important;background:#28251e;user-select:none;-webkit-user-select:none}.cinema-visual{position:absolute;inset:-24px;transform:translate3d(calc(var(--look-x,0px) + var(--drag-x,0px)),var(--look-y,0px),0);transition:transform .8s cubic-bezier(.2,.7,.2,1);pointer-events:none}.cinema-frame{position:absolute;inset:0;display:block;opacity:0;transform:scale(1.055) translate3d(14px,0,0);transition:opacity 950ms cubic-bezier(.2,.65,.2,1),transform 1600ms cubic-bezier(.16,.65,.25,1);pointer-events:none}.cinema-frame.is-active{opacity:1;transform:scale(1) translate3d(0,0,0)}.cinema-frame img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 52%}.cinema-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(8,11,9,.38),rgba(8,11,9,.04) 60%),linear-gradient(180deg,rgba(8,11,9,.36),transparent 23%,transparent 44%,rgba(8,11,9,.65) 100%)}
.cinema-overline{position:absolute;left:var(--gutter);right:var(--gutter);top:134px;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.025em;opacity:.9}.cinema-overline>span:first-child{display:flex;align-items:center;gap:9px}.signal-dot{width:5px;height:5px;background:var(--signal);border-radius:50%}.overline-location{font-size:9px}.chapter-copy{position:absolute;left:var(--gutter);top:50%;width:min(730px,58vw);transform:translate3d(0,calc(-50% + 26px),0);opacity:0;visibility:hidden;transition:opacity .48s ease,transform .85s cubic-bezier(.2,.75,.2,1),visibility 0s .5s;pointer-events:none}.chapter-copy.is-active{opacity:1;visibility:visible;transform:translate3d(0,-50%,0);transition:opacity .65s .14s ease,transform .95s cubic-bezier(.2,.75,.2,1),visibility 0s;pointer-events:auto}.chapter-kicker{font-size:10px;line-height:1.4;letter-spacing:.1em;text-transform:uppercase;margin-bottom:21px;color:#f4f0e7c4}.chapter-copy :is(h1,h2){font-size:clamp(65px,7.65vw,128px);line-height:.97;font-weight:430;letter-spacing:-.072em;text-wrap:nowrap;text-shadow:0 1px 24px #0000000a}.chapter-description{font-size:12px;line-height:1.65;margin-top:25px;color:#f4f0e7d9;letter-spacing:.005em}.chapter-action{display:inline-flex;align-items:center;gap:33px;min-height:48px;margin-top:23px;font-size:11px;color:#f4f0e7}.chapter-action:hover{color:white}.action-symbol{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:var(--signal);color:#181b18;transition:background .25s}.chapter-action:hover .action-symbol{background:#f79163}.action-symbol .icon-arrow{width:17px;height:17px}
.scene-steppers{position:absolute;right:var(--gutter);top:50%;display:flex;gap:9px;transform:translateY(-50%)}.scene-steppers button{border:1px solid #f4f0e76b;background:#0d110d14;color:#f4f0e7;border-radius:50%;width:46px;height:46px;display:grid;place-items:center;transition:background .2s,transform .2s}.scene-steppers button:hover{background:#f4f0e722;transform:scale(1.06)}.scene-steppers svg{width:21px;height:21px}.scene-steppers button:first-child svg{transform:rotate(180deg)}
.cinema-bottom{position:absolute;left:var(--gutter);right:var(--gutter);bottom:65px;display:flex;justify-content:space-between;align-items:end;gap:60px}.journey-caption{display:flex;flex-direction:column;gap:9px;font-size:9px;line-height:1.5;color:#f4f0e79e;white-space:nowrap;padding-bottom:4px}.caption-title{font-size:9px;color:#f4f0e7;letter-spacing:.055em}.chapter-nav{display:grid;grid-template-columns:repeat(3,1fr);width:min(610px,56vw);gap:25px}.chapter-nav button{position:relative;border:0;border-top:1px solid #f4f0e759;background:transparent;padding:19px 0 5px;display:flex;align-items:center;gap:12px;text-align:left;color:#f4f0e7a3;font-size:16px;line-height:1.2;min-height:56px;transition:color .2s,border-color .3s}.chapter-nav button::before{content:'';position:absolute;top:-1px;left:0;width:100%;height:2px;background:var(--signal);transform:scaleX(0);transform-origin:left;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.chapter-nav button[aria-pressed=true]{color:#f4f0e7}.chapter-nav button[aria-pressed=true]::before{transform:scaleX(1)}.chapter-nav button:hover{color:#fff}.chapter-number{font-size:8px;align-self:center;color:#f4f0e79c}.chapter-mark{margin-left:auto;font-weight:300;font-size:19px}.chapter-nav button[aria-pressed=true] .chapter-mark{color:var(--signal);transform:rotate(45deg)}.cinema-fine{position:absolute;bottom:21px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;gap:20px;font-size:8px;color:#f4f0e799;letter-spacing:.02em}.cinema-fine a{color:inherit;min-height:24px;display:flex;align-items:center}.interaction-cue{display:flex;align-items:center}.interaction-cue::before{content:'↔';font-family:Arial,sans-serif;font-size:15px;margin-right:9px}.cinema-fine a:hover{color:#fff}
body[data-page=home] .site-footer{display:block;color:#bcbcb2;background:#181b18;padding:29px var(--gutter) 23px}.footer-intro{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:20px;border-bottom:1px solid #f4f0e729;font-size:10px;color:#f4f0e7}.site-footer .footer-services{display:flex;gap:25px;margin:0}.site-footer .footer-services a{text-decoration:none;font-size:11px}.footer-disclosures{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:20px}.footer-disclosures p{font-size:9px;line-height:1.7}.footer-disclosures nav{margin:0}.site-footer a:hover{color:#fff}
/* Inner pages are an editorial spread that slides across the architectural view. */
.studio-panel{--paper:#efede5;--ink:#181b18;--muted:#67675e;--line:#181b182b;position:fixed;inset:0 0 0 auto;z-index:30;width:min(990px,76vw);height:100dvh;background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain;box-shadow:-30px 0 100px #0003;scrollbar-color:#898d7d var(--paper)}.studio-panel-top{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--paper);padding:15px 42px;border-bottom:1px solid var(--line);font-size:11px}.studio-panel-top>a{display:flex;align-items:center;gap:25px;min-height:44px}.studio-panel-top button{background:none;border:0;display:flex;align-items:center;gap:16px;padding:0 0 0 10px;min-height:44px;font-size:10px}.studio-panel-top button>span{font-size:25px;line-height:1;font-weight:300}.panel-service-nav{display:flex;gap:30px;padding:15px 42px 0;font-size:11px}.panel-service-nav a{display:flex;min-height:38px;align-items:center;border-bottom:1px solid transparent}.panel-service-nav a:hover,.panel-service-nav a[aria-current=page]{border-color:var(--ink)}.studio-panel-content.journey-page{width:100%;max-width:none;margin:0;padding:0!important;container-type:normal}.studio-panel-content>.journey-page{padding:37px 42px 65px;margin:0;width:100%;max-width:none}.studio-panel-content .back-home{display:none}.studio-panel-content .journey-header{margin-top:0}.studio-panel-content .journey-header h1{font-size:clamp(40px,5.2vw,74px)}.studio-panel-content .journey-grid{grid-template-columns:1fr;gap:25px}.studio-panel-content .journey-copy{max-width:650px}.studio-panel-content .journey-copy p{font-size:13px}.studio-panel-content .brief-form{max-width:none}.studio-panel-status{padding:26px 42px 0;font-size:12px;color:var(--muted)}.studio-panel[data-state=loading] .studio-panel-content{opacity:.5}.studio-panel[data-state=ready] .studio-panel-content{animation:page-appear .38s ease}.studio-panel[data-state=closing]{pointer-events:none}.panel-is-open{overflow:hidden}.panel-is-open::after{content:'';position:fixed;inset:0;z-index:20;background:#181b1859;pointer-events:none}.panel-is-open .cinema-visual{transform:translate3d(0,0,0)}
@keyframes page-appear{from{opacity:.4;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1800px){.chapter-copy{width:850px}.cinema-frame img{object-position:50% 55%}}
@media(max-width:1000px){.journey-caption{display:none}.chapter-nav{width:100%;gap:35px}.chapter-copy{width:80vw}.cinema-bottom{bottom:66px}.cinema-overline{top:118px}.chapter-copy :is(h1,h2){font-size:clamp(72px,10vw,98px)}.scene-steppers{top:auto;bottom:205px}.studio-panel{width:86vw}}
@media(max-width:700px){.cinema-header{padding:24px 24px;gap:15px}.cinema-header .brand{gap:11px}.cinema-wordmark{font-size:40px}.brand-point{width:5px;height:5px;margin-left:4px}.brand-descriptor{font-size:6px;letter-spacing:.07em}.cinema-header .header-nav{gap:0;font-size:10px}.cinema-header .header-nav .studio-link{display:none}.cinema-header .contact-link{gap:11px;border:0}.cinema-header .icon-arrow{width:17px;height:17px}.cinema{min-height:730px;height:100svh;max-height:1100px}.cinema-overline{top:103px;left:24px;right:24px;font-size:8px}.overline-location{display:none}.cinema-frame img{object-position:center 39%}.cinema-shade{background:linear-gradient(180deg,#090c093d,transparent 22%,transparent 32%,#090c0980 56%,#090c09d6 100%)}.chapter-copy{left:24px;right:24px;top:auto;bottom:174px;width:auto;transform:translate3d(0,20px,0)}.chapter-copy.is-active{transform:translate3d(0,0,0)}.chapter-kicker{font-size:8px;margin-bottom:15px;letter-spacing:.07em}.chapter-copy :is(h1,h2){font-size:clamp(47px,12.4vw,77px);font-weight:450;line-height:1.02;letter-spacing:-.065em}.chapter-description{font-size:11px;margin-top:16px;line-height:1.65}.chapter-action{margin-top:17px;min-height:44px;font-size:10px;gap:24px}.action-symbol{width:36px;height:36px}.action-symbol .icon-arrow{width:15px;height:15px}.scene-steppers{right:24px;bottom:175px;transform:none;gap:5px}.scene-steppers button{width:44px;height:44px}.scene-steppers button:first-child{display:none}.scene-steppers svg{width:17px;height:17px}.cinema-bottom{left:24px;right:24px;bottom:68px;gap:0}.chapter-nav{width:100%;gap:19px}.chapter-nav button{font-size:13px;padding-top:17px;gap:8px;min-height:51px}.chapter-number{font-size:7px}.chapter-mark{font-size:16px}.cinema-fine{left:24px;right:24px;bottom:21px;font-size:7px;gap:10px}.interaction-cue{font-size:0}.interaction-cue::before{margin-right:6px}.interaction-cue::after{content:'Swipe to explore';font-size:7px}.footer-intro{align-items:start;flex-direction:column;gap:9px}.site-footer .footer-services{gap:25px}.footer-disclosures{display:block;padding-top:17px}.footer-disclosures nav{margin-top:8px}.footer-disclosures p{font-size:8px}.studio-panel{inset:0;width:100%}.studio-panel-top{padding:12px 24px}.panel-service-nav{gap:24px;padding:12px 24px 0;font-size:10px}.studio-panel-content>.journey-page{padding:31px 24px 50px}.studio-panel-content .journey-header h1{font-size:47px;max-width:100%}.studio-panel-status{padding:22px 24px 0}.studio-panel-content .journey-copy{display:none}}
@media(max-width:350px){.cinema-header{padding-inline:20px}.cinema-header .brand-descriptor{display:none}.chapter-copy,.cinema-bottom,.cinema-overline,.cinema-fine{left:20px;right:20px}.chapter-copy :is(h1,h2){font-size:45px}.chapter-nav{gap:12px}.chapter-nav button{font-size:12px}.scene-steppers{right:20px}.chapter-description{font-size:10px}.chapter-action{gap:13px}.studio-panel-top{padding-inline:20px}.studio-panel-top button{font-size:9px;gap:9px}.studio-panel-content .journey-header h1{font-size:40px}}
@media(max-height:740px) and (min-width:701px){.cinema{min-height:650px}.cinema-overline{top:111px}.chapter-copy{top:49%}.chapter-copy :is(h1,h2){font-size:76px}.chapter-kicker{margin-bottom:15px}.chapter-description{margin-top:18px}.chapter-action{margin-top:17px}.cinema-bottom{bottom:60px}.cinema-header{padding-top:22px}.scene-steppers{top:50%;bottom:auto}}
@media(prefers-reduced-motion:reduce){.cinema-frame,.chapter-copy,.cinema-visual,.studio-panel-content{transition:none!important;animation:none!important;transform:none!important}.chapter-copy{top:50%;transform:translateY(-50%)!important}.cinema-visual{inset:0}.cinema-frame:not(.is-active){visibility:hidden}}
@media(prefers-reduced-motion:reduce) and (max-width:700px){.chapter-copy{top:auto;transform:none!important}}

.cinema[data-dragging=true] .cinema-visual{transition:none}.cinema[data-dragging=true]{cursor:grabbing}

.cinema:not([data-engine]) :is(.chapter-nav,.scene-steppers,.interaction-cue){visibility:hidden}

/* Studio pages remain reachable without using the scene. */
.cinema-directory{display:flex;gap:22px;align-items:center}.cinema-directory a{gap:9px;min-height:36px;font-size:10px;color:#f4f0e7}.cinema-directory a span{font-size:14px}.panel-service-nav{flex-wrap:wrap;gap:0 25px}.site-footer .footer-services{flex-wrap:wrap;row-gap:10px}
@media(max-width:700px){.cinema-directory{gap:17px}.cinema-directory a{font-size:9px;gap:5px}.panel-service-nav{gap:0 20px}.site-footer .footer-services{gap:10px 22px}.cinema-fine{align-items:center;bottom:14px}}
