
        :root {
            --stone-dark: #2b2622;
            --stone: #4a4038;
            --accent: #8a5a2b;
            --accent-light: #b97a3c;
            --cream: #faf6ef;
            --cream-dark: #efe7d8;
            --text: #2e2a26;
            --muted: #6f655b;
            --white: #ffffff;
        }

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

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: "Georgia", "Times New Roman", serif;
            background: var(--cream);
            color: var(--text);
            line-height: 1.75;
            font-size: 17px;
            -webkit-font-smoothing: antialiased;
        }

        a {
            color: var(--accent);
            text-decoration: none;
            transition: color .2s ease;
        }

        a:hover {
            color: var(--accent-light);
            text-decoration: underline;
        }

        /* Header */
        .site-header {
            background: linear-gradient(135deg, var(--stone-dark) 0%, var(--stone) 100%);
            color: var(--white);
            border-bottom: 5px solid var(--accent);
            padding: 56px 20px 48px;
            text-align: center;
            position: relative;
        }

        .site-header::after {
            content: "";
            position: absolute;
            left: 0;
            right: 0;
            bottom: 0;
            height: 6px;
            background: repeating-linear-gradient(
                90deg,
                var(--accent) 0,
                var(--accent) 18px,
                transparent 18px,
                transparent 30px
            );
            opacity: .5;
        }

        .site-header h1 {
            max-width: 960px;
            margin: 0 auto;
            font-size: clamp(1.7rem, 4.5vw, 3rem);
            line-height: 1.25;
            font-weight: 700;
            letter-spacing: .5px;
            text-wrap: balance;
        }

        /* Layout */
        main {
            max-width: 960px;
            margin: 0 auto;
            padding: 40px 20px 20px;
        }

        article {
            background: var(--white);
            border: 1px solid var(--cream-dark);
            border-left: 5px solid var(--accent);
            border-radius: 6px;
            padding: 36px 40px;
            box-shadow: 0 6px 24px rgba(43, 38, 34, .07);
            overflow-wrap: break-word;
        }

        article h2,
        article h3,
        article h4,
        article h5,
        article h6 {
            color: var(--stone-dark);
            line-height: 1.3;
            margin: 1.6em 0 .6em;
        }

        article h2 {
            font-size: 1.75rem;
            padding-bottom: 8px;
            border-bottom: 2px solid var(--cream-dark);
        }

        article h3 { font-size: 1.4rem; color: var(--accent); }
        article h4 { font-size: 1.2rem; }
        article h5, article h6 { font-size: 1.05rem; }

        article > :first-child {
            margin-top: 0;
        }

        article p {
            margin-bottom: 1.1em;
        }

        article ul,
        article ol {
            margin: 0 0 1.2em 1.5em;
        }

        article li {
            margin-bottom: .4em;
        }

        article img {
            max-width: 100%;
            height: auto;
        }

        article table {
            width: 100%;
            border-collapse: collapse;
            margin-bottom: 1.2em;
            display: block;
            overflow-x: auto;
        }

        article th,
        article td {
            border: 1px solid var(--cream-dark);
            padding: 8px 12px;
            text-align: left;
        }

        article th {
            background: var(--cream-dark);
        }

        article blockquote {
            border-left: 4px solid var(--accent-light);
            background: var(--cream);
            padding: 14px 20px;
            margin: 0 0 1.2em;
            font-style: italic;
            color: var(--muted);
        }

        /* Transition paragraph */
        .transition {
            margin: 32px 0 8px;
            padding: 24px 30px;
            background: var(--cream-dark);
            border-radius: 6px;
            border-top: 3px solid var(--accent);
            color: var(--stone);
            overflow-wrap: break-word;
        }

        .transition p {
            margin-bottom: 1em;
        }

        .transition p:last-child {
            margin-bottom: 0;
        }

        /* Links block */
        .links-block {
            margin: 28px 0 40px;
            padding: 32px 36px;
            background: var(--stone-dark);
            color: var(--cream);
            border-radius: 6px;
            border: 1px solid var(--stone);
            box-shadow: 0 6px 24px rgba(43, 38, 34, .15);
        }

        .links-block h3 {
            color: var(--accent-light);
            font-size: 1.25rem;
            margin: 0 0 12px;
            padding-bottom: 8px;
            border-bottom: 1px solid var(--stone);
            break-after: avoid;
            -webkit-column-span: all;
            column-span: all;
        }

        .links-block ul {
            list-style: none;
            margin: 0 0 28px;
            padding: 0;
            column-count: 2;
            column-gap: 40px;
        }

        .links-block ul:last-child {
            margin-bottom: 0;
        }

        .links-block li {
            break-inside: avoid;
            padding: 6px 0 6px 18px;
            position: relative;
            overflow-wrap: anywhere;
        }

        .links-block li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 1.05em;
            width: 7px;
            height: 7px;
            background: var(--accent-light);
            transform: rotate(45deg);
        }

        .links-block a {
            color: var(--cream);
            text-decoration: none;
            border-bottom: 1px dotted rgba(250, 246, 239, .4);
        }

        .links-block a:hover {
            color: var(--accent-light);
            border-bottom-color: var(--accent-light);
            text-decoration: none;
        }

        /* Footer */
        .site-footer {
            background: var(--stone-dark);
            border-top: 5px solid var(--accent);
            color: var(--cream-dark);
            text-align: center;
            padding: 28px 20px;
            font-size: .95rem;
        }

        .site-footer p {
            max-width: 960px;
            margin: 0 auto;
        }

        /* Responsive */
        @media (max-width: 720px) {
            body { font-size: 16px; }
            .site-header { padding: 40px 16px 36px; }
            main { padding: 24px 14px 10px; }
            article { padding: 24px 20px; }
            .transition { padding: 20px; }
            .links-block { padding: 24px 20px; }
            .links-block ul {
                column-count: 1;
            }
        }
    