@charset "utf-8";
/* CSS Document */


/* outline it to redfor testing purposes
* {
    outline: 1px solid red;
}
*/


/*html, body {
    overflow-x: hidden;
}*/


body {
    background-image: url(../images/spookyWoodsPixelated.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    cursor: url(../cursors/hol18.gif), auto;
}
h1, h2, h3, h4, h5, nav {
    font-family: 'Chicago Plain';
    color: #00FF00;
}
h2, h3 {
    font-size: 1.15em;
}
h4, h5 {font-size: 1em;}


p, label, li {
    font-family: lucida Consolas, "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", Monaco, "Courier New", "monospace";
    color: #00FF00;


}
p, nav {font-size: .79em;}


i {font-style: italic;}
b {font-weight:bold;}


img {
    max-width: 100%;
}
.centered {text-align: center; align-content: center;}
.centered img {display: block; margin: 0 auto;}
.logo-container {
    text-align: center;
    margin: 0 auto 5px;
    max-width: 500px;
}


.topbar {
    border-bottom: 4px solid #019E01;
    background: linear-gradient(to top, #9900FF 0%, #7900CA 14%, #5C0099 73%);
    height: 15px;
    max-width: 800px; 
    margin: 12px auto;
}


.gradpurpleSmall{
    border-top: 6px solid;
    -webkit-border-image: -webkit-linear-gradient(bottom, #9900FF 0%, #7900CA 14%, #5C0099 73%) 1;
    -o-border-image: -o-linear-gradient(bottom, #9900FF 0%, #7900CA 14%, #5C0099 73%) 1;
    border-image: linear-gradient(to top, #9900FF 0%, #7900CA 14%, #5C0099 73%) 1;  
}
.sidebar {
    padding: 10px;
}


/*custom width for columns*/
.rightColumn, .leftColumn {max-width: 160px;}


.center-column {
    min-width: 490px;
}


.sidebar, .center-box {
    background:black;
    border-left: solid 2px #9900FF;
    border-right: solid 2px #9900FF;
    border-top: 2px solid #00FF00;
    border-bottom: solid 2px #9900FF;
}


.sidebar.right-sidebar {
  background: url(../images/sideBarBackground.gif) black repeat-y;
}


.int-main {min-height: 100vh;}


.row {
  --bs-gutter-x: 10px; /* Sets gutters to 10px */
    --bs-gutter-y: 10px;
}


/*about page images*/
.about img {
    float: right;
    max-width: 150px;
    padding: 5px;
}
.row.about {margin-bottom:30px;}


h2.jmwdc {
    font-size: 3em;
}
/*Right Sidebar*/
#gladiator1, #gladiator2 {
    max-width: 60%;
}
#pirate {
    max-width: 90%;
}


.mobile-show {display:none;}
/*Center Column*/


.announcements {
    font-weight: bold;
    text-transform: uppercase;
    font-size: 1.75em;
}


.center-box {
    padding: 45px;
}
#welcome {margin-bottom: 10px;}


/*left sidebar*/
.left-sidebar {
    display: grid;
    flex-direction: column;
    justify-content: space-between;
    height: 100%; /* Ensure the sidebar takes full height */
    grid-template-rows: auto 1fr auto;
    grid-template-columns: 1fr; 
}


.left-sidebar .centered {
    align-self: end;
    padding-bottom: 20px;
}
img#witch {
    margin: 10px;
}


/*Projects Gallery Page*/
.gallery img {
    width: 80%;
    cursor: pointer;
}
.projectPosters a img {
  display: inline-flex;
  width: 45%;
  margin: 0 5px 15px 0;
}


/*Lightbox*/
#btn-close {
    float: right;
    margin: 5px;
    background: transparent;
    border: none;
}
.modal-body {
    background: black;
    box-shadow: #272323 0 0 0 7px;
}
#nextImage1 {
    position: absolute;
    top: 50%;
    right: 3%;
    background: #00000070;
    border: 0;
    font-size: x-large;
    color: white;
    padding:10px 20px 15px;
}#prevImage1 {
    position: absolute;
    top: 50%;
    left: 3%;
    background: #00000070;
    border: 0;
    font-size: x-large;
    color: white;
    padding:10px 20px 15px;
}
button#prevImage1:hover {
    background: #00000099;
    font-weight: bold;
}
button#nextImage1:hover {
    background: #00000099;
    font-weight: bold;
}
/*Navbar*/
.navbar {
    margin: 40px 0px;
}


