/* Official artwork is shared by the welcome screen, navigation and footer. */
.site-header .brand-v5{min-width:190px;gap:0;flex-shrink:0}
.brand-v5 .brand-logo-shell{display:block;width:172px;height:86px;padding:7px 9px;background:#fff;border:1px solid #ffffff80;border-radius:8px;box-shadow:0 8px 28px #0003;transition:width .3s,height .3s,box-shadow .3s}
.site-header .brand-v5 .brand-official-logo{display:block;width:100%;height:100%;max-width:none;max-height:none;padding:0;background:transparent;border-radius:0;object-fit:contain;box-shadow:none;filter:none}
.brand-v5:hover .brand-logo-shell{box-shadow:0 8px 28px #0003,0 0 0 2px #ff6b2140}
.site-header.scrolled .brand-v5 .brand-logo-shell{width:138px;height:68px;padding:5px 8px}
.gc-footer-logo{display:block;width:224px;max-width:100%;padding:12px 14px;background:#fff;border:1px solid #ffffff70;border-radius:9px;box-shadow:0 12px 36px #0003}
.gc-footer-logo img{display:block;width:100%;height:auto;object-fit:contain}

.intro-v5{overflow:hidden;background:radial-gradient(ellipse at 50% 30%,#143b60 0,#081d34 45%,#041121 100%)}
.intro-v5 .intro-grid{background-size:90px 90px;opacity:.7}
.intro-halo{position:absolute;width:580px;height:580px;max-width:130vw;max-height:130vw;border:1px solid #ffffff0a;border-radius:50%;background:radial-gradient(circle,#ff6b2118,transparent 62%);box-shadow:0 0 0 70px #ffffff02,0 0 0 140px #ffffff02;animation:gc-halo-in 1.6s ease-out both}
.intro-v5 .intro-content{width:min(470px,calc(100vw - 48px));display:flex;flex-direction:column;align-items:center;gap:0}
.intro-eyebrow{font:700 11px/1.4 Manrope,Arial,sans-serif;letter-spacing:.3em;color:#ffad7c;margin-bottom:25px;animation:gc-brand-in .6s .05s both}
.intro-logo-panel{position:relative;width:100%;padding:24px 28px;background:#fff;border:1px solid #ffffffb3;border-radius:16px;overflow:hidden;box-shadow:0 28px 90px #0007,0 0 70px #ff6b2110;animation:gc-brand-in .8s .12s cubic-bezier(.2,.8,.2,1) both}
.intro-logo-panel img{display:block;width:100%;height:auto;object-fit:contain}
.intro-logo-shine{position:absolute;inset:-45% -80%;background:linear-gradient(105deg,transparent 43%,#ffffff9c 49%,transparent 55%);transform:translateX(-55%);animation:gc-brand-shine 1.2s .65s ease-in-out both;pointer-events:none}
.intro-v5 .intro-tagline{font:500 14px/1.6 'DM Sans',Arial,sans-serif;text-transform:none;letter-spacing:.035em;color:#c3d3e3;margin:26px 0 20px;opacity:1;transform:none;animation:gc-brand-in .6s .45s both}
.intro-loading-track{width:190px;height:3px;background:#ffffff16;border-radius:3px;overflow:hidden;animation:gc-brand-in .4s .4s both}
.intro-loading-track span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#ff6b21,#ffad73);transform:scaleX(0);transform-origin:left;animation:gc-brand-load 2.1s .25s cubic-bezier(.22,.7,.2,1) forwards}
.intro-v5 .intro-bottom{gap:16px;flex-wrap:wrap;line-height:1.6;color:#829fb9}
.intro-v5.done .intro-content{transform:translateY(-8px) scale(1.025);transition:transform .65s ease}
@keyframes gc-brand-in{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes gc-halo-in{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}
@keyframes gc-brand-shine{from{transform:translateX(-55%)}to{transform:translateX(55%)}}
@keyframes gc-brand-load{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:950px){.site-header .brand-v5{min-width:0}.brand-v5 .brand-logo-shell{width:148px;height:74px;padding:5px 8px}.site-header.scrolled .brand-v5 .brand-logo-shell{width:132px;height:64px}}
@media(max-width:760px){.brand-v5 .brand-logo-shell,.site-header.scrolled .brand-v5 .brand-logo-shell{width:118px;height:60px;padding:5px 6px}.intro-v5 .intro-content{width:min(390px,calc(100vw - 40px))}.intro-logo-panel{padding:20px 18px;border-radius:12px}.intro-v5 .intro-tagline{font-size:13px}.intro-v5 .intro-bottom{left:20px;right:20px;bottom:22px;font-size:8px;justify-content:center;text-align:center}.gc-footer-logo{width:210px}}
@media(max-width:390px){.brand-v5 .brand-logo-shell,.site-header.scrolled .brand-v5 .brand-logo-shell{width:110px;height:56px}.intro-v5 .intro-content{width:calc(100vw - 32px)}.intro-eyebrow{font-size:10px;margin-bottom:20px}.intro-v5 .intro-tagline{font-size:12px}.intro-v5 .intro-bottom{font-size:7px}}
@media(prefers-reduced-motion:reduce){.intro-v5 *,.intro-halo{animation:none!important}.brand-v5 .brand-logo-shell{transition:none}.intro-loading-track span{transform:scaleX(1)}}
