:root {
    --ff-sanspro: "Source Sans Pro", sans-serif;
}
.pre-footer {display: none !important; }
.main--chrcl-landing, .main--chrcl-landing *{ box-sizing: border-box; }
.main--chrcl-landing { background-color: #000; color: #fff; position: relative; z-index: 10; overflow: hidden; }
.main--chrcl-landing .grid-container { max-width: 1440px; }
.l-banner { position: relative; }
.l-banner__title { position: absolute; bottom: 0; left: 0; width: 100%; padding-bottom: 15px;}
.l-banner__title h2{ font-size: 38px; letter-spacing: 0.38px; font-weight: bold;  text-shadow: 3px 3px 8px rgba(0, 0, 0, 0.84); color: #fff;  }
.l-intro__copy__inner {  max-width: 377px; margin-left: auto; }
.l-intro__copy__inner p { font-size: 40px; line-height: 1.4; text-align: right; letter-spacing: normal; }
.l-intro__copy__inner p span{ font-size: 25px; display: block; }

.l-intro { margin-top: -125px; position: relative; z-index: 1000; }
.l-intro__row { display: flex; align-items: flex-end; justify-content: flex-end;}
.l-intro__col { width: calc(100% / 3); } 
.l-intro__badge { text-align: center; pointer-events: none;}
.l-intro__badge__inner { display: inline-block; background: #000; padding: 30px; border-radius: 500px; }
.l-intro__badge__inner svg{ width: 100%; }
.l-event__listings { display: flex; flex-wrap: wrap; flex-direction: column; gap: 40px; }

.l-event__item { display: flex; }
.l-event__item:nth-child(even) { flex-direction: row-reverse;}
.l-event__item:nth-child(3n + 1) { background: #ec1f26; }
.l-event__item:nth-child(3n + 2) { background: #f7941f; color: #000; }
.l-event__item:nth-child(3n + 3) { background: #076937; }
.l-event__item__copy { padding: 80px; }
.l-event__item .lthumb { height: 100%; width: 100%; position: relative; }
.l-event__item .lthumb img { display: block; width: 100%; height: 100%; object-fit: cover;}
.l-event__item--2 .lthumb img{ object-position: left; }
.l-event__item--2 .thmbtxt-inside { max-width: 170px; display: block; bottom: 100px; font-weight: normal; right: 0; }
span.thmbtxt-inside{ position: absolute; right: 15px; bottom: 15px; font-size: 20px; font-weight: bold; text-shadow: 3px 3px 8px rgba(0, 0, 0, 0.84); }
span.thmbtxt-outside{ position: absolute; left: 0; bottom: 0; transform: translateY(100%); color: #707070; font-size: 15px; font-style: italic; }
.l-events { margin-top: 50px;}
.l-event__title { text-align: center; position: relative; font-size: clamp(1.625rem, 1.3657rem + 1.2963vw, 2.5rem); letter-spacing: 4.8px; text-transform: uppercase; isolation: isolate; margin-bottom: 50px; color: #fff;  }
.l-event__title span{ display: inline-block; padding-inline: 20px; background-color: #000; position: relative; z-index: 10;}
.l-event__title::before { content: ''; position: absolute; top: 50%; left: 0; width: 100%; transform: translateY(-50%); height: 1px; background-color: #fff;}
.l-event__item__thumb { flex: 0 0 536px; }
.l-event__item__copy h2{ margin-bottom: 0; font-family: var(--ff-sanspro); font-weight: bold; font-size: 38px; color: inherit; line-height: 1.2; text-transform: uppercase; }
.l-event__item__copy p,
.l-event__item__copy ul { font-size: 28px; }
.l-event__item__copy ul { margin-bottom: 0;}
.l-event__item__copy .subtitle { font-size: 30px; }
.l-event__item__copy .subtitle br{display: none;}

.section-history { margin-top: 100px; }
.section-history h2 { color: inherit; font-weight: bold; font-size: 44px; line-height: 1.2; margin-bottom: 30px; }
.sh-row { display: flex; flex-wrap: wrap; }
.sh-copy { width: 60%; padding-right: 30px;  }
.sh-copy p{ font-size: 30px; line-height: 1.67; }
.sh-thumb { width: 40%; padding-top: 50px; }


.section--bgcard { margin-top: 100px; padding-block: 64px 100px; position: relative;  }
.section--bgcard__thumb { position: absolute; inset: 0; z-index: -1; }
.section--bgcard__thumb img { display: block; width: 100%; height: 100%; object-fit: cover;}
.bgcard-flash { background-color: rgb(10 10 10 / 82%); position: relative; padding: 60px; text-align: center; }
.bgcard-flash::before { content: ''; position: absolute; top: 50%; left: 50%; width: calc(100% - 24px); height: calc(100% - 24px); transform: translate(-50%, -50%); border: 1px solid #68635e; pointer-events: none;  }
.bgcard-flash h2{ font-weight: bold; color: #ec1f26; font-size: 51px; }
.bgcard-flash h2 br {display: none;}
.bgcard-flash p{ font-size: 28px;}
.bgcard-flash .subtitle{ font-size: 34px; }
.bgcard-flash .subtitle a{ text-decoration: none; color: inherit; }
.bgcard-flash .subtitle br{ display: none;}
.bgcard-flash .bgcard-flash__info { font-size: 23px; margin-top: 30px;}
.bgcard-flash__buttons { max-width: 1024px; margin-inline: auto !important; display: flex; flex-wrap: wrap; justify-content: center; gap: 40px 0; margin-inline: -20px; overflow: hidden; }
.bgcard-flash__buttons .buttonbxd { width: 50%; padding-inline: 20px; }
.bgcard-flash__buttons a{ font-size: 28px; background-color: #ec1f26; color: #fff; display: block; padding: 30px; line-height: 1; position: relative; }
.bgcard-flash__buttons a::before{ content: ''; position: absolute; top: 50%; left: 50%; width: calc(100% - 24px); height: calc(100% - 24px); transform: translate(-50%, -50%); border: 1px solid #fff; pointer-events: none; }
.bgcard-flash__buttons a:hover { background-color: #ff393f; }

.section--fbanner { display: flex; align-items: center; overflow: hidden; padding-block: 100px 80px; gap: 20px;  }
.fbanner__border__diamonds { width: calc((100% - 264px) / 2); height: 150px; position: relative; overflow: hidden; }
.fbanner__border__diamonds svg{ width: 1920px; position: absolute; top: 50%; transform: translateY(-50%); }
.fbanner__border__diamonds--left svg{ right: 0; }
.fbanner__border__diamonds--right svg { left: 0; }
.fbanner__logo{ width: 264px; }
.fbanner__logo svg{ width: 100%; }
.section--bcktotop {text-align: center; margin-bottom: 50px;}
.bctotop-btn { font-weight: bold; font-size: 27px; display: inline-block; text-align: center; color: #68635e;  }
.bctotop-btn:hover,
.bctotop-btn:focus{ color: #68635e; }
.bctotop-btn svg{ display: block; margin-inline: auto }
.bgcf__copy p {margin-bottom: 0;}

@media (max-width: 1160px) {
    .l-intro__copy__inner p { font-size: 32px;}
}

@media (max-width: 1100px) {
    .l-event__item__thumb { flex: 0 0 50%; }
    .l-event__item__copy { padding: 25px 40px; }
}

@media (max-width: 991px) {
    .l-intro__copy__inner{ margin-inline: auto}
    .l-intro__row{ flex-wrap: wrap;}
    .l-intro__col { width: 100%; }
    .l-intro__copy{ margin-inline: auto;  }
    .l-intro__copy__inner p{ text-align: center; }
    .l-intro__badge__inner { max-width: 300px;}
    .l-banner__title h2{ font-size: 22px; }
    .l-event__item { display: block; width: 100%; max-width: 600px; margin-inline: auto;  }
    .l-event__listings {flex-wrap: wrap; flex-direction: row;}
    .l-event__item .lthumb {aspect-ratio: 336 / 239;}
    .l-event__item__copy h2{ font-size: 30px; }
    .l-event__item__copy .subtitle { font-size: 25px; }
    .l-event__item__copy p,
    .l-event__item__copy ul{ font-size: 19px; }
    .bgcard-flash h2{ font-size: 28px; }
    .bgcard-flash .subtitle{ font-size: 21px; }
    .bgcard-flash p{ font-size: 24px;}
    .bgcard-flash__buttons .buttonbxd { width: 100%; }
    .bgcard-flash__buttons a{ max-width: 400px; margin-inline: auto; font-size: 22px; }
    .bgcard-flash .bgcard-flash__info{ font-size: 14px;}
    span.thmbtxt-outside{ display: none; }

}
@media (max-width: 767px) {

    .main--chrcl-landing .grid-container {  padding-inline: 30px; }
    .l-banner__title h2{ display: none;  }
    .l-event__title { max-width: 500px; margin-inline: auto; padding-block: 25px; border-top: 1px solid #fff; border-bottom: 1px solid #fff;  }
    .sh-row { flex-direction: column-reverse; gap: 50px; }
    .sh-col { width: 100%; }
    .sh-thumb{ padding-top: 0;}
    .sh-copy{ padding-right: 0;}
    .section-history h2 { font-size: 25px; }
    .section-history p { font-size: 18px; }
    
    .bgcard-flash .subtitle{ font-size: 21px;}
    .l-event__title{ font-size: 26px; letter-spacing: 3.12px; }
    .l-event__item__copy .subtitle br{display: initial;}
    .bgcard-flash h2 br{ display: initial;}
    .bgcard-flash__info--footer { max-width: 500px; margin-inline: auto; }
    .l-event__item__copy .subtitle span{display: none;}

    .bgcard-flash{ background-color: initial;}
}

@media (max-width: 575px) {
    .fbanner__border__diamonds{ width: calc((100% - 120px) / 2) }
    .fbanner__logo { width: 120px; }
    .fbanner__border__diamonds svg{ width: 890px; }
    .section--fbanner{ padding-block: 50px; }
    .section--bgcard{ padding: 0; }
    .section--bgcard .grid-container{ padding-inline: 0; }
    .bgcard-flash::before{ display: none; }
    .bgcard-flash{ padding: 30px; }
    .bgcard-flash__buttons{ gap: 20px 0; }
    .bgcard-flash__buttons a{ width: 100%; }
    .bgcard-flash__buttons .buttonbxd{ padding-inline: 0; }
    .bctotop-btn{ font-size: 20px;}
    .bctotop-btn svg{ max-width: 20px;}
    .l-intro__badge__inner{ max-width: 200px; padding: 15px; }
    .l-intro{ margin-top: -50px; }
    .section-history{ margin-top: 50px;}
    .bgcard-flash .subtitle br{ display: initial;}
    .bgcf__copy strong{ display: block; }
    .bgcf__copy p + p { margin-top: 40px ;}
    .bgcf__copy { max-width: 390px; margin-inline: auto; }
    .l-event__item--2 .thmbtxt-inside{ bottom: 40px; }
    .l-event__item--3 span.thmbtxt-inside{ width: 100%; text-align: center; right: 0; font-size: 14px; }
    .bgcard-flash__info--footer { font-size: 16px; }

}

@media (max-width: 360px ){
    .bgcard-flash__buttons a { font-size: 18px;}
}