/**
 * Chronicle Journal
 * Hybrid Theme Styles
 *
 * @package Chronicle_Journal
 */

/* ========================================
   GENERAL STYLES
   ======================================== */

/* Header and Footer */
.chronicle-journal-header-group {
    padding: var(--wp--preset--spacing--md) 0 var(--wp--preset--spacing--xs) 0;
    border-bottom: 3px solid var(--wp--preset--color--border, var(--wp--preset--color--accent));
    background-color: var(--wp--preset--color--alabaster, #EFEDEA);
}

.chronicle-journal-footer-group {
    padding: var(--wp--preset--spacing--lg);
    margin-top: var(--wp--preset--spacing--sm);
}

footer {
    border-top: 3px solid var(--wp--preset--color--border, var(--wp--preset--color--accent));
    background-color: var(--wp--preset--color--alabaster, #EFEDEA);
}

.chronicle-journal-footer-group .footer-links {
    padding-left: clamp(3rem, 2rem + 4vw, 8rem);
}

.chronicle-journal-footer-group .footer-links a {
    text-decoration: none;
    color: var(--wp--preset--color--text);
}

.chronicle-journal-footer-group .footer-links a:hover {
    text-decoration: underline;
    color: var(--wp--preset--color--highlight);
}

/* Borders */
.has-camel-border-bottom {
    border-bottom: 3px solid var(--wp--preset--color--border, var(--wp--preset--color--accent));
}

/* Taxonomy and Categories */
.taxonomy-category a {
    border: 1px solid var(--wp--preset--color--taxonomy, #EFEDEA);
    background-color: var(--wp--preset--color--taxonomy);
    color: var(--wp--preset--color--text);
    padding: 5px 12px;
    border-radius: 5px;
    text-decoration: none;
    font-size: var(--wp--preset--font-size--small);
    position: relative;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    display: inline-block;
}

.taxonomy-category a::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.taxonomy-category a:hover {
    background-color: var(--wp--preset--color--subtext);
    border-color: var(--wp--preset--color--subtext);
    color: #FFFFFF;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.taxonomy-category a:hover::before {
    left: 100%;
}

.taxonomy-category a:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.taxonomy-category span {
    visibility: hidden;
}

.taxonomy-post_tag a {
    color: var(--wp--preset--color--highlight);
}

.taxonomy-post_tag a:hover {
    text-decoration: none;
    color: var(--wp--preset--color--subtext);
}

/* Learn More Link */
.wp-block-post-excerpt__more-link {
    text-decoration: none;
    background-color: var(--wp--preset--color--accent);
    padding: 0.5rem 1rem;
    border-radius: 4px;
    color: #fff;
    position: relative;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.wp-block-post-excerpt__more-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.wp-block-post-excerpt__more-link:hover {
    background-color: var(--wp--preset--color--alternate, #2E4A62);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.wp-block-post-excerpt__more-link:hover::before {
    left: 100%;
}

.wp-block-post-excerpt__more-link:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Buttons */
button, .button, input[type="submit"], .wp-block-button__link {
    background-color: var(--wp--preset--color--text, #1A1A1A);
    color: #fff;
    border: none;
    padding: 0.75rem 1.5rem;
    border-radius: 4px;
    font-family: "Source Sans 3", sans-serif;
    font-size: clamp(1rem, 0.875rem + 0.5vw, 1.125rem);
    font-weight: 600;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-decoration: none;
    display: inline-block;
}

button::before, .button::before, input[type="submit"]::before, .wp-block-button__link::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

button:hover, .button:hover, input[type="submit"]:hover, .wp-block-button__link:hover {
    background-color: var(--wp--preset--color--highlight, #1B5F9E);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

button:hover::before, .button:hover::before, input[type="submit"]:hover::before, .wp-block-button__link:hover::before {
    left: 100%;
}

button:active, .button:active, input[type="submit"]:active, .wp-block-button__link:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Outline Button */
.is-style-outline .wp-block-button__link,
.outline-button {
    background-color: var(--wp--preset--color--background);
    color: var(--wp--preset--color--text, #1B5F9E);
    border: 2px solid var(--wp--preset--color--text, #1B5F9E);
    padding: 0.75rem 1.5rem;
    border-radius: 4px;
    font-family: "Source Sans 3", sans-serif;
    font-size: clamp(1rem, 0.875rem + 0.5vw, 1.125rem);
    font-weight: 600;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-decoration: none;
    display: inline-block;
}

.is-style-outline .wp-block-button__link::before,
.outline-button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.is-style-outline .wp-block-button__link:hover,
.outline-button:hover {
    background-color: var(--wp--preset--color--alternate, #2E4A62);
    border-color: var(--wp--preset--color--alternate, #2E4A62);
    color: #FFFFFF;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.is-style-outline .wp-block-button__link:hover::before,
.outline-button:hover::before {
    left: 100%;
}

.is-style-outline .wp-block-button__link:active,
.outline-button:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Patterns and Layout */
.chronicle-journal-pattern {
    padding: clamp(3rem, 1rem + 2vw, 4rem) 0;
}

.hero-post-title a,
.patterns-post-title a {
    /** Same size with --wp--preset--font-size--h6(using this var will have undefined behavior) */
    font-size: clamp(1.5rem, 0.875rem + 0.5vw, 1.25rem);
    color: var(--wp--preset--color--text);
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.hero-post-title a:hover,
.patterns-post-title a:hover {
    color: var(--wp--preset--color--highlight, #1B5F9E);
    transform: translateY(-1px);
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

h2.hero-post-title,
h2.patterns-post-title {
    margin-block-start: 0 !important;
    margin-top: 0 !important;
}

/* Post Meta */
.wp-block-group.has-small-font-size {
    display: flex;
    align-items: center;
    gap: var(--wp--preset--spacing--sm);
    margin-top: var(--wp--preset--spacing--md);
    padding: var(--wp--preset--spacing--sm) var(--wp--preset--spacing--md);
}

.wp-block-post-author,
.wp-block-post-author,
.wp-block-post-date {
    display: flex;
    align-items: center;
    gap: var(--wp--preset--spacing--xs);
    font-weight: 600;
    color: var(--wp--preset--color--text);
}

.wp-block-post-author__avatar {
    margin-right: 0;
}

.wp-block-post-author img {
    border-radius: 50%;
    border: 2px solid var(--wp--preset--color--accent, #C69C6A);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.hero-section .wp-block-post-author img,
.chronicle-journal-pattern .wp-block-post-author img {
    width: 32px;
    height: 32px;
}

.wp-block-post-author .wp-block-post-author__name {
    color: var(--wp--preset--color--text);
    text-decoration: none;
    transition: color 0.3s ease;
}

.wp-block-post-author .wp-block-post-author__name a,
.wp-block-post-date a {
    text-decoration: none;
    color: var(--wp--preset--color--text);
}

.wp-block-post-author .wp-block-post-author__name a:hover,
.wp-block-post-date a:hover {
    text-decoration: underline;
    color: var(--wp--preset--color--highlight);
}

/* Full-height image coverage for promotions column */
.promotions-column-image {
    display: flex;
    flex-direction: column;
}

.promotions-column-image .wp-block-image {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.promotions-column-image .wp-block-image figure {
    height: 100%;
    margin: 0;
    display: flex;
    flex-direction: column;
}

.promotions-column-image .wp-block-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 8px;
    flex: 1;
}

/* Single Post */
.post-container {
    padding: var(--wp--preset--spacing--lg);
}

.post-header {
    margin-bottom: var(--wp--preset--spacing--lg);
}

.post-comment-pagination {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: var(--wp--preset--spacing--30);
    padding-right: 16px;
    padding-bottom: var(--wp--preset--spacing--30);
    padding-left: 16px
}

.sidebar-post-title {
    font-size: var(--wp--preset--font-size--h4);
    padding-top: var(--wp--preset--spacing--sm);
    padding-bottom: var(--wp--preset--spacing--sm);
}

/* Post Meta */
.wp-block-post-author img {
    border-radius: 50%;
}

.wp-block-post-author {
    align-items: center;
}

/* Post Author Biography */
.wp-block-post-author-biography {
    background: var(--wp--preset--color--alabaster, #EFEDEA);
    padding: 2rem;
    margin: 2rem 0 var(--wp--preset--spacing--sm) 0;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    border-left: 4px solid var(--wp--preset--color--accent, #C69C6A);
}

.wp-block-post-author-biography .wp-block-post-author-biography__avatar {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    margin-bottom: 1rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    border: 3px solid #fff;
}

.wp-block-post-author-biography .wp-block-post-author-biography__name {
    font-family: var(--wp--preset--font-family--playfair-display, "Playfair Display", serif);
    font-size: var(--wp--preset--font-size--h4);
    font-weight: 900;
    color: var(--wp--preset--color--text, #1A1A1A);
    margin: 0 0 0.5rem 0;
    line-height: var(--wp--custom--line-height--h-3);
}

.wp-block-post-author-biography .wp-block-post-author-biography__content {
    font-size: var(--wp--preset--font-size--medium);
    line-height: var(--wp--custom--line-height--normal);
    color: var(--wp--preset--color--text, #1A1A1A);
    margin: 0;
}

.wp-block-post-author-biography .wp-block-post-author-biography__content p {
    margin: 0 0 1rem 0;
}

.wp-block-post-author-biography .wp-block-post-author-biography__content p:last-child {
    margin-bottom: 0;
}

/* Author biography layout */
.wp-block-post-author-biography {
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
}

.wp-block-post-author-biography__avatar {
    flex-shrink: 0;
}

.wp-block-post-author-biography__text {
    flex: 1;
}



/* Comment Pagination */
.wp-block-comments-pagination {
    margin: 2rem 0;
    padding: 1.5rem 0;
    border-top: 1px solid rgba(26, 26, 26, 0.1);
    border-bottom: 1px solid rgba(26, 26, 26, 0.1);
}

.wp-block-comments-pagination .wp-block-comments-pagination-previous,
.wp-block-comments-pagination .wp-block-comments-pagination-next {
    display: inline-block;
    padding: 0.75rem 1.5rem;
    background-color: var(--wp--preset--color--text, #1A1A1A);
    color: #fff;
    text-decoration: none;
    border-radius: 4px;
    font-size: var(--wp--preset--font-size--small);
    font-weight: 600;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    margin: 0 0.5rem;
}

.wp-block-comments-pagination .wp-block-comments-pagination-previous::before,
.wp-block-comments-pagination .wp-block-comments-pagination-next::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.wp-block-comments-pagination .wp-block-comments-pagination-previous:hover,
.wp-block-comments-pagination .wp-block-comments-pagination-next:hover {
    background-color: var(--wp--preset--color--highlight, #1B5F9E);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    color: #fff;
}

.wp-block-comments-pagination .wp-block-comments-pagination-previous:hover::before,
.wp-block-comments-pagination .wp-block-comments-pagination-next:hover::before {
    left: 100%;
}

.wp-block-comments-pagination .wp-block-comments-pagination-previous:active,
.wp-block-comments-pagination .wp-block-comments-pagination-next:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.wp-block-comments-pagination .wp-block-comments-pagination-numbers {
    display: inline-flex;
    gap: 0.5rem;
    align-items: center;
    margin: 0 1rem;
}

.wp-block-comments-pagination .wp-block-comments-pagination-numbers a {
    display: inline-block;
    padding: 0.5rem 0.75rem;
    background-color: var(--wp--preset--color--alabaster, #EFEDEA);
    color: var(--wp--preset--color--text, #1A1A1A);
    text-decoration: none;
    border-radius: 4px;
    font-size: var(--wp--preset--font-size--small);
    font-weight: 600;
    transition: all 0.3s ease;
    min-width: 2.5rem;
    text-align: center;
}

.wp-block-comments-pagination .wp-block-comments-pagination-numbers a:hover {
    background-color: var(--wp--preset--color--accent, #C69C6A);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.wp-block-comments-pagination .wp-block-comments-pagination-numbers .current {
    background-color: var(--wp--preset--color--highlight, #1B5F9E);
    color: #fff;
    font-weight: 700;
    display: inline-block;
    padding: 0.5rem 0.75rem;
    border-radius: 4px;
    font-size: var(--wp--preset--font-size--small);
    min-width: 2.5rem;
    text-align: center;
    transition: all 0.3s ease;
}

/* Disabled state for pagination */
.wp-block-comments-pagination .wp-block-comments-pagination-previous:disabled,
.wp-block-comments-pagination .wp-block-comments-pagination-next:disabled {
    background-color: rgba(26, 26, 26, 0.3);
    color: rgba(255, 255, 255, 0.5);
    cursor: not-allowed;
    transform: none;
}

.wp-block-comments-pagination .wp-block-comments-pagination-previous:disabled:hover,
.wp-block-comments-pagination .wp-block-comments-pagination-next:disabled:hover {
    background-color: rgba(26, 26, 26, 0.3);
    transform: none;
    box-shadow: none;
}

/* Container */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1rem;
}

/* ========================================
   PATTERNS STYLES
   ======================================== */

.brand-highlights {
    padding: var(--wp--preset--spacing--md) 0;
    background-color: var(--wp--preset--color--alabaster, #EFEDEA);
}

/* ========================================
   UTILITY STYLES
   ======================================== */

/* WordPress Block Color Classes */
.has-text-color.has-white-color,
.has-text-color.has-white-color p,
.has-text-color.has-white-color h1,
.has-text-color.has-white-color h2,
.has-text-color.has-white-color h3,
.has-text-color.has-white-color h4,
.has-text-color.has-white-color h5,
.has-text-color.has-white-color h6,
.has-text-color.has-white-color strong,
.has-text-color.has-white-color span {
    color: var(--wp--preset--color--white) !important;
}

.has-padding-top-lg {
    padding-top: clamp(3rem, 1rem + 2vw, 4rem);
}

.has-no-padding-top {
    padding-top: 0;
}

.has-no-padding-bottom {
    padding-bottom: 0;
}

.has-lg-padding-top {
    padding-top: var(--wp--preset--spacing--lg);
}

.has-lg-padding-bottom {
    padding-bottom: var(--wp--preset--spacing--lg);
}

.has-md-padding-top {
    padding-top: var(--wp--preset--spacing--md);
}

.has-md-padding-bottom {
    padding-bottom: var(--wp--preset--spacing--md);
}

.has-sm-padding-top {
    padding-top: var(--wp--preset--spacing--sm);
}

.has-sm-padding-bottom {
    padding-bottom: var(--wp--preset--spacing--sm);
}

.has-xs-padding-top {
    padding-top: var(--wp--preset--spacing--xs);
}

.has-xs-padding-bottom {
    padding-bottom: var(--wp--preset--spacing--xs);
}

.has-font-size-h4 {
    font-size: clamp(1.5rem, 1.25rem + 1.5vw, 2rem);
}

/* Block Gap Utilities */
footer,
.wp-block-group,
.has-no-block-gap-top {
    margin-block-start: 0 !important;
}

.has-no-block-gap-top > *:first-child {
    margin-block-start: 0 !important;
}

/* ========================================
   NAVIGATION STYLES
   ======================================== */

/* Main Navigation */
.wp-block-navigation {
    font-family: "Source Sans 3", sans-serif;
}

.wp-block-navigation .wp-block-navigation-item__content {
    color: var(--wp--preset--color--text, #1A1A1A);
    text-decoration: none;
    font-weight: 500;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.wp-block-navigation .wp-block-navigation-item__content:hover {
    background-color: var(--wp--preset--color--highlight, #1B5F9E);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Submenu Container */
.wp-block-navigation__submenu-container {
    background-color: #fff;
    border: 1px solid var(--wp--preset--color--border, #EFEDEA);
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    padding: 0.5rem 0;
    min-width: 200px;
    margin-top: 0.25rem;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.wp-block-navigation-item:focus-within .wp-block-navigation__submenu-container,
.wp-block-navigation-item:hover .wp-block-navigation__submenu-container {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Level 1 Submenu Items */
.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    color: var(--wp--preset--color--text, #1A1A1A);
    padding: 0.75rem 1.5rem;
    font-size: var(--wp--preset--font-size--small);
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    position: relative;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
    background-color: var(--wp--preset--color--highlight, #1B5F9E);
    color: #fff;
    padding-left: 2rem;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__content:last-child {
    border-bottom: none;
}

/* Level 2 Submenu Container */
.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
    left: 100%;
    top: 0;
    margin-left: 0.25rem;
    min-width: 180px;
    border-left: 3px solid var(--wp--preset--color--accent, #C69C6A);
}

/* Level 2 Submenu Items */
.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    padding: 0.5rem 1.25rem;
    font-size: var(--wp--preset--font-size--small);
    color: var(--wp--preset--color--subtext);
    border-bottom: 1px solid rgba(0, 0, 0, 0.03);
}

.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
    background-color: var(--wp--preset--color--highlight, #1B5F9E);
    color: #fff;
    padding-left: 1.75rem;
}

/* Level 3 Submenu Container */
.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
    left: 100%;
    top: 0;
    margin-left: 0.25rem;
    min-width: 160px;
    border-left: 3px solid var(--wp--preset--color--highlight, #1B5F9E);
}

/* Level 3 Submenu Items */
.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    padding: 0.4rem 1rem;
    font-size: var(--wp--preset--font-size--small);
    color: var(--wp--preset--color--subtext);
    border-bottom: 1px solid rgba(0, 0, 0, 0.02);
}

.wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
    background-color: var(--wp--preset--color--alternate, #2E4A62);
    color: #fff;
    padding-left: 1.5rem;
}

/* Submenu Indicators */
.wp-block-navigation-item.has-child:hover .wp-block-navigation-item__content::after {
    transform: rotate(180deg);
}

/* Mobile Navigation Adjustments */
@media (max-width: 768px) {
    .wp-block-navigation__submenu-container {
        position: static;
        box-shadow: none;
        border: none;
        background-color: var(--wp--preset--color--alabaster, #EFEDEA);
        margin-top: 0;
        opacity: 1;
        visibility: visible;
        transform: none;
        border-radius: 0;
        padding: 0;
    }
    
    .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
        padding: 0.5rem 2rem;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    }
    
    .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
        position: static;
        margin-left: 1rem;
        border-left: 2px solid var(--wp--preset--color--accent, #C69C6A);
        background-color: rgba(198, 156, 106, 0.1);
    }
    
    .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
        padding: 0.4rem 1.5rem;
    }
    
    .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
        margin-left: 1rem;
        border-left: 2px solid var(--wp--preset--color--highlight, #1B5F9E);
        background-color: rgba(27, 95, 158, 0.1);
    }
    
    .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
        padding: 0.3rem 1.25rem;
    }
}

/* ========================================
   LEGACY STYLES
   ======================================== */

/* .entry-content */
.entry-content {
    padding-bottom: var(--wp--preset--spacing--lg);
}

/* Paragraphs and Text Elements */
p {
    margin: 0 0 1.5rem 0;
}

/* Lists */
ul, ol {
    margin: 0 0 1.5rem 1.5rem;
}

li {
    margin-bottom: 0.5rem;
}

ul.wp-block-post-template, ol.wp-block-post-template {
    margin: 0;
}

/* Blockquotes */
blockquote {
    margin: 1.5rem 0;
    padding: 1rem 1.5rem;
    border-left: 4px solid var(--wp--preset--color--accent, #C69C6A);
    background-color: rgba(198, 156, 106, 0.1);
    font-style: italic;
    font-size: clamp(1.125rem, 1rem + 0.75vw, 1.375rem);
}

blockquote p:last-child {
    margin-bottom: 0;
}

/* Code Elements */
code {
    background-color: rgba(26, 26, 26, 0.1);
    padding: 0.125rem 0.25rem;
    border-radius: 3px;
    font-family: "Courier New", monospace;
    font-size: 0.9em;
}

pre {
    background-color: rgba(26, 26, 26, 0.1);
    padding: 1rem;
    border-radius: 4px;
    overflow-x: auto;
    margin: 1.5rem 0;
}

pre code {
    background: none;
    padding: 0;
}

/* Tables */
table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5rem 0;
}

th, td {
    padding: 0.75rem;
    text-align: left;
    border-bottom: 1px solid rgba(26, 26, 26, 0.2);
}

th {
    background-color: rgba(198, 156, 106, 0.1);
    font-weight: 600;
}

/* Images */
img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
    display: block;
}

/* Prevent oversized images from breaking layout */
img.alignnone {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
}

/* Ensure all images respect container boundaries */
.wp-block-image img,
figure img,
p img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Prevent images from overflowing their containers */
.wp-block-image,
figure,
p {
    max-width: 100%;
    overflow: hidden;
}

/* Legacy Gallery Support */
.gallery {
    margin: 2rem 0;
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.gallery-item {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.gallery-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.gallery-item img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.gallery-item:hover img {
    transform: scale(1.05);
}

.gallery-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
    color: #fff;
    padding: 1rem;
    font-size: var(--wp--preset--font-size--small);
    line-height: var(--wp--custom--line-height--h-5);
    opacity: 0;
    transform: translateY(100%);
    transition: all 0.3s ease;
}

.gallery-item:hover .gallery-caption {
    opacity: 1;
    transform: translateY(0);
}

/* Gallery columns */
.gallery-columns-2 {
    grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
    grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
    grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
    grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
    grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
    grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
    grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
    grid-template-columns: repeat(9, 1fr);
}



/* Legacy Image Alignments */
img.alignleft {
    float: left;
    margin: 0 1.5rem 1rem 0;
}

img.alignright {
    float: right;
    margin: 0 0 1rem 1.5rem;
}

img.aligncenter {
    display: block;
    margin: 0 auto 1rem auto;
}

img.alignwide {
    margin-left: calc(-100vw / 2 + 100% / 2);
    margin-right: calc(-100vw / 2 + 100% / 2);
    max-width: 100vw;
}

img.alignfull {
    margin-left: calc(-100vw / 2 + 100% / 2);
    margin-right: calc(-100vw / 2 + 100% / 2);
    max-width: 100vw;
    width: 100vw;
}



/* Horizontal Rule */
hr {
    border: none;
    border-top: 2px solid rgba(26, 26, 26, 0.2);
    margin: 2rem 0;
}

/* Form Elements */
input, textarea, select {
    font-family: "Source Sans 3", sans-serif;
    font-size: clamp(1rem, 0.875rem + 0.5vw, 1.125rem);
    padding: 0.75rem;
    border: 1px solid rgba(26, 26, 26, 0.2);
    border-radius: 4px;
    background-color: #fff;
}

input:focus, textarea:focus, select:focus {
    outline: none;
    border-color: var(--wp--preset--color--highlight, #1B5F9E);
    box-shadow: 0 0 0 2px rgba(27, 95, 158, 0.2);
}

/* ========================================
   RESPONSIVE STYLES
   ======================================== */

/* iPad Air and Mini Landscape (768px to 1180px) */
@media screen and (min-width: 768px) and (max-width: 1180px) and (orientation: landscape) {
    .chronicle-journal-footer-group {
        padding: var(--wp--preset--spacing--md);
    }
    
    .chronicle-journal-footer-group .footer-links {
        padding-left: clamp(2rem, 1.5rem + 3vw, 4rem);
    }

    .chronicle-journal-pattern,
    .hero-section {
        padding: var(--wp--preset--spacing--md);
    }
    
    .container {
        padding: 0 1.5rem;
    }
}

/* Tablet and Mobile (1024px and below) */
@media (max-width: 1024px) {
    .chronicle-journal-footer-group .footer-links {
        padding-left: clamp(3rem, 2rem + 4vw, 5rem);
    }

    .chronicle-journal-pattern,
    .hero-section {
        padding: var(--wp--preset--spacing--lg);
    }
}

/* Tablet and Mobile (768px and below) */
@media (max-width: 768px) {
    
    /* Container adjustments */
    .container {
        padding: 0 0.5rem;
    }
    
    /* Hero section adjustments */
    .hero-section .wp-block-group.has-small-font-size {
        padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--sm);
        gap: var(--wp--preset--spacing--xs);
    }
    
    .hero-section .wp-block-post-author img {
        width: 28px;
        height: 28px;
    }
  
    /* Author biography adjustments */
    .wp-block-post-author-biography {
        flex-direction: column;
        text-align: center;
        gap: 1rem;
    }
    
    .wp-block-post-author-biography .wp-block-post-author-biography__avatar {
        width: 60px;
        height: 60px;
        margin: 0 auto 0.5rem auto;
    }
    
    .wp-block-post-author-biography .wp-block-post-author-biography__name {
        font-size: var(--wp--preset--font-size--h5);
    }
    
    .wp-block-post-author-biography .wp-block-post-author-biography__content {
        font-size: var(--wp--preset--font-size--small);
    }
    
    /* Footer adjustments */
    .chronicle-journal-footer-group .wp-block-group {
        flex-direction: column;
        gap: var(--wp--preset--spacing--sm);
        align-items: flex-start;
        padding-top: var(--wp--preset--spacing--lg);
    }
    
    .chronicle-journal-footer-group .footer-links {
        flex-direction: column;
        gap: var(--wp--preset--spacing--xs);
        align-items: flex-start;
        padding-left: 0;
        margin-left: 0;
    }
    
    .chronicle-journal-footer-group .footer-links p {
        padding-top: var(--wp--preset--spacing--xs);
    }
    
    /* Gallery adjustments */
    .gallery {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 0.75rem;
    }
    
    .gallery-item img {
        height: 150px;
    }
    
    .gallery-columns-2,
    .gallery-columns-3,
    .gallery-columns-4,
    .gallery-columns-5,
    .gallery-columns-6,
    .gallery-columns-7,
    .gallery-columns-8,
    .gallery-columns-9 {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* Image alignment adjustments */
    img.alignleft,
    img.alignright {
        float: none;
        margin: 0 0 1rem 0;
        text-align: center;
    }
    
    /* Hero pattern mobile adjustments */
    .chronicle-journal-pattern .wp-block-post-template,
    .hero-section .wp-block-post-template {
        margin-left: 0;
        padding-left: 0;
    }
}

/* Mobile (480px and below) */
@media (max-width: 480px) {

    .chronicle-journal-pattern,
    .hero-section {
        padding: var(--wp--preset--spacing--lg);
    }
    
    /* Author biography adjustments */
    .wp-block-post-author-biography {
        padding: 1.5rem;
        margin: 1.5rem 0;
    }
    
    .wp-block-post-author-biography .wp-block-post-author-biography__avatar {
        width: 50px;
        height: 50px;
    }
    
    /* Gallery adjustments */
    .gallery {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }
    
    .gallery-item img {
        height: 200px;
    }
    
    .gallery-columns-2,
    .gallery-columns-3,
    .gallery-columns-4,
    .gallery-columns-5,
    .gallery-columns-6,
    .gallery-columns-7,
    .gallery-columns-8,
    .gallery-columns-9 {
        grid-template-columns: 1fr;
    }
}

