/* Import Fonts */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Outfit:wght@100..900&display=swap');

/* --- START ORIGINAL CSS --- */
body {
    font-family: 'Outfit', sans-serif;
    font-size: 14px;
    line-height: 21px;
    font-weight:400;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    color: #c8c8c8;
    background: #332b5c;
}
h1, h2, h3, h4, h5, h6{
    font-family: 'Outfit', serif;
    color:#fff;
    font-weight: bold;
    letter-spacing: 1px;
}
h1{font-size: 63px; line-height: 70px; padding: 0; margin: 0;}
h2{font-size: 42px; line-height: 49px; padding: 0; margin: 0;}
h3{font-size: 21px; line-height: 28px; padding: 0; margin: 0; color: #6e508a;}
h4{font-size: 28px; line-height: 35px; padding: 0; margin: 0;}
h5{font-size: 28px; line-height: 35px; padding: 0; margin: 0; color: #548851;}
h6{font-size: 21px; line-height: 28px; padding: 0; margin: 0;}

a {
    color: #b7b7b7;
    text-decoration:none;
    font-weight: normal;
}
a:hover {text-decoration:underline;}


#maximage {
    display:none;
    position:fixed !important;
}

.gradient {
    left:0;
    height:100%;
    position:absolute;
    top:0;
    width:100%;
    z-index:999;
}

.show{display: block;}
.hide{opacity: 0;}

/* Set Page Elements */
.content { 
    float:left;
    margin:40px;
    position:absolute;
    top:200px;
    width:650px;
    z-index:9999;
    -webkit-font-smoothing:antialiased;
}

#logo {
    font-family: 'Outfit', serif;
    font-size: 49px;
    bottom:22px;
    height:auto;
    left:40px;
    position:absolute;
    width:20%;
    z-index:1000;
    color: #fff;
    min-width: 300px;
}

.main-nav{
    position:absolute;
    bottom: 23px;
    left:315px;
    z-index:1001;
}
.main-nav ul li { 
    list-style: none;
    display: inline;
    padding-right: 10px;
    padding-left: 10px;
    border-left: 1px solid #b7b7b7;
}
.main-nav ul li a.active {color: #e3a1c7;}

.social-nav {
    position:absolute;
    top: 0px;
    left: 40px;
}
.social-nav ul {margin: 0; padding:0;}
.social-nav ul li{
    list-style: none;
    display:block;
    float: left;
    background: #6e508a;
    padding:100px 10px 5px 10px;
    margin: 1px;
    opacity: .5;
}
.social-nav ul li:hover {opacity: 1;}

button.full-screen{ 
    position: absolute;
    top: 0;
    right: 0;
    width: 31px;
    height: 31px;
    background: url("../images/full-screen-btn.png");
    border: 0;
    cursor: pointer;
    opacity: .7;
}
button.full-screen:hover {opacity: 1;}

#arrow_left, #arrow_right {
    bottom:30px;
    height:42px;
    position:absolute;
    right:40px;
    width:42px;
    z-index:1000;
}
#arrow_left {
    right:95px;
}
/* --- END ORIGINAL CSS --- */


/* --- RESPONSIVE MOBILE OVERRIDES --- */
/* Applies to screens smaller than 768px (Tablets & Phones) */
@media only screen and (max-width: 768px) {

    /* Make the content fluid width instead of fixed 650px */
    .content {
        width: 90%;       /* 90% of screen width */
        left: 5%;         /* Centered (5% left + 90% width + 5% right) */
        top: 40%;       /* Move up closer to top */
        margin: 0;        /* Remove huge margins */
        
        /* Enable scrolling inside the content box if text is too long */
        max-height: 60vh; 
        overflow-y: auto;
        padding-right: 10px; /* Space for scrollbar */
    }

    /* Shrink the huge headings */
    h1 { font-size: 32px; line-height: 40px; }
    h2 { font-size: 28px; line-height: 35px; }
    h5 { font-size: 18px; line-height: 24px; }
    
    /* Move Logo to Top Center (Instead of Bottom Left) */
    #logo {
        top: 159px;
        bottom: auto; /* Unset bottom */
        left: 50%;
        transform: translateX(-50%); /* Perfectly center align */
        width: 60%;
        min-width: 200px;
        text-align: center;
    }

    /* Move Main Navigation to Bottom Center */
    .main-nav {
        left: 0;
        bottom: 0;
        width: 100%;
        text-align: center;
        background: rgba(51, 43, 92, 0.95); /* solid background so it's readable */
        padding: 15px 0;
    }
    
    /* Adjust navigation links to be smaller */
    .main-nav ul { padding: 0; margin: 0; }
    .main-nav ul li {
        font-size: 12px;
        padding: 0 8px;
    }

    /* Adjust Social Icons */
    /* Instead of hanging from top, make them small squares at top-left */
    .social-nav ul li {
        padding: 10px; /* Remove the 100px top padding */
        border-radius: 0 0 5px 5px;
    }
    .social-nav {
        left: 10px;
        z-index: 2000; /* Ensure on top */
    }

    /* Hide arrows on very small screens to save space (optional) */
    #arrow_left, #arrow_right {
        bottom: 70px; /* Move up above the nav bar */
        width: 30px;
        height: 30px;
        background-size: contain;
    }
    #arrow_left { right: 50px; }
    #arrow_right { right: 10px; }
}

/* --- RESPONSIVE MOBILE OVERRIDES --- */
@media only screen and (max-width: 768px) {

    /* Fix the Logo Container */
    #logo {
        /* 1. Reset the fixed positioning */
        left: 50%;                 /* Move to middle of screen */
        transform: translateX(-50%); /* Center perfectly */
        top: 65px;                 /* Distance from top */
        bottom: auto;              /* Remove bottom alignment */
        
        /* 2. Fix the sizing issues */
        width: auto;               /* Allow container to shrink */
        min-width: 0;              /* CRITICAL: Override the desktop 300px limit */
        max-width: 60%;            /* Ensure it never hits the screen edges */
        padding: 0;
        margin: 0;
    }

    /* 3. Ensure the actual image scales down */
    #logo img {
        width: 100%;               /* Force image to fit container */
        height: auto;              /* Keep aspect ratio */
        display: block;
        margin: 0 auto;
    }
}