        /* Reset & Base */
        * { box-sizing: border-box; margin: 0; padding: 0; }
        body, html { height: 100%; width: 100%; }
        body {
            font-family: "Source Sans Pro", sans-serif;
            background-color: #1b1f22;
            color: #ffffff;
            line-height: 1.8;
            font-weight: 300;
            overflow: hidden; 
        }
        a { color: inherit; text-decoration: none; border-bottom: 1px dotted rgba(255,255,255,0.5); transition: color 0.2s, border-bottom 0.2s; }
        a:hover { color: #ffffff; border-bottom-color: transparent; }
        ul { list-style: none; }

        /* Background */
        #bg {
            position: fixed;
            top: 0; left: 0; width: 100%; height: 100%;
            background-image: url('../../images/bg.jpg'); /* Relative path adjustment */
            background-size: cover;
            background-position: center bottom;
            z-index: 1;
        }
        #bg::before {
            content: '';
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            background-image: url('../../images/overlay.png'); /* Relative path adjustment */
            background-repeat: repeat;
            opacity: 0.25;
        }
        #bg::after {
            content: '';
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            background: linear-gradient(to top, rgba(0,0,0,0.5), rgba(0,0,0,0) 50%);
        }

        /* Wrapper */
        #wrapper {
            position: relative;
            z-index: 2;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            min-height: 100vh;
            padding: 2rem;
            transition: opacity 0.5s ease-in-out;
        }

        /* Header (Main Menu) */
        #header {
            text-align: center;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            transition: transform 0.3s ease, opacity 0.3s ease;
        }
        
        body.is-article-visible #header {
            display: none; 
        }

        .logo {
            width: 5.5rem;
            height: 5.5rem;
            border: 1px solid rgba(255, 255, 255, 0.5);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 2rem;
        }
        .logo img {
            width: 48px;
            height: 48px;
        }

        .content .inner h1 {
            font-size: 2.75rem;
            letter-spacing: 0.2rem;
            font-weight: 600;
            text-transform: uppercase;
            margin-bottom: 0.5rem;
        }
        .content .inner p {
            text-transform: uppercase;
            letter-spacing: 0.1rem;
            font-size: 0.9rem;
            color: rgba(255, 255, 255, 0.7);
            border-top: 1px solid rgba(255, 255, 255, 0.3);
            margin-top: 1rem;
            padding-top: 1rem;
        }

        /* Navigation */
        nav { margin-top: 2rem; }
        nav ul { display: flex; flex-wrap: wrap; justify-content: center; }
        nav ul li { margin: 0.5rem; }
        nav ul li a {
            display: block;
            min-width: 7.5rem;
            height: 2.75rem;
            line-height: 2.75rem;
            padding: 0 1.25rem;
            background-color: transparent;
            border: 1px solid rgba(255, 255, 255, 0.3);
            color: #ffffff;
            text-align: center;
            border-radius: 4px;
            text-transform: uppercase;
            font-size: 0.8rem;
            letter-spacing: 0.15rem;
            transition: background-color 0.2s, border-color 0.2s;
        }
        nav ul li a:hover {
            background-color: rgba(255, 255, 255, 0.1);
            border-color: #ffffff;
        }

        /* Main Articles (Modal-like) */
        #main {
            display: none; 
            position: relative;
            z-index: 3;
            width: 100%;
            max-width: 50rem;
            background-color: rgba(20, 24, 28, 0.85);
            backdrop-filter: blur(5px);
            padding: 4rem 3rem; 
            border-radius: 4px;
            box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.5);
            max-height: 80vh;
            overflow-y: auto;
            scrollbar-width: thin;
            scrollbar-color: rgba(255,255,255,0.2) transparent;
        }
        
        body.is-article-visible #main {
            display: block;
            animation: fadeIn 0.4s ease-out;
        }

        article {
            display: none; 
        }
        article.active {
            display: block;
        }

        h2.major {
            font-size: 2rem;
            font-weight: 200;
            text-transform: uppercase;
            letter-spacing: 0.4rem;
            margin-bottom: 3rem;
            padding-bottom: 1.5rem;
            border-bottom: 1px solid rgba(255, 255, 255, 0.2);
            position: relative;
        }
        h2.major::after { 
            content: '';
            position: absolute;
            bottom: -1px;
            left: 0;
            width: 5rem;
            height: 2px;
            background: #ffffff;
        }

        /* Close Button */
        .close {
            position: absolute;
            top: 0.5rem;
            right: 0.5rem;
            width: 4rem;
            height: 4rem;
            text-align: center;
            line-height: 4rem;
            cursor: pointer;
            color: rgba(255, 255, 255, 0.5);
            transition: color 0.2s;
            font-size: 1.25rem;
            z-index: 10;
        }
        .close:before {
            content: '\f00d';
            font-family: "Font Awesome 6 Free";
            font-weight: 900;
        }
        .close:hover { color: #ffffff; }

        /* Content Styling */
        h3.major { 
            font-size: 1.1rem; 
            font-weight: 600; 
            text-transform: uppercase;
            letter-spacing: 0.2rem;
            margin: 2.5rem 0 1rem 0; 
        }
        p { 
            margin-bottom: 2rem; 
            font-size: 1rem;
            letter-spacing: 0.05rem;
            color: rgba(255,255,255,0.8);
        }
        ul.alt { 
            list-style: none; 
            padding-left: 0; 
            margin-bottom: 2rem; 
        }
        ul.alt li { 
            padding: 0.75rem 0; 
            border-bottom: 1px solid rgba(255,255,255,0.1);
            color: rgba(255,255,255,0.8);
        }
        ul.alt li:last-child { border-bottom: none; }

        iframe {
            border: none;
            width: 100%;
            height: 500px;
        }

        /* Footer */
        #footer {
            margin-top: auto;
            text-align: center;
            font-size: 0.7rem;
            color: rgba(255, 255, 255, 0.5);
            padding: 1rem 0;
            position: fixed;
            bottom: 1rem;
            width: 100%;
            z-index: 2;
            pointer-events: none;
        }
        body.is-article-visible #footer { display: none; }

        /* Animations */
        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(20px); }
            to { opacity: 1; transform: translateY(0); }
        }

        /* Mobile */
        @media screen and (max-width: 736px) {
            #wrapper { padding: 1rem; }
            #main { padding: 2rem 1.5rem; max-height: 90vh; }
            .logo { width: 4rem; height: 4rem; }
            .content .inner h1 { font-size: 1.7rem; }
        }
