/* ===================================================================
   ZERO TOLERANCE RESET - VISUAL BUG SQUASH
   =================================================================== */

/* ZERO TOLERANCE RESET */
html, body {
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important; /* Prevents side-scrolling */
    width: 100% !important;
}

/* HEADER ALIGNMENT */
.main-navigation .inside-navigation {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important; /* Aligns Logo and Menu to the Left */
    max-width: 100% !important;
    padding-left: 20px;
    padding-right: 20px;
}

/* Ensure the menu items sit next to the logo */
.main-navigation .main-nav {
    margin-left: 0 !important; /* Closes gap between logo and menu */
}

/*
Theme Name:   Goldin University Child
Theme URI:    https://goldin.university
Description:  Child theme for Goldin University with Tech-Academic design system
Author:       Goldin U Development Team
Author URI:   https://goldin.university
Template:     generatepress
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  goldin-university-child
*/

/* ===================================================================
   GOLDIN UNIVERSITY DESIGN SYSTEM
   Inspired by Georgia Tech's Tech-Academic Architecture
   =================================================================== */

/* ===================================================================
   1. COLOR PALETTE - STRICT ENFORCEMENT
   =================================================================== */

:root {
    --primary-navy: #0C2340;
    --accent-gold: #D4AF37;
    --background-cream: #FDFBF7;
    --text-dark-grey: #333333;
    --white: #FFFFFF;
}

/* ===================================================================
   2. GLOBAL RESETS & BASE STYLES
   =================================================================== */

body {
    background-color: var(--background-cream);
    color: var(--text-dark-grey);
    font-family: 'Georgia', 'Times New Roman', serif;
    line-height: 1.7;
}

/* Clean, blocky typography */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Arial', 'Helvetica', sans-serif;
    font-weight: 700;
    color: var(--primary-navy);
    letter-spacing: -0.5px;
    line-height: 1.2;
}

h1 { font-size: 3rem; }
h2 { font-size: 2.5rem; }
h3 { font-size: 2rem; }
h4 { font-size: 1.5rem; }

/* ===================================================================
   3. HEADER & NAVIGATION (Georgia Tech Inspired)
   =================================================================== */

.site-header,
.main-navigation {
    background-color: var(--primary-navy);
}

.site-header {
    border-bottom: 4px solid var(--accent-gold);
    padding: 0;
}

