*, *:before, *:after { box-sizing: border-box; }
img { max-width: 100%; }

@font-face {
    font-family: "Montserrat";
    src: url("../../assets/fonts/Montserrat/v1/Montserrat-Regular.woff2") format("woff2"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Regular.woff") format("woff"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Regular.otf") format("otf");
    font-weight: normal;
}
@font-face {
    font-family: "Montserrat";
    src: url("../../assets/fonts/Montserrat/v1/Montserrat-Medium.woff2") format("woff2"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Medium.woff") format("woff"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Medium.otf") format("otf");
    font-weight: bold;
}
@font-face {
    font-family: "Montserrat";
    src: url("../../assets/fonts/Montserrat/v1/Montserrat-Light.woff2") format("woff2"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Light.woff") format("woff"),
    url("../../assets/fonts/Montserrat/v1/Montserrat-Light.otf") format("otf");
    font-weight: 100;
}
@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-brown: #CE754F;
}

body { 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%; }

#header_text { display: flex; flex-direction:column; align-items: center; justify-content: space-between; padding: 0 0 50px 0; position: relative; }
#header_text .block1 { background: #2C2E31; color: #888; font-size: 11px; padding: 40px 25px; text-align: right; width: 100%; }
#header_text .block2 { text-align: center; position: relative; }
#header_text .block3 { margin: 0 auto; max-width: 945px; text-align: center; }
#header_text .block3 p { margin: 0 0 15px 0; }
#header_text .block3 a { display: inline-block; color: #BF0C3F; margin: 15px 0 0 0; font-size: 16px; text-decoration: none; position: relative; padding-top: 60px; }
#header_text .block3 a:before { content:''; background: url(../images/toggle.svg) 0 0 no-repeat; border: 0; height: 60px; width: 85px; position: absolute; left: 50%; transform: translateX(-50%); top: -10px; }

#arch { margin: 0 auto; max-width: 945px; width: 100%; }

#content { background: white; color: black; padding: 20px 40px; }
#content h1 { font-size: 24px; font-weight: bold; margin: 0 0 30px 0; text-align: center; }
#header_text .block2 h1 {
    font-family: "Tungsten", Arial, sans-serif;
    font-size: 75px;
    font-weight: bold;
    line-height: 0.85;
    color: white;
    text-transform: uppercase;
    position: absolute;
    top: 170px;
    right: 25px;
    text-align: left;
    margin: 0; 
}
h1 em {
    font-family: "TungstenReveal", Arial, sans-serif;
    font-weight: normal;
    font-style: normal;
}
#header_text .block2 h1::before {
    background: var(--primary-red);
    border-radius: 6px;
    content: '';
    display: block;
    height: 110%;
    width: 6px;
    position: absolute;
    top: -7px;
    left: 7px;
    transform: rotate(-15deg);
}
span.line2 { margin-left: 18px; }
#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; }

