body {
	min-height: 100vh;
	text-align: left;
	letter-spacing: 1px;
	font: 18px calibri, tahoma;
	color: #c3bcfa;
	cursor:url('https://aglioeollieo.neocities.org/cursor/normal.gif'), auto;
background: #160A12;
background: linear-gradient(180deg, rgba(22, 10, 28, 1) 20%, rgba(127, 0, 0, 1) 100%);
	
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;

  background-image: url("https://aglioeollieo.neocities.org/images/noise.png");
  background-repeat: repeat;
  opacity: 0.06; /* subtle */
}

#wrapper {
  position: relative;
  z-index: 1;
}


html, body {
  height: 100%;
}
a:link,
a:visited,
a:active {
	color: #160a1c;
	text-decoration: none;
	font-weight: bold;
	cursor:url('https://aglioeollieo.neocities.org/cursor/pointer.gif'), pointer;
}

a:hover {
	color: #c3bcfa;
	cursor:url('https://aglioeollieo.neocities.org/cursor/pointer.gif'), pointer;
}

::selection {
    background-color: #160a1c; /* Change this to your preferred color */
    color: white; /* Optional: Change text color */
}

::-moz-selection {
    background-color: #160a1c;
    color: white;
}

/* Scrollbars for WebKit-based browsers (Chrome, Edge, etc.) */
::-webkit-scrollbar {
    width: 7px;
    height: 4px;
    background: rgba(112, 83, 208, 0.7); /* Dark background for track */
}

::-webkit-scrollbar-thumb {
    background-color: rgba(195, 188, 250, 1); /* Golden color for thumb */
    border-radius: 5px;
    border: 1px solid rgba(112, 83, 208, 0.7); /* Dark border for thumb */
}

::-webkit-scrollbar-thumb:hover {
    background-color: rgba(195, 188, 250, 1); /* Brighter golden color for hover */
    border: 1px solid rgba(195, 188, 250, 0.7); /* Golden border for hover */
}

/* Scrollbars for Firefox */
body {
    scrollbar-color: rgba(195, 188, 250, 1) rgba(112, 83, 208, 0.7); /* Thumb color, Track color */
    scrollbar-width: thin; /* Makes the scrollbar thinner */
}

/* Optional: Override on specific elements */
.box4, .box3 {
    scrollbar-color: rgba(195, 188, 250, 1) rgba(112, 83, 208, 0.7);
    scrollbar-width: thin;
}


#wrapper {
	margin: 0 auto;
	max-width: 1000px;
}

#header {
	float: left;
	height: 70px;
	width: 100%;
	background: #160A12;
background: linear-gradient(180deg, rgba(22, 10, 28, 1) 60%, rgba(127, 0, 0, 1) 100%);
	border-radius: 5px;
	margin-bottom: 10px;
}

#music {
  float: left;
  height: 25px;
  width: 1000px;
  background: #160A12;
background: linear-gradient(180deg, rgba(22, 10, 28, 1) 60%, rgba(127, 0, 0, 1) 100%);
  border-radius: 5px;
  margin-bottom: 10px;
  display: flex; /* Enables flexbox layout */
  align-items: center; /* Aligns items vertically in the center */
  overflow: hidden; /* Hides content that overflows the container */
  position: relative; /* Ensures absolute positioning works for child elements */
  border: 2px solid #160a1c;
}

#music2 {
  float: left;
  height: 70px;
  width: 1000px;
  background: #160A12;
background: linear-gradient(180deg, rgba(22, 10, 28, 1) 60%, rgba(127, 0, 0, 1) 100%);
  border-radius: 5px;
  margin-bottom: 10px;
  display: flex; /* Enables flexbox layout */
    flex-wrap: wrap;
  overflow: visible;
  align-items: center; /* Aligns items vertically in the center */
  
  justify-content: flex-start;
 
  position: relative; /* Ensures absolute positioning works for child elements */
  border: 2px solid #160a1c;
}

.tickertape {
  display: inline-block;
  white-space: nowrap;
  padding-left: 100%; /* Start off-screen to the right */
  animation: scroll 30s linear infinite; /* Smooth scrolling animation */
  font-size: 14px; /* Adjust font size to fit the div */
	font-weight: bold;
  color: #c3bcfa; /* Text color */
}

