        /* ===== RESET & BASE ===== */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            background-color: #BEBEBE;
            font-family: 'Helvetica Neue', Arial, sans-serif;
            line-height: 1.6;
            color: #222;
            padding: 10px;
            min-height: 100vh;
            display: flex;
            justify-content: center;
            align-items: flex-start;
        }

        /* ===== CONTAINER ===== */
        .container {
            width: 100%;
            background-color: #ffffff;
            margin: 0 auto;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
            border-radius: 6px;
            overflow: hidden;
        }



        /* ===== MAIN CONTENT ===== */
        .site-main {
            background-color: #ffffff;
            padding: 80px 100px 80px 100px;
        }

        /* ---- 每个图片部分之间间距20px ---- */
        .gallery-section {
            margin-bottom: 20px;
        }
        .gallery-section:last-child {
            margin-bottom: 0;
        }

        /* ---- Image grid ---- */
        .image-grid {
            display: grid;
            gap: 20px;
            background-color: #ffffff;
        }
        .image-grid .grid-item {
            position: relative;
            overflow: hidden;
            background-color: #f5f5f5;
        }
        .image-grid .grid-item img {
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }
        .image-grid .grid-item:hover img {
            transform: scale(1.04);
        }

        .grid-1col {
            grid-template-columns: 1fr;
        }
        .grid-1col .grid-item {
            aspect-ratio: 16 / 7;
            min-height: 260px;
        }

        .grid-3col {
            grid-template-columns: repeat(3, 1fr);
        }
        .grid-3col .grid-item {
            aspect-ratio: 4 / 3;
            min-height: 200px;
        }

        .grid-2col {
            grid-template-columns: repeat(2, 1fr);
        }
        .grid-2col .grid-item {
            aspect-ratio: 16 / 9;
            min-height: 220px;
        }

        /* ===== RESPONSIVE ===== */

        @media (max-width: 1024px) {
            .site-main {
                padding: 40px 60px 40px 60px;
            }
            .main-nav {
                gap: 4px 16px;
            }
            .main-nav a {
                font-size: 12px;
                letter-spacing: 1px;
            }
            .grid-3col .grid-item {
                aspect-ratio: 4 / 3;
                min-height: 160px;
            }
            .grid-2col .grid-item {
                aspect-ratio: 16 / 9;
                min-height: 180px;
            }
            .grid-1col .grid-item {
                aspect-ratio: 16 / 6;
                min-height: 220px;
            }
        }

        @media (max-width: 768px) {
            body {
                padding: 6px;
            }
            .container {
                border-radius: 4px;
            }
            .site-main {
                padding: 30px 20px 30px 20px;
            }

            .logo img {
                max-width: 160px;
            }
            .main-nav {
                gap: 4px 10px;
            }
            .main-nav a {
                font-size: 10.5px;
                letter-spacing: 0.8px;
                padding: 3px 1px;
            }

            .grid-1col .grid-item,
            .grid-3col .grid-item,
            .grid-2col .grid-item {
                aspect-ratio: 16 / 9;
                min-height: 180px;
            }
            .grid-3col,
            .grid-2col,
            .grid-1col {
                grid-template-columns: 1fr;
            }

            .gallery-section {
                margin-bottom: 16px;
            }
            .image-grid {
                gap: 16px;
            }
        }

        @media (max-width: 480px) {
            body {
                padding: 4px;
            }
            .site-main {
                padding: 20px 12px 20px 12px;
            }
            .logo img {
                max-width: 130px;
            }
            .main-nav {
                gap: 3px 6px;
            }
            .main-nav a {
                font-size: 9px;
                letter-spacing: 0.5px;
                padding: 2px 1px;
            }
            .grid-1col .grid-item,
            .grid-3col .grid-item,
            .grid-2col .grid-item {
                min-height: 150px;
                aspect-ratio: 16 / 10;
            }
            .gallery-section {
                margin-bottom: 12px;
            }
            .image-grid {
                gap: 12px;
            }
        }