@font-face{font-family:Luckiest Guy;src:url('assets/fonts/LuckiestGuy-Regular.ttf') format('truetype');font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/InterVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/InterVariable-Italic.woff2') format('woff2');font-weight:100 900;font-style:italic;font-display:swap}
:root{--blue:#0400ff;--cream:#fff9f7;--capture-time:600ms;--copy-fade-time:200ms;--icon-size:160px}
*{box-sizing:border-box}
html{overflow-x:hidden;overscroll-behavior-x:none;background:var(--cream);color:var(--blue);scrollbar-width:none}
html::-webkit-scrollbar{display:none}
body{width:100%;max-width:100vw;margin:0;font-family:Inter,Arial,sans-serif;overflow:hidden}
main{width:100%;overflow-x:clip}
body.exploring{overflow-x:hidden;overflow-y:auto}
.hero{min-height:100svh;display:flex;align-items:center;justify-content:center;position:relative}
.brand-group{position:relative;display:flex;flex-direction:column;align-items:center;transform:translateY(60px)}
.egg-button{appearance:none;-webkit-appearance:none;box-shadow:none;outline:none;-webkit-tap-highlight-color:transparent;width:var(--icon-size);height:var(--icon-size);background:none;border:0;padding:0;color:inherit;cursor:pointer;position:relative;z-index:2;flex:none;transform:translate(var(--intro-x,0px),var(--intro-y,-40px)) scale(var(--intro-scale,2.7))}
.egg-button:focus-visible{outline:2px dashed var(--blue);outline-offset:12px;border-radius:16px}
.icon-frame{display:block;width:100%;height:100%;border:2px solid transparent;border-radius:17px;position:relative;overflow:hidden}
.egg{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
body.revealing .egg-button{transition:transform var(--capture-time) cubic-bezier(.4,0,.2,1);transform:translate(0,0) scale(1);cursor:default}
body.revealing .icon-frame{border-color:var(--blue);box-shadow:0 7px 0 var(--blue)}
.brand-copy{text-align:center;opacity:0;visibility:hidden;margin-top:42px;transition:opacity var(--copy-fade-time) ease-out}
body.ready .brand-copy{opacity:1;visibility:visible}
h1{font-family:Luckiest Guy,Impact,sans-serif;font-weight:400;font-size:42px;line-height:1;margin:0;text-transform:uppercase}
.tagline{font-size:22px;line-height:1.35;margin:0;white-space:nowrap;letter-spacing:0}
.tagline em{font-weight:400}
.byline,.desktop-actions{display:none}
.coverage{position:relative;margin:-170px auto 0;opacity:0;visibility:hidden;text-align:center;width:100%;transition:opacity 450ms ease-out;padding:0 24px 140px;min-height:calc(50svh + 20px)}
body.exploring .coverage{opacity:1;visibility:visible}
.map-composition{position:relative;width:min(100%,282px);margin:auto;height:185px;display:grid;place-items:center}
.state-map{position:absolute;width:100%;height:100%;object-fit:contain}
h2{position:relative;font-family:Luckiest Guy,Impact,sans-serif;font-size:23px;font-weight:400;line-height:.96;margin:0;text-transform:uppercase;color:var(--cream);paint-order:stroke fill;-webkit-text-stroke:5px var(--blue);transform:rotate(-1deg)}
h2 span{display:block;white-space:nowrap}
.bird-parade{height:80px;position:fixed;left:0;bottom:0;z-index:3;pointer-events:none;overflow:hidden;opacity:0;visibility:hidden;transition:opacity 450ms ease-out;width:100%}
body.exploring .bird-parade{opacity:1;visibility:visible}
.bird-track{display:flex;position:absolute;left:0;bottom:0;width:max-content;opacity:0;animation:march 105s linear infinite;animation-direction:reverse;animation-delay:var(--march-delay,0s);animation-play-state:paused;will-change:transform}
.bird-track.is-loaded{opacity:1}
body.exploring .bird-track.is-loaded{animation-play-state:running}
 .bird-set{flex:0 0 auto;display:flex;align-items:flex-end;gap:5px;padding-right:5px}
.bird{display:block;width:80px;height:80px;object-fit:contain;object-position:center bottom;flex:none}
@keyframes march{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.no-script{position:fixed;bottom:16px;text-align:center;width:100%;padding:16px}
@media(min-width:900px){
 :root{--icon-size:min(28.5vw,410px)}
 body.ready{overflow:hidden}
 .hero{height:100svh;min-height:650px}
 .brand-group{flex-direction:row;gap:6vw;transform:translate(34px,0);padding:0 155px}
 .egg-button,body.revealing .egg-button{transform:none;transition:none;cursor:default}
 .icon-frame{border:4px solid var(--blue);border-radius:48px;box-shadow:0 15px 0 var(--blue)}
 .brand-copy{opacity:1;visibility:visible;transition:none}
 .bird-parade{opacity:1;visibility:visible}
 body.revealing .icon-frame{box-shadow:0 15px 0 var(--blue)}
 .brand-copy{text-align:left;margin:0;flex:none}
 h1{font-size:60px}
 .tagline{font-size:36px;line-height:1.2;letter-spacing:0}
 .byline{display:block;font-size:22px;line-height:1.3;letter-spacing:.25px;margin:24px 0 60px}
 body.ready .bird-parade{opacity:1;visibility:visible}
 .coverage{display:none}
 .bird-parade{position:fixed;inset:0;height:100svh;margin:0;pointer-events:none;z-index:3;overflow:hidden}
 .orbit-bird{position:absolute;top:0;left:0;width:var(--bird-size,150px);height:var(--bird-size,150px);object-fit:contain;will-change:transform}
}
@media(min-width:900px) and (max-width:1199px){
 .brand-group{gap:5vw;padding:0 115px}
 h1{font-size:48px}.tagline{font-size:24px}.byline{font-size:17px;margin-bottom:40px}
}
@media(prefers-reduced-motion:reduce){
 body.revealing .egg-button,.brand-copy,.coverage,.bird-parade{transition:none}
 .bird-track,body.exploring .bird-track.is-loaded{animation-play-state:paused}
}

.brand-copy[role="button"]{cursor:pointer}
.brand-copy[role="button"]:focus-visible{outline:2px dashed var(--blue);outline-offset:8px;border-radius:4px}

@media(max-width:899px){
 :root{
  --icon-size:clamp(136px,19dvh,176px);
  --mobile-top-gap:clamp(28px,7dvh,82px);
  --mobile-bird-size:clamp(64px,20vw,88px);
  --section-gap:clamp(40px,6dvh,72px);
 }
 html{touch-action:pan-y pinch-zoom}
 .hero{min-height:100dvh}
 .brand-group{max-width:calc(100% - 32px);transform:translateY(clamp(16px,6dvh,60px))}
 .egg-button{scroll-margin-top:var(--mobile-top-gap)}
 .icon-frame{border-radius:clamp(15px,2dvh,19px)}
 .brand-copy{max-width:100%;margin-top:clamp(24px,3.8dvh,38px)}
 h1{font-size:clamp(36px,4.9dvh,44px)}
 .tagline{font-size:clamp(16px,calc(5.6vw - 2px),22px);white-space:normal;text-wrap:pretty}
 .coverage{min-height:0;padding:clamp(24px,3dvh,36px) 24px calc(var(--mobile-bird-size) + 32px)}
 .map-composition{width:min(80%,clamp(198.4px,57.6vw,248px));height:auto;aspect-ratio:889/583;margin-top:calc(clamp(16px,2dvh,24px) + 2dvh)}
 h2{font-size:clamp(20px,5.8vw,25px)}
 h2 span:first-child{font-size:calc(1em + 8px)}
 .bird-parade{height:calc(var(--mobile-bird-size) + 2px)}
 .bird{width:var(--mobile-bird-size);height:var(--mobile-bird-size)}
 body.settled .hero{min-height:0;padding-top:var(--mobile-top-gap)}
 body.settled .brand-group{transform:none}
 body.settled .coverage{margin-top:0}
}

@media(max-width:899px) and (max-height:500px){
 :root{--mobile-bird-size:64px}
}

/* Custom coming-soon announcement and visual email signup. */
.launch-actions{--launch-radius:14px;min-width:0}
.store-badge{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;height:auto;aspect-ratio:119.66407/40;padding:12px 16px;border-radius:var(--launch-radius);color:#707077;background:transparent;text-align:left;box-shadow:none}
.store-mark{width:40px;height:48px;flex:none;display:block}
.store-copy{display:flex;flex-direction:column;line-height:1.15;white-space:nowrap}
.store-copy>span{font-size:15px;font-weight:400}
.store-copy>strong{font-size:32px;font-weight:500;letter-spacing:-.7px}
.signup-preview{min-width:0;width:100%}
.signup-shell{margin:0;position:relative;display:flex;align-items:center;gap:0;height:64px;padding:8px 7px 8px 18px;border:1px solid var(--blue);border-radius:var(--launch-radius);background:var(--cream);box-shadow:none}
.signup-shell:focus-within{outline:2px solid var(--blue);outline-offset:3px}
.signup-input{appearance:none;-webkit-appearance:none;flex:1;min-width:0;width:100%;height:46px;padding:0;margin:0;border:0;outline:0;box-shadow:none;background:transparent;color:var(--blue);font:400 16px/24px Inter,Arial,sans-serif;letter-spacing:-.3px;border-radius:0}
.signup-input::placeholder{color:rgb(4 0 255 / .7);opacity:1}
.signup-send{appearance:none;-webkit-appearance:none;display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:0;border-radius:6px;box-shadow:none;background:transparent;color:var(--blue)}
.signup-send:disabled{opacity:.4;cursor:not-allowed}
.signup-send svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mobile-actions{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px;width:var(--mobile-launch-width,min(100%,280px));max-width:100%;margin:0 auto}
@media(max-width:899px){
 .mobile-actions .store-badge{transform:translateY(-1dvh);justify-self:center;width:200px;max-width:100%;height:auto;gap:6px;padding:6px}
 .mobile-actions .store-mark{width:22px;height:28px}
 .mobile-actions .store-copy>span{font-size:12px}
 .mobile-actions .store-copy>strong{font-size:22px;letter-spacing:-.4px}
 .mobile-actions .signup-shell{height:56px;min-height:56px;padding:4px 6px 4px 14px;border-width:2px;border-radius:10px}
 .mobile-actions .signup-send{position:static;transform:none}
 .mobile-actions .signup-input{height:40px;padding:0;line-height:24px}
}
@media(min-width:900px){
 .brand-copy{display:grid;grid-template-columns:min-content}
 .tagline{width:max-content}
 .desktop-actions{display:flex;flex-direction:column;gap:24px;width:100%;margin:24px 0 0}
 .desktop-actions .store-badge{width:270px;max-width:100%;padding:0;justify-content:flex-start}
 .desktop-actions .store-mark{width:32px;height:40px}
 .desktop-actions .byline{margin:0;white-space:nowrap}
 .desktop-actions .signup-input{font-size:18px}
 .mobile-actions{display:none}
}
@media(min-width:900px) and (max-width:1199px){
 .desktop-actions .store-badge{width:240px;height:auto;gap:10px;padding:0}
 .desktop-actions .store-mark{width:29px;height:36px}
 .desktop-actions .store-copy>span{font-size:13px}
 .desktop-actions .store-copy>strong{font-size:28px}
}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(max-width:350px){
 .mobile-actions .store-mark{width:18px;height:24px}
 .mobile-actions .store-copy>span{font-size:10px}
 .mobile-actions .store-copy>strong{font-size:17px}
 .mobile-actions .store-copy{line-height:1.1}
}

.signup-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.signup-status{font-size:12px;line-height:1.4;margin:7px 0 0;text-align:left;color:var(--blue)}
.signup-status:empty{display:none}
.signup-send:not(:disabled){cursor:pointer}
.signup-send:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.signup-shell[aria-busy="true"] .signup-send svg{opacity:0}
.signup-shell[aria-busy="true"] .signup-send::after{content:"";width:16px;height:16px;border:2px solid rgb(4 0 255 / .25);border-top-color:var(--blue);border-radius:50%;animation:signup-spin .7s linear infinite}
@keyframes signup-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.signup-shell[aria-busy="true"] .signup-send::after{animation:none}}