.tabs_menu { background: white; height: auto; margin: 0; }
.tabs_menu:after { clear: both; content: ''; display: block; height: 1px; width: 1px; }
.tabs_menu li:first-child { margin-left: 15px; }
.tabs_menu li a { border: 0; border-radius: 0; color: #BFBFBF; display: inline-block; font-size: 36px; font-weight: bold; padding: 15px; text-decoration: none; text-transform: uppercase; }
.tabs_menu li.active a { background: transparent; color: black; position: relative; }
.tabs_menu li.active a:after { background: var(--primary-red); content: ''; display: block; height: 12px; width: 100%; position: absolute; top: 100%; left: 0; transform: skew(15deg); z-index: 10; }

.tabed_pane { background: white; font-size: 15px; padding: 40px; filter: drop-shadow(6px 3px 10px #c2c2c2); }

.field-row label { display: inline-block; padding: 10px 5px 10px 0; }
.table-cell input[type="text"], 
.table-cell select,
.table-cell textarea { 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 0 20px; }
.SubmitButt { background: var(--primary-red); border: 0; color: rgba(255,255,255,0.8); cursor: pointer; font-family: 'Montserrat', Arial, sans-serif; font-size: 24px; margin: 0 0 15px 0; min-width: 165px; padding: 10px; transition: background-color 0.3s; }
.SubmitButt:hover { background: black; }

.required { color: var(--primary-red); }
div.required { color: black; font-size: 18px; margin: 0 0 15px 0; }
div.required span { color: var(--primary-red); }
#l_upload_photo_competition { font-size: 24px; font-weight: bold; }
#arch .field-row .inputfile.inputfile__btn + label { background: var(--primary-brown); font-family: 'Montserrat', Arial, sans-serif; font-size: 16px; width: 100%; transition: background-color 0.3s; }
.field-row .inputfile.inputfile__btn + label span { display: block; font-size: 12px; }
#arch .field-row .inputfile.inputfile__btn + label:hover { background: black; }
#r_answer_53119 { margin: 0 0 15px 0; }
#r_answer_53119 .table-cell { position: relative; }
.ui-datepicker-trigger { position: absolute; top: 47px; right: 8px; }
#tc-box-checkbox,
#r_subscribe { font-size: 15px; }
.terms-link { background: white; padding: 0 40px; }
.terms-link a { color: black; }
#tabs div.inlineBlock { display: none; background: white; padding: 20px 40px 0 40px; text-align: right; width: 100%; }
#tabs div.inlineBlock + br,
#tabs div.inlineBlock + br + br { display: none; }
.page_navigation { margin: 0 0 15px 0; }
.tc-box .tc-box-checkbox .label_r_field { vertical-align: top; }
#r_subscribe { padding-left: 20px; position: relative; }
#r_subscribe input { position: absolute; top: 0; left: 0; }
#alertBox { color: black; }
.dynamic_info_logo { top: 6px; right: 0; }
#r_answer_53119 .dynamic_info_logo { right: 40px; }
.no_script { background: var(--primary-red); color: white; font-size: 24px; margin: 0 auto; max-width: 945px; padding: 10px; text-align: center; }
#lightbox-image-details-caption a { display: none; }
#lightbox-secNav-btnClose { margin-top: 10px!important; }
#r_upload_photo_competition { margin: 0 0 15px 0; }
#enable-cookies { position: fixed; top: 0; left: 0; right: 0; text-align: center; width: 100%; }

#gallery ul { list-style: none; margin: 0; overflow: hidden; padding: 0; }
#gallery ul li { float: left; padding: 5px; width: 25%; }
#gallery ul a { display: block; margin: 0 0 10px 0; }
#gallery ul a img { box-shadow: 0 0 10px rgba(0,0,0,0.25); display: block; }

#footer { background: white; color: #6E7276; }
#footer a { color: black; }
#footer .block1 { border-bottom: 1px solid #E2E4E4; margin: 0 auto; max-width: 945px; padding: 30px 0; }
#footer ul { list-style: none; margin: 0; overflow: hidden; padding: 0; }
#footer ul li { float: left; margin: 0 15px 0 0; }
#footer .block2 { background: #2C2E31; color: #888; font-size: 11px; padding: 40px 25px; text-align: right; width: 100%; }

#enable-cookies { padding: 15px; background-color: var(--primary-red); color: white; }

#main.ty .form_holder { font-size: 18px; line-height: 1.5; padding-top: 50px; padding-bottom: 50px; text-align: center; }
#main.ty #tabs + .inlineBlock { display: none; }

#r_prommq_answers { margin-bottom: 20px; }
#terms_page_main { overflow: hidden; }

@media (max-width: 1200px) {
    #header_text .block3 { padding-left: 15px; padding-right: 15px; }
    #gallery ul li { width: 33.33%; }
}
@media (max-width: 800px) {
    .flex_content { flex-direction: column; padding: 0 0 30px 0; position: static; }
    .flex_content .hero,
    .flex_content .title { width: 100%; position: relative; }
    .flex_content .title .lemois { top: 0; right: 15px; }
      #header_text .block2 img { max-width: 146%; }
    #header_text .block2 h1 { display: inline-block; margin:auto; position:relative; color: black; top:0; right: 0; margin: 20px 0 0 20px; font-size:68px; }

    .tabed_pane, 
    .terms-link, 
    #footer,
    #main.ty .terms-link + .inlineBlock { padding-left: 20px; padding-right: 20px; }
    .tabs_menu li a { font-size: 30px; }
    #gallery ul li { width: 50%; }

    #lightbox-container-image-data-box { width: 100%!important; }
    #lightbox-container-image-box { width: 100%!important; height: 100%!important; }

    .tabs_menu { display: flex; flex-direction: column; }
    .tabs_menu li { padding-left: 15px; }
    .tabs_menu li:first-child { margin-left: 0; }
    #tabwrapper > ul > li:nth-child(3) { margin-top: 10px; }
}
@media (max-width: 480px) {
    #header_text .block2,
    #header_text .block2 h1 {  font-size:60px; }
    span.line1 { display: inline-block; margin-left: -5px;} 
    span.line1-1{ display: block; margin-left: 17px; }
    span.line1 { display: inline-block; margin-left: -5px; } 
    span.line1-1{ display: block; margin-left: px; }
    .tabs_menu li a { font-size: 24px; }
    .flex_content .title .lemois img { max-width: 80px; }
}