/*
Theme Name: Theme 2 - Beige Modern (Simplified)
Theme URI: https://multidots.com
Author: Multidots
Author URI: https://multidots.com
Description: Multidots theme - Simplified version without build process
Tags: blog, theme
Version: 1.0
Requires at least: 5.0
Tested up to: 5.4
Requires PHP: 7.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tripeak-main-two
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

/* ==========================================================================
   Reset & Base Styles
   ========================================================================== */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    border: 0;
    margin: 0;
    outline: 0;
    padding: 0;
    vertical-align: baseline;
}

html {
    -webkit-font-smoothing: none;
    text-rendering: optimizeLegibility !important;
    -webkit-font-smoothing: antialiased !important;
    overflow-x: hidden;
    scroll-behavior: smooth;
}

body {
    margin: 0;
    overflow-x: hidden;
    font-family: "lucida grande", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 18px;
    line-height: 170%;
    font-weight: 500;
    background-color: var(--body-bg-color);
    color: var(--text-color);
}

/* ==========================================================================
   Typography
   ========================================================================== */

h1 {
    font-family: "georgiaregular";
    font-weight: 400;
    font-size: 56px;
    line-height: 120%;
    letter-spacing: 1%;
    margin-bottom: 16px;
    color: var(--heading-color);
}

h2 {
    font-family: "georgiabold";
    font-weight: 700;
    font-size: 32px;
    line-height: 120%;
    margin-bottom: 24px;
    color: var(--heading-color);
}

h3 {
    margin-bottom: 30px;
    color: var(--heading-color);
}

h4, h5, h6 {
    color: var(--heading-color);
}

p {
    line-height: 1.7;
}

/* Page-specific paragraph spacing */
body.page .entry-content p,
body.page .entry-content p:not(:last-child) {
    margin-bottom: 24px;
}

a {
    color: var(--text-link-color);
    text-underline-offset: 1.5px;
    text-decoration-thickness: 1px;
    text-decoration: underline;
}

a:hover {
    color: var(--text-hover-link-color);
}

/* ==========================================================================
   Layout
   ========================================================================== */

.container {
    max-width: 720px;
    margin-right: auto;
    margin-left: auto;
    padding-left: 16px;
    padding-right: 16px;
}

.container-fluid {
    padding-left: 16px;
    padding-right: 16px;
    margin: 0 auto;
}

img {
    border-style: none;
    max-width: 100%;
    height: auto;
}

/* ==========================================================================
   Forms
   ========================================================================== */

input[type="search"], input[type="text"], input[type="password"] {
    padding: 8px;
    flex-grow: 1;
    min-width: 3em;
    border: 1px solid #949494;
    font-size: inherit;
    font-family: inherit;
    line-height: inherit;
}

input[type="submit"], button[type="submit"] {
    background: #f7f7f7;
    border: 1px solid #ccc;
    padding: 8px .625em;
    color: #32373c;
    margin-left: .625em;
    word-break: normal;
    font-size: inherit;
    font-family: inherit;
    line-height: inherit;
    cursor: pointer;
}

/* ==========================================================================
   Header
   ========================================================================== */

.tripeak-theme-version-two-header {
    padding: 24px 0;
    border-bottom: 1px solid rgba(17, 6, 6, 0.1);
    background-color: var(--header-bg-color);
}

