/* Home opening only: existing typography, media and natural-motion owners remain. */
body.cme-home-logo-opening:is([data-cme-home-opening-phase="loading"],[data-cme-home-opening-phase="mark"]){background:#000}
body.cme-home-logo-opening .cme-home-logo-opening-overlay{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:#000;overflow:hidden;pointer-events:none;isolation:isolate;perspective:1200px}
body.cme-home-logo-opening .cme-home-logo-opening-overlay[hidden]{display:none}
body.cme-home-logo-opening .cme-home-opening-symbol{position:relative;z-index:2;width:clamp(64px,8vw,112px);height:auto;aspect-ratio:601.2134 / 437.8404;display:block;fill:#131313;filter:drop-shadow(0 -1px 1px #ffffff24) drop-shadow(0 1px 3px #ffffff0c);overflow:visible;opacity:1}
body.cme-home-logo-opening .cme-home-opening-plane{transform-box:view-box;transform-origin:50% 50%;transform:translate(0,0) rotate(0) scale(1)}
body.cme-home-logo-opening .cme-home-opening-loading{position:absolute;z-index:3;left:clamp(20px,4vw,64px);bottom:clamp(24px,4vh,48px);margin:0;color:#e6e6e6;font-size:clamp(14px,1.3vw,18px);line-height:1.3;letter-spacing:.02em}
body.cme-home-logo-opening .cme-home-opening-shutter{position:absolute;inset:0;width:100%;height:100%;z-index:1;display:none}
body.cme-home-logo-opening .cme-home-opening-aperture-shape{transform-origin:0 0;transform:scale(var(--cme-home-opening-mark-scale,.12))}
body.cme-home-logo-opening:is([data-cme-home-opening-phase="loading"],[data-cme-home-opening-phase="mark"]) .experience-stage{opacity:0}
body.cme-home-logo-opening:is([data-cme-home-opening-phase="reveal"],[data-cme-home-opening-phase="motion"],[data-cme-home-opening-phase="site"],[data-cme-home-opening-phase="complete"]) .experience-stage{opacity:1}
body.cme-home-logo-opening:is([data-cme-home-opening-phase="loading"],[data-cme-home-opening-phase="mark"],[data-cme-home-opening-phase="reveal"],[data-cme-home-opening-phase="motion"]) :is(.site-header,.hero-content,.hero-note,.hero-bottom){opacity:0!important}
body.cme-home-logo-opening :is(.site-header,.hero-content,.hero-note,.hero-bottom){transition:opacity .65s ease}
body.cme-home-logo-opening[data-cme-home-opening-phase="site"] :is(.site-header,.hero-note,.hero-bottom){opacity:0!important}
body.cme-home-logo-opening[data-cme-home-opening-phase="site"] .hero-content{opacity:1}
body.cme-home-logo-opening[data-cme-home-opening-phase="complete"] .hero-content{transition:none}
/* Native access or a failed load exposes the existing controls immediately. */
body.cme-home-logo-opening[data-cme-home-opening-escape="true"] :is(.site-header,.hero-content,.hero-note,.hero-bottom){transition:none}
body.cme-home-logo-opening .cme-home-logo-opening-overlay:is([data-phase="motion"],[data-phase="site"]){visibility:hidden;background:transparent;opacity:0}
body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="reveal"] .cme-home-opening-loading{opacity:0}
body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="mark"] .cme-home-opening-symbol{fill:#252525}
body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="mark"] .cme-home-opening-plane-c{animation:cme-home-opening-c-join .65s cubic-bezier(.2,.6,.2,1) both}
body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="mark"] .cme-home-opening-plane-m{animation:cme-home-opening-m-join .65s cubic-bezier(.2,.6,.2,1) both}
body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="mark"] .cme-home-opening-plane-e{animation:cme-home-opening-e-join .65s cubic-bezier(.2,.6,.2,1) both}
body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="reveal"]{background:transparent}
body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="reveal"] .cme-home-opening-symbol{animation:cme-home-opening-mark-to-aperture .8s linear both}
body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="reveal"] .cme-home-opening-shutter{display:block;animation:cme-home-opening-shutter-clear .8s linear both}
body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="reveal"] .cme-home-opening-aperture-shape{animation:cme-home-opening-aperture-expand .8s cubic-bezier(.45,0,.22,1) both}
@keyframes cme-home-opening-c-join{0%{transform:translate(-68px,24px) rotate(-7deg) scale(.58,1);opacity:.45}75%,100%{transform:translate(0,0) rotate(0) scale(1);opacity:1}}
@keyframes cme-home-opening-m-join{0%{transform:translate(0,45px) rotate(5deg) scale(1,.25);opacity:.3}78%,100%{transform:translate(0,0) rotate(0) scale(1);opacity:1}}
@keyframes cme-home-opening-e-join{0%{transform:translate(70px,-22px) rotate(9deg) scale(.45,1);opacity:.3}85%,100%{transform:translate(0,0) rotate(0) scale(1);opacity:1}}
@keyframes cme-home-opening-mark-to-aperture{0%{opacity:1}18%,100%{opacity:0}}
@keyframes cme-home-opening-aperture-expand{0%{transform:scale(var(--cme-home-opening-mark-scale,.12)) rotate(0) skewY(0)}24%{transform:scale(.35) rotate(-2deg) skewY(-3deg)}60%{transform:scale(2.5) rotate(-6deg) skewY(-5deg)}100%{transform:scale(9) rotate(-2deg) skewY(0)}}
@keyframes cme-home-opening-shutter-clear{0%,78%{opacity:1}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){
 body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="mark"] .cme-home-opening-plane{animation:none;transform:none;opacity:1}
 body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="reveal"] .cme-home-opening-symbol{animation:none;opacity:0}
 body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="reveal"] .cme-home-opening-shutter{display:none;animation:none}
 body.cme-home-logo-opening .cme-home-logo-opening-overlay[data-phase="reveal"]{background:transparent;opacity:0}
 body.cme-home-logo-opening :is(.site-header,.hero-content,.hero-note,.hero-bottom){transition-duration:.18s;transition-delay:0s}
}
