/*
 * ATC shared banner styles for standard WordPress pages
 * Generated from ATC Airport Secondary Pages CSS.
 */

/* =========================================================
   ATC Universal Compact Banner for Standard WordPress Pages
   ========================================================= */

/* Consistent sizing for banner elements */
.atc-secondary-page-banner,
.atc-secondary-page-banner * {
  box-sizing: border-box;
}

.atc-secondary-page-banner {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-height: 340px;
  margin: 0 0 32px;
  overflow: hidden;
  background: #14532d;
}

/* Featured image used as the banner background */
.atc-secondary-page-banner__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  transform: scale(1.01);
}

/* Background used when the page has no featured image */
.atc-secondary-page-banner__media--fallback {
  background:
    radial-gradient(
      circle at 82% 20%,
      rgba(199, 167, 108, 0.25),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      #0f3f22 0%,
      #14532d 55%,
      #166534 100%
    );
}

/* Dark overlay for image contrast */
.atc-secondary-page-banner__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(
      90deg,
      rgba(15, 63, 34, 0.97) 0%,
      rgba(20, 83, 45, 0.91) 43%,
      rgba(20, 83, 45, 0.56) 73%,
      rgba(20, 83, 45, 0.27) 100%
    );
}

/* Banner content */
.atc-secondary-page-banner__content {
  position: relative;
  z-index: 2;
  width: min(1120px, 92%);
  min-height: 310px;
  margin: 0 auto;
  padding: 38px 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  text-align: left;
}

/* Main page title */
.atc-secondary-page-banner__title {
  max-width: 900px;
  margin: 0 !important;
  padding: 0 !important;
  color: #ffffff !important;
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(38px, 4vw, 58px) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em;
  text-align: left !important;
  text-shadow: 0 3px 14px rgba(0, 0, 0, 0.3);
}

/* Optional page excerpt */
.atc-secondary-page-banner__excerpt {
  max-width: 820px;
  margin-top: 18px;
  padding: 0;
  color: #f3f4f6 !important;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px !important;
  line-height: 1.55 !important;
}

.atc-secondary-page-banner__excerpt p {
  margin: 0 !important;
  padding: 0 !important;
  color: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

/* Remove unwanted typography decorations from the theme */
.main.prose .atc-secondary-page-banner h1::before,
.main.prose .atc-secondary-page-banner h1::after,
.main.prose .atc-secondary-page-banner p::before,
.main.prose .atc-secondary-page-banner p::after {
  display: none !important;
  content: none !important;
}

/* Tablet */
@media (max-width: 980px) {
  .atc-secondary-page-banner {
    min-height: 320px;
  }

  .atc-secondary-page-banner__content {
    min-height: 320px;
    padding: 38px 0 34px;
  }

  .atc-secondary-page-banner__title {
    max-width: 780px;
    font-size: 42px !important;
  }

  .atc-secondary-page-banner__excerpt {
    max-width: 760px;
    font-size: 17px !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .atc-secondary-page-banner {
    min-height: 300px;
    margin-bottom: 24px;
  }

  .atc-secondary-page-banner__content {
    width: min(92%, 1120px);
    min-height: 300px;
    padding: 30px 0 28px;
  }

   .atc-secondary-page-banner__title {
    max-width: 100%;
    font-size: 32px !important;
    line-height: 1.12 !important;
  }

  .atc-secondary-page-banner__excerpt {
    max-width: 100%;
    margin-top: 14px;
    font-size: 16px !important;
    line-height: 1.5 !important;
  }

  .atc-secondary-page-banner__overlay {
    background:
      linear-gradient(
        90deg,
        rgba(15, 63, 34, 0.98) 0%,
        rgba(20, 83, 45, 0.93) 66%,
        rgba(20, 83, 45, 0.72) 100%
      );
  }
}

/* Small mobile devices */
@media (max-width: 480px) {
  .atc-secondary-page-banner {
    min-height: 280px;
  }

  .atc-secondary-page-banner__content {
    min-height: 280px;
    padding: 27px 0 25px;
  }

  .atc-secondary-page-banner__title {
    font-size: 29px !important;
  }

  .atc-secondary-page-banner__excerpt {
    font-size: 15px !important;
  }
}
