*{font-family:'Roboto Condensed', sans-serif;}
.container{margin:0 auto; width:95%;}
h2{text-transform:uppercase; font-size:2rem;font-weight:700;margin-top:2rem;}
hr{margin:1rem 0 1rem 0;}
label{font-size:1.5rem;}
/* button[type="submit"]{background:#0390c5; color:#FFF;text-transform:uppercase; padding:1rem 2rem;font-size:2.5rem; font-weight:700;border:none;} */
/* button[type="submit"]:hover{background:#03a2de;} */
textarea{width:100%;}
input[type='radio']{width:1rem !important; height:1rem !important;}
.flex-row{display:flex; columns:2; flex-wrap:nowrap; gap:3rem; margin-bottom:1rem;}
.flex-row > label{display:block; width:100%;}
.flex--half{display:flex; columns:1; flex-wrap:wrap; flex:0 0 calc((100% - 3rem) / 2); width:calc((100% - 3rem) / 2);}
.flex--half label{display:block; width:100%;}
.flex--half input,
.flex--half select,
.flex--half textarea,
.form-input,
.form--select,
.form--date{width:100%; height:3rem; padding-left:.5rem;}
.flex-row textarea{width:100%;}
.radio--option{display:flex; align-items:center; flex-wrap:wrap;}
.radio--option > *{margin-right:5px;}
.radio--option > *:last-child{margin-right:0;}
.radio--option label{display:inline-flex; width:auto; align-items:center; margin-right:1rem;}
.radio--option label:last-child{margin-right:0;}
.radio--option input[type='radio']{width:1rem !important; height:1rem !important; margin-right:1rem;}
.radio--option label input[type='radio']{flex:0 0 auto;}
.radio--option br{display:none;}
.field--error{background:red;}

