* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Georgia', serif;
    line-height: 1.6;
    color: #333;
}

/* Hero Section with Carousel */

#hero {
    position: relative;
    height: 100vh;
    background: url('../Media/theatre-stage.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* Site title (centered, silver) */

.site-title {
    position: absolute;
    top: 4%;
    left: 13%;
    transform: translateX(-50%);
    color: #c0c0c0; /* silver */
    font-family: 'Georgia', serif;
    font-size: 2rem;
    letter-spacing: 3px;
    z-index: 110; /* above other elements */
    text-shadow: 0 2px 6px rgba(0,0,0,0.6);
    pointer-events: none;
}

/* main container */

.museum-hall {
    position: relative;
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* carrousel container */

.gallery-container {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 5;
}

.slider {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* frame/card styling */
/* Each carousel item (magazine frame) */

.item {
    position: absolute;
    /* Purple gradient background for frames */
    background: linear-gradient(135deg, #3d2650 0%, #2d1b3d 50%, #3d2650 100%);
    box-shadow: 
        0 30px 80px rgba(0, 0, 0, 0.8),      /* Outer shadow for depth */
        inset 0 0 40px rgba(0, 0, 0, 0.5);   /* Inner shadow for texture */
    
    /* MODIFY THESE to change card size (increased ~10% from last iteration) */
    width: 281px;   /* Card width (~10% larger than 255px) */
    height: 402px;  /* Card height (~10% larger than 365px) */
    /* Starting position (center of screen) - adjusted for new size */
    left: calc(50% - 140.5px);  /* Half of width */
    top: calc(50% - 201px);     /* Half of height */
    
    transition: all 0.5s ease;  /* Smooth animation - increase for slower */
    cursor: pointer;  /* Indicate clickable */
}

/* Outer border */

.item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 8px solid #c9a961;  /* CHANGE COLOR: golden border */
    pointer-events: none;
}

/* inner border */

.item::after {
    content: '';
    position: absolute;
    top: 18px;   /* Distance from outer border */
    left: 18px;
    right: 18px;
    bottom: 18px;
    border: 3px solid #b8941e;  /* CHANGE COLOR: inner border */
    pointer-events: none;
}

/* card content */

.item-content {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    padding: 36px; 
}

/* For actual images */

.item-content img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.item-content .placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #d4af37;
    font-size: 1.2rem;
    text-align: center;
    letter-spacing: 2px;
}

/* Soft glow behind the frames */

.wall-light {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;   /* Adjust glow size */
    height: 60%;
    pointer-events: none;
    z-index: 2;
}

/* navigation buttons */

#prev,
#next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    color: #d4af37;           
    background: transparent;
    border: 2px solid #d4af37;  /* Golden border */
    font-size: 2rem;           /* Button size */
    font-family: serif;
    font-weight: bold;
    width: 50px;
    height: 50px;
    cursor: pointer;
    z-index: 100;
    transition: all 0.3s ease;
    opacity: 0.4;  /* Semi-transparent when not hovered */
}

#prev:hover,
#next:hover {
    opacity: 1;
    background: rgba(212, 175, 55, 0.1);
    box-shadow: 0 0 20px rgba(212, 175, 55, 0.3);
}

#prev {
    left: 30px;   /* Distance from left edge */
}

#next {
    right: 30px;  /* Distance from right edge */
}

/* Event Info Section */
#event-info {
    min-height: 100vh;
    background: url(../Media/construction.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 60px 20px;
    text-align: center;
}

#event-info h2 {
    font-size: 2.5rem;
    margin-bottom: 20px;
    color: #333;
}

#event-info p {
    font-size: 1.2rem;
    max-width: 800px;
    margin: 0 auto;
    color: #666;
}

/* Location Section */
#location {
    min-height: 100vh;
    background: url(../Media/construction.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 60px 20px;
    text-align: center;
}

#location h2 {
    font-size: 2.5rem;
    margin-bottom: 20px;
    color: #333;
}

#location p {
    font-size: 1.2rem;
    max-width: 800px;
    margin: 0 auto;
    color: #666;
}
/* Footer */
#footer {
    background: #333;
    color: #fff;
    padding: 40px 20px;
    text-align: center;
}

#footer h3 {
    margin-bottom: 20px;
}
#footer p {

    margin-bottom: 10px;
}

#footer a {
    color: #c0c0c0;
    text-decoration: none;
}

#footer a:hover {
    text-decoration: underline;
}
