/* ===================================================
   1. GLOBAL RESET AND BASE UTILITIES
   =================================================== */
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* ===================================================
   2. DESKTOP VIEW STYLES (Screen size above 768px)
   =================================================== */
header.pc_header {
    background-color: black;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    width: 100%;
}

img.logo-img {
    max-width: 300px;
    max-height: 100px;
}

nav.pc-nav {
    color: white;
    margin-left: auto;
    padding-right: 2rem;
}

.pc-nav ul {
    display: flex;
    list-style: none;
    gap: 7.5rem;
}

.pc-nav a {
    text-decoration: none;
    font-weight: 600;
    font-size: 1.3rem;
    transition: 0.3s;
    color: white;
    font-weight: bold;
    font-family: 'Helvetica', 'Arial', sans-serif;
    text-transform: uppercase;
}

.pc-nav a:hover {
    text-decoration: underline;
}

/* PERMANENTLY HIDE MOBILE HOOKS ON MONITORS */
.menu-checkbox, 
.hamburger-btn {
    display: none;
}

/* ===================================================
   3. MOBILE RESPONSIVE MEDIA BREAKPOINT (768px and below)
   =================================================== */
@media (max-width: 768px) {
    header.pc_header {
        position: relative;
        display: flex;
        flex-direction: row; 
        justify-content: space-between;
        align-items: center;
        padding: 10px 15px; 
        width: 100%;
        overflow: visible; /* Allows the absolute menu tray to drop out downwards */
    }

    img.logo-img {
        width: 150px; 
        max-width: 150px; 
        height: auto; 
        display: block;
    }

    /* Force the interactive checkbox tracker out of layout space */
    .menu-checkbox {
        display: none !important;
    }

    /* Make Hamburger Button visible on mobile screens */
    .hamburger-btn {
        display: flex !important; /* Explicitly forces visibility over page overrides */
        flex-direction: column;
        gap: 5px;
        cursor: pointer;
        z-index: 1000;
    }

    .hamburger-btn span {
        display: block;
        width: 24px; 
        height: 3px;
        background-color: white;
        transition: 0.3s ease;
    }

    /* CONVERT NAV BAR INTO AN ABSOLUTE DROPDOWN PANELS BOX */
    nav.pc-nav {
        display: none !important; /* Forces the box to hide completely until targeted */
        position: absolute;
        top: 100%; 
        left: 0;
        width: 100%;
        background-color: #0c0c0c; 
        padding: 25px 0;
        margin-left: 0;
        z-index: 999;
    }

    /* Re-orient wide horizontal links into vertical column item tracks */
    .pc-nav ul {
        display: flex;
        flex-direction: column; 
        align-items: center;
        gap: 1.8rem; 
        padding-right: 0; 
        padding-left: 0;
    }

    .pc-nav a {
        font-size: 1.2rem;
        display: block;
        width: 100%;
        text-align: center;
    }

    /* THE CSS DROPDOWN HOOK: Shows the menu tray layout instantly when clicked */
    .menu-checkbox:checked ~ nav.pc-nav {
        display: block !important; /* Overrides the initial hidden block layout constraint */
    }
    
    /* Micro-animation: Morphs hamburger bars into a clean Red 'X' when menu tray is open */
    .menu-checkbox:checked ~ .hamburger-btn span:nth-child(1) {
        transform: translateY(8px) rotate(45deg);
        background-color: #e62b1e;
    }
    .menu-checkbox:checked ~ .hamburger-btn span:nth-child(2) {
        opacity: 0;
    }
    .menu-checkbox:checked ~ .hamburger-btn span:nth-child(3) {
        transform: translateY(-8px) rotate(-45deg);
        background-color: #e62b1e;
    }
}