.tripeak-theme-version-two-header-wrap {
    display: flex;
    flex-direction: row;
    flex-grow: 1;
    width: 100%;
    gap: 16px;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.tripeak-theme-version-two-header .site-branding {
    display: inline-flex;
    align-items: center;
    text-align: left;
    flex-shrink: 0;
    gap: 8px;
}

.tripeak-theme-version-two-header .site-branding a {
    line-height: normal;
    flex-shrink: 0;
    text-decoration: underline;
}

.tripeak-theme-version-two-header .site-branding a img {
    height: 64px;
    width: 64px;
    border-radius: 50%;
}

.tripeak-theme-version-two-header .site-branding .site-title {
    font-size: 32px;
    line-height: 100%;
    word-wrap: break-word;
    font-weight: 500;
    text-transform: capitalize;
    color: var(--site-title-color);
}

.tripeak-theme-version-two-header .site-branding .site-title a,
.tripeak-theme-version-two-header .site-branding .site-title h1 {
    font-size: inherit;
    line-height: inherit;
    color: var(--site-title-color);
    text-decoration: none;
    margin-bottom: 0;
}

.tripeak-theme-version-two-header .site-branding .site-description {
    margin-top: 8px;
    font-weight: 500;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;
    color: var(--site-tagline-color);
}

/* Navigation */
.tripeak-theme-version-two-menu ul {
    position: relative;
    list-style: none;
    margin: 0;
    padding: 0;
}

.tripeak-theme-version-two-menu ul li {
    position: relative;
    display: inline-block;
    margin-right: 16px;
    list-style: none;
}

.tripeak-theme-version-two-menu ul li::before,
.tripeak-theme-version-two-menu ul li::after {
    content: none;
}

.tripeak-theme-version-two-menu ul li a {
    font-size: 16px;
    font-weight: 500;
    line-height: 26px;
    text-transform: capitalize;
    text-underline-offset: 2px;
    color: var(--header-text-color);
    position: relative;
    z-index: 999;
    text-decoration: underline 1px;
    text-decoration-color: var(--header-text-color);
    display: block;
}

.tripeak-theme-version-two-menu ul li.current-menu-item a {
    color: var(--text-link-color);
    text-decoration-color: currentColor;
}

.tripeak-theme-version-two-menu ul li:last-child {
    margin-right: 0;
    padding-right: 0;
}

/* Dropdown/Submenu Styles - Desktop */
.tripeak-theme-version-two-menu ul ul {
    display: flex;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 99999;
    min-width: 220px;
    background-color: #FFFFFF;
    border: 1px solid #E5E5E5;
    border-radius: 4px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    padding: 0.5rem 0;
    margin: 0;
    flex-direction: column;
    gap: 0;
    pointer-events: none;
    transform: translateY(-10px);
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
    transition-delay: 0s, 0.15s, 0s;
}

.tripeak-theme-version-two-menu ul ul li {
    display: block;
    width: 100%;
    margin: 0;
}

.tripeak-theme-version-two-menu ul ul a {
    padding: 0.75rem 1rem;
    font-size: 14px;
    text-transform: none;
    text-decoration: none;
    color: #333333;
    font-weight: 500;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.tripeak-theme-version-two-menu ul ul a:hover {
    background-color: #F8F9FA;
    color: var(--text-link-color);
}

/* Show dropdown on hover - Desktop */
.tripeak-theme-version-two-menu li:hover > ul,
.tripeak-theme-version-two-menu li:focus-within > ul {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0s;
}

/* Dropdown arrow indicator */
.tripeak-theme-version-two-menu .menu-item-has-children > a::after {
    content: " ▼";
    font-size: 0.6rem;
    margin-left: 0.25rem;
    opacity: 0.6;
}

/* Third level submenus (if needed) */
.tripeak-theme-version-two-menu ul ul ul {
    top: 0;
    left: 100%;
    margin: 0;
}

.header-nav-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

/* Search */
.tripeak-theme-header__search-container {
    position: relative;
    display: inline-block;
}

.tripeak-theme-header__search-container:focus-within .tripeak-theme-header__search-overlay {
    width: 100%;
    opacity: 1;
    left: 0;
}

.tripeak-theme-header__search-container button {
    background-color: transparent;
    border: 0;
    color: currentColor;
    cursor: pointer;
}

.tripeak-theme-header__search-container button svg {
    position: relative;
    top: 4px;
}

.tripeak-theme-header__search-container .search-form {
    display: flex;
}

.tripeak-theme-header__search-container .search-form label {
    width: 310px;
}

.tripeak-theme-header__search-container .search-submit {
    margin: 0;
    color: #fff;
    border: none;
    background-color: #333;
    border-radius: 0 6px 6px 0;
    font-size: 16px;
    padding: 8px 20px;
}

.tripeak-theme-header__search-overlay {
    width: 0;
    position: fixed;
    top: 0;
    left: -100%;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.2);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10000;
    backdrop-filter: blur(3px);
    transition: width 0.3s ease, opacity 0.3s ease, padding 0.3s ease;
    opacity: 0;
}

.tripeak-theme-header__search-overlay input[type="search"] {
    width: 100%;
    height: 60px;
    padding: 15px;
    background-color: transparent;
    border: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: currentColor;
    outline: none;
    border-radius: 6px 0 0 6px;
}

.tripeak-theme-header__inner-search-overlay {
    display: flex;
    max-width: 100%;
    background-color: #fff;
    border-radius: 6px;
}

/* ==========================================================================
   Footer
   ========================================================================== */

footer {
    background-color: var(--footer-bg-color);
}

footer .site-info {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 64px 0 32px 0;
    flex-wrap: wrap;
    gap: 10px;
    flex-direction: column;
}

footer .site-info ul li {
    display: inline-block;
    margin-right: 10px;
}

footer .site-info ul li:last-child {
    margin-right: 0;
}

footer .site-info ul li a {
    color: var(--footer-text-color);
    font-size: 16px;
    text-decoration: 1.5px underline;
    text-decoration-color: var(--footer-text-color);
}

footer .site-info .site-social-icon {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

footer .site-info .site-social-icon li {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Social Links Wrapper */
.social-links-wrapper {
    margin-top: 16px;
    margin-bottom: 8px;
}

footer .site-info .site-social-icon {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
}

footer .site-info .site-social-icon li {
    display: inline-flex;
    margin: 0;
}

footer .site-info .site-social-icon .social-link {
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: var(--footer-text-color);
    font-size: 16px;
    font-weight: 400;
    transition: opacity 0.2s ease;
}

footer .site-info .site-social-icon .social-link:hover {
    opacity: 0.8;
}

footer .site-info .site-social-icon .social-link svg {
    width: 20px;
    height: 20px;
    fill: var(--footer-text-color);
    flex-shrink: 0;
}

footer .site-info .site-social-icon .social-link img {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

footer .site-info .site-social-icon .social-link-label {
    font-size: 16px;
    font-weight: 400;
    color: var(--footer-text-color);
    text-decoration: underline;
}

footer .site-info .site-branding .custom-logo-link img {
    border: 4px solid var(--footer-text-color);
    width: 64px;
    height: 64px;
    border-radius: 50%;
}


footer .site-info .site-branding {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

footer .site-info p.site-title a {
    color: var(--footer-text-color);
    text-decoration: none;
    font-weight: 500;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 0%;
}

footer .site-info p.site-description {
    color: rgba(249, 245, 237, 0.6);
    font-weight: 500;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;
    margin-top: 4px;
}

/* Footer Post Lists */
.footer-post-lists {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
    margin-top: 32px;
}

.footer-post-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex: 1 1 240px;
    min-width: 240px;
}

.footer-post-list .footer-posts-title {
    font-size: 20px;
    line-height: 140%;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--footer-text-color);
}

.footer-post-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.footer-post-list li a {
    color: var(--footer-text-color);
    text-decoration: underline;
    font-size: 16px;
    line-height: 150%;
    transition: opacity 0.2s ease;
}

.footer-post-list li a:hover {
    opacity: 0.8;
}

@supports (display: grid) {
    .footer-post-lists {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    }

    .footer-post-list {
        flex: initial;
        min-width: 0;
    }
}

footer .site-info .site-footer-description {
    font-weight: 500;
    font-size: 18px;
    line-height: 150%;
    letter-spacing: 0%;
    color: var(--footer-text-color);
    margin: 16px 0;
}

/* Footer Navigation */
.footer-navigation {
    margin-top: 32px;
    padding-top: 24px;
    padding-bottom: 32px;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.footer-nav .footer-menu {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-nav .footer-menu li {
    margin: 0;
    padding: 0;
    position: relative;
    list-style: none;
}

.footer-nav .footer-menu li::before,
.footer-nav .footer-menu li::after {
    content: none;
}

.footer-nav .footer-menu li a {
    color: var(--footer-text-color);
    font-size: 16px;
    text-decoration: underline;
    transition: opacity 0.2s ease;
    display: block;
}

.footer-nav .footer-menu li a:hover {
    opacity: 0.8;
}

/* Footer Dropdown/Submenu Styles - Desktop */
.footer-nav .footer-menu .sub-menu {
    display: flex;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    bottom: 100%;
    left: 0;
    z-index: 99999;
    min-width: 220px;
    background-color: var(--footer-bg-color);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 4px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    padding: 0.5rem 0;
    margin: 0;
    flex-direction: column;
    gap: 0;
    pointer-events: none;
    transform: translateY(10px);
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
    transition-delay: 0s, 0.15s, 0s;
    list-style: none;
}

.footer-nav .footer-menu .sub-menu li {
    width: 100%;
    margin: 0;
}

.footer-nav .footer-menu .sub-menu a {
    padding: 0.75rem 1rem;
    font-size: 14px;
    text-decoration: none;
    color: var(--footer-text-color);
    font-weight: 500;
    transition: background-color 0.2s ease, opacity 0.2s ease;
}

.footer-nav .footer-menu .sub-menu a:hover {
    background-color: rgba(255, 255, 255, 0.1);
    opacity: 1;
}

/* Show footer dropdown on hover - Desktop */
.footer-nav .footer-menu li:hover > .sub-menu,
.footer-nav .footer-menu li:focus-within > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0s;
}

/* Footer Dropdown arrow indicator */
.footer-nav .footer-menu .menu-item-has-children > a::after {
    content: " ▲";
    font-size: 0.6rem;
    margin-left: 0.25rem;
    opacity: 0.6;
}

/* Third level submenus in footer (if needed) */
.footer-nav .footer-menu .sub-menu .sub-menu {
    bottom: 0;
    left: 100%;
    margin: 0;
    transform: translateX(-10px);
}

.footer-nav .footer-menu li:hover > .sub-menu .sub-menu,
.footer-nav .footer-menu li:focus-within > .sub-menu .sub-menu {
    transform: translateX(0);
}

/* ==========================================================================
   Main Content
   ========================================================================== */

main.tripeak-theme-version-two {
    padding: 20px 0 40px 0;
}

/* Table of Contents */
body.blog div#ez-toc-container {
    display: none;
}

#ez-toc-container {
    background-color: #F7F7F7;
}

#ez-toc-container .ez-toc-title {
    color: #333;
}

#ez-toc-container a {
    color: #000;
}

main.tripeak-theme-version-two #ez-toc-container {
    border-radius: 16px;
    box-shadow: none;
    margin-top: 48px;
    margin-bottom: 48px;
    padding: 24px;
    position: relative;
    border: none;
    width: 100%;
}

main.tripeak-theme-version-two #ez-toc-container .ez-toc-cssicon {
    border: none;
    width: 10px;
    left: 0;
    font-size: 0;
}

