/* Carrasco Finance — hero com intro animada */

.cf-hero {
  position: relative;
  height: 100vh;
  height: 100svh;
  min-height: 560px;
  overflow: hidden;
  isolation: isolate;
  background: #0b1018;
  color: #f3efe9;
  font-family: 'Montserrat', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

.cf-stage {
  position: absolute;
  inset: 0;
  z-index: 0;
  will-change: transform;
}

.cf-scene {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.cf-scene text { font-family: inherit; }

/* enquanto as imagens carregam */
.cf-hero.is-loading .cf-stage { opacity: 0; }
.cf-stage { transition: opacity .4s ease; }

/* ---------- marca (peças recortadas da arte, em px da imagem) ---------- */

.cf-brand {
  position: absolute;
  left: 0;
  top: 0;
  width: 880px;
  height: 265px;
  margin: 0;
  transform-origin: 0 0;
  pointer-events: none;
}
.cf-brand h1,
.cf-brand p { margin: 0; font-size: inherit; font-weight: inherit; }
.cf-b { position: absolute; display: block; max-width: none; user-select: none; }
.cf-b-mark    { left: 7px;   top: 10px;  width: 200px; height: 186px; }
.cf-b-divider { left: 246px; top: 11px;  width: 6px;   height: 173px; transform-origin: 50% 50%; }
.cf-b-name    { left: 293px; top: 14px;  width: 577px; height: 107px; }
.cf-b-sub     { left: 299px; top: 142px; width: 498px; height: 42px; }
.cf-b-tagline { left: 20px;  top: 209px; width: 795px; height: 54px; }

/* ---------- pular intro ---------- */

.cf-skip {
  position: absolute;
  z-index: 3;
  right: 24px;
  bottom: 24px;
  padding: 10px 18px;
  border: 1px solid rgba(200, 135, 90, .4);
  border-radius: 999px;
  background: rgba(10, 15, 24, .55);
  color: #e8c9ae;
  font: 500 11px/1 'Montserrat', system-ui, sans-serif;
  letter-spacing: .22em;
  text-transform: uppercase;
  cursor: pointer;
  backdrop-filter: blur(6px);
  transition: border-color .2s, color .2s;
}
.cf-skip:hover,
.cf-skip:focus-visible { border-color: #e9ad7d; color: #fff; outline: none; }
.cf-hero.is-done .cf-skip { visibility: hidden; pointer-events: none; }

/* ---------- celular em pé ---------- */

@media (max-width: 900px) and (orientation: portrait) {
  .cf-scene {
    top: auto; bottom: 0; height: 66%;
    -webkit-mask-image: linear-gradient(to bottom, transparent, #000 22%);
    mask-image: linear-gradient(to bottom, transparent, #000 22%);
  }
  .cf-skip { right: 16px; bottom: 16px; }
}
