css,
:root {
    --black: #000000;
    --dark-black: #08060b;
    --purple-dark: #160b24;
    --purple: #2a1242;
    --purple-light: #5b2b82;
    --purple-glow: #8b4dcc;
    --white: #ffffff;
    --white-soft: #e6e0eb;
    --gray: #aaa3b2;
}

/* ================================
   GLOBAL
   ================================ */

html,
body,
header,
nav,
main,
section,
aside,
footer,
div,
a,
img,
h1,
h2,
h3,
p,
ul,
li {
    box-sizing: border-box;
}

:root {
    --black: #000000;
    --dark-black: #08060b;
    --purple-dark: #160b24;
    --purple: #2a1242;
    --purple-light: #5b2b82;
    --purple-glow: #8b4dcc;
    --white: #ffffff;
    --white-soft: #e6e0eb;
    --gray: #aaa3b2;
}

html {
    box-sizing: border-box;
}

body {
    box-sizing: border-box;
    margin: 0;
    padding: 0;

    background:
        radial-gradient(
            circle at top center,
            #1b0d2b 0%,
            #0b0610 35%,
            #000000 75%
        );

    background-attachment: fixed;

    color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;
    line-height: 1.7;

    min-height: 100vh;
}
body {
    margin: 0;
    padding: 0;

    background:
        radial-gradient(
            circle at top center,
            #1b0d2b 0%,
            #0b0610 35%,
            #000000 75%
        );

    background-attachment: fixed;

  color: #ffffff;

    font-family: Georgia, "Times New Roman", serif;
    line-height: 1.7;

    min-height: 100vh;
}

/* ================================
   LINKS
   ================================ */

a {
    color: #d8b5ff;
    text-decoration: none;

    transition:
        color 0.25s ease,
        text-shadow 0.25s ease;
}

a:hover {
    color: #ffffff;

    text-shadow:
        0 0 5px #8b4dcc,
        0 0 12px #5b2b82;
}

/* ================================
   MAIN CONTAINER
   ================================ */

.site-wrapper {
    width: 92%;
    max-width: 1100px;
    margin: 40px auto;
}
/* ================================
   HEADER
   ================================ */

header {
    position: relative;

    padding: 45px 30px;
    margin-bottom: 25px;

    text-align: center;

    background:
        linear-gradient(
            135deg,
            #09050d 0%,
            #1c0b2d 45%,
            #09050d 100%
        );

    border: 1px solid #351650;
    border-radius: 14px;

    box-shadow:
        0 0 25px rgba(76, 35, 110, 0.25),
        inset 0 0 30px rgba(50, 20, 80, 0.2);
}

header h1 {
    margin: 0;

    color: #ffffff;

    font-family:
        "Bodoni Moda",
        Georgia,
        serif;

  font-size: 3rem;

    letter-spacing: 4px;

    text-shadow:
        0 0 8px #5b2b82,
        0 0 20px #2a1242;
}

header p {
    margin: 10px 0 0;

    color: #c9b5d8;

    font-size: 1rem;
}

/* ================================
   NAVIGATION
   ================================ */
.video-container {
    width: 800px;
    height: 800px;
    margin: 50px auto;

    background: #000000;

    border: 2px solid #2a1242;
    border-radius: 10px;

    overflow: hidden;

    box-shadow:
        0 0 20px #160b24,
        0 0 40px #2a1242;
}

.video-container iframe {
    width: 100%;
    height: 100%;
    border: 0;
}
nav {
    display: flex;
    flex-wrap: wrap;

    justify-content: center;
    gap: 10px;

    margin-bottom: 25px;
}

nav a {
    display: inline-block;

    padding: 9px 18px;

    color: #ffffff;

    background:
        linear-gradient(
            135deg,
            #160b24,
            #2a1242
        );

    border: 1px solid #49206a;
    border-radius: 8px;

    transition:
        transform 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease;
}

nav a:hover {
    transform: translateY(-2px);

    background:
        linear-gradient(
            135deg,
            #2a1242,
            #5b2b82
        );

    box-shadow:
        0 0 12px rgba(139, 77, 204, 0.4);
}

/* ================================
   CONTENT GRID
   ================================ */

.content {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        280px;

    gap: 25px;
}

/* ================================
   PANELS / CARDS
   ================================ */

.panel {
    padding: 25px;

    background:
        linear-gradient(
            145deg,
            #090609 0%,
            #14091e 50%,
            #080509 100%
        );

    border: 1px solid #321446;
    border-radius: 12px;

    box-shadow:
        0 5px 25px rgba(0, 0, 0, 0.6),
        inset 0 0 25px rgba(57, 22, 83, 0.15);

    margin-bottom: 20px;
}

