
:root{
  --motion-fast:220ms;--motion-base:520ms;--motion-slow:920ms;
  --motion-ease:cubic-bezier(.22,.8,.2,1);--motion-ease-out:cubic-bezier(.16,1,.3,1);
}
/* global arrival and threshold transition */
.ms-transition{position:fixed;inset:0;z-index:9999;pointer-events:none;visibility:hidden;overflow:hidden}
.ms-transition::before,.ms-transition::after{content:"";position:absolute;top:0;bottom:0;width:50.1%;background:#020202;transition:transform .58s var(--motion-ease-out)}
.ms-transition::before{left:0;transform:translateX(-101%)}.ms-transition::after{right:0;transform:translateX(101%)}
.ms-transition-line{position:absolute;z-index:2;left:50%;top:8%;bottom:8%;width:1px;background:linear-gradient(180deg,transparent,var(--gold) 18%,var(--gold-bright) 50%,var(--gold) 82%,transparent);transform:scaleY(0);transform-origin:center;opacity:0;box-shadow:0 0 24px rgba(199,167,102,.2)}
body.ms-leaving .ms-transition{visibility:visible;pointer-events:auto}
body.ms-leaving .ms-transition::before,body.ms-leaving .ms-transition::after{transform:none}
body.ms-leaving .ms-transition-line{animation:msThresholdClose .62s var(--motion-ease-out) both}
@keyframes msThresholdClose{0%{transform:scaleY(0);opacity:0}40%{transform:scaleY(1);opacity:1}100%{transform:scaleY(1);opacity:.45}}
body.ms-arrived .site-header{animation:msHeaderIn .72s var(--motion-ease-out) both}
body.ms-arrived .site-footer{animation:msFooterIn .72s var(--motion-ease-out) both}
body.ms-arrived main{animation:msMainIn .82s var(--motion-ease-out) both}
@keyframes msHeaderIn{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
@keyframes msFooterIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes msMainIn{from{opacity:.72}to{opacity:1}}

/* bespoke assets */
.signature-asset{position:absolute;pointer-events:none;user-select:none;-webkit-user-drag:none}
.signature-map{inset:5% -8% -8% 2%;width:108%;height:100%;object-fit:contain;opacity:.2;mix-blend-mode:screen;transform:translate3d(calc(var(--pointer-x,0)*14px),calc(var(--pointer-y,0)*10px),0) scale(1.04);transition:opacity .5s var(--motion-ease),transform .35s linear}
.signature-threshold-asset{right:-15%;top:-22%;width:min(900px,70vw);opacity:.14;mix-blend-mode:screen;transform:translate3d(calc(var(--pointer-x,0)*-9px),calc(var(--pointer-y,0)*-6px),0);transition:transform .35s linear}
.signature-seal{right:-10%;top:-12%;width:68%;opacity:.36;filter:blur(.1px);transform:rotate(calc(2deg + var(--pointer-x,0)*2deg)) translate3d(calc(var(--pointer-x,0)*-8px),calc(var(--pointer-y,0)*-8px),0);transition:transform .35s linear,opacity .6s var(--motion-ease)}
.signature-letter{inset:auto 2% 2% auto;width:70%;opacity:.16;mix-blend-mode:screen;transform:translate3d(calc(var(--pointer-x,0)*-8px),calc(var(--pointer-y,0)*-5px),0);transition:transform .4s linear}

/* pointer spotlight: content remains fully usable without JS */
.signature-surface{position:relative;isolation:isolate;overflow:hidden}
.signature-surface::before{content:"";position:absolute;z-index:0;inset:-1px;pointer-events:none;background:radial-gradient(430px circle at var(--spot-x,50%) var(--spot-y,50%),rgba(199,167,102,.075),transparent 58%);opacity:0;transition:opacity .35s var(--motion-ease)}
.signature-surface:hover::before,.signature-surface:focus-within::before{opacity:1}

/* WORLD */
.world-panel .panel-copy>*{transform:translateY(0);transition:transform .65s var(--motion-ease-out),opacity .5s var(--motion-ease)}
.world-panel:hover .panel-copy .panel-index,.world-panel:focus-visible .panel-copy .panel-index{transform:translateY(-6px)}
.world-panel:hover .panel-title,.world-panel:focus-visible .panel-title{transform:translateY(-8px)}
.world-panel:hover .panel-copy p,.world-panel:focus-visible .panel-copy p{transform:translateY(-5px)}
.world-panel:hover .text-link,.world-panel:focus-visible .text-link{transform:translateY(-3px)}
.world-process .process-grid{transform:translate3d(calc(var(--pointer-x,0)*8px),calc(var(--pointer-y,0)*6px),0);transition:transform .35s linear}
.world-process #processCanvas{transform:translate3d(calc(var(--pointer-x,0)*15px),calc(var(--pointer-y,0)*10px),0) scale(1.03);transition:transform .35s linear}
.world-editions .world-book{transform:rotate(calc(3deg + var(--pointer-x,0)*.55deg)) translate3d(calc(var(--pointer-x,0)*-4px),calc(var(--pointer-y,0)*-4px),0);will-change:transform}
.world-editions:hover .world-book{transform:rotate(calc(1.5deg + var(--pointer-x,0)*.45deg)) translate3d(calc(var(--pointer-x,0)*-5px),calc(-6px + var(--pointer-y,0)*-4px),0)}
.threshold{animation:msThresholdBreath 5.5s ease-in-out infinite;box-shadow:0 0 18px rgba(199,167,102,.09)}
.threshold-label{transition:color .45s,letter-spacing .45s}.world-main.is-process .threshold-label,.world-main.is-editions .threshold-label{color:var(--gold);letter-spacing:.36em}
@keyframes msThresholdBreath{0%,100%{opacity:.5}50%{opacity:.92}}
.world-panel::before{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 35%,rgba(242,234,220,.045) 49%,transparent 63%);transform:translateX(-120%);transition:transform 1.15s var(--motion-ease-out)}
.world-panel:hover::before,.world-panel:focus-visible::before{transform:translateX(120%)}

/* PROCESS signature visual and guided state changes */
.process-v2-panel,.check-section,.contact-hero{position:relative;isolation:isolate}
.process-v2-panel .signature-map{opacity:.28}
.process-v2-panel:hover .signature-map{opacity:.4}
.process-v2-panel::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(360px circle at calc(50% + var(--pointer-x,0)*22%) calc(50% + var(--pointer-y,0)*22%),rgba(199,167,102,.08),transparent 68%)}
.wizard-step:not([hidden]){animation:msStepIn .52s var(--motion-ease-out) both}
@keyframes msStepIn{from{opacity:0;transform:translateX(15px)}to{opacity:1;transform:none}}
.step.is-active::after{animation:msStepLine .55s var(--motion-ease-out) both}@keyframes msStepLine{from{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1)}}
.loading-panel{position:relative;overflow:hidden}
.analysis-scanner{position:absolute;inset:0;pointer-events:none;opacity:.72;background-image:url('/assets/signature-threshold.svg');background-size:92% 120%;background-position:center;mix-blend-mode:screen}
.analysis-scanner::before{content:"";position:absolute;left:12%;right:12%;height:1px;top:18%;background:linear-gradient(90deg,transparent,var(--gold-bright),transparent);box-shadow:0 0 18px rgba(227,197,126,.28);animation:msScan 2.35s var(--motion-ease) infinite}
.analysis-scanner::after{content:"";position:absolute;left:50%;top:10%;bottom:10%;width:1px;background:linear-gradient(180deg,transparent,var(--gold),transparent);animation:msScanPulse 1.8s ease-in-out infinite}
@keyframes msScan{0%{top:16%;opacity:0}18%{opacity:1}82%{opacity:1}100%{top:84%;opacity:0}}
@keyframes msScanPulse{0%,100%{opacity:.2;transform:scaleY(.7)}50%{opacity:.9;transform:scaleY(1)}}
.loading-panel>div:not(.analysis-scanner){position:relative;z-index:2}
[data-process-result].is-ready .pulse-track i{animation:msPulseFill 1.15s var(--motion-ease-out) both}@keyframes msPulseFill{from{width:0}to{width:var(--value)}}
[data-process-result].is-ready .timeline-stage{animation:msTimelineIn .62s var(--motion-ease-out) both}
[data-process-result].is-ready .timeline-stage:nth-of-type(3){animation-delay:.12s}[data-process-result].is-ready .timeline-stage:nth-of-type(5){animation-delay:.24s}
@keyframes msTimelineIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.check-section>.signature-threshold-asset{opacity:.08}

