/* GE 2.5.281 - processamento global, confirmação sem flash e refinamentos mobile. */

/* As confirmações antigas ficam invisíveis desde o primeiro desenho da página. */
[data-gs-notice-modal].gs-notice-modal--ok,
[data-gs-notice-modal].gs-notice-modal--success,
[data-ge-client-notice].is-ok,
[data-career-success-modal]{visibility:hidden!important;opacity:0!important;pointer-events:none!important}

/* Bloqueio total durante carregamentos e operações assíncronas. */
html.ge5d-page-is-loading,
html.ge5d-page-is-loading body,
html.ge5d-processing-active,
html.ge5d-processing-active body{
  overflow:hidden!important;
  overscroll-behavior:none!important;
  touch-action:none!important;
}
html.ge5d-page-is-loading::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:1000000;
  display:block;
  background:rgba(0,0,0,.86);
  backdrop-filter:blur(13px);
  -webkit-backdrop-filter:blur(13px);
  pointer-events:all;
}
html.ge5d-page-is-loading::after{
  content:"";
  position:fixed;
  top:50%;
  left:50%;
  z-index:1000001;
  width:clamp(78px,12vw,112px);
  aspect-ratio:1;
  border:2px solid rgba(232,212,139,.14);
  border-top-color:var(--fived-gold-light);
  border-right-color:var(--fived-gold);
  border-radius:50%;
  box-shadow:0 0 0 1px rgba(201,168,76,.10),0 0 54px rgba(201,168,76,.22);
  transform:translate(-50%,-50%);
  animation:ge5dInitialSpin .9s linear infinite;
  pointer-events:none;
}
@keyframes ge5dInitialSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}

.ge5d-global-processing.ge-pay-processing{
  position:fixed!important;
  inset:0!important;
  z-index:10070!important;
  display:grid!important;
  place-items:center!important;
  padding:18px!important;
  background:rgba(0,0,0,.86)!important;
  backdrop-filter:blur(13px)!important;
  -webkit-backdrop-filter:blur(13px)!important;
  pointer-events:all!important;
}
.ge5d-global-processing.ge-pay-processing[hidden]{display:none!important}
.ge5d-global-processing.ge-pay-processing>div{
  width:min(460px,100%)!important;
  display:grid!important;
  justify-items:center!important;
  gap:15px!important;
  padding:30px!important;
  border:1px solid rgba(201,168,76,.46)!important;
  border-radius:20px!important;
  background:linear-gradient(155deg,#191919,#090909)!important;
  box-shadow:0 28px 90px rgba(0,0,0,.62)!important;
  color:var(--fived-ivory)!important;
  text-align:center!important;
}
.ge5d-global-processing .ge-pay-spinner{
  position:relative!important;
  width:clamp(78px,12vw,112px)!important;
  aspect-ratio:1!important;
  border:2px solid rgba(232,212,139,.14)!important;
  border-top-color:var(--fived-gold-light)!important;
  border-right-color:var(--fived-gold)!important;
  border-radius:50%!important;
  box-shadow:0 0 0 1px rgba(201,168,76,.10),0 0 54px rgba(201,168,76,.22)!important;
  animation:ge5dPaySpin .9s linear infinite!important;
}
.ge5d-global-processing .ge-pay-spinner::before{
  content:""!important;
  position:absolute!important;
  inset:16px!important;
  border:1px solid rgba(245,240,232,.10)!important;
  border-left-color:var(--fived-gold-light)!important;
  border-radius:50%!important;
  animation:ge5dPaySpinReverse 1.15s linear infinite!important;
}
@keyframes ge5dPaySpin{to{transform:rotate(360deg)}}
@keyframes ge5dPaySpinReverse{to{transform:rotate(-360deg)}}
.ge5d-global-processing strong{
  color:#fff!important;
  font:400 clamp(27px,6vw,38px)/1 "Cormorant Garamond",serif!important;
}
.ge5d-global-processing small{
  color:rgba(245,240,232,.7)!important;
  font:400 13px/1.5 "DM Sans",sans-serif!important;
}

/* Sem realce azul de toque, preservando o foco de teclado. */
html *,
html *::before,
html *::after{-webkit-tap-highlight-color:transparent!important}
@media(hover:none) and (pointer:coarse){
  :focus:not(:focus-visible){outline:none!important}
}

@media(max-width:768px){
  .ge-reserva-v3 .ge-package-card h3{
    font-size:clamp(28px,8.5vw,34px)!important;
    line-height:1.05!important;
  }
  body .ge5d-swp-card--media .ge5d-swp-title{
    font-size:clamp(30px,9vw,36px)!important;
    line-height:1.05!important;
  }
}
