@import url('https://fonts.googleapis.com/css2?family=Barlow:ital,wght@1,500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Philosopher&display=swap');

.three-box {
    background-color: #e1e9ec;
    background-image: url('../images/three-box-bg.jpg');
    background-repeat: no-repeat;
    background-position: bottom center;
    padding-top: 50px;
    padding-bottom: 120px;
}

.three-box .box {
    border: 2.5px solid rgb(225, 233, 236);
    background-color: rgba(255, 255, 255, 0.702);
    box-shadow: 0px 0px 10px 0px rgba(7, 37, 98, 0.16);
    width: 320px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 30px 20px;
    box-sizing: border-box;
    text-align: center;
    max-height: 100%;
    height: 320px;
    border-radius: 25px;
    margin-bottom: 25px;
}

.three-box .container {
    justify-content: space-between;
    align-content: space-around;
}

.three-box .title{
    padding-bottom: 78px;    
}

.three-box .title p{
    font-family: 'Philosopher', sans-serif;
    font-size: 23px;
    font-weight: 500;
    font-style: italic;
    color: rgb(67, 67, 68);
    text-align: center;
}

.three-box .title p:first-child{
    font-weight: bold;
}

.three-box .box img {
    width: 190px;
    height: 190px;
}

.three-box .box h3 {
    font-family: 'Barlow', sans-serif;
    font-weight: bold;
    font-size: 18px;
    color: #092c74;
    text-transform: uppercase;
    margin-top: 45px;
}

.three-box .box a {
    text-decoration: none;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.flex-column{
    flex-direction: column;
}

.flex-row{
    flex-direction: row;
}

.three-box .content,
.cvform .content {
    width: 95%;
    max-width: 1140px;
    margin-right: auto;
    margin-left: auto;
}

.cvform-container {
    width: 780px;
    display: flex;
    flex-direction: column;
}

.two-col {
    display: flex;
    flex-direction: row;
    margin-bottom: 20px;
}

.cvform-container .mb {
    width: 100%;
    position: relative;
    display: block;
    min-height: 48px;
}

.form-control,
.form-select,
.file-input,
.btn,
details {
    width: 360px !important;
}

.cvform {
    background-color: #e1e9ec;
    background-image: url('../images/form-bg.jpg');
    background-repeat: no-repeat;
    background-position: bottom center;
    padding-bottom: 50px;
    padding-top: 60px;
    font-family: 'Barlow', sans-serif;
}

.form-control {
    display: block;
    padding: 10.5px 30px;
    font-size: 18px;
    font-weight: 500;
    font-style: italic;
    line-height: 1.5;
    color: #818181;
    background-color: #fff;
    background-clip: padding-box;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 22px;
}

.form-select {
    display: block;
    padding: 10.5px 30px;
    -moz-padding-start: calc(0.75rem - 3px);
    font-size: 18px;
    font-weight: 500;
    font-style: italic;
    line-height: 1.5;
    color: #818181;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-size: 16px 12px;
    border: none;
    border-radius: 22px;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5em;
    margin-bottom: .125rem
}

.form-check .form-check-input {
    float: left;
    margin-left: -10px;
}

.form-check-input {
    width: 1em;
    height: 1em;
    margin-top: .25em;
    vertical-align: top;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 2px solid rgba(0, 0, 0, .25);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-print-color-adjust: exact;
    color-adjust: exact
}

.form-check-input:checked {
    background-color: #072562;
    border-color: #072562
}

.form-check-input:checked[type=checkbox] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e")
}

details {
    display: block;
    padding-right: 0;
    font-size: 18px;
    font-weight: 500;
    font-style: italic;
    line-height: 1.5;
    color: #818181;
    background-color: #fff;
    border-radius: 22px;
    cursor: pointer;
    box-sizing: border-box;
    position: absolute;
}

details.z-1 {
    z-index: 999;
}

details.z-2 {
    z-index: 998;
}

details summary::marker {
    display: none;
}

details summary {
    list-style: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-size: 16px 12px;
    padding: 10.5px 30px;
}

details[open] {
    background-color: #25aae1;
    color: #fff;
    border-bottom-right-radius: 0;
}

details[open] li {
    color: #072562;
}

.list-group {
    padding: 5px 30px 45px 30px;
    margin-top: 0;
    overflow-y: scroll;
    height: 158px;
}

.list-group::-webkit-scrollbar {
    width: 5px;
}

.list-group::-webkit-scrollbar-track {
    background-color: #25aae1;
    border-radius: 100px;
}

.list-group::-webkit-scrollbar-thumb {
    background-color: #fff;
    border-radius: 100px;
}

.list-group label {
    width: 100%;
}

.mb {
    margin-bottom: 22px;
}

.flex-fill {
    flex: 1 1 auto !important;
}

.d-flex {
    display: flex;
}

.justify-content-end {
    justify-content: end;
}

.justify-content-between {
    justify-content: space-between;
}

.btn {
    color: #fff;
    background-color: #8dd491;
    display: inline-block;
    font-weight: 500;
    line-height: 1.5;
    text-decoration: none;
    vertical-align: middle;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    width: 100%;
    padding: 10.5px 30px;
    font-size: 18px;
    border: 1px solid transparent;
    user-select: none;
    border-radius: 22px;
    cursor: pointer;
}

