/* A short brand gateway over the restored homepage. */
.brand-intro[hidden]{display:none!important}
.brand-intro{position:fixed;inset:0;z-index:10000;overflow:hidden;background:#fff;color:#16345b;transform:translateY(0);transition:transform 1.15s cubic-bezier(.76,0,.24,1);will-change:transform}
.brand-intro.is-leaving{transform:translateY(-101%);pointer-events:none}
.intro-content{position:relative;max-width:1440px;height:100%;margin:auto;display:flex;flex-direction:column;justify-content:center;padding:8vh 8vw}
.intro-eyebrow{position:absolute;top:8vh;left:8vw;font-size:12px;font-weight:650;letter-spacing:.18em;color:#69819b}
.intro-logo{position:absolute;width:clamp(220px,34vw,490px);height:auto;right:4%;top:50%;transform:translateY(-50%);opacity:0;animation:intro-symbol-in 1s cubic-bezier(.2,.65,.3,1) .05s forwards}
.intro-message{position:relative;z-index:1;font-size:clamp(48px,7.8vw,112px);font-weight:750;line-height:1.2;letter-spacing:-.065em;margin:0;word-break:keep-all}
.intro-message>span{display:block;overflow:hidden}.intro-message>span:last-child{color:#245da6}
.intro-message i{display:block;font-style:normal;transform:translateY(105%);animation:intro-word-in .8s cubic-bezier(.2,.65,.3,1) forwards;animation-delay:calc(.12s + var(--order)*.15s)}
.intro-caption{position:relative;margin-top:32px;font-size:16px;color:#6c8199;opacity:0;animation:intro-caption-in .6s ease .55s forwards}
.intro-skip{position:absolute;right:5vw;bottom:6vh;display:flex;gap:32px;align-items:center;border:1px solid #d7e2ee;border-radius:99px;background:white;color:#244e7f;padding:13px 22px;font-size:14px;cursor:pointer}.intro-skip:hover{background:#f0f6fc}.intro-skip:focus-visible{outline:3px solid #eaaa38;outline-offset:4px}
body.intro-running{overflow:hidden}
@keyframes intro-symbol-in{from{opacity:0;transform:translateY(-45%) scale(.9) rotate(-12deg)}to{opacity:.2;transform:translateY(-50%) scale(1) rotate(0)}}
@keyframes intro-word-in{to{transform:translateY(0)}}
@keyframes intro-caption-in{to{opacity:1}}
.renewal .hero-affiliation{display:inline-flex;align-items:center;gap:9px;font-size:14px;font-weight:600;line-height:1.6;letter-spacing:.01em;color:#245da6;margin:0 0 16px;padding:7px 13px;border:1px solid #c6d9ef;border-radius:999px;background:#ffffffa8}.hero-affiliation:before{content:"";width:5px;height:5px;border-radius:50%;background:#eea825}

@media(max-width:600px){.intro-content{padding:30px 24px;justify-content:center}.intro-eyebrow{left:24px;top:8vh;font-size:10px}.intro-logo{width:230px;right:-25px;top:34%}.intro-message{font-size:clamp(39px,10vw,60px);line-height:1.3}.intro-caption{font-size:14px;margin-top:24px}.intro-skip{right:24px;bottom:6vh}.renewal .hero-affiliation{font-size:12px;margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){.brand-intro{display:none!important;transition:none}.intro-logo,.intro-message i,.intro-caption{animation:none}body.intro-running{overflow:auto}}
