/* Brawnd hero refinement v2
   Keeps the two-line promise deliberate, trims unused vertical space and preserves
   the block animation without forcing the hero to fill a full viewport. */

.b2-hero {
  min-height: 0 !important;
  padding: 118px 0 62px !important;
}

.b2-hero .hero-grid {
  min-height: 0 !important;
  align-items: start !important;
}

.b2-hero .hero-copy {
  max-width: 820px;
}

.b2-hero .hero-headline {
  max-width: 820px;
  margin-top: 0 !important;
  font-size: clamp(56px, 5.55vw, 88px) !important;
  line-height: .94 !important;
  letter-spacing: -.04em !important;
}

.b2-hero .hero-dynamic-slot {
  display: block;
  min-height: 1.18em;
  margin-top: .035em;
  font-size: .88em;
  line-height: 1.12;
}

.b2-hero .hero-dynamic-prefix {
  font-family: var(--editorial);
  font-style: italic;
  font-weight: 550;
  letter-spacing: -.034em;
  line-height: 1.12;
  color: var(--soft);
}

/* Keep the sentence editorial and restrained, but give the changing promise
   a quiet Brawnd signature. The gradient stays inside the warm ivory/wine
   family rather than using a bright tech-style treatment. */
.b2-hero .hero-dynamic-text {
  color: #eadde1;
  line-height: 1.12 !important;
  padding-bottom: .1em;
  background: linear-gradient(96deg, #f3eee9 0%, #e3c8d0 52%, #bf7189 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.b2-hero .hero-copy > p {
  max-width: 640px !important;
  margin-top: 22px !important;
}

.b2-hero .hero-actions {
  margin-top: 28px !important;
}

.b2-hero .hero-visual {
  height: 430px !important;
  margin-top: 44px;
}

@media (max-width: 980px) {
  .b2-hero {
    padding: 108px 0 58px !important;
  }

  .b2-hero .hero-copy {
    max-width: 700px;
  }

  .b2-hero .hero-headline {
    max-width: 700px;
    font-size: clamp(50px, 7vw, 68px) !important;
  }

  .b2-hero .hero-dynamic-slot {
    font-size: .9em;
  }

  .b2-hero .hero-visual {
    height: 390px !important;
    margin-top: 36px;
  }
}

@media (max-width: 760px) {
  .b2-hero {
    padding: 98px 0 54px !important;
  }

  .b2-hero .hero-grid {
    gap: 30px !important;
  }

  .b2-hero .hero-copy {
    max-width: none;
  }

  .b2-hero .hero-headline {
    max-width: 100%;
    font-size: clamp(42px, 11.4vw, 56px) !important;
    line-height: .95 !important;
  }

  .b2-hero .hero-dynamic-slot {
    min-height: 1.2em;
    margin-top: .06em;
    font-size: .92em;
    line-height: 1.13;
  }

  .b2-hero .hero-dynamic-prefix,
  .b2-hero .hero-dynamic-text {
    line-height: 1.13 !important;
  }

  .b2-hero .hero-copy > p {
    max-width: 34rem !important;
    margin-top: 20px !important;
  }

  .b2-hero .hero-actions {
    margin-top: 24px !important;
  }

  .b2-hero .hero-visual {
    height: 280px !important;
    margin-top: 0;
  }
}

@media (max-width: 640px) {
  .b2-hero .hero-headline {
    font-size: clamp(42px, 12vw, 52px) !important;
  }
}