/* ===== Disco Hero Banner (stacked layout) ===== */
.disco-banner-wrapper{
    position: relative;
    overflow: hidden;
    padding: 0;
    border-radius: 16px;
    background: #0BC88A;
    box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.16);
}

/* faint wave overlay */
/* wave decoration */
.disco-banner-wrapper::before,
.disco-banner-wrapper::after {
    content: "";
    position: absolute;
    width: 300px;   /* adjust size if needed */
    height: 40px;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("data:image/svg+xml;utf8,\
      <svg xmlns='http://www.w3.org/2000/svg' width='377' height='26' viewBox='0 0 377 26' fill='none'>\
        <path d='M-168 3C-143.274 3 -143.274 22.843 -118.547 22.843C-93.819 22.843 -93.819 3 -69.092 3C-44.364 3 -44.364 22.843 -19.636 22.843C5.09098 22.843 5.091 3 29.819 3C54.547 3 54.547 22.843 79.276 22.843C104.003 22.843 104.003 3 128.73 3C153.457 3 153.457 22.843 178.185 22.843C202.913 22.843 202.913 3 227.642 3C252.37 3 252.37 22.843 277.097 22.843C301.828 22.843 301.828 3 326.559 3C351.29 3 351.29 22.843 376.021 22.843' stroke='white' stroke-opacity='0.55' stroke-width='5.6693' stroke-miterlimit='10' stroke-linejoin='round'/>\
      </svg>");
    opacity: .55;
    pointer-events: none;
    z-index: 1;
}

/* top left wave */
.disco-banner-wrapper::before {
    top: 20px;
    left: 0;
}

/* bottom right wave */
.disco-banner-wrapper::after {
    bottom: 20px;
    right: 0;
    transform: scaleX(-1); /* mirror horizontally if you want opposite flow */
}


/* inner layout — stacked */
.disco-banner-inner{
    max-width: 900px;
    margin: 0 auto;
    padding: 56px 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 20px;
    position: relative;
    z-index: 1; /* keep text above ::after */
}

/* title */
.disco-banner-title{
    margin: 0 !important;
    padding: 0 0 10px !important;
    letter-spacing: .2px;
    color: #fff !important;
    text-align: center;
    text-shadow: 0 0 1.327px rgba(0, 0, 0, 0.25);
    font-family: Poppins, sans-serif !important;
    font-size: 40px !important;
    font-style: normal;
    font-weight: 600;
    line-height: 140%; /* 72.8px */
}

/* text */
.disco-banner-subtext{
    margin: 0;
    max-width: 800px;
    color: #fff;
    text-align: center;
    font-family: Poppins, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%; /* 28.8px */
}

/* button */
.disco-banner-button-wrapper{
    display: flex;
    justify-content: center;
    width: 100%;
}

.disco-banner-button{
    display: inline-block;
    text-decoration: none !important;
    padding: 18px 34px;
    background: #fff;
    box-shadow: 0 8px 18px rgba(0,0,0,.1);
    transition: transform .08s ease, box-shadow .2s ease, opacity .2s ease;
    border-radius: 10px;
    border: 1px solid #0BC88A;
    color: #000;
    text-align: center;
    font-family: Poppins, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 15.899px;
}
.disco-banner-button:hover{ transform: translateY(-1px); box-shadow: 0 12px 22px rgba(0,0,0,.14); }
.disco-banner-button:active{ transform: translateY(0); }
/* ===== Disco Hero Banner (stacked layout) ===== */
.disco-banner-wrapper{
    position: relative;
    overflow: hidden;
    padding: 0;
    border-radius: 16px;
    background: #0BC88A;
    box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.16);
}

/* faint wave overlay */
/* wave decoration */
.disco-banner-wrapper::before,
.disco-banner-wrapper::after {
    content: "";
    position: absolute;
    width: 300px;   /* adjust size if needed */
    height: 40px;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("data:image/svg+xml;utf8,\
      <svg xmlns='http://www.w3.org/2000/svg' width='377' height='26' viewBox='0 0 377 26' fill='none'>\
        <path d='M-168 3C-143.274 3 -143.274 22.843 -118.547 22.843C-93.819 22.843 -93.819 3 -69.092 3C-44.364 3 -44.364 22.843 -19.636 22.843C5.09098 22.843 5.091 3 29.819 3C54.547 3 54.547 22.843 79.276 22.843C104.003 22.843 104.003 3 128.73 3C153.457 3 153.457 22.843 178.185 22.843C202.913 22.843 202.913 3 227.642 3C252.37 3 252.37 22.843 277.097 22.843C301.828 22.843 301.828 3 326.559 3C351.29 3 351.29 22.843 376.021 22.843' stroke='white' stroke-opacity='0.55' stroke-width='5.6693' stroke-miterlimit='10' stroke-linejoin='round'/>\
      </svg>");
    opacity: .55;
    pointer-events: none;
    z-index: 1;
}

/* top left wave */
.disco-banner-wrapper::before {
    top: 20px;
    left: 0;
}

/* bottom right wave */
.disco-banner-wrapper::after {
    bottom: 20px;
    right: 0;
    transform: scaleY(-1);
}


/* inner layout — stacked */
.disco-banner-inner{
    max-width: 900px;
    margin: 0 auto;
    padding: 56px 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 20px;
    position: relative;
    z-index: 1; /* keep text above ::after */
}

/* title */
h2.disco-banner-title{
    margin: 0 !important;
    padding: 0 0 10px !important;
    letter-spacing: .2px;
    color: #fff !important;
    text-align: center;
    text-shadow: 0 0 1.327px rgba(0, 0, 0, 0.25);
    font-family: Poppins, sans-serif !important;
    font-size: 40px !important;
    font-style: normal;
    font-weight: 600;
    line-height: 140%; /* 72.8px */
}

/* text */
.disco-banner-subtext{
    margin: 0 !important;
    max-width: 800px;
    color: #fff;
    text-align: center;
    font-family: Poppins, sans-serif !important;
    font-size: 17px !important;
    font-style: normal;
    font-weight: 400;
    line-height: 160%; /* 28.8px */
}

/* button */
.disco-banner-button-wrapper{
    display: flex;
    justify-content: center;
    width: 100%;
}

.disco-banner-button{
    display: inline-block;
    text-decoration: none !important;
    padding: 18px 34px;
    background: #fff;
    box-shadow: 0 8px 18px rgba(0,0,0,.1);
    transition: transform .08s ease, box-shadow .2s ease, opacity .2s ease;
    border-radius: 10px;
    border: 1px solid #0BC88A;
    color: #000;
    text-align: center;
    font-family: Poppins, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 15.899px;
}
.disco-button-icon {
    vertical-align: middle;
}

.disco-button-icon svg {
    width: 20px;
    height: 20px;
    fill: currentColor; /* inherit button text color */
}
.disco-banner-button:hover{ transform: translateY(-1px); box-shadow: 0 12px 22px rgba(0,0,0,.14); }
.disco-banner-button:active{ transform: translateY(0); }
