        :root {
            --primary-color: #1a5276;
            --secondary-color: #d68910;
            --text-color: #333;
            --light-gray: #f5f5f5;
            --white: #ffffff;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Open Sans', sans-serif;
            line-height: 1.6;
            color: var(--text-color);
            background-color: var(--light-gray);
        }

        header {
            background-color: var(--primary-color);
            color: var(--white);
            padding: 2rem 1rem;
            text-align: center;
        }

        h1,
        h2,
        h3 {
            font-family: 'Noto Serif', serif;
            margin-bottom: 1rem;
        }

        h1 {
            font-size: 2rem;
            line-height: 1.2;
        }

        .subtitle {
            font-size: 1.1rem;
            opacity: 0.9;
            margin-top: 0.5rem;
        }

        main {
            max-width: 800px;
            margin: 2rem auto;
            padding: 0 1rem;
        }

        article {
            background: var(--white);
            border-radius: 5px;
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
            overflow: hidden;
        }

        .article-content {
            padding: 1.5rem;
        }

        h2 {
            color: var(--primary-color);
            font-size: 1.5rem;
            margin-top: 1.5rem;
            border-bottom: 2px solid var(--secondary-color);
            padding-bottom: 0.5rem;
        }

        h3 {
            color: var(--secondary-color);
            font-size: 1.2rem;
            margin-top: 1.2rem;
        }

        p {
            margin-bottom: 1.2rem;
        }

        img {
            width: 100%;
            height: auto;
            margin: 1rem 0;
            border-radius: 4px;
        }

        .image-caption {
            text-align: center;
            font-style: italic;
            color: #666;
            font-size: 0.9rem;
            margin-top: -0.5rem;
        }

        .highlight-box {
            background-color: rgba(214, 137, 16, 0.1);
            border-left: 4px solid var(--secondary-color);
            padding: 1rem;
            margin: 1.5rem 0;
            border-radius: 0 4px 4px 0;
        }

        footer {
            background-color: var(--primary-color);
            color: var(--white);
            text-align: center;
            padding: 1.5rem;
            margin-top: 2rem;
            font-size: 0.9rem;
        }

        @media (max-width: 600px) {
            h1 {
                font-size: 1.6rem;
            }

            h2 {
                font-size: 1.3rem;
            }

            .article-content {
                padding: 1rem;
            }
        }