/* ═══ PRESENCIA INTERNACIONAL · globo 3D ═══
   Todo va dentro de .globe-section y usa prefijo gs- para no chocar con styles.css */
/* El globo usa position:sticky. body (aquí) y .site-wrapper (estilo en línea de index.html) tienen overflow-x:hidden,
   que los vuelve contenedores de scroll y anula el sticky. "clip" recorta igual
   el desborde horizontal sin crear contenedor de scroll. */
@supports (overflow:clip){
  body{overflow-x:clip}
}
.globe-section{
  --gs-bg:#0c0f1c;
  --gs-globe:#0f1424;
  --gs-land:#5d7f99;
  --gs-gold:#c4a074;
  --gs-gold-2:#d4b48a;
  --gs-fg:#ebe6dc;
  --gs-muted:#8892a8;
  --gs-line:#1c2230;
  --gs-card:rgba(16,21,38,.88);
  --gs-nav:80px;               /* alto de la barra de navegación fija */
  position:relative;
  padding:96px 0 32px;
  background:var(--gs-bg);
  color:var(--gs-fg);
  overflow:clip;
}
.globe-section .section-title em{font-style:italic;color:var(--gs-gold)}
.gs-story{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:32px;margin-top:8px}
.gs-stage{position:sticky;top:var(--gs-nav);height:calc(100vh - var(--gs-nav));height:calc(100svh - var(--gs-nav));min-width:0}
.gs-stage canvas{width:100%;height:100%;display:block;-webkit-mask-image:radial-gradient(closest-side,#000 82%,transparent 100%);mask-image:radial-gradient(closest-side,#000 82%,transparent 100%);cursor:grab;touch-action:pan-y;opacity:0;transition:opacity 1s ease}
.gs-stage canvas.is-ready{opacity:1}
.gs-stage canvas.is-drag{cursor:grabbing}
.gs-stage canvas:focus-visible{outline:2px solid var(--gs-gold);outline-offset:2px}
.gs-coords{position:absolute;left:0;bottom:20px;font-size:12px;letter-spacing:.04em;color:var(--gs-muted);font-variant-numeric:tabular-nums;pointer-events:none}
.gs-coords b{color:var(--gs-fg);font-weight:500}

.gs-steps{min-width:0}
.gs-step{min-height:88vh;display:flex;flex-direction:column;justify-content:center;padding-block:24px;opacity:.35;transition:opacity .5s ease}
.gs-step.is-on{opacity:1}
.gs-step:first-child{min-height:70vh}
.gs-step:last-child{min-height:95vh}
.gs-card{display:flex;flex-direction:column;gap:10px}
.gs-kicker{font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gs-gold)}
.gs-card h3{font-family:"Playfair Display",Georgia,serif;font-weight:600;font-size:clamp(26px,3vw,38px);line-height:1.12;margin:0;color:var(--gs-fg);text-wrap:balance}
.gs-card p{margin:0;max-width:40ch;color:var(--gs-muted);font-size:16px;line-height:1.65}
.gs-meta{font-size:12px;color:var(--gs-muted);letter-spacing:.04em;font-variant-numeric:tabular-nums}

.gs-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.gs-chips button{font:500 13px/1 Inter,system-ui,sans-serif;color:var(--gs-fg);background:transparent;border:1px solid var(--gs-line);border-radius:999px;padding:8px 13px;cursor:pointer;transition:border-color .2s,color .2s}
.gs-chips button:hover,.gs-chips button[aria-pressed="true"]{border-color:var(--gs-gold);color:var(--gs-gold)}
.gs-chips button:focus-visible,.gs-cta:focus-visible{outline:2px solid var(--gs-gold);outline-offset:2px}
.gs-cta{align-self:flex-start;margin-top:10px;display:inline-block;background:var(--gs-gold);color:#0c0f1c;font-weight:600;font-size:15px;text-decoration:none;padding:13px 22px;border-radius:8px;transition:background .2s}
.gs-cta:hover{background:var(--gs-gold-2)}

.gs-tip{position:absolute;z-index:3;min-width:200px;max-width:260px;background:var(--gs-card);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--gs-line);border-left:2px solid var(--gs-gold);border-radius:6px;padding:10px 14px;pointer-events:none;transform:translate(14px,-50%);transition:opacity .2s}
.gs-tip span{display:block;font-size:10.5px;font-weight:600;color:var(--gs-gold);letter-spacing:.12em;margin-bottom:4px}
.gs-tip strong{display:block;font-family:"Playfair Display",Georgia,serif;font-weight:600;font-size:19px;line-height:1.2;color:var(--gs-fg)}
.gs-tip p{margin:4px 0 0;font-size:13px;line-height:1.45;color:var(--gs-fg)}
.gs-tip small{display:block;margin-top:6px;font-size:11px;color:var(--gs-muted)}

@media (max-width:860px){
  .globe-section{padding-top:72px}
  .gs-story{grid-template-columns:1fr;gap:0}
  .gs-stage{height:56vh;height:56svh;z-index:1}
  .gs-steps{position:relative;z-index:2;margin-top:-4vh}
  .gs-step,.gs-step:first-child{min-height:70vh;justify-content:flex-end;padding-bottom:6vh;opacity:1}
  .gs-step:last-child{min-height:78vh}
  .gs-card{background:var(--gs-card);border:1px solid var(--gs-line);border-radius:10px;padding:18px 20px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
  .gs-coords{bottom:10px}
}
@media (prefers-reduced-motion:reduce){
  .gs-step,.gs-stage canvas{transition:none}
}
