*, *:before, *:after { box-sizing: border-box; }
img { max-width: 100%; }

@font-face {
    font-family: "Montserrat";
    src: url("../../assets/fonts/Montserrat/v1/Montserrat-Regular.ttf") format("ttf"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Regular.woff") format("woff"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Regular.woff2") format("woff2"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Regular.otf") format("otf"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Regular.eot") format("eot");
    font-weight: normal;
}
@font-face {
    font-family: "Montserrat";
    src: url("../../assets/fonts/Montserrat/v1/Montserrat-Light.ttf") format("ttf"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Light.woff") format("woff"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Light.woff2") format("woff2"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Light.otf") format("otf"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Light.eot") format("eot");
    font-weight: 300;
}
@font-face {
    font-family: "Tungsten";
    src: url("../../assets/fonts/Tungsten/v1/Tungsten-Semibold.ttf") format("ttf"),
    url("../../assets/fonts/Tungsten/v1/Tungsten-Semibold.woff") format("woff"),
    url("../../assets/fonts/Tungsten/v1/Tungsten-Semibold.woff2") format("woff2"),
    url("../../assets/fonts/Tungsten/v1/Tungsten-Semibold.otf") format("otf");
    font-weight: normal;
}
@font-face {
    font-family: "TungstenReveal";
    src: url("../../assets/fonts/TungstenReveal/v1/TungstenReveal.ttf") format("ttf"),
    url("../../assets/fonts/TungstenReveal/v1/TungstenReveal.woff") format("woff"),
    url("../../assets/fonts/TungstenReveal/v1/TungstenReveal.woff2") format("woff2"),
    url("../../assets/fonts/TungstenReveal/v1/TungstenReveal.otf") format("otf");
    font-weight: normal;
}

:root {
    --primary-red: #C8102E;
    --primary-green: #2E9597;
    --primary-blue: #0071B8;
}
html, body { 
    height: 100%;
    margin: 0;
}
body { display: flex; background: white; color: black; font-family: 'Montserrat', Arial, sans-serif; font-size: 15px; font-weight: 400; margin: 0; }
a { color: var(--primary-red); text-decoration: underline; transition: background-color 0.3s, color 0.3s; }
a:hover { text-decoration: none; }

#main { margin: 0 auto; max-width: 100%; display: flex; flex: 1; flex-direction: column;}

#header_text .block1 { background: #2C2E31; color: #aaa; font-size: 11px; padding: 40px 25px; text-align: right; }
#header_text .block2 { background: #CC0001; text-align: center; }
#header_text .block2 img { display: block; margin: 0 auto; }
#header_text .block3 { color: black; display: flex; align-items: center; justify-content: space-between; max-width: 1000px; margin: 0 auto; padding: 60px 0; }
#header_text .block3 a { background: var(--primary-green); border-radius: 30px; color: white; font-size: 18px; padding: 15px 25px; text-decoration: none; }
#header_text .block3 a:hover { background: var(--primary-red); }

#promo_content, #content { margin: 0 auto; max-width: 1140px; }

#content { padding: 30px 0; flex: 1; }
#content h1,
.p111 h1.type2 { font-size: 24px; font-weight: bold; margin: 0 0 30px 0; text-align: center; }
#content p,
#content ul { margin: 0 0 15px 0; }
#content table { background: #eee; margin: 0 0 15px 0; width: 100%; }
#content td { border: 1px solid #ddd; padding: 10px; }
#content td p { margin: 0; }
.tc-box .tc-box-textarea td { font-size: 15px; }

#progress_detailed { display: flex; justify-content: space-between; margin: 0 0 50px 0; }
#progress_detailed .drow { border-top: 5px solid #eee; list-style: none; padding: 10px 0 0 0; text-align: center; text-transform: uppercase; width: 33.33%; }
.stage1 #progress_detailed .drow:nth-child(1),
.stage2 #progress_detailed .drow:nth-child(1),
.stage2 #progress_detailed .drow:nth-child(2),
.stage3 #progress_detailed .drow:nth-child(1),
.stage3 #progress_detailed .drow:nth-child(2),
.stage3 #progress_detailed .drow:nth-child(3) { border-color: var(--primary-blue); color: var(--primary-blue); }
#progress_detailed .progress_full .title_sub { color: var(--primary-blue); }
.step { margin: 0 auto; max-width: 650px; }