main.tripeak-theme-version-two #ez-toc-container .ez-toc-icon-toggle-span {
    border: none;
    position: relative;
    width: auto;
}

main.tripeak-theme-version-two #ez-toc-container .ez-toc-icon-toggle-span svg {
    display: none;
}

main.tripeak-theme-version-two #ez-toc-container .ez-toc-icon-toggle-span::before {
    content: '';
    display: inline-block;
    position: absolute;
    right: 0;
    width: 22px;
    height: 12px;
    background-image: url("data:image/svg+xml;utf8,%3Csvg width='22' height='12' viewBox='0 0 22 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.7076 11.7076C21.6147 11.8005 21.5044 11.8743 21.383 11.9246C21.2616 11.9749 21.1315 12.0008 21.0001 12.0008C20.8687 12.0008 20.7385 11.9749 20.6171 11.9246C20.4957 11.8743 20.3854 11.8005 20.2926 11.7076L11.0001 2.4138L1.70757 11.7076C1.51993 11.8952 1.26543 12.0006 1.00007 12.0006C0.734704 12.0006 0.480208 11.8952 0.292568 11.7076C0.104927 11.5199 -0.000488276 11.2654 -0.000488281 11.0001C-0.000488286 10.7347 0.104927 10.4802 0.292568 10.2926L10.2926 0.292554C10.3854 0.199577 10.4957 0.125819 10.6171 0.0754948C10.7385 0.0251705 10.8687 -0.000732422 11.0001 -0.000732422C11.1315 -0.000732422 11.2616 0.0251705 11.383 0.0754948C11.5044 0.125819 11.6147 0.199577 11.7076 0.292554L21.7076 10.2926C21.8005 10.3854 21.8743 10.4957 21.9246 10.6171C21.975 10.7385 22.0009 10.8686 22.0009 11.0001C22.0009 11.1315 21.975 11.2616 21.9246 11.383C21.8743 11.5044 21.8005 11.6147 21.7076 11.7076Z' fill='black'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
}

main.tripeak-theme-version-two #ez-toc-container .ez-toc-title {
    font-family: "georgiabold";
    font-weight: 700;
    font-size: 22px;
    line-height: 32px;
    display: inline-block;
}

main.tripeak-theme-version-two #ez-toc-container nav > ul {
    margin-top: 10px;
    padding-top: 10px;
}

main.tripeak-theme-version-two #ez-toc-container ul li {
    line-height: normal;
    margin-bottom: 5px;
    list-style: none;
}

main.tripeak-theme-version-two #ez-toc-container ul li a {
    font-size: 18px;
    line-height: 200%;
    padding-left: 5px;
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-thickness: 1px;
}

main.tripeak-theme-version-two #ez-toc-container ul li:last-child {
    margin-bottom: 0;
}

main.tripeak-theme-version-two #ez-toc-container ul ul {
    margin-top: 6px;
}

/* Blocks */
main.tripeak-theme-version-two .wp-block-buttons {
    margin-bottom: 32px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

main.tripeak-theme-version-two .wp-block-buttons > .wp-block-button {
    width: auto;
}

/* Modern Button Styling */
main.tripeak-theme-version-two .wp-block-button__link {
    display: inline-block;
    padding: 14px 28px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    text-decoration: none;
    text-align: center;
    border-radius: 8px;
    border: 2px solid transparent;
    transition: all 0.3s ease;
    cursor: pointer;
    font-family: inherit;
    letter-spacing: 0.02em;
}

/* Default/Primary Button Style */
main.tripeak-theme-version-two .wp-block-button:not(.is-style-outline) .wp-block-button__link {
    background-color: #CF2E2E;
    color: #ffffff;
    border-color: #CF2E2E;
    box-shadow: 0 2px 8px rgba(207, 46, 46, 0.25);
}

main.tripeak-theme-version-two .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
    background-color: #B42525;
    border-color: #B42525;
    box-shadow: 0 4px 12px rgba(207, 46, 46, 0.35);
    transform: translateY(-1px);
}

main.tripeak-theme-version-two .wp-block-button:not(.is-style-outline) .wp-block-button__link:active {
    transform: translateY(0);
    box-shadow: 0 2px 6px rgba(207, 46, 46, 0.3);
}

/* Outline Button Style */
main.tripeak-theme-version-two .wp-block-button.is-style-outline .wp-block-button__link {
    background-color: transparent;
    color: #CF2E2E;
    border-color: #CF2E2E;
    border-width: 2px;
}

main.tripeak-theme-version-two .wp-block-button.is-style-outline .wp-block-button__link:hover {
    background-color: #CF2E2E;
    color: #ffffff;
    box-shadow: 0 4px 12px rgba(207, 46, 46, 0.25);
    transform: translateY(-1px);
}

main.tripeak-theme-version-two .wp-block-button.is-style-outline .wp-block-button__link:active {
    transform: translateY(0);
}

/* Button with custom background colors - preserve user's color choices */
main.tripeak-theme-version-two .wp-block-button .wp-block-button__link[style*="background-color"] {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

main.tripeak-theme-version-two .wp-block-button .wp-block-button__link[style*="background-color"]:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    transform: translateY(-1px);
    filter: brightness(0.95);
}

/* Button alignment */
main.tripeak-theme-version-two .wp-block-buttons.is-content-justification-left {
    justify-content: flex-start;
}

main.tripeak-theme-version-two .wp-block-buttons.is-content-justification-center {
    justify-content: center;
}

main.tripeak-theme-version-two .wp-block-buttons.is-content-justification-right {
    justify-content: flex-end;
}

main.tripeak-theme-version-two .wp-block-buttons.is-content-justification-space-between {
    justify-content: space-between;
}

main.tripeak-theme-version-two .wp-block-list {
    margin-left: 25px;
}

main.tripeak-theme-version-two .wp-block-list li {
    margin-bottom: 16px;
}

main.tripeak-theme-version-two .wp-block-list li:last-child {
    margin-bottom: 0;
}

main.tripeak-theme-version-two .wp-block-list.has-white-background-color.has-background {
    padding: 24px;
    border-radius: 16px;
    list-style: none;
    margin-left: 0;
}

/* Inline Code Styling */
main.tripeak-theme-version-two code,
main.tripeak-theme-version-two .entry-content code,
main.tripeak-theme-version-two .entry-summary code {
    background-color: #F0EADF;
    color: #CF2E2E;
    padding: 3px 8px;
    border-radius: 4px;
    font-size: 0.9em;
    font-family: 'Courier New', Courier, monospace;
    font-weight: 500;
    border: 1px solid #E5DFD3;
    white-space: nowrap;
    letter-spacing: 0.02em;
}

/* Code Block Styling */
main.tripeak-theme-version-two pre,
main.tripeak-theme-version-two pre.wp-block-code,
main.tripeak-theme-version-two .wp-block-code {
    background-color: #2D2D2D;
    border: 1px solid #1A1A1A;
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 32px;
    overflow-x: auto;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    position: relative;
}

main.tripeak-theme-version-two pre code,
main.tripeak-theme-version-two .wp-block-code code {
    background-color: transparent;
    color: #E8E8E8;
    border: none;
    padding: 0;
    font-size: 14px;
    line-height: 1.7;
    font-family: 'Courier New', Courier, monospace;
    white-space: pre;
    display: block;
    letter-spacing: 0;
}