/* Site Title/Logo */
.site-title,
.site-title a {
    color: var(--white) !important;
    font-size: 1.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.site-title a:hover {
    color: var(--accent-gold) !important;
}

/* Primary Navigation Menu */
.main-navigation a,
.menu-toggle {
    color: var(--white);
    font-family: 'Arial', 'Helvetica', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.9rem;
    letter-spacing: 1px;
    padding: 1.2rem 1.5rem;
}

.main-navigation a:hover,
.main-navigation .current-menu-item > a {
    background-color: var(--accent-gold);
    color: var(--primary-navy);
}

/* Dropdown Menu Styling */
.main-navigation ul ul {
    background-color: var(--primary-navy);
    border-top: 3px solid var(--accent-gold);
}

.main-navigation ul ul a {
    padding: 1rem 1.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.main-navigation ul ul a:hover {
    background-color: var(--accent-gold);
    color: var(--primary-navy);
    padding-left: 2rem;
}

/* ===================================================================
   4. BUTTONS - GOLD ACCENT SYSTEM
   =================================================================== */

.button,
.wp-block-button__link,
input[type="submit"],
button,
.cta-button {
    background-color: var(--accent-gold);
    color: var(--primary-navy);
    border: none;
    padding: 1rem 2.5rem;
    font-family: 'Arial', 'Helvetica', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    cursor: pointer;
    transition: all 0.3s ease;
    border-radius: 0;
    display: inline-block;
    text-decoration: none;
}

.button:hover,
.wp-block-button__link:hover,
input[type="submit"]:hover,
button:hover,
.cta-button:hover {
    background-color: var(--primary-navy);
    color: var(--accent-gold);
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

/* ===================================================================
   5. HOMEPAGE HERO SECTION
   =================================================================== */

.hero-section {
    position: relative;
    min-height: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url('images/hero-placeholder.jpg');
}

.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(rgba(12, 35, 64, 0.7), rgba(12, 35, 64, 0.85));
}

.hero-content {
    position: relative;
    z-index: 2;
    max-width: 900px;
    padding: 3rem;
}

.hero-headline {
    color: var(--white);
    font-size: 4rem;
    font-weight: 900;
    letter-spacing: 3px;
    margin-bottom: 2rem;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

.hero-cta {
    margin-top: 2rem;
}

/* ===================================================================
   6. THREE FACULTIES GRID (Section B)
   =================================================================== */

.faculties-section {
    padding: 5rem 0;
    background-color: var(--white);
}

.faculties-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

.faculty-card {
    background-color: var(--background-cream);
    border: 3px solid var(--primary-navy);
    padding: 2.5rem;
    text-align: center;
    transition: all 0.3s ease;
}

.faculty-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 8px 16px rgba(12, 35, 64, 0.2);
    border-color: var(--accent-gold);
}

.faculty-card h3 {
    color: var(--primary-navy);
    font-size: 1.8rem;
    margin-bottom: 1rem;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.faculty-card p {
    color: var(--text-dark-grey);
    font-size: 1.1rem;
    line-height: 1.6;
}

/* ===================================================================
   7. MANIFESTO SECTION (Section C)
   =================================================================== */

.manifesto-section {
    background-color: var(--primary-navy);
    color: var(--white);
    padding: 5rem 2rem;
    text-align: center;
}

.manifesto-content {
    max-width: 900px;
    margin: 0 auto;
}

.manifesto-section h2 {
    color: var(--accent-gold);
    font-size: 2.5rem;
    margin-bottom: 2rem;
    text-transform: uppercase;
}

.manifesto-section p {
    color: var(--white);
    font-size: 1.3rem;
    line-height: 1.8;
    font-style: italic;
    margin-bottom: 2rem;
}

.manifesto-section .button {
    background-color: var(--white);
    color: var(--primary-navy);
}

.manifesto-section .button:hover {
    background-color: var(--accent-gold);
    color: var(--primary-navy);
}

/* ===================================================================
   8. FOOTER STYLING
   =================================================================== */

.site-footer {
    background-color: var(--primary-navy);
    color: var(--white);
    padding: 3rem 2rem;
    border-top: 4px solid var(--accent-gold);
}

.site-footer a {
    color: var(--accent-gold);
}

.site-footer a:hover {
    color: var(--white);
}

/* ===================================================================
   9. CONTENT BLOCKS & SPACING
   =================================================================== */

.content-section {
    padding: 4rem 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

.section-title {
    text-align: center;
    color: var(--primary-navy);
    font-size: 2.5rem;
    margin-bottom: 3rem;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.section-title::after {
    content: '';
    display: block;
    width: 100px;
    height: 4px;
    background-color: var(--accent-gold);
    margin: 1rem auto 0;
}

/* ===================================================================
   10. RESPONSIVE DESIGN
   =================================================================== */

@media (max-width: 768px) {
    .hero-headline {
        font-size: 2.5rem;
    }

    .faculties-grid {
        grid-template-columns: 1fr;
    }

    h1 { font-size: 2rem; }
    h2 { font-size: 1.75rem; }
    h3 { font-size: 1.5rem; }
}

/* ===================================================================
   11. UTILITY CLASSES
   =================================================================== */

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

.text-navy {
    color: var(--primary-navy);
}

.text-gold {
    color: var(--accent-gold);
}

.bg-navy {
    background-color: var(--primary-navy);
}

.bg-cream {
    background-color: var(--background-cream);
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

/* ===================================================================
   RESPONSIVE REPAIR & LAYOUT FIXES
   =================================================================== */

/* Global container constraint */
.grid-container {
    max-width: 1200px;
    margin: 0 auto;
}

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

/* ===================================================================
   HEADER CONTRAST FIX - Force Visible Navigation
   =================================================================== */

/* Force white text on all navigation items */
.main-navigation a,
.main-navigation .menu-item a,
.inside-navigation a {
    color: #FFFFFF !important;
}

/* Force gold hover state */
.main-navigation a:hover,
.main-navigation .menu-item a:hover,
.inside-navigation a:hover,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a {
    background-color: #D4AF37 !important;
    color: #0C2340 !important;
}

/* Dropdown menu fixes */
.main-navigation ul ul {
    background-color: #0C2340 !important;
}

.main-navigation ul ul a {
    color: #FFFFFF !important;
}

.main-navigation ul ul a:hover {
    background-color: #D4AF37 !important;
    color: #0C2340 !important;
}

/* Mobile menu fixes */
.menu-toggle,
button.menu-toggle {
    color: #FFFFFF !important;
    background-color: #0C2340 !important;
}

/* ===================================================================
   LOGO & BRANDING FIXES
   =================================================================== */

/* Hide site title and tagline text - show only logo */
.main-title,
.site-title,
.site-description {
    display: none !important;
}

/* Ensure logo displays properly */
.site-logo {
    display: block !important;
}

.site-logo img,
.custom-logo {
    max-height: 80px;
    width: auto;
    display: block;
}

/* ===================================================================
   RESPONSIVE THREE-COLUMN PILLARS FIX
   =================================================================== */

@media (max-width: 768px) {
    /* Force columns to wrap on mobile */
    .wp-block-columns {
        flex-wrap: wrap !important;
    }
    
    .wp-block-column {
        flex-basis: 100% !important;
        margin-bottom: 20px !important;
    }
    
    /* Faculty grid mobile fixes */
    .faculties-grid {
        grid-template-columns: 1fr !important;
    }
    
    /* Ensure proper mobile padding */
    .hero-content {
        padding: 2rem 1rem !important;
    }
    
    .container,
    .grid-container {
        padding: 0 1rem !important;
    }
}

/* Additional mobile navigation fixes */
@media (max-width: 768px) {
    .main-navigation .main-nav ul li a {
        color: #FFFFFF !important;
    }
}

/* ===================================================================
   GENERATEPRESS SPECIFIC OVERRIDES
   =================================================================== */

/* Ensure GeneratePress respects our colors */
.inside-header {
    background-color: #0C2340 !important;
}

.site-header {
    background-color: #0C2340 !important;
}

/* Force navigation background */
.inside-navigation,
.main-navigation {
    background-color: #0C2340 !important;
}

/* Override any GeneratePress link colors in navigation */
.navigation-stick .main-nav a,
.navigation-stick .main-navigation a {
    color: #FFFFFF !important;
}


/* ===================================================================
   FLUID DYNAMICS - PRESIDENTIAL FULL-WIDTH LAYOUT
   Requested by: The President
   =================================================================== */

/* ===================================================================
   1. GLOBAL FULL WIDTH - Remove All Constraints
   =================================================================== */

/* Force 100% width on all major containers */
body,
.site,
.site-header,
.site-footer,
.site-content,
#page,
#content,
.hfeed,
.grid-container,
.container,
.inside-header,
.inside-navigation,
.inside-footer,
main,
article {
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Remove GeneratePress default max-width */
.grid-container {
    max-width: 100% !important;
}

/* Ensure full-width sections */
.hero-section,
.faculties-section,
.manifesto-section {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

/* ===================================================================
   2. CONTENT PADDING - "The Breathing Room"
   =================================================================== */

/* Inner containers get 5% padding for readability */
.inside-header,
.inside-navigation,
.inside-article,
.inside-footer,
.hero-content,
.manifesto-content,
.entry-content,
.content-area,
.site-main {
    padding-left: 5% !important;
    padding-right: 5% !important;
}

/* Specific padding for faculty section */
.faculties-section .container,
.faculties-grid {
    padding-left: 5% !important;
    padding-right: 5% !important;
}

/* Ensure content sections have breathing room */
.content-section {
    padding-left: 5% !important;
    padding-right: 5% !important;
}

/* Mobile padding adjustment - slightly less on small screens */
@media (max-width: 768px) {
    .inside-header,
    .inside-navigation,
    .inside-article,
    .inside-footer,
    .hero-content,
    .manifesto-content,
    .faculties-section .container,
    .content-section {
        padding-left: 3% !important;
        padding-right: 3% !important;
    }
}

/* ===================================================================
   3. HEADER & LOGO - Full Width Navy with Visible Logo
   =================================================================== */

/* Ensure Navy Blue spans full 100% width */
.site-header,
.inside-header,
.main-navigation,
.inside-navigation {
    background-color: #0C2340 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Logo visibility and sizing */
.site-logo,
.custom-logo-link {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.site-logo img,
.custom-logo {
    display: block !important;
    max-height: 100px !important;
    height: auto !important;
    width: auto !important;
    visibility: visible !important;
}

/* Ensure logo container is visible */
.site-branding {
    display: flex !important;
    align-items: center !important;
}

/* Force hide text, show only logo */
.main-title,
.site-title a,
.site-description {
    display: none !important;
    visibility: hidden !important;
}

/* ===================================================================
   4. MENU TEXT CONTRAST - White on Navy
   =================================================================== */

/* Force white menu text for maximum contrast */
.main-navigation a,
.main-navigation .menu-item > a,
.main-nav a,
.inside-navigation a,
nav a {
    color: #FFFFFF !important;
    font-weight: 600 !important;
}

/* Gold hover state */
.main-navigation a:hover,
.main-navigation .menu-item:hover > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a {
    background-color: #D4AF37 !important;
    color: #0C2340 !important;
}

/* Dropdown menus maintain contrast */
.main-navigation ul ul {
    background-color: #0C2340 !important;
    width: 100% !important;
}

.main-navigation ul ul a {
    color: #FFFFFF !important;
}

.main-navigation ul ul a:hover {
    background-color: #D4AF37 !important;
    color: #0C2340 !important;
}

/* ===================================================================
   5. FOOTER - Full Width Navy
   =================================================================== */

.site-footer,
.inside-footer {
    background-color: #0C2340 !important;
    width: 100% !important;
    max-width: 100% !important;
    color: #FFFFFF !important;
}

/* ===================================================================
   6. HOMEPAGE SECTIONS - Full Width Implementation
   =================================================================== */

/* Hero Section - Full Viewport Width */
.hero-section {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-1 * 5%) !important;
    padding-left: 5% !important;
    padding-right: 5% !important;
}

/* Faculty Section - Full Width */
.faculties-section {
    width: 100% !important;
    background-color: #FFFFFF !important;
}

/* Manifesto Section - Full Width Navy */
.manifesto-section {
    width: 100% !important;
    background-color: #0C2340 !important;
}

/* ===================================================================
   7. OVERRIDE ANY REMAINING WIDTH RESTRICTIONS
   =================================================================== */

/* Nuclear option for full width */
* {
    box-sizing: border-box;
}

.inside-container,
.wp-site-blocks,
.entry-header,
.entry-summary {
    max-width: 100% !important;
}

/* Ensure no element has a restrictive max-width */
.site-content,
#primary,
#main {
    max-width: 100% !important;
    width: 100% !important;
}


/* ===================================================================
   FULL WIDTH BACKGROUND REPAIR - FINAL FIX
   Eliminates white bars and ensures navy backgrounds hit edges
   =================================================================== */

/* FORCE OUTER CONTAINERS TO FULL WIDTH */
.site-header, 
.site-footer, 
.site-info {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

/* ENSURE NAVY BACKGROUND HITS THE EDGE */
/* This paints the entire strip, not just the content box */
.site-header {
    background-color: #0C2340 !important;
}

.site-footer, .site-info {
    background-color: #0C2340 !important; /* Matches footer color */
    color: #ffffff !important;
}

/* KILL THE HORIZONTAL SCROLL / RIGHT WHITE BAR */
html, body {
    overflow-x: hidden !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ADJUST MENU ALIGNMENT FOR LARGER LOGO */
.site-logo-manual {
    margin-right: 25px !important; /* Little more breathing room */
}


/* ===================================================================
   PRESIDENTIAL BREAKOUT - HOMEPAGE EDGE-TO-EDGE CONTENT
   Fixes white bars on Hero and CTA sections
   =================================================================== */

/* 1. FORCE HOMEPAGE CONTENT TO EDGE-TO-EDGE */
.home .site-content,
.home .content-area,
.home .site-main,
.home .grid-container {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 2. ENSURE THE BLUE HERO SECTIONS EXPAND */
/* This targets the specific blocks used for the Hero and CTA */
.home .wp-block-group,
.home .wp-block-cover,
.home .wp-block-columns {
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* 3. KEEP THE TEXT INSIDE FROM HITTING THE EDGE */
/* While the blue box hits the edge, the text needs breathing room */
.home .wp-block-group__inner-container,
.home .wp-block-cover__inner-container {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

/* 4. LOGO RESIZE (Reinforce) */
/* Just in case the previous 90px command didn't stick */
.site-logo-manual img {
    height: 90px !important;
    width: auto !important;
}

/* ===================================================================
   ADDITIONAL HOMEPAGE SECTION OVERRIDES
   =================================================================== */

/* Force Hero, Faculties, and Manifesto sections to full width */
.home .hero-section,
.home .faculties-section,
.home .manifesto-section {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Inner content containers maintain readable width */
.home .hero-content,
.home .manifesto-content,
.home .faculties-grid {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

/* Override any GeneratePress container restrictions on homepage */
.home .inside-article,
.home article {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

