/* A tactile identity with readable type; actual films remain the foreground. */
.premium-shell { --kinetic-accent:#6f8651; }
.premium-shell .site-header nav { font-size:15px; gap:20px; }
.premium-shell .wordmark { font-size:25px; }
.premium-shell .languages { font-size:12px; }
.premium-shell .opening-heading h1,
.premium-shell .story-page-heading h1 { font-size:22px; }
.premium-shell .opening-heading .work-channels,
.premium-shell .story-page-heading > p { font-size:12px; }
.premium-shell .category-heading h2 { font-size:17px; }
.premium-shell .category-heading > span { font-size:11px; }
.premium-shell .work-tools { position:relative; align-items:flex-end; justify-content:space-between; margin:4px 0 32px; font-size:12px; }
.kinetic-stage { position:relative; width:100%; height:170px; overflow:hidden; isolation:isolate; }
.kinetic-canvas { display:block; width:100%; height:100%; opacity:0; transition:opacity .5s; }
.kinetic-ready .kinetic-canvas { opacity:1; }
.kinetic-fallback { position:absolute; inset:0; display:grid; place-items:center; font-size:100px; font-weight:600; color:#70815b; transform:rotate(-12deg); opacity:.3; }
.kinetic-ready .kinetic-fallback { display:none; }
.premium-shell .work-tools .kinetic-stage { width:320px; height:156px; margin-left:-30px; }
.premium-shell .motion-toggle { margin-bottom:8px; }
.premium-shell .opening-film { transform-style:preserve-3d; transform:perspective(1100px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)); transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s; will-change:auto; }
.premium-shell .opening-film:after { content:""; pointer-events:none; position:absolute; inset:0; opacity:0; background:radial-gradient(ellipse at var(--shine-x,50%) var(--shine-y,50%),#fff7,transparent 65%); transition:opacity .4s; mix-blend-mode:soft-light; }
@media(hover:hover) and (pointer:fine) {
 .premium-shell .opening-film:hover { box-shadow:0 18px 35px -26px #34412670; }
 .premium-shell .opening-film:hover:after { opacity:.65; }
 .premium-shell .opening-film:hover .opening-play { transform:translate(-50%,-50%) scale(1); }
}
.premium-shell .opening-play { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:#263020a8; font-size:22px; text-shadow:none; backdrop-filter:blur(6px); transform:translate(-50%,-50%) scale(.85); transition:opacity .25s,transform .4s; }
.premium-shell .private-work h3 { font-size:21px; }
.premium-shell .private-work p { font-size:14px; }
.premium-shell .private-inquiry { font-size:14px; }
.premium-shell .story-intro { grid-template-columns:minmax(0,1.45fr) repeat(2,minmax(0,1fr)); gap:30px; padding-top:58px; }
.premium-shell .story-intro-copy h2 { font-size:32px; line-height:1.48; letter-spacing:-.04em; }
.premium-shell .story-intro-copy > .story-kicker { font-size:12px; }
.premium-shell .story-intro-bottom > p { font-size:16px; line-height:1.8; }
.premium-shell .story-intro-copy .kinetic-stage { height:160px; max-width:280px; margin:0 0 -6px -20px; }
.premium-shell .story-intro-copy .story-evidence { margin-top:0; font-size:11px; }
.premium-shell .story-trust,.premium-shell .story-cost { align-self:center; }
.premium-shell .story-trust h3,.premium-shell .story-intro .cost-copy h2 { font-size:18px; min-height:54px; }
.premium-shell .trust-metric strong,.premium-shell .cost-change strong { font-size:32px; }
.premium-shell .story-trust { grid-template-rows:106px 170px auto; }
.premium-shell .story-cost { grid-template-rows:106px auto; }
.premium-shell .evidence-plot,.premium-shell .ad-cost-chart svg { height:170px; max-height:170px; }
.premium-shell .ad-cost-chart { grid-template-rows:170px auto; }
.premium-shell .evidence-caption { font-size:12px; }
.premium-shell .story-trust .evidence-caption > a,.premium-shell .cost-sources { font-size:11px; }
.premium-shell .story-section-heading h2 { font-size:29px; }
.premium-shell .story-kicker { font-size:11px; }
.premium-shell .format-tabs button { font-size:14px; padding-bottom:15px; }
.premium-shell .format-copy h3 { font-size:22px; }
.premium-shell .format-copy > p { font-size:16px; line-height:1.85; }
.premium-shell .story-link { font-size:14px; }
.premium-shell .story-contact h2 { font-size:27px; }
.premium-shell .studio-motion { font-size:12px; }
.premium-shell .photo-wall { perspective:900px; max-width:340px; height:380px; }
.premium-shell .wall-column { transform:rotateY(var(--wall-y,0deg)) translateY(var(--wall-offset,0px)); transition:transform .7s cubic-bezier(.22,1,.36,1); }
.premium-shell .contact { position:relative; }
.premium-shell .contact h2 { font-size:36px; }
.premium-shell .contact-grid > div > p { font-size:16px; }
.premium-shell .contact-email { font-size:20px; }
.premium-shell .contact .kinetic-stage { max-width:350px; height:210px; margin:20px 0 -25px -35px; }
.premium-shell .contact .section-label { font-size:12px; }
.premium-shell .field > span { font-size:13px; }
.premium-shell .field input { font-size:16px; padding-block:18px; }
.premium-shell .consent { font-size:13px; }
.premium-shell .submit { font-size:14px; height:52px; }
.premium-shell .footer-top { font-size:13px; }
.premium-shell .company { font-size:11px; }
.kinetic-motion { position:absolute; right:0; top:70px; background:transparent; color:#747c69; font-size:12px; padding:4px 0; }
.kinetic-paused .opening-film { transform:none; }
.kinetic-paused .wall-column { transform:none; }
.kinetic-paused .opening-film:after { display:none; }
@media(min-width:801px) and (max-width:1200px) {
 .premium-shell .story-intro { grid-template-columns:1fr 1fr; }
 .premium-shell .story-intro-copy { grid-column:1 / -1; position:relative; padding-right:270px; }
 .premium-shell .story-intro-copy .kinetic-stage { position:absolute; right:0; top:48px; width:250px; margin:0; }
}
@media(max-width:800px) {
 .premium-shell .story-intro { grid-template-columns:1fr; gap:36px; }
 .premium-shell .story-intro-copy h2 { font-size:30px; }
 .premium-shell .contact h2 { font-size:32px; }
 .premium-shell .contact .kinetic-stage { height:155px; max-width:280px; margin-bottom:-20px; }
}
@media(max-width:600px) {
 .premium-shell .wordmark { font-size:22px; }
 .premium-shell .opening-heading h1,.premium-shell .story-page-heading h1 { font-size:20px; }
 .premium-shell .opening-heading .work-channels,.premium-shell .story-page-heading > p { font-size:10px; }
 .premium-shell .work-tools .kinetic-stage { height:110px; width:200px; margin-left:-25px; }
 .premium-shell .work-tools { margin-bottom:24px; }
 .premium-shell .motion-toggle { font-size:11px; white-space:nowrap; }
 .premium-shell .category-heading h2 { font-size:16px; }
 .premium-shell .story-intro-copy h2 { font-size:28px; }
 .premium-shell .story-intro-copy .kinetic-stage { height:130px; max-width:240px; }
 .premium-shell .story-section-heading h2 { font-size:26px; }
 .premium-shell .photo-wall { max-width:290px; height:320px; }
 .premium-shell .format-copy > p { font-size:15px; }
 .premium-shell .story-contact h2 { font-size:24px; }
 .premium-shell .contact h2 { font-size:30px; }
 .premium-shell .contact-email { font-size:19px; }
 .premium-shell .contact .section-label { font-size:10px; }
}
@media(prefers-reduced-motion:reduce) {
 .premium-shell .opening-film,.premium-shell .wall-column { transform:none!important; transition:none; }
 .kinetic-canvas { transition:none; }
}
/* Native cross-page transitions keep navigation and focus behavior intact. */
@view-transition { navigation:auto; }
.premium-shell .site-header { view-transition-name:studio-navigation; }
.premium-shell main { view-transition-name:studio-page; }
::view-transition-old(studio-page) { animation:page-out .22s ease both; }
::view-transition-new(studio-page) { animation:page-in .5s cubic-bezier(.22,1,.36,1) both; }
@keyframes page-out { to { opacity:0; transform:translateY(-10px); } }
@keyframes page-in { from { opacity:0; transform:translateY(18px); } }
@media(prefers-reduced-motion:reduce) {
 ::view-transition-old(studio-page),::view-transition-new(studio-page) { animation:none; }
}
