/* One optical edge rule: 24px in windows on desktop, 16px on mobile.
   A 44px control with a 26px visible disc overhangs 9px to align its visible edge. */
:root{--page-edge:32px;--window-edge:24px;--ui-ease:cubic-bezier(.22,1,.36,1)}
dialog:not(.contact-sheet) .window-bar{padding-inline:var(--window-edge)}
dialog:not(.contact-sheet) .close{margin-right:-9px;margin-left:auto;align-self:center}
dialog:not(.contact-sheet) .close:before{inset:9px}
dialog:not(.contact-sheet) .window-title{min-width:0}
.studio-footer{background:#202426;color:#ebece6;overflow:hidden;filter:none}
.footer-meeting{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4vw;padding:72px var(--page-edge) 55px;min-height:510px;background:radial-gradient(ellipse at 75% 50%,#39414466,transparent 57%)}
.footer-invitation{padding:0;pointer-events:auto;width:auto}
.footer-invitation .studio-eyebrow{color:#b0b7b7;margin-bottom:28px}
.footer-invitation h2{font-size:clamp(48px,5.1vw,82px);line-height:1.025;letter-spacing:-.045em;margin:0 0 32px}
.footer-invitation h2>span{color:#ed895f}
.footer-chat{font-size:17px;min-height:52px;gap:70px}
.converge-object{min-width:0;position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.converge-stage{width:100%;max-width:580px;aspect-ratio:1.05;margin:auto;position:relative;touch-action:pan-y}
.converge-sculpture{width:100%;height:100%;overflow:visible;display:block}
.converge-piece{fill:#deded5;stroke:none;filter:none;cursor:grab;touch-action:none}
.converge-stage.is-held .converge-piece{cursor:grabbing}
.footer-colophon{padding:0 var(--page-edge) 24px}
.footer-links{border-top:1px solid #ffffff25;padding-top:24px;align-items:center}
.footer-social{display:flex;gap:8px}.footer-social a{display:grid;place-items:center;width:44px;height:44px}.footer-social svg{width:18px;height:18px}
.footer-signature{margin:45px 0 38px}.footer-signature img{filter:invert(1);opacity:.96;width:100%;height:auto}
.footer-bottom nav{display:flex;align-items:center;gap:28px}.footer-bottom a{display:inline-flex;align-items:center;min-height:44px}.footer-bottom{padding-top:12px}
@media(max-width:760px){:root{--page-edge:20px;--window-edge:16px}.footer-meeting{grid-template-columns:1fr;gap:0;padding:48px var(--page-edge) 26px;min-height:0}.footer-invitation h2{font-size:clamp(43px,10vw,62px);margin-bottom:22px}.footer-invitation .studio-eyebrow{margin-bottom:22px}.footer-chat{font-size:16px;gap:70px}.converge-stage{max-width:330px;margin:6px auto -8px;aspect-ratio:1.16}.converge-caption{font-size:9px;gap:16px}.footer-links{display:flex;gap:10px;font-size:10px;flex-wrap:wrap;padding-top:16px}.footer-links>a{gap:12px}.footer-social{gap:0}.footer-social a{width:36px;min-height:44px}.footer-signature{margin:24px 0}.footer-bottom{font-size:9px;align-items:center;gap:12px;flex-wrap:wrap}.footer-bottom nav{gap:18px}.footer-bottom>span:last-child{max-width:none;text-align:left}}

.footer-purpose{font-size:14px;line-height:1.7;color:#bdc5c2;max-width:460px;margin:0 0 28px;text-wrap:pretty}
@media(max-width:760px){.footer-purpose{font-size:13px;max-width:360px}}
