*, p, ol, ul {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

ol,
ul {
    padding-left: calc(0.125vw + 17.6px);
}

:focus {
    outline: none;
}

html {
    font-size: 16px;
}

body {
    font-family: 'Roboto', sans-serif;
}

/*-----Link Style-----*/

a,
a:focus,
a:active,
a:active:focus {
    color: #ff9f00;
    text-decoration: none;
    outline: none;
    font-weight: normal;
}

a:hover {
    color: #ff9f00;
    text-decoration: underline;
}

.rl-uppercase {
    text-transform: uppercase;
}

/*-------- color ---------- */
.rl-color-black1 {
    color: #080808;
}

/*----------Layout--------- */

.rl-row-1440 {
    max-width: 1440px;
    margin: 0 12.1%;
    padding-right: 15px;
    padding-left: 15px;
}

@media screen and (max-width: 1440px) {
    .rl-row-1440 {
        margin: 0 4.17%;
    }
}

@media screen and (max-width: 991px) {
    .rl-row-1440 {
        padding-right: 15px !important;
        padding-left: 15px !important;
        margin: 0 auto;
    }
}

/*------------ col -----------*/
.rl-cards {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
}

.rl-cards>div {
    width: 100%;
}

.rl-column-2>div {
    width: calc(100% / 2);
}

.rl-column-3>div {
    width: calc(100% / 3);
}

.rl-column-4>div {
    width: calc(100% / 4);
}

.rl-column-5>div {
    width: calc(100% / 5);
}

.rl-column-6>div {
    width: calc(100% / 6);
}

.rl-column-center {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.rl-column-space-7dot5>div {
    padding-left: 7.5px;
    padding-right: 7.5px;
}

.rl-column-space-15>div {
    /*15, 7.5*/
    padding-left: calc(0.5vw + 5.4px);
    padding-right: calc(0.5vw + 5.4px);
}

.rl-column-space-20>div {
    /*20, 7.5*/
    padding-left: calc(0.8125vw + 4.4px);
    padding-right: calc(0.8125vw + 4.4px);
}

.rl-column-space-25>div {
    /*25, 7.5*/
    padding-left: calc(1.125vw + 3.4px);
    padding-right: calc(1.125vw + 3.4px);
}

.rl-column-space-30>div {
    /*30, 7.5*/
    padding-left: calc(1.4375vw + 2.4px);
    padding-right: calc(1.4375vw + 2.4px);
}

.rl-column-space2-wrapper {
    overflow: hidden;
}

.rl-column-space2-7dot5 {
    margin-left: -7.5px;
    margin-right: -7.5px;
}

.rl-column-space2-15 {
    margin-left: calc((0.5vw + 5.4px) * (-1));
    margin-right: calc((0.5vw + 5.4px) * (-1));
}

.rl-column-space2-20 {
    margin-left: calc((0.8125vw + 4.4px) * (-1));
    margin-right: calc((0.8125vw + 4.4px) * (-1));
}

.rl-column-space2-25 {
    margin-left: calc((1.125vw + 3.4px) * (-1));
    margin-right: calc((1.125vw + 3.4px) * (-1));
}

.rl-column-space2-30 {
    margin-left: calc((1.4375vw + 2.4px) * (-1));
    margin-right: calc((1.4375vw + 2.4px) * (-1));
}

.rl-column-space2-7dot5>div {
    padding-left: 7.5px;
    padding-right: 7.5px;
}

.rl-column-space2-15>div {
    padding-left: calc(0.5vw + 5.4px);
    padding-right: calc(0.5vw + 5.4px);
}

.rl-column-space2-20>div {
    padding-left: calc(0.8125vw + 4.4px);
    padding-right: calc(0.8125vw + 4.4px);
}

.rl-column-space2-25>div {
    padding-left: calc(1.125vw + 3.4px);
    padding-right: calc(1.125vw + 3.4px);
}

.rl-column-space2-30>div {
    padding-left: calc(1.4375vw + 2.4px);
    padding-right: calc(1.4375vw + 2.4px);
}

@media screen and (max-width: 1199px) {
    .rl-column-5>div,
    .rl-column-6>div {
        width: calc(100% / 3);
    }
}

@media screen and (max-width: 991px) {
    .rl-column-4>div,
    .rl-column-6>div {
        width: calc(100% / 2);
    }
}

@media screen and (max-width: 767px) {
    .rl-column-2>div,
    .rl-column-3>div,
    .rl-column-4>div,
    .rl-column-5>div,
    .rl-column-6>div {
        width: 100%;
    }

    .rl-column-5>div {
        width: calc(100% / 2);
    }
}

@media screen and (max-width: 575px) {
    .rl-column-2>div,
    .rl-column-3>div,
    .rl-column-4>div,
    .rl-column-6>div {
        width: 100%;
    }
}

@media screen and (max-width: 470px) {
    .rl-column-5>div {
        width: 100%;
    }
}

/*--------text-size------ */
.rl-text-sm {
    font-size: calc( 26.4px + 0.5vw);

    /*36*/
    font-weight: 300;
    line-height: 1.1;
}

.rl-text-xs {
    font-size: calc( 22.8px + 0.375vw);

    /*30*/
    font-weight: 300;
    line-height: 1.1;
}

.rl-text-desc {
    font-size: calc(0.125vw + 15.6px);
    line-height: 1.5;
    font-weight: 400;
}

.rl-text-desc-lg {
    font-size: calc(0.25vw + 25.2px);
}

.rl-text-desc-md {
    font-size: calc(0.25vw + 19.2px);
}

.rl-text-desc-sm {
    font-size: calc(0.125vw + 13.6px);
}

.rl-color-important {
    color: #ff9f00;
}

.rl-text-light {
    font-weight: 300;
}

.rl-text-normal {
    font-weight: 400;
}

.rl-text-medium {
    font-weight: 500;
}

/*--------text-align------ */

.rl-text-center {
    text-align: center;
}

.rl-text-left {
    text-align: left;
}

.rl-text-right {
    text-align: right;
}

/*----- 90px ----- */

.rl-row-90 {
    padding-top: calc( 30px + 3.125vw);
    padding-bottom: calc( 30px + 3.125vw);
}

.rl-row-top-90 {
    padding-top: calc( 30px + 3.125vw);
    padding-bottom: 0;
}

.rl-row-bottom-90 {
    padding-bottom: calc( 30px + 3.125vw);
}

/*----- 80px ----- */

.rl-row-80 {
    padding-top: calc( 32px + 2.5vw);
    padding-bottom: calc( 32px + 2.5vw);
}

.rl-row-top-80 {
    padding-top: calc( 32px + 2.5vw);
    padding-bottom: 0;
}

.rl-row-bottom-80 {
    padding-top: 0;
    padding-bottom: calc( 32px + 2.5vw);
}

/*----- 60px ----- */

.rl-row-60 {
    padding-top: calc( 24px + 1.875vw);
    padding-bottom: calc( 24px + 1.875vw);
}

.rl-row-top-60 {
    padding-top: calc( 24px + 1.875vw);
    padding-bottom: 0;
}

.rl-row-bottom-60 {
    padding-top: 0;
    padding-bottom: calc( 24px + 1.875vw);
}

/*----- 50 px ----- */

.rl-row-50 {
    padding-top: calc( 14px + 1.875vw);
    padding-bottom: calc( 14px + 1.875vw);
}

.rl-row-top-50 {
    padding-top: calc( 14px + 1.875vw);
    padding-bottom: 0;
}

.rl-row-bottom-50 {
    padding-top: 0;
    padding-bottom: calc( 14px + 1.875vw);
}

/*----- 40 px ----- */

.rl-row-40 {
    padding-top: calc( 16px + 1.25vw);
    padding-bottom: calc( 16px + 1.25vw);
}

.rl-row-top-40 {
    padding-top: calc( 16px + 1.25vw);
    padding-bottom: 0;
}

.rl-row-bottom-40 {
    padding-top: 0;
    padding-bottom: calc( 16px + 1.25vw);
}

/*----- 30 px ----- */

.rl-row-30 {
    padding-top: calc(0.625vw + 18px);
    padding-bottom: calc(0.625vw + 18px);
}

.rl-row-top-30 {
    padding-top: calc(0.625vw + 18px);
    padding-bottom: 0;
}

.rl-row-bottom-30 {
    padding-top: 0;
    padding-bottom: calc(0.625vw + 18px);
}

/*----- 20 px ----- */

.rl-row-20 {
    padding-top: 20px;
    padding-bottom: 20px;
}

.rl-row-top-20 {
    padding-top: 20px;
    padding-bottom: 0;
}

.rl-row-bottom-20 {
    padding-top: 0;
    padding-bottom: 20px;
}

/*----- 15 px ----- */

.rl-row-15 {
    padding-top: 15px;
    padding-bottom: 15px;
}

.rl-row-top-15 {
    padding-top: 15px;
    padding-bottom: 0;
}

.rl-row-bottom-15 {
    padding-top: 0;
    padding-bottom: 15px;
}

/*----- 10 px ----- */

.rl-row-10 {
    padding-top: 10px;
    padding-bottom: 10px;
}

.rl-row-top-10 {
    padding-top: 10px;
    padding-bottom: 0;
}

.rl-row-bottom-10 {
    padding-top: 0;
    padding-bottom: 10px;
}

/*-----img------ */

.rl-img-response {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

/*--------------- showcase -------------- */
.rl-showcase-info {
    width: 93%;
    position: absolute;
    bottom: 28px;
    left: 50%;
    z-index: 2;
    transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.rl-showcase-logo {
    width: 100%;
    position: absolute;
    bottom: 68px;
    z-index: 2;
    left: 50%;
    transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.card-title {
    font-size: calc(0.125vw + 21.6px);
    font-weight: 500;
    margin-bottom: 10px;
    line-height: 1.2;
    color: #fff;

    /*24-18*/
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    display: block;
}

.card-desc {
    line-height: 1.3;
    color: #fff;
    font-size: calc(0.125vw + 15.6px);
    font-family: Roboto;
    font-weight: 300;

    /*24-18*/
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    display: block;
    margin-bottom: 10px;
}

.rl-home-showcase .mask {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    -webkit-transition: box-shadow 0.2s ease-out;
    transition: box-shadow 0.2s ease-out;
    box-shadow: inset 0px -65px 60px 25px rgba(0, 0, 0, 0.9);
}

.rl-home-showcase:hover .mask {
    box-shadow: inset 0px -40px 80px 65px rgba(0, 0, 0, 0.86);
}

/*---------------- flex ------------ */
.flex-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.rl-flex {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.rl-flex-wrap{
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.rl-flex-center{
    -webkit-box-pack: center;
    -ms-flex-pack: center;
            justify-content: center;
}

.rl-flex-vertical-center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.rl-flex-vertical-bottom {
    -webkit-box-align: flex-end;
    -ms-flex-align: flex-end;
    align-items: flex-end;
}

@media screen and (max-width: 767px) {
    .flex-container {
        flex-direction: column !important;
        align-items: left;
    }
}

/*------------------------------------$Play button------------------------------------ */

.rl-rel {
    position: relative;
    display: block;
}

.rl-play-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(40px + 2.5vw);
    height: calc(40px + 2.5vw);
    border-radius: 50%;
    margin: calc( (( 40px + 2.5vw) / 2) * (-1)) 0 0 calc( (( 40px + 2.5vw) / 2) * (-1));
    border: 3px solid #e4e4e4;
    background: #0009;
    -webkit-transition: background 0.3s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
    -o-transition: background 0.3s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transition: background 0.3s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: background 0.3s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: background 0.3s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: background 0.3s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
}

.rl-rel:hover .rl-play-wrapper {
    -webkit-transform: scale(1.1, 1.1);
    -moz-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
}

.rl-play {
    width: 0;
    height: 0;
    border-top: solid calc(0.625vw + 8px) transparent;
    border-right: solid 0px transparent;
    border-bottom: solid calc(0.625vw + 8px) transparent;
    border-left: solid calc(0.9375vw + 12px) #fff;
    margin-left: 7px;
}

.rl-color-4c4c4c {
    color: #4c4c4c;
}

.rl-color-black {
    color: black;
}

.mfp-iframe-holder .mfp-content {
    max-width: 80%;
}

/*------------- custom ----------- */
.rl-free-resources-area {
    padding: calc(0.625vw + 8px) calc(1.25vw + 16px);
}

.rl-row-bottom-5to0 {
    padding-bottom: calc(0.3125vw + -1px);
}

.rl-inspirational-author {
    color: #fff;
    position: absolute;
    right: 20px;
    bottom: 15px;
    z-index: 2;
}

.rl-flex-right {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

@media screen and (max-width: 1400px) {
    .s-rl-column-3>div {
        width: calc(100% / 2);
    }
}

@media screen and (max-width: 768px) {
    .s-rl-column-3>div {
        width: 100%;
    }
}

/*------------------- banner --------------- */
.rl-banner {
    background-image: url(../../images/covid-19/COVID-19-Reallusion_main.png);
    background-repeat: no-repeat;
    background-position: right;
    background-size: cover;
    height: 32.969vw;
    position: relative;
}

.rl-banner-title,
.rl-banner-wrapper:hover a,
.rl-banner-wrapper:focus a,
.rl-banner-wrapper:active a,
.rl-banner-wrapper:focus:active a,
.rl-banner-desc,
.rl-banner-action-text {
    font-family: 'Oswald', 'Roboto Condensed', 'Roboto', sans-serif;
    color: #fff;
    line-height: 1.2;
    text-decoration: none;
}

.rl-banner-title {
    font-size: calc(3.4375000000000004vw + 9px);
}

.rl-banner-desc {
    font-size: calc(5.75vw + 9.6px);
    margin-top: calc(-0.625vw + 2px);
}

.rl-banner-action-text {
    font-size: calc(0.375vw + 22.8px);
    margin-top: 5px;
    display: block;
    text-shadow: black 0.1em 0.1em 0.2em;
}

.rl-banner .rl-play-wrapper {
    position: static;
    margin: 0;
}

@media screen and (max-width: 767px) {
    .rl-banner {
        background-image: url(../../images/covid-19/COVID-19-Reallusion_main-mobile.png);
        height: 65.11vw;
    }
}

@media screen and (max-width: 767px) {
    .rl-banner-text-area {
        width: 55%;
    }
}

/*------------------ case ------------- */
.rl-case-wrapper {
    background-color: #f3f3f3;
    padding: calc(0.625vw + 18px) calc(0.9375vw + 22px);
    padding-bottom: calc(0.625vw + 90px);
    margin-bottom: calc( 16px + 1.25vw);
}

.rl-case-subtitle {
    font-size: calc(0.25vw + 21.2px);
}

.rl-btn-action {
    margin: 10px calc(10px + 0.75vw);
    color: #fff;
    background-color: #ff9f00;
    border: 2px solid #ff9f00;
    border-radius: 0;
    outline: none;
    font-size: 1.125rem;
    font-weight: 400;
    min-width: 200px;
    line-height: 34px;
    cursor: pointer;
}

.rl-btn-action:hover {
    color: #ff9f00;
    background-color: transparent;
}

.rl-btn-action-warpper {
    position: absolute;
    margin: 0 auto;
    max-width: calc(100% - 80px);
    width: 100%;
    bottom: calc(0.625vw + 18px);
}

.rl-case-label {
    position: absolute;
    top: -10px;
    left: 0;
    width: 15%;
}

/*------------- dialog --------------- */
.rl-dialog-overlay {
    width: 100vw;
    height: 100vh;
    max-width: 100%;
    position: fixed;
    z-index: 99999999;
    background: rgba(0, 0, 0, 0.8);
    top: 0;
    left: 0;
    display: none;
}

.rl-dialog-area {
    width: 100%;
    height: auto;
    position: fixed;
    top: 50%;
    left: 50%;
    background-color: #fff;
    z-index: 99999999;
    max-width: 600px;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    padding: calc(0.625vw + 18px);
    overflow: auto;
}

.rl-dialog-area .close {
    position: absolute;
    display: block;
    width: 15px;
    height: 15px;
    overflow: hidden;
    right: 3px;
    top: 3px;
    z-index: 100;

    /* background-color: rgba(255,255,255,0.4); */
    cursor: pointer;
    margin-top: -15px;
    margin-right: -10px;
}

.rl-dialog-area .close::before,
.rl-dialog-area .close::after {
    content: '';
    position: absolute;
    height: 2px;
    width: 100%;
    top: 50%;
    left: 0;
    margin-top: -1px;
    background: black;
}

.rl-dialog-area .close::before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.rl-dialog-area .close::after {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.rl-padding-left {
    padding-left: 20px;
}

/*------------- play video with text ------------ */
.rl-video-with-text {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.rl-video-with-text .rl-play-wrapper{
    position: static;
    margin: 0 auto;
}

@media screen and (max-width: 991px) {
    .rl-free-resources-wrapper {
        flex-direction: column !important;
    }
}