*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow:hidden;background-color:#00152a}.intro{position:fixed;inset:0;width:100%;height:100dvh;overflow:hidden}.intro__video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}.intro__overlay{position:absolute;inset:0;z-index:1;background-color:#00152acc;pointer-events:none;transition:background-color 2.4s ease}.intro.is-overlay-deepened .intro__overlay{background-color:#00152af2}.intro__gate{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;padding:2rem;pointer-events:none}.intro__unlock-btn{appearance:none;display:flex;flex-direction:column;align-items:center;border:0;background:transparent;padding:0;cursor:pointer;text-align:center;pointer-events:auto}.intro__unlock-btn:focus-visible{outline:2px solid rgba(253,179,4,.85);outline-offset:.5rem}.intro__hint{margin:1.25rem 0 0;font-size:.7rem;font-weight:300;letter-spacing:.18em;text-transform:uppercase;color:#fdb304}.intro__unlock-btn .intro__logo{opacity:0;transform:translateY(28px)}.intro__unlock-btn .intro__hint{opacity:0;transform:translateY(12px)}.intro.is-gate-visible .intro__unlock-btn .intro__logo{opacity:1;transform:translateY(0);transition:opacity 1.8s ease-out .6s,transform 1.8s ease-out .6s}.intro.is-gate-visible .intro__unlock-btn .intro__hint{opacity:1;transform:translateY(0);transition:opacity 1.4s ease-out 2.4s,transform 1.4s ease-out 2.4s}.intro.is-gate-hidden .intro__unlock-btn{pointer-events:none}.intro.is-gate-hidden .intro__unlock-btn .intro__logo{opacity:0;transform:translateY(-16px);transition:opacity 1.2s ease-in,transform 1.2s ease-in}.intro.is-gate-hidden .intro__unlock-btn .intro__hint{opacity:0;transform:translateY(-8px);transition:opacity 1.2s ease-in,transform 1.2s ease-in}.intro.is-gate-hidden .intro__gate{pointer-events:none}.intro__logo{display:block;width:min(72vw,640px);max-width:100%;height:auto;pointer-events:none}.intro__nav{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;padding:7rem 1.25rem 5.5rem;pointer-events:none}.intro__nav.is-visible{pointer-events:auto}.intro__nav-grid{width:100%;max-width:64rem;margin-inline:auto}.intro__nav-col{display:flex;justify-content:center}.intro__nav-link{display:flex;flex-direction:column;align-items:center;text-decoration:none}.intro__nav-link.is-animated{transition:transform .3s ease}.intro__nav-link.is-animated:hover,.intro__nav-link.is-animated:focus-visible{transform:translateY(-4px)}.intro__nav-link.is-active .intro__nav-circle{border-color:#fdb304;box-shadow:0 0 0 5px #fdb30457,0 0 24px #fdb30473}.intro__nav-link:focus-visible{outline:2px solid #fdb304;outline-offset:.35rem;border-radius:50%}.intro__nav-circle{position:relative;display:block;width:min(13rem,72vw);aspect-ratio:1;border-radius:50%;border:6px solid #fdb304;overflow:hidden;background-color:#0c4475;transition:border-color .3s ease,box-shadow .3s ease}.intro__nav-circle:after{content:"";position:absolute;inset:auto 0 0;z-index:1;height:42%;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.65) 100%);pointer-events:none}.intro__nav-link:hover .intro__nav-circle,.intro__nav-link:focus-visible .intro__nav-circle{border-color:#fdb304;box-shadow:0 0 0 4px #fdb30440}.intro__nav-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.intro__nav-label{position:absolute;bottom:calc(16% + 10px);left:0;right:0;z-index:2;padding:0 .65rem;font-size:clamp(1.2rem,4vw,1.6rem);font-weight:600;letter-spacing:.04em;line-height:1.1;color:#fff;text-align:center;-webkit-text-stroke:1.5px #000;paint-order:stroke fill;text-shadow:0 0 10px rgba(0,0,0,.95),0 2px 6px rgba(0,0,0,.85),1px 1px 0 #000,-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000}@media(max-width:991.98px){html:has(.intro.is-nav-scrollable),body:has(.intro.is-nav-scrollable){overflow-x:hidden;overflow-y:auto}.intro.is-nav-scrollable{position:relative;height:auto;min-height:100dvh;overflow:visible}.intro.is-nav-scrollable .intro__video,.intro.is-nav-scrollable .intro__overlay,.intro.is-nav-scrollable .intro__gate{position:fixed}.intro.is-nav-scrollable .intro__nav{position:relative;inset:auto;min-height:auto;align-items:flex-start;justify-content:flex-start;padding:6.5rem 1.25rem 6rem}.intro.is-nav-scrollable .intro__nav-grid{padding-bottom:2rem}}@media(min-width:992px){.intro__nav{padding-block:8rem 6rem}.intro__nav-circle{width:min(14rem,17vw)}.intro__nav-label{font-size:clamp(1.15rem,1.6vw,1.5rem)}}