/* Code block language label (if used) */
main.tripeak-theme-version-two .wp-block-code::before {
    content: attr(data-language);
    position: absolute;
    top: 8px;
    right: 12px;
    font-size: 11px;
    text-transform: uppercase;
    color: #888;
    font-weight: 600;
    letter-spacing: 0.1em;
}

/* Scrollbar styling for code blocks */
main.tripeak-theme-version-two pre::-webkit-scrollbar {
    height: 8px;
}

main.tripeak-theme-version-two pre::-webkit-scrollbar-track {
    background-color: #1A1A1A;
    border-radius: 4px;
}

main.tripeak-theme-version-two pre::-webkit-scrollbar-thumb {
    background-color: #4A4A4A;
    border-radius: 4px;
}

main.tripeak-theme-version-two pre::-webkit-scrollbar-thumb:hover {
    background-color: #5A5A5A;
}

/* Syntax highlighting hints - common code colors */
main.tripeak-theme-version-two pre code .comment {
    color: #7C7C7C;
    font-style: italic;
}

main.tripeak-theme-version-two pre code .keyword {
    color: #FF6B6B;
}

main.tripeak-theme-version-two pre code .string {
    color: #A8E6CF;
}

main.tripeak-theme-version-two pre code .number {
    color: #FFD93D;
}

main.tripeak-theme-version-two pre code .function {
    color: #6BCF7F;
}

/* Remove margin from images that have captions */
main.tripeak-theme-version-two .wp-block-image:has(figcaption) img,
main.tripeak-theme-version-two .wp-block-post-featured-image:has(figcaption) img,
main.tripeak-theme-version-two figure:has(figcaption) img {
    margin-bottom: 0 !important;
}

/* Add margin to captions instead of images when caption exists */
main.tripeak-theme-version-two .wp-block-image:has(figcaption),
main.tripeak-theme-version-two .wp-block-post-featured-image:has(figcaption),
main.tripeak-theme-version-two figure:has(figcaption) {
    margin-bottom: 32px;
}

main.tripeak-theme-version-two .wp-block-image,
main.tripeak-theme-version-two .wp-block-post-featured-image {
    margin-bottom: 32px;
}

main.tripeak-theme-version-two .wp-block-image img,
main.tripeak-theme-version-two .wp-block-post-featured-image img {
    border-radius: 16px;
}

main.tripeak-theme-version-two .wp-block-cover {
    border-radius: 8px;
    margin-bottom: 20px;
}

main.tripeak-theme-version-two .wp-block-gallery {
    margin-bottom: 0; /* Remove default margin - caption will provide spacing */
    gap: 1rem; /* Gap between columns and rows */
    width: 100%;
    max-width: 100%;
}

/* Add bottom margin only when gallery has no caption */
main.tripeak-theme-version-two .wp-block-gallery:not(:has(> figcaption)) {
    margin-bottom: 32px;
}

/* Gallery grid layout - support for different column counts */
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images {
    display: grid !important;
    gap: 1rem; /* Space between image rows and columns */
    align-items: start;
    width: 100%;
}

/* Default 3-column layout */
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images.columns-default,
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images.columns-3 {
    grid-template-columns: repeat(3, 1fr);
}

main.tripeak-theme-version-two .wp-block-gallery.has-nested-images.columns-1 {
    grid-template-columns: 1fr;
}

main.tripeak-theme-version-two .wp-block-gallery.has-nested-images.columns-2 {
    grid-template-columns: repeat(2, 1fr);
}

main.tripeak-theme-version-two .wp-block-gallery.has-nested-images.columns-4 {
    grid-template-columns: repeat(4, 1fr);
}

main.tripeak-theme-version-two .wp-block-gallery.has-nested-images.columns-5 {
    grid-template-columns: repeat(5, 1fr);
}

main.tripeak-theme-version-two .wp-block-gallery.has-nested-images.columns-6 {
    grid-template-columns: repeat(6, 1fr);
}

/* Fallback for older gallery format without nested images */
main.tripeak-theme-version-two .wp-block-gallery:not(.has-nested-images) {
    display: flex;
    flex-wrap: wrap;
}

main.tripeak-theme-version-two .wp-block-gallery:not(.has-nested-images).columns-3 .wp-block-image {
    width: calc(33.33% - 0.67rem);
}

main.tripeak-theme-version-two .wp-block-gallery:not(.has-nested-images).columns-2 .wp-block-image {
    width: calc(50% - 0.5rem);
}

main.tripeak-theme-version-two .wp-block-gallery:not(.has-nested-images).columns-1 .wp-block-image {
    width: 100%;
}

main.tripeak-theme-version-two .wp-block-gallery .wp-block-image,
main.tripeak-theme-version-two .wp-block-gallery figure {
    margin-bottom: 0 !important; /* Remove bottom margin from gallery images */
    padding-bottom: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    position: relative;
    align-items: flex-start;
}

/* Ensure anchor tags in gallery don't constrain images */
main.tripeak-theme-version-two .wp-block-gallery .wp-block-image a,
main.tripeak-theme-version-two .wp-block-gallery figure a {
    display: block;
    width: 100%;
    height: auto;
    flex-shrink: 0;
    order: 0;
}

main.tripeak-theme-version-two .wp-block-gallery .wp-block-image img,
main.tripeak-theme-version-two .wp-block-gallery figure img {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: auto;
    min-height: 250px;
    display: block;
    object-fit: cover;
    border-radius: 8px;
}

/* Ensure gallery images maintain aspect ratio but with minimum size */
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images .wp-block-image img {
    aspect-ratio: 4/3;
    object-fit: cover;
}

/* Override any WordPress inline width styles on gallery items - force full width */
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images figure.wp-block-image,
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images figure.wp-block-image.size-thumbnail,
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images figure.wp-block-image.size-medium,
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images figure.wp-block-image.size-large,
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images figure.wp-block-image.size-full {
    flex-basis: auto !important;
    flex-grow: 1 !important;
    width: 100% !important;
}

/* Force gallery images to be full width regardless of WordPress size classes */
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images .wp-block-image img[class*="wp-image-"],
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images .wp-block-image.size-thumbnail img,
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images .wp-block-image.size-medium img,
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images .wp-block-image.size-large img,
main.tripeak-theme-version-two .wp-block-gallery.has-nested-images .wp-block-image.size-full img {
    width: 100% !important;
    max-width: none !important;
}

/* Individual image captions within gallery - Override all WordPress positioning */
main.tripeak-theme-version-two .wp-block-gallery .wp-block-image figcaption,
main.tripeak-theme-version-two .wp-block-gallery figure figcaption,
main.tripeak-theme-version-two .wp-block-gallery .wp-block-image .wp-element-caption,
main.tripeak-theme-version-two .wp-block-gallery figure .wp-element-caption {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    margin-top: 10px !important; /* Space above individual image caption */
    margin-bottom: 0 !important;
    padding: 10px 12px !important;
    text-align: left !important;
    font-style: normal !important;
    color: #ffffff !important; /* White text for readability */
    background-color: rgba(0, 0, 0, 0.75) !important; /* Dark semi-transparent background */
    backdrop-filter: blur(8px); /* Black blur effect */
    -webkit-backdrop-filter: blur(8px); /* Safari support */
    line-height: 1.5;
    font-size: 0.875rem !important;
    font-weight: 400;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    border-radius: 6px !important;
    opacity: 1 !important;
    display: block !important;
    order: 1 !important;
    flex-shrink: 0;
    box-sizing: border-box;
    letter-spacing: 0.01em;
}

