/* Restrained material study: no full-screen sweep, source lighting stays intact. */
.ceramic-home{--idle-x:0;--idle-y:0}
.idle-material{position:absolute;inset:-1%;z-index:8;pointer-events:none;mask-size:cover;mask-position:center;mask-repeat:no-repeat;-webkit-mask-size:cover;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;translate:calc(var(--cx)*-4px) calc(var(--cy)*-3px);transition:opacity .65s,translate 1s ease-out;opacity:0;mix-blend-mode:soft-light;contain:paint}
.idle-surface{position:absolute;inset:0;mask-image:url('assets/ceramic-background.png');mask-mode:luminance;mask-size:cover;mask-position:center;-webkit-mask-image:url('assets/ceramic-background.png');-webkit-mask-size:cover;-webkit-mask-position:center}
.idle-key-light,.idle-bounce-light{display:block;position:absolute;inset:-6%;pointer-events:none}
.idle-key-light{background:radial-gradient(ellipse 23% 32% at 70% 43%,#fff5d9 0%,#fff4dd80 35%,transparent 76%);opacity:.38;transform:translate(calc(var(--idle-x)*28px),calc(var(--idle-y)*16px));transition:transform 1.6s cubic-bezier(.2,.7,.2,1);animation:material-light-breathe 7.8s ease-in-out infinite alternate}
.idle-bounce-light{background:radial-gradient(ellipse 23% 16% at 70% 70%,#ae622e80,transparent 75%);opacity:.18;animation:material-bounce 9.2s ease-in-out infinite alternate}
.idle-floor{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .65s;mix-blend-mode:multiply;overflow:hidden}
.idle-floor i{position:absolute;left:49%;top:81%;width:43%;height:4%;border-radius:50%;background:radial-gradient(ellipse,#74513925,transparent 70%);filter:blur(9px);animation:material-ground 7.8s ease-in-out infinite alternate;transform-origin:center}
.ceramic-home[data-montage="wide"]:not(.intro-active) .idle-material,.ceramic-home[data-montage="wide"]:not(.intro-active) .idle-floor{opacity:1}
/* Independent translate preserves the pointer's existing tilt and the shard assembly. */
.ceramic-home[data-montage="wide"] .fragment-stage{animation:specimen-suspension 7.8s ease-in-out infinite alternate;animation-delay:-1.8s}
.specimen-entry.is-assembled .fragment-stage{animation:none!important;translate:0 0!important}
.ceramic-title .title-line{position:relative}
.ceramic-title .title-line::after{content:attr(data-echo) / "";position:absolute;inset:0;color:transparent;-webkit-text-stroke:.65px #916c50;opacity:0;pointer-events:none;animation:print-register 12s ease-in-out infinite}
.ceramic-title .title-line:nth-child(2)::after{animation-delay:1.4s}
.ceramic-home:not([data-montage="wide"]) .title-line::after{display:none}
.ceramic-home[data-idle-running="false"] .idle-key-light,.ceramic-home[data-idle-running="false"] .idle-bounce-light,.ceramic-home[data-idle-running="false"] .idle-floor i,.ceramic-home[data-idle-running="false"] .fragment-stage,.ceramic-home[data-idle-running="false"] .title-line::after{animation-play-state:paused}
@keyframes material-light-breathe{0%{opacity:.24;translate:-14px 6px}55%{opacity:.58}100%{opacity:.4;translate:24px -12px}}
@keyframes material-bounce{from{opacity:.13;translate:0 4px}to{opacity:.3;translate:-10px -3px}}
@keyframes material-ground{from{opacity:.42;scale:1 .92;translate:0 0}to{opacity:.22;scale:1.035 1.1;translate:0 2px}}
@keyframes specimen-suspension{from{translate:0 1px}to{translate:0 -4px}}
@keyframes print-register{0%,65%,100%{opacity:0;translate:0 0}76%{opacity:.12;translate:1.8px -.5px}86%{opacity:.06;translate:3px -1px}}
@media(max-width:600px){.idle-material{display:none}.idle-floor{display:none}.ceramic-home[data-montage="wide"] .fragment-stage{animation-duration:9s}.title-line::after{display:none!important}}
@media(prefers-reduced-motion:reduce){.idle-material,.idle-floor{display:none!important}.ceramic-home .fragment-stage{animation:none!important}.title-line::after{display:none!important}}

