/* Approved globe study integrated into the full local page. */
.hero{padding:130px 0 90px}
/* .wrap already centers the content through --gutter. Keep this grid full width:
   adding a max-width would apply the viewport gutter twice on ultrawide screens. */
.hero-grid{min-height:min(650px,72svh);max-width:none}
.hero-copy{position:relative;z-index:3;pointer-events:none;grid-column:1/span 7;gap:28px}
.hero-copy>*{pointer-events:auto}
.hero-title{font-size:clamp(56px,min(8.8vw,14.3svh),150px);line-height:.98;text-wrap:initial}
.hero-line{display:block;white-space:nowrap}
.hero-title em{padding:0 .055em}
.hero-sub{max-width:310px;font-size:12px}
.hero-stage{isolation:isolate;justify-self:center;width:min(100%,calc(min(61svh,600px)*9/16));translate:45px 0}
.hero-stage.globe-interactive{touch-action:pan-y;user-select:none;-webkit-user-select:none}
.hero-stage.globe-interactive .hero-card{cursor:grab;touch-action:pan-y}
.hero-stage .hero-card{z-index:2;aspect-ratio:9/16}
.hero-stage .chips{z-index:3}
.hero-card:hover .hero-video{transform:none}
.hero-globe{position:absolute;z-index:0;left:calc(-18% - 28px);top:46%;width:clamp(650px,min(56vw,92svh),990px);aspect-ratio:1;transform:translate(-50%,-50%);color:var(--lime)}
.hero-globe::before{content:'';position:absolute;inset:3%;border-radius:50%;pointer-events:none;
  background:radial-gradient(ellipse at 34% 12%,#ffffffb3 0%,#ffffff38 26%,transparent 55%),linear-gradient(168deg,transparent 45%,#7c885d0a 76%,#6473491a 100%);
  box-shadow:inset -14px -22px 48px #6170470a}
.hero-globe::after{content:'';position:absolute;inset:3%;border-radius:50%;border:1px solid #8fa16016;border-top-color:#ffffffa6;box-shadow:inset 1px 6px 18px #ffffff5c;pointer-events:none}
.globe-canvas,.globe-static{position:absolute;inset:0;width:100%;height:100%;border-radius:50%}
.globe-canvas{cursor:grab;touch-action:pan-y;outline-offset:-26px}
.globe-ready{cursor:grab;touch-action:pan-y}
.hero-stage.is-globe-dragging,.hero-stage.is-globe-dragging *{cursor:grabbing!important}
body:has(.hero-stage.globe-interactive .hero-card:hover) .cursor-play,
body:has(.hero-stage.is-globe-dragging) .cursor-play{opacity:0!important;visibility:hidden}
.globe-static{pointer-events:none;object-fit:contain}
.globe-ready .globe-static{display:none}
.globe-fallback .globe-canvas{display:none}
.globe-pins{position:absolute;inset:0;pointer-events:none}
.globe-pin{position:absolute;left:0;top:0;display:grid;place-items:center;width:44px;height:44px;min-height:0;border-radius:50%;pointer-events:auto;touch-action:pan-y;cursor:pointer}
.globe-pin[hidden]{display:none}
.globe-pin-badge{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:30px;height:32px;background:transparent;border:0;box-shadow:none;transition:transform .18s ease}
.globe-pin img{display:block;width:17.3px;height:18px;filter:brightness(.44) drop-shadow(.6px 0 .6px #fff) drop-shadow(-.6px 0 .6px #fff) drop-shadow(0 .6px .6px #fff);pointer-events:none;-webkit-user-drag:none}
.globe-pin-halo{position:absolute;width:20px;height:20px;border:1px solid #51782b;border-radius:50%;opacity:0;pointer-events:none;transform:scale(.6)}
.globe-presence{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden}
.globe-presence-arc{fill:none;stroke:#41671f;stroke-width:.85;stroke-opacity:.3;stroke-linecap:round;vector-effect:non-scaling-stroke}
.globe-presence-signal{fill:#568320;pointer-events:none}
.globe-fallback .globe-presence,.globe-fallback .globe-pin-halo{display:none}
.globe-pin:is(:hover,:focus-visible,.is-active){z-index:4}
.globe-pin:is(:hover,:focus-visible,.is-active) .globe-pin-badge{transform:scale(1.13)}
.globe-pin.is-tooltip-open .globe-pin-badge{background:#e6efcf;border-radius:50%;box-shadow:0 0 0 1px #658c3266;transform:scale(1.13)}
.globe-pin:focus-visible{outline:2px solid #476a22;outline-offset:2px}
.globe-state-tooltip{position:fixed;z-index:80;max-width:calc(100vw - 24px);padding:8px 12px;background:#fafcf4;color:#253916;border-radius:8px;box-shadow:0 5px 18px #263a1826;font:600 12px/1.3 var(--body);white-space:nowrap;pointer-events:auto;animation:globe-tip-in .14s ease-out both}
.globe-state-tooltip[hidden]{display:none}
@keyframes globe-tip-in{from{opacity:0;translate:0 3px}to{opacity:1;translate:0 0}}
.globe-sr{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:1100px) and (min-width:901px){.hero-title{font-size:8.7vw}.hero-stage{translate:0 0}.hero-globe{width:650px;left:-20px}}
@media(max-width:900px){
  .hero{padding-top:112px;padding-bottom:100px}
  .hero-grid{display:flex;flex-direction:column;align-items:stretch;min-height:0}
  .hero-copy{gap:22px}
  .hero-title{font-size:clamp(62px,18vw,110px);line-height:1}
  .hero-sub{max-width:300px;font-size:10px}
  .hero-stage{align-self:center;width:min(48vw,280px);translate:60px 0;margin:90px 0 80px}
  .hero-globe{width:min(110vw,660px);left:calc(10% - 14px);top:44%}
  .globe-pin-badge{width:27px;height:29px}.globe-pin img{width:15.1px;height:15.8px}
}
@media(max-width:420px){.hero-title{font-size:18.1vw}.hero-proof{font-size:11px;gap:10px}.hero-faces .pt-ph{width:34px;height:34px}}
@media(prefers-reduced-motion:reduce){.globe-pin-badge{transition:none}.globe-pin-halo,.globe-presence-signal{display:none}.globe-state-tooltip{animation:none}}
@media(forced-colors:active){.hero-globe{display:none}}
