/*
Theme Name: Eskridge Family Association
Theme URI: https://eskridgefamilyassociation.com
Author: Eskridge Family Association
Author URI: https://eskridgefamilyassociation.com
Description: A custom block theme for the Eskridge Family Association genealogy website, preserving the classic design and family history focus.
Version: 1.0.1
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: eskridge-family
Tags: genealogy, family, history, block-theme, full-site-editing
*/

/* Main theme styles are defined in theme.json and extended here as needed */

body {
    background-color: #efe4d9;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-size: 16px;
    line-height: 1.6;
}

/* Ensure consistent page width across all templates */
.wp-block-columns {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.site-header {
    text-align: center;
}

/* Navigation styling to match original site */
.wp-block-navigation {
    font-size: 14px;
}

.wp-block-navigation-item a {
    color: #003366 !important;
    text-decoration: none;
    display: block;
    padding: 3px 0;
    font-weight: normal;
}

.wp-block-navigation-item a:visited {
    color: #339966 !important;
}

.wp-block-navigation-item a:hover {
    color: #0066CC !important;
    text-decoration: underline;
}

/* Vertical navigation menu styling */
.wp-block-navigation.is-vertical {
    align-items: flex-start !important;
}

.wp-block-navigation.is-vertical .wp-block-navigation__container {
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
}

/* Paragraph text styling */
p {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 1em;
}

/* Heading styling */
h1 {
    font-size: 24px;
    font-weight: bold;
    color: #1E3B77;
    margin-bottom: 20px;
}

h2 {
    font-size: 20px;
    font-weight: bold;
    color: #1E3B77;
}

h3 {
    font-size: 16px;
    font-weight: bold;
    color: #1E3B77;
}

.historical-images {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin: 20px 0;
}

.historical-images img {
    max-width: 250px;
    height: auto;
}

.welcome-content {
    max-width: 800px;
    margin: 0 auto;
    padding: 20px;
    line-height: 1.6;
}

.welcome-content strong {
    color: #1E3B77;
}

.signature {
    margin-top: 30px;
    font-style: italic;
}

/* Responsive images */
img {
    max-width: 100%;
    height: auto;
}

.wp-block-image {
    max-width: 100%;
}

.wp-block-image img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* ================================
   RESPONSIVE STYLES FOR MOBILE
   ================================ */

/* Tablet and smaller (below 768px) */
@media (max-width: 767px) {
    /* Make columns stack vertically on mobile */
    .wp-block-columns {
        flex-direction: column !important;
    }

    .wp-block-column {
        flex-basis: 100% !important;
        width: 100% !important;
    }

    /* Make sidebar full width on mobile and move it below content */
    .wp-block-column[style*="flex-basis:200px"] {
        flex-basis: 100% !important;
        order: 2;
        margin-top: 20px;
        margin-bottom: 0;
    }

    /* Make main content column appear first */
    .wp-block-column:not([style*="flex-basis:200px"]) {
        order: 1;
    }

    /* Stack images vertically on mobile */
    .historical-images {
        flex-direction: column !important;
        align-items: center;
        gap: 15px !important;
    }

    .historical-images img,
    .historical-images .wp-block-image {
        max-width: 100% !important;
        width: 100% !important;
        height: auto;
    }

    /* Adjust content padding for mobile */
    .welcome-content {
        padding: 10px 15px !important;
    }

    /* Make main container have proper mobile padding */
    main.wp-block-group {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* Adjust heading sizes for mobile */
    h1 {
        font-size: 20px !important;
    }

    h2 {
        font-size: 18px !important;
    }

    /* Ensure navigation is mobile-friendly */
    .wp-block-navigation {
        font-size: 16px;
    }

    .wp-block-navigation-item a {
        padding: 8px 0;
    }
}

/* Small mobile phones (below 480px) */
@media (max-width: 479px) {
    body {
        font-size: 14px;
    }

    h1 {
        font-size: 18px !important;
    }

    h2 {
        font-size: 16px !important;
    }

    .welcome-content {
        padding: 10px !important;
    }

    main.wp-block-group {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}
