/* ===== Globe Express Hero (v1.6.0) ===== */
:root{ --ges-gap:18px; --ges-radius:18px; }
.ges-hero{position:relative; overflow:hidden; background:#000; border-radius:18px;}
.ges-hero .ges-bg{position:absolute; inset:0; z-index:1;}
.ges-bg-slide{position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; transition:opacity .5s ease;}
.ges-bg-slide::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.45)); opacity:var(--overlay,.25);}
.ges-bg-slide.is-active{opacity:1;}

.ges-leftcopy{position:absolute; left:40px; top:50%; transform:translateY(-50%); z-index:2; max-width:min(560px,48%);}
.ges-location{font: 600 14px/1.2 Inter,system-ui; letter-spacing:.5px; color:#ffffffcc; margin:8px 0 10px;}
.ges-title{font-family:"Bebas Neue", sans-serif; line-height:.9; margin:6px 0 12px; text-transform:uppercase; color:#fff;}
.ges-title span{display:block; font-size:clamp(42px,8.2vw,92px); text-shadow:0 8px 18px rgba(0,0,0,.35);}
.ges-excerpt{font: 300 14px/1.6 Inter,system-ui; max-width:520px; margin-bottom:16px; color:#dcdcdc;}
.ges-btn{display:inline-block; padding:12px 22px; border-radius:999px; font:600 14px/1 Inter; text-decoration:none; transition:transform .2s ease,filter .2s ease;}
.ges-btn:hover{transform:translateY(-1px); filter:brightness(1.05);}

.ges-cards{position:absolute; z-index:3; right:40px; top:50%; transform:translateY(-50%); width:min(540px,42%);}
.ges-cards-track{display:flex; gap:var(--ges-gap); max-width:100%; overflow:visible; padding:8px; cursor:grab;}
.ges-card{flex:0 0 200px; height:300px; border-radius:var(--ges-radius); background-size:cover; background-position:center; position:relative; user-select:none; filter: drop-shadow(0 30px 50px rgba(0,0,0,.45)); order:0; opacity:.85;}
.ges-card.is-active{transform:scale(1.06) translateY(-6px); z-index:2; filter: drop-shadow(0 36px 60px rgba(0,0,0,.5)); opacity:1;}
.ges-card::after{content:""; position:absolute; inset:0; border-radius:inherit; background:linear-gradient(180deg, rgba(0,0,0,0) 38%, rgba(0,0,0,.55) 78%, rgba(0,0,0,.75) 100%); pointer-events:none;}
.ges-card-kicker{position:absolute; left:14px; right:14px; bottom:74px; color:var(--ctext,#fff); font: 600 12px/1.2 Inter,system-ui; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.ges-card-title{position:absolute; left:14px; right:14px; bottom:22px; color:var(--ctext,#fff); font-family:Inter,system-ui; font-weight:800; line-height:1.1; text-transform:uppercase; letter-spacing:.4px; font-size:clamp(16px,2.2vw,22px); display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; text-overflow:ellipsis; word-break:break-word; hyphens:auto;}

.ges-nav{position:absolute; z-index:4; right:40px; top:calc(50% + 180px); width:min(540px,42%); display:flex; align-items:center; gap:12px; pointer-events:none;}
.ges-nav .ges-arrows{display:flex; gap:8px; pointer-events:auto;}
.ges-nav .ges-arrows button{width:42px; height:42px; border-radius:999px; border:1px solid rgba(255,255,255,.4); background:transparent; color:#fff; font-size:18px; display:grid; place-items:center; backdrop-filter: blur(8px);}
.ges-nav .ges-arrows button:hover{background:rgba(255,255,255,.15);}
.ges-progress{flex:1; height:3px; background:rgba(255,255,255,.35); border-radius:999px; overflow:hidden; position:relative;}
.ges-progress-bar{position:absolute; left:0; top:0; bottom:0; width:0%; background:#d8b45c; border-radius:999px; transition:width .35s ease;}
.ges-nav .ges-count{margin-left:auto; color:#fff; font:600 16px/1 Inter; opacity:.9; min-width:36px; text-align:right;}
.ges-nav .ges-count .ges-total{opacity:.8; margin-left:6px;}

.ges-copy-slide{position:absolute; left:40px; right:auto; top:50%; transform:translateY(-50%); opacity:0; transition:opacity .55s ease; z-index:2;}
.ges-copy-slide.is-active{opacity:1;}
.ges-copy-slide.leaving{opacity:0;}

.ges-ghost{position:absolute; inset:auto; z-index:1; background-size:cover; background-position:center; border-radius:18px; will-change:transform,border-radius,opacity; pointer-events:none;}

@media (max-width:900px){
  /* Mostrar solo títulos y botón, centrados; ocultar kicker/desc */
  .ges-location, .ges-excerpt{ display:none !important; }
  .ges-leftcopy, .ges-copy-slide{
    position:absolute !important; left:50% !important; top:38% !important;
    transform:translate(-50%,-50%) !important; width:92% !important; max-width:92% !important;
    text-align:center !important; z-index:7 !important; opacity:1 !important;
  }
  .ges-copy-slide:not(.is-active){ opacity:0 !important; }
  .ges-title span{ font-size:clamp(36px, 12.5vw, 76px) !important; }
  .ges-btn{ margin-top:14px !important; display:inline-block !important; }

  /* Tarjetas y navegación: abajo, centradas */
  .ges-cards{ position:absolute; left:50%; bottom:88px; top:auto; right:auto; transform:translateX(-50%); width:92%; z-index:3 !important; }
  .ges-cards-track{ gap:12px; padding:6px; }
  .ges-card{ flex-basis:140px; height:210px; border-radius:16px; }
  .ges-nav{ position:absolute; left:50%; bottom:22px; top:auto; right:auto; transform:translateX(-50%); width:92%; margin:0; justify-content:center; }
  .ges-nav .ges-count{ margin-left:12px; min-width:auto; }
}