/* Gallery-level caption (for entire gallery) */
main.tripeak-theme-version-two .wp-block-gallery > figcaption {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    margin-top: -0.5rem !important; /* Negative margin to counteract grid gap and bring closer */
    margin-bottom: 32px !important; /* Main spacing below gallery caption */
    padding: 8px 4px !important;
    text-align: left !important;
    font-style: italic;
    color: #333 !important;
    background-color: transparent !important;
    line-height: 1.6;
    font-size: 1rem !important;
    font-weight: 500;
    width: 100% !important;
    max-width: 100% !important;
    grid-column: 1 / -1; /* Span all columns if in grid */
    opacity: 1 !important;
    display: block !important;
}

main.tripeak-theme-version-two .wp-block-video video {
    border-radius: 8px;
}

/* Featured Image on Single Posts */
main.tripeak-theme-version-two .featured-image {
    margin-bottom: 2rem;
    text-align: center;
}

main.tripeak-theme-version-two .featured-image img {
    max-width: 100%;
    height: auto;
    border-radius: 16px;
    box-shadow: 0 5px 25px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease;
}

main.tripeak-theme-version-two .featured-image img:hover {
    transform: scale(1.02);
}

main.tripeak-theme-version-two .wp-block-media-text {
    margin-bottom: 20px;
}

main.tripeak-theme-version-two .wp-block-media-text .wp-block-media-text__media img {
    border-radius: 16px;
}

main.tripeak-theme-version-two .entry-content p:last-child {
    margin-bottom: 0;
}

main.tripeak-theme-version-two .entry-content .wp-block-group__inner-container > *:last-child {
    margin-bottom: 0;
}

/* Media Captions - All captions left-aligned and italicized (excluding gallery - has specific rules) */
main.tripeak-theme-version-two figcaption:not(.wp-block-gallery figcaption),
main.tripeak-theme-version-two .wp-block-image:not(.wp-block-gallery .wp-block-image) figcaption,
main.tripeak-theme-version-two .wp-block-embed figcaption,
main.tripeak-theme-version-two .wp-block-video figcaption,
main.tripeak-theme-version-two .wp-block-audio figcaption,
main.tripeak-theme-version-two .wp-block-post-featured-image figcaption,
main.tripeak-theme-version-two .wp-element-caption,
main.tripeak-theme-version-two .entry-content > figcaption,
main.tripeak-theme-version-two .entry-summary > figcaption {
    text-align: left !important;
    font-style: italic;
    color: #666;
    margin-top: 2px !important; /* Very tight spacing above caption */
    margin-bottom: 0;
    line-height: 1.6;
    font-size: 0.9rem;
}

/* Captions that are the last child get the bottom margin instead of the image (excluding gallery) */
main.tripeak-theme-version-two .wp-block-image:not(.wp-block-gallery .wp-block-image):has(figcaption) figcaption:last-child,
main.tripeak-theme-version-two .wp-block-post-featured-image:has(figcaption) figcaption:last-child,
main.tripeak-theme-version-two figure:not(.wp-block-gallery):has(figcaption) figcaption:last-child {
    margin-bottom: 32px;
}

/* Ensure captions don't have text-align center from WordPress (excluding gallery - has specific rules) */
main.tripeak-theme-version-two .wp-block-image:not(.wp-block-gallery .wp-block-image) :where(figcaption),
main.tripeak-theme-version-two .wp-block-embed :where(figcaption),
main.tripeak-theme-version-two .wp-block-video :where(figcaption),
main.tripeak-theme-version-two .wp-block-audio :where(figcaption) {
    text-align: left !important;
    font-style: italic;
}

/* Homepage Styles */
body.home h1 {
    max-width: 100%;
    margin-bottom: 24px;
}

body.home .wp-block-button__link {
    font-family: "lucida grande";
    text-transform: uppercase;
    font-weight: 600;
    background-color: #CF2E2E;
    color: #fff;
    border: 2px solid #CF2E2E;
    padding: 14px 28px;
    border-radius: 8px;
    font-size: 14px;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(207, 46, 46, 0.25);
}

body.home .wp-block-button__link:hover {
    background-color: #B42525;
    border-color: #B42525;
    box-shadow: 0 4px 12px rgba(207, 46, 46, 0.35);
    transform: translateY(-1px);
}

body.home .wp-block-button {
    background: none;
    padding: 0;
}

body.home .wp-block-group {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    padding: 40px 0;
    margin-top: 40px;
    border-bottom: 1px solid rgba(17, 6, 6, 0.1);
    background-color: #F0EADF;
    padding-top: 50px;
}

body.home .wp-block-group__inner-container {
    max-width: 720px;
    margin: 0 auto;
    padding: 0 16px;
}

body.home main.tripeak-theme-version-two {
    padding-bottom: 0;
}

/* Latest Posts Grid */
body .tripeak-theme-version-two-post-article .wp-block-latest-posts.wp-block-latest-posts__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 16px;
    margin-bottom: 0;
    padding-left: 0;
    padding-bottom: 0;
}

body .tripeak-theme-version-two-post-article .wp-block-latest-posts.wp-block-latest-posts__list li {
    margin: 0;
    background-color: var(--post-card-bg-color);
    border-radius: 16px;
    width: 100%;
    display: block;
}

body .tripeak-theme-version-two-post-article .wp-block-latest-posts.wp-block-latest-posts__list li .wp-block-latest-posts__featured-image {
    position: relative;
    width: 100%;
    padding-top: 76%;
    overflow: hidden;
    display: block;
}