.modern-file-input{color:#FFF; margin-bottom:1.5rem; padding-left:0 !important; height:4rem !important;}
.modern-file-input::file-selector-button {
  background-color: #0390c5;
  color: #FFF;
  border: none;
  padding: 10px 20px;
  cursor: pointer;
  font-weight: 600;
  margin-right: 15px;
  transition: background-color 0.2s ease;
}
.modern-file-input::file-selector-button:hover {
  background-color: #03a2de;
  color:#FFF;
}

.required-field{color:red;}

.form-submit--btn{background:#0390c5; color:#FFF; text-transform:uppercase; padding: 1rem 2rem; font-size:2rem; font-weight:700; border:none;}
.form-submit--btn:hover{background:#03a2de;}

header {
    background-color: #000;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
}
.header__logo-and-social {
    background-color: black;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    padding: 0;
    height: 12vw;
}
.header__rightside-desktop-links {
    display: none;
}
.header__logo {
    height: 6vw;
    width: auto;
    fill:#FFF;
}
.header__rightside-social-link {
    color: white;
    font-size: 20px;
    text-decoration: none;
    display: inline-block;
    -webkit-transition: 0.075s linear;
    transition: 0.075s linear;
}
.header__rightside-divider {
    background-color: #0390c5;
    width: 1px;
    height: 20px;
    opacity: 0.4;
}
.header__social-icon-img {
    height: 1.5vh !important;
    width: auto;
    -webkit-transition: all 0.075s linear;
    transition: all 0.075s linear;
    display: block;
}
.header__rightside-text-link {
    color: white;
    font-size: 14px;
    text-decoration: none;
    display: inline-block;
    -webkit-transition: 0.075s linear;
    transition: 0.075s linear;
}

footer {
    color: white;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 300;
    font-family: "Roboto", sans-serif;
    padding-bottom: 40px;
    background:#181818;
}
.footer__copyright {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
    font-size: 9px;
    color: #acacac;
}
.footer__jacksonmg-link-wrapper {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}
.footer__jacksonmg-link {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    border: 1px solid #0390c5;
    padding: 15px 25px;
    line-height: 1;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.footer__jacksonmg-link-txt {
    color: white;
    text-decoration: none;
    font-family: "Roboto", sans-serif;
    font-size: 9px;
    display: inline-block;
    background: red;
    background-color: #181818;
    padding: 17px 15px;
    margin: -17px;
}
.footer__social-links {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 20px auto 35px;
}
.footer__social-link {
    color: white;
    font-size: 20px;
    text-decoration: none;
    display: inline-block;
    -webkit-transition: 0.075s linear;
    transition: 0.075s linear;
    margin: 0 20px;
}
.footer__social-link:first-child {
    margin-left: 0;
}
.footer__social-icon-img {
    height: 20px !important;
    fill:#FFF;
}

.cookie-notice{
    position:fixed;
    bottom:1rem;
    left:1rem;
    right:1rem;
    width:auto;
    background:rgba(10,10,10,.94);
    color:#FFF;
    z-index:99;
    padding:1rem;
    border:1px solid rgba(255,255,255,.12);
    border-radius:1rem;
    box-shadow:0 18px 40px rgba(0,0,0,.35);
    backdrop-filter:blur(12px);
}
.cookie-wrapper{
    display:flex;
    flex-direction:column;
    gap:1rem;
    width:100%;
    max-width:1280px;
    margin:0 auto;
    align-items:flex-start;
}
.cookie--content{
    width:100%;
}
.cookie--content h3{
    margin:0 0 .5rem;
    font-size:1.35rem;
    font-weight:700;
    text-transform:uppercase;
}
.cookie--content p{
    margin:0;
    font-size:1rem;
    line-height:1.5;
    color:rgba(255,255,255,.84);
}
.cookie-buttons{
    display:flex;
    flex-direction:column;
    width:100%;
    gap:.75rem;
}
.cookie-buttons form{
    width:100%;
    margin:0;
}
.reject--all,
.accept--all{
    width:100%;
    min-height:3.5rem;
    border:2px solid #0390c5;
    padding:.9rem 1.25rem;
    font-size:.95rem;
    font-weight:700;
    line-height:1.2;
    text-transform:uppercase;
    transition:background-color .2s ease, color .2s ease, border-color .2s ease;
}
.reject--all{background:#FFF; color:#0390c5;}
.accept--all{background:#0390c5; color:#FFF;}
.reject--all:hover,
.reject--all:focus-visible{
    background:#dff5ff;
    color:#0278a5;
}
.accept--all:hover,
.accept--all:focus-visible{
    background:#03a2de;
    border-color:#03a2de;
}

.main--content{margin-top:5rem;margin-bottom:4rem;}

@media (max-width:767px){
    .flex-row{
        flex-direction:column;
        flex-wrap:wrap;
        gap:1rem;
    }
    .flex-row > *{
        width:100%;
        max-width:100%;
    }
    .flex--half{
        flex:0 0 100%;
        width:100%;
        max-width:100%;
    }
    .flex--half label,
    .flex-row > label,
    .form-input,
    .form--select,
    .form--date,
    .modern-file-input,
    .flex-row input,
    .flex-row select,
    .flex-row textarea{
        width:100% !important;
        max-width:100%;
    }
    .cookie-notice{
        bottom:.75rem;
        left:.75rem;
        right:.75rem;
        padding:1rem;
        border-radius:.875rem;
    }
}

@media (min-width:975px){
    header {
        height: auto;
        background-color: transparent;
        padding-top: 0;
    }
    .header__logo-and-social {
        width: 100%;
        background-color: black;
        padding: 1vw 2.3vw 1vw 7.6vw;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        height: auto;
    }
    .header__rightside-desktop-links {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        z-index: 90;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 1.75vw;
        -webkit-transition: all 0.1s linear;
        transition: all 0.1s linear;
    }
    .header__logo {
        height: 34px;
    }
    footer {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 40px 7.3vw 40px;
    }
    .footer__copyright {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        font-size: 12px;
        min-width: 20%;
        text-align: left;
    }
    .footer__jacksonmg-link-wrapper {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
    }
    .footer__jacksonmg-link-txt {
        font-size: 12px;
    }
    .footer__social-links {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
        min-width: 20%;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        margin: auto;
    }
    .cookie-wrapper{
        flex-direction:row;
        align-items:center;
        justify-content:space-between;
        gap:2rem;
    }
    .cookie--content{
        flex:1 1 auto;
        max-width:760px;
    }
    .cookie-buttons{
        flex:0 0 auto;
        width:auto;
        flex-direction:row;
        align-items:center;
        justify-content:flex-end;
    }
    .cookie-buttons form{
        width:auto;
    }
    .reject--all,
    .accept--all{
        width:auto;
        white-space:nowrap;
    }

}

@media (min-width:992px){
    input{width:auto;}
}

@media (min-width: 1600px) {
    .header__logo-and-social {
        width: 100%;
    }
    .header__rightside-desktop-links {
        gap: 1.5vw;
    }
    .header__logo {
        height: 3vw;
    }
    .header__rightside-social-link {
        font-size: 1.2vw;
    }
    .header__rightside-divider {
        height: 1.2vw;
    }
    .header__rightside-text-link {
        font-size: 0.875vw;
    }
    .footer__social-link {
        font-size: 1.2vw;
    }
    .main--content{margin-top:14rem;margin-bottom:4rem;}
    .container{margin:0 auto; width:60%;}
}
