/* ==========================================================================
   VICTORY FLOCK FARM - MASTER STYLESHEET
   ========================================================================== */

/* --- 1. GLOBAL LAYOUT SETUP --- */
body {
    margin: 0;
    padding: 0;
    font-family: 'Georgia', serif;
    background-color: #FAF6F0; /* Warm cream/parchment background */
    color: #2E251B; /* Deep brown text */
    line-height: 1.6;
}

/* Main content wrapper */
.page-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

/* --- 2. HEADER ARTWORK & HERO BANNER --- */
.hero-banner {
    background-color: #FDFBF7; /* Light parchment canvas */
    border-bottom: 2px solid #E3D9CE;
    text-align: center;
    padding-bottom: 15px;
}

.banner-artwork {
    padding: 40px 20px;
    background-color: #F3ECE3; /* Contrast parchment */
    margin-bottom: 10px;
}

.site-title {
    font-size: 2.8rem;
    letter-spacing: 4px;
    color: #071630; /* Beautiful cool-shade deep purple */
    margin: 0;
}

/* --- 3. NAVIGATION MENU --- */
.main-navigation {
    margin: 15px 0;
}

.nav-links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    gap: 25px;
}

.nav-links a {
    text-decoration: none;
    color: #0a192f;
    font-weight: bold;
    font-size: 1rem;
    transition: color 0.2s ease;
}

.nav-links a:hover,
.nav-links a.active {
    color: #796394; /* Cool purple accent */
    border-bottom: 2px solid #796394;
}

/* Decorative Tagline */
.tagline-divider {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    margin-top: 15px;
}

.tagline-divider h2 {
    font-size: 1.1rem;
    font-style: italic;
    color: #615343;
    margin: 0;
}

.ornament {
    font-size: 1.2rem;
}

/* --- 4. HOMEPAGE CONTENT INTRO GRID --- */
.intro-split-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin: 40px 0;
}

/* --- 5. GLOBAL FOOTER & SIX SEASONS MAP --- */
.site-footer {
    background-color: #F8F3EC;
    border-top: 1px solid #E3D9CE;
    margin-top: 60px;
    padding-top: 40px;
    text-align: center;
}

.seasons-philosophy-container {
    max-width: 1200px;
    margin: 0 auto 40px auto;
    padding: 0 20px;
}

.philosophy-intro, 
.philosophy-outro {
    max-width: 800px;
    margin: 20px auto;
    font-size: 1.1rem;
    font-style: italic;
    color: #615343;
}

/* Turns your list into a side-by-side layout grid */
.six-seasons-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)) !important; /* Lets boxes fluidly scale down or wrap naturally as the screen shrinks */
    gap: 15px !important; /* Matches the clean spacing of your upper grids */
    margin: 35px auto !important;
    max-width: 1200px !important; /* Forces the container to line up perfectly with your homepage grids */
    width: 100% !important;
}

/* Scalable padding for long, elegant cards */
a.season-box {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 20px 15px !important;
    background-color: #FDFBF7 !important;
    border: 1px solid #D9CFC4 !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    color: #2E251B !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02) !important;
    transition: all 0.2s ease-in-out !important;
    height: 100% !important; /* Ensures all boxes stay matching heights on the line */
    box-sizing: border-box !important;
}

/* Visual styles for inside the box layers */
.season-emoji {
    font-size: 1.8rem !important;
    margin-bottom: 8px !important;
    text-decoration: none !important;
}

.season-title {
    font-weight: bold !important;
    font-size: 1.05rem !important;
    color: #0a192f !important; /* Beautiful cool-shade deep purple */
    margin-bottom: 4px !important;
    text-decoration: none !important;
}

.season-sub {
    font-style: italic !important;
    font-size: 0.8rem !important;
    color: #615343 !important;
    margin-bottom: 12px !important;
    font-weight: normal !important;
    text-decoration: none !important;
}

/* Forces description paragraphs to stay regular weight, ununderlined, and readable */
p.season-desc {
    font-weight: normal !important;
    font-size: 0.85rem !important;
    line-height: 1.5 !important;
    text-align: left !important;
    margin-top: 10px !important;
    color: #443B33 !important;
}

/* Elegant visual response when hovering over a season panel */
a.season-box:hover {
    border-color: #796394 !important; /* Transitions to cool accent purple */
    box-shadow: 0 4px 12px rgba(74, 59, 92, 0.08) !important;
    transform: translateY(-2px) !important;
}

/* --- 6. GROUNDING PURPLE BOTTOM BAR --- */
.footer-purple-trim {
    background-color: #0a192f !important; /* Rich blue-shaded heritage purple */
    color: #FDFBF7 !important; /* Cream color text */
    padding: 35px 20px !important;
    text-align: left !important;
}

.trim-content-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 25px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.trim-contact h4 {
    margin: 0 0 10px 0;
    font-size: 1.2rem;
    letter-spacing: 1px;
}

.trim-contact p, 
.trim-policies p, 
.trim-copyright p {
    margin: 5px 0;
    font-size: 0.9rem;
    opacity: 0.9;
}

.trim-copyright {
    text-align: right !important;
}

