/* VAS editorial evolution: original typography and motion, using VAS imagery. */
:root{--paper:#f3eddf;--ink:#292b24;--olive:#353b30}
.intro{background:var(--paper);color:var(--ink);animation:vasCurtain .85s 2.35s cubic-bezier(.76,0,.24,1) forwards}
.intro-type{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;font-family:var(--serif);font-size:clamp(160px,37vw,610px);line-height:1;letter-spacing:-.065em;padding-right:.065em}
.intro-type span{display:block;animation:vasLetter 1.25s var(--ease) both;transform-origin:50% 100%}
.intro-type span:nth-child(2){animation-delay:.16s}.intro-type span:nth-child(3){animation-delay:.32s}
.intro-subtitle{position:absolute;left:0;right:0;top:74%;text-align:center;font-size:11px;letter-spacing:.28em;animation:introCaption .8s 1.1s both}
.intro .intro-line{background:var(--ink);animation-duration:2.35s}.intro #skip-intro{border-color:currentColor}
@keyframes vasLetter{from{opacity:0;transform:translateY(65%) rotate(7deg);filter:blur(7px)}to{opacity:1;transform:translateY(0) rotate(0);filter:blur(0)}}
@keyframes vasCurtain{to{clip-path:inset(0 0 100% 0);visibility:hidden}}
.hero{min-height:760px}.hero-shade{background:linear-gradient(180deg,#18181165,#18181115 30%,#18181185 65%,#181811da)}
.hero-title{left:3.5%;right:3.5%;bottom:180px}.hero-title .eyebrow{font-size:10px;letter-spacing:.18em;margin-bottom:0}
.hero h1{font-size:clamp(180px,31vw,490px);line-height:.72;letter-spacing:-.055em;margin-top:30px}
.hero h1 .line{padding-bottom:.08em}.hero-manifesto{font-family:var(--serif);font-size:clamp(30px,4vw,58px);line-height:1.1;margin-top:10px}
.hero-side{bottom:158px;right:5%;width:230px}.hero-side p{font-size:14px;margin:15px 0}.hero-topline{font-size:10px;letter-spacing:.16em}
.desktop-nav{gap:25px;font-size:12px}.section-pad{padding-top:130px;padding-bottom:130px}.section-label{font-size:10px;letter-spacing:.12em}
.work{background:#30362c}.work .project-list{display:flex;flex-direction:column;gap:100px}.work .project{width:100%;padding:0;margin:0;align-self:stretch;position:relative}
.work .project-photo img{height:min(75vw,760px);max-height:80svh;object-fit:cover}.work .project h3{font-size:clamp(46px,6.8vw,108px);line-height:1.05;margin-top:16px}.work .project p{font-size:14px}.work .project-meta{margin-top:22px;font-size:10px}
.image-action{border-radius:50%;width:110px;height:110px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:11px;backdrop-filter:blur(8px)}
.closing-word{font-family:var(--serif);font-size:clamp(160px,31vw,500px);line-height:.85;letter-spacing:-.05em;border-top:1px solid #eeeade55;padding-top:55px;margin-top:70px}
.closing-word span{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.2em;line-height:2;margin-top:20px}
@media(min-width:1100px){.hero-side{bottom:175px}.hero-title{bottom:155px}.hero-title .eyebrow{margin-bottom:20px}.studio-layout{grid-template-columns:45% 30%}.cinema-copy h2{font-size:15vw}}
@media(max-width:650px){.intro-type{font-size:46vw}.intro-subtitle{top:65%;font-size:9px}.hero{min-height:680px;height:100svh}.hero-title{left:6%;right:6%;bottom:235px}.hero h1{font-size:48vw;margin-top:18px}.hero-title .eyebrow{font-size:9px}.hero-manifesto{font-size:34px}.hero-side{left:6%;right:auto;bottom:99px;width:88%;display:block}.hero-side .small-number{display:none}.hero-side p{font-size:13px;margin:0 0 5px}.hero-side .text-link{font-size:12px}.hero-topline{top:108px;font-size:9px}.section-pad{padding-top:80px;padding-bottom:80px}.work .project-list{gap:55px}.work .project-photo img{height:420px;max-height:65svh}.work .project h3{font-size:46px}.work .project-meta{font-size:9px}.closing-word{font-size:45vw;margin-top:45px;padding-top:30px}.image-action{width:80px;height:80px;font-size:10px}}
.reduce-motion .intro-type span,.reduce-motion .intro-subtitle{animation:none}.reduce-motion .intro{display:none}
@media(prefers-reduced-motion:reduce){.intro{display:none}.intro-type span{animation:none}}

/* Weekly maintenance: clear contact routes and keyboard targets. */
.contact-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(420px,1.5fr);margin-left:0;gap:6vw;align-items:start}.contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;align-items:stretch}
.contact-channel{display:flex;align-items:center;gap:15px;min-height:92px;padding:20px;border:1px solid #eeeade70;transition:background .2s,color .2s}
.contact-channel svg{flex:0 0 24px}.contact-channel>span:not(.channel-arrow){flex:1;min-width:0}.contact-channel strong{display:block;font-size:16px;font-weight:500;line-height:1.5}.contact-channel small{display:block;font-size:11px;line-height:1.6;letter-spacing:.02em;margin-top:4px}.channel-arrow{font-size:22px;flex:0 0 auto}
.contact-channel:hover,.contact-channel:focus-visible{background:var(--paper);color:var(--ink)}.menu-aside>a{display:inline-flex;min-height:44px;align-items:center}.hero-controls button{min-width:44px;min-height:44px}.footer-bottom a,.footer-bottom button{display:inline-flex;align-items:center;min-height:44px}.footer-bottom button:disabled{opacity:.75;cursor:default}
.reduce-motion{scroll-behavior:auto!important}.reduce-motion .hero-image{transform:none!important}.contact-channel:focus-visible{outline-offset:4px}.footer-word{display:none}.word-mask{padding-right:.12em;margin-right:-.12em}
@media(max-width:900px){.contact-row{display:block}.contact-row>p{margin-bottom:28px}.contact-actions{width:100%}}
@media(max-width:430px){.contact-actions{gap:8px}.contact-channel{padding:14px 10px;gap:8px;min-height:96px}.contact-channel svg{flex-basis:19px;width:19px}.contact-channel strong{font-size:14px}.contact-channel small{font-size:10px}.channel-arrow{font-size:17px}}