@keyframes scroll {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-100%);
  }
}


#content {
	float: left;
	background: transparent;
	width: 99%;
	margin-bottom: 10px;
}

#contentbottom {
	float: left;
	background: transparent;
	width: 99%;
	margin-bottom: 0px;
}


#content2 {
	float: right;
	background: transparent;
	width: 38%;
	margin-bottom: 10px;
	padding: 7px;
}


#leftcolumn {
	background: transparent;
	width: 200px;
	font-size: 16px;
	float: left;
	padding-right: 10px;
	margin-bottom: 10px;
}

#footer {
	float: left;
	height: 109px;
	width: 1000px;
	background: #160A12;
background: linear-gradient(180deg, rgba(22, 10, 28, 1) 60%, rgba(127, 0, 0, 1) 100%);
	border-radius: 5px;
	margin-bottom: 10px;
	margin-top: -15px;
	border: 2px solid #160a1c;
}

.lefttitle {
	font: 16px courier new;
	color: #c3bcfa;
	text-transform: uppercase;
	background: #160a1c;
	padding: 4px;
	padding-bottom: 0px;
	padding-left: 10px;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
	letter-spacing: 2px;
	font-weight: bold;
}

.contenttitle {
	font: 16px courier new;
	color: #c3bcfa;
	text-transform: uppercase;
	background: #160a1c;
	padding: 4px;
	padding-bottom: 0px;
	padding-left: 10px;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
	letter-spacing: 2px;
	font-weight: bold;
}

.box {
	background: #160A12;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	padding: 4px;
	border: 2px solid #160a1c;
	border-top: 0px;
	margin-bottom: 12px;
}

.box3 {
	background: #160A12;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	padding: 2px;
	border: 2px solid #160a1c;
	border-top: 0px;
	margin-bottom: 12px;
	height: 150px; /* Set a specific height */
	overflow-y: auto; /* Enable vertical scrolling */
	overflow-x: hidden;
	text-align: center;
}

.box2 {
	background: #160A12;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	padding: 10px;
	border: 2px solid #160a1c;
	border-top: 0px;
}

.box4 {
	background: #160A12;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	padding: 10px;
	border: 2px solid #160a1c;
	border-top: 0px;
	height: autopx;
	overflow-y: auto; /* Enable vertical scrolling */
  align-items: center; /* Aligns items vertically in the center */
  justify-content: center; /* Centers items horizontally */
  text-align: center; /* Centers inline text elements */
}

.bannertitle {
	font: 14px courier new;
	color: #222;
	text-transform: uppercase;
	background: #160a1c;
	padding: 4px;
	padding-bottom: 1px;
	padding-left: 10px;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
	letter-spacing: 2px;
	border-bottom: 2px solid #160a1c;
	font-weight: bold;
}

.bigtitle {
	font: 30px courier new;
	color: #c3bcfa;
	text-transform: uppercase;
	font-weight: bold;
	padding-top: 10px;
}

h1 {
    font-family: 'courier', sans-serif; /* Sets the font family */
    font-size: 25px;                 /* Adjusts the font size */
    font-weight: bold;               /* Controls the font weight (e.g., bold, normal) */
    color: #333;                     /* Sets the text color */
    text-align: center;              /* Centers the text */
    text-transform: uppercase;       /* Converts text to uppercase */
    letter-spacing: 2px;             /* Adds space between letters */
    line-height: 1;                /* Adjusts spacing between lines */
    margin: 5px;
}

.modal {
  display: none;
  position: fixed;
  z-index: 1000;
  padding-top: 60px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.8);
}

/* Modal Content (image) */
.modal-content {
  margin: auto;
  display: block;
  max-width: 80%;
  max-height: 80%;
  border: 2px solid white;
}

/* Caption (text below image) */
#caption {
  margin: auto;
  display: block;
  text-align: center;
  color: white;
  padding: 10px 20px;
  font-size: 18px;
}

/* Close Button */
.close {
  position: absolute;
  top: 20px;
  right: 35px;
  color: white;
  font-size: 40px;
  font-weight: bold;
  cursor: pointer;
}

