@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600&family=Roboto:wght@400;600&family=Noto+Sans:wght@400;600&display=swap');
*{
    padding:0px;
    margin:0px;
}

/* HERO BANNER WRAPPER */
.hero-banner {
 position: relative;
 width: 100%;
  height: 100%;
 padding-bottom: 1rem;
/* overflow: hidden; */
 margin-bottom:60px;
}

 .hero-banner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  z-index: 1;
}

		/* --- Breadcrumb Styling for hero banner--- */
.hero-banner .breadcrumbs{
    position: absolute;
    top:0;
    z-index:3;
    display: block;
    width: 100%;
}

.hero-banner .c-breadcrumbs__list{
     padding: 2rem 0 0 5rem;
}
.hero-banner .c-breadcrumbs__item a {
    text-decoration: underline;
    color: #ffffff;
}
.hero-banner .c-breadcrumbs__name {
 color: #ffffff;
 font-size: 0.75rem;
}
.hero-banner .c-breadcrumbs__item::after {
    color: #ffffff;
}

@media (max-width: 767px) {
.hero-banner .c-breadcrumbs__list{
     padding: 2rem 0 0 1rem;
}
}

/* --- Core Teaser Styling --- */
.hero-banner .cmp-teaser__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  overflow: hidden;
}

.hero-banner .cmp-teaser__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 100% 32%;
  transform: scale(1) !important;

}
.hero-banner .cmp-teaser__image .cmp-image {
 width: 100%;
  height: 100%;
}

.hero-banner .cmp-teaser__image .cmp-image{
  height: 155%;
}

/* Make teaser content vertically center & left aligned */
.hero-banner .cmp-teaser {
 height: 100%;
 display: flex;
 align-items: center; /* vertical centering of content */
}
.hero-banner .cmp-teaser__content {
 position: relative;
 z-index: 2; /* ensure above image */
 display: flex;
 flex-direction: column;
 justify-content: center;
 align-items: flex-start; /* left align text on desktop */
 text-align: left;
 max-width: 42%;
 padding: 5rem 0 2rem 5rem;
 min-height: 150px;
 height: auto;

}
/* Pre-title small */
.hero-banner .cmp-teaser__pretitle {
 font-size: 1rem;
 font-weight: 400;
 color: #fff;
 margin-bottom: 0.5rem;
}
/* Title large */
.hero-banner .cmp-teaser__title {
 font-size: 34px;
 font-weight: 600;
 color: #fff;
 margin-bottom: 1.5rem;
 line-height: 1;
 font-family: Gotham, Helvetica Neue, Helvetica, Arial, "sans-serif";
}
/* Description */
.hero-banner .cmp-teaser__description {
 font-size: 28px;
 color: #fff;
 margin-bottom: 1rem;
 font-weight: 600;
 line-height: 1;
 font-family: Gotham, Helvetica Neue, Helvetica, Arial, "sans-serif";
}
/* Mobile <768px: center horizontally as well */
@media (max-width: 767px) {
 .hero-banner .cmp-teaser__content {
   align-items: flex-start; /* center horizontally */
   text-align: left;
    padding: 5rem 2rem 2rem 1rem;
     max-width: 100%;
 }
}

 @media (min-width: 1024px) {
   /* .hero-banner .cmp-teaser__image img {
      object-position: 100% 32%;
    } */
}
/* --- Search Bar Styling --- */
.hero-banner__search {
 display: block;
 max-width: 45%;
 margin-top: 1rem;
 position: relative;
 z-index: 3; /* above image */
 margin: 0 0 5rem 5rem;
}

.hero-banner__search-label {
 font-size: 1rem;
 font-family: "Open Sans", sans-serif;
 margin-bottom: 0.5rem;
 display: none;
 color: #fff;
 font-weight: 400;
 text-transform: capitalize;
}

.hero-banner__search-fields {
 display: flex;
 width: 100%;
 gap: 0;
}

