/* A brief visual introduction; no authentication or consent behavior. */
:root{--intro-accent:#872e2b}
.brand-intro{--brand-intro-ready:1;position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:#fff;color:#191817;overflow:hidden;opacity:1;transition:opacity .38s ease}
.brand-intro[hidden]{display:none}
.brand-intro:focus{outline:none}
.brand-intro.is-leaving{opacity:0;pointer-events:none}
.intro-skip{position:absolute;top:30px;right:42px;display:flex;gap:17px;align-items:center;min-height:44px;border:0;border-bottom:1px solid #dedbd6;padding:0 2px;background:transparent;color:#68625d;font:11px Arial,Helvetica,sans-serif;letter-spacing:.15px}
.intro-skip:hover{color:var(--intro-accent);border-color:var(--intro-accent)}
.intro-skip:focus-visible{outline:2px solid var(--intro-accent);outline-offset:6px}
.intro-composition{display:flex;flex-direction:column;align-items:center;text-align:center;padding:32px;transform:translateY(-12px);width:100%}
.intro-emblem{position:relative;width:220px;height:220px;margin-bottom:28px}
.intro-emblem img{display:block;width:100%;height:100%;object-fit:contain;opacity:0;transform:translateY(9px) scale(.98)}
.emblem-corner{position:absolute;width:19px;height:19px;border-color:#d9cbc5;border-style:solid;opacity:0}
.top-left{top:13px;left:0;border-width:1px 0 0 1px}.bottom-right{bottom:13px;right:0;border-width:0 1px 1px 0}
.intro-wordmark{opacity:0;transform:translateY(8px)}
.intro-wordmark>p:first-child{font:400 clamp(30px,4vw,43px)/1.15 'Times New Roman',Times,serif;letter-spacing:-1px}
.intro-tagline{margin-top:13px;color:#69645f;font:10px/1.6 Arial,Helvetica,sans-serif;letter-spacing:2px;text-transform:uppercase}
.intro-rule{width:74px;height:1px;margin-top:29px;background:#e6dfda;overflow:hidden;opacity:0}
.intro-rule span{display:block;width:100%;height:100%;background:var(--intro-accent);transform:scaleX(0);transform-origin:left}
.intro-destination{margin-top:20px;color:#872e2b;font:10px/1.5 Arial,Helvetica,sans-serif;letter-spacing:3.7px;text-transform:uppercase;opacity:0}
.is-playing .intro-emblem img{animation:emblem-arrive .75s cubic-bezier(.2,.7,.2,1) .08s both}
.is-playing .emblem-corner{animation:quiet-appear .6s ease .2s both}
.is-playing .intro-wordmark{animation:wordmark-arrive .62s ease .38s both}
.is-playing .intro-rule{animation:quiet-appear .4s ease .58s both}
.is-playing .intro-rule span{animation:rule-arrive .9s cubic-bezier(.3,.2,.2,1) .68s both}
.is-playing .intro-destination{animation:quiet-appear .55s ease .78s both}
@keyframes emblem-arrive{to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes wordmark-arrive{to{opacity:1;transform:translateY(0)}}
@keyframes quiet-appear{to{opacity:1}}
@keyframes rule-arrive{to{transform:scaleX(1)}}
@media(max-width:600px){.intro-skip{top:18px;right:24px}.intro-composition{transform:translateY(-15px);padding:24px}.intro-emblem{width:190px;height:190px;margin-bottom:25px}.intro-wordmark>p:first-child{font-size:33px}.intro-tagline{font-size:8px;letter-spacing:1.5px}.intro-rule{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.brand-intro{transition:none}.brand-intro *{animation:none!important;transition:none!important}.intro-emblem img,.intro-wordmark,.emblem-corner,.intro-rule,.intro-destination{opacity:1;transform:none}.intro-rule span{transform:none}}