.close:hover,
.close:focus {
  color: #bbb;
  text-decoration: none;
}

.image-container {
    width: 200px;
    height: 200px;
    display: inline-block;
    overflow: hidden;
    position: relative;
}

.image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.button-container {
    background-color: rgba(195, 188, 250, 0.7); /* Optional background */
    padding: 5px;
    border-radius: 5px;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 2px;
    width: auto;
    display: inline-block; /* makes it behave like a block element */
    text-align: center;
}

.button-container a {
    text-decoration: none; /* Removes underline */
    color: black; /* Makes the text white */
    display: block; /* Makes the link take up the full area */
}
.button-container:hover {
    background-color: rgba(112, 83, 208, 0.7); /* Darker background on hover */
    color: white; /* Text color turns white on hover */
}

.button-container1 {
    background-color: rgba(195, 188, 250, 0.7);
    padding: 5px 10px;
    border-radius: 5px;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 2px;

    display: inline-flex;      /* size to content */
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    white-space: nowrap;       /* keep text on one line */
    width: fit-content;        /* shrink to text width */
}


.button-container1 a {
    text-decoration: none; /* Removes underline */
    color: black; /* Makes the text white */
        white-space: nowrap;
    display: inline-block;
}
.button-container1:hover {
    background-color: rgba(112, 83, 208, 0.7); /* Darker background on hover */
    color: white; /* Text color turns white on hover */
}

.button-container2 {
    background-color: rgba(195, 188, 250, 0.7); /* Optional background */
    padding: 5px;
    border-radius: 5px;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 2px;
    width: 90%;
    display: inline-block; /* makes it behave like a block element */
    text-align: center;
}

.button-container2 a {
    text-decoration: none; /* Removes underline */
    color: black; /* Makes the text white */
    display: block; /* Makes the link take up the full area */
}
.button-container2:hover {
    background-color: rgba(112, 83, 208, 0.7); /* Darker background on hover */
    color: white; /* Text color turns white on hover */
}

table {
	width: 70%;
	/* Table takes 90% of the container's width */
	margin: 0 auto;
	/* Centers the table horizontally */
	border-collapse: collapse;
	/* Removes double borders */
	table-layout: fixed;
	/* Ensures equal column widths */
}

th,
td {
	border: 1px solid #160a1c;
	padding: 2px;
	text-align: center;
	vertical-align: middle;
	width: 50%;
	/* Ensures each column is 50% of the table width */
}

th {
	background-color: #f5d4a6;
	font-weight: bold;
}

.carousel {
    position: relative;
    width: 70%; /* Adjust as needed */
    height: 500px;
    margin: 20px auto;
    overflow: hidden;
    border: hidden;
    border-radius: 5px;
}

.carousel-images {
    display: flex;
    object-fit: contain;
    max-height: 500px;
    flex-shrink: 0;
    transition: transform 0.5s ease-in-out;
}

.carousel-images img {
    width: 100%;
    object-fit: contain;
    max-height: 500px;
    flex-shrink: 0;
}

.carousel-control {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0);
    color: #c3bcfa;
    border: none;
    font-size: 24px;
    padding: 10px;
    cursor: pointer;
    z-index: 1000;
    border-radius: 20%;
}

.carousel-control.prev {
    left: 10px;
}

.carousel-control.next {
    right: 10px;
}

.custom-list {
  width: 90%;
	list-style: none;
	/* Removes default bullets */
	margin: 0;
}

.custom-list li {
	position: relative;
	/* Ensures positioning for the pseudo-element */
	text-align: left;
	left: -20px;
	/* Adjust to position the text correctly */
}

.custom-list li::before {
	content: '★';
	/* Unicode star character */
	font-size: 1em;
	/* Adjust size of the star */
	color: #160a1c;
	/* Star color */
	position: absolute;
	left: -20px;
	/* Position the star outside the text */
	top: 0;
	/* Align the star vertically with the text */
}

.masonry {
    column-count: 5; /* Number of columns */
    column-gap: 16px; /* Spacing between columns */
}

