/* GULF VIEW | SEO-18.5 | Public design contract | 2026-11-02
   Reusable public-site geometry + quiet champagne-gold outlines.
   This stylesheet is intentionally linked after the dynamic central theme and SEO18 footer fix.
   No changes to home hero, brand images, backend, data, status colors, buttons, fixed widgets.
*/
.gv-public-site {
  /* Derived from the centrally managed gold --brand-primary. */
  --gv-public-outline: color-mix(in srgb, var(--brand-primary) 30%, transparent);
  --gv-public-divider: color-mix(in srgb, var(--brand-primary) 21%, transparent);
  --border: var(--gv-public-outline);
  --border-soft: var(--gv-public-divider);
  --gv-inner-hero-block: 440px;
  --gv-inner-hero-tablet-min: 320px;
  --gv-inner-hero-mobile-min: 280px;
}

/* Scoped to public page banners only; the main/home hero is deliberately untouched.
   440px is the normal desktop envelope. Longer translated copy can expand safely. */
.gv-public-site .gv-site-main > :is(.gv-site-page-hero, .gv-site-hero:not(.is-home)) {
  block-size: auto !important;
  min-block-size: var(--gv-inner-hero-block) !important;
  max-block-size: none !important;
  height: auto !important;
  min-height: var(--gv-inner-hero-block) !important;
  max-height: none !important;
  box-sizing: border-box;
  align-items: center;
}
/* Preserve image cover and text position for central page-hero variants. */
.gv-public-site .gv-site-main > .gv-site-page-hero.is-brand-hero {
  justify-content: flex-end;
}
.gv-public-site .gv-site-main > .gv-site-page-hero.is-brand-hero > img,
.gv-public-site .gv-site-main > .gv-site-page-hero.has-media:not(.gv-service-page-hero):not(.is-brand-hero) > img {
  object-fit: cover;
}

/* Theme-based gold borders inherit in the header, nav, page cards, tables and footer.
   Keep explicit success, error, focus and active controls unchanged. */
.gv-public-site .gv-site-frame::before,
.gv-public-site .gv-site-frame::after {
  background: var(--gv-public-divider);
}

@media (max-width: 820px) {
  .gv-public-site .gv-site-main > :is(.gv-site-page-hero, .gv-site-hero:not(.is-home)) {
    block-size: auto !important;
    min-block-size: var(--gv-inner-hero-tablet-min) !important;
    min-height: var(--gv-inner-hero-tablet-min) !important;
    max-block-size: none !important;
  }
}
@media (max-width: 620px) {
  .gv-public-site .gv-site-main > :is(.gv-site-page-hero, .gv-site-hero:not(.is-home)) {
    block-size: auto !important;
    min-block-size: var(--gv-inner-hero-mobile-min) !important;
    min-height: var(--gv-inner-hero-mobile-min) !important;
    max-block-size: none !important;
  }
  /* Do not shrink/hide descriptive text for the sake of a fixed pixel height. */
  .gv-public-site .gv-site-main > .gv-site-page-hero.is-brand-hero {
    overflow: hidden;
  }
}