/* TOOLS */
.tools-hero{position:relative;isolation:isolate;overflow:hidden}
.tools-hero>.signature-threshold-asset{opacity:.09;right:-24%;top:-38%}
.tool-rail{position:relative;overflow:hidden}.tool-rail::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:var(--tool-progress,33.333%);background:linear-gradient(90deg,var(--gold),var(--gold-bright));box-shadow:0 0 14px rgba(199,167,102,.16);transition:width .7s var(--motion-ease-out)}
.tool-panel.is-active{animation:msToolIn .58s var(--motion-ease-out) both}@keyframes msToolIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.tool-tab{transition:background .35s,color .35s,transform .35s var(--motion-ease)}.tool-tab:hover{transform:translateY(-2px)}

/* EDITIONS */
.editions-cover-wrap .signature-seal{z-index:1}.editions-cover{transform:rotate(-1.5deg) translateY(var(--scroll-shift,0px));transition:transform .8s var(--motion-ease-out),filter .8s;will-change:transform}.editions-cover-wrap:hover .editions-cover{transform:rotate(-.6deg) translateY(calc(-10px + var(--scroll-shift,0px))) scale(1.012);filter:drop-shadow(0 65px 70px rgba(0,0,0,.72))}
.editions-cover-wrap:hover .signature-seal{opacity:.53}
.editions-hero::after{content:"";position:absolute;left:50%;top:7%;bottom:7%;width:1px;background:linear-gradient(180deg,transparent,rgba(199,167,102,.26),transparent);pointer-events:none}
.strip-visual{position:relative;overflow:hidden;background-attachment:fixed;background-position:center calc(45% + var(--scroll-shift,0px))}
.strip-visual .signature-letter{z-index:2}.strip-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 32%,rgba(242,234,220,.055) 48%,transparent 64%);transform:translateX(-120%)}
.strip-visual.is-visible::after{animation:msEditorialLight 2.2s .25s var(--motion-ease-out) both}@keyframes msEditorialLight{to{transform:translateX(120%)}}

