/**
 * Hero Banner Component Styles - Structural Only
 * Theme-specific colors and typography should be in theme's hero-banner override
 */

.hero-banner {
    position: relative;
    text-align: center;
    /* Gradients and image together; image will be set inline via style attribute */
    background:
        linear-gradient(180deg, #000 0%, #582D43 100%),
        linear-gradient(180deg, rgba(0, 0, 0, 0.80) -32.34%, rgba(0, 0, 0, 0.00) 145.85%);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.hero-overlay{
    background-color:var(--color-black)
}
/* Gradient overlay */
.hero-overlay::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.51) 25.5%, rgba(0, 0, 0, 0.11) 87.48%), rgba(165, 69, 113, 0.22);
    background-blend-mode: normal, multiply;
    z-index: 1;
    pointer-events: none;
}

.hero-banner .hero-banner__content {
    position: relative;
    z-index: 2;
    max-width: 50rem;
    margin: 0 auto;
}

.hero-banner .hero-banner__title {
    margin: 0 0 1rem;
}

/* Variant: Full (title + subtitle + image) */
.hero-banner.hero-banner--full {
    text-align: left;
    min-height: 31.25rem;
    display: flex;
    padding:11.875rem 0 10rem;
}
 .hero-banner.hero-banner--full.hero-banner-wrapper{
    padding:11.875rem 0 10rem;
}
.hero-banner--full .hero-banner__content {
    margin: 0 auto;
    text-align:center;
}
.hero-banner--full .hero-banner__content{
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
}

.hero-banner .hero-banner__content  h1{
    color: var(--color-white);
    font-size: 2.25rem;
    font-weight: 400;
    line-height:1.15;
    letter-spacing: -0.1125rem;
    margin-bottom:1.25rem;
}
.hero-banner .hero-banner__subtitle{
    font-size:1.25rem;
    color: var(--color-white);
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: -0.045rem;
    text-align:center;
}

/* only text banner */

.hero-withoutbg-image{
    padding-top:1rem;
    padding-bottom:1.375rem;
    min-height:22.5rem;
}
.hero-banner--text-only{
    padding-top:3.75rem;
    padding-bottom:6.25rem;
}
.hero-banner--text-only h1.hero-banner__title,
.hero-withoutbg-image h1.hero-banner__title{
    font-size:2.25rem;
    text-align:left;
    color:var(--color-white);
    font-weight: 400;
    line-height: 1.22;
    letter-spacing: -0.06rem;
    margin:0;
}
.hero-banner--text-only .breadcrumbs,
.hero-withoutbg-image .breadcrumbs{
  position:inherit;
  margin-bottom:1.5rem;
}
.hero-banner.hero-banner--text-only .hero-banner__content,
.hero-banner.hero-withoutbg-image .hero-banner__content{
    margin:0;
}

.hero-withoutbg-image .breadcrumbs__link,
.hero-withoutbg-image .breadcrumbs__current{
    font-size:0.875rem;
    color:var(--color-white);
    font-weight:300;
    line-height:1;
}

.breadcrumbs__item:not(:last-child)::after {
    content: '' !important;
    display: inline-block;
    width: 0.5rem;
    height: 0.75rem;
    margin-left: 0.5rem;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="12" viewBox="0 0 8 12" fill="none"><path d="M0 10.59L4.58 6L0 1.41L1.41 0L7.41 6L1.41 12L0 10.59Z" fill="white"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-top:0.125rem;
}
.breadcrumbs__item{
    line-height:1;
}

.hero-banner .block-banner--hero{
    position:absolute;
    bottom:0;
    width:100%;
    z-index:1;
    background: rgba(18, 18, 18, 0.35);
    background-blend-mode: multiply;
}
.hero-banner-wrapper .hero-banner__content{
    padding-bottom: 10.625rem;
}
/* Desktop styles */

@media (width >= 1025px) {
   .hero-banner--full .hero-banner__content{
        max-width:32.5rem;
        text-align:left;
        margin:0;
    }
    .hero-banner.hero-banner--full{
        padding:11.875rem 0;
    }
   .hero-banner .hero-banner__content  h1,
   .hero-banner--text-only h1.hero-banner__title,
   .hero-withoutbg-image h1.hero-banner__title{
        font-size: 3rem;
    }
    .hero-withoutbg-image.hero-banner .hero-banner__content{
      max-width:58rem;
    }
    .hero-banner .hero-banner__subtitle{
        font-size:1.375rem;
        text-align:left
    }
    .hero-banner--text-only .breadcrumbs,
    .hero-withoutbg-image .breadcrumbs{
      margin-bottom:3.3125rem;
    }
    .hero-banner--text-only{
        padding-top:3.75rem;
        padding-bottom:9.6875rem;
    }

    .hero-withoutbg-image{
        padding-top:1.375rem;
        padding-bottom:1.375rem;
        min-height:23.375rem;
    }
    .hero-withoutbg-image .breadcrumbs__link,
    .hero-withoutbg-image .breadcrumbs__current{
        font-size:1rem
    }
    .hero-banner-wrapper .hero-banner__content{
      padding-bottom: 2rem;
    }
}

@media (width >= 1280px) {
    .hero-banner.hero-banner--full {
        min-height:40.625rem;
    }
   
    .hero-banner  .hero-banner__content  h1{
        font-size: 3.75rem;
    }
    .hero-banner .hero-banner__subtitle{
        font-size:1.5rem;
    }
    .hero-banner--text-only h1.hero-banner__title,
   .hero-withoutbg-image h1.hero-banner__title{
        font-size: 3rem;
    }
}

@media (width >= 1540px) {
   .hero-banner.hero-banner--full{
        min-height:46.875rem;
    }
}