#form_holder { margin: 0 auto; max-width: 1137px; padding: 15px 0; }
.field-row label { display: inline-block; padding: 10px 5px 10px 0; }
.table-cell input[type="text"], 
.table-cell select { border: 1px solid #B6B9B9; font-family: 'Montserrat', Arial, sans-serif; font-size: 15px; padding: 10px; width: 100%; }
.table-cell select { padding: 10px 5px; }
#submit-div { padding: 30px 0; text-align: center; display: flex; gap: 1rem; }
.SubmitButt, .SubmitButt:active, .next_step, .prev_step, .p413 .check-status .form-field.submit input[type="button"], .btn-new-search { background: var(--primary-green); border: 0; border-radius: 50px; color: white; cursor: pointer; font-family: 'Montserrat', Arial, sans-serif; font-size: 24px; margin: 0 0 15px 0; min-width: 165px; padding: 15px 30px; transition: background-color 0.3s; }
.next_step:hover, .prev_step:hover, .SubmitButt:hover, .p413 .check-status .form-field.submit input[type="button"]:hover, .btn-new-search:hover { background: black; }

.prev_step { background: #4A4E52; }

.required { color: var(--primary-red); }
div.required { color: black; font-size: 18px; font-weight: 300; margin: 0 0 30px 0; }
div.required span { color: var(--primary-red); }
#a_l_txt_title,
#a_l_txt_bank_details_international,
#a_l_txt_new_productgroup_all,
#a_l_txt_purchased_products_number { display: block; font-size: 30px; font-weight: bold; margin: 15px 0; }
#country_promotion { display: block; font-weight: bold; padding: 10px 0; }
#i_l_txt_payment_method .required { display: none; }
#r_payment_method .table-cell,
#r_purchase_upload_file .table-cell.coll1 { float: none; width: 100%; }
#r_payment_method .cbox_list { float: left; width: 50%; }
#r_date_purchase .table-cell { position: relative; }
.ui-datepicker-trigger { position: absolute; top: 8px; right: 8px; }
#date_purchase_u_info,
#bank_benficiary_individual_u_info,
#bank_beneficiary_rev_u_info,
#bank_benficiary_u_info,
#bank_benficiary_rev_individual_u_info,
div[id^="date_purchase"],
div[id^="serial_number"],
#u_l_purchase_upload_file,
#u_l_upload_serial_number,
div[id^="purchase_upload_file"] { color: #B6B9B9; display: inline-block; font-size: 12px; padding: 5px 0; }
#r_purchase_upload_file label,
#r_purchase_upload_file .fileinputs { float: left; width: 50%; }
#promo_content .field-row .inputfile.inputfile__btn + label { background: var(--primary-red); float: none; width: 100%; transition: background-color 0.3s; }
.field-row .inputfile.inputfile__btn + label span { display: block; font-size: 13px; }
#promo_content .field-row .inputfile.inputfile__btn + label:hover { background: black; }
#add_another_product,
#remove_last_product { background: #3B3B3B; border: 0; border-radius: 0; color: #ddd; cursor: pointer; font-family: 'Montserrat', Arial, sans-serif; font-size: 15px; margin: 0 0 5px 0; padding: 10px; width: 100%; transition: background-color 0.3s; }
#add_another_product.disabled,
#remove_last_product.disabled { display: none; }
#add_another_product:hover,
#remove_last_product:hover { background-color: black; }
#r_terms_conditions_box { margin: 0 0 10px 0; }
#promo_content a.popup { background: white!important; border: 1px solid black; border-radius: 50%; color: black!important; display: inline-block; height: 21px; line-height: 20px; text-align: center; text-decoration: none; width: 21px; }
label[id^="l_upload_barcode"] { display: inline; line-height: 1.1; }
.second_row { float: right; }
#checkboxes-div { padding-top: 15px; }
#r_purchase_upload_file + .drow,
#r_upload_serial_number + .drow { float: right; width: 50%; }
#r_upload_serial_number .table-cell.coll1 { width: 100%; }
#l_upload_serial_number,
#r_upload_serial_number .fileinputs { float: left; width: 50%; }
#r_button_subscribe { display: inline-block; margin-left: 10px; }
div[id^="r_upload_barcode"] .table-cell.coll1 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    justify-content: space-between;
    width: 100%;
    position: relative;
}
div[id^="r_upload_barcode"] .table-cell.coll1 #tooltip_upload_barcode { 
    position: absolute;
    top: 0.5rem; 
    right: 275px;  
}
label[id^="l_upload_barcode"] { width: 262px; }
#r_answer_64983 {
    display: flex;
    gap: 0.2rem;
}
#r_answer_64983.field-row .table-cell { 
    width: fit-content; 
}