/* input */
.hero-banner__search-input {
 flex: 1 1 0;
 min-width: 0;
 padding: 0.75rem 1rem;
 font-size: 1rem;
 border: 1px solid #ccc;
 border-right: none;
 border-radius: 4px 0 0 4px;
 color: #333;
 box-sizing: border-box;
 height: 50px;
}
.hero-banner__search-input::placeholder{
font-size: 14px;
}
/* button default */
.hero-banner__search-button {
 flex: 0 0 auto;
 padding: 0.75rem 1.5rem;
 font-size: 1rem;
 font-family: "Open Sans", sans-serif;
 font-weight: 600;
 background-color: #005a5c !important;
 color: #fff;
 border: none;
 border-radius: 0 4px 4px 0;
 cursor: pointer;
 height: 50px;
 white-space: nowrap;
 display: flex;
 justify-content: center;
 align-items:center;
}

.hero-banner__search-button svg {
  display: inline-block;
  vertical-align: middle;
  margin-left:1rem;
}

.hero-banner__search form{
    position: relative;
}


/* Mobile <768px: stack input + button vertically */
@media (max-width: 767px) {
.hero-banner__search {
   margin: 0 1.5rem 5rem 1.5rem;
   max-width:100%;
}
 .hero-banner__search-fields {
   flex-direction: column;
   width: 100%;
 }

 .hero-banner__search-input {
   border-radius: 4px;
   border-right: 1px solid #ccc;
   margin-bottom: 0.5rem;
   width: 100%;
   height: auto;
 }

 .hero-banner__search-button {
   border-radius: 4px;
   width: 100%;
   height: auto;
 }
}

/* --- Style System Button Colors (applied to wrapper) --- */

/* Dark Blue (default) */
.hero-banner__search-button--darkblue .hero-banner__search-button {
 background-color: #1c2758 !important;
}
.hero-banner__search-button--darkblue .hero-banner__search-button:hover {
 background-color: grey;
}
/* Light Blue */
.hero-banner__search-button--lightblue .hero-banner__search-button {
 background-color: #1D4094;
}
.hero-banner__search-button--lightblue .hero-banner__search-button:hover {
 background-color: #153170;
}
/* Teal */
.hero-banner__search-button--teal .hero-banner__search-button {
 background-color: #005a5c;
}

/* font families */

/* Open Sans */
.cmp-teaser--font-open-sans .cmp-teaser__title,
.cmp-teaser--font-open-sans .cmp-teaser__description {
  font-family: "Open Sans", sans-serif;
}

/* Chronicle Text G1 */
.cmp-teaser--font-chronicle-text .cmp-teaser__title,
.cmp-teaser--font-chronicle-text .cmp-teaser__description {
  font-family: "Chronicle Text G1", serif;
}

/* Gotham */
.cmp-teaser--font-gotham .cmp-teaser__title,
.cmp-teaser--font-gotham .cmp-teaser__description {
  font-family: Gotham, "Open Sans", Helvetica, sans-serif;
}

/* Gotham Extended Stack */
.cmp-teaser--font-gotham-stack .cmp-teaser__title,
.cmp-teaser--font-gotham-stack .cmp-teaser__description {
  font-family: Gotham, OpenSans, Helvetica, "sans-serif", system;
}

