
/*
 * High-similarity visual separation, 2026-07-24.
 * Content, imagery, company data, functionality and custom sections remain
 * unchanged. These rules only recompose the repeated hero/page-hero pattern.
 */
html,
body.teas-page {
  width: 100% !important;
  max-width: none !important;
  overflow-x: clip !important;
}

.teas-page--home .teas-hero__content::before {
  display: none !important;
}

.teas-page--home .teas-hero h1 {
  max-width: 12em !important;
  font-size: clamp(36px, 4vw, 58px) !important;
  line-height: 1.22 !important;
  letter-spacing: -0.025em !important;
}

.teas-page--home .teas-button {
  min-width: 148px !important;
  min-height: 50px !important;
  padding: 13px 25px !important;
  border-radius: 3px !important;
}

@media screen and (min-width: 821px) {
  .teas-side-rail {
    display: none !important;
  }

  .teas-page main,
  .teas-page .teas-footer {
    width: 100% !important;
    margin-left: 0 !important;
  }

  .teas-page--home .teas-hero {
    width: min(calc(100% - 48px), 1540px) !important;
    height: min(76dvh, 760px) !important;
    min-height: 590px !important;
    margin: 18px auto 0 !important;
  }

  .teas-page--home .teas-hero__visual,
  .teas-page--home .teas-hero__visual img,
  .teas-page--home .teas-hero__content {
    height: 100% !important;
    min-height: 0 !important;
  }

  .teas-page--home .teas-hero__content {
    width: min(calc(100% - 96px), 1380px) !important;
    padding: 48px 0 !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article) {
    position: relative !important;
    width: min(calc(100% - 48px), 1540px) !important;
    min-height: 0 !important;
    margin: 18px auto 0 !important;
    overflow: hidden !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article)
    .teas-page-hero__copy,
  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article)
    .teas-page-hero__media {
    min-height: 0 !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article)
    .teas-page-hero__copy {
    height: auto !important;
  }
}

@media screen and (max-width: 820px) {
  body.teas-page,
  .teas-page main,
  .teas-page .teas-footer,
  .teas-header,
  .teas-header__inner {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .teas-page--home .teas-hero {
    width: 100% !important;
    height: min(72dvh, 650px) !important;
    min-height: 540px !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }

  .teas-page--home .teas-hero__visual,
  .teas-page--home .teas-hero__visual img,
  .teas-page--home .teas-hero__content {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
  }

  .teas-page--home .teas-hero__content {
    padding: 34px 22px !important;
  }

  .teas-page--home .teas-hero h1 {
    font-size: clamp(30px, 9.2vw, 40px) !important;
    line-height: 1.28 !important;
  }

  .teas-page--home .teas-button {
    min-width: 132px !important;
    min-height: 46px !important;
    padding: 11px 20px !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article) {
    width: 100% !important;
    margin: 0 !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article)
    .teas-page-hero__copy,
  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article)
    .teas-page-hero__media {
    min-height: 0 !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article)
    .teas-page-hero__copy {
    height: auto !important;
  }
}

/* Crisp: image-led hero with a compact, opaque information card. */
@media screen and (min-width: 821px) {
  .teas-page--home .teas-hero {
    border-radius: 2px !important;
  }

  .teas-page--home .teas-hero__visual::after {
    background: linear-gradient(
      90deg,
      rgba(16, 22, 29, 0.28),
      rgba(16, 22, 29, 0.06) 68%
    ) !important;
  }

  .teas-page--home .teas-hero__content {
    justify-content: flex-end !important;
    align-items: flex-start !important;
  }

  .teas-page--home .teas-hero__content > * {
    position: relative;
    z-index: 1;
  }

  .teas-page--home .teas-hero__content::after {
    position: absolute;
    bottom: 46px;
    left: 0;
    width: min(560px, 48%);
    height: 230px;
    border-left: 5px solid var(--teas-accent);
    background: rgba(22, 28, 35, 0.88);
    content: "";
  }

  .teas-page--home .teas-hero h1,
  .teas-page--home .teas-hero .teas-button {
    margin-left: 38px !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article) {
    display: grid !important;
    grid-template: "stage" 500px / 1fr !important;
    border-radius: 2px !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article)
    .teas-page-hero__media {
    grid-area: stage !important;
    height: 500px !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article)
    .teas-page-hero__copy {
    z-index: 2 !important;
    grid-area: stage !important;
    align-self: end !important;
    width: min(560px, 48%) !important;
    min-height: 190px !important;
    margin: 0 0 34px 34px !important;
    padding: 36px 42px !important;
    border-left: 5px solid var(--teas-accent) !important;
    background: rgba(25, 31, 39, 0.9) !important;
  }
}

@media screen and (max-width: 820px) {
  .teas-page--home .teas-hero__content {
    justify-content: flex-end !important;
    padding-bottom: 38px !important;
  }

  .teas-page--home .teas-hero__content::after {
    position: absolute;
    right: 42px;
    bottom: 24px;
    left: 0;
    height: 190px;
    border-left: 4px solid var(--teas-accent);
    background: rgba(18, 24, 31, 0.76);
    content: "";
  }

  .teas-page--home .teas-hero h1,
  .teas-page--home .teas-hero .teas-button {
    z-index: 1;
    margin-left: 18px !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article) {
    display: grid !important;
    grid-template: "mobile-stage" 370px / 1fr !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article)
    .teas-page-hero__media {
    grid-area: mobile-stage !important;
    height: 370px !important;
  }

  body.teas-page--sub
    .teas-page-hero:not(.teas-page-hero--article)
    .teas-page-hero__copy {
    z-index: 2 !important;
    grid-area: mobile-stage !important;
    align-self: end !important;
    width: calc(100% - 44px) !important;
    min-height: 124px !important;
    margin: 0 44px 24px 0 !important;
    padding: 24px !important;
    background: rgba(18, 24, 31, 0.76) !important;
    backdrop-filter: blur(5px);
  }

  body.teas-page--sub .teas-page-hero__copy > p,
  body.teas-page--sub .teas-page-hero__copy h1 {
    background: transparent !important;
    backdrop-filter: none !important;
  }
}
