/* Scoped utility additions for the editorial pages only. */
.border-b-4 { border-bottom-width: 4px; }
.border-white\/40 { border-color: rgb(255 255 255 / 0.4); }
.gap-x-4 { column-gap: 1rem; }
.gap-x-5 { column-gap: 1.25rem; }
.gap-y-1 { row-gap: 0.25rem; }
.gap-y-2 { row-gap: 0.5rem; }
.mt-7 { margin-top: 1.75rem; }
.py-10 { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
.text-\[\#B7791F\] { color: #B7791F; }
.tracking-\[0\.18em\] { letter-spacing: 0.18em; }
.tracking-\[0\.2em\] { letter-spacing: 0.2em; }
.hover\:bg-\[\#011627\]:hover { background-color: #011627; }

@media (min-width: 640px) {
    .sm\:py-12 { padding-top: 3rem; padding-bottom: 3rem; }
    .sm\:py-14 { padding-top: 3.5rem; padding-bottom: 3.5rem; }
    .sm\:py-16 { padding-top: 4rem; padding-bottom: 4rem; }
}

@media (min-width: 1024px) {
    .lg\:gap-6 { gap: 1.5rem; }
}

.prose { color: #374151; line-height: 1.75; }
.prose p { margin: 0 0 1rem; }
.prose h2, .prose h3 { margin: 1.75rem 0 0.75rem; color: #011627; font-family: Montserrat, Manrope, sans-serif; font-weight: 800; line-height: 1.25; }
.prose h2 { font-size: 1.5rem; }
.prose h3 { font-size: 1.25rem; }
.prose ul, .prose ol { margin: 0 0 1rem; padding-left: 1.5rem; }
.prose ul { list-style: disc; }
.prose ol { list-style: decimal; }
.prose a { color: #9A6700; text-decoration: underline; }
.prose img { height: auto; max-width: 100%; border-radius: 0.75rem; }
