/* The actual office and unaltered brand form one short entrance. */
.brand-opening{display:none}
.frp-opening .brand-opening{display:grid;place-items:center;position:fixed;inset:0;z-index:1000;background:var(--frp-primary);color:var(--frp-white);pointer-events:none;overflow:hidden;isolation:isolate;animation:frp-curtain 2.35s cubic-bezier(.76,0,.24,1) both}
.brand-opening-scene,.brand-opening-shade{position:absolute;inset:0;z-index:-2}
.brand-opening-scene{animation:frp-scene 2.35s cubic-bezier(.22,1,.36,1) both}
.brand-opening-scene img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 55%}
.brand-opening-shade{z-index:-1;background:linear-gradient(110deg,#0E2A47F5 0%,#0E2A47DB 45%,#0E2A479E 100%)}
.brand-opening:after{content:'';position:absolute;inset:28px;border:1px solid #F5F3EE20;pointer-events:none;animation:frp-frame 1s .15s both}
.brand-opening-lockup{width:min(440px,65vw);position:relative;animation:frp-lockup-exit .5s 1.5s ease both}
.brand-opening svg{display:block;width:100%;height:auto;overflow:visible;animation:frp-logo-reveal .95s .1s cubic-bezier(.22,1,.36,1) both}
.brand-opening-rule{height:1px;width:72px;margin:36px auto 0;background:var(--frp-sand);transform-origin:left;animation:frp-rule 1s .3s cubic-bezier(.22,1,.36,1) both}
.brand-opening-values{position:absolute;bottom:61px;display:flex;justify-content:center;align-items:center;gap:24px;color:var(--frp-background);font-size:10px;font-weight:500;line-height:1.6;letter-spacing:2px;text-transform:uppercase;animation:frp-values 1.9s both}
.brand-opening-values span+span:before{content:'';display:inline-block;vertical-align:middle;width:3px;height:3px;border-radius:50%;background:var(--frp-blue-light);margin-right:24px}
.frp-opening .hero-copy>.overline{animation:frp-enter .65s 1.6s both}
.frp-opening .hero-copy>h1{animation:frp-enter .75s 1.7s both}
.frp-opening .hero-copy>p{animation:frp-enter .75s 1.8s both}
.frp-opening .hero-actions{animation:frp-enter .65s 1.9s both}
.frp-opening .hero-photo img{animation:frp-opening-photo 1.7s 1s cubic-bezier(.22,1,.36,1) both}
.frp-opening-finished .hero-copy>.overline,.frp-opening-finished .hero-copy>h1,.frp-opening-finished .hero-copy>p,.frp-opening-finished .hero-actions,.frp-opening-finished .hero-photo img{animation:none}
@keyframes frp-curtain{0%,65%{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);visibility:visible}99%{visibility:visible}100%{clip-path:polygon(0 0,0 0,-12% 100%,0 100%);visibility:hidden}}
@keyframes frp-scene{from{opacity:0;transform:scale(1.07)}45%{opacity:1}to{opacity:1;transform:scale(1)}}
@keyframes frp-logo-reveal{from{clip-path:inset(0 0 100% 0);opacity:0;transform:translateY(14px)}45%{opacity:1}to{clip-path:inset(0 0 0 0);opacity:1;transform:translateY(0)}}
@keyframes frp-rule{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:.8}}
@keyframes frp-frame{from{opacity:0}to{opacity:1}}
@keyframes frp-lockup-exit{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-25px)}}
@keyframes frp-values{0%,20%{opacity:0;transform:translateY(7px)}48%,78%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(0)}}
@keyframes frp-opening-photo{from{transform:scale(1.035)}to{transform:scale(1)}}
@media(max-width:760px){.brand-opening-lockup{width:min(340px,74vw)}.brand-opening:after{inset:16px}.brand-opening-values{bottom:44px;gap:13px;font-size:8px;letter-spacing:1.1px}.brand-opening-values span+span:before{margin-right:13px;width:2px;height:2px}.brand-opening-rule{width:52px;margin-top:27px}.brand-opening-scene img{object-position:62% center}.brand-opening-shade{background:linear-gradient(180deg,#0E2A47EE 0%,#0E2A47CF 58%,#0E2A47EB 100%)}}
@media(prefers-reduced-motion:reduce){.frp-opening .brand-opening{display:none}.frp-opening .hero-copy>.overline,.frp-opening .hero-copy>h1,.frp-opening .hero-copy>p,.frp-opening .hero-actions,.frp-opening .hero-photo img{animation:none}}
