/* Borrador 02. La versión anterior se conserva en mamut_web_preview. */
.hero__motion{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;pointer-events:none}
.hero__image{position:relative;z-index:1;opacity:1;transition:opacity 1.2s ease}
.hero.is-playing .hero__image{opacity:0}
.hero::after{z-index:2}.hero__bottom{z-index:3}
.hero-motion-toggle{position:absolute;right:var(--gutter);bottom:100px;z-index:4;color:var(--paper);font-size:10px;padding:9px 0;border-bottom:1px solid #ffffff90;opacity:0;pointer-events:none}
.hero-motion-toggle:focus-visible{opacity:1;pointer-events:auto}
.home-vision{display:grid;grid-template-columns:1fr 2fr;gap:7%;padding-top:120px;padding-bottom:125px}
.home-vision>.eyebrow{padding-top:7px}.home-vision h2{font-size:clamp(27px,2.55vw,38px);line-height:1.28;max-width:760px}
.home-vision__copy{display:grid;grid-template-columns:1fr 1fr;gap:36px;max-width:700px;margin:35px 0 29px;color:var(--muted);font-size:12px;line-height:1.9}
.home-vision__copy--single{display:block;max-width:430px;padding-top:25px;border-top:1px solid var(--line)}
.studio-vision .prose{column-count:1;max-width:650px}
.studio-vision .prose p:last-child{margin-bottom:0}
.studio-manifesto{padding-top:72px;padding-bottom:85px}
.studio-manifesto h2{font-size:30px;max-width:280px}
.manifesto-source{font-size:9px;color:var(--muted);margin-top:20px}
.manifesto-copy{margin:0;max-width:650px;font-size:12px;line-height:1.9;color:var(--muted)}
.manifesto-copy p+p{margin-top:24px}
.manifesto-copy .manifesto-lead{font:400 24px/1.4 Ponomar,Georgia,serif;color:var(--ink)}
.editorial-interlude{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:10%;padding:85px calc(var(--gutter) - 12px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.editorial-interlude h2{font-size:30px;max-width:400px;line-height:1.25}.editorial-interlude p{font-size:12px;max-width:380px;color:var(--muted);line-height:1.9}
.project-tile>img{transition:transform 1.3s var(--ease),opacity .85s ease}
.project-tile>.tile-motion-frame{position:absolute;inset:0;opacity:0;pointer-events:none}
.intro-loader.is-active{animation:loader-out .65s 7.4s var(--ease) forwards}
.footsteps{width:106px;height:181px;top:48%;animation:trail-release .9s 4.82s ease-in-out forwards}
.step{animation:step-walk 1.9s var(--delay) ease-in-out both}
@keyframes step-walk{0%{opacity:0;transform:rotate(var(--angle)) translateY(4px)}24%,40%{opacity:.86;transform:rotate(var(--angle)) translateY(0)}100%{opacity:.16;transform:rotate(var(--angle)) translateY(0)}}
@keyframes trail-release{from{opacity:1}to{opacity:0}}
.step-1{left:0;top:144px;--angle:0deg}
.step-2{left:42px;top:112px;--angle:0deg}
.step-3{left:32px;top:80px;--angle:0deg}
.step-4{left:74px;top:48px;--angle:0deg}
.step-5{left:64px;top:16px;--angle:0deg}
.intro-loader__logo{--logo-end-width:114px;--logo-end-top:41px;--logo-end-left:var(--gutter);animation:logo-travel-soft 2.1s 5.3s var(--ease) forwards}
@keyframes logo-travel-soft{0%{opacity:0;top:50%;left:50%;transform:translate(-50%,-50%)}40%,54%{opacity:1;top:50%;left:50%;transform:translate(-50%,-50%)}100%{opacity:1;top:var(--logo-end-top);left:var(--logo-end-left);width:var(--logo-end-width);transform:translate(0,-50%)}}
@media(max-width:640px){.intro-loader__logo{--logo-end-width:90px;--logo-end-top:38px;--logo-end-left:20px}}
@media(max-width:370px){.intro-loader__logo{--logo-end-width:73px}}
.footer-bottom{justify-content:flex-end;padding-top:18px;font-size:9px}.footer-bottom>a{display:none}
body[data-page=contact] .site-footer{padding-top:20px;padding-bottom:24px}
body[data-page=contact] .footer-bottom{border-top:0;padding-top:0}
.contact-page{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:clamp(35px,8vw,120px)}
.contact-page>*{min-width:0}.contact-intro h1{max-width:100%;font-size:clamp(28px,3vw,42px);overflow-wrap:normal}
.contact-direct a,.footer-contact>a{overflow-wrap:anywhere}.form-row>*{min-width:0}input,select,textarea{min-width:0;max-width:100%}
.contact-monogram{display:none}
.team-grid .portrait-slot{width:100%;max-width:400px;height:auto;aspect-ratio:1600 / 2399}
.portrait-slot--photo{overflow:hidden}
/* Match the original proportions; contain also protects future portraits from cropping. */
.portrait-slot--photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.person-heading>span{max-width:170px;line-height:1.6}
body[data-page=project] .detail-hero{margin:12px 12px 0}
.detail-intro{padding-top:55px;padding-bottom:55px}
.project-film--opening{margin:12px 12px 0}
.project-film--opening video{width:100%;height:calc(100svh - 106px);max-height:none;object-fit:contain;background:#171914}
.detail-hero img{max-height:calc(100svh - 106px)}
.detail-gallery{align-items:start}.detail-gallery figure{position:relative}
.image-button{position:relative;overflow:hidden}.sequence-hint{position:absolute;bottom:16px;right:18px;color:#fff;font-size:9px;letter-spacing:.03em;text-shadow:0 1px 5px #000;opacity:0;transition:opacity .5s}
.sequence-hint{z-index:2}.image-button:hover .sequence-hint,.image-button:focus-visible .sequence-hint{opacity:1}
@media(min-width:1600px){.editorial-interlude{grid-column:1/-1}}
@media(max-width:850px){.contact-page{grid-template-columns:1fr;gap:55px}.contact-intro{max-width:560px}.contact-page form{max-width:760px}.home-vision{grid-template-columns:1fr 3fr;gap:40px}.home-vision__copy{grid-template-columns:1fr;gap:18px}}
@media(max-width:640px){.primary-nav .nav-photography{display:block}.primary-nav{gap:13px}.primary-nav>a{font-size:9px;white-space:nowrap}.site-header{gap:20px}.brand-link{flex:0 0 84px;width:84px}.hero__motion{object-position:57% 50%}.hero-motion-toggle{opacity:1;pointer-events:auto;bottom:90px}.home-vision{grid-template-columns:1fr;gap:15px;padding-top:70px;padding-bottom:78px}.home-vision h2{font-size:28px}.home-vision__copy{margin:25px 0;font-size:12px}.editorial-interlude{grid-template-columns:1fr;gap:22px;padding:60px 13px}.editorial-interlude h2{font-size:27px}.editorial-interlude p{font-size:12px}.footer-bottom{justify-content:flex-start}.contact-page{padding-top:50px;padding-bottom:60px;gap:44px}.contact-intro h1{font-size:32px}.project-film--opening{margin:7px 7px 0}.project-film--opening video{height:auto;max-height:70svh}.detail-intro{padding-top:30px;padding-bottom:35px}body[data-page=project] .detail-hero{margin:7px 7px 0}.detail-hero img{max-height:75svh}}
@media(min-width:371px) and (max-width:640px){.brand-link{flex-basis:90px;width:90px}}
@media(max-width:370px){.site-header{gap:10px}.brand-link{flex-basis:73px;width:73px}.primary-nav{gap:10px}.primary-nav>a{font-size:8.5px}@keyframes logo-travel{0%{opacity:0;top:50%;left:50%;width:120px;transform:translate(-50%,-50%)}25%,52%{opacity:1;top:50%;left:50%;width:120px;transform:translate(-50%,-50%)}100%{opacity:1;top:38px;left:20px;width:73px;transform:translate(0,-50%)}}}
@media(hover:none){.hero-motion-toggle{opacity:1;pointer-events:auto}}
@media(prefers-reduced-motion:reduce){.hero__image{transition:none}.hero-motion-toggle{opacity:1;pointer-events:auto}}
