.testbase-logo{position:relative;width:100%;max-width:640px;aspect-ratio:2320/724;margin:0 0 20px}
.testbase-logo>span{position:absolute;inset:0;background:url('/branding/elsabase-logo.svg?v=approved-v3') center/100% 100% no-repeat}
.testbase-logo-icon{clip-path:inset(16% 79.4% 32% 3%);transform-origin:13% 42%}
.testbase-logo-name{clip-path:inset(17% 3% 40% 20.6%)}
.testbase-logo-bar{clip-path:inset(62.83% 3% 34.83% 20.6%)}
.testbase-logo-credit{clip-path:inset(69% 3% 16% 58%)}
.portal-brand{grid-column:1/-1;margin-bottom:-40px}
.testbase-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:800px){.portal-brand{margin-bottom:0}.testbase-logo{margin-bottom:0}}
@media(prefers-reduced-motion:no-preference){
.testbase-logo.is-ready .testbase-logo-icon{animation:tb-icon .5s .1s cubic-bezier(.2,.8,.2,1) both}
.testbase-logo.is-ready .testbase-logo-name{animation:tb-name .45s .4s cubic-bezier(.2,.8,.2,1) both}
.testbase-logo.is-ready .testbase-logo-bar{animation:tb-bar .55s .7s cubic-bezier(.2,.8,.2,1) both}
.testbase-logo.is-ready .testbase-logo-credit{animation:tb-credit .35s 1.05s cubic-bezier(.2,.8,.2,1) both}
.testbase-logo:not(.is-ready):not(.is-static)>span{opacity:0}
}
@keyframes tb-icon{0%{opacity:0;transform:scale(.88)}75%{opacity:1;transform:scale(1.025)}100%{opacity:1;transform:scale(1)}}
@keyframes tb-name{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes tb-bar{from{clip-path:inset(62.83% 79.4% 34.83% 20.6%)}to{clip-path:inset(62.83% 3% 34.83% 20.6%)}}
@keyframes tb-credit{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}

/* Keep the destination space while the same mark travels from the centre. */
.testbase-logo.is-static>span{opacity:1}
.testbase-intro-pending .platform-brand{width:230px;height:72px;flex:none}
.testbase-intro-pending .platform-brand .testbase-logo:not(.is-travelling){visibility:hidden}
.testbase-intro-pending :is(.portal,.headerbuttons,.module-footer){visibility:hidden;opacity:0}
.testbase-intro-pending .elsa-tile{animation-play-state:paused}
@media(prefers-reduced-motion:no-preference){.testbase-intro-complete .portal{animation:tb-content .35s ease-out both}}
@keyframes tb-content{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:650px){.testbase-intro-pending .platform-brand{width:164px;height:52px}}
@media(max-width:389px){.testbase-intro-pending .platform-brand{width:150px;height:47px}}
