/* CRIAI HERO V3 — composição única, container real e responsivo */
.hero {
  min-height: 700px;
  overflow: hidden;
}
.hero .hero-grid {
  width: min(var(--max), calc(100% - 48px));
  min-height: 612px;
  padding-top: 34px;
  display: grid;
  grid-template-columns: minmax(360px, 0.82fr) minmax(0, 1.18fr);
  align-items: center;
  gap: clamp(24px, 3vw, 52px);
}
.hero .hero-copy {
  width: 100%;
  max-width: 510px;
  padding-left: 0;
  position: relative;
  z-index: 3;
}
.hero .hero-copy h1 {
  width: auto;
  max-width: 500px;
  font-size: clamp(3.2rem, 4.7vw, 5rem);
  line-height: .98;
  letter-spacing: -.055em;
}
.hero .hero-title-line {
  display: block;
  white-space: nowrap;
}
.hero .hero-art-v3 {
  position: relative;
  width: 100%;
  min-width: 0;
  height: auto;
  min-height: 520px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
  z-index: 2;
}
.hero .hero-art-v3::before,
.hero .hero-art-v3::after {
  content: none !important;
}
.hero .hero-composition {
  position: static !important;
  width: min(100%, 790px) !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 570px !important;
  object-fit: contain;
  transform: none !important;
  margin: 0 auto;
  filter: drop-shadow(0 26px 28px rgba(0,0,0,.58));
}
.floating-whatsapp {
  right: max(22px, calc((100vw - var(--max))/2 + 22px));
}
@media (max-width: 1180px) {
  .hero .hero-grid {
    grid-template-columns: minmax(330px, .9fr) minmax(0, 1.1fr);
    gap: 22px;
  }
  .hero .hero-copy h1 {font-size: clamp(3rem, 4.6vw, 4.35rem);}
  .hero .hero-composition {width: min(100%, 690px) !important; max-height: 520px !important;}
}
@media (max-width: 900px) {
  .hero {min-height: auto;}
  .hero .hero-grid {
    grid-template-columns: 1fr;
    min-height: auto;
    padding-top: 64px;
    padding-bottom: 34px;
    gap: 18px;
  }
  .hero .hero-copy {max-width: 620px; margin: 0 auto; text-align: center;}
  .hero .hero-copy h1 {max-width: 560px; margin-inline: auto;}
  .hero .hero-actions {justify-content: center;}
  .hero .hero-art-v3 {min-height: 390px;}
  .hero .hero-composition {width: min(92%, 650px) !important; max-height: 440px !important;}
  .floating-whatsapp {right: 18px;}
}
@media (max-width: 560px) {
  .hero .hero-grid {width: min(100% - 30px, var(--max)); padding-top: 42px;}
  .hero .hero-copy h1 {font-size: clamp(2.6rem, 12vw, 3.65rem);}
  .hero .hero-title-line {white-space: normal;}
  .hero .hero-art-v3 {min-height: 285px;}
  .hero .hero-composition {width: 100% !important; max-height: 320px !important;}
}


/* CRIAI V3.1 — refinamento aprovado: header compacto + integração visual da Hero */
@media (min-width: 861px) {
  .site-header { height: 74px; }
  .header-shell {
    width: min(1460px, calc(100% - 40px));
    grid-template-columns: 220px minmax(440px, 1fr) 230px;
    gap: 18px;
  }
  .brand img { width: 182px; max-height: 54px; }
  .main-nav a { font-size: .80rem; padding: 24px 7px; letter-spacing: .072em; }
  .main-nav a:after { bottom: 12px; }
  .header-cta { padding: 10px 15px; font-size: .76rem; gap: 7px; border-radius: 5px; }
  .header-cta img { width: 19px; height: 19px; }
  .hero { padding-top: 74px; }
  .hero .hero-grid { min-height: 626px; padding-top: 22px; }
}
.hero .hero-art-v3::before {
  content: "" !important;
  position: absolute;
  width: 92%;
  height: 70%;
  left: 4%;
  top: 16%;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(190,20,29,.19) 0%, rgba(106,9,16,.11) 43%, transparent 72%);
  filter: blur(28px);
  pointer-events: none;
  z-index: -1;
}
.hero .hero-composition {
  filter: drop-shadow(0 24px 26px rgba(0,0,0,.54)) drop-shadow(0 0 12px rgba(130,14,20,.10));
}
@media (max-width: 1180px) and (min-width: 861px) {
  .header-shell { grid-template-columns: 190px 1fr 210px; gap: 12px; }
  .brand img { width: 168px; }
  .main-nav a { font-size: .73rem; }
  .header-cta { font-size: .70rem; padding: 9px 12px; }
}

/* CRIAI V5.21 — Hero Performance: atleta em levantamento terra */
@media (min-width: 901px) {
  .hero {
    background: linear-gradient(90deg,#050607 0%,#08090b 37%,#09090a 54%,#070708 100%);
  }
  .hero .hero-grid {
    grid-template-columns: minmax(390px,.78fr) minmax(0,1.22fr);
    gap: 6px;
  }
  .hero .hero-art-v3 {
    min-height: 626px;
    align-self: stretch;
    overflow: visible;
  }
  .hero .hero-composition {
    width: 112% !important;
    max-width: none !important;
    max-height: 626px !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: 58% center !important;
    margin-left: -4% !important;
    filter: none !important;
  }
  .hero .hero-copy { z-index: 5; }
  .hero .eyebrow { color: var(--red); }
  .hero h1 .hero-title-line:last-child { color: var(--red); }
}
@media (max-width: 900px) {
  .hero .hero-art-v3 { min-height: 360px; overflow: hidden; border-radius: 4px; }
  .hero .hero-composition {
    width: 100% !important;
    max-width: none !important;
    height: 360px !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: 60% center !important;
    filter: none !important;
  }
}
@media (max-width: 560px) {
  .hero .hero-art-v3 { min-height: 285px; }
  .hero .hero-composition { height: 285px !important; object-position: 61% center !important; }
}
