/* =========================
   RESET
========================= */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* =========================
   BODY
========================= */

body {

    font-family: Arial, sans-serif;

    background: #06061b;

    color: white;

    overflow-x: hidden;

}

body::before {

    content: "";

    position: fixed;

    inset: 0;

    z-index: -1;

    background-image:
    url("../assets/images/ForeGround.png");

    background-position: center;

    background-size: cover;

    background-repeat: no-repeat;

}

/* =========================
   HEADER
========================= */

.site-header {

    position: fixed;

    top: 0;

    width: 100%;

    z-index: 9999;

    background: rgba(8,10,35,.65);

    backdrop-filter: blur(18px);

    border-bottom:
    1px solid rgba(255,255,255,.08);

}

.header-container {

    max-width: 1450px;

    margin: auto;

    height: 80px;

    padding: 0 30px;

    display: flex;

    justify-content: space-between;

    align-items: center;

}

.logo a {

    color: white;

    text-decoration: none;

    font-size: 28px;

    font-weight: bold;

}

.nav-menu {

    display: flex;

    gap: 35px;

}

.nav-menu a {

    text-decoration: none;

    color: #d7d7d7;

}

.nav-menu a:hover {

    color: #9d7cff;

}

.header-btn {

    background:
    linear-gradient(
    90deg,
    #8a4dff,
    #2e8cff);

    padding: 12px 22px;

    border-radius: 999px;

    text-decoration: none;

    color: white;

    font-weight: bold;

}

/* =========================
   PAGE
========================= */

.viz-page {

    max-width: 1450px;

    margin: auto;

    padding:
    120px 30px 60px;

}

.breadcrumb {

    margin-bottom: 25px;

    color: #b694ff;

}

/* =========================
   MAIN LAYOUT
========================= */

.viz-layout {
    display: grid;
    grid-template-columns: 420px 1fr;
    gap: 30px;
    align-items: start;
}



/* =========================
   SIDEBAR
========================= */

.viz-sidebar {
    background: rgba(20,24,60,.45);
    backdrop-filter: blur(16px);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
    padding: 30px;
    position: sticky;
    top: 120px;
    align-self: start;
}

.viz-icon {

    width: 120px;

    display: block;

    margin-bottom: 25px;

}

.viz-sidebar h1 {

    font-size: 45px;

    line-height: .95;

    margin-bottom: 25px;

}

.viz-sidebar p {

    color: #dddddd;

    line-height: 1.8;

    margin-bottom: 30px;

}

/* =========================
   TECH CARDS
========================= */

.tech-grid {

    display: grid;

    grid-template-columns:
    repeat(2,1fr);

    gap: 12px;

}

.tech-card {

    background:
    rgba(255,255,255,.05);

    border-radius: 18px;

    padding: 18px;

    text-align: center;

}

.tech-card h3 {

    color: #8db3ff;

    margin-bottom: 8px;

}

.tech-card span {

    color: #dddddd;

    font-size: 14px;

}

/* =========================
   THEATER
========================= */

.theater-container {

    background:
    rgba(20,24,60,.45);

    backdrop-filter: blur(16px);

    border:
    1px solid rgba(255,255,255,.08);

    border-radius: 24px;

    padding: 25px;

}

.now-playing {

    display: inline-block;

    padding: 10px 18px;

    border-radius: 999px;

    background:
    rgba(0,0,0,.35);

    margin-bottom: 20px;

}

.theater-container h2 {

    font-size: 42px;

    margin-bottom: 10px;

}

.video-description {

    color: #dddddd;

    margin-bottom: 25px;

}

/* =========================
   VIDEO
========================= */

.video-wrapper {

    width: 100%;

    aspect-ratio: 16/9;

    overflow: hidden;

    border-radius: 20px;

}

.video-wrapper iframe {

    width: 100%;

    height: 100%;

    border: none;

}

/* =========================
   SCROLL INDICATOR
========================= */

.scroll-indicator {

    text-align: center;

    margin-top: 30px;

    color: #b694ff;

}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:1100px){

    .viz-layout{

        grid-template-columns:1fr;

    }

}

@media(max-width:768px){

    .viz-sidebar h1{

        font-size:48px;

    }

    .header-container{

        flex-direction:column;

        height:auto;

        padding:20px;

        gap:15px;

    }

    .nav-menu{

        flex-wrap:wrap;

        justify-content:center;

    }

}