/* Use the supplied logo as a precisely clipped image; Facebook text stays outside the crop. */
.logo-mark{width:52px;height:52px;display:inline-block;flex:0 0 52px;position:relative;overflow:hidden;border-radius:50%;background:#fff}
.logo-mark img{position:absolute!important;width:419.231%!important;height:119.231%!important;max-width:none!important;left:-21.154%;top:-13.462%;filter:none!important;object-fit:fill!important}
.brand{display:flex;align-items:center;gap:13px;letter-spacing:0;font-style:normal}.brand .brand-copy{color:#f2f6fc;font:600 29px/1 'Barlow',Arial,sans-serif}.brand .brand-copy small{font-size:9px;letter-spacing:1.4px}.footer .logo-mark{width:42px;height:42px;flex-basis:42px}.footer .brand-copy{font-size:24px}
.hero-still{align-self:stretch;position:relative;min-width:0;overflow:hidden;min-height:400px}.hero-still>img{width:100%;height:100%;display:block;object-fit:cover;filter:brightness(.55)}.hero-still>span{position:absolute;bottom:35px;left:0;width:100%;text-align:center;color:#d4e9fb;font-size:12px;letter-spacing:2px;text-shadow:0 2px 8px #000}
body.intro-active{overflow:hidden}#intro-screen{position:fixed;inset:0;z-index:1000;overflow:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(#050e1ce8,#050e1cf2),url('assets/budiky.jpg') center/cover;color:#edf5ff;min-height:320px}
.intro-top{position:absolute;left:0;top:0;width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 4vw;z-index:2}.intro-brand{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:600}.intro-brand .logo-mark{width:44px;height:44px;flex-basis:44px}#sound-toggle{background:#09192dd9;border:1px solid #567088;color:#edf5ff;border-radius:5px;padding:11px 16px;font-size:14px}
#intro-screen .photo{width:min(78vh,760px,100%);height:auto;aspect-ratio:1;flex-shrink:0;align-self:center;margin:70px 0 40px}#intro-screen .photo>img{width:100%;height:100%;object-fit:contain;filter:brightness(.5)}#intro-screen .running>img{filter:brightness(1.1)}#intro-screen .done>img{filter:brightness(.22) blur(2px)}#intro-screen #start{width:86px;height:86px}#intro-screen .ignition-controls{bottom:4%}#intro-screen .logo-reveal{display:flex;flex-direction:column;align-items:center;gap:22px;font-style:normal;letter-spacing:0}#intro-screen .logo-reveal .logo-mark{width:136px;height:136px;flex-basis:136px;box-shadow:0 0 60px #4aabff50}#intro-screen .logo-name{font:600 45px/1 Barlow,Arial,sans-serif;color:#fff}#intro-screen .enter-status{color:#a7bed3;font-size:13px}#intro-screen #ignition-end>p{margin:16px 0 0}.intro-bottom{position:absolute;bottom:16px;text-align:center;font-size:11px;letter-spacing:2px;color:#b2c6db;pointer-events:none}
@media(max-width:760px){.hero-still{min-height:0;aspect-ratio:1}.intro-top{padding:18px}.intro-brand{font-size:20px}.intro-brand .logo-mark{width:37px;height:37px;flex-basis:37px}#sound-toggle{font-size:12px;padding:10px 12px}#intro-screen .photo{width:100%;max-width:620px;margin:85px 0 45px}.brand .brand-copy{font-size:24px}.brand .logo-mark{width:44px;height:44px;flex-basis:44px}#intro-screen .logo-reveal .logo-mark{width:105px;height:105px;flex-basis:105px}}
@media(max-height:550px) and (min-width:761px){#intro-screen .photo{width:72vh;margin:65px 0 25px}#intro-screen #start{width:60px;height:60px}#intro-screen #start strong{font-size:17px}#intro-screen .logo-reveal .logo-mark{width:70px;height:70px;flex-basis:70px}#intro-screen .logo-name{font-size:28px}}

/* Full viewport intro; the website itself contains no gauge imagery. */
#intro-screen{overflow:hidden;min-height:0;background:#050e1c}
#intro-screen .photo{position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;aspect-ratio:auto}
#intro-screen .photo>img{object-fit:cover;object-position:center}
#intro-screen .photo canvas{width:100%;height:100%}
#intro-screen .intro-top{background:linear-gradient(#06111ddd,transparent);padding-bottom:30px}
#intro-screen .ignition-controls{bottom:8%;z-index:1}
#intro-screen .intro-bottom{bottom:20px;text-shadow:0 2px 8px #000}
.hero{grid-template-columns:1fr;background:linear-gradient(115deg,#08131f,#112940)}
.hero-copy{padding:75px 5vw 40px;max-width:1100px;width:100%}
.hero h1{font-size:clamp(62px,8vw,115px)}
.hero-bottom{max-width:780px}
@media(max-width:760px){.hero-copy{padding:45px 22px 35px}.hero h1{font-size:clamp(58px,14vw,90px)}}
@media(max-aspect-ratio:1/1){#intro-screen .photo{background:linear-gradient(#06111cd9,#06111ce8),url('assets/budiky.jpg') center/cover}#intro-screen .photo>img{object-fit:contain}#intro-screen .ignition-controls{bottom:9%}}

/* Approved still photograph behind the main heading only. */
.hero{background:linear-gradient(90deg,rgba(4,12,23,.88),rgba(4,12,23,.58)),url('assets/budiky-hero.jpg') center 48%/cover no-repeat}

/* Approved GT40 intro controls. */
.intro-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px}
#skip-intro{background:#09192dd9;border:1px solid #567088;color:#edf5ff;border-radius:5px;padding:11px 16px;font-size:14px;cursor:pointer;min-height:44px}
@media(max-width:760px){#skip-intro{font-size:12px;padding:10px 12px}}