/* Helvetica Stack */
.cmp-teaser--font-helvetica-stack .cmp-teaser__title,
.cmp-teaser--font-helvetica-stack .cmp-teaser__description {
  font-family: Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/* UI System Stack */
.cmp-teaser--font-ui-system .cmp-teaser__title,
.cmp-teaser--font-ui-system .cmp-teaser__description {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

/* font sizes */

.cmp-teaser--title-size-20 .cmp-teaser__title {
  font-size: 1.25rem;
}
.cmp-teaser--title-size-22 .cmp-teaser__title {
  font-size: 1.375rem;
}
.cmp-teaser--title-size-28 .cmp-teaser__title {
  font-size: 1.75rem;
}
.cmp-teaser--title-size-34 .cmp-teaser__title {
  font-size: 2.125rem;
}

.cmp-teaser--desc-size-28 .cmp-teaser__description {
  font-size: 1.75rem;
}
.cmp-teaser--desc-size-42 .cmp-teaser__description {
  font-size: 2.625rem;
}
.cmp-teaser--desc-size-48 .cmp-teaser__description {
  font-size: 3rem;
}
.cmp-teaser--desc-size-60 .cmp-teaser__description {
  font-size: 3.75rem;
}
.cmp-teaser--desc-size-64 .cmp-teaser__description {
  font-size: 4rem;
}

/*Hero banner search label show/hide */
.hero-banner__search-label--hide .hero-banner__search-label{
    display: none;
}
.hero-banner__search-label--show .hero-banner__search-label{
    display: block;
}

/*breadcrumb show/hide */
.breadcrumb-hide .hero-banner .breadcrumbs{
display:none;
}
.breadcrumb-Show .hero-banner .breadcrumbs{
display:block;
}



/* search query */
.font-semibold {
    font-weight: 600;
}
.font-normal {
    font-weight: 400;
}
.text-sm {
    font-size: 14px;
    line-height: 22px;
}
.py-1 {
    padding-top: .25rem;
    padding-bottom: .25rem;
}
.px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
}
.cursor-pointer {
    cursor: pointer;
}
.pb-2 {
    padding-bottom: .5rem;
}
.shadow-lg {
    --tw-shadow: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.pt-3 {
    padding-top: .75rem;
}
.pb-1 {
    padding-bottom: .25rem;
}
.bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.border {
    border-width: 1px;
}
.rounded-md {
    border-radius: .375rem;
}
.search-suggestion-parent {
    width: 76%;
     position: absolute;
     border: 1px solid #000 !important;
     z-index: 1;
     top:97%;
}
.mt-1 {
    margin-top: .25rem;
}
.z-10 {
    z-index: 10;
}

.hidden {
    display: none;
}
@media (max-width: 767px) {
    .search-suggestion-parent{
        width:100%;
        top:40%;
    }
}

/* mortgage hero banner content css classes for applying style system according to mortgage hero banner UI*/
/*Add this classes into style system to match ui according to mortgage hero banner*/
 .mortgage-hero-banner-ui .hero-banner::before {
  background: rgba(0, 0, 0, 0.4);
}
.mortgage-hero-banner-ui .cmp-teaser__content{
    padding: 5rem 1rem 5rem 1rem;
    margin: 0 auto;
    width: 100%;
}

.mortgage-hero-banner-ui .hero-banner .c-breadcrumbs__list{
    padding: 2rem 1rem 0rem 1rem;
    margin: 0 auto;
}

.mortgage-hero-banner-ui .hero-banner .cmp-teaser__title{
    font-weight: 400;
}

@media (max-width: 600px) {
    .mortgage-hero-banner-ui .hero-banner .cmp-teaser__title{
        font-size: 1.5rem;
    }
    .mortgage-hero-banner-ui .hero-banner .cmp-teaser__description{
             font-size: 1.875rem;
             font-weight: 700;
        }
        .mortgage-hero-banner-ui .cmp-teaser__content {
            padding: 3rem 1rem 0rem 1rem;
        }
}

@media (min-width: 48rem) {
    .mortgage-hero-banner-ui .cmp-teaser__content,
    .mortgage-hero-banner-ui .hero-banner .c-breadcrumbs__list
     {
        max-width: 45rem;
    }
}

@media (min-width: 62rem) {
    .mortgage-hero-banner-ui .cmp-teaser__content,
    .mortgage-hero-banner-ui .hero-banner .c-breadcrumbs__list{
        max-width: 58.75rem;
    }
}

@media (min-width: 75rem) {
    .mortgage-hero-banner-ui .cmp-teaser__content,
    .mortgage-hero-banner-ui .hero-banner .c-breadcrumbs__list{
        max-width: 71.25rem;
    }
}