*{box-sizing:border-box}body{margin:0;background:#172131;color:#faf0dc;font-family:"Segoe UI",Arial,sans-serif}main{position:relative;height:100svh;min-height:520px;overflow:hidden;isolation:isolate}.landscape,.shade{position:absolute;inset:0;z-index:-2}.landscape{background:url(assets/sunset.png) center 56%/cover;animation:land 35s ease-in-out infinite alternate}.shade{z-index:-1;background:linear-gradient(#07122535,#18233718 45%,#06101e88)}.intro{position:absolute;left:0;right:0;top:14%;text-align:center}h1{margin:0;font-weight:400}.logo{width:min(750px,96vw);height:auto;overflow:visible}.pixel{transform-box:fill-box;transform-origin:center;animation:assemble 1.5s cubic-bezier(.2,.75,.2,1) both}.pixel:nth-child(2){animation-delay:.1s}.pixel:nth-child(3){animation-delay:.22s}.pixel:nth-child(4){animation-delay:.16s}.pixel:nth-child(5){animation-delay:.3s}.pixel:nth-child(6){animation-delay:.25s}.pixel:nth-child(7){animation-delay:.4s}.pixel:nth-child(8){animation-delay:.5s}.lettering{animation:ink 1.5s 1.1s both;filter:drop-shadow(0 2px 6px #17213140)}.lettering:last-child{animation-delay:1.7s}.tagline{font-size:clamp(22px,3vw,34px);font-weight:300;letter-spacing:-.7px;margin:12px 0 26px;animation:reveal 1.2s 2.2s both}.contact{background:transparent;color:inherit;border:0;border-bottom:1px solid #faf0dc77;padding:10px 0;font:14px "Segoe UI",sans-serif;cursor:pointer;animation:reveal 1s 2.7s both}.contact span{margin-left:32px}.contact:hover{border-color:#fff}.contact:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid #f3c38b;outline-offset:6px}dialog{width:min(510px,calc(100% - 32px));max-height:90svh;padding:38px;background:#172329ed;color:#faf0dc;border:1px solid #ffffff30;border-radius:16px;box-shadow:0 25px 100px #0008;backdrop-filter:blur(25px)}dialog::backdrop{background:#07101b99;backdrop-filter:blur(9px)}.close{position:absolute;right:18px;top:12px;background:none;border:0;color:inherit;font-size:28px;cursor:pointer}.eyebrow{font-size:10px;letter-spacing:4px;color:#d9bfa0}h2{font-size:29px;font-weight:400;margin:18px 0 8px}.sub{font-size:14px;color:#c5c9c7;margin-bottom:26px}label{display:block;font-size:12px;margin:16px 0}input,textarea{display:block;width:100%;margin-top:7px;background:#ffffff08;border:1px solid #ffffff30;border-radius:5px;padding:11px;color:inherit;font:15px "Segoe UI",sans-serif}input:focus,textarea:focus{outline:1px solid #dfbf95}textarea{resize:vertical}.send{padding:13px 20px;width:100%;background:#faf0dc;border:0;border-radius:5px;font-size:14px;color:#172329;cursor:pointer}.email{font-size:12px;color:#cfccc1}.status{font-size:13px;line-height:1.5}.status a{color:inherit}@keyframes assemble{from{opacity:0;transform:translate(0,-80px) rotate(100deg) scale(.1);filter:blur(7px)}60%{opacity:1}to{opacity:1;transform:translate(0,0) rotate(0) scale(1);filter:blur(0)}}@keyframes ink{from{opacity:0;clip-path:inset(0 100% 0 0);filter:blur(4px)}to{opacity:1;clip-path:inset(0);filter:blur(0)}}@keyframes reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes land{from{transform:scale(1.02)}to{transform:scale(1.09)}}@media(max-width:600px){.intro{top:22%}.tagline{margin-top:22px}.landscape{background-position:44% center}dialog{padding:30px 24px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
/* Stronger entrance and a quieter, more spacious tagline. */
.logo{filter:drop-shadow(0 5px 20px #15223455)}
.pixel{animation:pixel-flight 2.8s cubic-bezier(.18,.7,.15,1) both;--x:-260px;--y:-190px;--turn:-240deg}
.pixel:nth-child(2){--x:0px;--y:-290px;--turn:180deg;animation-delay:.18s}
.pixel:nth-child(3){--x:280px;--y:-180px;--turn:270deg;animation-delay:.38s}
.pixel:nth-child(4){--x:-340px;--y:20px;--turn:-180deg;animation-delay:.55s}
.pixel:nth-child(5){--x:310px;--y:40px;--turn:240deg;animation-delay:.72s}
.pixel:nth-child(6){--x:-230px;--y:230px;--turn:-270deg;animation-delay:.9s}
.pixel:nth-child(7){--x:30px;--y:310px;--turn:180deg;animation-delay:1.06s}
.pixel:nth-child(8){--x:290px;--y:220px;--turn:300deg;animation-delay:1.22s}
.lettering{animation:word-reveal 2.1s 3s both}
.lettering:last-child{animation:word-reveal 1.5s 4s both}
.tagline{font-size:clamp(16px,1.4vw,21px);letter-spacing:.15px;margin:70px 0 24px;animation:reveal 1.6s 4.8s both}
.contact{animation:reveal 1.3s 5.4s both}
@keyframes pixel-flight{0%{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--turn)) scale(.15);filter:blur(8px)}15%{opacity:1}66%{transform:translate(0,0) rotate(0) scale(1.18);filter:blur(0) drop-shadow(0 0 16px #ffe2ac)}82%{transform:translate(0,0) rotate(0) scale(.94);filter:drop-shadow(0 0 7px #ffe2ac)}100%{opacity:1;transform:translate(0,0) rotate(0) scale(1);filter:blur(0)}}
@keyframes word-reveal{from{opacity:0;clip-path:inset(0 100% 0 -10%);transform:translateY(8px);filter:blur(5px)}to{opacity:1;clip-path:inset(-20% -10% -20% -10%);transform:translateY(0);filter:blur(0)}}
@media(max-width:600px){.tagline{margin-top:64px;font-size:17px}}
@media(prefers-reduced-motion:reduce){.pixel,.lettering,.lettering:last-child,.tagline,.contact{animation:none!important}}

.clouds{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;mask-image:linear-gradient(#000 0%,#000 48%,transparent 65%)}
.cloud-bank{position:absolute;width:160%;height:58%;left:-30%;top:-5%;background:url(assets/clouds.svg) center/100% 100% no-repeat;mix-blend-mode:screen;opacity:.43;will-change:transform;animation:cloud-drift 65s ease-in-out infinite alternate}
.cloud-bank-two{width:180%;left:-45%;top:10%;height:48%;opacity:.25;animation:cloud-drift-back 90s ease-in-out infinite alternate}
@keyframes cloud-drift{from{transform:translateX(-5%) translateY(0)}to{transform:translateX(12%) translateY(2%)}}
@keyframes cloud-drift-back{from{transform:translateX(9%) scaleY(.8)}to{transform:translateX(-9%) scaleY(.9)}}
@media(prefers-reduced-motion:reduce){.cloud-bank{animation:none!important}}

.clouds{z-index:0;mask-image:linear-gradient(#000 0%,#000 40%,transparent 58%)}
.cloud-bank{opacity:.8;top:1%;height:44%;filter:brightness(1.35);mix-blend-mode:screen}
.cloud-bank-two{opacity:.55;top:13%;height:34%;filter:brightness(1.2)}
.intro{z-index:2}.city-lights{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.city-light{position:absolute;width:3px;height:2px;border-radius:50%;background:#ffdfa1;box-shadow:0 0 5px 1px #ffc16a,0 0 11px #ffa84f;opacity:.25}

.cloud-bank{background-image:url(assets/clouds.svg),radial-gradient(ellipse 24% 5% at 24% 35%,#efbec68c,transparent 95%),radial-gradient(ellipse 20% 7% at 61% 48%,#edb2b573,transparent 95%),radial-gradient(ellipse 15% 4% at 83% 20%,#c3bdd873,transparent 95%);filter:blur(5px);opacity:.72}
.cloud-bank-two{opacity:.4;filter:blur(9px)}

/* Clearly visible atmospheric layers; independent of the background photograph. */
.clouds{z-index:1;mask-image:none;inset:0 0 45%}
.cloud-bank{top:0;height:100%;width:180%;left:-40%;opacity:.8;filter:blur(8px);background-image:radial-gradient(ellipse 15% 6% at 24% 30%,rgba(244,206,216,.65) 0%,rgba(220,183,203,.35) 45%,transparent 100%),radial-gradient(ellipse 21% 7% at 62% 49%,rgba(255,190,165,.65) 0%,rgba(246,175,169,.25) 55%,transparent 100%),radial-gradient(ellipse 14% 5% at 80% 19%,rgba(215,203,229,.5),transparent 100%);background-size:100% 100%}
.cloud-bank-two{top:0;opacity:.55;filter:blur(12px);height:100%}
.city-lights{z-index:2}.city-light{width:4px!important;height:3px!important;background:#ffe8bd;box-shadow:0 0 5px 2px #ffc477aa,0 0 12px #ffb35c88}
.intro{z-index:3}

.city-light{width:2px!important;height:1.5px!important;box-shadow:0 0 4px 1px #ffc47788,0 0 7px #ffb35c55}

.city-light{width:4px!important;height:3px!important;background:#fff4dc;box-shadow:0 0 4px 2px #ffe3a8,0 0 10px 4px #ffc16b99,0 0 18px #ffb05d66}

.flight-layer{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}.aircraft{position:absolute;left:76%;top:70%;width:36px;height:36px;opacity:0;will-change:transform,opacity}.aircraft svg{width:100%;height:100%;transform:rotate(-36deg);filter:drop-shadow(0 0 2px #ffd99e66)}.plane-beacon{position:absolute;left:48%;top:47%;width:2px;height:2px;border-radius:50%;background:#fff5df;box-shadow:0 0 5px #fff5df}

.aircraft{left:8%;top:48%;width:72px;height:23px;filter:blur(.15px)}.aircraft svg{transform:rotate(4deg);filter:drop-shadow(0 1px 1px #141b2d66)}.plane-beacon{left:48%;top:39%;width:1.5px;height:1.5px;background:#ffaaa0;box-shadow:0 0 3px #ff695f}.landing-light{position:absolute;right:9%;top:59%;width:2px;height:1px;border-radius:50%;background:#ffe4bd;box-shadow:2px 0 4px 1px #ffdda766}
