:root{color-scheme:dark;font-family:Arial,Helvetica,sans-serif;color:#faf8f1;background:#101916;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}.hero{position:relative;isolation:isolate;min-height:100svh;display:flex;flex-direction:column;align-items:center;overflow:hidden;padding:36px 48px 46px}.landscape,.shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.landscape{object-fit:cover;object-position:50% 50%}.shade{z-index:-1;background:linear-gradient(180deg,rgba(8,17,22,.52) 0%,rgba(8,17,22,.34) 42%,rgba(8,17,22,.1) 58%,rgba(5,12,12,.86) 100%)}.masthead{width:100%;display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:600;letter-spacing:.24em;gap:24px}.header-status{font-size:9px;font-weight:400;letter-spacing:.18em;display:flex;align-items:center;gap:9px}.header-status i{width:5px;height:5px;border-radius:50%;background:#e3533e;box-shadow:0 0 14px #e3533e77}.identity{width:min(640px,70vw);margin-top:clamp(16px,6vh,80px);margin-bottom:70px}.logo-frame{position:relative;width:100%;aspect-ratio:2/1;overflow:hidden;mix-blend-mode:multiply}.logo{position:absolute;width:100%;height:auto;top:50%;left:0;transform:translateY(-50%);mix-blend-mode:multiply}.contact{margin-top:auto;text-align:center;display:flex;align-items:center;flex-direction:column;padding-top:32px}.status{font-size:12px;letter-spacing:.45em;line-height:1.8;margin:0 0 19px;padding-left:.45em;font-weight:400}.contact a{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:48px;padding:4px 4px 8px;color:#faf8f1;text-decoration:none;border-bottom:1px solid #faf8f155;font-size:15px;letter-spacing:.06em;transition:color .2s,border-color .2s}.contact svg{width:20px;height:20px}.arrow{font-size:19px;margin-left:12px}.contact a:hover{color:#f5c38c;border-color:#f5c38c}.contact a:focus-visible{outline:2px solid #f5c38c;outline-offset:8px;border-radius:2px}.edge-line{width:1px;height:25px;background:#faf8f166;margin-top:28px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-aspect-ratio:2/1){.hero{padding-bottom:24px}.identity{width:min(530px,55vw);margin-top:8px;margin-bottom:24px}.edge-line{height:14px;margin-top:14px}}
@media(max-width:600px){.hero{padding:25px 24px 32px;min-height:100svh}.masthead{font-size:9px;letter-spacing:.18em}.header-status{font-size:8px;letter-spacing:.09em;gap:6px}.identity{width:min(100%,460px);margin-top:12svh;margin-bottom:26svh}.landscape{object-position:35% center}.shade{background:linear-gradient(180deg,#08111688 0%,#08111666 35%,#08111622 55%,#050c0cee 100%)}.status{font-size:10px;letter-spacing:.32em}.contact a{font-size:13px;gap:9px}.arrow{margin-left:3px}.edge-line{margin-top:22px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.email-options{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:10px;color:#faf8f188}.email-options button,.contact .email-options a{font:inherit;font-size:11px;letter-spacing:.04em;color:#faf8f1;background:none;border:0;padding:10px 4px;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.email-options button:focus-visible{outline:2px solid #f5c38c;outline-offset:3px}.email-options button:hover,.contact .email-options a:hover{color:#f5c38c}#email-feedback{font-size:11px;line-height:1.6;max-width:320px;min-height:18px;margin:4px 0 0;color:#faf8f1}
/* Short, compositor-friendly motion; the scene settles within five seconds. */
@media(prefers-reduced-motion:no-preference){
  .landscape{animation:landscape-reveal 4.8s cubic-bezier(.2,.65,.3,1) both}
  .masthead{animation:soft-arrival 1s ease-out both}
  .logo-frame{animation:logo-arrival 1.6s cubic-bezier(.16,1,.3,1) .12s both}
  .contact{animation:soft-arrival 1.2s ease-out .45s both}
  .edge-line{transform-origin:top;animation:line-arrival 1.3s ease-out .8s both}
  .header-status i{animation:signal-glow 1.5s ease-in-out 3}
  .contact svg,.contact .arrow{transition:transform .25s ease}
  .contact a:hover svg,.contact a:focus-visible svg{transform:translateY(-2px)}
  .contact a:hover .arrow,.contact a:focus-visible .arrow{transform:translate(3px,-3px)}
  .email-options button{transition:color .2s ease,transform .2s ease}
  .email-options button:active{transform:scale(.96)}
}
@keyframes landscape-reveal{from{transform:scale(1.045)}to{transform:scale(1)}}
@keyframes soft-arrival{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes logo-arrival{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes line-arrival{from{opacity:0;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}
@keyframes signal-glow{0%,100%{opacity:.65;transform:scale(1)}50%{opacity:1;transform:scale(1.35)}}
/* Compact layouts fit content naturally, including short phones and safe areas. */
@media(max-width:600px){
  .hero{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(180px,1fr) auto 18px;row-gap:20px;min-height:100svh;padding:max(22px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}
  .masthead{gap:12px;line-height:1.5}
  .masthead>span{white-space:nowrap}
  .header-status{font-size:8px;letter-spacing:.06em}
  .identity{width:min(100%,440px);align-self:start;justify-self:center;margin:clamp(20px,6svh,60px) 0 0}
  .landscape{object-position:18% center}
  .shade{background:linear-gradient(180deg,#08111644 0%,#08111622 38%,#08111633 52%,#050c0cee 100%)}
  .contact{width:100%;min-width:0;margin:0;padding:0;align-self:end}
  .status{font-size:10px;letter-spacing:.26em;margin-bottom:12px}
  .contact>a{max-width:100%;font-size:clamp(12px,3.4vw,15px);letter-spacing:.02em;gap:10px;min-height:48px}
  .contact>a span:not(.arrow){overflow-wrap:anywhere}
  .contact svg{flex-shrink:0;width:18px;height:18px}
  .email-options{gap:18px;margin-top:8px}
  .email-options button,.contact .email-options a{font-size:12px;min-height:48px;padding:10px 6px}
  #email-feedback{max-width:100%;font-size:11px;margin-top:6px}
  .edge-line{justify-self:center;margin:0;height:18px}
}
@media(max-width:350px){.hero{padding-left:16px;padding-right:16px;row-gap:16px}.masthead{font-size:8px}.header-status{font-size:7px}.identity{margin-top:24px}.status{letter-spacing:.2em}}
@media(max-height:500px) and (orientation:landscape){.hero{padding:18px 28px;min-height:100svh;gap:10px}.identity{width:min(350px,45vw);margin:0}.contact{padding-top:0}.status{margin-bottom:4px;font-size:10px}.email-options{margin-top:0}#email-feedback{margin:0}.edge-line{display:none}}