body .tripeak-theme-version-two-post-article .wp-block-latest-posts.wp-block-latest-posts__list li .wp-block-latest-posts__featured-image img {
    border-radius: 16px 16px 0 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

body .tripeak-theme-version-two-post-article .wp-block-latest-posts.wp-block-latest-posts__list li .wp-block-latest-posts__featured-image a {
    display: block;
}

body .tripeak-theme-version-two-post-article .wp-block-latest-posts.wp-block-latest-posts__list li a.wp-block-latest-posts__post-title {
    font-size: 22px;
    line-height: 120%;
    font-weight: 700;
    word-break: break-word;
    padding: 8px 24px 0;
    display: block;
    font-family: "georgiabold";
    text-decoration: none;
    color: var(--heading-color);
}

body .tripeak-theme-version-two-post-article .wp-block-latest-posts.wp-block-latest-posts__list li time.wp-block-latest-posts__post-date {
    padding: 0 24px;
    display: block;
    font-size: 12px;
    line-height: 100%;
    margin-bottom: 0;
    margin-top: 24px;
    font-weight: 400;
    text-transform: uppercase;
    color: rgba(17, 6, 6, 0.5);
    font-family: Courier;
}

body .tripeak-theme-version-two-post-article .wp-block-latest-posts.wp-block-latest-posts__list li .wp-block-latest-posts__post-excerpt {
    padding: 0 24px;
    font-size: 16px;
    line-height: 160%;
    margin-bottom: 24px;
}

body .tripeak-theme-version-two-post-article .wp-block-latest-posts.wp-block-latest-posts__list li a.wp-block-latest-posts__read-more {
    display: block;
    margin-top: 8px;
    font-size: 16px;
    font-weight: 500;
    line-height: 120%;
}

/* Post Wrapper */
.tripeak-theme-version-two-post-wrapper {
    margin-top: 32px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 16px;
}

.tripeak-theme-version-two-post-wrapper nav.posts-navigation {
    display: inline-block;
    width: 100%;
    grid-column: 1 / 3;
}

.tripeak-theme-version-two-post-wrapper nav.posts-navigation .nav-links {
    display: flex;
    gap: 20px;
    justify-content: space-between;
}

.tripeak-theme-version-two-post-wrapper article {
    background-color: var(--post-card-bg-color);
    border-radius: 16px;
}

.tripeak-theme-version-two-post-wrapper article .tripeak-theme-version-two-post-content {
    padding: 24px;
}

.tripeak-theme-version-two-post-wrapper article .tripeak-theme-version-two-post-content h3 {
    margin-bottom: 8px;
}

.tripeak-theme-version-two-post-wrapper article .tripeak-theme-version-two-post-content h3 a {
    font-size: 22px;
    line-height: 120%;
    font-weight: 700;
    word-break: break-word;
    display: block;
    font-family: "georgiabold";
    text-decoration: none;
    color: var(--heading-color);
}

.tripeak-theme-version-two-post-wrapper article .post-thumbnail {
    position: relative;
    width: 100%;
    padding-top: 76%;
    overflow: hidden;
    display: block;
}

.tripeak-theme-version-two-post-wrapper article .post-thumbnail img {
    border-radius: 16px 16px 0 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 16px;
}

.tripeak-theme-version-two-post-wrapper article .wp-block-latest-posts__read-more {
    margin-top: 8px;
    font-size: 16px;
    font-weight: 500;
    line-height: 120%;
    display: block;
}

.tripeak-theme-version-two-post-wrapper article span.date {
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 7.5px;
    margin-top: 0;
    text-transform: uppercase;
}

.tripeak-theme-version-two-post-wrapper .wp-block-latest-posts__post-excerpt {
    font-size: 16px;
    line-height: 160%;
    margin-bottom: 0;
    display: inline-block;
}

/* Single Post */
.tripeak-theme-version-two-post-article span.date {
    display: block;
    font-size: 12px;
    line-height: 100%;
    font-weight: 400;
    text-transform: uppercase;
    color: rgba(17, 6, 6, 0.5);
    font-family: Courier;
}

.tripeak-theme-version-two-post-article .post-thumbnail img {
    max-width: 100%;
    width: auto;
}

.tripeak-theme-version-two-post-article span.posted-on time.updated {
    margin-left: 10px;
    border-left: 2px solid #000;
    padding-left: 10px;
}

.tripeak-theme-version-two-post-article .entry-content p,
.tripeak-theme-version-two-post-article .entry-summary p {
    margin-bottom: 32px;
}

.tripeak-theme-version-two-post-article .entry-content ul,
.tripeak-theme-version-two-post-article .entry-content ol,
.tripeak-theme-version-two-post-article .entry-summary ul,
.tripeak-theme-version-two-post-article .entry-summary ol {
    padding-left: 15px;
    padding-bottom: 16px;
}

.tripeak-theme-version-two-post-article .entry-content ul > li ul,
.tripeak-theme-version-two-post-article .entry-content ol > li ul,
.tripeak-theme-version-two-post-article .entry-summary ul > li ul,
.tripeak-theme-version-two-post-article .entry-summary ol > li ul {
    padding-bottom: 0;
}

.tripeak-theme-version-two-post-article .entry-content img,
.tripeak-theme-version-two-post-article .entry-summary img {
    max-width: 100%;
    width: auto;
}

.tripeak-theme-version-two-post-article .entry-content pre,
.tripeak-theme-version-two-post-article .entry-summary pre {
    white-space: pre-wrap;
}

.single-post-section .tripeak-theme-version-two-post-article h1 {
    margin-top: 0;
    margin-bottom: 8px;
}

.single-post-section figure.wp-block-post-featured-image,
.single-post-section .wp-block-image {
    aspect-ratio: auto;
}

.single-post-section figure.wp-block-post-featured-image img,
.single-post-section .wp-block-image img {
    border-radius: 16px;
    width: 100%;
    margin-bottom: 10px;
}

.single-post-section figure.wp-block-post-featured-image figcaption,
.single-post-section .wp-block-image figcaption {
    text-align: left !important;
    font-style: italic;
    color: #666;
    margin-top: 2px !important; /* Very tight spacing above caption */
    margin-bottom: 0;
    line-height: 1.6;
    font-size: 0.9rem;
}

.single-post-section .wp-block-list li {
    margin-bottom: 8px;
}

.single-post-section .wp-block-list li:last-child {
    margin-bottom: 0;
}

.single-post-section .wp-block-separator.is-style-dots {
    text-align: center;
    border: none;
}

.single-post-section .tripeak-featured-image {
    margin-top: 24px;
}

.single-post-section p + .wp-block-separator.is-style-dots {
    margin-top: -32px;
}

.single-post-section p strong {
    font-weight: 600;
}

/* 404 Page */
.error-404 {
    text-align: center;
    padding: 100px 10px;
}

.error-404 p {
    font-size: 16px;
    margin-bottom: 32px;
}

.error-404 input[type="search"] {
    border-radius: 4px;
    width: 340px;
}

.error-404 input[type="submit"] {
    border-radius: 4px;
    font-size: 16px;
}

/* Navigation */
.nav-links {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 60px 0;
    position: relative;
    width: 100%;
}

.nav-previous,
.nav-next {
    flex: 1;
    position: relative;
    display: flex;
    align-items: center;
}

.nav-previous {
    justify-content: flex-start;
}

.nav-next {
    justify-content: flex-end;
}

.nav-previous a,
.nav-next a {
    background-color: #FCFBF7;
    padding: 0 20px;
    color: #000;
    font-weight: 500;
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.nav-previous a::before {
    content: "\2190";
    margin-right: 8px;
}

.nav-next a::after {
    content: "\2192";
    margin-left: 8px;
}

/* Blockquote */
blockquote {
    background-color: #F0EADF;
    padding: 24px 32px;
    border-radius: 12px;
    font-style: italic;
    margin: 40px 0;
}

/* Separators */
.wp-block-separator.is-style-dots {
    margin: 0 0;
    padding: 12px 0;
    color: #b8afaf;
}

:root :where(.wp-block-separator.is-style-dots):before {
    content: "···";
    font-family: sans-serif;
    font-size: 48px;
    letter-spacing: 14px;
    padding-left: 0;
    font-weight: 700;
}

/* Quotes */
.wp-block-pullquote,
.wp-block-quote {
    padding: 32px;
    border-radius: 16px;
    border: none;
    text-align: left;
}

.wp-block-pullquote p,
.wp-block-quote p {
    font-weight: 400;
    font-style: italic;
    font-size: 22px;
    line-height: 150%;
    letter-spacing: 0px;
    font-family: georgiaregular;
}

.wp-block-quote,
.wp-block-pullquote {
    border-color: var(--text-link-color);
}

.wp-block-quote p,
.wp-block-pullquote p {
    font-size: 27px;
    line-height: 1.5;
}

/* Pagination */
.tripeak-theme-version-two-pagination {
    margin: 40px 0;
    text-align: center;
    clear: both;
}

.tripeak-theme-version-two-pagination .pagination-links {
    display: inline-block;
}

.tripeak-theme-version-two-pagination .page-numbers {
    display: inline-block;
    padding: 12px 16px;
    margin: 0 4px;
    text-decoration: none;
    background: #f8f9fa;
    color: #333;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    transition: all 0.3s ease;
    font-weight: 500;
    font-family: inherit;
}

.tripeak-theme-version-two-pagination .page-numbers:hover {
    background: #e9ecef;
    color: #000;
    transform: translateY(-1px);
}

.tripeak-theme-version-two-pagination .page-numbers.current {
    background: #333;
    color: #fff;
    border-color: #333;
    cursor: default;
}

.tripeak-theme-version-two-pagination .page-numbers.prev,
.tripeak-theme-version-two-pagination .page-numbers.next {
    font-weight: 600;
    padding: 12px 20px;
    background: #000;
    color: #fff;
    border-color: #000;
}

.tripeak-theme-version-two-pagination .page-numbers.prev:hover,
.tripeak-theme-version-two-pagination .page-numbers.next:hover {
    background: #333;
    border-color: #333;
}

/* ==========================================================================
   Fonts
   ========================================================================== */

@font-face {
    font-family: "georgiabold";
    src: url('fonts/georgiab-webfont.woff2') format('woff2'),
         url('fonts/georgiab-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "georgiaregular";
    src: url('fonts/georgia-webfont.woff2') format('woff2'),
         url('fonts/georgia-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "lucida grande";
    src: url('fonts/lucidagrande-webfont.woff2') format('woff2'),
         url('fonts/lucidagrande-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "lucida grande";
    src: url('fonts/lucidagrande-webfont.woff2') format('woff2'),
         url('fonts/lucidagrande-webfont.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "lucida grande";
    src: url('fonts/lucidagrande-webfont.woff2') format('woff2'),
         url('fonts/lucidagrande-webfont.woff') format('woff');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: "lucida grande";
    src: url('fonts/lucidagrande-webfont.woff2') format('woff2'),
         url('fonts/lucidagrande-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 768px) {
    .tripeak-theme-version-two-pagination .page-numbers {
        padding: 10px 12px;
        margin: 0 2px;
        font-size: 14px;
    }
    
    .tripeak-theme-version-two-pagination .page-numbers.prev,
    .tripeak-theme-version-two-pagination .page-numbers.next {
        padding: 10px 16px;
    }
}

@media (max-width: 767px) {
    h1 {
        font-size: 40px;
        line-height: 120%;
    }
    
    h2 {
        font-size: 22px;
        line-height: 24px;
        margin-bottom: 15px;
    }
    
    h3 {
        margin-bottom: 15px;
    }
    
    .tripeak-theme-version-two-header {
        padding: 16px 0;
    }
    
    .tripeak-theme-version-two-header-wrap {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .header-nav-wrap {
        width: 100%;
    }
    
    .tripeak-theme-version-two-header .site-branding {
        gap: 8px;
    }
    
    .tripeak-theme-version-two-header .site-branding a img {
        width: 43.7px;
        height: 45px;
    }
    
    .tripeak-theme-version-two-header .site-branding .site-description {
        margin-top: 2px;
    }
    
    /* Mobile: Header navigation adjustments */
    .tripeak-theme-version-two-menu ul {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 12px;
        width: 100%;
    }
    
    .tripeak-theme-version-two-menu ul li {
        width: auto;
        display: inline-block;
        margin: 0;
        border-bottom: none;
    }
    
    .tripeak-theme-version-two-menu ul li:last-child {
        border-bottom: none;
    }
    
    .tripeak-theme-version-two-menu ul li a {
        padding: 0;
        font-size: 14px;
    }
    
    /* Mobile: Make parent menu items with children tappable */
    .tripeak-theme-version-two-menu .menu-item-has-children > a {
        position: relative;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    
    /* Mobile: Larger, more visible dropdown indicator */
    .tripeak-theme-version-two-menu .menu-item-has-children > a::after {
        content: "▼";
        font-size: 0.7rem;
        margin-left: 0.5rem;
        opacity: 0.7;
        transition: transform 0.3s ease;
    }
    
    /* Mobile dropdown styles */
    .tripeak-theme-version-two-menu ul ul {
        position: static;
        display: flex;
        flex-direction: column;
        box-shadow: none;
        border: none;
        border-radius: 0;
        background-color: rgba(17, 6, 6, 0.05);
        margin: 0;
        padding: 0;
        min-width: 100%;
        max-height: 0;
        overflow: hidden;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
        transition: max-height 0.3s ease-in-out, padding 0.3s ease-in-out;
    }
    
    .tripeak-theme-version-two-menu ul ul li {
        border-bottom: 1px solid rgba(17, 6, 6, 0.1);
    }
    
    .tripeak-theme-version-two-menu ul ul li:last-child {
        border-bottom: none;
    }
    
    .tripeak-theme-version-two-menu ul ul a {
        padding: 0.75rem 0 0.75rem 1.5rem;
        font-size: 13px;
    }
    
    /* Show submenu on mobile when toggled with JavaScript */
    .tripeak-theme-version-two-menu li.submenu-open > ul {
        max-height: 1000px;
        padding: 0.5rem 0;
    }
    
    /* Rotate arrow when submenu is open */
    .tripeak-theme-version-two-menu li.submenu-open > a::after {
        transform: rotate(180deg);
    }
    
    /* Visual feedback when submenu is open */
    .tripeak-theme-version-two-menu li.submenu-open > a {
        color: var(--text-link-color);
    }
    
    /* Also support focus-within as fallback */
    .tripeak-theme-version-two-menu li:focus-within > ul {
        max-height: 1000px;
        padding: 0.5rem 0;
    }
    
    .tripeak-theme-version-two-menu li:focus-within > a::after {
        transform: rotate(180deg);
    }
    
    /* Third level submenus on mobile */
    .tripeak-theme-version-two-menu ul ul ul {
        left: 0;
        margin-left: 0;
    }
    
    .tripeak-theme-version-two-menu ul ul ul a {
        padding-left: 3rem;
    }
    
    footer .site-info {
        padding: 40px 0;
        gap: 44px;
        flex-direction: column;
        align-items: flex-start;
    }
    
    footer .site-info .site-branding {
        flex-direction: column;
    }
    
    footer .site-info .site-social-icon {
        gap: 12px;
    }
    
    .footer-nav .footer-menu {
        gap: 16px;
        flex-direction: row;
    }
    
    .footer-nav .footer-menu li {
        width: auto;
        border-bottom: none;
        position: relative;
    }
    
    .footer-nav .footer-menu li:last-child {
        border-bottom: none;
    }
    
    .footer-nav .footer-menu li a {
        padding: 0;
        font-size: 14px;
    }
    
    /* Mobile: Make footer parent menu items with children tappable */
    .footer-nav .footer-menu .menu-item-has-children > a {
        position: relative;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    
    /* Mobile: Footer dropdown indicator points down */
    .footer-nav .footer-menu .menu-item-has-children > a::after {
        content: "▼";
        font-size: 0.7rem;
        margin-left: 0.5rem;
        opacity: 0.7;
        transition: transform 0.3s ease;
    }
    
    /* Mobile: Footer dropdown styles */
    .footer-nav .footer-menu .sub-menu {
        position: absolute;
        top: 100%;
        left: 0;
        display: flex;
        flex-direction: column;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
        border: 1px solid rgba(255, 255, 255, 0.2);
        border-radius: 4px;
        background-color: var(--footer-bg-color);
        margin: 0;
        margin-top: 8px;
        padding: 0;
        min-width: 220px;
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(10px);
        transition: max-height 0.3s ease-in-out, padding 0.3s ease-in-out, opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
        z-index: 9999;
    }
    
    .footer-nav .footer-menu .sub-menu li {
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }
    
    .footer-nav .footer-menu .sub-menu li:last-child {
        border-bottom: none;
    }
    
    .footer-nav .footer-menu .sub-menu a {
        padding: 0.75rem 0 0.75rem 1.5rem;
        font-size: 13px;
    }
    
    /* Show footer submenu on mobile when toggled with JavaScript */
    .footer-nav .footer-menu li.submenu-open > .sub-menu {
        max-height: 1000px;
        padding: 0.5rem 0;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
    }
    
    /* Rotate footer arrow when submenu is open */
    .footer-nav .footer-menu li.submenu-open > a::after {
        transform: rotate(180deg);
    }
    
    /* Visual feedback when footer submenu is open */
    .footer-nav .footer-menu li.submenu-open > a {
        opacity: 1;
    }
    
    /* Also support focus-within as fallback */
    .footer-nav .footer-menu li:focus-within > .sub-menu {
        max-height: 1000px;
        padding: 0.5rem 0;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
    }
    
    .footer-nav .footer-menu li:focus-within > a::after {
        transform: rotate(180deg);
    }
    
    /* Third level submenus in footer on mobile */
    .footer-nav .footer-menu .sub-menu .sub-menu {
        left: 0;
        margin: 0;
    }
    
    .footer-nav .footer-menu .sub-menu .sub-menu a {
        padding-left: 3rem;
    }
    
    main.tripeak-theme-version-two #ez-toc-container {
        max-width: 280px;
    }
    
    main.tripeak-theme-version-two .wp-block-buttons > .wp-block-button {
        width: 100%;
    }
    
    main.tripeak-theme-version-two .wp-block-buttons {
        margin-bottom: 24px;
        gap: 10px;
    }
    
    /* Mobile button adjustments */
    main.tripeak-theme-version-two .wp-block-button__link {
        padding: 12px 24px;
        font-size: 15px;
        width: 100%;
    }
    
    /* Mobile code block adjustments */
    main.tripeak-theme-version-two pre,
    main.tripeak-theme-version-two pre.wp-block-code,
    main.tripeak-theme-version-two .wp-block-code {
        padding: 16px;
        border-radius: 8px;
        margin-bottom: 24px;
    }
    
    main.tripeak-theme-version-two pre code,
    main.tripeak-theme-version-two .wp-block-code code {
        font-size: 13px;
        line-height: 1.6;
    }
    
    main.tripeak-theme-version-two code {
        padding: 2px 6px;
        font-size: 0.88em;
    }
    
    main.tripeak-theme-version-two .wp-block-list {
        margin-left: 20px;
    }
    
    body.home h1 {
        max-width: none;
    }
    
    body .tripeak-theme-version-two-post-article .wp-block-latest-posts.wp-block-latest-posts__list {
        grid-template-columns: auto;
    }
    
    .tripeak-theme-version-two-post-wrapper {
        grid-template-columns: auto;
    }
    
    /* Gallery responsive styles */
    main.tripeak-theme-version-two .wp-block-gallery.has-nested-images.columns-3,
    main.tripeak-theme-version-two .wp-block-gallery.has-nested-images.columns-4,
    main.tripeak-theme-version-two .wp-block-gallery.has-nested-images.columns-5,
    main.tripeak-theme-version-two .wp-block-gallery.has-nested-images.columns-6 {
        grid-template-columns: repeat(2, 1fr);
    }
    
    main.tripeak-theme-version-two .wp-block-gallery:not(.has-nested-images).columns-3 .wp-block-image,
    main.tripeak-theme-version-two .wp-block-gallery:not(.has-nested-images).columns-4 .wp-block-image,
    main.tripeak-theme-version-two .wp-block-gallery:not(.has-nested-images).columns-5 .wp-block-image,
    main.tripeak-theme-version-two .wp-block-gallery:not(.has-nested-images).columns-6 .wp-block-image {
        width: calc(50% - 0.5rem);
    }
    
    /* Gallery captions on mobile - ensure they're still readable */
    main.tripeak-theme-version-two .wp-block-gallery .wp-block-image figcaption,
    main.tripeak-theme-version-two .wp-block-gallery figure figcaption {
        font-size: 0.8125rem !important; /* 13px - slightly smaller on mobile */
        margin-top: 8px !important;
        padding: 8px 10px !important; /* Slightly less padding on mobile */
    }
    
    .tripeak-theme-version-two-post-wrapper nav.posts-navigation {
        grid-column: auto;
    }
    
    .tripeak-theme-version-two-post-wrapper article .tripeak-theme-version-two-post-content h3 a {
        font-size: 20px;
    }
    
    .error-404 {
        padding: 30px 0;
    }
    
    .error-404 input[type="search"] {
        width: auto;
    }
}

@media (max-width: 480px) {
    .tripeak-theme-header__search-container .search-form label {
        width: 205px;
    }
    
    .tripeak-theme-header__search-overlay input[type="search"] {
        height: 50px;
    }
}

@media screen and (min-width: 400px) {
    .tripeak-footer-menu-right .site-info {
        flex-direction: row-reverse;
    }
}

/* ==========================================================================
   Dark Mode Support
   ========================================================================== */

.tripeak-dark-version .tripeak-theme-version-two-post-wrapper article,
.tripeak-dark-version .tripeak-theme-version-two-post-article .wp-block-latest-posts.wp-block-latest-posts__list li {
    border: 1px solid #343436;
}

.tripeak-dark-version .tripeak-theme-header__search-container button svg path {
    stroke: #fff;
}

.tripeak-dark-version .wp-element-caption {
    color: #cacaca;
}

.tripeak-dark-version .wp-block-gallery .wp-block-image figcaption,
.tripeak-dark-version .wp-block-gallery figure figcaption {
    color: #ffffff !important;
    background-color: rgba(0, 0, 0, 0.85) !important; /* Slightly darker in dark mode */
}

.tripeak-dark-version .wp-block-gallery > figcaption {
    color: #cacaca !important;
}

.tripeak-dark-version .tripeak-theme-header__search-container .search-submit {
    color: #fff;
    background-color: #8c8c8c;
}

.tripeak-dark-version .site-footer {
    border-top: 1px solid #343436;
}

/* Dark Mode Button Styles */
.tripeak-dark-version .wp-block-button:not(.is-style-outline) .wp-block-button__link {
    background-color: #E84545;
    border-color: #E84545;
    box-shadow: 0 2px 8px rgba(232, 69, 69, 0.3);
}

.tripeak-dark-version .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
    background-color: #CF2E2E;
    border-color: #CF2E2E;
    box-shadow: 0 4px 12px rgba(232, 69, 69, 0.4);
}

.tripeak-dark-version .wp-block-button.is-style-outline .wp-block-button__link {
    color: #E84545;
    border-color: #E84545;
}

.tripeak-dark-version .wp-block-button.is-style-outline .wp-block-button__link:hover {
    background-color: #E84545;
    border-color: #E84545;
    color: #ffffff;
}

/* Dark Mode Code Styling */
.tripeak-dark-version code,
.tripeak-dark-version .entry-content code,
.tripeak-dark-version .entry-summary code {
    background-color: #2D2D2D;
    color: #E84545;
    border-color: #3A3A3A;
}

.tripeak-dark-version pre,
.tripeak-dark-version pre.wp-block-code,
.tripeak-dark-version .wp-block-code {
    background-color: #1A1A1A;
    border-color: #0D0D0D;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.tripeak-dark-version pre code,
.tripeak-dark-version .wp-block-code code {
    color: #E8E8E8;
}

