/* Moving type, a measured contact reveal, and a film that opens with the scroll. */
.contact-studio-page .contact-greeting{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;margin-block:48px 55px}
.contact-studio-page .contact-greeting .contact-moving-title{font-size:clamp(3.5rem,8.4vw,9.25rem);line-height:1.23;letter-spacing:-.055em;min-width:0}
.contact-reader-title{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.contact-greeting .contact-moving-title>span{color:var(--ink)}
.contact-hello{display:block;font-size:2em;line-height:.99;letter-spacing:-.075em}
.contact-hello>span{color:#77664e}
.contact-word-window{display:block;height:1.23em;margin-top:.12em;overflow:hidden;max-width:100%}
.contact-word-track{display:block}
.contact-word{display:block;height:1.23em;line-height:1.23;white-space:nowrap;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.075em}
.contact-word-serif{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.055em;color:#77664e}
.contact-motion-toggle{display:flex;align-items:center;gap:10px;min-height:44px;margin-top:14px;padding:8px 0;border:0;background:none;color:var(--contact-muted);font:inherit;font-size:.875rem;cursor:pointer}
.contact-motion-toggle[hidden]{display:none}
.contact-motion-symbol{display:block;width:9px;height:11px;border-left:2px solid;border-right:2px solid}
.contact-motion-toggle[aria-pressed=true] .contact-motion-symbol{width:0;height:0;border-left:8px solid;border-right:0;border-top:5px solid transparent;border-bottom:5px solid transparent}
.contact-has-motion .contact-word-track{animation:contact-words 10.8s cubic-bezier(.65,0,.25,1) infinite}
.contact-motion-paused .contact-word-track{animation-play-state:paused}
@keyframes contact-words{0%,24%{transform:translate3d(0,0,0)}33.333%,57.333%{transform:translate3d(0,-25%,0)}66.666%,90.666%{transform:translate3d(0,-50%,0)}100%{transform:translate3d(0,-75%,0)}}
.contact-channels{border-block:1px solid var(--contact-rule)}
.contact-channels>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:20px 0;cursor:pointer;font-size:.875rem;line-height:1.6;letter-spacing:.08em;text-transform:uppercase;list-style:none}
.contact-channels>summary::-webkit-details-marker{display:none}
.contact-channel-symbol{position:relative;width:16px;height:16px;flex:none}
.contact-channel-symbol:before,.contact-channel-symbol:after{content:"";position:absolute;top:7px;left:0;width:16px;height:1px;background:currentColor;transition:transform .35s}
.contact-channel-symbol:after{transform:rotate(90deg)}
.contact-channels[open] .contact-channel-symbol:after{transform:rotate(0)}
.contact-channels .contact-directories{border-bottom:0}
.contact-film{padding-bottom:85px}
.contact-film-heading{display:flex;justify-content:space-between;align-items:baseline;gap:25px;border-top:1px solid var(--contact-rule);padding-top:25px;margin-bottom:35px}
.contact-studio-page .contact-film-heading h2{margin:0;font-size:clamp(2.4rem,4vw,4rem);font-weight:400;line-height:1.15;letter-spacing:-.04em}
.contact-film-heading h2 em{font-family:var(--serif);font-weight:400;color:#77664e}
.contact-film-figure{margin:0}
.contact-film-window{position:relative;overflow:hidden;aspect-ratio:16/9;background:#343934;clip-path:inset(0 var(--contact-film-inset,0%) 0 var(--contact-film-inset,0%))}
.contact-film-window video{pointer-events:none;display:block;width:100%;height:100%;object-fit:cover;transform:scale(var(--contact-film-scale,1));transform-origin:center}
/* Match the approved homepage player, scoped to this consultation film. */
.contact-film-toggle[hidden]{display:none}
.contact-film-toggle{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:pan-y}
.contact-film-toggle-position{position:absolute;left:calc(100% - 44px - var(--contact-film-inset,0%));top:calc(100% - 44px);pointer-events:none}
.contact-film-toggle-circle{display:grid;place-items:center;width:64px;height:64px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:rgba(15,18,16,.38);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);transform:translate(-50%,-50%);transition:opacity .2s ease,background .2s ease}
.contact-film-toggle svg{grid-area:1/1;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.contact-film-toggle .contact-film-toggle-play{display:none}
.contact-film-toggle.is-paused .contact-film-toggle-pause{display:none}
.contact-film-toggle.is-paused .contact-film-toggle-play{display:block}
.contact-film-toggle:focus-visible{outline:none}
.contact-film-toggle:focus-visible .contact-film-toggle-position{left:calc(100% - 44px - var(--contact-film-inset,0%));top:calc(100% - 44px);transform:none!important}
.contact-film-toggle:focus-visible .contact-film-toggle-circle{opacity:1;outline:2px solid #fff;outline-offset:4px;background:rgba(15,18,16,.7)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .contact-film-toggle{cursor:none}
 .contact-film-toggle-circle{opacity:0}
 .contact-film-toggle.has-pointer-position .contact-film-toggle-position{left:0;top:0}
 .contact-film-toggle.is-pointer-active .contact-film-toggle-circle{opacity:1}
 .contact-film-toggle:focus-visible{cursor:pointer}
 .contact-film-toggle:focus-visible .contact-film-toggle-position{left:calc(100% - 44px - var(--contact-film-inset,0%));top:calc(100% - 44px)}
}
.contact-film-figure figcaption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:15px;color:var(--contact-muted);font-size:.875rem;line-height:1.6}
.contact-film-figure figcaption a{display:flex;align-items:center;gap:25px;min-height:44px}
.contact-film-figure figcaption a:hover{text-decoration:underline;text-underline-offset:4px}
.contact-film-figure figcaption .arrow-icon{width:20px;height:20px}
@media(max-width:950px){.contact-studio-page .contact-greeting{gap:4vw}.contact-studio-page .contact-greeting .contact-moving-title{font-size:clamp(3rem,8.2vw,5rem)}.contact-film-heading{align-items:flex-start;flex-direction:column;gap:20px}}
@media(max-width:700px){
 .contact-studio-page .contact-greeting{grid-template-columns:1fr;gap:25px;margin-block:35px}
 .contact-studio-page .contact-greeting .contact-moving-title{font-size:clamp(3rem,12.5vw,5.2rem);line-height:1.23;letter-spacing:-.055em}
 .contact-hello{font-size:1.95em}.contact-word-window{margin-top:.08em}
 .contact-greeting>div{width:100%}.contact-project-link{max-width:none}
 .contact-motion-toggle{margin-top:10px}
 .contact-channels>summary{min-height:60px;padding-block:17px}
 .contact-film{padding-bottom:55px}
 .contact-film-heading{gap:19px;margin-bottom:25px}
 .contact-studio-page .contact-film-heading h2{font-size:clamp(2.1rem,8.4vw,3.5rem);max-width:550px}
 .contact-film-window{aspect-ratio:1.1}.contact-film-window video{object-position:center}
 .contact-film-consultation .contact-film-window{aspect-ratio:16/9}
 .contact-film-figure figcaption{align-items:flex-start;flex-direction:column;gap:4px}
}
@media(prefers-reduced-motion:reduce){
 .contact-has-motion .contact-word-track{animation:none!important}
 .contact-film-window{clip-path:none!important}
 .contact-film-window video{transform:none!important}
 .contact-channel-symbol:before,.contact-channel-symbol:after{transition:none}
 .contact-motion-toggle{display:none!important}
}