#r_answer_64983.field-row .table-cell input[type="checkbox"] { margin-top: 0.75rem; }
#r_answer_64983 .table-cell.coll1 { order: 2; }

#ui-datepicker-div .ui-widget-header,
#ui-datepicker-div .ui-state-highlight, #ui-datepicker-div .ui-widget-content .ui-state-highlight, #ui-datepicker-div .ui-widget-header .ui-state-highlight { border-color: var(--primary-blue)!important; background: var(--primary-blue)!important; }
#ui-datepicker-div .ui-state-highlight, #ui-datepicker-div .ui-widget-content .ui-state-highlight, #ui-datepicker-div .ui-widget-header .ui-state-highlight { color: white!important; }

.accordion-panel {margin: 1px;}
.accordion-panel .panel-caption { background: #eee; border: 1px solid white; border-radius: 3px; margin: 1px 0; padding: 0 5px; position: relative; }
.accordion-panel .panel-caption .chevron { font-size: 30px; font-weight: bold; position: absolute; top: -2px; left: 15px; }
.accordion-panel .panel-caption.active .chevron { transform: rotate(-90deg); top: 2px; left: 15px; }
#content .accordion-panel .panel-caption p { margin: 0; }
.accordion-panel .panel-caption a { color: black; display: block; font-size: 16px; font-weight: bold; padding: 10px 10px 10px 30px; text-decoration: none; }
.accordion-panel .panel-caption a:hover { color: #333; cursor: pointer; text-decoration: none; }
.accordion-panel .panel-caption.active { background: #fff; border: 1px solid #aaa; }
.accordion-panel .panel-body { border: 1px solid #aaa; border-radius: 3px; padding: 20px 20px 20px 35px; transition: 0s; width: auto; }
.accordion-panel .panel-body p { margin: 0 0 15px 0; }

#footer { margin-top: auto; color: #b6b9b9; font-size: 11px; }
#footer a { color: black; text-decoration: none; }
#footer a:hover { text-decoration: underline; }
#footer .block1 { border-top: 2px solid #939393; margin: 0 auto; max-width: 1140px; padding: 25px 15px 50px 15px; }
#footer .block1 ul { overflow: hidden; }
#footer .block1 li { float: left; margin: 0 15px 0 0; }
#footer .block1 li.last { float: right; margin: 0; }
#footer .block2 { background: #2C2E31; color: #aaa; padding: 40px 25px; text-align: right; }

#main.ty #printArea,
#main.ty #printArea + p,
#main.ty #info_text_holder,
#main.ty #header_text .block3 a { display: none; }
#main.ty #header_text .block3 { display: block; }
#main.ty #form_wrapper { font-size: 24px; line-height: 1.5; padding: 100px 0; text-align: center; }

.p413 #main h1 { margin: 3rem auto 2rem auto; font-size: 1.5rem; padding: 0 0 0 500px; text-align: left; max-width: 1140px; width: 100%; line-height: 1.2; }
.p413 #main > form { position: relative; display: inline-flex; gap: 2rem; max-width: 1140px; width: 100%; margin-bottom: 2rem;  }
.p413 #main > form::before {
    content: "";
    display: inline-flex; 
    margin-top: -256px;
    width: 502px;
    aspect-ratio: 502/891;
    z-index: 1;
    background: url(../images/sidebanner.jpg) no-repeat center top;
    background-size: contain;
}
.p413 .check-status { 
    width: 60%; 
    padding: 0;
    background: #E2E4E4;
    border: 0;
    margin-top: 1rem;
    margin-bottom: 0;
}
.p413 .check-status .head {
    background: #B6B9B9;
    padding: 0.75rem 1rem;
}
.p413 .check-status h2 {
    padding: 0;
    margin: 0;
    border: 0;
    font-size: 0.9rem;
    font-weight: 600;
    text-transform: uppercase;
    text-align: left;
}
.p413 .form-holder { 
    display: grid;
    padding: 1.5rem 1rem;
}
.p413 .check-status .form-field {
    display: flex;
    flex-flow: column;
    gap: 0.5rem;
}
.check-status .label-field, .check-status .input-field, .check-status .input-field input[type='text'] { 
    width: 100%; 
    float: unset; 
}
.p413 .check-status .form-field.submit, .btn-new-search {
    align-items: start;
    font-size: 1.2rem;
}
.p413 .check-status.details .table { 
    background: #ffffff; 
    margin: 1rem;
    width: calc(100% - 2rem); 
}
.p413 .check-status.details .table .table-body .table-cell {
    border-color: rgba(0,0,0,0.1);
}
.check-status .foot { padding: 0.5rem 1rem; }

@media (max-width: 1200px) {
    #header_text .block2 div { margin-left: -85px; }
    #header_text .block2 h1 { font-size: 125px; }
    #header_text .block2 h1 .line { margin-left: 35px; }
    #header_text .block2 h2 { font-size: 30px; }
    .p413 #main h1, .p413 #main > form { max-width: 880px; }
    .p413 #main h1 { padding: 0 0 0 452px; }
    .p413 #main > form { padding: 0 1rem; }
    .p413 #main > form::before { margin-top: -316px; }
}
@media (max-width: 1140px) {
    #header_text .block1, #form_holder, #content { padding-left: 15px; padding-right: 15px; }
    .first_row.startcol1, .first_row.startcol, .first_row.startgroup1, .second_row { float: none; margin: 0; padding: 0; width: 100%; }
    .p413 .check-status .form-field.submit input[type="button"], .btn-new-search { 
        font-size: 20px;
        min-width: auto;
    }
    div[id^="r_upload_barcode"] .table-cell.coll1, div[id^="r_purchase_upload_file"] .table-cell.coll1, div[id^="r_upload_serial_number"] .table-cell.coll1 {
        display: grid;
        grid-template-columns: 1fr;
    }
    label[id^="l_upload_barcode"] { width: 100%; padding-right: 1rem;}
    div[id^="r_upload_barcode"] .table-cell.coll1 #tooltip_upload_barcode {
        top: 0.75rem;
        right: 0;
    }
    #l_upload_serial_number, #r_upload_serial_number .fileinputs, #r_upload_serial_number + .drow, #r_purchase_upload_file label, #r_purchase_upload_file .fileinputs, #r_purchase_upload_file + .drow { width: 100%; }
}
@media (max-width: 1040px) { .p413 #main > form::before { margin-top: -300px; } }
@media (max-width: 999px) {
    #header_text .block21 { width: 45%; }
    #header_text .block22 { width: 55%; }
    #header_text .block3 { flex-direction: column; align-items: flex-start; padding: 30px 15px; }
    #header_text .block3 img { margin: 0 0 30px 0; }
    #progress_detailed { flex-direction: column; }
    #progress_detailed > div { padding: 0; width: 100%; }
    #header_text .block2 .block0 { background: white; flex-direction: column; }
    #header_text .block2 img { margin: 0 0 30px 0; }
    #header_text .block2 div { margin-left: 0; }
    #header_text .block2 h1 { color: black; position: relative; }
    #header_text .block2 h1:before { background: var(--primary-red); border-radius: 4px; content: ''; display: block; height: 100%; width: 5px; transform: rotate(-15deg); position: absolute; top: 0; left: 3px; }
    #header_text .block2 h2 { color: black; margin-left: 70px; }
    #progress_detailed { flex-direction: column; }
    #progress_detailed .drow { padding: 15px 0; width: 100%; }
}
@media (max-width: 860px) {
    .p413 #main h1 {
        font-size: 1.2rem;
        padding: 0 0 0 406px;
    }
    .p413 #main h1, .p413 #main > form { max-width: 720px; }
    .p413 #main > form::before { margin-top: -280px; }
}
@media (max-width: 799px) {
    #header_text .block2 h1 { font-size: 80px; }
    #header_text .block2 h1 .line { margin-left: 20px; }
    #header_text .block2 h2 { margin-left: 45px; }
    .field-row .table-cell.coll1,
    .field-row .table-cell,
    #r_purchase_upload_file label,
    #r_purchase_upload_file .fileinputs { float: none; width: 100%; }
    .dynamic_info_logo { right: 0; }
    div[id^="r_upload_barcode"] .coll1_field_sub_group_btm { width: calc(100% - 30px); }
    #r_purchase_upload_file + .drow,
    #r_upload_serial_number + .drow,
    #l_upload_serial_number,
    #r_upload_serial_number .fileinputs { float: none; width: 100%; }
}
@media (max-width: 720px) {
    .p413 #main h1 { 
        padding: 1rem; 
        text-align: center; 
    }
    .p413 .check-status { 
        width: 90%;
        margin: 0 auto 1rem auto;
        height: fit-content;
    }
    .p413 #main > form::before { 
        background-image: url("../images/sidebanner-mobile.jpg");
        margin: 0 auto 1rem auto;
        width: 90%;
    }
    .info_text_left #info_text_holder { 
        width: 100%;
        margin: 0 auto;
        padding: 0;
    }
    .info_text_left #form_holder { 
        width: 100%; 
        margin: 0 auto; 
    }
    #promo_content.info_text_left #info_text_holder, #promo_content.info_text_left #form_holder { float: unset; }
    .tc-box-textarea {
        max-width: 100%;
        overflow-x: auto;
    }
    #r_terms_conditions_box { max-width: 87vw; }
    .tc-box-textarea table {
        width: 100% !important;
        max-width: 100% !important;
        table-layout: fixed;
    }

    .tc-box-textarea * {
        max-width: 100%;
        box-sizing: border-box;
    }
}
@media (max-width: 680px) {
    #promo_content, #content { display: grid; }
    #promo_content.info_text_left #info_text_holder, #promo_content.info_text_left #form_holder { float: unset; }
    .info_text_left #info_text_holder, .info_text_left #form_holder { 
        width: 100%; 
        margin: 0 auto; 
        padding: 1rem;
    }
}
@media (max-width: 599px) {
    #header_text .block21 { width: 50%; }
    #header_text .block22 { width: 50%; }
    #header_text .block2 h1 { margin-left: 15px; }
    #header_text .block2 h2 { margin-left: 15px; margin-right: 15px; text-align: center; }
    #header_text .block3 { align-items: flex-start; }
    #header_text .block3 img { max-width: 125px; }
    #header_text .block3 a { font-size: 18px; padding: 15px 25px; }
    #footer .block1 { border-top: 0; padding-top: 0; }
    #footer .block1 ul { display: flex; flex-direction: column; align-items: flex-start; }
    #footer .block1 li { float: none; margin: 10px 0; width: 100%; }
    #footer .block1 li:nth-child(1) { border-top: 2px solid #939393; float: none; margin-top: 30px; padding-top: 30px; order: 3; }
    #footer .block1 li:nth-child(2) { order: 1; }
    #footer .block1 li:nth-child(3) { order: 2; }
    #content a { word-break: break-word; }
    #l_upload_serial_number { padding-right: 20px; }
    label[id^="l_barcode"] { padding-right: 20px; }
    #r_purchase_upload_file .dynamic_info_logo { right: 30px; }
    .SubmitButt, .SubmitButt:active, .next_step, .prev_step, .p413 .check-status .form-field.submit input[type="button"], .btn-new-search { 
        font-size: 21px; 
        min-width: auto;
        padding: 0.8rem 2rem;
    }
    .p413 #main h1 { font-size: 22px; }
    .p413 #main > form { gap: 1rem; display: grid; }
    .p413 #main > form::before { aspect-ratio: 860 / 860; width: 100%; }
    .p413 .check-status { width: 100%; }
}

@media (max-width: 402px) {
    .p413 .check-status { width: 100%; }
}

voucher-option {
    margin-bottom: 1rem;
    display: flex;
    align-items: center;
    gap: 1rem;
}