.panel h2 {
    margin-top: 0;

    color: #ffffff;

    font-family:
        "Bodoni Moda",
        Georgia,
        serif;

    font-size: 1.8rem;

    letter-spacing: 2px;

    border-bottom: 1px solid #3d1b54;

    padding-bottom: 10px;

    text-shadow:
        0 0 8px rgba(139, 77, 204, 0.5);
}

.panel h3 {
    color: #d8b5ff;

    font-family:
        "Bodoni Moda",
        Georgia,
        serif;
}

.panel p {
    color: #e6e0eb
}

/* ================================
   SIDEBAR
   ================================ */

.sidebar {
    padding: 20px;

    background:
        linear-gradient(
            160deg,
            #12091b,
            #080509,
            #1b0d2b
        );

    border: 1px solid #321446;
    border-radius: 12px;

    height: fit-content;

    box-shadow:
        0 5px 25px rgba(0, 0, 0, 0.6);
}

.sidebar h2 {
    margin-top: 0;

    color: #ffffff;

    font-family:
        "Bodoni Moda",
        Georgia,
        serif;

    font-size: 1.4rem;

    border-bottom: 1px solid #3d1b54;
    padding-bottom: 8px;
}

/* ================================
   LISTS
   ================================ */

ul {
    padding-left: 22px;
}

li::marker {
    color: #8b4dcc;
}

/* ================================
   IMAGES
   ================================ */

img {
    max-width: 100%;
    height: auto;

    border-radius: 8px;

    border: 1px solid #351650;

    box-shadow:
        0 5px 20px rgba(0, 0, 0, 0.6);
}

/* ================================
   SPECIAL PURPLE BOX
   ================================ */

.purple-box {
    padding: 20px;

    background:
        linear-gradient(
            135deg,
            #160b24,
            #32144d,
            #160b24
        );

    border: 1px solid #5b2b82;
    border-radius: 10px;

    box-shadow:
        0 0 18px rgba(91, 43, 130, 0.25);
}

/* ================================
   HIGHLIGHT TEXT
   ================================ */

.highlight {
    color: #ffffff;

    background:
        linear-gradient(
            90deg,
            #2a1242,
            #5b2b82,
            #2a1242
        );

    padding: 2px 7px;

    border-radius: 5px;

    box-shadow:
        0 0 8px rgba(91, 43, 130, 0.3);
}

/* ================================
   DIVIDER
   ================================ */

.divider {
    height: 1px;

    margin: 25px 0;

    background:
        linear-gradient(
            90deg,
            transparent,
            #5b2b82,
            #8b4dcc,
            #5b2b82,
            transparent
        );

    border: 0;
}

/* ================================
   BUTTON
   ================================ */

.button {
    display: inline-block;

    padding: 10px 18px;

    color: #ffffff;

    background:
        linear-gradient(
            135deg,
            #1a0b29,
            #42205f
        );

    border: 1px solid #63348a;
    border-radius: 7px;

    cursor: pointer;

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.button:hover {
    transform: translateY(-2px);

    box-shadow:
        0 0 15px rgba(139, 77, 204, 0.45);
}

/* ================================
   FOOTER
   ================================ */

footer {
    margin-top: 25px;
    padding: 25px;

    text-align: center;

    color: #95899e;

    background:
        linear-gradient(
            135deg,
            #080509,
            #160b24,
            #080509
        );

    border: 1px solid #2c123d;
    border-radius: 12px;

    font-size: 0.9rem;
}

/* ================================
   SCROLLBAR
   ================================ */

::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #000000;
}

::-webkit-scrollbar-thumb {
    background:
        linear-gradient(
            #2a1242,
            #5b2b82
        );

    border-radius: 10px;

    border: 2px solid #000000;
}

::-webkit-scrollbar-thumb:hover {
    background: #8b4dcc;
}

/* ================================
   SELECTION
   ================================ */

::selection {
    color: #ffffff;
    background: #4a2268;
}

/* ================================
   MOBILE
   ================================ */

@media (max-width: 750px) {

    .site-wrapper {
        width: 94%;
        margin: 20px auto;
    }

    .content {
        grid-template-columns: 1fr;
    }

    header {
        padding: 35px 20px;
    }

    header h1 {
        letter-spacing: 2px;
    }

    nav {
        gap: 7px;
    }

    nav a {
        padding: 8px 13px;
    }

    .panel {
        padding: 20px;
    }
}