  /* ---------- Base Styles ---------- */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: sans-serif;
            background-color: #e6f1ea;
            color: #333;
            line-height: 1.6;
        }

        /* ---------- Header ---------- */
        header {
            background-color: rgb(167, 6, 6);
            color: white;
            text-align: center;
            padding: 2rem 1rem;
        }

        h1, h2 {
            font-family: Impact, serif;
        }

        h1 {
            font-size: clamp (2rem, 8vw, 6rem);
            margin-bottom: 0.5rem;
        }

        header p {
            font-style: italic;
            font-size: 1rem;
        }

        /* ---------- Section Labels ---------- */
        h2 {
            max-width: 1000px;
            margin: 2rem auto 1rem;
            padding: 0 1rem;
            font-size: clamp(1.5rem, 4vw, 3rem);
            font-weight: bold;
            color: rgb(176, 12, 12);
        }

        /* ---------- Gallery Grid ---------- */
        .gallery {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
            gap: 1rem;
            max-width: 1000px;
            margin: 0 auto 2rem;
            padding: 0 1rem;
        } 

        figure {
            background-color: rgb(245, 231, 231);
            border-radius: 8px;
            overflow: hidden;
            box-shadow: 0 2px 6px rgba(0,0,0,0.1);
            transition: transform 0.2s, box-shadow 0.2s;
        }

        figure:hover {
            transform: translateY(-5px);
            box-shadow: 0 6px 12px rgba(0,0,0,0.15);
        }

        figure img {
            width: 100%;
            display: block;
        }

        figcaption {
            padding: 0.6rem 0.8rem;
            text-align: center;
            font-weight: bold;
            font-size: 1rem;
            color: rgb(71, 0, 0);
        }

        /* ---------- Footer ---------- */
        footer {
            text-align: center;
            padding: 1.5rem;
            background-color: #eaeaea;
            font-size: 0.9rem;
            margin-top: 2rem;
        }

        /* ---------- Responsive ---------- */
        @media (max-width: 600px) {
            header h1 {
                font-size: 2rem;
            }

            figcaption {
                font-size: 0.9rem;
            }

            h2 {
                font-size: 1.3rem;
            }
        }