/* Decorative only: never blocks keyboard, pointer input or app startup. */
.brand-icon{display:block;width:40px;height:40px;min-width:40px;max-width:40px;max-height:40px;flex:0 0 40px;background:transparent!important;padding:0!important;overflow:hidden}
.brand-icon img{display:block;width:40px;height:40px;max-width:100%;object-fit:contain}
.policylab-opening{position:fixed;inset:0;z-index:9999;pointer-events:none;display:grid;place-items:center;background:#f6f8fb;animation:opening-dismiss .35s ease 1.85s forwards}
.opening-stage{position:relative;width:min(420px,90vw);height:260px}
.opening-symbol{position:absolute;top:50px;left:calc(50% - 48px);width:96px;height:96px;border-radius:23px;opacity:0;will-change:transform,opacity}
.opening-evidence{animation:evidence-flight 1.5s cubic-bezier(.2,.7,.2,1) both}
.opening-progress{animation:progress-flight 1.5s cubic-bezier(.2,.7,.2,1) .12s both}
.opening-policy{animation:policy-flight 1.65s cubic-bezier(.2,.7,.2,1) .2s both}
.opening-name{position:absolute;top:178px;left:0;right:0;text-align:center;font:700 29px/1.2 system-ui,sans-serif;color:#12263a;opacity:0;animation:opening-caption .4s ease .95s forwards}
.opening-name span{display:block;margin-top:7px;font-size:14px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:#35666b}
@keyframes evidence-flight{0%{opacity:0;transform:translate(-240px,-100px) rotate(-25deg) scale(.65)}35%,65%{opacity:1;transform:translateX(-116px) scale(.82)}100%{opacity:0;transform:translateX(0) scale(.45)}}
@keyframes progress-flight{0%{opacity:0;transform:translate(240px,90px) rotate(25deg) scale(.65)}35%,65%{opacity:1;transform:translateX(116px) scale(.82)}100%{opacity:0;transform:translateX(0) scale(.45)}}
@keyframes policy-flight{0%{opacity:0;transform:translateY(-150px) scale(.6)}45%,70%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:1;transform:scale(1.1)}}
@keyframes opening-caption{to{opacity:1}}
@keyframes opening-dismiss{to{opacity:0;visibility:hidden}}
@media(max-width:380px){.opening-stage{transform:scale(.82)}}
@media(prefers-reduced-motion:reduce){.policylab-opening{display:none!important}.opening-symbol,.opening-name{animation:none!important}}
