/*
 * GESTOR CLEAN — Imersivo: recuperação sem cortes + progresso centralizado.
 * Somente o estado de recuperação altera alturas e rolagem; a identificação
 * normal já aprovada fica intacta. Carregar após todos os estilos anteriores.
 */
@media(max-width:799px) {
  /* Step label visually centered over the five segments on EVERY step. */
  body.gc-booking-v81[data-gc-public-template="immersive"] #gc81-header.gc-header .gc-progress-meta {
    box-sizing:border-box!important;
    width:90px!important;
    min-width:90px!important;
    max-width:90px!important;
    text-align:center!important;
    inset:15px 14px auto auto!important;
  }
  body.gc-booking-v81[data-gc-public-template="immersive"] #gc81-header.gc-header #gc81-progress-count {
    display:block!important;
    width:100%!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
  body.gc-booking-v81[data-gc-public-template="immersive"] #gc81-header.gc-header .gc-progress {
    width:90px!important;
    max-width:90px!important;
    right:14px!important;
  }
}
@media(max-width:359px) {
  body.gc-booking-v81[data-gc-public-template="immersive"] #gc81-header.gc-header .gc-progress-meta {
    width:75px!important;
    min-width:75px!important;
    max-width:75px!important;
  }
  body.gc-booking-v81[data-gc-public-template="immersive"] #gc81-header.gc-header .gc-progress {
    width:75px!important;
    max-width:75px!important;
  }
}
@media(min-width:800px) {
  body.gc-booking-v81[data-gc-public-template="immersive"] #gc81-header.gc-header .gc-progress-meta {
    box-sizing:border-box!important;
    width:140px!important;
    min-width:140px!important;
    max-width:140px!important;
    text-align:center!important;
    inset:calc(var(--gc-stable-head-top) + 6px) var(--gc-stable-head-side) auto auto!important;
  }
  body.gc-booking-v81[data-gc-public-template="immersive"] #gc81-header.gc-header #gc81-progress-count {
    display:block!important;
    width:100%!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
}

/* :has is supported by modern Chrome Android and keeps the recovery-specific
 * layout isolated from the normal first screen without changing booking state.
 */
@media(max-width:799px) {
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) {
    height:auto!important;
    min-height:100dvh!important;
    max-height:none!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:auto!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) .shell.gc-booking,
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) .gc-booking-shell {
    display:flex!important;
    flex-direction:column!important;
    height:auto!important;
    min-height:100dvh!important;
    max-height:none!important;
    overflow:visible!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) main.gc-main {
    display:block!important;
    flex:1 0 auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    padding:0 0 calc(16px + env(safe-area-inset-bottom))!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) #step2.gc-screen.active {
    display:flex!important;
    flex-direction:column!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    gap:0!important;
  }

  /* Resume is a task, not a second marketing landing page. Remove the three
   * promotional benefits ONLY in this state, preserving the configured photo.
   */
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) #step2.gc-screen.active .gc91-trust {
    display:none!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) #step2.gc-screen.active .gc-e1-intro {
    display:flex!important;
    justify-content:flex-start!important;
    height:auto!important;
    min-height:205px!important;
    max-height:none!important;
    padding:17px 18px 53px!important;
    overflow:hidden!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) #step2.gc-screen.active .gc-e1-intro .gc-hero-content h1 {
    max-width:18ch!important;
    margin:0!important;
    font-size:clamp(1.85rem,7.5vw,2.35rem)!important;
    line-height:1.03!important;
    letter-spacing:-.055em!important;
    text-wrap:balance!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) #step2.gc-screen.active .gc-e1-intro .gc-hero-content > p {
    max-width:48ch!important;
    margin:8px 0 0!important;
    font-size:clamp(.77rem,3.1vw,.88rem)!important;
    line-height:1.38!important;
  }

  /* Recovery card: same premium treatment, less repetition and unused space. */
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode {
    box-sizing:border-box!important;
    position:relative!important;
    width:calc(100% - 28px)!important;
    margin:-39px auto 0!important;
    padding:15px 17px 17px!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    border-radius:24px!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-e1-card-head {
    min-height:0!important;
    margin:0 0 8px!important;
    padding-left:52px!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc91-card-icon {
    width:42px!important;
    height:42px!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-e1-card-step {
    margin:0 0 4px!important;
    font-size:.67rem!important;
    letter-spacing:.09em!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode h2 {
    font-size:clamp(1.32rem,5.6vw,1.62rem)!important;
    line-height:1.12!important;
    text-wrap:balance!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-e1-card-head > p {
    width:calc(100% + 52px)!important;
    margin:6px 0 0 -52px!important;
    font-size:.79rem!important;
    line-height:1.38!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-resume-card {
    margin:10px 0 0!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-e1-resume-summary {
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr)!important;
    align-items:center!important;
    gap:9px!important;
    padding:12px!important;
    border-radius:15px!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-resume-mark {
    width:42px!important;
    height:42px!important;
    border-radius:13px!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-e1-resume-summary strong {
    font-size:.86rem!important;
    line-height:1.24!important;
    margin-bottom:3px!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-e1-resume-summary span:not(.gc-resume-mark):not(.gc-e1-resume-tag) {
    font-size:.73rem!important;
    line-height:1.32!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-e1-resume-tag {
    margin:0!important;
    font-size:.62rem!important;
    padding:3px 8px!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-e1-start-fresh {
    min-height:44px!important;
    margin:9px 0 0!important;
    padding:9px 12px!important;
    font-size:.77rem!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-privacy {
    margin:9px 0 0!important;
    padding:0!important;
    font-size:.71rem!important;
    line-height:1.36!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-customer-entry {
    margin:9px 0 0!important;
    padding:9px 0 0!important;
    min-height:0!important;
    gap:8px!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .gc-customer-entry-btn {
    min-height:44px!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .sticky.gc-actions.gc-immersive-in-card {
    margin:9px 0 0!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode .sticky.gc-actions.gc-immersive-in-card button.primary.gc-action {
    min-height:50px!important;
    width:100%!important;
  }
}
@media(max-width:359px) {
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) #step2.gc-screen.active .gc-e1-intro {
    min-height:215px!important;
    padding:16px 15px 49px!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) #step2.gc-screen.active .gc-e1-intro .gc-hero-content h1 {
    font-size:clamp(1.78rem,7.2vw,2rem)!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"] #step2.gc-screen.active .gc-e1-contact.gc-resume-mode {
    padding:14px 14px 16px!important;
  }
}

/* Consistent desktop header position when long catalog/short lead toggles the
 * vertical scrollbar. Reserve its gutter for BOTH screens instead of shifting
 * the logo and progress horizontally as the journey advances. */
@media(min-width:800px) {
  html:has(body.gc-booking-v81[data-gc-public-template="immersive"]) {
    scrollbar-gutter:stable!important;
  }
  /* Desktop recovery must be scrollable too on smaller laptop windows. */
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) {
    height:auto!important;
    min-height:100dvh!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) .shell.gc-booking,
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) .gc-booking-shell {
    display:flex!important;
    flex-direction:column!important;
    height:auto!important;
    max-height:none!important;
    min-height:100dvh!important;
    overflow:visible!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) main.gc-main {
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  body.gc-booking-v81.gc85-identification[data-gc-public-template="immersive"]:has(#step2 .gc-e1-contact.gc-resume-mode) #step2.gc-screen.active {
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
}