nav a.nav-link{color: #00FF00;}
/*main container*/
.main-container {
    max-width: 800px;
    margin: 0 auto;
    padding: 0;
}
ul.navbar-nav {
    display: flow;
}
.navbar-nav li a {
    font-size: .9em;
}
.navbar-nav li a:hover {color:#9900FF;}
.navbar-nav .nav-link::before {
    content: '';
    width: 25px;
    height: 25px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display:inline-block;
    vertical-align:middle;
    margin-right:6px;
}


/*navbar styles for social icons*/


/* Style for the social icons */
.social-links {
  display: flex;
    padding:14px;
    justify-content: center;
  align-items: center;
}


.social-links a {
  margin: 5px;
}
.social-links .social {
  display: inline-flex;
  max-width: 25px;
    height: 25px;
    fill: #00ff00;
}


.social-links a.yt {
  background: url('../images/youtube.png') center no-repeat;
    background-size: auto;
  background-size: contain;
}
.social-links a.yt:hover {
  background-image: url('../images/youtubeHover.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}


.social-links a.ig {
  background: url('../images/instagram.png') center no-repeat;
    background-size: auto;
  background-size: contain;
}
.social-links a.ig:hover {
  background-image: url('../images/instagramHover.png'); /* Replace with hover image */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
/*********************************************************/


.home-link::before {
    background-image: url('../images/home.gif');
}
.movies-link::before {
    background-image: url('../images/movies.gif');
}
.about-link::before {
    background-image: url('../images/about.gif');
}
.contact-link::before {
    background-image: url('../images/GhostMailbox.gif');
}
.vault-link::before {
    background-image: url('../images/vaultNav.gif');
}
.store-link::before {
    background-image: url('../images/ShoppingGhost.gif');
}
.dungeon-link::before {
    background-image: url('../images/dungeon.gif');
}
/*match the sidebars to the height of the center column*/
.main-container > .row {
    display: flex;
    min-height: 100%; /* This ensures the row takes up at least the full height of its container */
}


.main-container > .row > div {
    display: flex;
    flex-direction: column;
}
.left-sidebar, .right-sidebar {
    align-items: flex-start;
}
.right-sidebar img {
    max-width: 100%;
    height: auto;
}


/*Interior Pages*/


.movie-title {text-transform: uppercase;}


.movie-poster {
  margin: 0 10px;
}


#trailer {
    padding: 10px 0;
    margin: 0px 0 10px;
}


.trailer {
    position: relative;
    width: 100%;
    padding-bottom: 68.25%; /* 16:9 Aspect Ratio */
    height: 0;
    overflow: hidden;
}


.trailer iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/*vault page*/
img.vault-divider {
    padding: 45px 0;
}


/*Gallery Page*/
.gallery-page {
  min-height: 625px;
}


.gallery-page img {
  display: inline-flex;
  width: 32%;
}
body#gallery .center-box {
  padding: 0;
}
.grid {
  display: flex;
  margin: 0 auto;
}


.grid-sizer,
.grid-item {
  width: 33.333%; /* Three columns */
}


.grid-item img {
  display: block;
  width: 100%;
  height: auto;
}
.leftColumn, .rightColumn {
    min-height: 100vh; /* Temporary fallback for full height */
    display: flex;
    flex-direction: column;
}



/***************************************/
/*********SPECIAL PAGE STYLES***********/


/*sidebar for project pages*/
body#project-page .sidebar.right-sidebar {
  background-image: none;
}



/* Clickbait Page */
body.clickbait {
    background-image: url(../images/clickbaitPageBG.png);
}


body.clickbait .logo {display:none;}


body.clickbait .left-sidebar,
body.clickbait .center-box,
body.clickbait .sidebar {
    border-top: 3px solid #4a43bc;
    border-left: 2px solid #D71515;
    border-right: 2px solid #D71515;
    border-bottom: 2px solid #D71515;
}


body.clickbait .topbar {
    border-bottom: 3px solid #4a43bc; /* Missing border style added */
}


body.clickbait nav a.nav-link {
  color: #6EBFE8;
}


body.clickbait nav a.nav-link:hover {
color: #0098E3;
}


body.clickbait .gifbar-inner {
    border-top: 3px solid #4a43bc; /* Missing border style added */
    border-left: 2px solid #D71515;
    border-right: 2px solid #D71515;
}


body.clickbait .gifbar-outer { border-image: linear-gradient(to top, #FF0000 0%, #CC0000 14%, #990000 73%) 1;}


body.clickbait .gradpurpleSmall {
    border-image: linear-gradient(to top, #FF0000 0%, #CC0000 14%, #990000 73%) 1;
}


body.clickbait .topbar {
    background: linear-gradient(to top, #FF0000 0%, #CC0000 14%, #990000 73%);
}


body.clickbait p {
    color: #78D1FD;
}


body.clickbait h1, 
body.clickbait h2, 
body.clickbait h3, 
body.clickbait h4, 
body.clickbait h5 {
    color: #0098E3;
}


/* Cuck Scare Page */
body.cuckscare {
    background-image: url(../images/cuckscarePageBG.png);
}


body.cuckscare .logo {
    display: none;
    /* New: The specific logo for this page is likely meant to replace the default one.
       If the logo is to be injected into the page via HTML, then display:none is correct.
       If the 'logo' class refers to a general site element, we will keep it hidden.
       Assuming a site-wide .logo is hidden to be replaced by the cuckscare-logo.png via HTML.
    */
}


/* Border Styling - Primary Green/Black */
body.cuckscare .left-sidebar,
body.cuckscare .center-box,
body.cuckscare .sidebar {
    /* Top border now uses a dark/black tone for contrast */
    border-top: 3px solid #000000;
    /* Side borders use the bright green */
    border-left: 2px solid #00FF00;
    border-right: 2px solid #00FF00;
    /* Bottom border uses the bright green */
    border-bottom: 2px solid #00FF00;
}


/* Top Bar Border */
body.cuckscare .topbar {
    border-bottom: 3px solid #000000; /* Replaced purple with dark/black for contrast */
}


/* Navigation Link Colors - Orange/Green */
body.cuckscare nav a.nav-link {
    color: #FF6600; /* Orange tone for regular link */
}


body.cuckscare nav a.nav-link:hover {
    color: #00FF00; /* Bright Green tone for hover */
}


/* GIF Bar Border Styling */
body.cuckscare .gifbar-inner {
    /* Top border now uses a dark/black tone for contrast */
    border-top: 3px solid #000000;
    /* Side borders use the bright green */
    border-left: 2px solid #00FF00;
    border-right: 2px solid #00FF00;
}


/* GIF Bar & Purple Gradient Replacement - Using Green/Orange Gradient */
body.cuckscare .gifbar-outer {
    /* Replaced red/maroon gradient with a Green-to-Orange gradient for the border image */
    border-image: linear-gradient(to top, #00FF00 0%, #FF6600 73%) 1;
}


body.cuckscare .gradpurpleSmall {
    /* Replaced red/maroon gradient with a Green-to-Orange gradient for the border image */
    border-image: linear-gradient(to top, #00FF00 0%, #FF6600 73%) 1;
}


/* Top Bar Background - Using Green/Orange Gradient */
body.cuckscare .topbar {
    /* Replaced red/maroon gradient with a Green-to-Orange gradient for the background */
    background: linear-gradient(to top, #00FF00 0%, #FF6600 73%);
}


/* Paragraph Text Color - Orange */
body.cuckscare p {
    color: #FF6600; /* Orange for paragraph text */
}


/* Heading Colors - Bright Green */
body.cuckscare h1,
body.cuckscare h2,
body.cuckscare h3,
body.cuckscare h4,
body.cuckscare h5 {
    color: #00FF00; /* Bright Green for all headings */
}


/*pagination work*/
button#nextPage-gallery3:hover, button#prevPage-gallery3:hover {
    background: #00bc00;
}


button#prevPage-gallery3, button#nextPage-gallery3 {
    border: solid 2px #9900FF;
    background: #20202a;
}



span#pageIndicator-gallery3 {
    color: #00FF00;
    font-size: .7em;
    padding: 5px 0 5px;
}


/*Bottom Gifbar*/
.gifbar-outer {
    border-top: 4px solid;
    -webkit-border-image: -webkit-linear-gradient(bottom, #9900FF 0%, #7900CA 14%, #5C0099 73%) 1;
    -o-border-image: -o-linear-gradient(bottom, #9900FF 0%, #7900CA 14%, #5C0099 73%) 1;
    border-image: linear-gradient(to top, #9900FF 0%, #7900CA 14%, #5C0099 73%) 1;
    margin-top: 10px;
}
.gifbar-inner {
    background: black url(../images/3dlofiGhost.gif) repeat-x;
    border-left: solid 2px #9900FF;
    border-right: solid 2px #9900FF;
    border-top: 2px solid #00FF00;
    padding: 42px 0;
}


/*footer*/
footer {
    background: black;
}
footer .container {
    text-align: center;
}
footer .container p {
    padding: 5px 0;
    margin: 0;
    font-size: .75rem;
    display: inline;
}
footer .container p:after {
    content: " | ";
}
footer .container p:last-child::after {
    content: "";
}
footer p, footer p a {
    color: #5f5f5f;
    text-decoration: none;
}


/*Contact Form*/
form button.contactButton {
    background: #00FF00;
    font-weight: bold;
    color: black;
    font-family: lucida Consolas, "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", Monaco, "Courier New", "monospace";
}
form button.contactButton:hover {background-color: #9900FF; color: white;}


p.contactform {color: darkgrey; font-size: .7em; font-style: italic;}
p.contactform a {color: white; text-decoration: underline;}


/*coming soon page*/
.uc {
  position: relative;
padding: 25px;
}


.uc::before,
.uc::after,
.uc .col::before,
.uc .col::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100% 100%;
}


/*Choose Wisely Page*/
img.torch-left {
    position: relative;
    left: -45px;
    width: 63%;
    top: -33px;
}
img.torch-right {
    position: relative;
    right: -90px;
    width: 63%;
    top: -33px;
}
img.chooseWisely {
    text-align: center;
    position: absolute;
    margin: 0 auto;
    max-width: 316px;
    left: 0;
    right: 0;
    z-index: 99;
    margin-top: -10px;
}
img#reaperHead {
    margin-top: -66px;
    width: 45%;
}
img.torch_column_left {
    margin-left: -40px;
}
img.torch_column_right {
    position: relative;
    right: -40px;
}
img.hand {
    margin-top: -30px;
}
img.ball {
    position: relative;
    z-index: 99;
}
h3.choosewisely a {
    color: #00FF00;
    text-decoration: none;
}
.cwbowl {
    margin-top: -35px;
}


/*dungeon*/
body#dungeon {
    background-image: url(../images/dungeon_background.png);
}
img#dungeonDragon {
    position: relative;
    max-width: 180%;
    top: -46px;
    left: -50px;
}
img#dungeonWizard {
    position: relative;
    width: 130px;
    bottom: -89px;
    right: -15px;
}


/*Shop*/
.monsters-left {
  position: relative;
  top: -75px;
  left: -20px;
}


.monsters-right {
  position: relative;
  top: -92px;
  right: -20px;
}



/* Top border */
.uc::before {
  top: -20px;
  left: 0;
  right: 0;
  height: 20px;
  background-image: url('../images/electricdivider.gif');
}


/* Bottom border */
.uc::after {
  bottom: -20px;
  left: 0;
  right: 0;
  height: 20px;
  background-image: url('../images/electricdivider.gif');
}


/* Left border */
.uc .col::before {
  top: 0;
  left: -20px;
  bottom: 0;
  width: 20px;
  background-image: url('../images/electricdivider-tall.gif');
}


/* Right border */
.uc .col::after {
  top: 0;
  right: -20px;
  bottom: 0;
  width: 20px;
  background-image: url('../images/electricdivider-tall.gif');
}


/* Credits Styling */
.credits-container {
    font-family: 'Arial', sans-serif;
}


.credits-container h2 {
    font-size: 1.8rem;
    font-weight: 700;
}


.credits-container h3 {
    font-size: 1.5rem;
    font-weight: 700;
    text-transform: uppercase;
}


.credits-container h4 {
    font-size: 1.2rem;
    font-weight: 600;
}


.credits-container hr {
    border-top: 2px solid rgba(0,0,0,0.1);
}


.sidebar-info {
    font-size: 0.9rem;
}


button.btn.btn-primary.credits-button {
    background: linear-gradient(to top, #FF0000 0%, #CC0000 14%, #990000 73%);
}


button.btn.btn-primary.credits-button:hover {
    background: linear-gradient(to bottom, #FF0000 0%, #CC0000 14%, #990000 73%);
}


/* Make the modal larger on bigger screens */
@media (min-width: 992px) {
    .modal-xl {
        max-width: 90%;
    }
}


/* Scrollable modal body with fixed height on larger screens */
@media (min-width: 768px) {
    .modal-dialog-scrollable .modal-body {
        max-height: 75vh;
        overflow-y: auto;
    }
}


/*Mobile Styles*/


/* Desktop styles */
@media (min-width: 814px) {
    .mobile-nav {display: none;}
    
  .navbar-nav {
    flex-direction: column;
  }
  
  .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  
  .navbar-toggler {
    display: none;
  }
        
}


/* Mobile styles */
@media (max-width: 815px) {
    
    
    .mobile-show {display:block;}
    
    /*fixes for mobile fitting*/
    .main-container {
        padding: 0 15px;
    }
    .center-column {
        min-width: auto;
        width: 100%;
    }
    .sidebar, .rightColumn {
        width: 100%;
    }
    .sidebar {
    width: 100%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: black !important;
    align-items: center;
    }
    .center-box {
        padding: 20px;
    }
    
    img {
        max-width: 100%;
        height: auto;
    }
    
    .leftColumn {display: none !important;}
    
    .mobile-nav {
        display: block;
        width: 300px;
        margin: 0 auto;
    }
    .navbar .container ul {
    margin: 0 auto;
}
    .navbar-nav .nav-link::before {
    left: 40px;
    }
    .mobile-nav #navbarNav {
    background: black;
    text-align: center;
    width: 100%;
    padding: 30px 0;
}
    .mobile-nav li.nav-item {
    border-top: 1px #3f3f3f solid;
    border-bottom: 1px #3f3f3f solid;
}
    
    span.navbar-toggler-icon {
    background-color: #00FF00;
}
    .mobile-nav .navbar {margin: 0;}
    .mobile-nav .navbar>.container {
        justify-content:center;
    }
    .sidebar, .rightColumn {max-width: 1000px;}
    
    .monsters-left, .monsters-right {display:none !important;}
    
    img.torch-left {
  position: relative;
  left: -19px;
  width: 63%;
  top: 30px;
}
img.torch-right {
  position: relative;
  right: -63px;
  width: 63%;
  top: 30px;
}
img.torch_column_left {
  margin-left: -7px;
}
img.torch_column_right {
  position: relative;
  right: -11px;
}
}