.masonry-item {
    break-inside: avoid; /* Prevents items from breaking across columns */
    margin-bottom: 16px; /* Spacing between rows */
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.masonry-item img {
    width: 100%; /* Ensure images fill the container width */
    height: auto; /* Maintain aspect ratio */
    display: block;
}

.button-container3 {
background-color: rgba(195, 188, 250, 0.7); /* Optional background */
    padding: 5px;
    border-radius: 5px;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 3px;
    width: 200px;
    display: inline-block; /* makes it behave like a block element */
    text-align: center;
}

.button-container3 a {
    text-decoration: none; /* Removes underline */
    color: black; /* Makes the text white */
    display: block; /* Makes the link take up the full area */
}
.button-container3:hover {
    background-color: rgba(112, 83, 208, 0.7); /* Darker background on hover */
    color: white; /* Text color turns white on hover */
}

#expandable-section {
    display: none;
    padding: 10px;
    margin-bottom: 10px;
    justify-content: center; /* Center the items horizontally */
}

        /* Style for the pop-up */
        #age-popup {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.9);
            color: white;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
            text-align: center;
            z-index: 1000;
        }
        #age-popup.hidden {
            display: none;
        }
        #age-popup button {
            margin: 10px;
            padding: 10px 20px;
            font-size: 18px;
            cursor: pointer;
        }
      
.image-grid {
  /* Remove display: grid to allow column-based masonry to work */
  column-count: 3;
  column-gap: 16px;
}

.image-card {
  break-inside: avoid;
  border-radius: 10px;
  margin-bottom: 10px; /* Spacing between rows */
  overflow: hidden;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.image-container {
  border-radius: 10px;
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  margin-bottom: 5px;
}

.image-container img {
  border-radius: 10px;
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}

.text-box {
  padding: 5px;
  font-size: 14px;
  font-weight: bold;
  background-color: #f0f0ff;
  border-radius: 10px;
  display: block;
  border: 2px solid #160a1c;
}

.masonry2 {
    column-width: 240px;
    column-gap: 10px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.masonry-item2 {
    break-inside: avoid; /* Prevents items from breaking across columns */
    margin-bottom: 10px; /* Spacing between rows */
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.masonry-item2 img {
    width: 100%; /* Ensure images fill the container width */
    height: auto; /* Maintain aspect ratio */
    display: block;
}


/* fic title */
h2 {
    font-family: 'courier', sans-serif; /* Sets the font family */
    font-size: 20px;                 /* Adjusts the font size */
    font-weight: bold;               /* Controls the font weight (e.g., bold, normal) */
    color: #c3bcfa;                     /* Sets the text color */
    text-align: center;              /* Centers the text */
    text-transform: uppercase;       /* Converts text to uppercase */
    letter-spacing: 2px;             /* Adds space between letters */
    line-height: 1;                /* Adjusts spacing between lines */
    margin: 5px;
}

/* fic headers */
h3 {
    font-family: 'courier', sans-serif; /* Sets the font family */
    font-size: 16px;                 /* Adjusts the font size */
    font-weight: 800;               /* Controls the font weight (e.g., bold, normal) */
    color: #c3bcfa;                     /* Sets the text color */
    text-align: center;              /* Centers the text */
    text-transform: uppercase;       /* Converts text to uppercase */
    margin: 0;               /* Removes any default outer spacing */
    padding: 0;              /* Removes any inner spacing */
    line-height: 1.5;          /* Already present: keeps line height tight */
    display: inline-block;   /* Optional: helps in tight layouts */
}

/* tiny text */
h4 {
    font-family: 'courier', sans-serif; /* Sets the font family */
    font-size: 10px;                 /* Adjusts the font size */
    font-weight: bold;               /* Controls the font weight (e.g., bold, normal) */
    color: #333;                     /* Sets the text color */
    text-align: center;              /* Centers the text */
    text-transform: uppercase;       /* Converts text to uppercase */
    margin: 0;               /* Removes any default outer spacing */
    padding: 0;              /* Removes any inner spacing */
    line-height: 1.5;          /* Already present: keeps line height tight */
}

hr {
    border: none;               /* Removes default border */
    height: 2px;                /* Sets thickness of the line */
    background-color: #160a1c;  /* Sets the color */
}

/* mobile */

@media screen and (max-width: 1035px) {
  #wrapper {
    max-width: 100%;
    width: 100%;
}
  
#header {
	height: 80px;
	width: 100%;
	margin: 2px 0; /* Reduce margins */
}
     
    #music,
    #footer {
        width: 100%;
        height: auto; /* Adjust height to fit content */
        margin: 2px 0; /* Reduce margins */
        border: 2px solid #160a1c;
    }
    
    
    #music2 {
        width: 100%;
        height: 100px; /* Adjust height to fit content */
        margin: 2px 0; /* Reduce margins */
        border: 2px solid #160a1c;
    }

