/* Total HMR: a continuous, borderless arrival in the site's own palette. */
.brand-intro{position:fixed;inset:0;z-index:200;isolation:isolate;color:var(--ink);font-family:Jakarta,system-ui,sans-serif;overscroll-behavior:contain}
.brand-intro-backdrop{position:absolute;inset:0;background:#fff;z-index:-1;will-change:transform}
.brand-intro-content{position:absolute;inset:0;min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(28px,4vh,40px);padding:32px 20px;text-align:center;pointer-events:none}
.brand-intro-lockup{position:relative;display:flex;align-items:center;gap:clamp(15px,2vw,24px);width:max-content}
.brand-intro-logo{width:clamp(76px,9vw,112px);height:clamp(76px,9vw,112px);flex:none;transform-origin:center;will-change:transform}
.brand-intro svg{display:block;width:100%;height:100%;stroke:none;stroke-width:0;fill:var(--blue);overflow:visible}
.brand-intro .intro-draw{fill:none;stroke:#fff;stroke-width:68px;stroke-linejoin:round;stroke-linecap:round}
.brand-intro-wordmark{font-size:clamp(40px,5.25vw,66px);line-height:1.55;letter-spacing:-.035em;font-weight:750;white-space:nowrap;transform-origin:center;overflow:hidden;will-change:transform}
.brand-intro-wordmark-inner{display:block;will-change:transform}
.brand-intro-copy{position:static;width:max-content;max-width:100%;text-align:center;margin:0;font-size:clamp(28px,3.4vw,44px);font-weight:500;line-height:1.24;letter-spacing:-.035em}
.brand-intro-copy>span{display:block;overflow:hidden;padding-bottom:.04em}
.brand-intro-copy b{display:block;font-weight:inherit;will-change:transform}
.brand-intro-copy>span:last-child{color:var(--blue)}
.brand-intro-controls{position:absolute;right:clamp(20px,4vw,52px);bottom:max(28px,env(safe-area-inset-bottom));display:flex;gap:8px;align-items:center}
.brand-intro-controls button{background:transparent;color:var(--soft);font-size:12px;font-weight:550;padding:10px 14px;min-height:44px;border-radius:6px;transition:color 160ms ease,background-color 160ms ease}
.brand-intro-controls button:hover{color:var(--blue);background:var(--pale)}
.brand-intro-controls button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.brand-intro-controls button:active{transform:none}
.brand-intro-controls button[aria-pressed=true]{color:var(--blue)}
html.brand-intro-active{overflow:hidden;scrollbar-gutter:stable}
html.brand-intro-active .site-header .brand{visibility:hidden}
.site-header .brand img,.site-footer .brand img{object-fit:contain}
.site-header .brand{letter-spacing:-.035em}
/* Programmatic arrival and skip-to-content target, not an interactive control. */
#main:focus{outline:none}
.brand-replay{display:inline-flex;align-items:center;gap:7px;padding:9px 0;min-height:44px;color:var(--soft);background:transparent;font-size:11px;line-height:1.4}
.brand-replay svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5}
.brand-replay:hover{color:var(--blue)}
.hero-introduction .brand-replay{margin-top:12px}
.site-footer .brand-replay{padding:8px}
/* Explicit review URL only. These controls are not created on the normal page. */
.brand-intro-review{position:absolute;left:24px;bottom:24px;z-index:2;width:min(420px,calc(100vw - 48px));padding:12px 15px;background:rgba(255,255,255,.96);border:1px solid #e4e9f1;border-radius:12px;font-size:11px;color:var(--soft)}
.brand-intro-review label{display:flex;justify-content:space-between;align-items:center;gap:16px}
.brand-intro-review output{font-variant-numeric:tabular-nums}
.brand-intro-review input{display:block;width:100%;height:30px;accent-color:var(--blue)}
.brand-intro-review>div{display:flex;gap:5px;flex-wrap:wrap}
.brand-intro-review button{background:#f3f6fb;color:var(--ink);font-size:10px;padding:8px 9px;min-height:32px;border-radius:5px}
@media(max-width:650px){.brand-intro-lockup{gap:14px}.brand-intro-logo{width:72px;height:72px}.brand-intro-wordmark{font-size:clamp(30px,8.9vw,42px)}.brand-intro-copy{font-size:clamp(23px,6.4vw,32px)}.brand-intro-controls{right:16px;bottom:24px}.hero-introduction .brand-replay{margin-top:6px}.brand-intro-review{left:16px;bottom:86px;width:calc(100vw - 32px)}}
@media(max-height:500px){.brand-intro-content{gap:20px}.brand-intro-copy{font-size:25px}.brand-intro-logo{width:72px;height:72px}.brand-intro-wordmark{font-size:40px}.brand-intro-controls{bottom:12px}}
@media(prefers-reduced-motion:reduce){.brand-intro{display:none!important}.brand-replay{display:none}}
html.motion-reduced .brand-replay{display:none}
