/*
 * Shared interior-page hero system.
 * These heroes use the Home page's navy field, editorial typography, and
 * widely distributed circle motif without copying its framework illustration.
 */

.smes-interior-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  width: 100vw !important;
  max-width: 100vw !important;
  min-height: clamp(27rem, 48vw, 35rem);
  align-items: center;
  margin-inline: calc(50% - 50vw) !important;
  padding-block: clamp(4.75rem, 8vw, 7rem);
  overflow: hidden;
  color: var(--smes-white);
  background: linear-gradient(135deg, #102a43 0%, #102a43 55%, #12384a 100%);
}

.smes-interior-hero::before,
.smes-interior-hero::after,
.smes-interior-hero > .smes-container::before,
.smes-interior-hero > .smes-container::after {
  position: absolute;
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.smes-interior-hero::before {
  z-index: 0;
  top: clamp(-17rem, -15vw, -10rem);
  right: clamp(-10rem, -6vw, -4rem);
  width: clamp(24rem, 36vw, 36rem);
  aspect-ratio: 1;
  border: 1px solid rgba(240, 215, 157, 0.26);
}

.smes-interior-hero::after {
  z-index: 0;
  bottom: clamp(-9rem, -8vw, -5rem);
  left: clamp(1rem, 5vw, 6rem);
  width: clamp(12rem, 17vw, 17rem);
  aspect-ratio: 1;
  border: 1px solid rgba(86, 170, 167, 0.18);
}

.smes-interior-hero > .smes-container {
  position: relative;
  z-index: 1;
  isolation: isolate;
  width: var(--smes-shell) !important;
  max-width: 78rem !important;
  margin-inline: auto !important;
}

.smes-interior-hero > .smes-container::before {
  z-index: -1;
  top: -5rem;
  left: 48%;
  width: clamp(7rem, 10vw, 10rem);
  aspect-ratio: 1;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.smes-interior-hero > .smes-container::after {
  z-index: -1;
  right: 13%;
  bottom: -20rem;
  width: clamp(19rem, 28vw, 28rem);
  aspect-ratio: 1;
  border: 1px solid rgba(86, 170, 167, 0.12);
}

.smes-interior-hero > .smes-container > * {
  position: relative;
  z-index: 1;
  max-width: 52rem;
}

.smes-interior-hero .smes-eyebrow {
  color: var(--smes-gold-light);
}

.smes-interior-hero .smes-page-title {
  max-width: 15ch;
  margin-block: 0 1.5rem;
  color: var(--smes-white) !important;
  font-size: clamp(3.15rem, 5.6vw, 5.35rem);
  line-height: 0.98;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08);
}

.smes-interior-hero .smes-lead,
.smes-interior-hero .wp-block-post-excerpt {
  max-width: 44rem;
  color: #dbe5ea;
}

.smes-interior-hero .wp-block-post-excerpt p {
  margin: 0;
  color: inherit;
  font-size: clamp(1.1rem, 1.6vw, 1.38rem);
  line-height: 1.62;
}

.smes-interior-hero::selection,
.smes-interior-hero *::selection {
  background: var(--smes-gold-light);
  color: var(--smes-navy-deep);
}

@media (max-width: 600px) {
  .smes-interior-hero {
    min-height: 25rem;
    padding-block: 3.75rem 4.5rem;
  }

  .smes-interior-hero .smes-page-title {
    max-width: 11.5ch;
    font-size: clamp(2.85rem, 13.5vw, 4rem);
    line-height: 0.98;
  }

  .smes-interior-hero::before {
    top: -8rem;
    right: -9rem;
    width: 20rem;
  }

  .smes-interior-hero::after {
    bottom: -6rem;
    left: -4rem;
    width: 12rem;
  }

  .smes-interior-hero > .smes-container::before {
    top: 42%;
    left: auto;
    right: 1rem;
    width: 7rem;
  }

  .smes-interior-hero > .smes-container::after {
    display: none;
  }
}
