/* This row sits outside the scaled hero artwork so its gaps stay exact. */
.art-direction-hero>.art-hero-actions{position:absolute;right:0;bottom:20px;z-index:4;display:flex;align-items:center;gap:20px;max-width:100%}
.art-direction-hero .art-hero-actions .art-hero-cta{position:static;flex:none}
.scroll-dove-anchor{display:block;flex:none;width:64px;height:64px;visibility:hidden;pointer-events:none}
.scroll-dove{position:fixed;right:20px;bottom:20px;width:64px;height:64px;z-index:1000;display:block;padding:0;border:0;border-radius:50%;background:transparent;perspective:700px;touch-action:manipulation}
.scroll-dove-coin{position:relative;display:block;width:100%;height:100%;transform:rotateX(var(--dove-turn,0deg));transform-style:preserve-3d;pointer-events:none}
.scroll-dove-coin img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;border:1px solid #171919;border-radius:50%;background:#fff;box-sizing:border-box;backface-visibility:hidden;-webkit-backface-visibility:hidden;filter:drop-shadow(0 2px 2px #0002)}
.scroll-dove-front{transform:translateZ(1px)}
.scroll-dove-back{transform:rotateX(180deg) translateZ(1px)}
.scroll-dove:focus-visible{outline:2px solid #777;outline-offset:5px}
html.is-loading .scroll-dove{visibility:hidden}
@media(max-width:650px){
 .art-direction-hero>.art-hero-actions{right:8px;max-width:calc(100% - 8px)}
 .scroll-dove-anchor,.scroll-dove{width:56px;height:56px}
}
@media(max-width:390px){
 .art-direction-hero .art-hero-actions .art-hero-cta{padding-inline:14px;gap:10px}
 .art-direction-hero .art-hero-actions .work-cta-label{font-size:14px}
 .art-hero-actions .work-cta-eyes{width:32px;height:26px}
}
@media(prefers-reduced-motion:reduce){.scroll-dove-coin{transform:none}}

.dove-menu{position:fixed;right:20px;bottom:20px;width:64px;height:64px;z-index:1000}
.dove-menu .scroll-dove{position:relative;right:auto;bottom:auto;z-index:2;cursor:pointer}
.dove-socials{position:absolute;inset:0;pointer-events:none}
.dove-social{position:absolute;inset:0;display:grid;place-items:center;border:1px solid #171919;border-radius:50%;background:#fff;color:#171919;box-shadow:0 2px 3px #0002;opacity:0;transform:translateY(0) scale(.85);transition:transform .3s ease,opacity .2s,border-color .2s,color .2s;pointer-events:none}
.dove-social svg{width:28px;height:28px}
.dove-menu.is-open .dove-social{opacity:1;transform:translateY(calc(var(--social-index) * -76px)) scale(1);pointer-events:auto}
.dove-menu.is-open::before{content:"";position:absolute;left:0;right:0;bottom:0;height:292px}
.dove-social:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
/* Theme-colored outlines; the white disc stays unchanged. */
.dove-social:is(:hover,:focus-visible){color:var(--social-hover-color,var(--accent));border-color:var(--social-hover-color,var(--accent))}
html.is-loading .dove-menu{visibility:hidden}
@media(max-width:650px){
 .dove-menu{right:12px;bottom:20px;width:56px;height:56px}
 .art-direction-hero>.art-hero-actions{left:0;right:0;width:100%;max-width:none;gap:12px}
 .art-direction-hero .art-hero-actions .art-hero-cta{flex:1;min-width:0;justify-content:space-between}
 .art-direction-hero .sculpture-stage .art-hero-intro{bottom:104px}
 .dove-menu.is-open .dove-social{transform:translateY(calc(var(--social-index) * -68px)) scale(1)}
 .dove-menu.is-open::before{height:260px}
}
@media(prefers-reduced-motion:reduce){.dove-social{transition:none}}

.dove-linkedin svg{transform:translateX(-.58px)}

/* The dark footer paints over the fixed social control as its edge rises. */
body>.closing-footer-shell{position:relative;z-index:1001}
