/* Scoped to this section: original 480svh / 100dvh sticky composition. */
.sc-globe { position: relative; display: grid; height: 480svh; margin: 0; padding: 0; background: #0a0a0a; color: #fff; isolation: isolate; }
.sc-globe__stage { grid-area: 1 / 1; display: grid; place-items: center; position: sticky; top: 0; width: 100%; height: 100dvh; min-height: 320px; overflow: clip; }
.sc-globe__visual { grid-area: 1 / 1; position: absolute; inset: 0; overflow: hidden; }
.sc-globe__visual canvas { display: block; width: 100%; height: 100%; touch-action: pan-y; }
/* Dim only the artwork, leaving the copy and pointer response intact. */
.sc-globe__visual::after { content: ''; position: absolute; inset: 0; background: rgba(10, 10, 10, .5); pointer-events: none; }
.sc-globe__titles { grid-area: 1 / 1; display: grid; z-index: 1; width: 100%; padding: 0 32px; text-align: center; text-wrap: balance; pointer-events: none; user-select: none; transition: opacity .2s linear; }
.sc-globe__titles h2 { grid-area: 1 / 1; margin: 0; font-family: Pretendard, sans-serif; font-size: 64px; font-weight: 300; line-height: 1.0625; letter-spacing: -.025em; word-break: keep-all; }
.sc-globe__message { grid-area: 1 / 1; align-self: center; }
.sc-globe__message:not(:first-child) { opacity: 0; }
.sc-globe__description { margin: 28px auto 0; max-width: 760px; font-size: 18px; line-height: 1.75; color: #fff; word-break: keep-all; }
.sc-globe__description strong { color: #fff; font-weight: 700; }
.sc-globe__sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.sc-globe.is-static { height: auto; min-height: 100svh; }
.sc-globe.is-static .sc-globe__stage { position: relative; height: auto; min-height: 100dvh; padding: 120px 0; }
.sc-globe.is-static .sc-globe__titles { gap: 48px; }
.sc-globe.is-static .sc-globe__message { grid-area: auto; opacity: 1 !important; transform: none !important; }
.sc-globe.is-static .sc-globe__titles h2 { grid-area: auto; opacity: 1 !important; transform: none !important; font-size: clamp(26px, 3.3vw, 52px); }
.sc-globe.is-fallback .sc-globe__visual { inset: 12% max(12%, calc((100% - 680px)/2)); border-radius: 50%; background: url('./earth-texture.png') center / cover; opacity: .2; filter: grayscale(1); }
@media (max-width: 992px) {
  .sc-globe__titles h2 { font-size: 48px; line-height: 1.15; }
  .sc-globe__titles { padding: 0 24px; }
}
@media (max-width: 767px) {
  .sc-globe__titles h2 { font-size: 36px; line-height: 1.2; }
  .sc-globe__titles { padding: 0 20px; }
  .sc-globe__description { margin-top: 24px; font-size: 15px; line-height: 1.7; }
}
@media (prefers-reduced-motion: reduce) {
  .sc-globe { height: auto; min-height: 100svh; }
  .sc-globe__stage { position: relative; height: auto; min-height: 100dvh; padding: 120px 0; }
  .sc-globe__titles { gap: 48px; }
  .sc-globe__message { grid-area: auto; opacity: 1 !important; transform: none !important; }
  .sc-globe__titles h2 { grid-area: auto; opacity: 1 !important; transform: none !important; font-size: clamp(26px, 3.3vw, 52px); }
  .sc-globe *, .sc-globe *::before { transition: none !important; }
}
