.blog-show-content {
    --black: #0D0D0D;
    --red: #D62B2B;
    --white: #F5F4F0;
    --gray-mid: #9A9890;
    --gray-dark: #3A3935;
    --warm-sand: #C4A882;
    --stone: #9A9890;
}

.blog-show-content h1,
.blog-show-content h2,
.blog-show-content h3,
.blog-show-content h4,
.blog-show-content h5,
.blog-show-content h6 {
    font-family: 'Bebas Neue', sans-serif;
    font-weight: 400;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: var(--black);
}

.blog-show-content h1 {
    font-size: 2.5rem;
    margin: 1.5rem 0 1rem;
}

.blog-show-content h2 {
    font-size: 2rem;
    margin: 1.5rem 0 1rem;
}

.blog-show-content h3 {
    font-size: 1.5rem;
    margin: 1.25rem 0 0.75rem;
}

.blog-show-content h4 {
    font-size: 1.25rem;
    margin: 1rem 0 0.5rem;
}

.blog-show-content p {
    margin: 0.75rem 0;
}

.blog-show-content .intro {
    font-size: 1.125rem;
    font-weight: 500;
    color: var(--black);
    margin: 1rem 0;
    padding: 1rem;
    background: rgba(154, 152, 144, 0.12);
    border-left: 4px solid var(--red);
}

.blog-show-content blockquote {
    border-left: 4px solid var(--red);
    padding-left: 1.5rem;
    margin: 1.5rem 0;
    font-style: italic;
    color: var(--gray-dark);
}

.blog-show-content code {
    background: rgba(154, 152, 144, 0.16);
    color: var(--gray-dark);
    padding: 0.2rem 0.4rem;
    border-radius: 0.25rem;
    font-family: 'DM Mono', 'Courier New', monospace;
    font-size: 0.9em;
}

.blog-show-content pre {
    background: var(--black);
    color: var(--white);
    padding: 1rem 1.25rem;
    border-radius: 0.75rem;
    overflow-x: auto;
    margin: 1.5rem 0;
}

.blog-show-content pre code {
    background: transparent;
    color: var(--white);
    padding: 0;
}

.blog-show-content ul,
.blog-show-content ol {
    margin: 1rem 0;
    padding-left: 2rem;
}

.blog-show-content li {
    margin: 0.5rem 0;
}

.blog-show-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 2rem 0;
    font-size: 0.95rem;
}

.blog-show-content th,
.blog-show-content td {
    border: 1px solid var(--stone);
    padding: 0.75rem 1rem;
    text-align: left;
    vertical-align: top;
}

.blog-show-content th {
    font-family: 'Bebas Neue', sans-serif;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    background: rgba(154, 152, 144, 0.12);
    color: var(--black);
}

.blog-show-content .callout-info,
.blog-show-content .callout-warning,
.blog-show-content .callout-success,
.blog-show-content .callout-cta {
    margin: 3rem 0;
    border: 2px solid;
    border-radius: 0.75rem;
    padding: 1.5rem;
    position: relative;
}

.blog-show-content .callout-info {
    border-color: rgba(59, 130, 246, 0.45);
    background: rgba(59, 130, 246, 0.08);
}

.blog-show-content .callout-warning {
    border-color: rgba(249, 115, 22, 0.45);
    background: rgba(249, 115, 22, 0.08);
}

.blog-show-content .callout-success {
    border-color: rgba(196, 168, 130, 0.55);
    background: rgba(196, 168, 130, 0.12);
}

.blog-show-content .callout-cta {
    border-color: rgba(214, 43, 43, 0.45);
    background: rgba(214, 43, 43, 0.1);
}

.blog-show-content .callout-info::before,
.blog-show-content .callout-warning::before,
.blog-show-content .callout-success::before,
.blog-show-content .callout-cta::before {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 1.5rem;
    margin-right: 0.5rem;
}

.blog-show-content .callout-info::before {
    content: '\f05a ';
    color: #60a5fa;
}

.blog-show-content .callout-warning::before {
    content: '\f071 ';
    color: #fb923c;
}

.blog-show-content .callout-success::before {
    content: '\f058 ';
    color: var(--warm-sand);
}

.blog-show-content .callout-cta::before {
    content: '\f0e7 ';
    color: var(--red);
}

.blog-show-content .callout-cta h4 {
    font-family: 'Bebas Neue', sans-serif;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: var(--black);
}

.blog-show-content .btn-primary {
    display: inline-block;
    background: var(--red);
    color: #fff;
    font-family: 'Bebas Neue', sans-serif;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    border-radius: 0;
    padding: 0.75rem 1.5rem;
    text-decoration: none;
    margin-top: 0.75rem;
}

.blog-show-content .btn-primary:hover {
    opacity: 0.85;
}

.blog-show-content img {
    max-width: 100%;
    height: auto;
    border-radius: 0.75rem;
    margin: 3rem auto;
    display: block;
}

.blog-show-content figure {
    margin: 3rem 0;
    text-align: center;
}

.blog-show-content figure img {
    margin: 0 auto 1rem;
}

.blog-show-content figcaption {
    font-size: 0.875rem;
    color: var(--gray-mid);
    font-style: italic;
    margin-top: 0.5rem;
}