.file-input {
    padding: 10.5px 30px;
    font-size: 18px;
    line-height: 1.5;
    font-weight: 500;
    font-style: italic;
    border-radius: 22px;
    color: #818181;
    background-color: #c7c7c7;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='39px' height='30px'%3E%3Cpath fill-rule='evenodd' fill='rgb(103, 103, 103)' d='M38.496,1.310 L38.496,28.690 C38.496,29.136 38.139,29.497 37.699,29.497 L12.249,29.497 C11.809,29.497 11.452,29.136 11.452,28.690 L11.452,20.374 C11.452,19.928 11.809,19.567 12.249,19.567 C12.690,19.567 13.046,19.928 13.046,20.374 L13.046,27.883 L36.902,27.883 L36.902,2.117 L13.046,2.117 L13.046,9.626 C13.046,10.072 12.690,10.433 12.249,10.433 C11.809,10.433 11.452,10.072 11.452,9.626 L11.452,1.310 C11.452,0.864 11.809,0.503 12.249,0.503 L37.699,0.503 C38.139,0.503 38.496,0.864 38.496,1.310 ZM17.370,9.088 C17.682,8.773 18.186,8.773 18.497,9.088 L23.773,14.429 C23.847,14.503 23.905,14.591 23.946,14.690 C23.986,14.787 24.008,14.892 24.008,15.000 C24.008,15.108 23.986,15.213 23.946,15.311 C23.905,15.409 23.847,15.498 23.773,15.572 L18.497,20.912 C18.186,21.228 17.682,21.228 17.370,20.912 C17.059,20.597 17.059,20.087 17.370,19.771 L21.286,15.807 L1.288,15.807 C0.847,15.807 0.491,15.446 0.491,15.000 C0.491,14.554 0.847,14.193 1.288,14.193 L21.286,14.193 L17.370,10.229 C17.059,9.914 17.059,9.403 17.370,9.088 Z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 30px center;
    background-size: 35px 27px;
    box-sizing: border-box;
}

.file-input label {
    width: 80%;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}


.file-input>input {
    display: none;
}

.form-check-lg {
    font-size: 11px;
    font-weight: 500;
    font-style: italic;
    line-height: 1.5;
    color: #818181;
}

.form-check-lg a {
    color: #818181;
}

.form-check-lg .form-check-input {
    width: 23px;
    height: 23px;
    background: #fff;
    border-color: transparent;
}

.form-check-lg label {
    margin-left: 25px;
}

.form-check-lg .form-check-input:checked {
    background-color: #072562;
    border: 4px solid #fff;
    background-image: none;
}

.d-none {
    display: none !important;
}

.thanks {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgb(9 44 116 / 85%);
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    z-index: 9999;
}

.thanks .title,
.thanks .text {
    font-family: 'Philosopher', sans-serif;
    font-size: 36px;
    margin-bottom: 20px;
}

.thanks .text {
    font-size: 20px;
    margin-top: 0;
    margin-bottom: 80px;
}

.thanks .text {
    font-size: 20px;
    margin-top: 0;
    margin-bottom: 80px;
}

.thanks svg {
    width: 262px;
}

.thanks img,
.thanks svg {
    max-width: 100%;
    height: auto;
}

.cvformError {
    position: absolute;
    background-color: #d7a8a8;
    left: 380px;
    right: -300px;
    top: 0;
    text-align: center;
    z-index: 999;
    color: #8d1818;
    font-size: 12px;
    line-height: 48px;
    border-radius: 10px;
}

.cvformError:before {
    content: "\A";
    border-style: solid;
    border-width: 14px 15px 14px 0;
    border-color: transparent #d7a8a8 transparent transparent;
    position: absolute;
    left: -14px;
    top: 10px;
}

.check-box {
    display: block;
    padding: 10.5px 30px;
    font-size: 18px;
    font-weight: 500;
    font-style: italic;
    line-height: 1.5;
    color: #818181;
    background-color: #fff;
    border-radius: 22px;
    width: 300px;
}

.btn-group {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
    margin: 19px .125rem;
    box-sizing: border-box;
}

.btn-check {
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    background-color: #f1f1f1;
    border: 1px solid #b9b9b9;
    padding: 4px 50px;
    font-size: 1rem;
    border-radius: 16px;
}

.btn-check.r1 {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.btn-check.r2 {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.btn-check-d:checked+.btn-check {
    color: #fff;
    background-color: #c7c7c7;
    border-color: #c7c7c7;
}

.btn-check-d {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none;
}

@media (max-width: 980px) {
    .three-box .container {        
        flex-wrap: wrap;
    }

    .three-box .col{
        width: 50%;
    }

}

@media (max-width: 768px) {
    .cvform {
        padding-top: 50px;
    }

    .cvform-container {
        display: block;
    }

    .three-box .title {
        padding-bottom: 15px;
    }

    .three-box .box,
    .three-box .col,
    .cvform-container .mb {
        width: 100%;
    }

    .three-box .container,
    .cvform-container .two-col {
        flex-direction: column;
    }

    .form-control,
    .form-select,
    .file-input,
    .check-box,
    .btn,
    details {
        width: 100% !important;
    }
}