/* Publication readiness: shared accessible controls and policy layout. */
[hidden]{display:none!important}
:is(.contact,.cta-band,.site-footer,.sculpture-page .works-preview) :is(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid #fff;outline-offset:5px}
.sculpture-page .work-card:focus-visible{outline:3px solid var(--main);outline-offset:-5px}
.policy{max-width:1000px}.policy h2{margin:64px 0 24px;padding-top:32px;border-top:1px solid var(--line)}.policy h2:first-child{margin-top:0;padding-top:0;border:0}.policy ul{padding-left:24px}.policy p,.policy li{font-size:16px;line-height:1.9}.policy li+li{margin-top:8px}.thanks-home{margin-top:40px}
.sculpture-motion{width:48px;min-width:0;height:48px;display:grid;place-items:center;padding:0;border-color:#24212c25;background:#f8f7f380;color:#686270;z-index:5;transition:background .2s,border-color .2s,color .2s}
.sculpture-motion [data-motion-label]{display:none}
.sculpture-motion:hover,.sculpture-motion:focus-visible{background:var(--paper);border-color:var(--main);color:var(--main)}
.sculpture-motion:focus-visible{outline:3px solid var(--main);outline-offset:4px}
.display-title{display:none}
@media(min-width:801px){
.semantic-title{font-size:var(--h2)!important;line-height:1.5!important;position:absolute;width:1px;height:1px;padding:0;margin:0!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sculpture-page .display-title{display:block;font-size:clamp(64px,6.5vw,96px);font-weight:700;line-height:1.2;letter-spacing:-.06em;text-wrap:balance}
.news-section{padding-block:96px}
}
@media(max-width:800px){.sculpture-motion{top:16px;bottom:auto;right:24px;min-height:48px}.sculpture-copy{padding-top:88px}.policy h2{margin-top:48px}.page-privacy h1{font-size:var(--display)}.footer-grid>div:first-child p{max-width:19em}}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}::view-transition-old(root),::view-transition-new(root),::view-transition-group(*){animation:none!important}.page-hero:after{transform:none!important}}

.page-thanks .page-hero p,.footer-grid>div:first-child p{text-wrap:balance}

/* Approved logo: crop only the surrounding canvas in CSS; keep the original artwork. */
.brand-art{display:block;position:relative;width:224px;aspect-ratio:1840/440;overflow:hidden;flex-shrink:0}
.brand-art img{position:absolute;width:118.0435%;max-width:none;height:auto;left:-13.0435%;top:-34.0909%;mix-blend-mode:multiply}
.header-inner>.brand{gap:0;font-size:0;flex-shrink:0}
.footer-wordmark .brand{display:flex;width:min(960px,100%);background:var(--paper);padding:24px;border-radius:8px;min-height:0}
.footer-wordmark .brand-art{width:100%}
@media(max-width:1100px) and (min-width:801px){.header-inner>.brand .brand-art{width:180px}.header-inner{gap:16px}}
@media(max-width:800px){.header-inner>.brand .brand-art{width:152px}.footer-wordmark .brand{padding:12px}}
/* Keep a dedicated strip for the motion control, including short desktop windows. */
@media(min-width:801px){.sculpture-copy{padding-bottom:96px}.sculpture-hero{min-height:760px}.sculpture-motion{bottom:20px;right:24px}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .work-carousel:not(.is-dragging) .work-card{transition:translate .35s ease,box-shadow .35s ease}
 .work-carousel:not(.is-dragging) .work-card.is-front:hover{translate:0 -12px;box-shadow:0 36px 72px #120b2b66,0 8px 20px #120b2b33}
}
