/* Shared public footer. Static markup and motion work without JavaScript. */
html body[class] footer.studio-footer[data-site-footer]{padding:44px clamp(22px,5vw,80px) 24px;margin:0;width:100%;box-sizing:border-box;border:0;background:#fff!important;color:#343738;font-family:'Satoshi','Inter',sans-serif}
html body[class] footer.studio-footer[data-site-footer] .footer-main{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;max-width:1440px;margin:auto;padding:0 0 36px;align-items:start}
html body[class] footer.studio-footer[data-site-footer] .footer-signature{grid-column:auto}
html body[class] footer.studio-footer[data-site-footer] .footer-main nav{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:0;text-align:left}
html body[class] footer.studio-footer[data-site-footer] nav>strong{font:500 10px/1.4 'Satoshi','Inter',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#626567;margin:0 0 4px}
html body[class] footer.studio-footer[data-site-footer] nav>a{font:400 13px/1.6 'Satoshi','Inter',sans-serif;min-height:24px}
html body[class] footer.studio-footer[data-site-footer] .footer-base{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;max-width:1440px;margin:auto;padding:22px 0 0;border-top:1px solid #dedfe0;color:#626567;font:400 12px/1.6 'Satoshi','Inter',sans-serif}
html body[class] footer.studio-footer[data-site-footer] .footer-base>span{display:flex;align-items:center;gap:8px;order:0;width:auto}
html body[class] footer.studio-footer[data-site-footer] .footer-base .craft-icon{width:17px;height:17px}
html body[class] footer.studio-footer[data-site-footer] .studio-footer-social{max-width:1440px;margin:auto;padding:24px 0}
html body[class] footer.studio-footer[data-site-footer] :is(nav a,.footer-base a){display:inline-block;width:fit-content;max-width:100%;padding:5px 0;color:#343738!important;text-decoration:none!important;background-image:linear-gradient(#76797b,#76797b);background-repeat:no-repeat;background-position:0 100%;background-size:0 1px;transition:background-size .2s cubic-bezier(.55,.055,.675,.19)}
html body[class] footer.studio-footer[data-site-footer] :is(nav a,.footer-base a):is(:hover,:focus-visible){background-size:100% 1px;transition:background-size .55s cubic-bezier(.16,1,.3,1)}
html body[class] footer.studio-footer[data-site-footer] a:focus-visible{outline:2px solid #778571;outline-offset:5px}
html body[class] footer.studio-footer[data-site-footer] .footer-back-top{min-height:44px;line-height:34px}
html body[class] footer.studio-footer[data-site-footer] .footer-roll-word{position:relative;display:inline-block;margin:0!important;padding:0;overflow:hidden;vertical-align:bottom;line-height:1.6;perspective:400px}
html body[class] footer.studio-footer[data-site-footer] .footer-roll-word>span{display:block;transition:transform .24s cubic-bezier(.55,.055,.675,.19);transform-origin:50% 50%}
html body[class] footer.studio-footer[data-site-footer] .footer-roll-word>span+span{position:absolute;inset:0;transform:translateY(110%) rotateX(-35deg)}
@media(hover:hover) and (pointer:fine){
 html body[class] footer.studio-footer[data-site-footer] a:hover .footer-roll-word>span{transition:transform .65s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--word,0)*22ms)}
 html body[class] footer.studio-footer[data-site-footer] a:hover .footer-roll-word>span:first-child{transform:translateY(-110%) rotateX(35deg)}
 html body[class] footer.studio-footer[data-site-footer] a:hover .footer-roll-word>span+span{transform:none}
}
html body[class] footer.studio-footer[data-site-footer] a:focus-visible .footer-roll-word>span:first-child{transform:translateY(-110%) rotateX(35deg)}
html body[class] footer.studio-footer[data-site-footer] a:focus-visible .footer-roll-word>span+span{transform:none}
@media(max-width:760px){
 html body[class] footer.studio-footer[data-site-footer]{padding:38px 22px 22px}
 html body[class] footer.studio-footer[data-site-footer] .footer-main{grid-template-columns:1fr 1fr;gap:32px 24px}
 html body[class] footer.studio-footer[data-site-footer] .footer-signature{grid-column:1/-1}
 html body[class] footer.studio-footer[data-site-footer] nav>a{min-height:44px;box-sizing:border-box;display:inline-block;padding-block:11px}
 html body[class] footer.studio-footer[data-site-footer] .footer-base{gap:16px}
}
@media(prefers-reduced-motion:reduce){
 html body[class] footer.studio-footer[data-site-footer] a,html body[class] footer.studio-footer[data-site-footer] .footer-roll-word>span{transition:none!important;transform:none!important}
 html body[class] footer.studio-footer[data-site-footer] .footer-roll-word>span+span{display:none}
}
html body[class].airy-quiet-motion footer.studio-footer[data-site-footer] .footer-roll-word>span{transition:none!important;transform:none!important}
html body[class].airy-quiet-motion footer.studio-footer[data-site-footer] .footer-roll-word>span+span{display:none}

/* Brand lockup belongs to the shared footer, alongside its navigation. */
html body[class] footer.studio-footer[data-site-footer] .footer-signature{display:block;align-self:start;max-width:100%;text-decoration:none}
html body[class] footer.studio-footer[data-site-footer] .footer-studio-lockup{display:block}
html body[class] footer.studio-footer[data-site-footer] .footer-studio-name{display:block;font:400 clamp(28px,3vw,42px)/1.1 'Satoshi','Inter',sans-serif;letter-spacing:-.045em;color:#292e2a;white-space:nowrap}
html body[class] footer.studio-footer[data-site-footer] .footer-studio-period{color:#778571}
html body[class] footer.studio-footer[data-site-footer] .footer-signature small{display:block;margin-top:14px;font:400 14px/1.6 'Satoshi','Inter',sans-serif;letter-spacing:0;color:#626b61}
html body[class] footer.studio-footer[data-site-footer] .footer-signature small strong{display:inline;font:inherit;font-weight:700;letter-spacing:0;text-transform:none;color:#292e2a}
html body[class] footer.studio-footer[data-site-footer] .footer-studio-tagline{display:block;margin-top:5px;font:400 14px/1.6 'Satoshi','Inter',sans-serif;letter-spacing:0;color:#626b61}

html body[class] footer.studio-footer[data-site-footer] nav a span{margin:0}
html body[class] footer.studio-footer[data-site-footer] nav a>span[aria-hidden]{margin-left:7px}
