/* The opening is decorative: content stays available if animation is unsupported. */
.opening{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:#050507;pointer-events:none;animation:opening-exit 3s cubic-bezier(.65,0,.32,1) forwards}
.opening img{width:min(44vw,420px);height:auto;filter:invert(1) drop-shadow(0 0 34px #3479ff40);animation:opening-zoom 3s cubic-bezier(.65,0,.32,1) forwards}
@keyframes opening-zoom{0%,25%{transform:scale(.8);opacity:1}80%{opacity:1}100%{transform:scale(22);opacity:0}}
@keyframes opening-exit{0%,72%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}
.about,.experience{--ink:#121b2d;--muted:#536079;--line:#2344772b;--accent:#245dcc;width:100%;max-width:none;padding-inline:5%;background:#f8faff;color:var(--ink)}
.about .intro,.about .collaborations,.experience>.line-title,.experience>#career,.experience>.cv-links{max-width:1600px;margin-inline:auto}
.about .bio span{color:#7c8a9f}.about .bio span.lit{color:#172237}.about .small-label,.experience .small-label{color:#52627e}
.about .logos .logo-item img{filter:none}.about .logos .logo-app img{filter:none}.about .logo-app span{color:#19263b}
.experience .career-row p{color:#536079}.experience .career-row time{color:#2861c7}.experience .outline{background:#fff;border-color:#8098c755;color:#23375d;box-shadow:0 8px 24px #214b8c0b}.experience .outline:hover{background:#245ed4;color:#fff}
@media(max-width:700px){.opening img{width:65vw}.about,.experience{padding-inline:6%}}
@media(prefers-reduced-motion:reduce){.opening{display:none}.about .bio span{color:#172237}}
