:root{--graphite:#161719;--ember:#F05238;--stone:#BBC0D2;--white:#F2EFE8;color-scheme:dark;font-family:"DejaVu Sans","Helvetica Neue",sans-serif;background:#0b0c0f;color:var(--white)}
*{box-sizing:border-box}
body{position:relative;margin:0;min-height:100svh;display:grid;grid-template-rows:auto 1fr;isolation:isolate;overflow-x:clip;font-kerning:normal}
body::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:
radial-gradient(circle at 12% 17%,#f2efe8b0 0 .6px,transparent 1.2px),
radial-gradient(circle at 34% 9%,#bbc0d290 0 .7px,transparent 1.3px),
radial-gradient(circle at 71% 16%,#f2efe8c0 0 .7px,transparent 1.5px),
radial-gradient(circle at 89% 29%,#bbc0d288 0 .6px,transparent 1.2px),
radial-gradient(circle at 8% 43%,#bbc0d280 0 .6px,transparent 1.3px),
radial-gradient(circle at 29% 34%,#bbc0d295 0 .6px,transparent 1.3px),
radial-gradient(circle at 58% 40%,#f2efe8a5 0 .6px,transparent 1.3px),
radial-gradient(circle at 83% 58%,#f2efe8c0 0 .8px,transparent 1.6px),
radial-gradient(circle at 16% 70%,#bbc0d2a0 0 .7px,transparent 1.4px),
radial-gradient(circle at 43% 67%,#bbc0d280 0 .6px,transparent 1.3px),
radial-gradient(circle at 65% 83%,#bbc0d290 0 .6px,transparent 1.3px),
radial-gradient(circle at 92% 91%,#f2efe8b0 0 .7px,transparent 1.4px),
radial-gradient(circle at 6% 9%,#f2efe880 0 .5px,transparent 1px),
radial-gradient(circle at 22% 24%,#bbc0d280 0 .7px,transparent 1.3px),
radial-gradient(circle at 46% 18%,#f2efe8b0 0 .8px,transparent 1.5px),
radial-gradient(circle at 63% 6%,#bbc0d2a0 0 .6px,transparent 1.2px),
radial-gradient(circle at 79% 33%,#f2efe890 0 .5px,transparent 1.1px),
radial-gradient(circle at 96% 14%,#bbc0d2a0 0 .8px,transparent 1.5px),
radial-gradient(circle at 19% 53%,#f2efe8a0 0 .6px,transparent 1.3px),
radial-gradient(circle at 39% 46%,#bbc0d290 0 .7px,transparent 1.4px),
radial-gradient(circle at 72% 64%,#f2efe8c0 0 .7px,transparent 1.4px),
radial-gradient(circle at 51% 79%,#bbc0d290 0 .6px,transparent 1.2px),
radial-gradient(circle at 4% 86%,#f2efe890 0 .7px,transparent 1.4px),
radial-gradient(circle at 86% 79%,#bbc0d2a0 0 .6px,transparent 1.3px),
radial-gradient(ellipse at 65% 44%,#15182070,transparent 65%),#0b0c0f}
.ambient{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;column-gap:1rem;row-gap:.25rem;padding:clamp(1.75rem,4vw,3.5rem) clamp(1.5rem,4.5vw,5rem) 0}
.brand{display:flex;align-items:center;gap:.5rem;min-width:0;max-width:100%}
.brand-mark{display:block;width:2.75rem;height:2.75rem;object-fit:contain;flex:none}
.wordmark{font-size:clamp(1.25rem,2vw,1.75rem);font-weight:700;line-height:1.1;letter-spacing:-.045em;margin:0;overflow-wrap:normal}
main{position:relative;min-width:0;min-height:min(36rem,65svh);overflow:clip;display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;padding:0 clamp(1.5rem,4.5vw,5rem) max(3rem,env(safe-area-inset-bottom));}
.signature-wrap{position:relative;z-index:1;grid-area:1/1;align-self:center;margin:3.25rem 0 0;pointer-events:none}
.signature{margin:0;font-size:clamp(3rem,7vw,6rem);font-weight:700;letter-spacing:-.055em;line-height:.98}
.signature>span{display:block}
.signature>span+span{margin-left:.2em}
.tagline{margin:.9em 0 0;font-size:clamp(1rem,1.5vw,1.25rem);font-weight:400;letter-spacing:0;line-height:1.3;color:#d9dde8;text-shadow:0 2px 24px #080c13a0}
.period{color:var(--ember)}
.visual{grid-area:1/2;min-width:0;min-height:0;position:relative;align-self:stretch;}
.pebble{position:absolute;top:50%;left:50%;display:block;min-width:0;width:clamp(15rem,28vw,23rem);max-width:100%;aspect-ratio:1;padding:0;border:0;background:none;color:inherit;cursor:pointer;transform:translate(calc(-54% + var(--thrust-x,0px)),calc(-53% + var(--thrust-y,0px)));-webkit-tap-highlight-color:transparent;}
.pebble:disabled{cursor:default}
.flight{position:relative;display:block;width:100%;transform-origin:65% 44%}
.pebble[data-flight] .flight{will-change:transform,opacity}
.pebble[data-flight]{cursor:default}
.pebble:focus-visible{outline:2px solid var(--stone);outline-offset:-2rem;border-radius:50%}
.mark,.flame{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;pointer-events:none}
.flame{position:absolute;inset:0;opacity:0}
.pebble[data-renderer="ready"] .flame{opacity:1}
.pebble[data-renderer="ready"] .mark{opacity:0}
.pebble[data-lit="true"] .mark{filter:brightness(1.08)}
.skip{position:fixed;top:1rem;left:1rem;padding:.75rem 1rem;background:var(--white);color:var(--graphite);z-index:5;transform:translateY(-200%)}
.skip:focus{transform:translateY(0)}
.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(max-width:899px){
  header{padding-top:2rem}
  main{grid-template-columns:1fr;grid-template-rows:minmax(15rem,1fr) auto;min-height:0;padding-bottom:max(4.75rem,calc(env(safe-area-inset-bottom) + 60px));}
  .visual{grid-area:1/1;align-self:stretch;position:relative;min-height:0;}
  .pebble{position:absolute;top:50%;left:auto;right:4vw;width:min(54vw,20rem);transform:translate(var(--thrust-x,0px),calc(-52% + var(--thrust-y,0px)));}
  .signature-wrap{grid-area:2/1;align-self:end;margin:0}
  .signature{font-size:clamp(3rem,8.6vw,5rem);line-height:.98}
}
@media(max-width:460px){
  .pebble{width:58vw;right:2vw;transform:translate(var(--thrust-x,0px),calc(-51% + var(--thrust-y,0px)))}
  .signature{font-size:clamp(2.75rem,13.7vw,3.75rem)}
}
@media(max-height:550px) and (min-width:650px){
  header{padding-top:1.25rem}
  main{grid-template-columns:1fr 1fr;grid-template-rows:1fr;min-height:18rem;padding-bottom:2rem}
  .signature-wrap{grid-area:1/1;align-self:center;margin:0}
  .signature{font-size:clamp(3rem,6vw,4rem)}
  .visual{grid-area:1/2}
  .pebble{position:absolute;top:50%;left:50%;right:auto;width:min(28vw,17.5rem);transform:translate(calc(-54% + var(--thrust-x,0px)),calc(-53% + var(--thrust-y,0px)))}
}

/* A geographic illustration, independent of graphics/script support. */
.earth{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.earth-art{position:absolute;display:block;top:55svh;left:58%;width:max(110vw,850px);height:auto;max-width:none;transform:translateX(-50%)}

header,main{z-index:1}
header{position:relative}
.pebble{rotate:var(--heading,0deg)}
.signature{text-shadow:0 2px 32px #080c1380}
@media(max-width:899px){.earth-art{top:57svh;left:64%;width:max(118vw,800px)}}
@media(max-width:899px){.earth::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 0 100%,#080c13b8,transparent 72%),linear-gradient(180deg,transparent 60%,#080c1340 80%,#080c1390 100%)}.signature{text-shadow:0 2px 12px #080c13a0}}
@media(max-width:460px){.earth-art{top:58svh;left:72%;width:780px}}
@media(max-height:550px) and (min-width:650px){.earth-art{top:55svh}}

.contact{margin-left:auto;display:inline-flex;align-items:center;gap:.35rem;min-height:44px;max-width:100%;padding:.5rem 0 .5rem .75rem;color:var(--white);font-size:.875rem;line-height:1.2;text-decoration:none;white-space:nowrap;text-underline-offset:.35em}
.contact-arrow{width:1em;height:1em;flex:none;color:var(--stone)}
.contact:hover{text-decoration:underline;text-decoration-color:var(--ember)}
.contact:focus-visible{outline:2px solid var(--stone);outline-offset:5px;border-radius:2px}
@media(max-width:380px){header{column-gap:.5rem;padding-left:1rem;padding-right:1rem}.brand{gap:.25rem}.brand-mark{width:2.25rem;height:2.25rem}.wordmark{font-size:1.1rem}.contact{font-size:.8rem;padding-left:.5rem}}

/* A shaded sphere turns beneath a separately moving cloud layer. */
.earth-crafted{filter:saturate(.88) brightness(.88)}
.earth-canvas{aspect-ratio:1;height:auto;opacity:0}
.earth[data-renderer="ready"] .earth-canvas{opacity:1}
.earth[data-renderer="ready"] .earth-crafted{visibility:hidden}
.earth[data-renderer="fallback"] .earth-canvas{display:none}
body[data-mode="still"] .ambient,body[data-mode="still"] .earth-canvas,body[data-mode="still"] .flame{display:none}
body[data-mode="still"] .earth-crafted{visibility:visible}
body[data-mode="still"] .mark{opacity:1}
.motion-toggle{position:absolute;z-index:3;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #bbc0d22e;border-radius:50%;background:#0b0c0fb3;color:var(--white);cursor:pointer;transition:background 180ms ease-out,border-color 180ms ease-out}
.motion-toggle[hidden]{display:none}
.motion-toggle:hover{background:#161719;border-color:var(--stone)}
.motion-toggle:focus-visible{outline:2px solid var(--stone);outline-offset:4px}
.motion-toggle .play-icon{display:none}
body[data-motion="paused"] .motion-toggle .pause-icon{display:none}
body[data-motion="paused"] .motion-toggle .play-icon{display:block}
@media(prefers-reduced-motion:reduce){.motion-toggle{transition:none}}
