/* Keep every production page hero to one desktop viewport. */
@media (min-width: 981px) {
  body.page-thomas-home main > .opening,
  body:not(.page-thomas-home) main#main-content > .hero,
  body.page-khoangsan main > .minerals-hero,
  body.page-bandan main > .siltron-hero,
  body.page-batdongsan main > .estate-hero,
  body.page-xangdau main > .petro-hero,
  body.page-aitruyenthong main > .hero,
  body.page-muasapnhap main > .ma-hero {
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: none !important;
  }

  body.page-thomas-home main > .opening > .opening-inner {
    height: 100% !important;
    min-height: 100% !important;
  }

  body.page-thomas-home main > .opening .opening-media {
    top: 0 !important;
    bottom: 0 !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
  }

  body.page-thomas-home main > .opening .opening-image {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    object-fit: cover !important;
    transform: none !important;
  }

  body:not(.page-thomas-home) main#main-content > .hero .hero-media,
  body.page-bandan main > .siltron-hero .hero-media,
  body.page-batdongsan main > .estate-hero .hero-media,
  body.page-xangdau main > .petro-hero .hero-media,
  body.page-aitruyenthong main > .hero .hero-media,
  body.page-muasapnhap main > .ma-hero .hero-hall {
    height: 100% !important;
    max-height: none !important;
    transform: none !important;
    animation: none !important;
  }

  body:not(.page-thomas-home) main#main-content > .hero .hero-media img,
  body.page-bandan main > .siltron-hero .hero-media img,
  body.page-batdongsan main > .estate-hero .hero-media img,
  body.page-xangdau main > .petro-hero .hero-media img,
  body.page-aitruyenthong main > .hero .hero-media img,
  body.page-muasapnhap main > .ma-hero .hero-hall {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    object-fit: cover !important;
    transform: none !important;
    animation: none !important;
  }
}

@media (max-width: 980px) {
  body.page-thomas-home main > .opening,
  body:not(.page-thomas-home) main#main-content > .hero,
  body.page-khoangsan main > .minerals-hero,
  body.page-bandan main > .siltron-hero,
  body.page-batdongsan main > .estate-hero,
  body.page-xangdau main > .petro-hero,
  body.page-aitruyenthong main > .hero,
  body.page-muasapnhap main > .ma-hero {
    min-height: 100svh !important;
  }
}

/* About-page banner refinement: clean brand manifesto, no image-washing overlay. */
@media (min-width: 981px) {
  body.dg-shared-shell main#main-content > .hero .hero-media img {
    object-position: 55% center !important;
  }

  body.dg-shared-shell main#main-content > .hero .hero-copy {
    position: relative;
    z-index: 2;
    padding-bottom: clamp(150px, 18vh, 180px);
  }

  body.dg-shared-shell main#main-content > .hero .hero-copy::before {
    content: "";
    position: absolute;
    top: 6px;
    bottom: calc(clamp(150px, 18vh, 180px) + 4px);
    left: -22px;
    width: 2px;
    background: linear-gradient(#d9bb78, rgba(217, 187, 120, .12));
  }

  body.dg-shared-shell main#main-content > .hero #hero-title {
    max-width: 720px;
    padding: 0;
    color: #fff !important;
    font-size: clamp(54px, 4.7vw, 68px);
    font-weight: 300;
    line-height: 1.04;
    letter-spacing: -.035em;
    text-shadow: 0 3px 20px rgba(3, 19, 39, .52);
  }

  body.dg-shared-shell main#main-content > .hero #hero-title span {
    padding: 0;
  }

  body.dg-shared-shell main#main-content > .hero #hero-title span + span {
    margin-top: .08em;
  }

  body.dg-shared-shell main#main-content > .hero .hero-slogan {
    max-width: 620px;
    margin-top: 24px;
    color: #f1d893 !important;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: .15em;
    text-shadow: 0 2px 14px rgba(3, 19, 39, .68);
  }
}

@media (max-width: 980px) {
  body.dg-shared-shell main#main-content > .hero .hero-copy {
    z-index: 2;
    padding-bottom: 108px;
  }

  body.dg-shared-shell main#main-content > .hero #hero-title {
    max-width: 330px;
    padding: 0;
    color: #fff !important;
    font-size: clamp(38px, 10.5vw, 44px);
    font-weight: 300;
    line-height: 1.12;
    letter-spacing: -.025em;
    text-shadow: 0 3px 18px rgba(3, 19, 39, .58);
  }

  body.dg-shared-shell main#main-content > .hero #hero-title span {
    padding: 0;
  }

  body.dg-shared-shell main#main-content > .hero .hero-slogan {
    max-width: 300px;
    margin-top: 20px;
    color: #f0d18a !important;
    font-size: 10px;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: .13em;
    text-shadow: 0 2px 12px rgba(3, 19, 39, .7);
  }
}
