/* ======================================== */
/* HERO RECORRIDO */
/* ======================================== */

.virtual-hero{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:center;

    overflow:hidden;
}

/* BACKGROUND */

.virtual-bg{

    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;
}

/* OVERLAY */

.virtual-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
    90deg,
    rgba(0,0,0,.72) 0%,
    rgba(0,0,0,.55) 45%,
    rgba(0,0,0,.15) 100%
    );

    z-index:1;
}

/* CONTAINER */

.virtual-container{

    position:relative;

    z-index:5;

    width:100%;

    padding:
    160px
    7%
    90px;
}

/* CONTENT */

.virtual-content{

    max-width:700px;
}

/* TAG */

.virtual-content span{

    display:inline-block;

    color:#ff5a1f;

    font-size:14px;

    font-weight:700;

    letter-spacing:4px;

    margin-bottom:24px;
}

/* TITLE */

.virtual-content h1{

    color:#fff;

    font-size:62px;

    line-height:1;

    font-weight:900;

    letter-spacing:-2px;

    margin-bottom:28px;

    max-width:700px;
}

/* TEXT */

.virtual-content p{

    color:#fff;

    font-size:18px;

    line-height:1.7;

    max-width:620px;

    opacity:.92;

    margin-bottom:40px;
}

/* BUTTONS */

.virtual-buttons{

    display:flex;

    gap:20px;

    flex-wrap:wrap;
}

/* BUTTON */

.virtual-btn{

    background:#E14514;

    color:#fff;

   padding:16px 28px;

    border-radius:50px;

    text-decoration:none;

    font-weight:700;

    transition:.3s;
}

.virtual-btn:hover{

    transform:translateY(-3px);

    background:#c63a0f;
}

/* OUTLINE */

.virtual-btn-outline{

    border:2px solid rgba(255,255,255,.7);

    color:#fff;

    padding:16px 28px;
    border-radius:50px;

    text-decoration:none;

    font-weight:700;

    transition:.3s;
}

.virtual-btn-outline:hover{

    background:#fff;

    color:#000;
}

/* ======================================== */
/* KUULA SECTION */
/* ======================================== */

.kuula-section{

    padding:
    120px
    7%;

    background:#f5f7f5;
}

/* HEADER */

.kuula-header{

    text-align:center;

    max-width:900px;

    margin:auto auto 70px;
}

.kuula-header span{

    display:inline-block;

    color:#ff5a1f;

    font-size:14px;

    font-weight:700;

    letter-spacing:4px;

    margin-bottom:24px;
}

.kuula-header h2{

    font-size:58px;

    line-height:1.05;

    color:#0d0d0d;

    margin-bottom:24px;

    font-weight:900;
}

.kuula-header p{

    font-size:18px;

    line-height:1.8;

    color:#5f5f5f;
}

/* KUULA FRAME */

.kuula-wrapper{

    width:100%;

    border-radius:28px;

    overflow:hidden;

    box-shadow:
    0 30px 80px rgba(0,0,0,.12);
}

.kuula-frame{

    width:100%;

    height:680px;

    border:none;

    display:block;
}

/* ======================================== */
/* MOBILE */
/* ======================================== */

@media(max-width:768px){

    .virtual-container{

        padding:
        170px
        24px
        70px;
    }

    .virtual-content h1{

        font-size:44px;

        line-height:1;

        letter-spacing:-1px;

        margin-bottom:24px;
    }

    .virtual-content p{

        font-size:16px;

        line-height:1.7;

        max-width:100%;

        margin-bottom:32px;
    }

    .virtual-buttons{

        flex-direction:column;
    }

    .virtual-btn,
    .virtual-btn-outline{

        width:100%;

        text-align:center;

        padding:16px 24px;

        font-size:15px;
    }

    /* KUULA */

    .kuula-section{

        padding:
        90px
        24px;
    }

    .kuula-header h2{

        font-size:38px;
    }

    .kuula-header p{

        font-size:16px;
    }

    .kuula-frame{

        height:500px;
    }

}

/* ========================================
LARGE DESKTOP
======================================== */

@media(max-width:1600px){

.virtual-content h1{

    font-size:64px;
}

.kuula-header h2{

    font-size:54px;
}

}

/* ========================================
LAPTOP
======================================== */

@media(max-width:1400px){

.virtual-content{

    max-width:620px;
}

.virtual-content h1{

    font-size:58px;
}

.virtual-content p{

    font-size:18px;
}

.kuula-frame{

    height:620px;
}

}

/* ========================================
TABLET
======================================== */

@media(max-width:992px){

.virtual-hero{

    min-height:85vh;
}

.virtual-container{

    padding:
    150px
    50px
    80px;
}

.virtual-content h1{

    font-size:50px;

    line-height:1;
}

.virtual-content p{

    font-size:17px;

    max-width:100%;
}

.virtual-buttons{

    gap:14px;
}

.kuula-section{

    padding:
    100px
    50px;
}

.kuula-header h2{

    font-size:46px;
}

.kuula-header p{

    font-size:18px;
}

.kuula-frame{

    height:560px;
}

}

/* ========================================
MOBILE
======================================== */

@media(max-width:768px){

.virtual-hero{

    min-height:auto;
}

.virtual-overlay{

    background:
    linear-gradient(
    to bottom,
    rgba(0,0,0,.78),
    rgba(0,0,0,.35)
    );
}

.virtual-container{

    padding:
    140px
    24px
    70px;
}

.virtual-content span{

    font-size:12px;

    letter-spacing:3px;
}

.virtual-content h1{

    font-size:40px;

    line-height:1.02;

    margin-bottom:20px;
}

.virtual-content p{

    font-size:15px;

    line-height:1.7;

    margin-bottom:30px;
}

.virtual-buttons{

    width:100%;

    flex-direction:column;
}

.virtual-btn,
.virtual-btn-outline{

    width:100%;

    justify-content:center;

    padding:
    15px
    24px;

    font-size:14px;
}

.kuula-section{

    padding:
    80px
    24px;
}

.kuula-header{

    margin-bottom:40px;
}

.kuula-header span{

    font-size:12px;

    letter-spacing:3px;
}

.kuula-header h2{

    font-size:36px;

    line-height:1.05;
}

.kuula-header p{

    font-size:15px;

    line-height:1.7;
}

.kuula-wrapper{

    border-radius:22px;
}

.kuula-frame{

    height:420px;
}

}

/* ========================================
SMALL MOBILE
======================================== */

@media(max-width:480px){

.virtual-content h1{

    font-size:34px;
}

.kuula-header h2{

    font-size:30px;
}

.kuula-frame{

    height:340px;
}

}