#content, #content2 {
	float: left;
	background: transparent;
	width: 100%;
	margin-bottom: 10px;
	font-size: 14px
}

#leftcolumn {
	background: transparent;
	width: 100%;
	font-size: 14px;
	float: left;
	padding-right: 10px;
	margin-bottom: 10px;
}

.lefttitle {
	font: 14px courier new;
	color: #c3bcfa;
	text-transform: uppercase;
	background: #160a1c;
	padding: 4px;
	padding-bottom: 0px;
	padding-left: 10px;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
	letter-spacing: 2px;
	font-weight: bold;
}

.contenttitle {
	font: 14px courier new;
	color: #c3bcfa;
	text-transform: uppercase;
	background: #160a1c;
	padding: 4px;
	padding-bottom: 0px;
	padding-left: 10px;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
	letter-spacing: 2px;
	font-weight: bold;
}

.box {
	background: #160A12;
background: linear-gradient(180deg, rgba(22, 10, 28, 1) 60%, rgba(127, 0, 0, 1) 100%);
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	padding: 4px;
	border: 2px solid #160a1c;
	border-top: 0px;
	margin-bottom: 12px;
	width: 100%;
}

.box3 {
	background: #160A12;
background: linear-gradient(180deg, rgba(22, 10, 28, 1) 60%, rgba(127, 0, 0, 1) 100%);
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	padding: 4px;
	border: 2px solid #160a1c;
	border-top: 0px;
	margin-bottom: 12px;
	height: 150px; /* Set a specific height */
	overflow-y: auto; /* Enable vertical scrolling */
	overflow-x: hidden;
	text-align: center;
	width: 100%;
}

.box2 {
	background: #160A12;
background: linear-gradient(180deg, rgba(22, 10, 28, 1) 60%, rgba(127, 0, 0, 1) 100%);
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	padding: 10px;
	border: 2px solid #160a1c;
	border-top: 0px;
	width: 100%;
}

.box4 {
	background: #160A12;
background: linear-gradient(180deg, rgba(22, 10, 28, 1) 60%, rgba(127, 0, 0, 1) 100%);
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	padding: 10px;
	border: 2px solid #160a1c;
	border-top: 0px;
	height: 400px;
	overflow-y: auto; /* Enable vertical scrolling */
  align-items: center; /* Aligns items vertically in the center */
  justify-content: center; /* Centers items horizontally */
  text-align: center; /* Centers inline text elements */
  width: 100%;
}

.bannertitle {
	font: 12px courier new;
	color: #222;
	text-transform: uppercase;
	background: #160a1c;
	padding: 4px;
	padding-bottom: 1px;
	padding-left: 10px;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
	letter-spacing: 2px;
	border-bottom: 2px solid #160a1c;
	font-weight: bold;
}

.bigtitle {
	font: 25px courier new;
	color: #c3bcfa;
	text-transform: uppercase;
	font-weight: bold;
	padding-top: 0px;
}

h1 {
    font-family: 'courier', sans-serif; /* Sets the font family */
    font-size: 18px;                 /* Adjusts the font size */
    font-weight: bold;               /* Controls the font weight (e.g., bold, normal) */
    color: #333;                     /* Sets the text color */
    text-align: center;              /* Centers the text */
    text-transform: uppercase;       /* Converts text to uppercase */
    letter-spacing: 2px;             /* Adds space between letters */
    line-height: 1;                /* Adjusts spacing between lines */
}

    .tickertape {
        font-size: 14px; /* Smaller text for ticker */
    }
    
    table {
	width: 85%;}

  .image-grid {
    flex-direction: column;
    align-items: center;
  }
}


#scroll-area {
  height: 600px;
  overflow-y: auto;
  box-sizing: border-box;
}

