/* =========================================================
   CAREKA DIGITAL — V57 HERO COLADO AO TOPO
   Elimina completamente a faixa escura alta antes da caixa/vídeo.
   O vídeo começa no topo real da viewport e o conteúdo encaixa logo
   abaixo do header fixo, com respiro mínimo premium.
   ========================================================= */

html{
  scroll-padding-top:calc(var(--ck-fixed-header-offset, 112px) + 16px)!important;
}

/* Compensa o padding-top global do body causado pelo header fixo.
   Assim o background/vídeo do hero começa no topo da tela, atrás do header. */
body .home-hero.hero-with-video,
body .hero-prologue.home-hero.hero-with-video{
  margin-top:calc(var(--ck-fixed-header-offset, 112px) * -1)!important;
  padding-top:0!important;
  padding-bottom:clamp(18px,3vw,42px)!important;
  min-height:100svh!important;
  display:block!important;
  align-items:initial!important;
  justify-content:initial!important;
  overflow:hidden!important;
}

/* O vídeo/poster ocupa a tela inteira desde o topo. */
body .home-hero.hero-with-video .hero-video-layer,
body .home-hero.hero-with-video::before,
body .home-hero.hero-with-video .hero-overlay{
  top:0!important;
  bottom:0!important;
}

/* O frame do conteúdo começa imediatamente após o header. */
body .home-hero.hero-with-video .hero-prologue__frame,
body .home-hero.hero-with-video .hero-content{
  padding-top:calc(var(--ck-fixed-header-offset, 112px) + clamp(4px,.8vw,10px))!important;
  margin-top:0!important;
  width:min(calc(100% - clamp(20px,4.6vw,72px)),1460px)!important;
  gap:clamp(12px,1.5vw,22px)!important;
}

/* Caixa principal: encaixe premium na primeira dobra, sem descer demais. */
body .home-hero.hero-with-video .hero-copy-main{
  margin-top:0!important;
  min-height:calc(100svh - var(--ck-fixed-header-offset, 112px) - clamp(16px,2vw,28px))!important;
  padding:clamp(28px,4vw,60px)!important;
  display:grid!important;
  align-items:center!important;
}

/* Remove qualquer centralização vertical antiga que criava o espaço escuro. */
body .hero-prologue,
body .home-hero.hero-with-video,
body [data-hero-prologue]{
  place-items:initial!important;
  place-content:initial!important;
}

/* Neutraliza regras antigas do hero que empurravam o bloco para baixo. */
body .home-hero.hero-with-video .hero-copy-main,
body .home-hero.hero-with-video .hero-prologue__frame,
body .home-hero.hero-with-video .hero-content{
  transform:none!important;
}

@media (min-width:1440px){
  body .home-hero.hero-with-video .hero-prologue__frame,
  body .home-hero.hero-with-video .hero-content{
    padding-top:calc(var(--ck-fixed-header-offset, 112px) + 6px)!important;
  }

  body .home-hero.hero-with-video .hero-copy-main{
    min-height:calc(100svh - var(--ck-fixed-header-offset, 112px) - 22px)!important;
  }
}

@media (max-width:1160px){
  body .home-hero.hero-with-video .hero-prologue__frame,
  body .home-hero.hero-with-video .hero-content{
    padding-top:calc(var(--ck-fixed-header-offset, 104px) + 6px)!important;
    width:min(100% - 24px,1120px)!important;
  }

  body .home-hero.hero-with-video .hero-copy-main{
    min-height:calc(100svh - var(--ck-fixed-header-offset, 104px) - 18px)!important;
  }
}

@media (max-width:820px){
  body .home-hero.hero-with-video .hero-prologue__frame,
  body .home-hero.hero-with-video .hero-content{
    padding-top:calc(var(--ck-fixed-header-offset, 100px) + 4px)!important;
    width:min(100% - 18px,100%)!important;
  }

  body .home-hero.hero-with-video .hero-copy-main{
    min-height:calc(100svh - var(--ck-fixed-header-offset, 100px) - 14px)!important;
    padding:24px 20px!important;
    border-radius:22px!important;
  }
}

@media (max-width:560px){
  body .home-hero.hero-with-video .hero-prologue__frame,
  body .home-hero.hero-with-video .hero-content{
    padding-top:calc(var(--ck-fixed-header-offset, 88px) + 3px)!important;
    width:min(100% - 12px,100%)!important;
  }

  body .home-hero.hero-with-video .hero-copy-main{
    min-height:calc(100svh - var(--ck-fixed-header-offset, 88px) - 10px)!important;
    padding:20px 16px!important;
  }
}