/* CONTACT */
.contact-hero>.signature-threshold-asset{left:-18%;right:auto;top:-18%;width:78%;opacity:.08}
.contact-form{position:relative;overflow:hidden}.contact-form::after{content:"";position:absolute;left:0;top:0;width:0;height:1px;background:var(--gold);transition:width .7s var(--motion-ease-out)}.contact-form:focus-within::after{width:100%}

/* responsive and reduced motion */
@media(max-width:900px){.signature-threshold-asset{width:120vw;right:-55%}.editions-hero::after{display:none}.strip-visual{background-attachment:scroll}.signature-seal{width:85%;right:-18%}.signature-letter{width:96%;right:-15%;bottom:3%}}
@media(prefers-reduced-motion:reduce){.ms-transition{display:none!important}body.ms-arrived .site-header,body.ms-arrived .site-footer,body.ms-arrived main,.threshold,.analysis-scanner::before,.analysis-scanner::after,[data-process-result].is-ready .pulse-track i,[data-process-result].is-ready .timeline-stage,.strip-visual.is-visible::after{animation:none!important}.signature-map,.signature-threshold-asset,.signature-seal,.signature-letter,.world-book,#processCanvas,#processHeroCanvas,.process-grid{transform:none!important}.world-panel::before{display:none}.strip-visual{background-attachment:scroll}}


/* PROCESS full-field motion: the separate hero box no longer exists. */
body[data-page="process"] .process-full-field{
  transition:transform .55s linear,opacity .6s ease;
  will-change:transform;
}