/* Responsive configurations for smaller devices */
@media (max-width: 900px) {
    .trim-copyright {
        text-align: left !important;
    }
	* Split-Screen Flexible Layout Core */
.shop-split-wrapper {
    display: flex;
    min-height: 80vh;
    background: #ffffff;
    border: 1px solid #d4c5b3;
}

.lookbook-archive-side {
    flex: 1;
    background-color: #fcfbfa; /* Light parchment shading background */
    padding: 40px;
    border-right: 1px solid #d4c5b3;
}

.live-store-side {
    flex: 1;
    padding: 40px;
}

/* Global Fixed Season Status Footer Note */
.global-season-status-bar {
    background-color: #2e2a25; /* Deep rich ink tone */
    color: #fdfaf4;
    text-align: center;
    padding: 12px 20px;
    font-size: 0.9rem;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.pulse-indicator {
    color: #8fa89b; /* Cool blue-shade accent tone */
    margin-right: 5px;
}

/* Responsive adjust for mobile screens */
@media (max-width: 768px) {
    .shop-split-wrapper { flex-direction: column; }
    .lookbook-archive-side { border-right: none; border-bottom: 1px solid #d4c5b3; }
}
/* ==========================================================================
   VICTORY FLOCK FARM - MASTER SPLIT SHOP & RESPONSIVE SEASONS FOOTER
   ========================================================================== */

/* 1. Force the Split-Screen Layout to Stay Side-by-Side */
.shop-split-wrapper {
    display: flex;
    flex-direction: row; /* Enforces horizontal side-by-side display */
    width: 100%;
    min-height: 85vh;
    background-color: #ffffff;
    box-sizing: border-box;
}

/* Left Dynamic Lookbook Side */
.lookbook-archive-side {
    flex: 1; /* Takes up exactly 50% of the screen width */
    background-color: #fcfbfa; /* Light parchment tint */
    padding: 40px;
    border-right: 1px solid #d4c5b3;
    box-sizing: border-box;
}

/* Right Live Store Engine Side */
.live-store-side {
    flex: 1; /* Takes up exactly 50% of the screen width */
    padding: 40px;
    background-color: #ffffff;
    box-sizing: border-box;
}

/* 2. Responsive Multi-Box Seasonal Footer Matrix */
.seasons-footer-container {
    background-color: #2e2a25; /* Deep, rich ink tone */
    padding: 25px 20px;
    border-top: 2px double #d4c5b3;
    clear: both;
}

.seasons-footer-title {
    text-align: center;
    color: #ebdcb9; /* Warm gold tint */
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 20px;
}

/* The Responsive Six-Box Grid System */
.seasons-grid-row {
    display: flex;
    flex-wrap: wrap; /* Allows wrapping on smaller mobile screens */
    gap: 15px;
    justify-content: center;
    max-width: 1200px;
    margin: 0 auto;
}

/* Clickable Box Core Container Structure */
.season-footer-box {
    flex: 1;
    min-width: 140px; /* Prevents text crowding */
    background-color: #fdfaf4; /* Light parchment block background */
    border: 1px solid #d4c5b3;
    padding: 15px 10px;
    text-align: center;
    text-decoration: none; /* Removes any default hyperlink underlines */
    transition: all 0.2s ease-in-out;
}

/* Symmetrical Text Styling Details (No Underlines, Bold Titles, Normal Text Body) */
.season-footer-box .season-title {
    display: block;
    font-weight: bold; /* Bold heading */
    font-size: 0.95rem;
    color: #2c402e; /* Deep green accent */
    margin-bottom: 5px;
    text-decoration: none !important;
}

.season-footer-box .season-date {
    display: block;
    font-weight: normal; /* Regular text body */
    font-size: 0.8rem;
    color: #61574c;
    text-decoration: none !important;
}

/* Responsive Scaling Breakpoint Rule for Handheld Devices */
@media (max-width: 768px) {
    .shop-split-wrapper {
        flex-direction: column; /* Softly stacks columns vertically ONLY on smartphones */
    }
    .lookbook-archive-side {
        border-right: none;
        border-bottom: 1px solid #d4c5b3;
    }
    .season-footer-box {
        flex: 1 1 calc(50% - 15px); /* Switches to a balanced 2-column grid on phones */
    }
}

@media (max-width: 768px) {
  /* Stack side-by-side columns vertically on mobile */
  .row, .grid-layout {
    flex-direction: column;
    display: block;
  }

  /* Ensure text or images don't overflow */
  img {
    max-width: 100%;
    height: auto;
  }

  /* Adjust oversized desktop fonts for smaller screens */
  h1 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  /* Replace '.page-container' with the exact name used in your file */
  .page-container, .page.container { 
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    overflow-x: hidden;
  }
  
  /* Ensure the page container behaves predictably */
.page-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

/* Store Front Grid Layout */
.shop-storefront-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 40px;
}

/* Clean, crisp item cards with a rustic parchment background hint */
.store-item-card {
    background: #fdfbf7;
    border: 1px solid #e6dfd3;
    padding: 20px;
    border-radius: 4px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.02);
}

/* Target a true, deep blue for design elements so they don't look pure black */
.purchase-btn-secure {
    display: inline-block;
    background-color: #1a365d; /* Rich, unmistakable historical dark blue */
    color: #ffffff;
    padding: 10px 20px;
    text-decoration: none;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 15px;
    text-align: center;
    border-radius: 2px;
}

.purchase-btn-secure:hover {
    background-color: #2a4d7c; /* Lighter blue highlight shift on hover */
}

/* Clean styling for your interactive drop-down menus */
details.item-specifications {
    margin-top: 15px;
    padding: 5px;
    background: #f4efe6;
    border-radius: 2px;
    cursor: pointer;
}
details.item-specifications summary {
    font-weight: bold;
    color: #2c3e50;
    padding: 5px;
}
.details-expanded-content {
    padding: 10px;
    font-size: 0.9em;
    line-height: 1.4;
}
}
