@import url("/assets/release-v1.0.6.css");

/* Version 1.0.6.1: unified image heroes for interior content pages. */
.page-hero {
  isolation: isolate;
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: clamp(580px, 44vw, 650px);
  min-height: 580px;
  padding: 0;
  overflow: hidden;
  background: #17191b;
}

.page-hero > .detail-photo {
  position: absolute;
  z-index: -3;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  background: #272727;
}

.page-hero > .detail-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.page-hero > .page-hero-shade {
  position: absolute;
  z-index: -2;
  inset: 0;
  max-width: none;
  background:
    linear-gradient(90deg, rgba(7, 8, 9, .96) 0%, rgba(7, 8, 9, .88) 36%, rgba(7, 8, 9, .58) 64%, rgba(7, 8, 9, .28) 100%),
    linear-gradient(rgba(0, 0, 0, .2), rgba(0, 0, 0, .28));
}

.page-hero > .page-hero-content {
  position: relative;
  z-index: 1;
  width: min(820px, 90vw);
  max-width: 820px;
  padding: 68px 5vw;
}

.page-hero .breadcrumb {
  color: #d4d4d4;
  margin-bottom: 42px;
}

.page-hero > .page-hero-content > p:last-child {
  color: #f0f0f0;
  max-width: 760px;
  text-shadow: 0 1px 2px #000;
}

.page-hero h1 {
  max-width: 780px;
  text-shadow: 0 2px 4px #0009;
}

.representative-image > .page-hero {
  margin: 0;
}

.representative-image > .image-caption {
  width: min(1180px, 90%);
  margin: .65rem auto 0;
}

.page-hero > .process-consultation-photo img { object-position: center 48%; }
.page-hero > .faq-consultation-photo img { object-position: center 47%; }
.page-hero > .service-area-photo img { object-position: center 52%; }

@media (width <= 900px) {
  .page-hero {
    height: 610px;
    min-height: 610px;
  }

  .page-hero > .page-hero-content {
    width: min(760px, 90vw);
    padding-top: 58px;
    padding-bottom: 58px;
  }

  .page-hero h1 { font-size: 52px; }
  .page-hero .breadcrumb { margin-bottom: 34px; }
}

@media (width <= 560px) {
  .page-hero {
    height: auto;
    min-height: 610px;
    align-items: center;
  }

  .page-hero > .page-hero-shade {
    background:
      linear-gradient(90deg, rgba(7, 8, 9, .96) 0%, rgba(7, 8, 9, .86) 62%, rgba(7, 8, 9, .7) 100%),
      linear-gradient(rgba(0, 0, 0, .22), rgba(0, 0, 0, .35));
  }

  .page-hero > .page-hero-content {
    width: 100%;
    max-width: none;
    padding: 48px 22px 52px;
  }

  .page-hero h1 {
    max-width: 100%;
    margin-bottom: 20px;
    font-size: clamp(37px, 10.5vw, 42px);
    line-height: 1.02;
  }

  .page-hero .breadcrumb {
    margin-bottom: 30px;
    font-size: 11px;
  }

  .page-hero > .page-hero-content > p:last-child {
    font-size: 15px;
    line-height: 1.62;
  }

  .page-hero > .process-consultation-photo img { object-position: 46% 50%; }
  .page-hero > .faq-consultation-photo img { object-position: 58% 50%; }
  .page-hero > .service-area-photo img { object-position: 50% 50%; }
}
