html.cg-intro-pending,html.cg-intro-open{overflow:hidden}
html.cg-intro-pending body>header,html.cg-intro-pending body>main,html.cg-intro-pending body>footer{visibility:hidden}
#cg-intro[hidden],#cg-intro [hidden]{display:none!important}
#cg-intro{position:fixed;inset:0;z-index:50000;background:#080d10;color:#f5efda;isolation:isolate;font-family:Arial,Helvetica,sans-serif;overflow:auto;min-height:100dvh}
#intro-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#080d10;z-index:-2}
.intro-shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#060a0dc7,transparent 23%,transparent 70%,#060a0de8)}
#cg-intro[data-state=ready] .intro-shade,#cg-intro[data-state=error] .intro-shade,#cg-intro[data-state=paused] .intro-shade{background:linear-gradient(180deg,#060a0dc9,#060a0d69 40%,#060a0de0)}
.intro-topline{position:absolute;top:max(24px,env(safe-area-inset-top));left:max(26px,env(safe-area-inset-left));right:max(26px,env(safe-area-inset-right));display:flex;align-items:center;justify-content:space-between;gap:20px;font:700 10px/1.5 monospace;letter-spacing:.13em;color:#c2c7ba}
.intro-topline b{font-weight:800;color:#f1ead5}
#intro-center{position:absolute;left:20px;right:20px;top:50%;transform:translateY(-50%);display:flex;align-items:center;flex-direction:column;text-align:center}
.intro-eyebrow{font:800 11px/1.5 monospace;letter-spacing:.28em;color:#d6b678;margin:0 0 18px}
#intro-heading{font-family:Impact,Haettenschweiler,'Arial Narrow','Arial Black',sans-serif;font-size:clamp(60px,10.5vw,135px);font-weight:900;line-height:.86;letter-spacing:-.035em;margin:0 0 22px;color:#f1eddb;text-shadow:3px 5px 0 #070c0b}
#intro-heading span{display:block}
#intro-center>p:not(.intro-eyebrow){font:700 11px/1.8 monospace;letter-spacing:.12em;color:#c9cdbf;margin:0 0 24px}
#cg-intro button{font:900 12px/1.2 Arial,sans-serif;letter-spacing:.09em;min-height:48px;padding:15px 22px;cursor:pointer;touch-action:manipulation;border:1px solid #d0c8ac;border-radius:0;color:#f4efdf;background:#0d1519d9}
#cg-intro button:focus-visible,.intro-replay:focus-visible{outline:3px solid #edc77f;outline-offset:5px}
#cg-intro #intro-start,#cg-intro #intro-enter{background:#eee7d4;color:#101713;border:1px solid #fff4d7;box-shadow:4px 4px 0 #8c764b;min-width:230px}
#cg-intro button:disabled{opacity:.6;cursor:wait}
.intro-bottomline{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:max(26px,env(safe-area-inset-left));right:max(26px,env(safe-area-inset-right));display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.intro-bottom-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#intro-status{font:700 10px/1.6 monospace;letter-spacing:.07em;color:#c4c9b8;max-width:42ch;margin:0}
#cg-intro[data-state=ended] .intro-bottomline{justify-content:center;bottom:max(35px,env(safe-area-inset-bottom))}
#cg-intro[data-state=ended] #intro-status{flex-basis:100%;text-align:center;max-width:none}
.intro-replay{border:1px solid #777965;color:#ece8d5;background:#191d17;font:800 10px/1.2 Arial,sans-serif;letter-spacing:.04em;min-height:36px;padding:9px 12px;cursor:pointer;white-space:nowrap}
@media(max-width:650px){.intro-topline{left:18px;right:18px;top:max(20px,env(safe-area-inset-top));font-size:8px;gap:10px}.intro-topline span{max-width:19ch;text-align:right}#intro-heading{font-size:clamp(67px,19vw,112px)}#intro-center{top:47%}.intro-eyebrow{font-size:9px}.intro-bottomline{left:18px;right:18px;bottom:max(20px,env(safe-area-inset-bottom));gap:14px}#intro-status{font-size:9px;max-width:30ch}.intro-bottom-actions{gap:8px}#cg-intro button{font-size:10px;min-height:46px;padding:13px 16px}#cg-intro #intro-start,#cg-intro #intro-enter{min-width:205px}.yard-tools{flex-wrap:wrap}.intro-replay{font-size:9px}}
@media(max-height:480px) and (orientation:landscape){#intro-center{top:48%}#intro-heading{font-size:58px;margin-bottom:10px}.intro-eyebrow{margin-bottom:10px;font-size:9px}#intro-center>p:not(.intro-eyebrow){margin-bottom:12px;font-size:9px}.intro-topline{top:12px}.intro-bottomline{bottom:12px}#cg-intro button{padding:10px 15px;min-height:40px}}
@media(prefers-reduced-motion:reduce){#cg-intro *,#cg-intro *::before,#cg-intro *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
