/*
Registration CSS
*/

/* Registration Hero
========================= */
.hero-container { display: flex; justify-content: center; width: 100%; padding: 1em 2em 0em; }
.hero { display: block;background-color: #fff; position: relative; width: 100%; height: 600px; max-height: 100%; overflow: hidden; z-index: 999; }
.hero-block { display: block; width: 100%; height: 0; }
.hero-block .hero-bg { background-repeat: no-repeat; background-position: 50% 50%; background-size: cover; position: absolute; left: 0px; right: 0px; top: 0px; bottom: 0px; width: 100%; height: 100%; overflow: hidden; }

.hero-block.slider:last-of-type .hero-bg { display: none; }
.hero-block.slider .hero-bg.show { display: block; }

/* Registration Overview
========================= */
.registration-overview { display: flex; flex-direction: column; align-items: center; margin: 0 2em; padding: 3em 0 1em; }
.registration-inner { display: flex; flex-direction: column; max-width: 1480px; width: 100%; }
.registration-title { display: flex; flex-direction: column; align-items: flex-start; margin: 0; padding: 0.5em 0; }
.registration-title span { color: #1a1a1a; font-family: 'Roboto Slab', serif; font-size: 3.6rem; font-weight: 600; line-height: 1.2; letter-spacing: .08em; text-transform: uppercase; }

.registration-title span:last-of-type { font-family: 'Mulish', sans-serif; font-size: 2.2rem; letter-spacing: .05em; padding: .5em 0 0; }

.registration-details { display: flex; flex-direction: column; padding: 1.5em 0 .5em; }
.registration-details p { color: #1a1a1a; font-family: 'Mulish', sans-serif; font-size: 1.8rem; line-height: 1.4; margin: 0; padding: 0 0 1em; }
.registration-details p:last-of-type { padding: 0; }
.registration-details p span { font-weight: 800; }

/* Buyers Benefits
========================= */
.registration-benefits { display: flex; flex-direction: column; align-items: center; margin: 0 2em; padding: 2.5em 0 2em; }
.registration-benefits-inner { display: flex; flex-direction: column; max-width: 1480px; width: 100%; }

.registration-benefits-section-title { display: flex; justify-content: center; padding: 0 0 2em; width: 100%; }
.registration-benefits-section-title span { color: #000; font-family: 'Roboto Slab', serif; font-size: 3.6rem; font-weight: 600; letter-spacing: .02em; line-height: 1.4em; margin: 0; padding: 0 0 0.2em; text-align: center; text-transform: uppercase; }

.registration-benefits-block { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; margin: 0; padding: 0; width: 100%; height: 100%; min-height: 575px; }
.registration-benefits-block-overview { background: #fff; display: flex; flex-direction: column; justify-content: center; padding: 2em 2em 2em 0; width: 56%; min-height: 100%; }
.registration-benefits-block-title { display: flex; justify-content: center; align-items: flex-start; flex-direction: column; width: 100%; }
.registration-benefits-subtitle { color: #888; font-family: 'Mulish', sans-serif; font-size: 1.5rem; font-weight: 600; letter-spacing: .08em; line-height: 1.4; margin: 0; padding: 0 0 0.5em; text-transform: uppercase; }
.registration-benefits-title { color: #1a1a1a; font-family: 'Roboto Slab', serif; font-size: 2.4rem; font-weight: 600; line-height: 1.2; letter-spacing: .05em; text-transform: uppercase; }

.registration-benefits-block-details { display: flex; flex-direction: column; align-items: flex-start; padding: 1.5em 1em .5em 0; }
.registration-benefits-block-details:first-of-type {}

.registration-benefits-block-details p { color: #3d3d3d; font-family: 'Mulish', sans-serif; font-size: 1.8rem; font-weight: 600; line-height: 1.6; margin: 0; padding: 0 0 0.5em;  }
.registration-benefits-block-details p:last-of-type { padding: 0; }
.registration-benefits-block-details .check-in-title { font-weight: 800; padding: 0 0 0.2em; }

.registration-benefits-block-details .check-in-overview { padding: 0 0 1em; }
.registration-benefits-block-details .check-in-details { display: flex; flex-direction: column; padding: 0 0 1em; }

.registration-benefits-block-details .check-in-details .check-in-title span { font-weight: 800; }

.registration-benefits-block-details .details { padding: 1em 0; }
.registration-benefits-block-details .pre-reg-benefits { padding: 0.5em 0 0.2em; }

.registration-benefits-block-details .note { font-size: 1.6rem; margin: .2em 0 0; font-style: italic; }

.registration-benefits-block-details ul { margin-left: 1.5em; padding: 0.5em 0 0; }
.registration-benefits-block-details ul li { color: #3d3d3d; font-family: 'Mulish', sans-serif; font-size: 1.8rem; font-weight: 800; padding: 0 0 0.5em; text-indent: -1em; }
.registration-benefits-block-details ul li:last-of-type { padding: 0; }
.registration-benefits-block-details ul li:before { content: "\2605"; color: #e9b300; padding-right: 0.5em; }

.registration-benefits-block-feat-img { background-color: #fff; display: flex; max-width: 100%; min-height: 1px; padding: 0.5em; overflow: hidden; width: 40%; }
.registration-benefits-block-feat-bg { display: block; background-position: center center; background-repeat: no-repeat; background-size: contain; width: 100%; }

/* Banner
========================= */
.banner { clear: both; padding: 1em 0; position: relative; width: 100%; }
.banner-block { display: flex; flex-direction: column; margin: 0 2em; padding: 0; }
.banner-sub-block { display: block; position: relative; margin: 0 auto; max-width: 1480px; width: 100%; min-height: 400px; }
.banner-bg { background-repeat: no-repeat; background-position: 50% 5%; background-size: cover; position: absolute; width: 100%; height: 100%; overflow: hidden; z-index: 9; }
.banner-overlay {  background-color: rgba(41,41,41,0.2); position: absolute; left: 0; right: 0; top: 0; bottom: 0; z-index: 99; }
.banner-details { display: flex; flex-direction: column; justify-content: center; position: absolute; left: 0; right: 0; top: 0; margin-left: 0; margin-right: auto; max-width: 800px; padding-top: calc(100vw * 0.01); padding-bottom: calc(100vw * 0.01); padding-left: 2em; padding-right: 2em; width: 100%; height: 100%; z-index: 999; }
.banner-info { background: transparent; display: flex; flex-direction: column; }
.banner-info-block { display: flex; flex-direction: column; align-items: center; }

.banner-info-block-logo img { max-width: 300px; width: 100%; }
.banner-info-block span { color: #fff; font-family: 'Mulish', sans-serif; font-size: 1.8rem; font-weight: 400; letter-spacing: .08em; line-height: 1.4em; margin: 0; text-align: center; text-transform: uppercase; text-shadow: 1px 2px 8px #000; }
.banner-info-block-top { display: flex; flex-direction: column; padding: 0.8em 0 .5em; }
.banner-info-block-top .event-date { font-size: 2.6rem; font-weight: 800; padding: 0.5em 0; }

/* Market Week
========================= */
.market-week { margin: 0 2em; padding: 3em 0; }
.market-week-inner { display: flex; flex-direction: column; align-items: center; margin: 0 auto; max-width: 1480px; width: 100%; position: relative; }
.market-week-title { display: flex; justify-content: center; padding: 0 0 2em; width: 100%; }
.market-week-title span { color: #000; font-family: 'Roboto Slab', serif; font-size: 3.4rem; font-weight: 600; letter-spacing: .02em; line-height: 1.4em; margin: 0; padding: 0 0 0.2em; text-align: center; text-transform: uppercase; }

.market-week-event-dates { display: grid; grid-template-columns: repeat(2, 1fr); gap: 35px; width: 100%; }
.market-week-calendar { display: grid; grid-column: span 1; grid-auto-rows: max-content; }
.market-week-calendar .calendar-year  { color: #000; font-family: 'Roboto Slab', serif; font-size: 2.8rem; font-weight: 600; letter-spacing: .02em; line-height: 1.2em; margin: 0; padding: 0 0 .5em; text-align: center; text-transform: uppercase; }

.market-week-calendar .market-week-event { display: flex; flex-direction: row; align-items: center; min-height: 125px;}
.market-week-calendar .market-week-event:nth-child(even):not(:first-child) { background: #f4f4f4; }
.market-week-calendar .event-overview { display: flex; flex-direction: column; line-height: 2; padding: 0 1em; width: 100%; }
.market-week-calendar .event-overview.multiple { padding: 1em; }
.market-week-calendar .event-overview .event-details { display: flex; }
.market-week-calendar .event-overview.multiple .event-details.nm { padding: 0 0 1.5em; }
.market-week-calendar .event-overview .event-details .event-title { display: flex; align-items: center; border-left: 2px solid #dc4225; padding-left: 2%; width: auto; }
.market-week-calendar .event-overview .event-details .event-title span { color: #000; font-family: 'Mulish', sans-serif; font-size: 2rem; font-weight: 600; line-height: 1.4; margin: 0; padding: 0 .8em 0 0; }

.market-week-calendar .event-overview .event-details .event-dates { display: flex; flex-direction: column; margin-right: .8em; min-width: 70px; }
.market-week-calendar .event-overview .event-details .event-dates span { color: #000; font-family: 'Mulish', sans-serif; font-size: 2rem; font-weight: 600; line-height: 1.2; margin: 0; padding: 0; text-align: center; }
.market-week-calendar .event-overview .event-details .event-dates span:first-of-type { letter-spacing: -.05em; font-size: 2.8rem; font-weight: 800; text-transform: uppercase; }

/* Registration Form
========================= */
.registration-form { display: flex; flex-direction: column; align-items: center; margin: 0 2em; padding: 2em 0 5em; }
.registration-form-inner { display: flex; flex-direction: column; max-width: 1280px; width: 100%; }
.registration-form-block { display: flex; flex-direction: column; width: 100%; }

.registration-form-title { display: flex; flex-direction: column; align-items: center; margin: 0; padding: 0.5em 0 2em; }
.registration-form-title span { color: #1a1a1a; font-family: 'Roboto Slab', serif; font-size: 2.6rem; font-weight: 600; line-height: 1.4; letter-spacing: .08em; padding: 0 0 0.25em; text-align: center; text-transform: uppercase; }
.registration-form-title span:nth-of-type(2) { font-size: 1.8rem; font-weight: 400; text-transform: none; text-align: center; padding: 0.25em 0; }

.quform-2 .quform-label > label { color: #333c4e; font-family: 'Mulish', sans-serif; font-size: 1.5rem; font-weight: 600; text-transform: uppercase; }
.quform-2 .quform-sub-label { font-size: 1.5rem; }
.quform-2 .quform-option .quform-option-text { font-size: 1.6rem; }
.quform-2 input::placeholder { font-size: 1.6rem; }
.quform-2 .company-address { margin-bottom: 1em; }
.quform-2 .company-address .quform-group-title { font-size: 1.5rem; font-weight: 600; margin-top: 0.5em; margin-bottom: 1em; text-transform: uppercase; }
.quform-2  .quform-element-recaptcha { display: flex; justify-content: center; padding: 2em 0 1em; }
.quform-2 .form-submit { display: flex; justify-content: center; }
.quform-2 .form-submit .quform-button-submit button { font-size: 1.6rem; }
.quform-2 .quform-error { padding: 2px 0; }
.quform-2 .quform-error-text { font-size: 1.7rem; }

.quform-2 .quform-success-message-animate .quform-success-message { background-color: #cef4a9; border-left: 5px solid #85c14b; color: #000; padding: 5px 15px; margin: 0 0 10px 0; position: relative; }

/* Responsive
--------------------------------------------- */
@media only screen and (min-width: 1980px) {
.hero { height: 700px; }
}

@media only screen and (min-width: 2500px) {
.hero { height: 750px; }
}

@media only screen and (max-width: 1480px) {
.hero { max-height: calc(100vw * 0.38852); }
.registration-overview { padding: 2.5em 0 .5em; }
.registration-title span { font-size: 3.4rem; }
.registration-benefits { padding: 2em 0; }
.banner-sub-block { min-height: 375px; }
.market-week { padding: 2em 0; }
.market-week-title span { font-size: 3.2rem; }
.market-week-event-dates { gap: 30px; }
.market-week-calendar .event-overview .event-details .event-dates span:first-of-type { font-size: 2.7rem; }
.registration-form { padding: 2em 0 4em; }
}

@media only screen and (max-width: 1280px) {
.hero { max-height: calc(100vw * 0.39063); }
.registration-overview { padding: 2em 0 .5em; }
.registration-title span { font-size: 3.2rem; }
.registration-title span:last-of-type { font-size: 2.1rem; }
.registration-details { padding: 1em 0 .5em; }
.registration-benefits { padding: 2em 0 1em; }
.registration-benefits-block-overview { padding: 1em 2em 1em 0; width: 58%; }
.registration-benefits-title { font-size: 2.3rem; }
.banner-sub-block { min-height: 350px; }
.banner-bg { background-position: 35% 5%; }
.banner-info-block-logo img { max-width: 275px; }
.banner-details { max-width: 750px; }
.market-week-title { padding: 0 0 1em; }
.market-week-title span { font-size: 3rem; }
.market-week-event-dates { gap: 25px; }
.market-week-calendar .event-overview .event-details .event-dates span:first-of-type { font-size: 2.6rem; }
.market-week-calendar .event-overview .event-details .event-title span { font-size: 1.9rem; }
.registration-form { padding: 1.5em 0 3.5em; }
.registration-form-title span { font-size: 2.5rem; }
}

@media only screen and (max-width: 1140px) {
.registration-title span { font-size: 3rem; }
.registration-benefits { padding: 1.5em 0 1em; }
.registration-benefits-block-overview { padding: 1em 1.5em 1em 0; width: 60%; }
.registration-benefits-block-details .details { padding: 0.5em 0; }
.banner-info-block-top .event-date { font-size: 2.5rem; }
.banner-info-block-logo img { max-width: 250px; }
.banner-details { max-width: 700px; }
.market-week-title span { font-size: 2.8rem; }
.market-week-calendar .event-overview .event-details .event-title { width: 58%; }
.registration-form { padding: 1em 0 4em; }
.registration-form-title { padding: 0.5em 0 1.5em; }
}

@media only screen and (max-width: 1080px) {
.market-week-calendar .calendar-year { padding: 0 0 .25em; }
.market-week-event-dates { grid-template-columns: repeat(1, 1fr); gap: 20px; }
.market-week-calendar:first-of-type { padding: .5em 0 1em; }
.market-week-calendar .market-week-event { min-height: 115px; }
.registration-benefits-block-details { padding: 1em 0 0; }
.registration-form { padding: 1em 0 3em; }
.quform-2 .form-submit .quform-button-submit button { font-size: 1.5rem; }
}

@media only screen and (max-width: 1023px) {
.hero { max-height: calc(100vw * 0.39101); }
.registration-overview { padding: 1.5em 0 .5em; }
.registration-title span { font-size: 2.8rem; }
.registration-title span:last-of-type { font-size: 2rem; padding: 0.5em 0 0; }
.registration-details { padding: .5em 0; }
.registration-benefits { padding: 1em 0; }
.registration-benefits-title { font-size: 2.2rem; }
.registration-benefits-block-overview { order: 2; padding: 1.5em 0 .5em; width: 100%; }
.registration-benefits-block-feat-img { order: 1; min-height: calc(100vw * 0.39101); padding: 0.5em 0; width: 100%; }
.registration-benefits-block-feat-bg { background-size: cover; background-position: 50% 25%; }
.banner-sub-block { min-height: 325px; }
.banner-bg { background-position: 60% 5%; }
.banner-details { max-width: 550px; padding-left: 1em; padding-right: 1em; }
.banner-info-block-top { padding: 0.5em 0; }
.banner-info-block-top .event-date { font-size: 2.4rem; padding: 0.5em 0 0.2em; }
.banner-info-block-logo img { max-width: 225px; }
.market-week-title span { font-size: 2.6rem; padding: 0; }
.market-week-calendar .event-overview .event-details .event-dates span:first-of-type { font-size: 2.5rem; }
.market-week-calendar .event-overview .event-details .event-dates span { font-size: 1.9rem; }
.registration-form { padding: 1em 0 2.5em; }
.registration-form-title span { font-size: 2.4rem; }
.registration-form-title span:nth-of-type(2) { font-size: 1.7rem; }
}

@media only screen and (max-width: 880px) {
.hero { max-height: calc(100vw * 0.39773); }
.registration-benefits-block-feat-img { min-height: calc(100vw * 0.39773); }
.banner-sub-block { min-height: 300px; }
.banner-bg { background-position: 50% 5%; }
.banner-details { max-width: 525px; }
.banner-info-block span { font-size: 1.7rem; }
.banner-info-block-top .event-date { font-size: 2.2rem; }
.market-week-calendar:first-of-type { padding: .5em 0; }
.market-week-calendar .market-week-event { min-height: 110px; }
.quform-2 .form-submit .quform-button-submit button { font-size: 1.4rem; }
}

@media only screen and (max-width: 768px) {
.hero-container { padding: 0.8em 2em 0em; }
.hero { max-height: calc(100vw * 0.39064); }
.registration-title span { font-size: 2.6rem; }
.registration-details { padding: 1em 0 0.5em; }
.registration-title span:last-of-type { font-size: 1.9rem; }
.registration-benefits { padding: 1em 0 .5em; }
.registration-benefits-block-feat-img { min-height: calc(100vw * 0.39064); }
.registration-benefits-block-overview { padding: 1.5em 0 0.5em; }
.banner-bg { background-position: 50% 5%; }
.banner-details { max-width: 500px; }
.banner-info-block span { font-size: 1.6rem; }
.banner-info-block-top .event-date { font-size: 2.1rem; }
.market-week { margin: 0 1.5em; padding: 1.5em 0 }
.market-week-title { padding: 0 0 .5em; }
.market-week-title span { font-size: 2.4rem; }
.market-week-calendar .market-week-event { min-height: 105px; }
.market-week-calendar .calendar-year { font-size: 2.7rem; }
.market-week-calendar .event-overview .event-details .event-dates span:first-of-type { font-size: 2.4rem; }
.market-week-calendar .event-overview .event-details .event-dates span { font-size: 1.8rem; }
.registration-form-title span { font-size: 2.3rem; }
.quform-2 .company-address { margin-bottom: 0.5em; }
.quform-2 .quform-element-checkbox .quform-spacer { padding: 0 0 10px 0; }
.quform-2 .quform-element-recaptcha { padding: 1.5em 0 .5em; }
}

@media only screen and (max-width: 719px) {
.banner-details { max-width: 475px; }
}

@media only screen and (max-width: 640px) {
.hero-container { padding: 0.8em 1.5em 0em; }
.hero { max-height: calc(100vw * 0.4297); }
.registration-overview { margin: 0 1.5em; }
.registration-title span { font-size: 2.4rem; }
.registration-title span:last-of-type { font-size: 1.8rem; }
.registration-details { padding: .5em 0; }
.registration-details p { font-size: 1.7rem; }
.registration-benefits { margin: 0 1.5em; }
.registration-benefits-block-feat-img { min-height: calc(100vw * 0.4297); }
.registration-benefits-title { font-size: 2.1rem; }
.registration-benefits-block-details p { font-size: 1.7rem; }
.registration-benefits-block-details ul li { font-size: 1.7rem; }
.banner { padding: 0.5em 0; }
.banner-block { margin: 0 1.5em; }
.banner-bg { background-position: 55% 5%; }
.banner-details { max-width: 450px; }
.banner-info-block-top .event-date { font-size: 2rem; }
.banner-info-block-logo img { max-width: 200px; }
.market-week { padding: 1.5em 0 1em; }
.market-week-title { padding: 0 0 .25em; }
.market-week-title span { font-size: 2.2rem; }
.market-week-event-dates { gap: 15px; }
.market-week-calendar .calendar-year { font-size: 2.6rem; }
.market-week-calendar .market-week-event { min-height: 100px; }
.market-week-calendar .event-overview { padding: 0 .8em; }
.market-week-calendar .event-overview .event-details .event-dates { margin-right: .5em; }
.market-week-calendar .event-overview .event-details .event-dates span:first-of-type { font-size: 2.3rem; }
.market-week-calendar .event-overview .event-details .event-dates span { font-size: 1.7rem; }
.market-week-calendar .event-overview .event-details .event-title { padding-left: 3%; }
.market-week-calendar .event-overview .event-details .event-title span { font-size: 1.8rem; }
.registration-form { margin: 0 1.5em; }
.registration-form-title span { font-size: 2.2rem; }
}

@media only screen and (max-width: 580px) {
.banner-overlay { background-color: rgba(41,41,41,0.4); }
.banner-bg { background-position: 50% 5%; }
.market-week-calendar .calendar-year { font-size: 2.5rem; }
}

@media only screen and (max-width: 520px) {
.banner-bg { background-position: 55% 5%; }
.banner-details { max-width: 425px; }
}

@media only screen and (max-width: 480px) {
.hero { max-height: calc(100vw * 0.46874999); }
.registration-overview { padding: 1em 0 .5em; }
.registration-title span { font-size: 2.2rem; }
.registration-title span:last-of-type { font-size: 1.7rem; }
.registration-details p { font-size: 1.6rem; }
.registration-benefits { padding: .5em 0; }
.registration-benefits-title { font-size: 2rem; }
.registration-benefits-block-overview { padding: 1.5em 0 0.5em; }
.registration-benefits-block-feat-img { min-height: calc(100vw * 0.46874999); }
.registration-benefits-block-details p { font-size: 1.6rem; }
.registration-benefits-block-details ul li { font-size: 1.6rem; }
.banner-bg { background-position: 55% 5%; }
.market-week { padding: 1em 0; }
.market-week-title span { font-size: 2rem; }
.market-week-event-dates { gap: 10px; }
.market-week-calendar .calendar-year { font-size: 2.4rem; }
.market-week-calendar .market-week-event { min-height: 95px; }
.market-week-calendar .event-overview { padding: 0 .5em; }
.market-week-calendar .event-overview .event-details .event-dates span:first-of-type { font-size: 2.2rem; }
.market-week-calendar .event-overview .event-details .event-dates span { font-size: 1.6rem; }
.market-week-calendar .event-overview .event-details .event-title span { font-size: 1.7rem; }
.registration-form { padding: .5em 0 2em; }
.registration-form-title { padding: 0.5em 0 1em; }
.registration-form-title span { font-size: 2.1rem; }
.registration-form-title span:nth-of-type(2) { font-size: 1.6rem; }
.quform-2 .quform-label > label { font-size: 1.4rem; }
.quform-2 .quform-sub-label { font-size: 1.4rem; }
.quform-2 .company-address .quform-group-title { font-size: 1.4rem; }
.quform-2 input::placeholder { font-size: 1.5rem; }
.quform-2 .quform-option .quform-option-text { font-size: 1.5rem; }
.quform-2 .form-submit .quform-button-submit button { font-size: 1.3rem; }
}

@media only screen and (max-width: 420px) {
.hero { max-height: calc(100vw * 0.4762); }
.registration-benefits-block-feat-img { min-height: calc(100vw * 0.4762); }
}