:root{--ink:#050605;--text:#f2f1e9;--muted:#bcbeb3;--gold:#e3c85e;--gold-soft:#c9b65d;--line:#ffffff22;--header:82px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--header)}
body{margin:0;background:var(--ink);color:var(--text);font-family:'Golos Text',Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
button{font:inherit;color:inherit}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:15px;top:-100px;z-index:400;background:#fff;color:#000;padding:12px}
.skip:focus{top:15px}

/* header and footer, matching the main page */
.site-header{position:fixed;top:0;left:0;right:0;z-index:40;height:var(--header);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 4%;background:#090b09e6;border-bottom:1px solid var(--line);color:#f0f0e7}
.brand{display:flex;gap:10px;align-items:center;font-weight:900;line-height:.93;font-size:19px;letter-spacing:-.7px}
.brand img{width:43px;height:46px;object-fit:contain}
.site-header nav{display:flex;gap:35px;font-size:14px;font-weight:500}
.site-header nav a:hover{text-decoration:underline;text-underline-offset:6px}
.site-header nav a[aria-current]{color:var(--gold)}
.header-phone{font-size:16px;font-weight:600;white-space:nowrap}
.header-phone span{margin-left:10px}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:40px 4%;border-top:1px solid var(--line);background:#090b09;color:#bfc1b7;font-size:14px}
.site-footer .brand{color:#f0f0e7}

/* floating contact egg, matching the other pages */
.egg-contact{position:fixed;right:max(24px,4vw,env(safe-area-inset-right));bottom:calc(72px + env(safe-area-inset-bottom));z-index:110;color:#f7f4e8;transition:bottom .35s ease}
.egg-contact.above-footer{bottom:var(--footer-clearance,200px)}
.egg-contact-toggle{position:relative;display:flex;align-items:center;justify-content:center;width:76px;height:110px;border:0;background:transparent;color:inherit;cursor:pointer;padding:0;filter:drop-shadow(0 8px 12px #0008)}
.egg-contact-toggle>img{width:46px;height:auto}
.egg-contact-toggle canvas{position:absolute;top:0;left:0;pointer-events:none}
.egg-contact-toggle.has-3d>img{visibility:hidden}
.egg-contact-caption{position:absolute;bottom:0;left:50%;transform:translateX(-50%);font-size:12px;letter-spacing:.03em}
.egg-contact-panel{position:absolute;right:0;bottom:120px;width:min(310px,calc(100vw - 32px));padding:20px;background:#10130ff5;border:1px solid #d6bf6659;border-radius:20px;box-shadow:0 20px 60px #0009;max-height:calc(100svh - 230px);overflow:auto}
.egg-contact-heading{display:block;color:#cdb86a;font-size:14px;margin:0 0 12px}
.egg-contact-panel a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 4px;border-top:1px solid #ffffff1a;font-size:16px;line-height:1.4}
.egg-contact-panel a:first-of-type{align-items:flex-start;flex-direction:column;gap:4px}
.egg-contact-panel a small{font-size:14px;color:#bfc1b7}
.egg-contact-panel a:hover{color:#e3c85e}
.egg-contact-panel[hidden]{display:none}

/* page transition (page-transition.js) */
@view-transition{navigation:auto}
.page-tear{position:fixed;inset:0;z-index:300;cursor:progress}
.page-tear[hidden]{display:none}
.page-tear-depth,.page-tear-next{position:absolute;inset:0;width:100%;height:100%;border:0;clip-path:circle(0);pointer-events:none}
.page-tear-depth{background:#000}
.page-tear-next{background:#050605}
.page-tear-paper,.page-tear-egg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}

/* ---------- about-us: launch pad ---------- */
html{scroll-behavior:auto}
html.is-pad,html.is-launching{overflow:hidden}
.kicker{display:block;color:var(--gold-soft);font-size:12px;letter-spacing:.19em;line-height:1.6}
.scene{position:fixed;inset:0;width:100%;height:100%;display:block;z-index:0;background:#050605}
.flash{position:fixed;inset:0;z-index:30;pointer-events:none;opacity:0;background:radial-gradient(circle at 50% 50%,#fffdf4 0,#ffe7a3 28%,#e3a93a 55%,#050605 100%)}
main{position:relative;z-index:1}

.pad{position:fixed;inset:0;z-index:5;pointer-events:none;transition:opacity .45s ease,visibility .45s}
.pad-title{position:absolute;left:4%;top:50%;transform:translateY(-50%);max-width:34%}
.pad-title h1{margin:14px 0 0;font-size:clamp(44px,5.4vw,104px);font-weight:400;line-height:1;letter-spacing:.02em;color:#f2f1e9}
.pad-hint{position:absolute;right:4%;top:50%;transform:translateY(-50%);margin:0;max-width:30%;text-align:left;font-size:clamp(18px,1.9vw,34px);font-weight:500;line-height:1.2;letter-spacing:.05em;text-transform:uppercase;color:#eee9da}
.pad-egg{display:none;position:absolute;left:50%;top:38%;width:clamp(120px,14vw,220px);transform:translate(-50%,-50%)}
.egg-hit{position:absolute;left:50%;top:38%;width:clamp(150px,19vh,240px);height:clamp(200px,31vh,330px);transform:translate(-50%,-50%);border:0;border-radius:50%;background:transparent;color:transparent;font-size:1px;cursor:pointer;pointer-events:auto}
.egg-hit:focus-visible{outline:2px solid var(--gold);outline-offset:6px}
html:not(.is-pad) .pad{opacity:0;visibility:hidden}
html:not(.is-pad) .egg-hit{pointer-events:none}

/* flip clock */
.flip-clock{--digit:clamp(64px,9vh,112px);position:absolute;left:50%;top:67%;transform:translateX(-50%);display:flex;align-items:center;gap:calc(var(--digit)*.1);padding:calc(var(--digit)*.12);background:linear-gradient(#1c1c1c,#0e0e0e);border:3px solid #6f6f6f;border-radius:calc(var(--digit)*.16);box-shadow:0 0 60px #ffffff14,inset 0 2px 0 #ffffff1a}
.flip{position:relative;width:calc(var(--digit)*.9);height:calc(var(--digit)*1.26);font-size:var(--digit);font-weight:800;line-height:1;color:#0b0b0b;perspective:calc(var(--digit)*4)}
.flip>span{position:absolute;left:0;right:0;height:50%;overflow:hidden;background:linear-gradient(#fbfbf8,#e6e6e1);backface-visibility:hidden}
.flip>span>b{display:block;height:200%;display:flex;align-items:center;justify-content:center;font-weight:800;letter-spacing:-.04em}
.flip .top,.flip .flap-top{top:0;border-radius:calc(var(--digit)*.08) calc(var(--digit)*.08) 0 0;transform-origin:50% 100%}
.flip .bottom,.flip .flap-bottom{bottom:0;border-radius:0 0 calc(var(--digit)*.08) calc(var(--digit)*.08);transform-origin:50% 0;background:linear-gradient(#e2e2dc,#f3f3ef)}
.flip .bottom>b,.flip .flap-bottom>b{transform:translateY(-50%)}
.flip .flap-top,.flip .flap-bottom{z-index:2}
.flip .flap-bottom{transform:rotateX(90deg)}
.flip::after{content:'';position:absolute;z-index:3;left:-6%;right:-6%;top:50%;height:3px;margin-top:-1.5px;background:#2b2b2b;box-shadow:0 1px 0 #ffffff30}
.flip::before{content:'';position:absolute;z-index:4;left:-9%;right:-9%;top:50%;height:calc(var(--digit)*.14);transform:translateY(-50%);background:linear-gradient(90deg,#7a7a7a 0 5%,transparent 5% 95%,#7a7a7a 95%);border-radius:3px}
.flip-label{display:flex;flex-direction:column;justify-content:center;margin-left:calc(var(--digit)*.12);padding-right:calc(var(--digit)*.12);text-transform:uppercase;color:#f7f6f0;line-height:1.05}
.flip-label b{font-size:calc(var(--digit)*.5);font-weight:700;letter-spacing:.01em}
.flip-label span{white-space:nowrap;font-size:calc(var(--digit)*.36);font-weight:600;letter-spacing:.02em;margin-top:calc(var(--digit)*.06)}

/* ---------- about-us: flight through the years ---------- */
html.is-flying{overflow:hidden}
.flight{display:none}
html.is-flying .flight{display:block;position:fixed;inset:0;z-index:6;pointer-events:none}
html.is-flying .scene{cursor:none}
html.is-flying body{cursor:none}
html.is-flying a,html.is-flying button{cursor:pointer}
.chapters{position:absolute;inset:0}
.chapter{position:absolute;top:50%;left:5%;width:min(420px,36%);padding:26px 28px;background:linear-gradient(135deg,#0a0b0ad9,#050605b3);border:1px solid #e3c85e2e;border-radius:18px;opacity:0;visibility:hidden;transform:translate(-30px,-50%);transition:opacity .5s ease,transform .6s cubic-bezier(.2,.7,.2,1),visibility .5s}
.chapter:nth-child(even){left:auto;right:5%;transform:translate(30px,-50%)}
.chapter.is-active{opacity:1;visibility:visible;transform:translate(0,-50%)}
.chapter.is-active .chapter-actions{pointer-events:auto}
.chapter h2{margin:10px 0 12px;font-size:clamp(26px,2.4vw,40px);font-weight:400;line-height:1.1;letter-spacing:-.035em}
.chapter p{margin:0;font-size:16px;line-height:1.65;color:var(--muted)}
.chapter-year{display:block;font-size:clamp(60px,6.4vw,110px);font-weight:300;line-height:.95;letter-spacing:-.05em;color:var(--gold)}
.chapter-year em{font-style:normal;font-size:.55em}
.chapter-final h2{margin-top:6px}
.chapter-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:22px}
.pill{display:inline-flex;align-items:center;gap:18px;min-height:48px;padding:12px 22px;border:1px solid #c7b56a99;border-radius:40px;background:none;color:#f0ead0;font-size:14px;cursor:pointer;transition:background .2s}
.pill:hover{background:#d4bc4c20}
.more-link{display:inline-flex;align-items:baseline;gap:8px;padding:4px 0;color:var(--gold);font-size:15px;background:linear-gradient(#e3c85e66,#e3c85e66) 0 100%/100% 1px no-repeat}
.more-link>span{transition:transform .2s}
.more-link:hover>span{transform:translateX(4px)}

/* game HUD */
.hud{position:absolute;top:calc(var(--header) + 18px);right:4%;display:flex;gap:26px;align-items:flex-end}
.hud-cell{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.hud-cell span{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#a9aa9f}
.hud-cell b{font-size:clamp(28px,2.6vw,42px);font-weight:300;line-height:1;letter-spacing:-.03em;color:#f2f1e9;font-variant-numeric:tabular-nums}
.hud-eggs b{color:var(--gold)}
.hud-combo{position:absolute;right:0;top:100%;margin-top:8px;font-size:24px;font-weight:600;color:var(--gold);opacity:0;text-shadow:0 2px 12px #000}
.score-pop{position:fixed;z-index:8;pointer-events:none;font-size:22px;font-weight:600;color:#ffe08a;text-shadow:0 2px 12px #000;white-space:nowrap}
.flight-cue{position:absolute;left:50%;bottom:34px;margin:0;transform:translateX(-50%);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#c9c5b6;white-space:nowrap;animation:cue-out .8s 6s forwards}
@keyframes cue-out{to{opacity:0;visibility:hidden}}
.skip-game{position:absolute;left:4%;bottom:26px;pointer-events:auto;padding:8px 0;border:0;border-bottom:1px solid #ffffff30;background:none;color:#a9aa9f;font-size:12px;letter-spacing:.06em}
.skip-game:hover{color:var(--gold)}
.flight-progress{position:absolute;left:4%;right:4%;bottom:14px;height:1px;background:#ffffff1c}
.flight-progress i{display:block;height:100%;transform-origin:0 50%;transform:scaleX(var(--progress,0));background:var(--gold)}
html.is-finished .flight-cue,html.is-finished .skip-game,html.is-finished .flight-progress{display:none}

/* crosshair replaces the pointer while flying */
.crosshair{position:fixed;left:-100px;top:-100px;z-index:9;width:46px;height:46px;transform:translate(-50%,-50%);pointer-events:none;opacity:0;border:1.5px solid #ffe08acc;border-radius:50%;box-shadow:0 0 12px #ffb34755,inset 0 0 8px #ffb34733}
.crosshair::before,.crosshair::after{content:'';position:absolute;left:50%;top:50%;background:#ffe08a;transform:translate(-50%,-50%)}
.crosshair::before{width:64px;height:1.5px;background:linear-gradient(90deg,#ffe08a 0 30%,transparent 30% 70%,#ffe08a 70%)}
.crosshair::after{width:1.5px;height:64px;background:linear-gradient(#ffe08a 0 30%,transparent 30% 70%,#ffe08a 70%)}
.crosshair i{position:absolute;left:50%;top:50%;width:4px;height:4px;margin:-2px 0 0 -2px;border-radius:50%;background:#fff3c4}
html.is-flying:not(.is-finished) .crosshair.is-visible{opacity:1}
.crosshair.is-touch{transition:opacity .5s .25s}
html.is-flying .crosshair.is-touch.is-visible{animation:touch-aim .7s forwards}
@keyframes touch-aim{0%,40%{opacity:1}100%{opacity:0}}

/* results and records */
.results{position:absolute;top:50%;right:5%;width:min(400px,38%);transform:translateY(-50%);padding:28px;background:linear-gradient(135deg,#0c0d0cf2,#050605e6);border:1px solid #e3c85e59;border-radius:20px;pointer-events:auto;cursor:auto;animation:results-in .6s cubic-bezier(.2,.7,.2,1)}
@keyframes results-in{from{opacity:0;transform:translate(30px,-50%)}}
.results[hidden]{display:none}
.results h2{margin:10px 0 6px;font-size:clamp(26px,2.3vw,36px);font-weight:400;letter-spacing:-.03em}
.results h2 b{color:var(--gold);font-weight:500}
.results p{margin:0;color:var(--muted);font-size:15px}
.results p b{color:#f2f1e9;font-weight:500}
.results h3{margin:24px 0 10px;font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft)}
.records{list-style:none;margin:0 0 22px;padding:0;border-top:1px solid var(--line)}
.records li{display:flex;align-items:baseline;gap:16px;padding:11px 2px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
.records li span{width:18px;color:#8f9185;font-size:14px}
.records li b{font-size:22px;font-weight:400}
.records li i{font-style:normal;font-size:13px;color:var(--muted)}
.records li em{margin-left:auto;font-style:normal;font-size:12px;color:var(--gold)}
.records li.is-you b{color:var(--gold)}
.records-wait{color:#8f9185;font-size:14px}
html.is-finished .chapter-final{left:5%;right:auto}

.site-footer{position:relative;z-index:2}
html:not(.is-static) .site-footer{display:none}
html:not(.is-static) .egg-contact{opacity:0;visibility:hidden}
html.is-finished .egg-contact{opacity:1;visibility:visible}
.egg-contact{transition:opacity .4s,visibility .4s,bottom .35s ease}

/* no WebGL, reduced motion, "read without the game": a plain readable page */
html.is-static{overflow:auto}
html.is-static body{cursor:auto}
html.is-static .scene,html.is-static .flash,html.is-static .flip-clock,html.is-static .pad-hint,html.is-static .egg-hit,html.is-static .hud,html.is-static .flight-cue,html.is-static .skip-game,html.is-static .flight-progress,html.is-static .results,html.is-static .crosshair{display:none}
html.is-static .pad{position:relative;inset:auto;padding:130px 6% 30px;opacity:1;visibility:visible}
html.is-static .pad-title{position:static;transform:none;max-width:none}
html.is-static .pad-egg{display:none}
html.is-static .flight{display:block;position:static;padding:10px 6% 90px}
html.is-static .chapters{position:static;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
html.is-static .chapter,html.is-static .chapter:nth-child(even){position:static;width:auto;opacity:1;visibility:visible;transform:none}
html.is-static .chapter-actions{pointer-events:auto}

@media(max-width:1000px){.site-header nav{gap:18px}.header-phone{display:none}}
@media(max-width:700px){
 :root{--header:64px}
 .site-header{padding:0 5%}
 .brand{font-size:13px;gap:6px}
 .brand img{width:26px;height:auto}
 .site-header nav{gap:14px;font-size:12px}
 .site-header nav a:first-child{display:none}
 .site-footer{flex-wrap:wrap;padding:30px 5% 120px}
 .egg-contact{right:max(15px,env(safe-area-inset-right))}
 .pad-title{left:6%;right:6%;top:calc(var(--header) + 4svh);transform:none;max-width:none;text-align:center}
 .pad-title h1{font-size:clamp(38px,11vw,56px);margin-top:8px}
 .pad-egg,.egg-hit{top:44%}
 .flip-clock{--digit:clamp(44px,7.4vh,64px);top:auto;bottom:calc(15svh + 10px)}
 .pad-hint{left:6%;right:6%;top:auto;bottom:5svh;transform:none;max-width:none;text-align:center;font-size:17px}
 .chapter,.chapter:nth-child(even){left:4%;right:4%;width:auto;top:auto;bottom:52px;padding:18px 20px 20px;transform:translateY(24px)}
 .chapter.is-active{transform:none}
 .chapter-year{font-size:52px}
 .chapter h2{font-size:24px;margin:6px 0 8px}
 .chapter p{font-size:14px;line-height:1.55}
 .hud{top:calc(var(--header) + 12px);right:5%;gap:18px}
 .hud-cell b{font-size:26px}
 .flight-cue{bottom:auto;top:calc(var(--header) + 80px);font-size:10px}
 .skip-game{bottom:22px}
 .results{left:4%;right:4%;width:auto;top:auto;bottom:24px;transform:none;padding:22px;animation:none}
 html.is-finished .chapter-final{display:none}
}
@media(max-height:560px) and (min-width:701px){.flip-clock{--digit:56px;top:66%}.pad-egg,.egg-hit{top:36%}}
@media(prefers-reduced-motion:reduce){.chapter,.pad{transition:none}}
