
body {
    margin: auto;
    height: 100vh;
    width: 100vw;
}

@font-face {
    font-family: Bebas Neue;
    src: url("../fonts/BebasNeue Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: Bebas Neue;
    src: url("../fonts/BebasNeue Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: bold
}

@font-face {
    font-family: Bebas Neue;
    src: url("../fonts/BebasNeue Book.ttf") format("truetype");
    font-weight: 300;
    font-style: normal
}

@font-face {
    font-family: Roboto;
    src: url("../fonts/Roboto-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: Roboto;
    src: url("../fonts/Roboto-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: bold
}

@font-face {
    font-family: Roboto;
    src: url("../fonts/Roboto-Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal
}

@font-face {
    font-family: Roboto;
    src: url("../fonts/Roboto-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal
}

.join-virtual-family-layout {
    background-color: rgba(240, 180, 35, 1);
    background-image: url('../assets/Clipart_Crowd.png');
    background-repeat: no-repeat;
    background-size: 900px auto;
    background-position: center;
    min-height: 100%;
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}

.join-virtual-family-content {
    display: -ms-grid;
    -ms-grid-columns: 1fr 1fr;
    -ms-grid-rows: auto auto auto 1fr;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto 1fr;
    max-width: 560px;
    margin: 50px 0;
}

.join-virtual-family-logo {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column-align: center;
    -ms-grid-row-align: center;
    grid-column: 1/span 2;
    grid-row: 1/span 1;
    justify-self: center;
    align-self: center;
    height: 18px;
}

.join-virtual-family-flags {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column-align: stretch;
    -ms-grid-row-align: stretch;
    grid-column: 1 / span 2;
    grid-row: 2 / span 1;
    justify-self: stretch;
    align-self: stretch;
    padding: 8px;
    box-sizing: border-box;
    text-align: center;
    margin: 32px 0 0;
}

.join-virtual-family-flags img {
    height: 18px;
    background-color: transparent;
    margin: 0px 4px;
    cursor: pointer;
}

.join-virtual-family-top {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column-align: stretch;
    -ms-grid-row-align: stretch;
    grid-column: 1/span 2;
    grid-row: 2/span 1;
    justify-self: stretch;
    align-self: stretch;
    margin: 64px 8px 0;
    padding: 32px 16px;
    box-sizing: border-box;
    background: #fff;
    border-radius: 2px 2px 0 0;
    box-shadow: 0 7px 10px 0 rgba(0, 0, 0, .07);
}

.join-virtual-family-title {
    font-weight: 300;
    text-align: center;
    margin-top: 0;
    color: #000;
    font-family: Bebas Neue;
    font-size: 40px;
    letter-spacing: .8px;
    line-height: 48px;
}

.join-virtual-family-title-info {
    font-weight: 300;
    text-align: left;
    margin: 0 0 0 16px;
    color: #484848;
    font-family: Roboto;
    font-size: 16px;
    letter-spacing: 0.23px;
    line-height: 27px;
}

.join-virtual-family-mid {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column-align: stretch;
    -ms-grid-row-align: stretch;
    grid-column: 1/span 2;
    grid-row: 3/span 1;
    justify-self: stretch;
    align-self: stretch;
    box-sizing: border-box;
    display: -webkit-flex;
    display: flex;
    background: #fafafa;
    border-radius: 4px;
    border: 1px solid rgba(0, 0, 0, .05);
    box-shadow: 0 7px 10px 0 rgba(0, 0, 0, .07);
}

.join-virtual-family-mid-title {
    height: 100%;
    width: 172px;
    color: #909090;
    font-family: Roboto;
    font-size: 14px;
    letter-spacing: 0.2px;
    line-height: 24px;
    margin-left: 16px;
    margin-top: 16px !important;
    max-width: 50vw;
}

.join-virtual-family-mid-text {
    height: 100%;
    width: 236px;
    color: #000000;
    font-family: Roboto;
    font-size: 24px;
    font-weight: 300;
    letter-spacing: 0.34px;
    line-height: 27px;
    margin-left: 16px;
    margin-bottom: 16px !important;
    max-width: 50vw;
}

.join-virtual-family-mid-data {
    width: 100%;
}

.single-row {
    box-shadow: 0 -1px 0 0 rgba(0, 0, 0, .07);
    float: left;
    width: 100%;
}

.double-row {
    width: 100%;
    min-width: 230px;
    float: left;
    box-shadow: 1px -1px 0 0 rgba(0, 0, 0, .07);
}

.join-virtual-family-mid-data td {
    margin: 16px 0px 0px 16px;
}

.join-virtual-family-bot {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    -ms-grid-row: 4;
    -ms-grid-row-span: 1;
    -ms-grid-column-align: stretch;
    -ms-grid-row-align: stretch;
    grid-column: 1/span 2;
    grid-row: 4/span 1;
    justify-self: stretch;
    align-self: stretch;
    margin: 0 8px;
    padding: 32px 32px 8px;
    background: #fff;
    border-radius: 0 0 2px 2px;
    box-shadow: 0 7px 10px 0 rgba(0, 0, 0, .07);
}

.join-virtual-family-bot-agreement-check {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    float: left;
    margin-top: 6px;
}

.join-virtual-family-bot-agreement {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    float: left;
    max-width: 80%;
    height: 50px;
}

.join-virtual-family-buttons {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    -ms-grid-row: 5;
    -ms-grid-row-span: 1;
    -ms-grid-column-align: stretch;
    -ms-grid-row-align: stretch;
    grid-column: 1/span 2;
    grid-row: 5/span 1;
    justify-self: stretch;
    align-self: stretch;
    margin: 0 8px;
    padding: 0px 32px 32px;
    background: #fff;
    border-radius: 0 0 2px 2px;
    box-shadow: 0 7px 10px 0 rgba(0, 0, 0, .07);
}

.join-virtual-family-bottom-text {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    -ms-grid-row: 6;
    -ms-grid-row-span: 1;
    -ms-grid-column-align: stretch;
    -ms-grid-row-align: stretch;
    grid-column: 1/span 2;
    grid-row: 6/span 1;
    justify-self: stretch;
    align-self: stretch;
    margin: 24px 8px 0;
    color: #000;
    font-family: Roboto;
    font-size: 14px;
    font-weight: 300;
    letter-spacing: .2px;
    line-height: 18px;
    text-align: center;
}

.join-virtual-family-bottom-info.phone {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    -ms-grid-row: 7;
    -ms-grid-row-span: 1;
    -ms-grid-column-align: end;
    -ms-grid-row-align: stretch;
    grid-column: 1/span 1;
    grid-row: 7/span 1;
    justify-self: end;
    align-self: stretch;
    margin: 24px 32px 0 0;
}

.join-virtual-family-bottom-info.hours {
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    -ms-grid-row: 7;
    -ms-grid-row-span: 1;
    -ms-grid-column-align: start;
    -ms-grid-row-align: stretch;
    grid-column: 2/span 1;
    grid-row: 7/span 1;
    justify-self: start;
    align-self: stretch;
    margin: 24px 0 0 16px;
}

.join-virtual-family-bottom-info-img {
    width: 16px;
    height: 16px;
    vertical-align: middle;
}

.join-virtual-family-bottom-info-text {
    margin: 0 0 0 8px;
    vertical-align: middle;
    color: #000;
    font-family: Roboto;
    font-size: 14px;
    font-weight: 300;
    letter-spacing: .2px;
    line-height: 18px;
}

.black-checkbox {
    display: -ms-grid;
    -ms-grid-columns: 1fr;
    -ms-grid-rows: 1fr;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    width: 38px;
    height: 38px;
    margin: 0;
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 2px;
    box-sizing: border-box;
    transition-property: all;
    transition-duration: .6s;
    transition-timing-function: cubic-bezier(.1, .6, 0, 1);
}

.black-checkbox .black-checkbox_input {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column-align: stretch;
    -ms-grid-row-align: stretch;
    grid-column: 1/span 1;
    grid-row: 1/span 1;
    justify-self: stretch;
    align-self: stretch;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
}

.black-checkbox .black-checkbox_img {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column-align: center;
    -ms-grid-row-align: center;
    grid-column: 1/span 1;
    grid-row: 1/span 1;
    justify-self: center;
    align-self: center;
    width: 24px;
    height: 24px;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    box-sizing: border-box;
    border-radius: 50%;
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
}

.black-checkbox.checked {
    background: #000;
    border: 2px solid #000;
}

.black-checkbox .black-checkbox_input:checked + .black-checkbox_img {
    padding: 3px;
    border: 2px solid #ffcd00;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

.d-none {
    display: none !important;
}

.error-btn-container {
    grid-column: 1/span 2;
    grid-row: 5/span 1;
    justify-self: stretch;
    align-self: stretch;
    margin: 16px 8px 0 8px;
    justify-content: center;
    align-content: center;
    display: flex;
}

.error-btn {
    width: 100%;
    margin: 0 !important;
}

button {
    padding: 0;
    background: none;
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
}

.agree-with-terms-btn:disabled, .agree-with-terms-btn[disabled] {
    cursor: not-allowed;
    background: #8e8b8b;
    border: 1px solid #827f7f;
    color: white;
}

button.join-virtual-family-submit {
    cursor: pointer;
    border-radius: 2px;
    transition-property: all;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.1, .6, 0, 1);
    height: 48px;
    margin: 16px 0 0 0;
    padding: 0 32px;
    border: 1px solid #000;
    box-sizing: border-box;
    font-family: Roboto;
    font-size: 14px;
    letter-spacing: .2px;
    line-height: 16px;
    width: calc(100% - 5px);
}

.floatright {
    float: right !important;
}

.buttondark {
    background-color: #000;
    color: white;
}

#buttons-container {
    display: -ms-grid;
    -ms-grid-columns: 1fr 1fr;
    -ms-grid-rows: auto auto auto 1fr;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

.disagree-with-terms-btn-container {
    grid-column: 1;
    grid-row: 1/span 1;
}

.leave-virtual-family-btn-container {
    grid-column: 2;
    grid-row: 1/span 1;
}

.agree-with-terms-btn-container {
    grid-column: 3;
    grid-row: 1/span 1;
}

.disagree-with-terms-btn-container, .leave-virtual-family-btn-container, .agree-with-terms-btn-container {
    text-align: center;
}

@media (min-width: 480px) {
    .double-row {
        width: 50%;
    }
}

@media (max-width: 560px) {
    #buttons-container {
        grid-template-columns: 1fr;
    }

    .disagree-with-terms-btn-container {
        grid-column: 1;
        grid-row: 1/span 1;
    }

    .leave-virtual-family-btn-container {
        grid-column: 1;
        grid-row: 2/span 1;
    }

    .agree-with-terms-btn-container {
        grid-column: 1;
        grid-row: 3/span 1;
    }
}